/* =====================================================================
   Stagyy v2.9 · Nuit & champagne (mode sombre) / ivoire & laiton (mode clair)
   Même peau que la page d'accueil du site : filets fins, ombres douces, titres à empattements.
   Chargé en dernier : il redéfinit les couleurs et remplace les ombres « décalées » de l'ancien style.
   ===================================================================== */
:root{
  --display:"Fraunces","Iowan Old Style","Palatino Linotype",Georgia,serif;
  --paper:#F6F3EC;--surface:#FFFEFA;--text:#0B1330;--muted:#515874;--line:#DCD5C5;--hair:#C2AE7C;--edge:#C2AE7C;
  --cobalt:#0F1E55;--link:#1A2A78;--shadow:rgba(11,19,48,.14);--sun:#D9BF8C;--coral:#B3303A;--ok:#13795B;--soft:#EFEADC;
  --gold:#7D5F22;--gold-fill:#D9BF8C;--gold-bg:linear-gradient(180deg,#EBD8AE,#D9BF8C 55%,#C7A869);
  --btn-bg:linear-gradient(180deg,#1B2E7A,#0B1740);--btn-fg:#F6F3EC;--btn-bd:#0B1740;
  --st-applied:#2B4AA8;--st-applied-fg:#FFFFFF;
  --lift:0 24px 48px -30px rgba(11,19,48,.45);
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --paper:#0A1128;--surface:#111A3A;--text:#F2ECDF;--muted:#A9B1CD;--line:#222D59;--hair:#7A6B45;--edge:#7A6B45;
    --cobalt:#D9BF8C;--link:#E3CC9C;--shadow:rgba(0,0,0,.5);--coral:#FF8A8F;--ok:#4FD1A5;--soft:#17224A;
    --gold:#D9BF8C;--btn-bg:linear-gradient(180deg,#EBD8AE,#D9BF8C 55%,#C7A869);--btn-fg:#0A1128;--btn-bd:#E8D4A6;
    --st-applied:#8FA8FF;--st-applied-fg:#0A1128;--lift:0 24px 48px -26px rgba(0,0,0,.7);
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --paper:#0A1128;--surface:#111A3A;--text:#F2ECDF;--muted:#A9B1CD;--line:#222D59;--hair:#7A6B45;--edge:#7A6B45;
  --cobalt:#D9BF8C;--link:#E3CC9C;--shadow:rgba(0,0,0,.5);--coral:#FF8A8F;--ok:#4FD1A5;--soft:#17224A;
  --gold:#D9BF8C;--btn-bg:linear-gradient(180deg,#EBD8AE,#D9BF8C 55%,#C7A869);--btn-fg:#0A1128;--btn-bd:#E8D4A6;
  --st-applied:#8FA8FF;--st-applied-fg:#0A1128;--lift:0 24px 48px -26px rgba(0,0,0,.7);
  color-scheme:dark;
}

/* ---------- titres ---------- */
h1,h2,h3{font-variation-settings:normal;font-optical-sizing:auto;letter-spacing:-.012em}
h1{font-weight:380;font-size:clamp(30px,3.4vw,42px);line-height:1.1;letter-spacing:-.02em}
h2{font-weight:450;font-size:22px;line-height:1.2}
h3,.h3{font-weight:500;font-size:18px}
.stat b,.score-num,.plan .price,.timer,.plan-opt-txt b,.tile b,.tc-av,.qcard p.q,.trk-steps .n,.lv-av{font-variation-settings:normal}
.stat b{font-weight:400;font-size:36px;letter-spacing:-.02em}
.score-num{font-weight:400}
.plan .price{font-weight:500}
.plan-opt-txt b{font-weight:500;font-size:18px}
.tile b{font-weight:500;font-size:20px;letter-spacing:-.01em}
.qcard p.q{font-weight:450}
.timer{font-weight:450}

/* ---------- fond : trame douce, plus discrète ---------- */
body{background-image:radial-gradient(color-mix(in srgb,var(--gold) 16%,transparent) 1px,transparent 1.6px)}

/* ---------- boutons ---------- */
.btn{min-height:48px;border:1px solid var(--btn-bd);background:var(--btn-bg);color:var(--btn-fg);letter-spacing:.01em;
  box-shadow:0 1px 0 rgba(255,255,255,.28) inset,0 14px 28px -18px rgba(11,19,48,.6);transition:transform .18s,box-shadow .25s,filter .25s}
.btn:hover{transform:translateY(-1px);filter:brightness(1.06);box-shadow:0 1px 0 rgba(255,255,255,.3) inset,0 18px 32px -18px rgba(11,19,48,.65)}
.btn:active{transform:translateY(0);box-shadow:0 1px 0 rgba(255,255,255,.2) inset,0 8px 16px -12px rgba(11,19,48,.5)}
.btn.sm{min-height:40px;padding:0 18px;box-shadow:none}
.btn.sm:hover{box-shadow:none}
.btn.ghost{background:transparent;color:var(--text);border-color:var(--hair);box-shadow:none;filter:none}
.btn.ghost:hover{border-color:var(--gold);background:color-mix(in srgb,var(--gold-fill) 14%,transparent);box-shadow:none;transform:none}
.btn.sun{background:var(--gold-bg);color:#0A1128;border-color:#E8D4A6;box-shadow:0 14px 28px -18px rgba(11,19,48,.5)}
.btn.danger{border-width:1px}
.link-btn{text-decoration-thickness:1px}
.icon-btn{border:1px solid var(--line)}
.icon-btn:hover{border-color:var(--gold)}
:focus-visible{outline-color:var(--gold)}

/* ---------- formulaires ---------- */
input[type=text],input[type=email],input[type=password],input[type=url],input[type=tel],input[type=date],select,textarea{border:1px solid var(--line);border-radius:12px;background:var(--surface)}
input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in srgb,var(--gold) 55%,transparent);border-color:var(--gold)}
.chip span{border:1px solid var(--line)}
.chip input:checked+span{background:var(--gold-fill);border-color:var(--gold-fill);color:#0A1128}
.check input{accent-color:var(--gold)}
.msg{border-width:1px}
.msg.info{background:var(--soft)}
select{background-repeat:no-repeat;background-position:right 14px center;background-size:12px 8px;padding-right:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23A9A27F' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")}

/* ---------- connexion et inscription ---------- */
.auth{position:relative}
.auth::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(60% 55% at 85% 0%,color-mix(in srgb,var(--gold-fill) 16%,transparent),transparent 70%),radial-gradient(50% 50% at 0% 100%,color-mix(in srgb,var(--cobalt) 10%,transparent),transparent 70%)}
.auth-card{border:1px solid var(--hair);border-radius:22px;box-shadow:var(--lift);position:relative;
  background:linear-gradient(180deg,color-mix(in srgb,var(--gold-fill) 7%,var(--surface)),var(--surface))}
.auth-card h1{font-size:clamp(28px,5vw,34px);font-weight:400}
.seg{background:var(--paper);border:1px solid var(--line)}
.seg button[aria-pressed="true"]{background:var(--btn-bg);color:var(--btn-fg)}
.or::before,.or::after{background:var(--line)}
.logo{font:500 25px/1 var(--display);font-variation-settings:normal;letter-spacing:-.01em}
.logo-mark{width:34px;height:34px;border-radius:50%;background:transparent;border:1px solid var(--gold);color:var(--gold);font:500 19px/1 var(--display);transform:none}
.lang{border:1px solid var(--line)}
.lang button[aria-pressed="true"]{background:var(--gold-fill);color:#0A1128}

/* ---------- structure ---------- */
.side{border-right:1px solid var(--line)}
.nav a{border-radius:12px;font-weight:500}
.nav a:hover{background:color-mix(in srgb,var(--gold-fill) 12%,transparent);color:var(--text)}
.nav a[aria-current="page"]{background:color-mix(in srgb,var(--gold-fill) 22%,transparent);color:var(--text);box-shadow:inset 2px 0 0 var(--gold)}
.plan-chip{border:1px solid var(--line);background:var(--paper)}
.pill-sun{background:var(--gold-fill);color:#0A1128}
.card{border:1px solid var(--line);border-radius:18px}
.card.edge{border:1px solid var(--hair);box-shadow:var(--lift)}
.card.sunny{background:linear-gradient(135deg,color-mix(in srgb,var(--gold-fill) 24%,var(--surface)),var(--surface) 70%);border:1px solid var(--hair);color:var(--text);box-shadow:none}
.card.sunny .muted{color:var(--muted)}
.stat,.steps li,.list-item,.plan-opt,.pair{border-width:1px}
.stat{border-radius:16px}
.list-item:hover{border-color:var(--gold)}
.kind{background:var(--soft)}
.bottom-nav a[aria-current="page"]{color:var(--text);background:color-mix(in srgb,var(--gold-fill) 24%,transparent)}
@media (max-width:900px){.bottom-nav{border-top:1px solid var(--hair)}}
.toast{border:1px solid var(--hair)}

/* ---------- accueil ---------- */
.tile{border:1px solid var(--hair);border-radius:18px;box-shadow:none;background:var(--surface);transition:transform .18s,border-color .2s,box-shadow .25s}
.tile:hover{transform:translateY(-2px);border-color:var(--gold);box-shadow:var(--lift)}
.tile:active{transform:translateY(0);box-shadow:none}
.tile-ic{background:color-mix(in srgb,var(--gold-fill) 24%,transparent);color:var(--gold);border-radius:50%}
.tile.cobalt,.tile.sun,.tile.ink,.tile.plain{background:var(--surface);color:var(--text);border-color:var(--hair);box-shadow:none}
.tile.cobalt .tile-ic,.tile.sun .tile-ic,.tile.ink .tile-ic{background:color-mix(in srgb,var(--gold-fill) 24%,transparent);color:var(--gold)}
.tile.cobalt:hover,.tile.sun:hover,.tile.ink:hover{box-shadow:var(--lift)}
.tile.lead-tile{background:linear-gradient(135deg,color-mix(in srgb,var(--gold-fill) 26%,var(--surface)),var(--surface) 72%)}
.meter-bar{height:8px;background:var(--line)}
.meter-bar i{background:var(--gold-bg)}
.d-search{border:1px solid var(--hair)!important;box-shadow:var(--lift)!important}
.steps li:not(.done):hover{border-color:var(--gold)}
.steps li.done .tick{background:var(--ok);border-color:var(--ok);color:#fff}
.tick{border-width:1.5px}

/* ---------- suivi des candidatures ---------- */
.flt{border:1px solid var(--line)}
.flt.alert:not([aria-pressed="true"]){border-color:var(--gold)}
.flt[data-s="applied"],.tcard[data-s="applied"]{--c:var(--st-applied)}
.tcard{border:1px solid var(--line);border-radius:18px;box-shadow:none;border-left:3px solid var(--c)}
.tcard[data-s="applied"] .tc-av{color:var(--st-applied-fg)}
.tcard[data-s="offer"] .tc-av,.tcard[data-s="rejected"] .tc-av,.tcard[data-s="todo"] .tc-av{color:#fff}
.tc-av{font-weight:500;border-radius:50%}
.tc-status{border:1px solid var(--line)}
.rail li i{border-width:2.5px}

/* ---------- résultats, plans, boîtes de dialogue ---------- */
.result-box,.card.form-land,.card.job-panel{border:1px solid var(--hair);box-shadow:var(--lift);border-radius:20px}
.plan{border:1px solid var(--hair);border-radius:18px}
.plan.best{box-shadow:var(--lift);background:linear-gradient(135deg,color-mix(in srgb,var(--gold-fill) 12%,var(--surface)),var(--surface) 70%)}
dialog{border:1px solid var(--hair);border-radius:22px;box-shadow:0 40px 90px -40px rgba(3,8,30,.8)}
dialog::backdrop{background:rgba(5,9,24,.66)}
.tag{background:var(--gold-fill);color:#0A1128}
.tag.miss{box-shadow:inset 0 0 0 1px var(--coral)}
.qcard{border:1px solid var(--line)}
.stars svg.on{fill:var(--gold-fill);stroke:var(--gold);stroke-width:1.2}
.job{border:1px solid var(--hair);box-shadow:var(--lift);border-radius:16px}
.job-go{border:1px solid var(--hair);background:var(--gold-fill);color:#0A1128}
.art{color:var(--hair)}
.art .c{fill:var(--gold)}
.art .c.soft{stroke:var(--gold)}
.art rect.c.soft{fill:var(--gold)}
.art .s{fill:var(--gold-fill)}
.art .c+.l{stroke:var(--btn-fg)}

/* ---------- CV (écrans de l'outil, pas les modèles imprimés) ---------- */
.start-opt:hover{border-color:var(--gold);box-shadow:var(--lift);transform:translateY(-2px)}
.start-opt.primary{background:var(--btn-bg);color:var(--btn-fg);border-color:var(--btn-bd);box-shadow:var(--lift)}
.start-opt.primary:hover{box-shadow:var(--lift);transform:translateY(-2px)}
.tpl input:checked~.tpl-mini{border-color:var(--gold);box-shadow:0 0 0 2px color-mix(in srgb,var(--gold) 40%,transparent)}
.tpl-tag,.tcv-tpl .tpl-tag-inline,.acc-n{background:var(--gold-fill);color:#0A1128}
.tcv-tpl[aria-pressed="true"]{background:var(--gold-fill);border-color:var(--gold-fill);color:#0A1128}
.sw input:checked~.sw-dot{box-shadow:0 0 0 3px var(--gold)}
.photo-thumb:has(img){box-shadow:0 0 0 2px var(--gold)}
.crop-view{box-shadow:0 0 0 2px var(--gold)}

/* ---------- entretien en direct, coach ---------- */
.lv-modes a[aria-current="page"]{background:var(--btn-bg);color:var(--btn-fg)}
.lv-steps li::before{background:var(--gold-fill);color:#0A1128;border:1px solid var(--gold)}
.lv-room,.co-panel{border:1px solid var(--hair);box-shadow:var(--lift);border-radius:20px}
.lv-av{border:1px solid var(--gold);color:#0A1128;background:var(--gold-fill)}
.lv-msg.rec .lv-bubble,.co-msg.bot .co-bubble{border:1px solid var(--line);box-shadow:none}
.lv-msg.me .lv-bubble,.co-msg.me .co-bubble{background:var(--btn-bg);color:var(--btn-fg);border:1px solid var(--btn-bd)}
.lv-mic,.lv-send{border:1px solid var(--hair)}
.lv-send,.lv-mic.note{background:var(--btn-bg);color:var(--btn-fg);border-color:var(--btn-bd);box-shadow:none}
.lv-mic.note:hover,.lv-send:hover{background:var(--btn-bg);transform:none;box-shadow:none;filter:brightness(1.06)}
.lv-verdict{background:var(--gold-fill);color:#0A1128}
.lv-seg i.on{background:var(--gold)}
.lv-seg i.on.s3{background:var(--gold-fill);box-shadow:none}
.co-fab{border:1px solid var(--btn-bd)!important;background:var(--btn-bg)!important;color:var(--btn-fg)!important;box-shadow:var(--lift)!important}
.co-mark{background:var(--gold-fill);color:#0A1128;border:1px solid var(--gold)}
@media (max-width:900px){.lv-room{box-shadow:var(--lift)}.card.job-panel{box-shadow:var(--lift)}.d-search{box-shadow:var(--lift)!important}}

/* ---------- compléments (parrainage, check-in, étoiles) ---------- */
.moment,.ck-bell{border:1px solid var(--hair);box-shadow:var(--lift)}
.ck-bell{box-shadow:none;background:color-mix(in srgb,var(--gold-fill) 24%,var(--surface))}
.seek input:checked+.seek-in{border-color:var(--gold);background:var(--gold-fill);color:#0A1128;box-shadow:none;transform:none}
.stars-card.gold{border:1px solid var(--hair);background:linear-gradient(135deg,color-mix(in srgb,var(--gold-fill) 22%,var(--surface)) 0,var(--surface) 62%);box-shadow:none}
.cp-q li::before{background:var(--gold-fill);color:#0A1128}

/* =====================================================================
   v2.9 · accueil épuré, compte compact, aide au démarrage
   ===================================================================== */
.grow{flex:1;min-width:0}

/* ---------- recherche de l'accueil ---------- */
.d-search input[type=text]{border:0;border-radius:0;background:transparent;min-height:46px;padding:0}
.d-search input[type=text]+input[type=text]{padding-left:16px;border-left:1px solid var(--line)}
.d-search input[type=text]:focus{outline:0;border-color:var(--line)}
.d-search:focus-within{outline:2px solid color-mix(in srgb,var(--gold) 55%,transparent);outline-offset:3px}
@media (max-width:900px){.d-search input[type=text]+input[type=text]{border-left:0;border-top:1px solid var(--line);padding:0 0 0 2px}}

/* ---------- « Pour bien démarrer » ---------- */
.start-card{border:1px solid var(--hair);box-shadow:var(--lift);background:linear-gradient(135deg,color-mix(in srgb,var(--gold-fill) 20%,var(--surface)),var(--surface) 64%)}
.start-stars{display:grid;justify-items:end;gap:4px}
.start-card .meter-bar{height:6px}
.start-next{display:flex;align-items:center;justify-content:space-between;gap:14px 24px;flex-wrap:wrap;padding:4px 0 0}
.start-txt{display:grid;gap:3px;flex:1 1 280px;min-width:0}
.start-txt b{font:450 24px/1.2 var(--display);letter-spacing:-.01em}
.start-txt .muted{font-size:15px}
.start-all summary{cursor:pointer;color:var(--link);font-weight:600;min-height:44px;display:flex;align-items:center}
.start-all[open] summary{margin-bottom:6px}
@media (max-width:560px){.start-next .btn{width:100%}.start-stars{justify-items:start}}

/* ---------- bandeau de chiffres, lignes fines, crédits ---------- */
.stats{gap:0;border:1px solid var(--line);border-radius:18px;background:var(--surface);overflow:hidden}
.stats .stat{border:0;border-radius:0;background:transparent;padding:14px 20px;text-align:center;display:block}
.stats .stat+.stat{border-left:1px solid var(--line)}
.stats .stat b{font-size:30px}
.stats .stat span{display:block;font-size:14px}
@media (max-width:900px){.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.stats .stat{padding:12px 8px}.stats .stat b{font-size:26px}.stats .stat span{font-size:12.5px;line-height:1.25}}
.slim-card{display:flex;align-items:center;gap:10px 14px;flex-wrap:wrap;padding:12px 16px;border:1px solid var(--hair);border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--gold-fill) 18%,var(--surface)),var(--surface) 75%)}
.slim-card>svg{width:20px;height:20px;color:var(--gold);flex:none}
.slim-card.review-nudge>svg{fill:var(--gold-fill);stroke:var(--gold);stroke-width:1.2}
.slim-card p{flex:1 1 200px;margin:0;font-size:15px;line-height:1.45}
.credits{gap:14px}
.more-credits summary{cursor:pointer;color:var(--link);font-weight:600;min-height:40px;display:flex;align-items:center}
.more-credits[open] summary{margin-bottom:10px}
.weekly h3{font:600 14px/1.3 var(--body);color:var(--muted)}

/* ---------- petite explication en haut des pages ---------- */
.hint-bar{display:flex;align-items:center;gap:10px 14px;flex-wrap:wrap;margin:-6px 0 22px;padding:12px 16px;border:1px solid var(--hair);border-left:3px solid var(--gold);border-radius:14px;background:color-mix(in srgb,var(--gold-fill) 12%,var(--surface))}
.hint-ic{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:color-mix(in srgb,var(--gold-fill) 30%,transparent);color:var(--gold);flex:none}
.hint-ic svg{width:18px;height:18px}
.hint-bar p{flex:1 1 260px;margin:0;font-size:15px;line-height:1.5;max-width:78ch}

/* ---------- aide ---------- */
.nav .nav-coach,.nav .nav-help{display:flex;align-items:center;gap:12px;min-height:46px;padding:0 14px;border-radius:14px;border:1px solid var(--hair);background:transparent;color:var(--text);font:600 16px/1 var(--body);cursor:pointer;width:100%;text-align:left}
.nav .nav-help{border-color:transparent;color:var(--muted)}
.nav .nav-coach svg,.nav .nav-help svg{width:20px;height:20px;flex:none;color:var(--gold)}
.nav .nav-coach:hover,.nav .nav-help:hover{border-color:var(--gold);background:color-mix(in srgb,var(--gold-fill) 12%,transparent);color:var(--text)}
.help-list{display:grid;gap:8px}
.help-row{display:flex;align-items:center;gap:14px;min-height:64px;width:100%;padding:12px 16px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:inherit;text-decoration:none;text-align:left;cursor:pointer;font:inherit;transition:border-color .2s,transform .18s}
.help-row:hover{border-color:var(--gold);transform:translateY(-1px)}
.help-row b{display:block;font-weight:600}
.help-row .grow span{display:block;font-size:14px;color:var(--muted);margin-top:2px}
.help-row>svg{width:18px;height:18px;color:var(--muted);flex:none}
.help-ic{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:color-mix(in srgb,var(--gold-fill) 26%,transparent);color:var(--gold);flex:none}
.help-ic svg{width:20px;height:20px}
.foot .link-btn{display:inline-flex;align-items:center;gap:6px;color:var(--muted)}
.foot .link-btn svg{width:15px;height:15px;fill:var(--gold-fill);stroke:var(--gold);stroke-width:1.2}

/* ---------- visite guidée ---------- */
dialog:has(.tour){width:min(520px,calc(100vw - 24px))}
.tour{text-align:center;justify-items:center;gap:14px;padding:clamp(22px,4vw,34px)}
.tour-top{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:32px}
.tour-art{width:96px;height:96px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--hair);color:var(--gold);background:radial-gradient(circle at 30% 25%,color-mix(in srgb,var(--gold-fill) 55%,transparent),color-mix(in srgb,var(--gold-fill) 14%,transparent) 72%)}
.tour-art svg{width:42px;height:42px}
.tour h2{font-size:27px;font-weight:400;line-height:1.2}
.tour-p{max-width:44ch;color:var(--muted);line-height:1.6;font-size:16.5px}
.tour-note{max-width:44ch}
.tour-dots{display:flex;gap:2px;align-items:center}
.tour-dot{position:relative;width:24px;height:24px;padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer}
.tour-dot::before{content:"";position:absolute;top:50%;left:50%;width:10px;height:10px;margin:-5px 0 0 -5px;box-sizing:border-box;border-radius:50%;border:1px solid var(--gold);background:transparent;transition:width .25s,margin .25s,background .25s}
.tour-dot[aria-current="step"]::before{width:22px;margin-left:-11px;border-radius:999px;background:var(--gold)}
.tour .dlg-actions{width:100%;justify-content:center}
.tour .dlg-actions .btn{min-width:150px}

/* ---------- Mon compte ---------- */
.account-page{max-width:780px;margin-inline:auto;width:100%}
.ax-me{display:flex;align-items:center;gap:12px 16px;flex-wrap:wrap}
.ax-av{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--gold);color:var(--gold);font:500 23px/1 var(--display);flex:none}
.ax-who{display:grid;min-width:0;flex:1 1 160px}
.ax-who b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px}
.ax-who .muted{overflow:hidden;text-overflow:ellipsis;font-size:14px}
.ax-list{border:1px solid var(--line);border-radius:18px;background:var(--surface);overflow:hidden}
.ax-row+.ax-row{border-top:1px solid var(--line)}
.ax-row>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 20px;min-height:68px;cursor:pointer}
.ax-row>summary::-webkit-details-marker{display:none}
.ax-row>summary:hover{background:color-mix(in srgb,var(--gold-fill) 10%,transparent)}
.ax-row[open]>summary{background:color-mix(in srgb,var(--gold-fill) 13%,transparent)}
.ax-t{display:grid;gap:2px;min-width:0}
.ax-t b{font-weight:600;font-size:16.5px}
.ax-t span{font-size:14px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ax-row>summary>svg{width:20px;height:20px;color:var(--muted);flex:none;transition:transform .2s}
.ax-row[open]>summary>svg{transform:rotate(180deg)}
.ax-body{padding:18px 20px 24px}
.ax-body .plans{grid-template-columns:minmax(0,1fr)}

/* v2.9 : sur téléphone la barre du haut est pleine ; l'aide « ? » passe dans le pied de page */
.foot .help-foot{display:none}
@media (max-width:480px){.tools .help-top{display:none}.foot .help-foot{display:inline-flex}}

/* ---------- v2.9.1 : accueil plus calme ---------- */
/* les points vivants restent en haut de l'écran et s'effacent avant la zone de lecture */
body:has(.shell) .df-page{-webkit-mask-image:linear-gradient(to bottom,#000 0,#000 140px,transparent 360px);mask-image:linear-gradient(to bottom,#000 0,#000 140px,transparent 360px)}
body:has(.shell){background-image:radial-gradient(color-mix(in srgb,var(--text) 5%,transparent) 1px,transparent 1.6px)}
.df-on body:has(.shell){background-image:none}
/* raccourcis de l'accueil : seulement sur mobile (le menu du bas n'a que 5 entrées) */
.quick{display:none}
@media (max-width:900px){
  .quick{display:flex;gap:8px;flex-wrap:wrap}
  .quick a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid var(--hair);border-radius:999px;background:var(--surface);color:var(--text);text-decoration:none;font-weight:600;font-size:15px}
  .quick a svg{width:18px;height:18px;color:var(--gold)}
}
/* bouton Coach : une simple bulle (le texte reste lu par les lecteurs d'écran ; le menu de gauche l'a en toutes lettres sur ordinateur) */
body .co-fab{width:52px;min-height:52px;padding:0;justify-content:center;gap:0}
body .co-fab span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
