/**
 * Outil - Aide à la décision (essai / rappel) · Vélo and Co
 *
 * Tout est scopé sous #vacap-root : la spécificité de l'identifiant protège
 * le module des styles du thème (titres, boutons, listes...), sans avoir à
 * empiler des !important partout.
 *
 * Le module reste volontairement en sombre, même sur une fiche produit claire.
 */

#vacap-root{
  --card:#16191A; --ink:#F3F5F1; --ink-soft:#A6ADA3;
  --line:#2A2F2B; --line-strong:#3A403A; --surface-2:#1D211E;
  --sel-bg:#99FF00; --sel-ink:#111827;
  --btn-bg:#99FF00; --btn-ink:#111827; --btn-hover:#AAFF22;
  --hover-border:#99FF00; --focus-ring:rgba(153,255,0,.18);
  --accent:#99FF00; --accent-ink:#111827;
  --tab-rappel:#99FF00; --tab-rappel-bg:rgba(153,255,0,.16);
  --tab-essai:#F50097;  --tab-essai-bg:rgba(245,0,151,.18);
  --err:#FF8FA3;
}
#vacap-root *,
#vacap-root *::before,
#vacap-root *::after{box-sizing:border-box}

/* Plusieurs icônes n'embarquent pas leurs dimensions et comptent sur le CSS.
   Si l'une d'elles se retrouve un jour dans un conteneur non prévu, ce filet
   évite qu'elle s'affiche à la taille par défaut du navigateur (300 × 150).
   Règle volontairement placée en tête : les règles ciblées plus bas, de même
   spécificité, l'emportent grâce à l'ordre. */
#vacap-root svg:not([width]){width:16px;height:16px;flex:0 0 auto}

/* ─── Bulle d'accroche ─────────────────────────────── */
#vacap-root .vacap-nudge{
  position:fixed;right:18px;bottom:calc(84px + env(safe-area-inset-bottom));z-index:99995;
  background:#fff;color:#111827;border:1px solid #E3E6E1;
  box-shadow:0 1px 2px rgba(17,24,39,.05),0 12px 32px -12px rgba(17,24,39,.25);
  border-radius:14px;padding:10px 13px;font-size:13.5px;font-weight:700;max-width:210px;
  line-height:1.35;opacity:0;transform:translateY(8px);pointer-events:none;
  transition:opacity .3s,transform .3s;
}
#vacap-root .vacap-nudge.is-on{opacity:1;transform:none;pointer-events:auto;cursor:pointer}
#vacap-root .vacap-nudge::after{
  content:"";position:absolute;right:26px;bottom:-7px;width:12px;height:12px;background:#fff;
  border-right:1px solid #E3E6E1;border-bottom:1px solid #E3E6E1;transform:rotate(45deg);
}
#vacap-root .vacap-nudge-close{
  position:absolute;top:-8px;right:-8px;width:22px;height:22px;border-radius:50%;
  background:#111827;color:#fff;border:0;font-size:13px;cursor:pointer;line-height:1;padding:0;
}

/* ─── Bouton flottant ──────────────────────────────── */
#vacap-root .vacap-fab{
  position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom));z-index:99996;
  display:inline-flex;align-items:center;gap:10px;
  background:#F50097;color:#fff;border:0;border-radius:999px;
  padding:15px 20px;font-weight:800;font-size:16px;font-family:inherit;line-height:1;
  box-shadow:0 10px 26px rgba(245,0,151,.34);cursor:pointer;
  transition:transform .18s,box-shadow .18s;
}
#vacap-root .vacap-fab:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(245,0,151,.42)}
#vacap-root .vacap-fab:active{transform:translateY(0)}
#vacap-root .vacap-fab svg{width:22px;height:22px;transition:transform .2s}
#vacap-root .vacap-ring{
  position:absolute;inset:0;border-radius:999px;box-shadow:0 0 0 0 rgba(245,0,151,.55);
  animation:vacapPulse 2.4s ease-out infinite;
}
@keyframes vacapPulse{
  0%{box-shadow:0 0 0 0 rgba(245,0,151,.5)}
  70%{box-shadow:0 0 0 16px rgba(245,0,151,0)}
  100%{box-shadow:0 0 0 0 rgba(245,0,151,0)}
}
#vacap-root .vacap-fab.is-bump svg{animation:vacapBump .5s cubic-bezier(.3,1.4,.5,1) both}
@keyframes vacapBump{
  0%{transform:rotate(0) scale(1)}
  35%{transform:rotate(-12deg) scale(1.22)}
  65%{transform:rotate(8deg) scale(1.08)}
  100%{transform:rotate(0) scale(1)}
}
@media (prefers-reduced-motion:reduce){
  #vacap-root .vacap-ring,#vacap-root .vacap-fab.is-bump svg{animation:none}
}
#vacap-root.is-open .vacap-fab,
#vacap-root.is-open .vacap-nudge{opacity:0;pointer-events:none;transition:opacity .2s}

/* ─── Panneau ──────────────────────────────────────── */
#vacap-root .vacap-sheet{position:fixed;inset:0;z-index:99999;display:none}
#vacap-root .vacap-sheet.is-open{display:block}
#vacap-root .vacap-backdrop{position:absolute;inset:0;background:rgba(8,10,8,.55);opacity:0;transition:opacity .25s}
#vacap-root .vacap-sheet.is-open .vacap-backdrop{opacity:1}

#vacap-root .vacap-panel{
  position:absolute;left:0;right:0;bottom:0;background:var(--card);color:var(--ink);
  font-family:inherit;font-size:16px;line-height:1.5;text-align:left;
  border-radius:22px 22px 0 0;max-height:90vh;overflow:auto;-webkit-overflow-scrolling:touch;
  transform:translateY(100%);transition:transform .34s cubic-bezier(.2,.85,.25,1);
  padding:0 0 calc(18px + env(safe-area-inset-bottom));box-shadow:0 -12px 44px rgba(0,0,0,.32);
}
#vacap-root .vacap-sheet.is-open .vacap-panel{transform:translateY(0)}
#vacap-root .vacap-grabber{width:42px;height:5px;border-radius:3px;background:var(--line-strong);margin:10px auto 2px}
@media (min-width:560px){
  #vacap-root .vacap-panel{
    left:auto;right:22px;bottom:22px;width:410px;border-radius:20px;max-height:84vh;
    transform:translateY(16px) scale(.98);opacity:0;transition:transform .24s,opacity .24s;
  }
  #vacap-root .vacap-sheet.is-open .vacap-panel{transform:none;opacity:1}
  #vacap-root .vacap-grabber{display:none}
}
@media (prefers-reduced-motion:reduce){#vacap-root .vacap-panel{transition:none}}

#vacap-root .vacap-head{padding:14px 20px 0;position:relative}
#vacap-root .vacap-close{
  position:absolute;top:12px;right:14px;width:34px;height:34px;border-radius:50%;
  border:1px solid var(--line);background:var(--card);color:var(--ink);
  font-size:18px;cursor:pointer;display:grid;place-items:center;line-height:1;padding:0;
}
#vacap-root .vacap-close:hover{border-color:var(--hover-border)}
/* Titres blindés : certains thèmes imposent leur propre taille/couleur */
#vacap-root .vacap-title{
  font-size:20px !important;font-weight:800 !important;color:var(--ink) !important;
  letter-spacing:-.01em;margin:2px 0 2px !important;padding-right:38px;line-height:1.25;
}
#vacap-root .vacap-sub{font-size:14px;color:var(--ink-soft);margin:0 0 10px}

#vacap-root .vacap-prod{
  display:flex;align-items:center;gap:10px;background:var(--surface-2);
  border:1px solid var(--line);border-radius:12px;padding:9px 12px;margin:4px 0 0;
}
#vacap-root .vacap-prod-ic{font-size:20px;line-height:1;flex:0 0 auto}
#vacap-root .vacap-prod-txt{display:flex;flex-direction:column;gap:1px;min-width:0}
#vacap-root .vacap-prod-txt b{font-size:13px;font-weight:800;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#vacap-root .vacap-prod-txt span{font-size:12px;color:var(--ink-soft);font-weight:700}

/* ─── Onglets ──────────────────────────────────────── */
#vacap-root .vacap-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 20px 6px}
#vacap-root .vacap-tab{
  display:flex;align-items:center;gap:11px;padding:12px 13px;
  border:1.5px solid var(--line);background:var(--card);border-radius:14px;
  cursor:pointer;font-family:inherit;font-weight:700;font-size:14.5px;color:var(--ink);
  text-align:left;transition:border-color .18s,background .18s,transform .12s;
  min-height:60px;line-height:1.2;
}
#vacap-root .vacap-tab:active{transform:scale(.98)}
#vacap-root .vacap-tab-ic{
  width:32px;height:32px;border-radius:50%;display:grid;place-items:center;
  background:var(--tab-c);color:#111827;flex:0 0 auto;transition:transform .2s,box-shadow .2s;
}
#vacap-root .vacap-tab-ic svg{width:16px;height:16px}
#vacap-root .vacap-tab[data-tab="rappel"]{--tab-c:var(--tab-rappel);--tab-bg:var(--tab-rappel-bg)}
#vacap-root .vacap-tab[data-tab="essai"]{--tab-c:var(--tab-essai);--tab-bg:var(--tab-essai-bg)}
#vacap-root .vacap-tab:hover{border-color:var(--tab-c)}
#vacap-root .vacap-tab.is-on{border-color:var(--tab-c);background:var(--tab-bg)}
#vacap-root .vacap-tab.is-on .vacap-tab-ic{transform:scale(1.08);box-shadow:0 4px 10px -2px rgba(0,0,0,.20)}
#vacap-root .vacap-tab-lbl{display:flex;flex-direction:column;gap:1px}
#vacap-root .vacap-tab-lbl .k{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}

/* ─── Panneaux ─────────────────────────────────────── */
#vacap-root .vacap-pane{padding:12px 20px 20px;display:none;animation:vacapFade .35s ease both}
#vacap-root .vacap-pane.is-on{display:block}
@keyframes vacapFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){#vacap-root .vacap-pane{animation:none}}

#vacap-root .vacap-lab{font-size:13px;font-weight:800;color:var(--ink);margin:16px 0 9px;display:flex;align-items:center;gap:8px}
#vacap-root .vacap-lab:first-child{margin-top:6px}
#vacap-root .vacap-lab .n{
  width:19px;height:19px;border-radius:50%;background:var(--sel-bg);color:var(--sel-ink);
  display:grid;place-items:center;font-size:11px;font-weight:800;flex:0 0 auto;
}
#vacap-root .vacap-lab .opt{font-weight:600;color:var(--ink-soft)}

/* ─── Boutiques ────────────────────────────────────── */
#vacap-root .vacap-stores{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#vacap-root .vacap-store{
  border:1.5px solid var(--line);border-radius:14px;padding:13px;cursor:pointer;
  background:var(--card);color:var(--ink);text-align:left;font-family:inherit;
  transition:border-color .16s,background .16s;position:relative;min-height:52px;
}
#vacap-root .vacap-store:hover,
#vacap-root .vacap-store.is-on{border-color:var(--hover-border);background:var(--surface-2)}
#vacap-root .vacap-store .city{font-size:16px;font-weight:800;display:flex;align-items:center;gap:6px;color:var(--ink)}
#vacap-root .vacap-store .tick{
  position:absolute;top:10px;right:10px;width:20px;height:20px;border-radius:50%;
  background:var(--accent);color:#111827;display:none;place-items:center;
}
#vacap-root .vacap-store.is-on .tick{display:grid}
#vacap-root .vacap-store .tick svg{width:11px;height:11px}

#vacap-root .vacap-note{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;color:var(--ink-soft);margin-top:10px;line-height:1.4}
#vacap-root .vacap-note svg{flex:0 0 auto;margin-top:2px;opacity:.75}

/* Visages de l'équipe de la boutique choisie */
#vacap-root .vacap-team{
  display:flex;align-items:center;gap:11px;margin-top:12px;padding:10px 12px;
  background:var(--surface-2);border:1px solid var(--line);border-radius:12px;
  animation:vacapFade .35s ease both;
}
#vacap-root .vacap-team[hidden]{display:none}
#vacap-root .vacap-faces{display:flex;flex:0 0 auto}
#vacap-root .vacap-faces span{
  width:30px;height:30px;border-radius:50%;border:2px solid var(--surface-2);margin-left:-9px;
  overflow:hidden;display:grid;place-items:center;background:var(--tab-essai);color:#fff;
  font-size:12px;font-weight:800;flex:0 0 auto;
}
#vacap-root .vacap-faces span:first-child{margin-left:0}
#vacap-root .vacap-faces img{width:100%;height:100%;object-fit:cover;display:block}
#vacap-root .vacap-team-txt{font-size:13px;line-height:1.35;color:var(--ink)}
#vacap-root .vacap-team-txt b{font-weight:800}

/* ─── Champs ───────────────────────────────────────── */
#vacap-root .vacap-input,
#vacap-root .vacap-ta{
  width:100%;border:1.5px solid var(--line);border-radius:12px;padding:14px;
  font-family:inherit;font-size:16px;background:var(--card);color:var(--ink);
  margin:0;box-shadow:none;line-height:1.4;
}
#vacap-root .vacap-input::placeholder,
#vacap-root .vacap-ta::placeholder{color:var(--ink-soft);opacity:.85}
#vacap-root .vacap-input:focus,
#vacap-root .vacap-ta:focus{outline:none;border-color:var(--hover-border);box-shadow:0 0 0 3px var(--focus-ring)}
#vacap-root .vacap-ta{resize:vertical;min-height:72px}
#vacap-root .vacap-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:380px){#vacap-root .vacap-grid2{grid-template-columns:1fr}}
#vacap-root .vacap-fld{display:flex;flex-direction:column;min-width:0}
#vacap-root .vacap-field{margin-top:10px}
#vacap-root .vacap-field .lb{font-size:13px;font-weight:700;color:var(--ink);margin:0 0 6px;display:block}
#vacap-root .vacap-field .lb .opt{font-weight:600;color:var(--ink-soft)}

/* Erreurs sous le champ concerné */
#vacap-root .vacap-err{
  display:none;font-size:12.5px;font-weight:700;color:var(--err);margin-top:6px;
  line-height:1.35;align-items:center;gap:6px;
}
#vacap-root .vacap-err.is-on{display:flex}
#vacap-root .vacap-err::before{
  content:"!";display:inline-grid;place-items:center;width:16px;height:16px;border-radius:50%;
  background:var(--err);color:#111827;font-size:11px;font-weight:800;flex:0 0 auto;
}
#vacap-root .vacap-input.is-err{border-color:var(--err)}
#vacap-root #vacap-err-stores{margin-top:8px}

/* ─── Chips ────────────────────────────────────────── */
#vacap-root .vacap-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
#vacap-root .vacap-chip{
  border:1.5px solid var(--line);background:var(--card);border-radius:999px;
  padding:11px 15px;font-size:14px;font-weight:600;font-family:inherit;color:var(--ink);
  cursor:pointer;transition:border-color .15s,background .15s,color .15s;
  min-height:42px;display:inline-flex;align-items:center;line-height:1.2;
}
#vacap-root .vacap-chip:hover{border-color:var(--hover-border);background:var(--surface-2)}
#vacap-root .vacap-chip.is-on{border-color:var(--sel-bg);background:var(--sel-bg);color:var(--sel-ink)}

/* ─── Boutons ──────────────────────────────────────── */
#vacap-root .vacap-btn{
  font-family:inherit;cursor:pointer;border:0;font-weight:800;border-radius:12px;
  transition:background .18s,transform .12s;line-height:1.2;
}
#vacap-root .vacap-btn:active{transform:translateY(1px)}
#vacap-root .vacap-btn-primary{
  width:100%;background:var(--btn-bg);color:var(--btn-ink);font-size:16.5px;padding:16px;margin-top:18px;
}
#vacap-root .vacap-btn-primary:hover{background:var(--btn-hover)}
#vacap-root .vacap-btn-primary[disabled]{opacity:.6;cursor:default}
#vacap-root .vacap-btn-ghost{background:transparent;color:var(--ink-soft);font-size:14px;padding:11px;width:100%;font-weight:600}
#vacap-root .vacap-btn-ghost:hover{color:var(--ink)}
#vacap-root .vacap-btn-outline{
  width:100%;background:var(--surface-2);border:1.5px solid var(--line-strong);color:var(--ink);
  font-size:15.5px;padding:15px;margin-top:16px;
}
#vacap-root .vacap-btn-outline:hover{border-color:var(--hover-border);background:var(--card)}
#vacap-root .vacap-btn-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;margin-top:18px}
#vacap-root .vacap-btn-row .vacap-btn-primary{margin-top:0}
#vacap-root .vacap-btn-row .vacap-btn-ghost{width:auto;padding:12px 14px}

#vacap-root .vacap-reassure{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--ink-soft);margin-top:12px;justify-content:center;text-align:center}
/* Ces icônes n'ont pas de dimensions dans le SVG : sans cette règle,
   elles s'affichent à la taille par défaut du navigateur (300 × 150). */
#vacap-root .vacap-reassure > svg{width:15px;height:15px;flex:0 0 auto}
#vacap-root .vacap-rgpd{font-size:11.5px;line-height:1.45;color:var(--ink-soft);text-align:center;margin-top:10px}
#vacap-root .vacap-rgpd a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}
#vacap-root .vacap-rgpd a:hover{color:var(--accent)}
#vacap-root .vacap-social{
  display:flex;align-items:center;justify-content:center;gap:8px;font-size:12.5px;color:var(--ink-soft);
  margin-top:12px;background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:8px 14px;
}
#vacap-root .vacap-social .vacap-faces span{border-color:var(--surface-2);background:var(--accent);color:#111827}

/* Champ piège anti-robot : invisible, jamais atteint au clavier */
#vacap-root .vacap-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}

/* ─── Étape 2 de l'essai ───────────────────────────── */
#vacap-root .vacap-bonus{display:flex;align-items:flex-start;gap:12px;background:var(--tab-essai-bg);border-radius:14px;padding:14px;margin-top:6px}
#vacap-root .vacap-bonus .ok{width:34px;height:34px;border-radius:50%;background:var(--tab-essai);color:#fff;display:grid;place-items:center;flex:0 0 auto}
#vacap-root .vacap-bonus .ok svg{width:18px;height:18px}
#vacap-root .vacap-bonus .txt{font-size:14.5px;line-height:1.4}
#vacap-root .vacap-bonus .txt b{display:block;font-weight:800;font-size:15.5px;margin-bottom:2px}

/* ─── Écran de préparation ─────────────────────────── */
#vacap-root .vacap-prep{padding:22px 4px 8px;text-align:center}
#vacap-root .vacap-prep-lbl{font-size:15.5px;font-weight:800;color:var(--ink);margin-bottom:16px}
#vacap-root .vacap-wheel{width:56px;height:56px;margin:0 auto 18px;color:var(--accent)}
#vacap-root .vacap-wheel svg{width:56px;height:56px;animation:vacapSpin 1.4s linear infinite}
@keyframes vacapSpin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){#vacap-root .vacap-wheel svg{animation:none}}
#vacap-root .vacap-steps{list-style:none;padding:0;margin:0 auto;max-width:280px;text-align:left}
#vacap-root .vacap-steps li{
  display:flex;align-items:center;gap:11px;padding:8px 0;font-size:14.5px;color:var(--ink-soft);
  opacity:.5;transition:opacity .3s,color .3s;font-weight:600;list-style:none;
}
#vacap-root .vacap-steps li .d{
  width:22px;height:22px;border-radius:50%;background:var(--surface-2);border:1.5px solid var(--line);
  display:grid;place-items:center;flex:0 0 auto;transition:background .3s,border-color .3s,transform .3s;
}
#vacap-root .vacap-steps li .d svg{width:12px;height:12px;color:transparent;transition:color .3s;stroke-width:3}
#vacap-root .vacap-steps li.is-done{opacity:1;color:var(--ink)}
#vacap-root .vacap-steps li.is-done .d{background:var(--accent);border-color:var(--accent);transform:scale(1.05)}
#vacap-root .vacap-steps li.is-done .d svg{color:#111827}

/* ─── Confirmation ─────────────────────────────────── */
#vacap-root .vacap-confirm{padding:16px 20px 20px;position:relative;display:none}
#vacap-root .vacap-confirm.is-on{display:block}
#vacap-root .vacap-confetti{position:absolute;inset:-20px 0 auto;width:100%;height:320px;pointer-events:none;z-index:5}
#vacap-root .vacap-confirm .hd{text-align:center;margin-bottom:14px}
#vacap-root .vacap-ring2{
  width:62px;height:62px;border-radius:50%;margin:2px auto 12px;background:var(--accent);
  display:grid;place-items:center;color:#111827;animation:vacapPop .5s cubic-bezier(.2,1.3,.4,1) both;
}
#vacap-root .vacap-ring2 svg{width:30px;height:30px}
@keyframes vacapPop{from{transform:scale(0)}to{transform:scale(1)}}
@media (prefers-reduced-motion:reduce){#vacap-root .vacap-ring2{animation:none}}
#vacap-root .vacap-confirm h2{
  font-size:21px !important;font-weight:800 !important;color:var(--ink) !important;
  letter-spacing:-.01em;margin:0 0 6px !important;padding:0;line-height:1.25;
}
#vacap-root .vacap-confirm .hd p{font-size:14px;color:var(--ink-soft);margin:0 auto;max-width:300px}

#vacap-root .vacap-ticket{border:1.5px solid var(--line-strong);border-radius:16px;overflow:hidden;background:var(--card);margin-top:4px}
#vacap-root .vacap-tk-top{background:var(--sel-bg);color:var(--sel-ink);padding:12px 16px;display:flex;align-items:center;justify-content:space-between}
#vacap-root .vacap-tk-top .tt{font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
#vacap-root .vacap-tk-top .ref{font-size:12px;font-weight:700;font-family:ui-monospace,Menlo,monospace;opacity:.9}
#vacap-root .vacap-tk-body{padding:15px 16px}
#vacap-root .vacap-tk-bike{font-size:15.5px;font-weight:800;margin-bottom:12px;color:var(--ink)}
#vacap-root .vacap-rows{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#vacap-root .vacap-cell .k{font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-soft)}
#vacap-root .vacap-cell .v{font-size:15px;font-weight:700;margin-top:2px;color:var(--ink)}
#vacap-root .vacap-chk{margin:12px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px}
#vacap-root .vacap-chk li{
  font-size:12px;font-weight:600;background:var(--surface-2);border:1px solid var(--line);
  border-radius:999px;padding:4px 10px;list-style:none;margin:0;color:var(--ink);
}
#vacap-root .vacap-tk-addr{
  display:flex;gap:9px;align-items:flex-start;margin-top:12px;padding-top:12px;
  border-top:1px solid var(--line);font-size:13px;color:var(--ink);line-height:1.45;
}
#vacap-root .vacap-tk-addr svg{flex:0 0 auto;margin-top:2px;color:var(--ink)}
#vacap-root .vacap-tk-addr b{display:block;font-weight:800;margin-bottom:2px}

#vacap-root .vacap-signed{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;background:var(--surface-2);border-top:1px solid var(--line)}
#vacap-root .vacap-avatar{
  width:44px;height:44px;border-radius:50%;display:grid;place-items:center;
  background:var(--tab-essai);color:#fff;font-weight:800;font-size:16px;flex:0 0 auto;line-height:1;
  box-shadow:0 2px 6px rgba(0,0,0,.15);overflow:hidden;
}
#vacap-root .vacap-avatar.has-photo{background:var(--surface-2)}
#vacap-root .vacap-avatar img{width:100%;height:100%;object-fit:cover;display:block}
#vacap-root .vacap-signed .msg{flex:1;font-size:13.5px;line-height:1.45}
#vacap-root .vacap-signed .who{font-weight:800;color:var(--ink);margin-bottom:3px}
#vacap-root .vacap-signed .who span{color:var(--ink-soft);font-weight:600}
#vacap-root .vacap-signed .txt{color:var(--ink);font-style:italic}

/* Actions rapides : une couleur par action, selon les usages connus */
#vacap-root .vacap-acts{border-top:2px dashed var(--line-strong);position:relative;background:var(--card)}
#vacap-root .vacap-act{
  display:flex;align-items:center;gap:12px;padding:14px 16px;text-decoration:none;
  color:var(--ink);font-size:14.5px;font-weight:700;border-top:1px solid var(--line);
  min-height:52px;transition:background .15s;background:var(--card);
}
#vacap-root .vacap-act:first-child{border-top:0}
#vacap-root .vacap-act:hover,
#vacap-root .vacap-act:active{background:var(--surface-2);color:var(--ink)}
#vacap-root .vacap-act .ic{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;background:var(--act-bg);color:var(--act-c);flex:0 0 auto}
#vacap-root .vacap-act .ic svg{width:16px;height:16px}
#vacap-root .vacap-act .lb{flex:1;line-height:1.3}
#vacap-root .vacap-act .sb{color:var(--ink-soft);font-weight:600;font-size:13px;margin-left:6px}
#vacap-root .vacap-act .ar{color:var(--ink-soft);font-size:22px;line-height:1;font-weight:400}
#vacap-root .vacap-act-agenda{--act-c:#FBBF24;--act-bg:rgba(251,191,36,.14)}
#vacap-root .vacap-act-maps{--act-c:#60A5FA;--act-bg:rgba(96,165,250,.14)}
#vacap-root .vacap-act-tel{--act-c:#34D399;--act-bg:rgba(52,211,153,.14)}
#vacap-root .vacap-act-tel .sb{display:block;margin-left:0;margin-top:1px;white-space:nowrap}

#vacap-root .vacap-bring{margin-top:14px;border:1.5px solid var(--tab-essai);background:var(--tab-essai-bg);border-radius:14px;padding:13px 15px}
#vacap-root .vacap-bring .ti{font-size:14px;font-weight:800;color:var(--ink);margin-bottom:8px;display:flex;align-items:center;gap:8px}
#vacap-root .vacap-bring ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}
#vacap-root .vacap-bring li{font-size:13.5px;color:var(--ink);display:flex;gap:9px;align-items:flex-start;line-height:1.4;list-style:none;margin:0}
#vacap-root .vacap-bring li .b{color:var(--tab-essai);font-weight:800;flex:0 0 auto;line-height:1.4}
#vacap-root .vacap-bring .warm{font-size:12.5px;color:var(--ink-soft);margin-top:10px;font-style:italic}

#vacap-root .vacap-bye{text-align:center;font-size:13px;color:var(--ink-soft);margin:14px 0 0}
