@font-face{font-family:"Instrument Sans";font-style:normal;font-display:swap;font-weight:400 700;src:url(fonts/instrument-sans-latin-ext-wght-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Instrument Sans";font-style:normal;font-display:swap;font-weight:400 700;src:url(fonts/instrument-sans-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Sims Sans";src:url(fonts/sims-sans-headline.woff2) format("woff2"),url(fonts/sims-sans-headline.ttf) format("truetype");font-weight:100 1000;font-style:normal;font-display:swap}
/* Layout : Prime time — plateau bleu nuit, portraits en vedette ; app mobile d'abord — en-tête collant, colonne de 760px, onglets en bas sur téléphone, dans l'en-tête sur grand écran. */
:root{
  --bg:#050A1F; --surface:#0E1838; --surface-2:#17234D; --line:rgba(130,160,255,.17);
  --fg:#F2F5FF; --muted:#B3BDE2; --brand:#4A86FF; --brand-deep:#1F4FE0; --cyan:#86AEFF;
  --gold:#F4BF4F; --ok:#3DD598; --danger:#FF6B7C; --chip:#111B40; --beam:rgba(74,134,255,.20);
  --display:"Sims Sans","Arial Narrow",system-ui,sans-serif;
  --brandfont:"Sims Sans","Archivo","Arial Narrow",system-ui,sans-serif;
  --body:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --r:18px; color-scheme:dark;
}

*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{background:var(--bg)}
body{color:var(--fg);font-family:var(--body);font-size:15px;line-height:1.5;padding-bottom:88px}
button,input,select{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid var(--cyan);outline-offset:2px;border-radius:8px}
h1,h2,h3{font-family:var(--display);font-stretch:112%;line-height:1.1;margin:0;text-wrap:balance}
p{margin:0}
.muted{color:var(--muted)}
.num{font-variant-numeric:tabular-nums}
.h-page{font-size:24px;font-weight:900}
.lead{margin-top:4px;color:var(--muted)}

header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.top-in{max-width:960px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;gap:12px}
.brand{display:flex;align-items:center;gap:10px;min-width:0;color:inherit;background:none;border:0;padding:0}
.brand img.brand-ic{width:42px;height:42px;border-radius:50%;flex:none;box-shadow:0 2px 10px color-mix(in srgb,var(--brand) 35%,transparent)}
.brand-txt{display:flex;flex-direction:column;min-width:0;text-align:left}
.brand-txt b{font-family:var(--display);font-stretch:118%;font-weight:850;font-size:16px;letter-spacing:.01em;line-height:1.1}
.brand-txt span{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top-actions{margin-left:auto;display:flex;gap:8px;align-items:center}
.pill-btn{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:7px 12px;font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;max-width:40vw;overflow:hidden;text-overflow:ellipsis}
.pill-btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}
.pill-btn svg{width:16px;height:16px;flex:none}

nav.tabs{position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--surface);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:repeat(5,1fr);gap:2px}
nav.tabs button{background:none;border:0;border-radius:12px;padding:6px 0;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:12px;font-weight:600;color:var(--muted);min-width:0;position:relative}
nav.tabs button svg{width:22px;height:22px}
nav.tabs button[aria-current="page"]{color:var(--brand);background:color-mix(in srgb,var(--brand) 10%,transparent)}
@media (min-width:760px){
  body{padding-bottom:40px}
  nav.tabs{position:sticky;top:calc(env(safe-area-inset-top,0px) + 63px);bottom:auto;border-top:0;border-bottom:1px solid var(--line);display:flex;justify-content:center;gap:4px;padding:8px 16px;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(12px);z-index:19}
  nav.tabs button{flex-direction:row;gap:8px;font-size:14px;padding:8px 12px}
  nav.tabs button svg{width:18px;height:18px}
}

main{max-width:760px;margin:0 auto;padding-inline:16px;padding-block:18px 24px}
.view{display:flex;flex-direction:column;gap:18px}
.proto{font-size:12px;color:var(--muted);display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.tag{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:999px;background:var(--surface-2);color:var(--muted);white-space:nowrap;vertical-align:middle}
.tag.nom{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger)}
.tag.ok{background:color-mix(in srgb,var(--ok) 14%,transparent);color:var(--ok)}
.tag.open{background:color-mix(in srgb,var(--brand) 16%,transparent);color:#8FB3FF}
.tag.gold{background:color-mix(in srgb,var(--gold) 18%,transparent);color:var(--gold)}

.hero{position:relative;overflow:hidden;border-radius:24px;padding:22px 20px 20px;color:#fff;background:linear-gradient(140deg,#2A6BFF 0%,#1F4FE0 48%,#13248F 100%)}
.hero .bars{position:absolute;right:-34px;top:16px;display:flex;flex-direction:column;gap:10px;opacity:.22;pointer-events:none}
.hero .bars i{display:block;height:34px;border-radius:999px;background:#fff}
.hero .bars i:nth-child(1){width:150px}.hero .bars i:nth-child(2){width:190px}.hero .bars i:nth-child(3){width:120px}
.hero .eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;opacity:.85}
.hero h1{font-size:clamp(34px,9vw,52px);font-weight:900;font-stretch:120%;margin-top:6px;text-transform:uppercase;letter-spacing:-.01em}
.hero p{margin-top:8px;max-width:40ch;opacity:.92}
.cd{margin-top:14px;display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600}
.cd::before{content:"";width:8px;height:8px;border-radius:50%;background:#7CF0B4;box-shadow:0 0 0 4px rgba(124,240,180,.25)}
.cd.locked::before{background:#FF9AA6;box-shadow:0 0 0 4px rgba(255,154,166,.25)}

.sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.sec-h h2{font-size:20px;font-weight:850}
.link{background:none;border:0;color:var(--brand);font-weight:600;font-size:14px;padding:0;text-align:left}

.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px}
.stack{display:flex;flex-direction:column;gap:12px}
.banner{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;border:1.5px solid color-mix(in srgb,var(--gold) 50%,var(--line));background:color-mix(in srgb,var(--gold) 9%,var(--surface));border-radius:var(--r);padding:12px 14px;font-size:14px}
.tasks{display:grid;gap:10px}
.task{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;text-align:left;width:100%}
.task .ic{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--surface-2);color:var(--brand)}
.task .ic svg{width:22px;height:22px}
.task b{display:block;font-size:15px}
.task small{color:var(--muted);font-size:13px}
.task.done .ic{background:color-mix(in srgb,var(--ok) 14%,transparent);color:var(--ok)}
.chev{width:18px;height:18px;color:var(--muted)}

.podium{display:grid;grid-template-columns:1fr 1.15fr 1fr;align-items:end;gap:8px}
.pod{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;min-width:0;background:none;border:0;padding:0}
.pod .step{width:100%;border-radius:14px 14px 6px 6px;display:grid;place-items:center;font-family:var(--display);font-weight:900;font-stretch:120%;font-size:22px;color:#fff}
.pod.p1 .step{height:74px;background:linear-gradient(180deg,var(--brand),var(--brand-deep))}
.pod.p2 .step{height:54px;background:color-mix(in srgb,var(--brand) 70%,var(--surface-2))}
.pod.p3 .step{height:42px;background:color-mix(in srgb,var(--brand) 50%,var(--surface-2))}
.pod .nm{font-weight:700;font-size:14px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pod .sc{font-size:12px;color:var(--muted)}

.av{width:38px;height:38px;border-radius:50%;flex:none;display:grid;place-items:center;font-family:var(--display);font-weight:800;font-stretch:110%;font-size:14px;color:#fff;background:hsl(var(--h) 70% 46%)}
.av.lg{width:54px;height:54px;font-size:19px}
.av.xl{width:84px;height:84px;font-size:30px}
.av.sm{width:28px;height:28px;font-size:11px}
img.av{object-fit:cover;background:var(--surface-2);padding:0}
.portrait{width:132px;max-width:38%;aspect-ratio:3/4;border-radius:18px;object-fit:cover;flex:none;box-shadow:0 8px 24px rgba(10,20,64,.18)}

.seg{display:grid;grid-template-columns:1fr 1fr;background:var(--surface-2);border-radius:14px;padding:4px;gap:4px}
.seg button{border:0;background:none;border-radius:10px;padding:9px 8px;min-height:44px;font-weight:700;font-size:14px;color:var(--muted)}
.seg button[aria-pressed="true"]{background:var(--surface);color:var(--fg);box-shadow:0 1px 3px rgba(10,20,64,.12)}

.rank-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.rrow{display:grid;grid-template-columns:30px 38px minmax(0,1fr) auto;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:9px 10px 9px 12px;width:100%;text-align:left}
button.rrow:hover{border-color:color-mix(in srgb,var(--brand) 45%,var(--line))}
.rrow .pos{font-family:var(--display);font-weight:900;font-stretch:115%;font-size:18px;text-align:center;color:var(--muted)}
.rank-list:not([start])>li:first-child .pos{color:var(--gold)}
.rrow .who{min-width:0}
.rrow .who b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rrow .who small{color:var(--muted);font-size:12px}
.bar{display:block;height:6px;border-radius:99px;background:var(--surface-2);margin-top:5px;overflow:hidden}
.bar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--cyan),var(--brand))}
.trend{font-size:12px;font-weight:700;min-width:34px;text-align:right}
.trend.up{color:var(--ok)}.trend.down{color:var(--danger)}.trend.eq{color:var(--muted)}
.score{font-family:var(--display);font-weight:800;font-stretch:110%;font-size:16px}
.rgt{display:flex;flex-direction:column;align-items:flex-end;gap:2px}

.drag .rrow{touch-action:pan-y;user-select:none;-webkit-user-select:none}
.drag .rrow .pos{color:var(--brand)}
.mv{display:flex;align-items:center;gap:2px}
.mv button{width:44px;height:44px;border-radius:10px;border:0;background:var(--surface-2);display:grid;place-items:center;color:var(--muted)}
.mv button:disabled{opacity:.35;cursor:default}
.mv button svg{width:16px;height:16px}
.grip{width:30px;height:32px;display:grid;place-items:center;color:var(--muted);cursor:grab}
.grip svg{width:18px;height:18px}
.ghost{opacity:.4}
.chosen{box-shadow:0 10px 26px rgba(10,20,64,.22);border-color:var(--brand)}

.cta-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.btn{border:0;border-radius:14px;padding:13px 18px;font-weight:700;font-size:15px;background:var(--brand);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center}
.btn svg{width:18px;height:18px;flex:none}
.btn.block{width:100%}
.btn.ghost-b{background:var(--surface-2);color:var(--fg)}
.btn.outline{background:transparent;color:var(--brand);border:1.5px solid color-mix(in srgb,var(--brand) 55%,var(--line))}
.btn.outline.warn{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,var(--line))}
.btn.danger{background:var(--danger)}
.btn.sm{padding:9px 13px;font-size:14px;border-radius:12px;min-height:44px}
.btn:disabled{opacity:.5;cursor:default}
.note{font-size:13px;color:var(--muted)}

.q{display:flex;flex-direction:column;gap:12px}
.q-h{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.q-h h3{font-size:17px;font-weight:800;font-stretch:108%}
.q-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13px;color:var(--muted)}
.pts{font-weight:700;color:var(--fg)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative;min-height:44px;display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--line);background:var(--chip);border-radius:999px;padding:5px 12px 5px 5px;font-weight:600;font-size:14px}
.chip .av{width:28px;height:28px;font-size:11px}
.chip[aria-pressed="true"]{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 12%,var(--surface))}
.chip .ord{position:absolute;top:-7px;right:-6px;width:20px;height:20px;border-radius:50%;background:var(--brand);color:#fff;font-size:11px;font-weight:800;display:grid;place-items:center}
.chip.right{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,var(--surface))}
.chip.wrong{border-color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,var(--surface))}
.chip:disabled{cursor:default}
.result{border-top:1px dashed var(--line);padding-top:10px;display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}
.earned{font-family:var(--display);font-weight:900;font-stretch:115%;font-size:20px;color:var(--ok)}
.earned.zero{color:var(--muted)}

.nominees{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.nominee{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r);padding:16px 10px}
.nominee[aria-pressed="true"]{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 10%,var(--surface))}
.nominee:disabled{cursor:default;opacity:.75}
.nominee b{font-size:16px}
.est{display:flex;flex-direction:column;gap:12px}
.est-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center}
.est-row .bar{height:12px;margin-top:6px}
.pct{font-family:var(--display);font-weight:900;font-stretch:118%;font-size:26px}

.lb .rrow.me{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 8%,var(--surface))}
.week-pts{font-size:12px;color:var(--ok);font-weight:700}

.league{display:flex;flex-direction:column;gap:12px}
.league-h{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;flex-wrap:wrap}
.league-h h3{font-size:18px;font-weight:850}
.code{display:inline-flex;align-items:center;gap:8px;font-family:var(--display);font-weight:900;font-stretch:118%;letter-spacing:.12em;font-size:16px;background:var(--surface-2);border-radius:10px;padding:6px 10px;user-select:all;-webkit-user-select:all}
.mini-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}
.mini{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center;font-size:14px;padding:6px 4px;border-bottom:1px solid var(--line)}
.mini:last-child{border-bottom:0}
.mini .p{font-weight:800;color:var(--muted);text-align:center}
.mini.me{font-weight:700;color:var(--brand)}
.mini>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.form-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}

.fiche-h{display:flex;gap:16px;align-items:center}
.fiche-h h1{font-size:32px;font-weight:900;font-stretch:120%;text-transform:uppercase}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.stat{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:2px;min-width:0}
.stat b{font-family:var(--display);font-weight:900;font-stretch:115%;font-size:22px;line-height:1.1}
.stat span{font-size:12px;color:var(--muted)}
.chart{width:100%;height:auto;display:block}
.chart .grid{stroke:var(--line);stroke-width:1}
.chart .axis{fill:var(--muted);font:600 10px var(--body)}
.chart .line{fill:none;stroke:var(--brand);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}
.chart .area{fill:var(--brand);opacity:.12}
.chart .dot{fill:var(--surface);stroke:var(--brand);stroke-width:2}
.chart .dot.end{fill:var(--brand)}
.chart .val{fill:var(--fg);font:800 11px var(--body)}

.badges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media (min-width:600px){.badges{grid-template-columns:repeat(4,minmax(0,1fr))}}
.badge{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:14px 10px}
.medal{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;color:#fff;background:hsl(var(--h) 72% 46%);box-shadow:inset 0 -4px 0 rgba(0,0,0,.18)}
.medal svg{width:24px;height:24px}
.badge.locked .medal{background:var(--surface-2);color:var(--muted);box-shadow:none}
.badge b{font-size:14px}
.badge small{font-size:12px;color:var(--muted);line-height:1.3}
.streak{display:inline-flex;align-items:center;gap:6px;color:#E8590C;font-weight:800}
.streak svg{width:20px;height:20px}

.urlchip{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--muted);background:var(--surface-2);border-radius:8px;padding:4px 8px;align-self:flex-start}
.crumbs{font-size:13px;color:var(--muted);display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.wk{display:flex;flex-direction:column;gap:6px;text-align:left;width:100%}
.wk-h{display:flex;justify-content:space-between;gap:10px;align-items:center}
.wk-h b{font-family:var(--display);font-weight:850;font-stretch:112%;font-size:17px}
.method{background:var(--surface-2);border-radius:var(--r);padding:14px 16px;font-size:14px;display:flex;flex-direction:column;gap:6px}
.method b{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

.legal{display:flex;flex-direction:column;gap:12px;max-width:65ch}
.legal h2{font-size:18px;font-weight:850;margin-top:8px}
.legal p,.legal li{font-size:14.5px}
.legal ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:4px}
.ph{background:color-mix(in srgb,var(--gold) 20%,transparent);border-radius:4px;padding:0 4px;font-weight:600}
footer.foot{margin-top:10px;border-top:1px solid var(--line);padding-top:16px;display:flex;flex-direction:column;gap:10px;font-size:12.5px;color:var(--muted)}
.foot-links{display:flex;flex-wrap:wrap;gap:6px 16px}
.foot-links .foot-av{padding:8px 0;color:var(--muted);font-size:12.5px;font-weight:600;text-decoration:underline;text-underline-offset:2px}
.foot-links button{background:none;border:0;padding:8px 0;color:var(--muted);font-size:12.5px;font-weight:600;text-decoration:underline;text-underline-offset:2px}

details.adm{background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}
details.adm>summary{list-style:none;padding:14px 16px;font-family:var(--display);font-weight:800;font-stretch:110%;font-size:16px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;gap:10px}
details.adm>summary::-webkit-details-marker{display:none}
details.adm>summary::after{content:"+";font-size:20px;color:var(--muted)}
details.adm[open]>summary::after{content:"–"}
.adm-b{padding:0 16px 16px;display:flex;flex-direction:column;gap:12px}
.field{display:flex;flex-direction:column;gap:5px;min-width:0}
.field label,.flabel{font-size:12px;font-weight:700;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}
.inp{width:100%;border:1.5px solid var(--line);background:var(--bg);border-radius:12px;padding:10px 12px;min-width:0}
.inp:focus{border-color:var(--brand);outline:none}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}
.arow{display:grid;grid-template-columns:28px minmax(0,1fr) 120px 44px;gap:8px;align-items:center}
.icon-btn{width:44px;height:44px;border-radius:10px;border:0;background:var(--surface-2);display:grid;place-items:center;color:var(--muted)}
.icon-btn svg{width:16px;height:16px}
.qa{border:1px solid var(--line);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:10px;background:var(--bg)}
.err{color:var(--danger);font-size:13px;font-weight:600}
.kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.check{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;font-size:14px}
.check input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--brand)}
.suspect{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;border:1.5px solid color-mix(in srgb,var(--danger) 40%,var(--line));border-radius:14px;padding:12px}
.suspect.off{border-color:var(--line);opacity:.8}

.empty{text-align:center;padding:26px 16px;color:var(--muted);display:flex;flex-direction:column;gap:6px;align-items:center}
.empty b{color:var(--fg);font-size:16px}

.overlay{position:fixed;inset:0;z-index:50;background:rgba(4,8,30,.55);display:flex;align-items:flex-end;justify-content:center;padding:16px}
@media (min-width:600px){.overlay{align-items:center}}
.sheet{position:relative;width:100%;max-width:420px;background:var(--surface);border-radius:22px;padding:20px;display:flex;flex-direction:column;gap:14px;max-height:calc(100% - 20px);overflow:auto;margin-bottom:env(safe-area-inset-bottom,0px)}
.sheet h2{font-size:22px;font-weight:900}
.story-prev{display:block;width:100%;max-width:240px;margin:0 auto;aspect-ratio:9/16;border-radius:14px;background:var(--surface-2);object-fit:cover;box-shadow:0 10px 30px rgba(10,20,64,.25)}
.otp{letter-spacing:.4em;font-family:var(--display);font-weight:800;font-size:22px;text-align:center}

.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(92px + env(safe-area-inset-bottom,0px));z-index:60;background:var(--fg);color:var(--bg);padding:10px 16px;border-radius:12px;font-weight:600;font-size:14px;box-shadow:0 8px 24px rgba(0,0,0,.25);max-width:calc(100% - 32px);text-align:center}
@media (min-width:760px){.toast{bottom:24px}}
@media (prefers-reduced-motion:no-preference){.view{animation:fade .22s ease-out}@keyframes fade{from{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:none}}}

.dot{position:absolute;top:3px;left:calc(50% + 6px);width:10px;height:10px;border-radius:50%;background:#E5243B;box-shadow:0 0 0 2px var(--surface)}
@media (min-width:760px){.dot{top:4px;left:24px}}
.av.hav{width:28px;height:28px;font-size:12px}
.pill-btn.acct{padding:4px 12px 4px 4px;font-weight:700}
.modes{display:grid;gap:10px}
.mode{display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:center;text-align:left;background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r);padding:14px;width:100%}
.mode.rec{border-color:color-mix(in srgb,var(--brand) 55%,var(--line))}
.mode .ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,var(--brand) 12%,transparent);color:var(--brand)}
.mode .ic svg{width:24px;height:24px}
.mode b{display:block;font-size:16px}
.mode small{display:block;color:var(--muted);font-size:13px}
.mode-row{display:flex;flex-wrap:wrap;gap:8px}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:10px}
.pcard{position:relative;display:flex;flex-direction:column;gap:6px;padding:6px;border:2px solid var(--line);border-radius:16px;background:var(--surface);text-align:center;min-width:0}
.pcard .pimg{width:100%;aspect-ratio:1;border-radius:11px;object-fit:cover;display:grid;place-items:center;background:var(--surface-2);font:800 22px var(--display);color:var(--muted)}
.pcard .pname{font-weight:700;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pcard[aria-pressed="true"]{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 10%,var(--surface))}
.pcard .ord{position:absolute;top:-8px;right:-8px;min-width:28px;height:28px;padding:0 6px;border-radius:14px;background:var(--brand);color:#fff;font:900 14px var(--display);display:grid;place-items:center;box-shadow:0 0 0 3px var(--surface)}
.pcard .ord svg{width:16px;height:16px}
.pcard:disabled{cursor:default}
@media (prefers-reduced-motion:no-preference){.pcard:not(:disabled):active,.dcard:active{transform:scale(.97)}}
.sticky-bar{position:sticky;bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:5;display:flex;gap:10px;padding:10px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--line);border-radius:18px;box-shadow:0 8px 24px rgba(10,20,64,.12)}
.sticky-bar .btn:last-child{flex:1}
@media (min-width:760px){.sticky-bar{bottom:16px}}
.tie-sep{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:8px 4px 0}
.progress{display:flex;flex-direction:column;gap:6px}
.duel{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:center}
.dcard{display:flex;flex-direction:column;gap:8px;padding:8px;border:2px solid var(--line);border-radius:18px;background:var(--surface);min-width:0}
.dcard img,.dcard .pimg{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:12px;display:grid;place-items:center;background:var(--surface-2);font:800 30px var(--display)}
.dcard .pname{font:800 18px var(--display);font-stretch:112%}
.dcard:hover{border-color:color-mix(in srgb,var(--brand) 55%,var(--line))}
.vs{font:900 18px var(--display);font-stretch:120%;color:var(--muted)}
.duel-q{font-size:22px;font-weight:900;text-align:center}
details.qd{padding:0}
details.qd>summary{list-style:none;display:flex;justify-content:space-between;gap:10px;align-items:flex-start;padding:16px;cursor:pointer;border-radius:var(--r)}
details.qd>summary::-webkit-details-marker{display:none}
.qs{display:flex;flex-direction:column;gap:6px;min-width:0}
.qs-t{font:800 17px var(--display);font-stretch:108%;line-height:1.2}
.minis{display:flex;gap:4px;flex-wrap:wrap}
.qbody{padding:0 16px 16px;display:flex;flex-direction:column;gap:12px}
.pick-res{display:flex;flex-wrap:wrap;gap:6px}
.pick-res>span{display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--line);border-radius:999px;padding:3px 10px 3px 3px;font-size:13px;font-weight:600}
.pick-res>span.right{border-color:var(--ok)}.pick-res>span.wrong{border-color:var(--danger)}
.reward{display:flex;flex-direction:column;gap:12px;text-align:center}
.reward-ic{width:64px;height:64px;border-radius:50%;background:var(--ok);color:#fff;display:grid;place-items:center;margin:4px auto 0}
.reward-ic svg{width:34px;height:34px}
.reward-lines{display:flex;flex-direction:column;gap:8px;text-align:left;background:var(--surface-2);border-radius:14px;padding:12px 14px;font-size:14.5px}
.confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.confetti i{position:absolute;top:-16px;width:8px;height:14px;border-radius:2px;animation:fall 1.8s ease-in forwards}
@keyframes fall{to{transform:translateY(460px) rotate(560deg);opacity:0}}
@media (prefers-reduced-motion:reduce){.confetti{display:none}}
.onb{display:flex;flex-direction:column;gap:12px;text-align:center}
.onb-art{display:flex;justify-content:center;align-items:center;gap:14px;min-height:124px;border-radius:18px;background:linear-gradient(140deg,#2A6BFF,#13248F);padding:18px;color:#fff;flex-wrap:wrap}
.onb-p{position:relative;display:inline-block}
.onb-p b{position:absolute;top:-6px;right:-6px;min-width:22px;height:22px;padding:0 4px;border-radius:11px;background:#fff;color:#1533A6;font:900 12px var(--display);display:grid;place-items:center}
.onb-ic svg{width:56px;height:56px}
.onb-pill{background:#fff;color:#1533A6;border-radius:999px;padding:4px 12px;font:900 16px var(--display)}
.onb-dots{display:flex;justify-content:center;gap:6px}
.onb-dots i{width:8px;height:8px;border-radius:4px;background:var(--line)}
.onb-dots i.on{background:var(--brand);width:22px}
.eyebrow-s{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}

/* ===== Prime time ===== */
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(70% 45% at 50% -8%,var(--beam),transparent 72%),conic-gradient(from 180deg at 50% -12%,transparent 148deg,var(--beam) 156deg,transparent 166deg,transparent 186deg,var(--beam) 193deg,transparent 202deg,transparent 360deg)}
header.top{background:color-mix(in srgb,var(--bg) 82%,transparent)}
.h-page{font-family:var(--display);font-stretch:125%;text-transform:uppercase;font-size:26px;font-weight:900;letter-spacing:.005em}
.sec-h h2{font-family:var(--display);font-stretch:122%;text-transform:uppercase;font-size:18px;font-weight:900;letter-spacing:.01em}
.card,.task,.stat,.badge,.mode,details.adm{background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 92%,#fff 8%) 0%,var(--surface) 38%);border-color:var(--line);box-shadow:0 1px 0 rgba(255,255,255,.04) inset}
.rrow{background:var(--surface);border-color:var(--line);grid-template-columns:30px 48px minmax(0,1fr) auto}
.rrow .av{width:48px;height:48px}
.rrow .pos{font-size:20px}
nav.tabs{background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-color:var(--line)}
nav.tabs button[aria-current="page"]{color:var(--fg);background:color-mix(in srgb,var(--brand) 26%,transparent)}
.seg{background:var(--surface-2)}
.seg button[aria-pressed="true"]{background:var(--brand);color:#fff;box-shadow:0 6px 16px color-mix(in srgb,var(--brand) 35%,transparent)}
.btn{box-shadow:0 8px 22px color-mix(in srgb,var(--brand) 30%,transparent)}
.btn.ghost-b,.btn.outline{box-shadow:none}
img.av{object-fit:cover;background:hsl(var(--h,220) 55% 40%)}
.view.enter{animation:fade .24s ease-out}
.view{animation:none}
@media (prefers-reduced-motion:reduce){.view.enter{animation:none}}

/* Scène */
.stage{position:relative;overflow:hidden;isolation:isolate;border-radius:26px;color:#fff;background:radial-gradient(120% 70% at 50% -12%,#3366FF 0%,rgba(51,102,255,.38) 36%,transparent 72%),linear-gradient(180deg,#0C1C58 0%,#060B22 100%);box-shadow:0 22px 50px rgba(5,10,31,.35)}
.stage::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:conic-gradient(from 180deg at 50% -4%,transparent 146deg,rgba(255,255,255,.11) 155deg,transparent 164deg,transparent 184deg,rgba(255,255,255,.08) 191deg,transparent 199deg,transparent 210deg,rgba(255,255,255,.07) 214deg,transparent 222deg)}
.stage .eyebrow{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.78)}
.hero2{padding:22px 20px 20px;display:flex;flex-direction:column;gap:14px}
.hero-k{font-family:var(--display);font-stretch:125%;font-weight:900;text-transform:uppercase;font-size:clamp(22px,6.4vw,30px);line-height:1.05}
.hero-k em{font-style:normal;color:#F4BF4F}
.cdbig{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.cdbig span{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)}
.cdbig b{font-family:var(--display);font-stretch:120%;font-weight:900;font-size:clamp(30px,9vw,40px);line-height:1;color:#F4BF4F;font-variant-numeric:tabular-nums}
.cdbig small{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.noms{display:flex;flex-direction:column;gap:8px}
.noms-r{display:flex;gap:12px;flex-wrap:wrap}
.nomx{display:flex;flex-direction:column;align-items:center;gap:4px;background:none;border:0;color:#fff;font-weight:700;font-size:13px;padding:0}
.nomx .av{border:2px solid #FF8A98}
.btn.light{background:#fff;color:#1533A6;box-shadow:0 10px 26px rgba(0,0,0,.25)}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.step{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;padding:12px;border-radius:16px;border:1px solid var(--line);background:var(--surface);min-width:0}
.step-ic{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:2px dashed color-mix(in srgb,var(--brand) 60%,var(--line));color:var(--brand)}
.step-ic svg{width:18px;height:18px}
.step.done .step-ic{border:0;background:var(--ok);color:#06210F}
.step b{font-size:14px}
.step small{font-size:12px;color:var(--muted);line-height:1.3}
.step.next{border-color:color-mix(in srgb,var(--brand) 60%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent)}
/* Podium */
.pod3{display:grid;grid-template-columns:1fr 1.22fr 1fr;align-items:end;gap:10px;padding:26px 14px 18px}
.podx{background:none;border:0;padding:0;color:#fff;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}
.podimg{position:relative;width:100%;margin-bottom:16px}
.podimg img,.podimg .pimg{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:16px;display:grid;place-items:center;border:3px solid rgba(255,255,255,.85);background:#16224A;font:900 28px var(--display)}
.podx.p1 .podimg img,.podx.p1 .podimg .pimg{border-color:#F4BF4F;box-shadow:0 0 0 5px rgba(244,191,79,.22),0 18px 44px rgba(244,191,79,.28)}
.podimg .rk{position:absolute;left:50%;bottom:-15px;transform:translateX(-50%);width:32px;height:32px;border-radius:50%;background:#fff;color:#1533A6;font:900 16px var(--display);display:grid;place-items:center;box-shadow:0 4px 12px rgba(0,0,0,.3)}
.podx.p1 .podimg .rk{background:#F4BF4F;color:#2B1D00;width:38px;height:38px;bottom:-18px;font-size:19px}
.podx b{font-family:var(--display);font-stretch:112%;font-size:15px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.podx.p1 b{font-size:17px}
.podx small{font-size:12px;color:rgba(255,255,255,.7);font-variant-numeric:tabular-nums}
.pod-foot{padding:0 14px 16px;text-align:left;font-size:12.5px;color:rgba(255,255,255,.7)}
/* Casting */
.cast{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 8px;scrollbar-width:thin}
.castx{flex:0 0 102px;scroll-snap-align:start;display:flex;flex-direction:column;gap:6px;background:none;border:0;padding:0;text-align:left;color:var(--fg)}
.castx img,.castx .pimg{width:102px;aspect-ratio:3/4;object-fit:cover;border-radius:14px;display:grid;place-items:center;background:var(--surface-2);border:1px solid var(--line)}
.castx b{font-size:14px;line-height:1.2}
.castx small{font-size:12px;color:var(--muted)}
.castx .nomtag{align-self:flex-start}

.pollx{padding:20px 16px 18px;display:flex;flex-direction:column;gap:14px;scroll-margin-top:90px}
.nomgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:10px}
.nomc{display:flex;flex-direction:column;align-items:center;gap:6px;padding:7px 7px 10px;border-radius:16px;border:2px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;min-width:0}
.nomc .pimg{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:11px;display:grid;place-items:center;background:#16224A;font:900 24px var(--display)}
.nomc b{font-size:15px}
.nomc-s{font-size:12px;font-weight:600;color:rgba(255,255,255,.75)}
.nomc[aria-pressed="true"]{border-color:#F4BF4F;background:rgba(244,191,79,.16)}
.nomc[aria-pressed="true"] .nomc-s{color:#F4BF4F}
.nomc:disabled{cursor:default;opacity:.7}
.poll-note{font-size:13px;color:rgba(255,255,255,.75)}

.back-btn{width:40px;height:40px;flex:none;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--fg);display:grid;place-items:center;margin-right:-4px}
.back-btn svg{width:20px;height:20px}
.playtabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:5px;border-radius:16px;background:color-mix(in srgb,var(--surface-2) 92%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);position:sticky;top:calc(env(safe-area-inset-top,0px) + 70px);z-index:6;border:1px solid var(--line)}
@media (min-width:760px){.playtabs{top:calc(env(safe-area-inset-top,0px) + 122px)}}
.pt{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;border:0;border-radius:12px;background:none;color:var(--muted);font-weight:700;font-size:14px;padding:0 6px;min-width:0}
.pt-n{width:24px;height:24px;flex:none;border-radius:50%;display:grid;place-items:center;border:2px solid currentColor;font:800 12px var(--display)}
.pt-n svg{width:14px;height:14px}
.pt.done .pt-n{background:var(--ok);border-color:var(--ok);color:#06210F}
.pt[aria-selected="true"]{background:var(--brand);color:#fff;box-shadow:0 6px 16px color-mix(in srgb,var(--brand) 35%,transparent)}
.pt[aria-selected="true"].done .pt-n{box-shadow:0 0 0 2px #fff}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pollx{scroll-margin-top:130px}

/* ===== Animations ===== */
main{overflow-x:clip}
@keyframes inFwd{from{opacity:0;transform:translateX(26px)}}
@keyframes inBack{from{opacity:0;transform:translateX(-26px)}}
@keyframes pop{0%{transform:scale(.3)}60%{transform:scale(1.25)}100%{transform:scale(1)}}
@keyframes press{0%{transform:scale(1)}40%{transform:scale(.94)}100%{transform:scale(1)}}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes rise{from{opacity:0;transform:translateY(12px)}}
@keyframes flip{from{transform:rotateY(180deg)}to{transform:rotateY(0)}}
@keyframes inL{from{opacity:0;transform:translateX(-46px) scale(.95)}}
@keyframes inR{from{opacity:0;transform:translateX(46px) scale(.95)}}
@keyframes vsPop{from{opacity:0;transform:scale(.3)}}
@keyframes spin{0%{transform:perspective(300px) rotateY(0) scale(.6)}60%{transform:perspective(300px) rotateY(540deg) scale(1.12)}100%{transform:perspective(300px) rotateY(720deg) scale(1)}}
@keyframes shine{from{transform:translateX(-120%) rotate(20deg)}to{transform:translateX(220%) rotate(20deg)}}
@keyframes flick{0%,100%{transform:scale(1) rotate(0)}30%{transform:scale(1.12,0.94) rotate(-4deg)}60%{transform:scale(.95,1.08) rotate(3deg)}}
@keyframes dotPulse{0%{box-shadow:0 0 0 2px var(--surface),0 0 0 2px rgba(229,36,59,.6)}100%{box-shadow:0 0 0 2px var(--surface),0 0 0 12px rgba(229,36,59,0)}}
@keyframes toastIn{from{opacity:0;transform:translate(-50%,14px)}}
@keyframes grow{from{width:0}}
@keyframes glowNew{0%,100%{box-shadow:0 0 0 0 rgba(244,191,79,0)}50%{box-shadow:0 0 0 4px rgba(244,191,79,.35)}}
@media (prefers-reduced-motion:no-preference){
  .view.enter.fade{animation:fade .22s ease-out}
  .view.enter.fwd{animation:inFwd .28s cubic-bezier(.2,.8,.2,1)}
  .view.enter.back{animation:inBack .28s cubic-bezier(.2,.8,.2,1)}
  .stepwrap.fwd{animation:inFwd .28s cubic-bezier(.2,.8,.2,1)}
  .stepwrap.back{animation:inBack .28s cubic-bezier(.2,.8,.2,1)}
  .view.enter .bar i{animation:grow .7s cubic-bezier(.2,.8,.2,1)}
  .btn,.step,.mode,.castx,.podx,.pt,.nomc,.pcard,.rrow,.task{transition:transform .12s ease}
  .btn:active,.step:active,.mode:active,.castx:active,.podx:active,.pt:active,.nomc:active,button.rrow:active{transform:scale(.97)}
  .pcard.just{animation:press .28s ease}
  .pcard.just .ord{animation:pop .34s cubic-bezier(.2,.8,.2,1)}
  .pcard.just .ord svg path{stroke-dasharray:24;stroke-dashoffset:24;animation:draw .3s .12s ease-out forwards}
  .duel .dcard{animation:inL .36s cubic-bezier(.2,.8,.2,1) backwards}
  .duel .dcard:last-child{animation-name:inR}
  .duel .vs{animation:vsPop .32s .12s cubic-bezier(.2,.8,.2,1) backwards}
  .dcard{transition:transform .4s cubic-bezier(.2,.8,.2,1),opacity .4s,box-shadow .4s,border-color .2s}
  .dcard.win{transform:scale(1.07);border-color:#F4BF4F;box-shadow:0 0 0 4px rgba(244,191,79,.3),0 18px 40px rgba(244,191,79,.3);position:relative;z-index:2}
  .dcard.lose{transform:translateY(34px) scale(.88);opacity:0}
  .dcard.skip{opacity:0;transform:scale(.94)}
  .vs{transition:opacity .2s}.vs.hide{opacity:0}
  .badge.fresh .medal{animation:spin 1s cubic-bezier(.2,.8,.2,1);position:relative;overflow:hidden}
  .badge.fresh .medal::after{content:"";position:absolute;inset:-20%;width:30%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent);animation:shine .8s .9s ease-out both}
  .streak svg{transform-origin:50% 100%;animation:flick 1.3s ease-in-out 3}
  .dot:not([hidden]){animation:dotPulse 1.2s ease-out 2}
  .toast{animation:toastIn .25s ease-out}
  .flip-in{animation:flip .62s cubic-bezier(.2,.75,.25,1) var(--d) both}
  .rv-ans,.rv-pts{animation:rise .42s ease-out var(--d) both}
  .qd.res-new>summary{animation:glowNew 1.6s ease-in-out 2;border-radius:var(--r)}
  .rrow.moved-up .pos{color:var(--ok)}.rrow.moved-down .pos{color:var(--danger)}
}
/* Révélation des résultats */
.reveal{display:flex;flex-direction:column;gap:12px;text-align:center}
.reveal .flabel{text-align:left}
.fliprow{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.flip{width:96px;perspective:900px}
.flip-in{position:relative;width:100%;aspect-ratio:3/4.75;transform-style:preserve-3d}
.face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:14px;overflow:hidden}
.face.back{transform:rotateY(180deg);background:radial-gradient(90% 60% at 50% 0%,#3366FF,transparent),linear-gradient(160deg,#1F4FE0,#0B1640);display:grid;place-items:center;font:900 42px var(--display);color:#fff;border:2px solid rgba(255,255,255,.3)}
.face.front{display:flex;flex-direction:column;background:var(--surface);border:3px solid var(--line)}
.flip.ok .face.front{border-color:var(--ok)}.flip.ko .face.front{border-color:var(--danger)}
.face.front .pimg{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}
.face.front b{font-size:13px;padding:3px 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fl-mark{position:absolute;top:6px;right:6px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;color:#fff}
.flip.ok .fl-mark{background:var(--ok);color:#06210F}.flip.ko .fl-mark{background:var(--danger)}
.fl-mark svg{width:15px;height:15px}
.ans-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.ans-chip{position:relative;display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--ok);border-radius:999px;padding:3px 10px 3px 3px;font-size:13px}
.ans-chip i{position:absolute;top:-6px;left:-4px;width:18px;height:18px;border-radius:50%;background:var(--brand);color:#fff;font:800 10px var(--display);font-style:normal;display:grid;place-items:center}
.rv-pts{display:flex;flex-direction:column;align-items:center;gap:4px}
.earned.big{font-size:46px;line-height:1}
.res-teaser{display:flex;gap:12px;align-items:center;text-align:left;padding:12px;border-radius:14px;background:color-mix(in srgb,var(--gold) 12%,transparent);border:1px solid color-mix(in srgb,var(--gold) 40%,var(--line))}
.res-ic{width:40px;height:40px;flex:none;border-radius:50%;display:grid;place-items:center;background:#F4BF4F;color:#2B1D00}
.res-ic svg{width:20px;height:20px}
.pt{position:relative}
.pt-new{position:absolute;top:6px;right:8px;width:8px;height:8px;border-radius:50%;background:#F4BF4F}

/* Saison */
.season-h{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:var(--r);background:radial-gradient(100% 120% at 0% 0%,rgba(244,191,79,.18),transparent 60%),var(--surface);border:1px solid color-mix(in srgb,#F4BF4F 40%,var(--line))}
.season-h b{font-family:var(--display);font-stretch:118%;text-transform:uppercase;font-size:17px}
.season-h .tag{align-self:flex-start}
/* Installation */
.inst{display:grid;grid-template-columns:44px minmax(0,1fr) auto 44px;gap:10px;align-items:center;padding:10px 10px 10px 12px;border-radius:var(--r);border:1px solid var(--line);background:var(--surface)}
.inst-ic img{width:44px;height:44px;border-radius:12px;display:block}
.inst b{display:block;font-size:14px;line-height:1.25}
.inst small{display:block;font-size:12px;color:var(--muted)}
.inst-steps{margin:0;padding-left:22px;text-align:left;display:flex;flex-direction:column;gap:8px;font-size:15px}
/* Réactions */
.react-box{display:flex;flex-direction:column;gap:8px}
.reacts{display:flex;flex-wrap:wrap;gap:8px}
.react{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:4px 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font-weight:700;font-size:13px;color:var(--fg)}
.react .em{font-size:19px;line-height:1}
.react.on{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 20%,var(--surface))}
@media (prefers-reduced-motion:no-preference){.react.just .em{display:inline-block;animation:pop .4s cubic-bezier(.2,.8,.2,1)}.react:active{transform:scale(.95)}}
/* Tableau de bord */
.dash{display:flex;flex-direction:column;gap:12px}
.kpis6{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.kpis6 .stat b{font-size:24px}
.stat b span{font-size:inherit;color:inherit}
.todo{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.todo-i{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.todo-i:last-child{border-bottom:0}
.todo-c{width:26px;height:26px;border-radius:50%;border:2px dashed color-mix(in srgb,var(--brand) 55%,var(--line));display:grid;place-items:center}
.todo-i.ok .todo-c{border:0;background:var(--ok);color:#06210F}
.todo-c svg{width:15px;height:15px}
.todo-t b{display:block;font-size:14px}
.todo-t small{display:block;font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.todo-i.ok .todo-t b{color:var(--muted)}
.chart.bars .b{fill:color-mix(in srgb,var(--brand) 45%,var(--surface-2))}
.chart.bars .b.cur{fill:var(--brand)}
details.adm{scroll-margin-top:80px}

/* ===== Affinage design ===== */
.sec-h h2{text-transform:none;font-stretch:110%;font-size:19px;font-weight:850;letter-spacing:0}
header.top.sub .brand-txt{display:none}
header.top.sub .brand img.brand-ic{width:auto;height:34px;border-radius:0;box-shadow:none;filter:drop-shadow(0 0 6px rgba(120,170,255,.45))}
.ptitle{display:none;font-family:var(--display);font-stretch:112%;font-weight:850;font-size:17px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
header.top.sub .ptitle{display:block}
.hello{display:flex;flex-direction:column;gap:6px;padding:4px 2px 0}
.hello-k{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.hello-t{font-family:var(--display);font-stretch:118%;font-weight:900;font-size:clamp(28px,8vw,36px);line-height:1.05}
.hello-s{color:var(--muted);font-size:15px}
.hello-s .streak{display:inline-flex;vertical-align:middle;margin-left:6px}
.hello-s b{color:var(--fg)}
.hello .cta-bar{margin-top:8px}
.steplist{padding:4px 0;display:flex;flex-direction:column}
.srow{display:grid;grid-template-columns:36px minmax(0,1fr) auto 18px;gap:12px;align-items:center;padding:12px 14px;background:none;border:0;border-bottom:1px solid var(--line);text-align:left;color:var(--fg);min-height:56px}
.srow:last-child{border-bottom:0}
.srow b{font-size:15px}
.srow small{font-size:13px;color:var(--muted);text-align:right}
.srow.done small{color:var(--ok);font-weight:700}
.srow.next{background:color-mix(in srgb,var(--brand) 10%,transparent)}
.srow.next small{color:var(--brand);font-weight:700}
.srow .step-ic{width:34px;height:34px}
.cast-ph{position:relative;display:block}
.castx.out .cast-ph .pimg{opacity:.38;filter:grayscale(.7)}
.cb-i.out .cb-ph{opacity:.32;filter:grayscale(.8)}
.cb-i.out .cb-n{opacity:.55}
.castx.out b,.castx.out small{opacity:.6}
.cast-out{position:absolute;left:6px;right:6px;top:6px;border-radius:8px;background:rgba(5,10,31,.82);color:var(--muted);font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-align:center;padding:3px 0}
.fiche-h.out .portrait,.fiche-h.out .av{opacity:.4;filter:grayscale(.7)}
.cast-rk{position:absolute;top:6px;left:6px;min-width:26px;height:26px;padding:0 6px;border-radius:13px;background:rgba(5,10,31,.78);color:#fff;font:800 13px var(--display);display:grid;place-items:center;backdrop-filter:blur(4px)}
.castx:nth-child(1) .cast-rk{background:#F4BF4F;color:#2B1D00}
.cast-nom{position:absolute;left:6px;right:6px;bottom:6px;border-radius:8px;background:rgba(207,51,70,.92);color:#fff;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-align:center;padding:3px 0}
.castx small{font-size:12px;color:var(--muted)}
.inst{display:grid;grid-template-columns:28px minmax(0,1fr) 44px;gap:10px;align-items:center;padding:4px 4px 4px 12px;border-radius:14px;border:1px dashed color-mix(in srgb,var(--brand) 45%,var(--line));background:transparent}
.inst-ic{width:28px;height:28px;border-radius:8px;display:block}
.inst-t{background:none;border:0;padding:10px 0;text-align:left;color:var(--brand);font-weight:700;font-size:14px;min-height:44px}
.inst-x{width:44px;height:44px;border:0;background:none;color:var(--muted);display:grid;place-items:center;border-radius:10px}
.inst-x svg{width:16px;height:16px}
.settings{padding:2px 0;display:flex;flex-direction:column}
.set-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:52px;padding:6px 14px;background:none;border:0;border-bottom:1px solid var(--line);text-align:left;color:var(--fg);font-size:15px;width:100%;cursor:pointer}
.set-row:last-child{border-bottom:0}
.set-ic{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand)}
.set-ic svg{width:17px;height:17px}
.switch{appearance:none;-webkit-appearance:none;width:46px;height:28px;border-radius:14px;background:var(--surface-2);border:1px solid var(--line);position:relative;cursor:pointer;margin:0;transition:background .2s}
.switch::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .2s}
.switch:checked{background:var(--ok);border-color:var(--ok)}
.switch:checked::after{transform:translateX(18px)}
.switch:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}
.danger-link{color:var(--danger);align-self:center;padding:12px;min-height:44px}
.timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}
.timeline li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:12px;padding-bottom:14px;position:relative}
.timeline li:not(:last-child)::before{content:"";position:absolute;left:9px;top:18px;bottom:0;width:2px;background:var(--line)}
.tl-d{width:20px;height:20px;border-radius:50%;border:2px solid var(--line);background:var(--surface)}
.timeline li.now .tl-d{border-color:var(--brand);background:var(--brand);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 25%,transparent)}
.timeline b{display:block;font-size:14px}
.timeline small{display:block;font-size:12.5px;color:var(--muted)}
footer.foot{padding-top:12px;gap:6px;font-size:12px}
.foot-links{gap:4px 14px}

/* Police du logo (Sims Sans Headline) : réservée aux titres, à la marque et aux grands chiffres — le texte courant reste en Instrument Sans, les données en Archivo. */
.brand-txt b,h1,h2,.h-page,.sec-h h2,.hero-k,.hello-t,.cdbig b,.season-h b,.ptitle,.onb-pill,.podimg .rk,.pod .step,.pct,.face.back,.fiche-h h1,.fiche-h h2{font-family:var(--brandfont);font-synthesis:none;letter-spacing:0;font-stretch:normal}
.h-page{font-size:24px;line-height:1.08;letter-spacing:.012em;word-spacing:.08em}
.sec-h h2{font-size:17px}
.hello-t{line-height:1.08}
.brand-txt b{font-size:15px;letter-spacing:.01em}

/* ===== Estimation en direct (carte façon visuel TV) ===== */
.esth{padding:0 0 18px;color:#fff;background:radial-gradient(48% 34% at 50% 34%,rgba(90,213,234,.62),transparent 72%),radial-gradient(70% 55% at -5% 45%,rgba(70,100,255,.55),transparent 70%),radial-gradient(70% 55% at 105% 45%,rgba(70,100,255,.45),transparent 70%),linear-gradient(180deg,#2048E8 0%,#132C99 42%,#0A1440 70%,#050A1F 100%)}
.esth::before{background:repeating-linear-gradient(-58deg,transparent 0 46px,rgba(255,255,255,.035) 46px 47px),conic-gradient(from 180deg at 50% -4%,transparent 146deg,rgba(255,255,255,.10) 155deg,transparent 164deg,transparent 184deg,rgba(255,255,255,.08) 191deg,transparent 199deg)}
.esth-top{position:relative;z-index:30;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:16px 16px 0}
.esth-k{font-family:var(--brandfont);text-transform:uppercase;font-size:13px;white-space:nowrap;letter-spacing:.02em;transform:skewX(-6deg)}
.live{white-space:nowrap;flex:none;display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:#E5243B;color:#fff;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;box-shadow:0 4px 14px rgba(229,36,59,.45)}
.live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#fff;flex:none;animation:livePulse 1.4s ease-in-out infinite}
.btn .live-dot{background:#E5243B}
@keyframes livePulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.65)}}
.esth-cast{position:relative;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));padding:4px 12px 0;margin-top:-4px}
.esth-c{position:relative;display:flex;flex-direction:column;align-items:center;min-width:0;background:none;border:0;padding:0;color:#fff;border-radius:18px}
.esth-ph{position:relative;z-index:var(--z);display:block;width:134%;margin-inline:-17%;aspect-ratio:3/4;pointer-events:none}
.esth-ph img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0;-webkit-mask-image:linear-gradient(180deg,#000 58%,rgba(0,0,0,.35) 80%,transparent 97%);mask-image:linear-gradient(180deg,#000 58%,rgba(0,0,0,.35) 80%,transparent 97%)}
.esth-ph.nocut{width:100%;margin-inline:0}
.esth-ph.nocut .pimg{width:100%;height:100%;object-fit:cover;border-radius:16px 16px 0 0;-webkit-mask-image:linear-gradient(180deg,#000 60%,transparent);mask-image:linear-gradient(180deg,#000 60%,transparent)}
.esth-pct{position:relative;z-index:50;display:flex;align-items:center;justify-content:center;margin-top:calc(var(--fs) * -0.95);font-family:var(--brandfont);font-synthesis:none;line-height:.9;white-space:nowrap}
.esth-v{display:inline-flex;align-items:baseline;transform:skewX(-9deg);text-shadow:0 6px 26px rgba(5,10,31,.6),0 2px 0 rgba(5,10,31,.35)}
.esth-v b{font-weight:400;font-size:var(--fs);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.esth-v small{font-size:calc(var(--fs) * .62);margin-left:.02em}
.esth-tr{display:inline-flex;margin-left:4px;min-width:0}
.tr{display:inline-flex;width:calc(var(--fs) * .28);min-width:12px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.35))}
.tr svg{width:100%;height:auto}
.tr.up{color:#3DD598}.tr.dn{color:#FF6B7C}
.esth-n{position:relative;z-index:50;margin-top:6px;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.85);max-width:100%;overflow:hidden;text-overflow:ellipsis}
.esth-c.out .esth-ph img,.esth-c.out .esth-ph .pimg{filter:grayscale(1) brightness(.7)}
.esth-c.out .esth-v{opacity:.55}
.esth-t{position:relative;z-index:40;margin:16px 14px 0;text-align:center;font-family:var(--brandfont);font-synthesis:none;font-weight:400;text-transform:uppercase;font-size:clamp(19px,6vw,30px);line-height:1.05;transform:skewX(-7deg);letter-spacing:.005em}
.esth-t em{font-style:normal;color:#B7C6FF}
.esth-f{position:relative;z-index:40;margin:8px 16px 0;text-align:center;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:rgba(255,255,255,.8)}
.esth-c:focus-visible{outline-offset:-3px}
@media (prefers-reduced-motion:no-preference){
  .view.enter .esth-ph{animation:estUp .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i) * .09s)}
  .view.enter .esth-pct{animation:rise .5s ease-out both;animation-delay:calc(.35s + var(--i) * .09s)}
  .esth-c.bump .esth-v{animation:estBump .7s ease-out}
}
@keyframes estUp{from{opacity:0;transform:translateY(30px) scale(.96)}}
@keyframes estBump{0%{transform:skewX(-9deg) scale(1)}30%{transform:skewX(-9deg) scale(1.1);text-shadow:0 0 22px rgba(90,213,234,.9),0 6px 26px rgba(5,10,31,.6)}100%{transform:skewX(-9deg) scale(1)}}
@media (prefers-reduced-motion:reduce){.live-dot{animation:none}}
.est-me{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center}
.est-me b{display:block;font-size:15px}.est-me small{display:block;font-size:13px;color:var(--muted)}
.est-ic{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand)}
.est-ic svg{width:20px;height:20px}
/* admin : ajout de votes */
.adm-pct{font-family:var(--brandfont);font-weight:400;font-size:18px}
.add-votes{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:14px;border:1px dashed var(--line);background:color-mix(in srgb,var(--surface-2) 50%,transparent)}
.av-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.av-in{display:grid;grid-template-columns:28px minmax(0,1fr) 84px;gap:8px;align-items:center;font-size:14px;font-weight:600}
.av-in span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.icon-x{width:44px;height:44px;border:0;background:none;color:var(--muted);font-size:22px;border-radius:10px}
.icon-x:hover{color:var(--danger)}
h1[tabindex="-1"]:focus,h2[tabindex="-1"]:focus{outline:none}

/* ===== Rythme vertical : espacements harmonisés ===== */
.view{gap:22px}
.view>.sec-h,.stepwrap>.sec-h{margin-top:10px;margin-bottom:-8px}
.view>.sec-h:first-child,.stepwrap>.sec-h:first-child{margin-top:0}
.stepwrap{display:flex;flex-direction:column;gap:14px}
.stepwrap>.lead:first-child{margin-top:0}
.lead{margin-top:8px}
h1,h2{line-height:1.15}
.h-page{line-height:1.14}
.hero-k,.hello-t{line-height:1.12}
.stage .eyebrow+.hero-k{margin-top:2px}
.stat{gap:6px}
.bar{margin-top:8px}
.podx{gap:6px}
.pt{font-size:13.5px;gap:6px;padding:0 4px}
.field{gap:7px}
.rrow .who small{display:block;margin-top:2px}
.season-h{gap:6px}
.duel-q{line-height:1.2}
.legal h2,.legal h3{margin-top:6px}

/* ===== Ordinateur : logo, onglets et compte dans une seule barre ===== */
@media (min-width:760px){
  .top-in{max-width:1120px;gap:14px;padding:10px 20px}
  .top-in>nav.tabs{position:static;flex:1 1 auto;min-width:0;display:flex;justify-content:center;align-items:center;gap:4px;padding:0;background:none;border:0;backdrop-filter:none;-webkit-backdrop-filter:none;z-index:auto}
  .top-in>nav.tabs button{padding:9px 12px;font-size:14px;gap:8px;white-space:nowrap}
  .top-in .top-actions{margin-left:0;flex:none}
  .top-in .brand{flex:none}
  header.top.sub .ptitle{display:none}
  .playtabs{top:calc(env(safe-area-inset-top,0px) + 74px)}
  .top-in>nav.tabs .dot{top:3px;left:24px}
}
@media (min-width:760px) and (max-width:979px){
  .top-in .brand-txt{display:none}
  .top-in>nav.tabs button{padding:8px 9px;font-size:13.5px;gap:6px}
  .pill-btn.acct span:not(.av):not(.ab-notes){display:none}
  .pill-btn.acct{padding:4px}
  .top-in>nav.tabs .dot{top:2px;left:20px}
}

/* Portraits détourés : fond bleu "plateau" derrière les académiciens */
:root{--phbg:radial-gradient(95% 80% at 50% 22%,#4A86FF 0%,#1F4FE0 50%,#13248F 100%)}
img.pimg,img.av,img.portrait{background:var(--phbg)!important}
img.pimg,img.portrait{object-position:50% 0}

/* ===== Côte de Popularité : tableau en direct (codes du site : plateau bleu nuit, cadres blancs, or pour le n°1) ===== */
.cboard{padding:0 10px 18px;background:radial-gradient(70% 24% at 50% 22%,rgba(74,134,255,.30),transparent 75%),radial-gradient(120% 70% at 50% -12%,#3366FF 0%,rgba(51,102,255,.38) 36%,transparent 72%),linear-gradient(180deg,#0C1C58 0%,#060B22 100%)}
.cb-top{position:relative;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:16px 6px 0}
.cb-k{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.78);text-align:left}
.cb-list{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;row-gap:20px}
.cb-i{position:relative;width:20%;padding:0 3px;container-type:inline-size}
.cb-i.t1{width:33.333%;padding:0 7px}.cb-i.t2{width:25%;padding:0 5px}
.cb-b{position:relative;display:flex;flex-direction:column;align-items:center;width:100%;background:none;border:0;padding:9cqi 0 0 12cqi;color:#fff;border-radius:14px}
.cb-fr{position:relative;display:block;width:100%}
.cb-ph{position:relative;display:block;aspect-ratio:1;border-radius:17cqi;overflow:hidden;background:var(--phbg);border:max(1.5px,1.6cqi) solid rgba(255,255,255,.5);box-shadow:0 7cqi 16cqi rgba(5,10,31,.45);transition:transform .2s ease}
.cb-b.top .cb-ph{border-color:rgba(255,255,255,.92)}
.cb-b.r1 .cb-ph{border-color:#F4BF4F;box-shadow:0 0 0 3cqi rgba(244,191,79,.22),0 10cqi 26cqi rgba(244,191,79,.3)}
.cb-ph img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 12%}
.cb-ini{display:grid;place-items:center;height:100%;font:900 30cqi var(--display)}
.cb-rk{position:absolute;left:-15cqi;top:-12cqi;z-index:2;font-family:var(--brandfont);font-synthesis:none;font-size:50cqi;line-height:1;letter-spacing:-.02em;color:#fff;transform:skewX(-6deg);text-shadow:0 2cqi 7cqi rgba(5,10,31,.65);pointer-events:none}
.cb-rk.dd{font-size:40cqi;left:-17cqi;top:-8cqi}
.cb-b.r1 .cb-rk{color:#F4BF4F;text-shadow:0 0 10cqi rgba(244,191,79,.5),0 2cqi 6cqi rgba(5,10,31,.5)}
.cb-nom{position:absolute;left:7cqi;right:7cqi;bottom:7cqi;border-radius:6cqi;background:rgba(207,51,70,.94);color:#fff;font-size:clamp(7.5px,9.5cqi,11px);font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-align:center;padding:1px 0;line-height:1.35}
.cb-n{display:block;max-width:100%;margin-top:8cqi;font-family:var(--display);font-stretch:110%;font-weight:800;font-size:clamp(11px,14cqi,16px);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cb-sc{display:flex;justify-content:center;align-items:center;gap:4px;margin-top:2px;font-size:clamp(10.5px,11cqi,12.5px);font-weight:600;color:rgba(255,255,255,.66);font-variant-numeric:tabular-nums}
.cb-d{font-size:.85em;font-weight:800}.cb-d.up{color:#3DD598}.cb-d.dn{color:#FF8A98}
@media (hover:hover){.cb-b:hover .cb-ph{transform:translateY(-2px)}}
.cb-b:focus-visible{outline-offset:3px}
.cb-moved .cb-ph{animation:cbGlow 1s ease-out}
@keyframes cbGlow{30%{box-shadow:0 0 0 3cqi rgba(90,213,234,.55),0 0 18cqi rgba(90,213,234,.6)}}
.cb-f{margin-top:20px;font-size:12.5px;color:rgba(255,255,255,.7)}
.cb-f b{color:#fff;font-variant-numeric:tabular-nums}
@media (prefers-reduced-motion:no-preference){.view.enter .cb-list.boot .cb-i{animation:rise .5s ease-out both;animation-delay:calc(var(--i) * .035s)}}

/* Côte : prénom sur la vignette (police du logo) + panneau Scores et statistiques */
.cb-b{padding-bottom:9cqi}
.cb-n{position:absolute;left:-8cqi;right:-8cqi;bottom:-9cqi;z-index:3;display:block;max-width:none;margin:0;text-align:center;font-family:var(--brandfont);font-synthesis:none;font-weight:400;font-stretch:normal;text-transform:uppercase;font-size:clamp(9px,15.5cqi,19px);line-height:1.3;letter-spacing:.01em;white-space:nowrap;overflow:visible;color:#fff;text-shadow:0 0 3px rgba(5,10,31,.95),0 0 8px rgba(5,10,31,.75),0 2px 4px rgba(5,10,31,.9)}
.cb-b.r1 .cb-n{color:#FFE7A8}
.cb-list{row-gap:22px}
.cb-more{padding:0;overflow:hidden}
.cb-more>summary{list-style:none;display:grid;grid-template-columns:40px minmax(0,1fr) 20px;gap:12px;align-items:center;padding:14px 16px;cursor:pointer;min-height:64px}
.cb-more>summary::-webkit-details-marker{display:none}
.cb-more-ic{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--brand) 16%,transparent);color:var(--brand)}
.cb-more-ic svg{width:20px;height:20px}
.cb-more-t b{display:block;font-size:15.5px}
.cb-more-t small{display:block;margin-top:2px;font-size:13px;color:var(--muted);line-height:1.35}
.cb-more-chev{display:grid;place-items:center;color:var(--muted);transition:transform .25s ease}
.cb-more-chev svg{width:18px;height:18px}
.cb-more[open] .cb-more-chev{transform:rotate(90deg)}
.cb-more-b{display:flex;flex-direction:column;gap:14px;padding:4px 14px 16px;border-top:1px solid var(--line);padding-top:16px}
.stats.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.stats.two .stat:last-child:nth-child(odd){grid-column:1/-1}
.stat b.up{color:var(--ok)}
.cs-list{gap:8px}
.cs-row .who small{display:block;margin-top:6px;font-size:12px;color:var(--muted);white-space:normal;line-height:1.35}
.cs-row .rgt{display:flex;flex-direction:column;align-items:flex-end;gap:3px}
.cs-d{font-size:11.5px;font-weight:700;color:var(--muted);white-space:nowrap}
.cs-d.up{color:var(--ok)}.cs-d.dn{color:var(--danger)}
@media (prefers-reduced-motion:no-preference){.cb-more[open] .cb-more-b{animation:rise .3s ease-out}}

/* ===== Couleurs du générique Star Academy : jaune / rouge / violet ===== */
:root{--ny:#FFD23F;--nr:#F2433A;--nv:#8E44FF;--nfill:#fff;
  --gloss:radial-gradient(120% 55% at 50% -6%,rgba(255,255,255,.62),rgba(255,255,255,0) 62%),radial-gradient(100% 100% at 50% 50%,rgba(255,255,255,0) 58%,rgba(255,255,255,.28) 100%)}
.hue-y{--phbg:var(--gloss),radial-gradient(90% 55% at 50% 112%,rgba(120,40,0,.35),rgba(0,0,0,0) 70%),linear-gradient(165deg,#FFE98F 0%,#FFC93C 42%,#F4900C 100%)}
.hue-r{--phbg:var(--gloss),radial-gradient(90% 55% at 50% 112%,rgba(5,20,80,.4),rgba(0,0,0,0) 70%),linear-gradient(165deg,#86AEFF 0%,#4A86FF 45%,#1F4FE0 100%)}
.hue-v{--phbg:var(--gloss),radial-gradient(90% 55% at 50% 112%,rgba(40,0,90,.38),rgba(0,0,0,0) 70%),linear-gradient(165deg,#C08BFF 0%,#8E44FF 45%,#5520C2 100%)}
/* prénoms façon générique */
.cb-n,.podx b,.castx b,.nomc b,.dcard .pname,.esth-n,.pcard .pname,.fiche-h img.portrait+.stack h1{font-family:var(--brandfont);font-weight:400;font-synthesis:none;font-stretch:normal;text-transform:none;letter-spacing:.01em;color:var(--nfill);text-shadow:.06em .06em 0 var(--ny),.12em .12em 0 var(--nr),.18em .18em 0 var(--nv),.24em .3em .12em rgba(0,0,0,.75),.22em .34em .5em rgba(0,0,10,.85),0 0 .6em rgba(0,0,10,.45);transform:skewX(-8deg);padding:0 .22em .2em 0}
.cb-n,.stage .podx b,.stage .nomc b,.esth-n,.dcard .pname{color:#fff}
.podx b{font-size:17px}.podx.p1 b{font-size:19px}
.castx b{font-size:16px;line-height:1.25}
.nomc b{font-size:17px}
.dcard .pname{font-size:21px}
.pcard .pname{font-size:14.5px;line-height:1.3}
.esth-n{font-size:clamp(13px,4vw,17px);letter-spacing:.01em;margin-top:8px;overflow:visible}
.fiche-h img.portrait+.stack h1{font-size:34px}
.cb-n{font-size:clamp(10px,16.5cqi,20px);bottom:-10cqi;overflow:visible}
.cb-b.r1 .cb-n{color:#fff}
/* accents "verre" : une couleur par élément */
.glass,.steplist .srow .step-ic,.modes .mode .ic,.pt-n,.badge:not(.locked) .medal,.cb-more-ic,.est-ic{position:relative;border:0;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.55),inset 0 -4px 10px rgba(0,0,0,.18),0 4px 14px var(--gl-sh,rgba(0,0,0,.25))}
.steplist .srow .step-ic,.modes .mode .ic,.pt-n,.badge:not(.locked) .medal,.cb-more-ic,.est-ic{background:var(--gloss),linear-gradient(165deg,#86AEFF 0%,#4A86FF 45%,#1F4FE0 100%);color:#fff;--gl-sh:rgba(74,134,255,.35)}
.pt-n{width:26px;height:26px;font-size:12.5px}
.pt:not([aria-selected="true"]) .pt-n{opacity:.8}
.steplist .srow .step-ic{width:38px;height:38px;border-radius:12px}
.steplist .srow .step-ic svg,.modes .mode .ic svg{filter:drop-shadow(0 1px 1px rgba(0,0,0,.2))}

/* Vote : uniquement la cartouche + le prénom collé dessous */
.nomc{position:relative;gap:0;padding:0;border:0;border-radius:16px;background:none!important;box-shadow:none}
.nomc .pimg{border-radius:16px;border:2px solid rgba(255,255,255,.4);box-shadow:0 10px 22px rgba(5,10,31,.45);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.nomc b{position:relative;z-index:2;margin-top:-.55em;max-width:100%;white-space:nowrap}
.nomc[aria-pressed="true"]{border:0}
.nomc[aria-pressed="true"] .pimg{border-color:#F4BF4F;box-shadow:0 0 0 3px rgba(244,191,79,.35),0 12px 28px rgba(244,191,79,.35)}
.nomc-ok{position:absolute;top:-8px;right:-8px;z-index:3;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#F4BF4F;color:#2B1D00;box-shadow:0 3px 10px rgba(0,0,0,.35)}
.nomc-ok svg{width:16px;height:16px}
@media (hover:hover){.nomc:not(:disabled):hover .pimg{transform:translateY(-3px)}}
.nomc:disabled{opacity:1}.nomc:disabled .pimg{filter:saturate(.85)}
.nomgrid{gap:14px 12px}

/* Prénom centré pile sur la ligne du bas du cadre, partout */
.podx b,.castx b,.nomc b,.dcard .pname,.pcard .pname{position:relative;z-index:3;line-height:1.3;padding-top:0;padding-bottom:.2em;max-width:100%}
.nomc b{margin-top:-.65em}
.podx b{margin-top:calc(-.65em - 6px)}
.podimg{margin-bottom:0}
.podimg .rk{left:-8px;top:-10px;bottom:auto;transform:none}
.podx.p1 .podimg .rk{left:-10px;top:-12px;bottom:auto}
.castx{gap:4px}
.castx b{margin-top:calc(-.65em - 4px);text-align:center;align-self:center}
.castx small{text-align:center}
.castx .nomtag{align-self:center}
.cast-nom{left:auto;right:6px;top:6px;bottom:auto;padding:2px 6px;border-radius:99px;font-size:10px}
.pcard .pname{margin-top:calc(-.65em - 6px);overflow:visible}
.dcard .pname{margin-top:calc(-.65em - 8px);text-align:center}
.cb-n{bottom:0;padding-bottom:0;transform:translateY(50%) skewX(-8deg)}
.cb-b{padding-bottom:7cqi}

/* Jouer : plus d'encadré autour des cartouches (pronos, classement, duels) */
.pcard{border:0;padding:0;gap:0;background:none!important;border-radius:14px}
.pcard .pimg{border-radius:14px;border:2px solid rgba(255,255,255,.12);box-shadow:0 8px 18px rgba(5,10,31,.35);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.pcard[aria-pressed="true"]{border:0}
.pcard[aria-pressed="true"] .pimg{border-color:var(--brand);box-shadow:0 10px 22px color-mix(in srgb,var(--brand) 35%,transparent)}
.pcard .pname{margin-top:-.65em}
.pcard .ord{top:-7px;right:-7px;z-index:4}
.pgrid{gap:14px 10px}
.dcard{border:0;padding:0;gap:0;background:none;border-radius:18px}
.dcard img,.dcard .pimg{border-radius:18px;border:2px solid rgba(255,255,255,.14);box-shadow:0 12px 26px rgba(5,10,31,.4)}
.dcard .pname{margin-top:-.65em}
@media (prefers-reduced-motion:no-preference){.dcard.win{box-shadow:none}.dcard.win img,.dcard.win .pimg{border-color:#F4BF4F;box-shadow:0 0 0 4px rgba(244,191,79,.3),0 18px 40px rgba(244,191,79,.3)}}
@media (hover:hover){.pcard:not(:disabled):hover .pimg,.dcard:hover img{transform:translateY(-2px)}}

/* ===================== Passe esthétique ===================== */
/* Règles de couleurs : bleu = interface · jaune/rouge/violet = académiciens · or = 1re place & récompenses · rouge = direct & alertes */
:root{--panel:rgba(16,28,70,.58);--panel-brd:linear-gradient(180deg,rgba(170,198,255,.30),rgba(170,198,255,.07) 38%,rgba(170,198,255,.12));
  --r-sm:12px;--r-md:16px;--r-lg:20px;
  --btn-glass:radial-gradient(120% 95% at 50% -35%,rgba(255,255,255,.5),rgba(255,255,255,0) 60%),linear-gradient(180deg,#5D93FF 0%,#3B74F5 55%,#2A5FE6 100%)}
/* 2 · panneaux en verre */
.card,.task,.stat,.badge,.mode,details.adm,.rrow,.cb-more,.sticky-bar{border:1px solid transparent;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.012) 46%) padding-box,linear-gradient(var(--panel),var(--panel)) padding-box,var(--panel-brd) border-box;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 10px 28px rgba(2,6,24,.32)}
.card,details.adm,.mode,.cb-more{border-radius:var(--r-lg)}
.rrow,.stat,.badge{border-radius:var(--r-md)}
.rrow.me,.mode.rec,.cs-row.me{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.015) 46%) padding-box,linear-gradient(rgba(30,56,140,.62),rgba(30,56,140,.62)) padding-box,linear-gradient(180deg,#86AEFF,rgba(74,134,255,.35)) border-box}
.react,.chip{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.02)) padding-box,linear-gradient(var(--panel),var(--panel)) padding-box,var(--panel-brd) border-box;border:1px solid transparent}
.react[aria-pressed="true"]{background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.03)) padding-box,linear-gradient(rgba(40,80,190,.7),rgba(40,80,190,.7)) padding-box,linear-gradient(180deg,#86AEFF,rgba(74,134,255,.4)) border-box}
/* boutons en verre */
.btn,.pill-btn.primary,.seg button[aria-pressed="true"],.pt[aria-selected="true"]{background:var(--btn-glass);color:#fff;border-color:transparent;text-shadow:0 1px 1px rgba(0,10,60,.25);box-shadow:inset 0 1px 0 rgba(255,255,255,.55),inset 0 -2px 6px rgba(10,30,120,.35),0 8px 22px rgba(74,134,255,.32)}
.btn.ghost-b{background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.02)) padding-box,linear-gradient(var(--panel),var(--panel)) padding-box,var(--panel-brd) border-box;border:1px solid transparent;color:var(--fg);text-shadow:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.btn.outline{background:rgba(74,134,255,.06);color:#9DBDFF;text-shadow:none;border:1.5px solid rgba(134,174,255,.45);box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.btn.light{background:radial-gradient(120% 95% at 50% -35%,#fff,rgba(255,255,255,0) 60%),linear-gradient(180deg,#FFFFFF,#E3ECFF);color:#1533A6;text-shadow:none;box-shadow:inset 0 -2px 6px rgba(21,51,166,.15),0 10px 26px rgba(0,0,0,.28)}
.btn.danger{background:radial-gradient(120% 95% at 50% -35%,rgba(255,255,255,.45),rgba(255,255,255,0) 60%),linear-gradient(180deg,#FF6B7C,#E5243B)}
.btn:disabled,.btn[disabled]{filter:saturate(.4) brightness(.8);box-shadow:none}
/* barre d'onglets en verre */
nav.tabs{background:rgba(7,13,38,.72);-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);border-top:1px solid rgba(170,198,255,.16);box-shadow:0 -10px 30px rgba(2,6,24,.35)}
nav.tabs button[aria-current="page"]{color:#fff;background:radial-gradient(70% 90% at 50% 0%,rgba(74,134,255,.42),rgba(74,134,255,0) 75%)}
nav.tabs button[aria-current="page"]::after{content:"";position:absolute;top:-6px;left:50%;width:26px;height:3px;margin-left:-13px;border-radius:0 0 3px 3px;background:#86AEFF;box-shadow:0 0 10px 2px rgba(74,134,255,.8)}
nav.tabs button[aria-current="page"] svg{filter:drop-shadow(0 0 6px rgba(120,170,255,.75))}
@media (min-width:760px){.top-in>nav.tabs button[aria-current="page"]{background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.02)) padding-box,linear-gradient(rgba(40,72,170,.55),rgba(40,72,170,.55)) padding-box,linear-gradient(180deg,rgba(170,198,255,.45),rgba(170,198,255,.08)) border-box;border:1px solid transparent}
  .top-in>nav.tabs button[aria-current="page"]::after{top:auto;bottom:-11px;border-radius:3px}}
header.top{background:rgba(5,10,31,.7);border-bottom:1px solid rgba(170,198,255,.12)}
.inp{background:rgba(5,10,31,.55);border-color:rgba(170,198,255,.18);border-radius:var(--r-sm)}
.inp:focus{border-color:#86AEFF;box-shadow:0 0 0 3px rgba(74,134,255,.25)}
.seg,.playtabs{background:rgba(7,13,38,.55);border:1px solid rgba(170,198,255,.14)}
/* 3 · hiérarchie : la méthode devient du texte nu */
.method{background:none;border-radius:0;padding:14px 2px 0;border-top:1px solid rgba(170,198,255,.14);color:var(--muted);font-size:13.5px}
.method b{color:#9DBDFF}
/* 5 · typographie : police du logo pour les titres et chiffres, Instrument Sans pour le reste */
h3,.qs-t,.wk-h b,details.adm>summary,.mode b,.duel-q,.season-h small{font-family:var(--body);font-weight:750;font-stretch:normal;letter-spacing:0}
h3{font-size:17px}
.stat b,.score,.rrow .pos,.earned,.pct,.cdbig b,.code,.vs,.adm-pct{font-family:var(--brandfont);font-weight:400;font-synthesis:none;font-stretch:normal}
.stat b{font-size:24px;letter-spacing:.01em}
.av,.pcard .pimg,.cb-ini{font-family:var(--brandfont);font-weight:400}
/* 6 · graphiques */
.chart .grid{stroke:rgba(170,198,255,.12);stroke-dasharray:3 5}
.chart .area{fill:url(#cgArea);opacity:1}
.chart .line{stroke:url(#cgLine);stroke-width:3}
.chart .glow{fill:none;stroke:#4A86FF;stroke-width:6;opacity:.55;filter:url(#cgGlow)}
.chart .dot{fill:url(#cgDot);stroke:rgba(255,255,255,.85);stroke-width:1.5;filter:drop-shadow(0 0 4px rgba(74,134,255,.9))}
.chart .dot.end{fill:url(#cgDot);stroke:#fff;stroke-width:2}
.chart .val{font-family:var(--brandfont);font-weight:400;font-size:12px}
.chart.bars .b{fill:url(#cbBarO)}
.chart.bars .b.cur{fill:url(#cbBar);filter:drop-shadow(0 0 6px rgba(74,134,255,.6))}
/* 6 · états vides : petite illustration en verre */
.card.empty{position:relative;padding-top:78px;text-align:center;align-items:center}
.card.empty::before{content:"";position:absolute;top:18px;left:50%;width:48px;height:48px;margin-left:-24px;border-radius:15px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='28 8 166 102'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23FFFFFF'/%3E%3Cstop offset='1' stop-color='%23DDE8FF'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M83.0,10 H190.0 V36 H83.0 A13.0,13.0 0 0 1 83.0,10Z M43.0,46 H190.0 V72 H43.0 A13.0,13.0 0 0 1 43.0,46Z M99.0,82 H190.0 V108 H99.0 A13.0,13.0 0 0 1 99.0,82Z' fill='url(%23g)'/%3E%3C/svg%3E") center/26px no-repeat,var(--gloss),linear-gradient(165deg,#86AEFF 0%,#4A86FF 45%,#1F4FE0 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.55),inset 0 -4px 10px rgba(0,0,0,.18),0 6px 18px rgba(74,134,255,.4)}
.card.empty .btn{align-self:center}
/* 7 · lisibilité des vignettes de la Côte sur téléphone */
@media (max-width:520px){.cb-i{width:25%;padding:0 4px}.cb-n{font-size:clamp(11px,16.5cqi,20px)}}
.cb-n{font-size:clamp(11px,16.5cqi,20px)}


/* ===== Motif étoile, profondeur du fond, petites animations ===== */
html{background:var(--bg)}
body{background:transparent}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .055 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"),radial-gradient(110% 55% at 50% -5%,rgba(40,80,210,.30),rgba(40,80,210,0) 65%),radial-gradient(90% 60% at 0% 100%,rgba(30,70,200,.14),rgba(30,70,200,0) 60%),radial-gradient(140% 100% at 50% 50%,rgba(0,0,8,0) 55%,rgba(0,0,8,.55) 100%)}
/* étoile en filigrane dans les scènes */
/* petite étoile devant les titres de section */
.sec-h h2::before{content:"";display:inline-block;width:1.378em;height:.844em;margin-right:.42em;vertical-align:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='30 10 160 98'%3E%3Cpath d='M83.0,10 H190.0 V36 H83.0 A13.0,13.0 0 0 1 83.0,10Z M43.0,46 H190.0 V72 H43.0 A13.0,13.0 0 0 1 43.0,46Z M99.0,82 H190.0 V108 H99.0 A13.0,13.0 0 0 1 99.0,82Z' fill='%23fff'/%3E%3C/svg%3E") no-repeat center/contain;filter:drop-shadow(0 0 5px rgba(120,170,255,.55))}
/* séparateurs étoilés */
footer.foot,.method{border-top:0;position:relative}
footer.foot::before,.method::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,rgba(170,198,255,0),rgba(170,198,255,.28) 18%,rgba(170,198,255,.28) 44%,rgba(170,198,255,0) 47%,rgba(170,198,255,0) 53%,rgba(170,198,255,.28) 56%,rgba(170,198,255,.28) 82%,rgba(170,198,255,0))}
footer.foot::after,.method::after{content:"";position:absolute;top:-6px;left:50%;width:19px;height:12px;margin-left:-9.5px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='30 10 160 98'%3E%3Cpath d='M83.0,10 H190.0 V36 H83.0 A13.0,13.0 0 0 1 83.0,10Z M43.0,46 H190.0 V72 H43.0 A13.0,13.0 0 0 1 43.0,46Z M99.0,82 H190.0 V108 H99.0 A13.0,13.0 0 0 1 99.0,82Z' fill='%23fff'/%3E%3C/svg%3E") no-repeat center/contain}
/* étincelles au vote */
.spk{position:fixed;z-index:300;pointer-events:none;background:var(--c,#fff);border-radius:99px;filter:drop-shadow(0 0 4px rgba(255,255,255,.7))}
@media (prefers-reduced-motion:no-preference){
  /* reflet qui glisse sur les cartouches */
  .cb-ph::after,.podimg::after,.cast-ph::after,.nomc::before{content:"";position:absolute;z-index:1;pointer-events:none;background:linear-gradient(115deg,rgba(255,255,255,0) 36%,rgba(255,255,255,.34) 48%,rgba(255,255,255,.08) 53%,rgba(255,255,255,0) 62%) no-repeat;background-size:280% 100%;background-position:170% 0;animation:sheen 8s ease-in-out infinite}
  .cb-ph::after{inset:0;animation-delay:calc(var(--i,0) * .28s)}
  .podimg::after{inset:0;border-radius:16px}
  .podx.p1 .podimg::after{animation-delay:.6s}.podx.p3 .podimg::after{animation-delay:1.2s}
  .cast-ph::after{inset:0;border-radius:14px}
  .castx:nth-child(2) .cast-ph::after{animation-delay:.4s}.castx:nth-child(3) .cast-ph::after{animation-delay:.8s}.castx:nth-child(4) .cast-ph::after{animation-delay:1.2s}.castx:nth-child(5) .cast-ph::after{animation-delay:1.6s}
  .nomc::before{top:0;left:0;right:0;aspect-ratio:3/4;border-radius:16px}
  .nomc:nth-child(2)::before{animation-delay:.5s}.nomc:nth-child(3)::before{animation-delay:1s}.nomc:nth-child(4)::before{animation-delay:1.5s}
}
@keyframes sheen{0%,70%{background-position:170% 0}100%{background-position:-70% 0}}

/* Titres de section en italique, motif des barres incliné dans le même sens (comme le logo) */
.sec-h h2{transform:skewX(-10deg);transform-origin:0 100%}
footer.foot::after,.method::after{transform:skewX(-10deg)}
.card.empty::before{background-size:26px auto}

/* Révélation d'un résultat de prono : suspense puis bonne réponse */
.rv-mine .ans-chip{border-color:rgba(170,198,255,.3);transition:background .3s ease,border-color .3s ease,opacity .3s ease}
.rv-mine .ans-chip.ok{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 18%,transparent)}
.rv-mine .ans-chip.near{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 14%,transparent)}
.rv-mine .ans-chip.ko{opacity:.5}
.rv-drum{font-family:var(--brandfont);font-size:20px;margin-top:6px;transform:skewX(-8deg)}
.rv-drum.done{color:#9DBDFF;font-size:15px;font-family:var(--body);font-weight:800;letter-spacing:.08em;text-transform:uppercase;transform:none}
.rv-dots i{font-style:normal;display:inline-block;animation:rvDot 1.2s infinite}
.rv-dots i:nth-child(2){animation-delay:.2s}.rv-dots i:nth-child(3){animation-delay:.4s}
@keyframes rvDot{0%,100%{opacity:.2;transform:translateY(0)}40%{opacity:1;transform:translateY(-4px)}}
.rv-slots{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:4px 0 2px}
.rv-slot{position:relative;width:96px;display:flex;flex-direction:column;align-items:center}
.rv-slots.solo .rv-slot{width:132px}
.rv-pos{position:absolute;top:-10px;left:-8px;z-index:4;min-width:30px;height:30px;padding:0 7px;border-radius:15px;display:grid;place-items:center;font:400 14px var(--brandfont);color:#fff;background:var(--gloss),linear-gradient(165deg,#86AEFF,#4A86FF 45%,#1F4FE0);box-shadow:0 4px 12px rgba(74,134,255,.45)}
.rv-card{position:relative;width:100%;aspect-ratio:3/4;border-radius:16px;overflow:hidden;display:grid;place-items:center;background:var(--gloss),linear-gradient(165deg,#3B6FF0,#1A3BB0 55%,#0C1C58);border:2px solid rgba(170,198,255,.35);box-shadow:0 10px 24px rgba(2,6,24,.45)}
.rv-q{font:400 54px var(--brandfont);color:#fff;transform:skewX(-8deg);text-shadow:0 0 18px rgba(134,174,255,.9)}
.rv-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 12%;background:var(--phbg)}
.rv-name{position:relative;z-index:3;margin-top:-.65em;font-family:var(--brandfont);font-weight:400;font-size:16px;line-height:1.3;color:#fff;white-space:nowrap;transform:skewX(-8deg);padding:0 .22em .2em 0;text-shadow:.06em .06em 0 var(--ny),.12em .12em 0 var(--nr),.18em .18em 0 var(--nv),.24em .3em .12em rgba(0,0,0,.75),.22em .34em .5em rgba(0,0,10,.85)}
.rv-slot:not(.landed) .rv-name{opacity:.55}
.rv-badge{position:absolute;top:6px;right:6px;z-index:3;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:16px;box-shadow:0 3px 10px rgba(0,0,0,.35)}
.rv-badge.hit{background:var(--ok);color:#06210F}.rv-badge.near{background:var(--gold);color:#2B1D00}
.rv-badge svg{width:16px;height:16px}
.rv-slot.hit .rv-card{border-color:var(--ok);box-shadow:0 0 0 3px color-mix(in srgb,var(--ok) 35%,transparent),0 12px 28px rgba(61,213,152,.3)}
.rv-slot.near .rv-card{border-color:var(--gold)}
.rv-slot.landed:not(.hit):not(.near) .rv-card{border-color:rgba(255,255,255,.85)}
.rv-skip{align-self:center;font-size:13px;color:var(--muted)}
.rv-pts{display:flex;flex-direction:column;align-items:center;gap:4px}
@media (prefers-reduced-motion:no-preference){
  .rv-card.wait{animation:rvPulse 1.3s ease-in-out infinite}
  .rv-card.spin{animation:rvShake .18s linear infinite}
  .rv-card.spin .rv-img{filter:blur(1.2px) saturate(1.2)}
  .rv-slot.landed .rv-card{animation:rvLand .7s cubic-bezier(.2,.8,.2,1)}
  .rv-slot.landed .rv-card::after{content:"";position:absolute;inset:0;z-index:2;background:#fff;animation:rvFlash .6s ease-out forwards;pointer-events:none}
  .rv-slot.landed .rv-badge{animation:pop .4s .25s cubic-bezier(.2,.8,.2,1) both}
  .rv-pts:not([hidden]){animation:rise .45s ease-out}
}
@keyframes rvPulse{0%,100%{box-shadow:0 10px 24px rgba(2,6,24,.45),0 0 0 0 rgba(74,134,255,0)}50%{box-shadow:0 10px 24px rgba(2,6,24,.45),0 0 26px 4px rgba(74,134,255,.55)}}
@keyframes rvShake{0%{transform:translateY(0)}50%{transform:translateY(-2px)}100%{transform:translateY(0)}}
@keyframes rvLand{0%{transform:scale(.88)}55%{transform:scale(1.1)}100%{transform:scale(1)}}
@keyframes rvFlash{from{opacity:.85}to{opacity:0}}

/* ===== Or / argent / bronze & rouge nommés ===== */
:root{--g-gold:var(--gloss),radial-gradient(90% 55% at 50% 112%,rgba(110,60,0,.35),rgba(0,0,0,0) 70%),linear-gradient(165deg,#FFF0B0 0%,#FFD45C 42%,#E2A21A 100%);
  --g-silver:var(--gloss),radial-gradient(90% 55% at 50% 112%,rgba(30,40,70,.35),rgba(0,0,0,0) 70%),linear-gradient(165deg,#FFFFFF 0%,#D9E0EC 45%,#9AA6BC 100%);
  --g-bronze:var(--gloss),radial-gradient(90% 55% at 50% 112%,rgba(80,30,0,.38),rgba(0,0,0,0) 70%),linear-gradient(165deg,#FFD9B5 0%,#E39A5B 45%,#A85A26 100%)}
.hue-g{--phbg:var(--g-gold)}.hue-s{--phbg:var(--g-silver)}.hue-bz{--phbg:var(--g-bronze)}
.hue-nr{--phbg:var(--gloss),radial-gradient(90% 55% at 50% 112%,rgba(90,0,20,.38),rgba(0,0,0,0) 70%),linear-gradient(165deg,#FF8E7A 0%,#F2433A 45%,#B5173A 100%)}
/* cadres et rangs du podium et du tableau */
.cb-b.r2 .cb-ph,.podx.p2 .podimg img{border-color:#E3E8F2}
.cb-b.r3 .cb-ph,.podx.p3 .podimg img{border-color:#E8A06A}
.cb-b.r2 .cb-rk{color:#E6EBF5}.cb-b.r3 .cb-rk{color:#F0A86A}
.podx.p2 .podimg .rk{background:var(--g-silver);color:#2A3346}
.podx.p3 .podimg .rk{background:var(--g-bronze);color:#3A1C08}
.podx.p1 .podimg .rk{background:var(--g-gold);color:#3A2600}
.castx:nth-child(1) .cast-rk{background:var(--g-gold);color:#3A2600}
.castx:nth-child(2) .cast-rk{background:var(--g-silver);color:#2A3346}
.castx:nth-child(3) .cast-rk{background:var(--g-bronze);color:#3A1C08}
/* classement des joueurs */
.rrow.podm .pos{display:grid;place-items:center;font:800 15px var(--body)!important;width:30px;height:30px;border-radius:50%;justify-self:center;color:#3A2600;box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 3px 10px rgba(0,0,0,.3)}
.rrow.m1 .pos{background:var(--g-gold);color:#3A2600!important}.rrow.m2 .pos{background:var(--g-silver);color:#2A3346!important}.rrow.m3 .pos{background:var(--g-bronze);color:#3A1C08!important}
.rrow.m1{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.015) 46%) padding-box,linear-gradient(rgba(58,48,20,.55),rgba(58,48,20,.55)) padding-box,linear-gradient(180deg,#FFD45C,rgba(226,162,26,.3)) border-box}
.rrow.m2{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.015) 46%) padding-box,linear-gradient(rgba(40,48,72,.6),rgba(40,48,72,.6)) padding-box,linear-gradient(180deg,#E3E8F2,rgba(154,166,188,.3)) border-box}
.rrow.m3{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.015) 46%) padding-box,linear-gradient(rgba(60,36,24,.55),rgba(60,36,24,.55)) padding-box,linear-gradient(180deg,#E8A06A,rgba(168,90,38,.3)) border-box}
.mini.podm .p{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;font-weight:800}
.mini.m1 .p{background:var(--g-gold);color:#3A2600}.mini.m2 .p{background:var(--g-silver);color:#2A3346}.mini.m3 .p{background:var(--g-bronze);color:#3A1C08}
/* accueil : ton classement */
.hrank{display:grid;grid-template-columns:auto minmax(0,1fr) 20px;gap:14px;align-items:center;text-align:left;width:100%;color:var(--fg);padding:14px 16px}
.hr-rk{width:58px;height:58px;border-radius:18px;display:flex;align-items:baseline;justify-content:center;padding-top:9px;background:var(--gloss),linear-gradient(165deg,#86AEFF 0%,#4A86FF 45%,#1F4FE0 100%);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.55),inset 0 -4px 10px rgba(0,0,0,.18),0 6px 16px rgba(74,134,255,.35)}
.hr-rk b{font:400 30px var(--brandfont);line-height:1}
.hr-rk small{font:800 11px var(--body);margin-left:1px}
.hrank.m1 .hr-rk{background:var(--g-gold);color:#3A2600;box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 6px 18px rgba(226,162,26,.45)}
.hrank.m2 .hr-rk{background:var(--g-silver);color:#2A3346;box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 6px 18px rgba(154,166,188,.4)}
.hrank.m3 .hr-rk{background:var(--g-bronze);color:#3A1C08;box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 6px 18px rgba(168,90,38,.4)}
.hr-t{display:flex;flex-direction:column;gap:1px;min-width:0}
.hr-t small{font-size:11.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#9DBDFF}
.hr-t b{font-size:18px;font-family:var(--brandfont);font-weight:400;transform:skewX(-6deg);transform-origin:0 100%}
.hr-t .note{font-size:13px}
.hr-go{color:var(--muted);display:grid;place-items:center}.hr-go svg{width:18px;height:18px}

/* Résultats des pronos : ✓ bonne place · ↕ dans le top mais mauvaise place · ✕ raté */
.pick-res>span{position:relative;padding-right:8px}
.pick-res>span.exact{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,transparent)}
.pick-res>span.near{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 10%,transparent)}
.pick-res>span.miss{border-color:color-mix(in srgb,var(--danger) 60%,transparent);opacity:.8}
.pr-n{position:absolute;top:-6px;left:-4px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font:800 10px var(--body);font-style:normal;color:#fff;background:var(--brand)}
.pr-ic,.rv-ci{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;font-style:normal;flex:none}
.pr-ic svg,.rv-ci svg,.rv-break em svg{width:12px;height:12px}
.exact .pr-ic,.ans-chip.ok .rv-ci,.rv-break .exact em{background:var(--ok);color:#06210F}
.near .pr-ic,.ans-chip.near .rv-ci,.rv-break .near em{background:var(--gold);color:#2B1D00}
.miss .pr-ic,.ans-chip.ko .rv-ci,.rv-break .miss em{background:var(--danger);color:#fff}
.rv-ci:empty{display:none}
.pr-pts{font-weight:800;font-size:12px;color:var(--muted)}
.exact .pr-pts{color:var(--ok)}.near .pr-pts{color:var(--gold)}
.rv-break{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-bottom:6px}
.rv-break span{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 4px;border-radius:999px;font-size:13px;font-weight:600;background:rgba(255,255,255,.05);border:1px solid rgba(170,198,255,.16)}
.rv-break em{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;font-style:normal}
.rv-break .exact b{color:var(--ok)}.rv-break .near b{color:var(--gold)}.rv-break .miss b{color:var(--muted)}
.rv-badge.near svg{width:16px;height:16px}
.prof-h{gap:10px}
.prof-top{display:flex;gap:16px;align-items:center}
.prof-h .hello-t{overflow-wrap:anywhere}
.prof-tags{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.streak-tag{display:inline-flex;align-items:center;gap:4px}
.streak-tag svg{color:#FF9A3D}
.pill-btn.acct{position:relative;overflow:visible}
.ab-notes{position:absolute;top:-10px;right:-8px;display:flex;flex-direction:row-reverse;pointer-events:none}
.ab-notes i{width:19px;height:19px;border-radius:50%;display:grid;place-items:center;margin-left:-7px;font:800 11px/1 var(--body);font-style:normal;color:#fff;box-shadow:0 0 0 2px #0A1030,inset 0 1px 0 rgba(255,255,255,.5);animation:ndPop .5s cubic-bezier(.3,1.6,.5,1) both}
.ab-notes i:first-child{margin-left:0}
.ab-notes i svg{width:11px;height:11px}
.nd-todo{background:linear-gradient(170deg,#FF7A86,#E5243B)}
.nd-res{background:linear-gradient(165deg,#86AEFF,#2F64F0)}
.nd-badge{background:var(--g-gold);color:#3A2600!important}
.nd-verify{background:linear-gradient(170deg,#FFC163,#F08A1C);color:#3A1C00!important}
@keyframes ndPop{from{transform:scale(0)}to{transform:none}}
@media (prefers-reduced-motion:reduce){.ab-notes i{animation:none}}
.notif-list{padding:4px 14px;display:flex;flex-direction:column}
.notif{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.notif:last-child{border-bottom:0}
.nf-ic{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.55),inset 0 -4px 10px rgba(0,0,0,.18)}
.nf-ic svg{width:18px;height:18px}
.nf-t b{display:block;font-size:14.5px;line-height:1.3}
.nf-t small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.badge[data-new]{position:relative}
.badge[data-new]::after{content:attr(data-new);position:absolute;top:8px;right:8px;font:800 10px/1 var(--body);text-transform:uppercase;letter-spacing:.06em;padding:4px 7px;border-radius:999px;background:var(--g-gold);color:#3A2600}
.sec-lead{margin-top:4px}
.cotev .nomgrid{margin-top:2px}
.cv-c{position:relative}
.cv-rk{position:absolute;top:6px;left:6px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font:800 13px var(--body);background:rgba(10,16,48,.72);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.35);z-index:2}
.cv-faces{display:flex;align-items:center;padding-left:10px;margin:4px 0 2px}
.cv-faces .pimg{width:52px;height:52px;border-radius:50%;object-fit:cover;object-position:50% 18%;margin-left:-10px;box-shadow:0 0 0 3px #1B2C78,0 6px 14px rgba(0,0,20,.4)}
.cv-more{margin-left:-10px;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font:800 15px var(--body);background:rgba(255,255,255,.14);color:#fff;box-shadow:0 0 0 3px #1B2C78;backdrop-filter:blur(6px)}
/* logo en longueur dans le bandeau */
.brand-long{display:block;height:46px;width:auto;flex:none;filter:drop-shadow(0 2px 10px rgba(74,134,255,.35))}
header.top:not(.sub) .brand img.brand-ic,header.top:not(.sub) .brand-txt{display:none}
header.top.sub .brand-long{display:none}
@media (max-width:359px){.brand-long{height:40px}}
@media (min-width:760px){header.top.sub .brand-long{display:block}header.top.sub .brand img.brand-ic{display:none}.brand-txt{display:none!important}}
@media (min-width:760px) and (max-width:979px){.brand-long{height:42px}}
/* filigrane de l'icône dans les grands blocs */
/* fond neutre avec profondeur : lueurs très douces + vignettage */
body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(60% 42% at 50% -6%,rgba(40,120,255,.16),transparent 70%),radial-gradient(50% 40% at -8% 35%,rgba(0,190,230,.08),transparent 70%),radial-gradient(50% 40% at 108% 70%,rgba(60,90,255,.10),transparent 70%),radial-gradient(130% 95% at 50% 40%,transparent 55%,rgba(0,0,12,.55) 100%)}
/* joker ×2 */
.joker-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.joker-btn{display:inline-flex;align-items:center;gap:9px;padding:7px 14px 7px 7px;border-radius:999px;border:1px solid rgba(244,191,79,.45);background:rgba(244,191,79,.08);color:#FFE3A3;font-weight:700;font-size:14px}
.joker-btn .jk-ic{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font:900 13px/1 var(--body);background:var(--g-gold);color:#3A2600;box-shadow:inset 0 1px 0 rgba(255,255,255,.6)}
.joker-btn.on{background:var(--g-gold);color:#3A2600;border-color:transparent;box-shadow:0 6px 18px rgba(226,162,26,.4)}
.joker-btn.on .jk-ic{background:#3A2600;color:#FFD97A}
.joker-btn:disabled{opacity:.45}
.joker-row .note{flex:1 1 180px;font-size:12.5px}
.jk-mini{display:inline-grid;place-items:center;min-width:26px;height:22px;padding:0 6px;border-radius:11px;font:900 11px/1 var(--body);background:var(--g-gold);color:#3A2600;margin-left:4px;align-self:center}
.jk-tag{font-style:normal;font-size:11px;font-weight:800;color:#FFD97A;margin-left:4px}
.rv-break .jk{color:#FFD97A}.rv-break .jk em{font:900 11px var(--body);font-style:normal}
.nom-h .tag.nom{background:rgba(255,77,94,.16);color:#FF8A95}
/* badges à paliers bronze / argent / or */
.badge.tier.t1 .medal{background:var(--gloss),var(--g-bronze);color:#3A1C08;--gl-sh:rgba(168,90,38,.4)}
.badge.tier.t2 .medal{background:var(--gloss),var(--g-silver);color:#2A3346;--gl-sh:rgba(154,166,188,.4)}
.badge.tier.t3 .medal{background:var(--gloss),var(--g-gold);color:#3A2600;--gl-sh:rgba(226,162,26,.45)}
.badge.tier.t4 .medal{background:var(--gloss),linear-gradient(165deg,#F2FBFF 0%,#9FE3FF 40%,#5AA9FF 75%,#B98CFF 100%);color:#10224F;--gl-sh:rgba(120,190,255,.55)}
.tier-l{display:block;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-top:2px}
.tier-l.t1{color:#E6A774}.tier-l.t2{color:#D3DCEC}.tier-l.t3{color:#F7CC5A}
.tier-l.t4{color:#9FE3FF}
.tier-bar{display:block;height:4px;border-radius:3px;background:rgba(255,255,255,.08);overflow:hidden;margin-top:6px;width:100%}
.tier-bar i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,#4A86FF,#86AEFF)}
.q-sec{font:900 22px/1 var(--body)}
/* « Comment ça marche » : cases en verre 3D */
.onb-art{position:relative;overflow:hidden;isolation:isolate;background:var(--gloss),radial-gradient(90% 60% at 50% 115%,rgba(5,20,80,.45),transparent 70%),linear-gradient(160deg,#4A86FF 0%,#2A6BFF 40%,#13248F 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.55),inset 0 -10px 26px rgba(0,10,60,.35),0 12px 30px rgba(42,107,255,.32);border:1px solid rgba(170,198,255,.35)}
.onb-art::after{content:"";position:absolute;top:-30px;right:-36px;width:120px;height:158px;z-index:-1;background:url("icon-wm.png") no-repeat center/contain;opacity:.14}
.onb-ic{width:72px;height:72px;border-radius:20px;display:grid;place-items:center;color:#fff;background:var(--gloss),linear-gradient(165deg,#86AEFF 0%,#4A86FF 45%,#1F4FE0 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 -5px 12px rgba(0,10,60,.3),0 8px 18px rgba(0,10,60,.35)}
.onb-ic svg{width:38px;height:38px;filter:drop-shadow(0 1px 1px rgba(0,0,0,.25))}
.onb-ic.gold{background:var(--gloss),var(--g-gold);color:#3A2600}
.onb-pill{background:var(--gloss),linear-gradient(180deg,#fff,#DCE7FF);box-shadow:inset 0 1px 0 #fff,0 6px 14px rgba(0,10,60,.3)}
.onb-p .av{box-shadow:0 0 0 3px rgba(255,255,255,.9),0 8px 18px rgba(0,10,60,.4)}
.onb-p.nom .av{box-shadow:0 0 0 3px #FF5A6A,0 8px 18px rgba(0,10,60,.4)}
.onb-p b{background:var(--g-gold);color:#3A2600;box-shadow:0 3px 8px rgba(0,10,60,.35)}
.onb-p.r2 b{background:var(--g-silver);color:#2A3346}.onb-p.r3 b{background:var(--g-bronze);color:#3A1C08}
.onb-p.r1 .av{box-shadow:0 0 0 3px #FFD45C,0 8px 18px rgba(0,10,60,.4)}.onb-p.r2 .av{box-shadow:0 0 0 3px #E3E8F2,0 8px 18px rgba(0,10,60,.4)}.onb-p.r3 .av{box-shadow:0 0 0 3px #E8A06A,0 8px 18px rgba(0,10,60,.4)}
/* accueil visiteur : les 2 boutons côte à côte, aussi sur mobile */
.hello .cta-bar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;max-width:440px}
.hello .cta-bar .btn{width:100%;min-width:0;padding-left:8px;padding-right:8px;font-size:clamp(12.5px,3.5vw,15px);line-height:1.15;white-space:nowrap;text-align:center;justify-content:center}
/* onglets de Jouer : plus de place pour « Classement » */
.playtabs{grid-template-columns:minmax(0,1.32fr) minmax(0,1fr) minmax(0,1fr)}
.pt{padding:0 8px}
@media (max-width:420px){.pt{gap:5px;font-size:13px}.pt-n{width:22px;height:22px;font-size:11.5px}}
@media (max-width:360px){.pt{gap:4px;font-size:12px;padding:0 5px}.pt-n{width:19px;height:19px;font-size:10.5px;border-width:1.5px}}
/* notifications : animation en boucle (onde + petit rebond) */
.ab-notes i{position:relative;animation:ndPop .5s cubic-bezier(.3,1.6,.5,1) both,ndBounce 2.6s 1s ease-in-out infinite}
.ab-notes i:nth-child(2){animation-delay:0s,1.15s}.ab-notes i:nth-child(3){animation-delay:0s,1.3s}.ab-notes i:nth-child(4){animation-delay:0s,1.45s}
.ab-notes i::after{content:"";position:absolute;inset:0;border-radius:50%;pointer-events:none;animation:ndRing 2.6s 1s ease-out infinite}
.nd-todo{--ring:rgba(255,77,94,.75)}.nd-res{--ring:rgba(90,150,255,.75)}.nd-badge{--ring:rgba(255,212,92,.75)}.nd-verify{--ring:rgba(255,170,60,.75)}
#tabs .dot:not([hidden]){--ring:rgba(255,77,94,.8);animation:ndBounce 2.6s 1s ease-in-out infinite}
.pt-new{--ring:rgba(244,191,79,.85);animation:ndBounce 2.6s 1.15s ease-in-out infinite}
#tabs .dot:not([hidden])::after,.pt-new::after{content:"";position:absolute;inset:0;border-radius:50%;pointer-events:none;animation:ndRing 2.6s 1s ease-out infinite}
@keyframes ndRing{0%{box-shadow:0 0 0 0 var(--ring)}60%,100%{box-shadow:0 0 0 9px rgba(0,0,0,0)}}
@keyframes ndBounce{0%,78%,100%{transform:none}84%{transform:translateY(-3px) scale(1.12)}90%{transform:translateY(0) scale(.96)}95%{transform:scale(1.03)}}
@media (prefers-reduced-motion:reduce){.ab-notes i,.ab-notes i::after,#tabs .dot,#tabs .dot::after,.pt-new,.pt-new::after{animation:none!important}}
/* étiquette « Le + rapide » bien visible */
.modes .mode.rec .tag{background:var(--g-gold);color:#3A2600;border:0;font-weight:900;letter-spacing:.04em;white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,.65),0 4px 12px rgba(226,162,26,.4)}
/* pas de 2e cadre (anneau de focus) au toucher, seulement au clavier */
html:not(.kbd) .pcard:focus-visible,html:not(.kbd) .pcard:focus{outline:none}
/* numéros 1 / 2 / 3 en or, argent, bronze */
.pcard .ord.m1{background:var(--g-gold);color:#3A2600}
.pcard .ord.m2{background:var(--g-silver);color:#2A3346}
.pcard .ord.m3{background:var(--g-bronze);color:#3A1C08}
/* top 3 du classement perso : cadre or/argent/bronze, numéro normal en blanc */
.rank-list:not(.lb) .rrow.m1 .pos,.rank-list:not(.lb) .rrow.m2 .pos,.rank-list:not(.lb) .rrow.m3 .pos{background:none!important;color:#fff!important;box-shadow:none}
/* pronos : 3 catégories dépliables */
details.pcat{padding:0;overflow:hidden}
details.pcat>summary{list-style:none;display:grid;grid-template-columns:46px minmax(0,1fr) auto 18px;gap:12px;align-items:center;padding:14px 14px 14px 16px;cursor:pointer;border-radius:var(--r)}
details.pcat>summary::-webkit-details-marker{display:none}
.pcat-ic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;color:#fff;background:var(--gloss),linear-gradient(165deg,#86AEFF 0%,#4A86FF 45%,#1F4FE0 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.55),inset 0 -4px 10px rgba(0,10,60,.25),0 6px 16px rgba(0,10,60,.35)}
.pcat-ic svg{width:23px;height:23px;filter:drop-shadow(0 1px 1px rgba(0,0,0,.2))}
.pcat-ic.saison{background:var(--g-gold);color:#3A2600}
.pcat-ic.prime{background:var(--gloss),radial-gradient(90% 55% at 50% 112%,rgba(90,0,20,.38),rgba(0,0,0,0) 70%),linear-gradient(165deg,#FF8E7A 0%,#F2433A 45%,#B5173A 100%)}
.pcat-t{min-width:0}
.pcat-t b{display:block;font-family:var(--brandfont);font-weight:400;font-size:18px;line-height:1.15}
.pcat-t small{display:block;color:var(--muted);font-size:12.5px;margin-top:3px;line-height:1.35}
.pcat-chev{display:grid;place-items:center;color:var(--muted)}
.pcat-chev svg{width:18px;height:18px;transform:rotate(90deg);transition:transform .2s ease}
details.pcat[open] .pcat-chev svg{transform:rotate(-90deg)}
.pcat-b{display:flex;flex-direction:column;gap:10px;padding:2px 10px 12px}
.pcat-b>.note{padding:0 6px}
.pcat-b details.qd{background:rgba(255,255,255,.035);box-shadow:none}
.pts-note{text-align:center;margin-top:6px}
/* la Côte en direct ne fait pas bouger la page */
#cbList{overflow-anchor:none;contain:layout}
/* Côte : rangs plus discrets */
.cb-rk{font-size:34cqi;left:-10cqi;top:-9cqi}
.cb-rk.dd{font-size:27cqi;left:-11cqi;top:-7cqi}
/* barres de score : petite lueur quand elles montent ou descendent */
.cs-list .bar i{position:relative;overflow:hidden}
.cs-list .bar i.bar-up{animation:barUp 1s ease-out}
.cs-list .bar i.bar-dn{animation:barDn 1s ease-out}
.cs-list .bar i.bar-up::after,.cs-list .bar i.bar-dn::after{content:"";position:absolute;top:0;bottom:0;left:-40%;width:40%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.85),transparent);animation:barShine .9s ease-out forwards}
@keyframes barUp{0%{box-shadow:0 0 0 rgba(120,220,255,0);filter:brightness(1)}30%{box-shadow:0 0 12px 2px rgba(120,220,255,.85);filter:brightness(1.35)}100%{box-shadow:0 0 0 rgba(120,220,255,0);filter:brightness(1)}}
@keyframes barDn{0%{box-shadow:0 0 0 rgba(255,110,130,0)}30%{box-shadow:0 0 10px 2px rgba(255,110,130,.75)}100%{box-shadow:0 0 0 rgba(255,110,130,0)}}
@keyframes barShine{to{left:110%}}
/* stats : top 3 or / argent / bronze (cadre + barre) */
.cs-row.m1 .bar i{background:linear-gradient(90deg,#FFE58A,#E2A21A)}
.cs-row.m2 .bar i{background:linear-gradient(90deg,#FFFFFF,#9AA6BC)}
.cs-row.m3 .bar i{background:linear-gradient(90deg,#FFD0A6,#A85A26)}
/* page Estimation : avertissement */
.est-warn{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;align-items:start;padding:14px 16px;border:1px solid rgba(255,193,99,.35)!important;background:linear-gradient(180deg,rgba(255,193,99,.08),rgba(255,193,99,.03))!important}
.ew-ic{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font:900 16px/1 var(--body);color:#3A2600;background:var(--g-gold)}
.est-warn p{margin:0;font-size:13.5px;line-height:1.5;color:var(--fg)}
.est-warn b{display:block;margin-bottom:2px;color:#FFD27A}
.est-warn a{color:#FFD27A;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.av-edit{position:relative;flex:none;padding:0;border:0;background:none;border-radius:50%;cursor:pointer;color:inherit}
.av-edit .av.xl{box-shadow:0 0 0 3px rgba(255,255,255,.85),0 10px 24px rgba(0,10,60,.45)}
.av-edit .av-cam{position:absolute;right:-2px;bottom:-2px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,#5B8CFF,#2747D8);color:#fff;box-shadow:0 0 0 3px var(--bg,#0A1240),0 4px 10px rgba(0,10,60,.5);transition:transform .15s}
.av-edit .av-cam svg{width:16px;height:16px}
.av-edit:hover .av-cam,.av-edit:focus-visible .av-cam{transform:scale(1.08)}
.av-edit:focus-visible{outline:2px solid #fff;outline-offset:4px}
.badges.collapsed .badge:nth-child(n+5){display:none}
.badges-more{margin-top:12px}
.prof-top .prof-tags{margin-top:4px;justify-content:flex-start}
.prof-top .prof-tags:empty{display:none}
.chip[data-pnom][aria-pressed="true"]{border-color:#FF5A6A;background:rgba(255,90,106,.2);box-shadow:0 0 0 1px rgba(255,90,106,.35),0 0 18px rgba(255,90,106,.25)}
.pcat-t .new-res,.qs .new-res{align-self:flex-start;margin-top:6px}
.pcat-t{display:flex;flex-direction:column}
#tabs .dot.res,#tabs .dot.res:not([hidden]){background:linear-gradient(165deg,#FFE27A,#F5B21E);--ring:rgba(255,201,60,.85)}
.btn.res-btn{background:linear-gradient(180deg,#FFE58A 0%,#FFC83D 55%,#F0A91A 100%);color:#2A1A00;text-shadow:none;border:1px solid rgba(255,236,170,.9);box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 8px 22px rgba(245,178,30,.35)}
.btn.res-btn:hover{filter:brightness(1.05)}
.boot-load{display:flex;flex-direction:column;align-items:center;gap:14px;padding:80px 0;color:var(--muted);font-weight:600}
.boot-spin{width:34px;height:34px;border-radius:50%;border:3px solid rgba(255,255,255,.15);border-top-color:#86AEFF;animation:mptRot .8s linear infinite}
@keyframes mptRot{to{transform:rotate(360deg)}}
.boot-err{margin-top:40px}
.proto.beta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.beta-l{margin-left:auto;color:#FFD97A;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.plist{display:flex;flex-direction:column;gap:10px}
.prow{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.prow-h{display:flex;gap:10px;align-items:center;min-width:0}
.prow-t{display:flex;flex-direction:column;min-width:0}.prow-t small{color:var(--muted);font-size:12.5px;overflow-wrap:anywhere}
.prow-a{display:flex;flex-wrap:wrap;gap:6px}
.adm-prime>summary{color:#FFD97A}
body.gated #tabs,body.gated #backBtn{display:none!important}
.gate{min-height:62vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px;padding:40px 8px}
.gate-logo{width:120px;height:auto;filter:drop-shadow(0 10px 30px rgba(74,134,255,.45))}
.gate-t{font-family:var(--brandfont,var(--display));font-weight:400;font-size:clamp(30px,8vw,44px);line-height:1.05;margin:6px 0 0}
.gate-s{color:var(--muted);max-width:34ch;margin:0;line-height:1.5}
.gate-f{display:flex;gap:8px;width:100%;max-width:360px;margin-top:6px}.gate-f .inp{flex:1;min-width:0;text-transform:uppercase;letter-spacing:.08em;text-align:center}
.gate-adm{margin-top:18px;font-size:13px;opacity:.75}
.site-opts{display:flex;flex-direction:column;gap:8px}
.site-opt{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.03);cursor:pointer}
.site-opt:has(input:checked){border-color:#4A86FF;background:rgba(74,134,255,.12)}
.site-opt input{margin-top:3px;accent-color:#4A86FF;width:18px;height:18px;flex:none}
.site-opt span{display:flex;flex-direction:column;gap:2px}.site-opt small{color:var(--muted);font-size:12.5px;line-height:1.4}
@media (max-width:759px){
  html{overscroll-behavior-y:none}
  nav.tabs#tabs{position:fixed!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;z-index:45!important;
    transform:translate3d(0,0,0);-webkit-transform:translate3d(0,0,0);will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}
}
.nomc{transition:transform .12s ease}
.nomc.pressing{transform:scale(.96)}
.nomc.just{animation:voteIn .55s cubic-bezier(.2,.8,.2,1)}
@keyframes voteIn{0%{transform:scale(.92)}45%{transform:scale(1.06)}100%{transform:scale(1)}}
.poll-ok{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#3DD598;color:#06210F;margin-right:6px;vertical-align:-4px}.poll-ok svg{width:12px;height:12px}
.mini-spin{display:inline-block;width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.25);border-top-color:#fff;margin-right:8px;vertical-align:-2px;animation:mptRot .7s linear infinite}
@keyframes mptRot{to{transform:rotate(360deg)}}
.nudge{position:fixed;left:12px;right:12px;bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:48;display:grid;grid-template-columns:44px minmax(0,1fr);gap:10px 12px;align-items:center;padding:14px;border-radius:18px;
  background:linear-gradient(180deg,rgba(40,72,170,.96),rgba(14,26,78,.97));border:1px solid rgba(170,198,255,.3);box-shadow:0 18px 40px rgba(2,6,24,.6);transform:translateY(24px);opacity:0;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .35s}
.nudge.in{transform:none;opacity:1}
.nudge-ic{width:44px;height:44px;border-radius:12px}
.nudge-t{display:flex;flex-direction:column;gap:2px;min-width:0}.nudge-t small{color:rgba(230,238,255,.85);font-size:13px;line-height:1.4}
.nudge-a{grid-column:1/-1;display:flex;gap:8px;align-items:center;justify-content:flex-end}
.nudge-x{width:40px;height:40px;border:0;border-radius:10px;background:rgba(255,255,255,.08);color:#fff;display:grid;place-items:center}.nudge-x svg{width:16px;height:16px}
@media (min-width:760px){.nudge{left:auto;right:24px;bottom:24px;width:380px}}
.cons{margin-top:12px;padding:12px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(170,198,255,.14)}
.cons-h{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;font-size:13.5px}
.cons-tag{font-size:12px;font-weight:800;padding:4px 10px;border-radius:999px;background:rgba(74,134,255,.18);color:#BFD3FF;white-space:nowrap}
.cons.bold .cons-tag{background:rgba(255,170,60,.18);color:#FFC97A}.cons.crowd .cons-tag{background:rgba(61,213,152,.16);color:#7FE7B9}
.cons-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.cons-list li{display:grid;grid-template-columns:28px minmax(60px,auto) minmax(0,1fr) 44px;gap:8px;align-items:center;font-size:13.5px}
.cons-list .av{width:28px;height:28px}
.cons-n{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cons-bar{height:8px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.cons-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4A86FF,#86AEFF)}
.cons.bold .cons-bar i{background:linear-gradient(90deg,#F5A623,#FFD97A)}.cons.crowd .cons-bar i{background:linear-gradient(90deg,#2FBF84,#7FE7B9)}
.cons-list b{text-align:right}
.cons-t{margin:8px 0 0;font-size:13px;color:var(--muted)}.cons-fav{margin:4px 0 0;font-size:13px;color:var(--muted)}.cons-fav b{color:var(--fg)}


/* résumé des encarts de pronos (fermés) */
.qd>summary.qsum{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}
.qd>summary.qsum .qs{display:flex;flex-direction:column;gap:6px;min-width:0}
.qd>summary.qsum .qs-t{font:700 16px/1.3 var(--body);letter-spacing:0;font-stretch:normal}
.qd>summary.qsum .q-meta{font-size:12.5px;gap:8px}
.qs-r{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.qs-pick{display:flex;align-items:center;gap:8px;min-width:0;margin-top:2px}
.qs-avs{display:flex;flex:none}
.qs-avs .av{width:26px;height:26px;border:2px solid var(--surface);font-size:10px}
.qs-avs .av+.av{margin-left:-8px}
.qs-names{font-size:13.5px;font-weight:600;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.qs-earn{flex:none;font-size:12.5px;font-weight:800;color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,transparent);padding:2px 8px;border-radius:999px}
.qs-earn.zero{color:var(--muted);background:var(--surface-2)}
.qs-cta{display:inline-flex;align-items:center;gap:4px;margin-top:2px;font-size:13.5px;font-weight:700;color:var(--cyan)}
.qs-cta svg{width:14px;height:14px}
.qs-hint{margin-top:2px;font-size:13px;color:var(--muted)}
.qd[open] .qs-pick,.qd[open] .qs-cta,.qd[open] .qs-hint{display:none}
.qd.todo{border-color:color-mix(in srgb,var(--brand) 40%,var(--line))}
/* classement du direct, style « classement d'un joueur » */
.lv-rank .rrow{grid-template-columns:30px 48px minmax(0,1fr) auto}
.lv-rank .rrow .lv-sc b{font:900 22px/1 var(--display)}
.lv-rank .rrow{padding:10px 14px 10px 12px}
.lv-rank .rrow .pos{background:none!important;box-shadow:none;color:var(--muted);font-size:22px}
.lv-rank .rrow .av{width:52px;height:52px;border-radius:50%}
.lv-rank .rrow.m1,.lv-rank .rrow.m2,.lv-rank .rrow.m3,.lv-rank .rrow.flop{border:1px solid transparent}
.lv-rank .rrow.m1{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,0) 50%) padding-box,linear-gradient(180deg,#8F7F45,#5E4E27) padding-box,linear-gradient(180deg,#E9CF7A,rgba(233,207,122,.25)) border-box}
.lv-rank .rrow.m2{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,0) 50%) padding-box,linear-gradient(180deg,#7C8398,#4E566D) padding-box,linear-gradient(180deg,#DDE3EE,rgba(221,227,238,.25)) border-box}
.lv-rank .rrow.m3{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,0) 50%) padding-box,linear-gradient(180deg,#8A6247,#5A3D2B) padding-box,linear-gradient(180deg,#E3A777,rgba(227,167,119,.25)) border-box}
.lv-rank .rrow.flop{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,0) 50%) padding-box,linear-gradient(180deg,#8A2A3A,#561826) padding-box,linear-gradient(180deg,#FF8A98,rgba(255,138,152,.25)) border-box}
.lv-rank .rrow.m1 .pos,.lv-rank .rrow.m2 .pos,.lv-rank .rrow.m3 .pos,.lv-rank .rrow.flop .pos{color:#fff}
.lv-rank .rrow.m1 .who small,.lv-rank .rrow.m2 .who small,.lv-rank .rrow.m3 .who small,.lv-rank .rrow.flop .who small{color:rgba(255,255,255,.75)}
.lv-rank .rrow.flop .lv-sc b{color:#FFC2CA}
.lv-theme{display:inline-block;align-self:flex-start;margin:2px 0;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#FFD97A;background:rgba(244,191,79,.12);padding:2px 8px;border-radius:999px}
.lv-done{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid var(--line)}
.lv-done>span{display:flex;flex-direction:column;line-height:1.15}
.lv-done small{font-size:11.5px;color:var(--muted)}
.lv-done b{font:900 22px/1.1 var(--display)}
.lv-my b{color:#FF8A98}
/* fiche académicien : notes du public et pronos */
.fl-stats{grid-template-columns:1fr 1fr}
.fl-live{padding:2px 7px;font-size:9.5px;margin-left:4px;box-shadow:none}
.fp-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.fp-list li{display:flex;flex-direction:column;gap:6px}
.fp-q{font-size:14px;font-weight:600}
.fp-v{display:grid;grid-template-columns:1fr 52px;gap:10px;align-items:center}
.fp-v b{text-align:right}

/* encart d'accueil du direct */
.lv-home{position:relative;overflow:hidden;isolation:isolate;display:flex;flex-direction:column;gap:12px;padding:20px 18px 18px;border-radius:26px;color:#fff;background:radial-gradient(90% 70% at 100% 0%,rgba(229,36,59,.45),transparent 65%),radial-gradient(120% 80% at 0% 0%,#3366FF 0%,rgba(51,102,255,.35) 40%,transparent 75%),linear-gradient(180deg,#0C1C58 0%,#060B22 100%);box-shadow:0 0 0 1px rgba(255,107,124,.35),0 22px 50px rgba(5,10,31,.4)}
.lvh-top{display:flex;align-items:center;gap:10px}
.lvh-kind{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.lvh-t{margin:0;font-family:var(--display);font-stretch:125%;font-weight:900;text-transform:uppercase;font-size:clamp(22px,6.4vw,30px);line-height:1.05}
.lvh-s{margin:0;font-size:15px;line-height:1.4;color:rgba(255,255,255,.88)}
.lvh-now{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)}
.lvh-now>span:not(.lv-faces){display:flex;flex-direction:column;min-width:0}
.lvh-now small{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#FFB3BD}
.lvh-now b{font-weight:800;font-size:16px}.lvh-now em{font-style:normal;font-size:13px;color:rgba(255,255,255,.75)}
.lvh-pod{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.lvh-p{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;border-radius:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);position:relative;min-width:0}
.lvh-p .av{width:42px;height:42px}
.lvh-p b{font-size:13px;font-weight:700;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lvh-p em{font-style:normal;font:900 18px/1 var(--display)}
.lvh-r{position:absolute;top:6px;left:8px;font:900 13px var(--display);color:rgba(255,255,255,.7)}
.lvh-p.m1{background:linear-gradient(180deg,#8F7F45,#5E4E27);border-color:#E9CF7A}
.lvh-p.m2{background:linear-gradient(180deg,#7C8398,#4E566D);border-color:#DDE3EE}
.lvh-p.m3{background:linear-gradient(180deg,#8A6247,#5A3D2B);border-color:#E3A777}
/* notes par élève (duos) */
.lv-mh{margin:-4px 0 0}
.lv-ah{display:flex;align-items:center;gap:8px;margin:6px 0 -2px;font-size:14px}
.lv-c label{display:flex;align-items:center;gap:8px}
.lv-c label .av{width:28px;height:28px}
.lv-done.multi{display:flex;flex-direction:column;gap:10px}
.lv-dm{display:flex;flex-direction:column;gap:8px}
.lv-dr{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;gap:10px;align-items:center}
.lv-dr .av{width:28px;height:28px}
.lv-done .lv-dr>b{font:700 15px/1.2 var(--body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-dr>span{display:flex;align-items:baseline;gap:4px}
.lv-dr .lv-my b,.lv-dr .lv-all b{font:900 18px var(--display)}
.lv-dfoot{display:flex;justify-content:space-between;align-items:center;gap:10px}
/* fiche : liste des académiciens */
.castx.cur .cast-ph .pimg{box-shadow:0 0 0 3px #fff,0 10px 24px rgba(74,134,255,.45)}
.castx.cur b{color:#fff;text-decoration:underline;text-underline-offset:3px}
/* réseaux sociaux */
.soc{display:flex;gap:10px;margin-bottom:14px}
.soc-a{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--surface);border:1px solid var(--line);color:var(--fg)}
.soc-a svg{width:19px;height:19px;fill:currentColor}
.soc-a:hover{border-color:var(--brand)}

/* photos des encarts : la couleur du cadre garde le sens (or, argent, bronze, nommé) */
.hue-y,.hue-r,.hue-v{--hc:rgba(255,255,255,.16)}
.hue-g{--hc:#F4BF4F}.hue-s{--hc:#DDE3EE}.hue-bz{--hc:#E3A777}.hue-nr{--hc:#FF5A6E}
img.phc{object-fit:cover;object-position:50% 22%;background:#1A2A8C}
img.pimg.phc{border-color:var(--hc,rgba(255,255,255,.16))!important}
.pcard[aria-pressed="true"] img.pimg.phc{border-color:var(--brand)!important}
.cb-ph:has(img.phc){background:#1A2A8C}
.cb-ph.hue-g:has(img.phc){border-color:#F4BF4F}.cb-ph.hue-s:has(img.phc){border-color:#DDE3EE}.cb-ph.hue-bz:has(img.phc){border-color:#E3A777}.cb-ph.hue-nr:has(img.phc){border-color:#FF5A6E}
.cb-ph img.phc{object-position:50% 22%}
.fiche-h img.portrait.phc{object-fit:cover;object-position:50% 20%}
/* ===== Mode direct (prime & évaluations) ===== */
.row2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
@media (max-width:380px){.row2{grid-template-columns:1fr}}
.inline-f{display:flex;gap:8px}.inline-f .inp{flex:1;min-width:0}
.chip.on{background:color-mix(in srgb,var(--brand) 18%,var(--surface));border-color:color-mix(in srgb,var(--brand) 55%,transparent)}
.chip-x{display:inline-grid;place-items:center;width:20px;height:20px;margin-left:2px;border:0;border-radius:50%;background:rgba(255,255,255,.1);color:var(--muted);padding:0}
.chip-x svg{width:11px;height:11px}
.tag.live{background:rgba(229,36,59,.16);color:#FF8A98}
.live .live-dot{background:#fff}
.lv-live{align-self:flex-start}
.lv-banner .lv-k{gap:10px;color:var(--muted)}
.tag.live .live-dot{width:6px;height:6px}
.lv-banner{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center;text-align:left;width:100%;padding:16px 18px;border:1px solid rgba(229,36,59,.35);background:radial-gradient(120% 140% at 0% 0%,rgba(229,36,59,.22),transparent 60%),var(--surface);color:var(--fg)}
.lv-banner.hot{box-shadow:0 0 0 1px rgba(229,36,59,.4),0 14px 34px rgba(229,36,59,.22)}
.lv-banner .lv-k,.lv-banner b,.lv-banner .note{grid-column:1}
.lv-banner b{font:800 17px/1.25 var(--display)}
.lv-go{grid-column:2;grid-row:1/4;color:var(--muted)}
.lv-k{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#FF8A98}
.lv-fab{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:40;display:flex;align-items:center;gap:10px;max-width:calc(100% - 32px);padding:8px 8px 8px 14px;border:0;border-radius:999px;background:#1A0E2A;color:#fff;font-size:13.5px;box-shadow:0 0 0 1px rgba(229,36,59,.55),0 14px 30px rgba(0,0,0,.45)}
.lv-fab>span:nth-child(2){white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-fab-c{flex:none;padding:7px 14px;border-radius:999px;background:#E5243B;font-weight:800}
@media (min-width:900px){.lv-fab{bottom:24px}}
.lv-hero{padding:22px 20px 20px;display:flex;flex-direction:column;gap:8px}
.lv-hero .lv-k{color:#FFB3BD}
.lv-sub{margin:0;color:rgba(255,255,255,.82);font-size:14px}
.lv-item{display:flex;flex-direction:column;gap:14px;padding:16px}
.lv-item.open{border:1px solid rgba(229,36,59,.4)}
.lv-top{display:flex;gap:12px;align-items:center}
.lv-faces{display:flex;flex:none}
.lv-faces .pimg{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.12)}
.lv-faces .pimg+.pimg{margin-left:-18px}
.lv-faces.sm .pimg{width:40px;height:40px;border-radius:50%}
.lv-faces.sm .pimg+.pimg{margin-left:-12px}
.lv-t{display:flex;flex-direction:column;gap:3px;min-width:0}
.lv-t b{font:800 17px/1.2 var(--display)}
.lv-t small{color:var(--muted);font-size:13px}
.lv-t .tag{align-self:flex-start}
.lv-rate{display:flex;flex-direction:column;gap:12px}
.lv-c{display:grid;grid-template-columns:minmax(80px,auto) 1fr 64px;gap:12px;align-items:center}
.lv-c label{font-weight:700;font-size:14px}
.lv-c output{text-align:right;font:900 24px/1 var(--display);color:var(--fg)}
.lv-c output small{font:700 12px var(--body);color:var(--muted);margin-left:2px}
.lv-c input[type=range]{width:100%;accent-color:#E5243B;height:28px}
.lv-c input[type=range]:not(.set){opacity:.55}
.lv-avg{margin:0;font-size:14px}.lv-avg b{font-size:18px}
.lv-wait{display:flex;flex-direction:column;gap:4px;padding:16px}
.lv-rank{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.lv-row{display:grid;grid-template-columns:34px 48px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 12px 8px 8px;border-radius:16px;background:var(--surface);border:1px solid var(--line)}
.lv-row .pimg{width:48px;height:48px;border-radius:12px;object-fit:cover}
.lv-pos{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--surface-2);font:900 14px var(--display)}
.lv-who{display:flex;flex-direction:column;min-width:0}.lv-who b{font-weight:800}
.lv-who small{color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-sc{display:flex;align-items:baseline;gap:2px;justify-content:flex-end;flex-wrap:wrap}
.lv-sc b{font:900 22px/1 var(--display)}.lv-sc small{color:var(--muted);font-size:12px}
.lv-sc em{flex-basis:100%;text-align:right;font-style:normal;font-size:12px;color:var(--cyan)}
.lv-row.m1{background:linear-gradient(100deg,rgba(244,191,79,.22),var(--surface) 60%);border-color:rgba(244,191,79,.55)}
.lv-row.m2{background:linear-gradient(100deg,rgba(200,212,232,.18),var(--surface) 60%);border-color:rgba(200,212,232,.45)}
.lv-row.m3{background:linear-gradient(100deg,rgba(205,127,50,.2),var(--surface) 60%);border-color:rgba(205,127,50,.5)}
.lv-row.m1 .lv-pos{background:var(--g-gold);color:#3A2600}.lv-row.m2 .lv-pos{background:var(--g-silver);color:#2A3346}.lv-row.m3 .lv-pos{background:var(--g-bronze);color:#3A1C08}
.lv-row.flop{background:linear-gradient(100deg,rgba(229,36,59,.2),var(--surface) 60%);border-color:rgba(229,36,59,.5)}
.lv-row.flop .lv-pos{background:#E5243B;color:#fff}.lv-row.flop .lv-sc b{color:#FF8A98}
.lv-flop-h{list-style:none;margin-top:10px;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#FF8A98;display:flex;align-items:center;gap:10px}
.lv-flop-h::after{content:"";flex:1;height:1px;background:rgba(229,36,59,.4)}
.lv-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.lv-list li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:8px 12px 8px 8px;border-radius:14px;background:var(--surface);border:1px solid var(--line)}
.lv-list.next li{opacity:.75}
.lv-more>summary{cursor:pointer;margin:8px 0;font-weight:700;color:var(--cyan);font-size:14px}
.lv-more[open]>summary{margin-bottom:8px}
.lv-arow{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.lv-arow.open{background:rgba(229,36,59,.08);border-radius:12px;padding:10px;border:1px solid rgba(229,36,59,.35)}
.lv-acts{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}
.lv-mini{display:flex;gap:4px}
.lv-addf{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:14px;background:rgba(255,255,255,.03);border:1px dashed var(--line)}
/* ===== Encarts de pronos (refonte 10/2026) ===== */
.qd.ed>summary .qs-t{font-size:16.5px}
.q-meta .pts{color:var(--fg);font-weight:700}
.q-early{font-size:11.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#FFD97A;background:rgba(244,191,79,.12);padding:2px 8px;border-radius:999px}
.qd .tag svg{width:12px;height:12px}
.qrule{margin:0;font-size:13px;line-height:1.45;color:var(--muted)}
.qrule b{color:var(--fg)}
.slots{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;border-radius:16px;background:rgba(255,255,255,.035);border:1px solid var(--line)}
.sl-h{flex:1 0 100%;font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.sl-h em{font-style:normal;font-weight:700;letter-spacing:0;text-transform:none;color:var(--cyan)}
.slot{display:inline-flex;align-items:center;gap:7px;height:38px;padding:3px 6px 3px 3px;border-radius:999px;font-size:13.5px;font-weight:700;color:var(--fg);text-align:left;min-width:0;max-width:100%}
.slot.on{background:color-mix(in srgb,var(--brand) 18%,var(--surface));border:1px solid color-mix(in srgb,var(--brand) 50%,transparent)}
.slot.on .av{width:30px;height:30px;flex:none}
.slot.out{opacity:.55;border-style:dashed}
.slot.empty{width:38px;justify-content:center;padding:0;border:1.5px dashed rgba(170,198,255,.3);color:var(--cyan)}
.slot.empty i{font-style:normal;font-weight:800;font-size:13px}
.sl-n{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sl-o{font-style:normal;display:inline-grid;place-items:center;width:20px;height:20px;margin-right:6px;border-radius:50%;background:var(--brand);color:#fff;font-size:11.5px}
.sl-v{font-size:12px;font-weight:800;color:#FFD97A;white-space:nowrap}
.sl-x{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.08);color:var(--muted);flex:none}
.sl-x svg{width:12px;height:12px}
.pgrid.g4{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 8px}
.pgrid.g4 .pname{font-size:12.5px}
.pcard.taken{opacity:.28;filter:grayscale(.6);cursor:not-allowed}
.pcard.dim .pimg{opacity:.45}
.cons{margin-top:0;padding:0;border-radius:12px}
.cons>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;margin:0}
.cons>summary::-webkit-details-marker{display:none}
.cons .cons-t{margin:0;flex:1 1 160px;font-size:12.5px}
.cons-more{font-size:12px;font-weight:700;color:var(--cyan);text-decoration:underline;text-underline-offset:2px}
.cons[open] .cons-more{display:none}
.cons .cons-list{padding:0 12px 10px}
.cons .cons-fav{padding:0 12px 10px}
.joker-row{margin-top:2px;padding-top:10px}


/* ===== Fonds (v9) : fond bleu des encarts, étoile en filigrane du site ===== */
body{position:relative;min-height:100vh}
body::after{content:"";position:absolute;left:0;right:0;top:0;height:min(100%,1500px);z-index:-1;pointer-events:none;background:url("img/fond-etoile.webp") 50% 0/cover no-repeat;opacity:.16;-webkit-mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.75) 35%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.75) 35%,transparent 100%)}
.stage{background:linear-gradient(180deg,rgba(5,10,31,0) 45%,rgba(5,10,31,.35) 100%),url("img/fond-encart.webp") 50% 0/cover no-repeat,#0C1C58}
.cboard{background:radial-gradient(70% 24% at 50% 22%,rgba(74,134,255,.22),transparent 75%),linear-gradient(180deg,rgba(5,10,31,0) 40%,rgba(5,10,31,.4) 100%),url("img/fond-encart.webp") 50% 0/cover no-repeat,#0C1C58}
.esth{background:radial-gradient(48% 34% at 50% 34%,rgba(90,213,234,.45),transparent 72%),linear-gradient(180deg,rgba(5,10,31,0) 55%,rgba(5,10,31,.55) 100%),url("img/fond-encart.webp") 50% 0/cover no-repeat,#0C1C58}
.lv-home{background:radial-gradient(90% 70% at 100% 0%,rgba(229,36,59,.38),transparent 65%),linear-gradient(180deg,rgba(5,10,31,0) 45%,rgba(5,10,31,.35) 100%),url("img/fond-encart.webp") 50% 0/cover no-repeat,#0C1C58}
/* images : pas de glisser-déposer ni de menu « Enregistrer l'image » */
img{-webkit-user-drag:none;user-drag:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}

/* ===== v10 : notifications, invitations, suivi, direct allégé ===== */
.sw-row{display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer}
.sw-t{display:flex;flex-direction:column;gap:2px;min-width:0}.sw-t small{color:var(--muted);font-size:13px}
input.sw{appearance:none;-webkit-appearance:none;flex:none;width:50px;height:30px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);position:relative;cursor:pointer;transition:background .2s;margin:0}
input.sw::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.35);transition:transform .2s}
input.sw:checked{background:linear-gradient(180deg,#5B8CFF,#2747D8);border-color:transparent}input.sw:checked::after{transform:translateX(20px)}
input.sw:disabled{opacity:.5}
.push-card{display:flex;flex-direction:column;gap:12px}
.push-t{display:flex;flex-direction:column;gap:8px;padding-top:10px;border-top:1px solid var(--line)}
.push-nudge{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px 12px;align-items:center;border:1px solid rgba(91,140,255,.45)}
.pn-ic{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(180deg,#5B8CFF,#2747D8);color:#fff}.pn-ic svg{width:21px;height:21px}
.pn-t{display:flex;flex-direction:column;gap:2px}.pn-t small{color:var(--muted);font-size:13px;line-height:1.4}
.pn-a{grid-column:1/-1;display:flex;align-items:center;gap:14px}
.inv-card{display:flex;flex-direction:column;gap:12px}.inv-card p{margin:0;color:var(--muted);font-size:14px}.inv-card p b{color:var(--fg)}
.inv-row{display:flex;align-items:center;gap:10px;background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:8px 8px 8px 14px}
.inv-url{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;font-size:14px}
.inv-row .btn svg{width:16px;height:16px;vertical-align:-3px;margin-right:4px}
.kpis6.kp3{grid-template-columns:repeat(3,minmax(0,1fr))}
.push-form{display:flex;flex-direction:column;gap:12px;margin:12px 0}
.push-form textarea{resize:vertical;min-height:72px;font:inherit}
.push-steps{margin:8px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:12px}
.vks{display:flex;flex-direction:column;gap:6px;margin-top:8px}
.vk{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:8px;align-items:center}
.vk-n{font-weight:700;font-size:12px;letter-spacing:.04em}.vk-v{font-size:12px;background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:6px 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;user-select:all}
@media (max-width:520px){.vk{grid-template-columns:minmax(0,1fr) auto}.vk-n{grid-column:1/-1}}
.suivi-chart{width:100%;height:auto;display:block}.suivi-chart text{font-size:8px;fill:var(--muted)}
.suivi-chart .b-a,.suivi-lg .b-a{fill:#5B8CFF;background:#5B8CFF}.suivi-chart .b-s,.suivi-lg .b-s{fill:#F4BF4F;background:#F4BF4F}
.suivi-lg{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.suivi-lg i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-left:6px}
.tbl-wrap{overflow-x:auto;margin:10px 0}
.suivi-t{width:100%;border-collapse:collapse;font-size:13px}.suivi-t th,.suivi-t td{padding:7px 8px;text-align:right;border-bottom:1px solid var(--line);white-space:nowrap}
.suivi-t th:first-child,.suivi-t td:first-child{text-align:left}.suivi-t th{color:var(--muted);font-weight:600;font-size:12px}
.lv-rank .rrow.lv-x{cursor:pointer;grid-template-rows:auto auto}
.lv-xb{background:none;border:0;padding:0 0 0 2px;font:inherit;color:inherit;text-decoration:underline;text-underline-offset:2px;cursor:pointer;display:inline-flex;align-items:center;gap:2px}
.lv-xb svg{width:12px;height:12px;transform:rotate(90deg);transition:transform .2s}.lv-x.open .lv-xb svg{transform:rotate(-90deg)}
.lv-det{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.lv-det>span{display:inline-flex;align-items:baseline;gap:6px;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.12);font-size:13px}
.lv-det>span small{color:rgba(255,255,255,.8);font-size:12px}
/* curseur de note : visible au clavier */
input[type=range]:focus-visible{outline:3px solid #8FB3FF;outline-offset:4px;border-radius:8px}
/* iPhone : installer l'appli pour les notifications */
.onb-s{margin:0;color:var(--muted);font-size:14px;line-height:1.45}
.inst-next{margin:0;padding:10px 12px;border-radius:12px;font-size:13px;text-align:left;line-height:1.45;background:rgba(244,191,79,.12);border:1px solid rgba(244,191,79,.45)}
.ios-push{margin:0;padding:10px 12px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line);font-size:13px;line-height:1.45}
.inst-old{margin:0;text-align:left;font-size:13px}
.seg.q-cat{grid-template-columns:repeat(3,minmax(0,1fr))}

/* ===== Couleurs des rubriques (mêmes que les stories Instagram) ===== */
:root{
  --c-jouer:#FFC24A;--c-res:#FF6B9A;--c-cote:#74DE6A;--c-estim:#AE8CFF;--c-new:#6FC8FF;--c-pub:#FF8D66;--c-net:#8FB3FF;
  --g-jouer:linear-gradient(160deg,#F9BE3B 0%,#E58A10 55%,#B85C05 100%);
  --g-res:linear-gradient(160deg,#FF6B9A 0%,#E0336E 55%,#A8104F 100%);
  --g-cote:linear-gradient(160deg,#77D862 0%,#35AE4B 55%,#17803A 100%);
  --g-estim:linear-gradient(160deg,#A77AFF 0%,#7036F2 55%,#4419C2 100%);
  --g-new:linear-gradient(160deg,#62CBFF 0%,#2F92EC 55%,#1E58CF 100%);
  --g-pub:linear-gradient(160deg,#FF8C5E 0%,#F25A3C 55%,#C2301F 100%);
  --g-net:linear-gradient(160deg,#6E98FF 0%,#3F6AF0 55%,#2140B8 100%);
}
.k-jouer{--tc:var(--c-jouer);--tg:var(--g-jouer)}.k-res{--tc:var(--c-res);--tg:var(--g-res)}.k-cote{--tc:var(--c-cote);--tg:var(--g-cote)}
.k-estim{--tc:var(--c-estim);--tg:var(--g-estim)}.k-new{--tc:var(--c-new);--tg:var(--g-new)}.k-pub{--tc:var(--c-pub);--tg:var(--g-pub)}.k-net{--tc:var(--c-net);--tg:var(--g-net)}
/* barre de navigation : chaque onglet prend la couleur de sa rubrique quand il est ouvert */
nav.tabs [data-go="home"]{--tc:var(--c-net)}nav.tabs [data-go="jouer"]{--tc:var(--c-jouer)}nav.tabs [data-go="cote"]{--tc:var(--c-cote)}nav.tabs [data-go="nommes"]{--tc:var(--c-estim)}nav.tabs [data-go="joueurs"]{--tc:var(--c-res)}
nav.tabs button{border:1px solid transparent}
nav.tabs button[aria-current="page"]{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.02)) padding-box,linear-gradient(color-mix(in srgb,var(--tc) 20%,rgba(16,26,72,.7)),color-mix(in srgb,var(--tc) 20%,rgba(16,26,72,.7))) padding-box,linear-gradient(180deg,color-mix(in srgb,var(--tc) 65%,transparent),color-mix(in srgb,var(--tc) 8%,transparent)) border-box}
nav.tabs button[aria-current="page"] svg{color:var(--tc);filter:drop-shadow(0 0 6px color-mix(in srgb,var(--tc) 65%,transparent))}
nav.tabs button[aria-current="page"]::after{background:var(--tc);box-shadow:0 0 10px 2px color-mix(in srgb,var(--tc) 65%,transparent)}
/* titres de page : pastille ronde comme les stories à la une */
.h-page.sec-ic{display:flex;align-items:center;gap:12px}
.h-page.sec-ic::before{content:"";flex:none;width:42px;height:42px;border-radius:50%;background:var(--ic) center/54% no-repeat,var(--gloss),var(--tg);box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 0 0 3px rgba(255,255,255,.08),0 6px 18px color-mix(in srgb,var(--tc) 38%,transparent)}
.h-page.k-jouer{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%272.2%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cline%20x1%3D%276%27%20x2%3D%2710%27%20y1%3D%2711%27%20y2%3D%2711%27%2F%3E%3Cline%20x1%3D%278%27%20x2%3D%278%27%20y1%3D%279%27%20y2%3D%2713%27%2F%3E%3Cline%20x1%3D%2715%27%20x2%3D%2715.01%27%20y1%3D%2712%27%20y2%3D%2712%27%2F%3E%3Cline%20x1%3D%2718%27%20x2%3D%2718.01%27%20y1%3D%2710%27%20y2%3D%2710%27%2F%3E%3Cpath%20d%3D%27M17.32%205H6.68a4%204%200%200%200-3.978%203.59c-.006.052-.01.101-.017.152C2.604%209.416%202%2014.456%202%2016a3%203%200%200%200%203%203c1%200%201.5-.5%202-1l1.414-1.414A2%202%200%200%201%209.828%2016h4.344a2%202%200%200%201%201.414.586L17%2018c.5.5%201%201%202%201a3%203%200%200%200%203-3c0-1.545-.604-6.584-.685-7.258-.007-.05-.011-.1-.017-.151A4%204%200%200%200%2017.32%205z%27%2F%3E%3C%2Fsvg%3E")}.h-page.k-cote{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%272.2%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M2.5%2021.5h19%27%2F%3E%3Cpath%20d%3D%27M4%2021.5v-5h5v5%27%2F%3E%3Cpath%20d%3D%27M9%2021.5V12.3h6v9.2%27%2F%3E%3Cpath%20d%3D%27M15%2021.5v-3.5h5v3.5%27%2F%3E%3Cpath%20d%3D%27m12%202.2%201.1%202.3%202.5.3-1.8%201.7.5%202.5-2.3-1.2-2.3%201.2.5-2.5-1.8-1.7%202.5-.3z%27%2F%3E%3C%2Fsvg%3E")}.h-page.k-estim{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%272.2%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cline%20x1%3D%2719%27%20x2%3D%275%27%20y1%3D%275%27%20y2%3D%2719%27%2F%3E%3Ccircle%20cx%3D%276.5%27%20cy%3D%276.5%27%20r%3D%272.5%27%2F%3E%3Ccircle%20cx%3D%2717.5%27%20cy%3D%2717.5%27%20r%3D%272.5%27%2F%3E%3C%2Fsvg%3E")}.h-page.k-res{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%272.2%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M6%209H4.5a2.5%202.5%200%200%201%200-5H6%27%2F%3E%3Cpath%20d%3D%27M18%209h1.5a2.5%202.5%200%200%200%200-5H18%27%2F%3E%3Cpath%20d%3D%27M4%2022h16%27%2F%3E%3Cpath%20d%3D%27M10%2014.66V17c0%20.55-.47.98-.97%201.21C7.85%2018.75%207%2020.24%207%2022%27%2F%3E%3Cpath%20d%3D%27M14%2014.66V17c0%20.55.47.98.97%201.21C16.15%2018.75%2017%2020.24%2017%2022%27%2F%3E%3Cpath%20d%3D%27M18%202H6v7a6%206%200%200%200%2012%200V2Z%27%2F%3E%3C%2Fsvg%3E")}.h-page.k-net{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%272.2%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2718%27%20cy%3D%275%27%20r%3D%273%27%2F%3E%3Ccircle%20cx%3D%276%27%20cy%3D%2712%27%20r%3D%273%27%2F%3E%3Ccircle%20cx%3D%2718%27%20cy%3D%2719%27%20r%3D%273%27%2F%3E%3Cline%20x1%3D%278.59%27%20x2%3D%2715.42%27%20y1%3D%2713.51%27%20y2%3D%2717.49%27%2F%3E%3Cline%20x1%3D%2715.41%27%20x2%3D%278.59%27%20y1%3D%276.51%27%20y2%3D%2710.49%27%2F%3E%3C%2Fsvg%3E")}
@media (max-width:520px){.h-page.sec-ic::before{width:36px;height:36px}}
/* étapes de la semaine : Classement = Côte, Pronos = Jouer, Sondage = Public */
[data-step="classement"]{--tc:var(--c-cote);--tg:var(--g-cote)}[data-step="pronos"]{--tc:var(--c-jouer);--tg:var(--g-jouer)}[data-step="sondage"]{--tc:var(--c-estim);--tg:var(--g-estim)}
.playtabs .pt[aria-selected="true"]{background:var(--gloss),var(--tg);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),inset 0 -2px 6px rgba(0,0,0,.18),0 8px 22px color-mix(in srgb,var(--tc) 32%,transparent)}
.playtabs .pt:not(.done) .pt-n{background:var(--gloss),var(--tg);--gl-sh:color-mix(in srgb,var(--tc) 35%,transparent)}
.playtabs .pt[aria-selected="true"]:not(.done) .pt-n{box-shadow:0 0 0 2px rgba(255,255,255,.85)}
.srow:not(.done) .step-ic{background:var(--gloss),var(--tg);--gl-sh:color-mix(in srgb,var(--tc) 35%,transparent)}
.srow.next{background:color-mix(in srgb,var(--tc) 10%,transparent)}
/* petites pastilles des rubriques */
.cb-more-ic{background:var(--gloss),var(--g-cote);--gl-sh:rgba(53,174,75,.35)}
.est-ic{background:var(--gloss),var(--g-estim);--gl-sh:rgba(112,54,242,.35)}
.pn-ic{background:var(--gloss),var(--g-new);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 6px 16px rgba(47,146,236,.35)}
.push-nudge{border-color:rgba(98,203,255,.45)}
input.sw:checked{background:var(--g-new)}
[data-invite]{background:var(--gloss),var(--g-net)}
.nf-ic.nd-res{background:var(--gloss),var(--g-res);color:#fff}
/* v11 : classement par pages, « Ta place », espace sous la pastille du direct */
.my-place{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:4px 12px;width:100%;margin:0 0 12px;padding:12px 14px;text-align:left;color:var(--fg);font:inherit;cursor:pointer;border-color:color-mix(in srgb,var(--c-res) 45%,var(--line))}
.my-place .mp-l{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--c-res)}
.my-place b{font-family:var(--display);font-size:24px;font-weight:900;line-height:1}
.my-place sup{font-size:.55em}
.my-place .note{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rr-gap{display:flex;justify-content:center;gap:6px;padding:2px 0}
.rr-gap span{width:5px;height:5px;border-radius:50%;background:var(--muted);opacity:.6}
.lb-more{margin-top:12px}
.lb-more .note{font-weight:500}
@media (prefers-reduced-motion:no-preference){.rrow.flash{animation:rflash 1.6s ease}@keyframes rflash{0%,45%{box-shadow:0 0 0 3px var(--c-res)}100%{box-shadow:0 0 0 0 transparent}}}
main:has(> .lv-fab){padding-bottom:calc(24px + 64px)}
.src-c{margin:14px 0}
.src-t td:first-child{position:relative;min-width:150px}
.src-n{position:relative;z-index:1}
.src-bar{position:absolute;left:6px;top:50%;height:22px;transform:translateY(-50%);width:calc(var(--w) * .9);border-radius:6px;background:color-mix(in srgb,var(--c-net) 22%,transparent)}
.src-c .note b{white-space:nowrap}
/* v12 : fenêtre de partage (image, PNG, liens) */
.sh-acts{gap:10px;margin-top:6px}
.sh-main{display:flex;align-items:center;justify-content:center;gap:12px;min-height:58px;text-align:left}
.sh-main span{display:flex;flex-direction:column;line-height:1.2}
.sh-main small{font-size:12px;font-weight:600;opacity:.8}
.sh-lab{margin:8px 0 0;text-align:center;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.sh-net{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.sh-net button{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;border-radius:14px;border:1px solid var(--line);background:var(--surface);color:var(--fg);font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.sh-net button svg{width:24px;height:24px}
.sh-net button:hover{border-color:var(--c-net)}
.sh-net button:focus-visible{outline:2px solid var(--c-net);outline-offset:2px}
.sh-tip{display:flex;align-items:center;gap:8px;margin:2px 0 0;text-align:left}
.sh-tip svg{flex:none;width:20px;height:20px;color:var(--fg)}
/* v14 : badge sur la photo (classement), choix du badge, duels */
.avw{position:relative;display:inline-block;line-height:0;flex:none}
.av-bdg{position:absolute;top:-4px;right:-6px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;color:#fff;background:hsl(var(--h) 72% 46%);box-shadow:0 0 0 2px var(--bg,#0C1C58),0 2px 6px rgba(0,0,0,.35)}
.av-bdg svg{width:13px;height:13px}
.av-bdg.t1{background:var(--g-bronze);color:#3A1C08}.av-bdg.t2{background:var(--g-silver);color:#2A3346}.av-bdg.t3{background:var(--g-gold);color:#3A2600}
.av-bdg.t4{background:linear-gradient(165deg,#F2FBFF 0%,#9FE3FF 40%,#5AA9FF 75%,#B98CFF 100%);color:#10224F}
.rrow .avw .av-bdg{top:-5px;right:-7px;width:26px;height:26px}.rrow .avw .av-bdg svg{width:15px;height:15px}
.show-pick{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}
.sp-h{display:flex;align-items:center;gap:14px}.sp-h b{display:block}.sp-h small{display:block;color:var(--muted);font-size:12.5px;line-height:1.35}
.sp-prev .av{width:48px;height:48px}
.sp-list{display:flex;flex-wrap:wrap;gap:8px}
.sp-o{display:inline-flex;align-items:center;gap:8px;padding:7px 12px 7px 8px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--fg);font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.sp-o .av-bdg{position:static;box-shadow:none;width:24px;height:24px}
.sp-o small{color:var(--muted);font-weight:600}
.sp-o[aria-checked="true"]{border-color:var(--c-res);background:color-mix(in srgb,var(--c-res) 18%,var(--surface));box-shadow:0 0 0 2px color-mix(in srgb,var(--c-res) 35%,transparent)}
.sp-o:first-child{padding-left:12px}
.duel-acts{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:4px}
.duel-acts svg{width:16px;height:16px}
.duel-sofar{margin-top:16px;padding:12px;border-radius:16px;background:var(--surface);border:1px solid var(--line)}
.duel-sofar h4{margin:0;font-size:14px}
.ds-list{list-style:none;margin:8px 0 10px;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.ds-list li{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 4px;border-radius:999px;background:rgba(255,255,255,.06);font-size:12.5px}
.ds-list li .num{min-width:18px;text-align:center;font-weight:900;color:var(--muted)}
.ds-list li.m1 .num{color:#F7C75A}.ds-list li.m2 .num{color:#E3E8F2}.ds-list li.m3 .num{color:#F2AE72}
.ds-list .av{width:24px;height:24px}
/* v15 : boutons dans la couleur de la rubrique (Jouer orange, Popularité vert, Estimation violet, Joueurs/Résultats rose) */
.view[data-sec="jouer"]{--sb1:#FFB24A;--sb2:#F08A1C;--sb3:#D4680A;--sglow:rgba(240,138,28,.38);--stxt:#FFC680}
.view[data-sec="cote"]{--sb1:#6CD566;--sb2:#3BB552;--sb3:#1E8A3E;--sglow:rgba(59,181,82,.36);--stxt:#9BEA7F}
.view[data-sec="estim"]{--sb1:#B48CFF;--sb2:#8A55F5;--sb3:#6533DC;--sglow:rgba(138,85,245,.38);--stxt:#C9AEFF}
.view[data-sec="res"]{--sb1:#FF86AE;--sb2:#EE4C7E;--sb3:#C2205A;--sglow:rgba(238,76,126,.38);--stxt:#FFA3C2}
.view[data-sec] .btn:not(.ghost-b):not(.outline):not(.light):not(.danger):not(.res-btn),
.view[data-sec] .seg button[aria-pressed="true"]{background:radial-gradient(120% 95% at 50% -35%,rgba(255,255,255,.45),rgba(255,255,255,0) 60%),linear-gradient(180deg,var(--sb1) 0%,var(--sb2) 55%,var(--sb3) 100%);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.28);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),inset 0 -2px 6px rgba(0,0,0,.18),0 8px 22px var(--sglow)}
.view[data-sec] .btn.outline{background:color-mix(in srgb,var(--sb2) 9%,transparent);color:var(--stxt);border-color:color-mix(in srgb,var(--sb2) 60%,transparent)}
.view[data-sec] .btn.outline svg{color:currentColor}
.view[data-sec] .link{color:var(--stxt)}
/* badge réservé (Bêta-testeur) */
.badge.special .medal,.av-bdg.sp{background:radial-gradient(120% 55% at 50% -6%,rgba(255,255,255,.6),rgba(255,255,255,0) 62%),linear-gradient(165deg,#E3D4FF 0%,#9B6BFF 42%,#4A5CF0 100%);color:#fff;box-shadow:inset 0 -3px 0 rgba(30,10,90,.25),0 0 0 2px rgba(201,174,255,.35)}
.badge.special b{color:#C9AEFF}
/* partager un badge */
.badge{position:relative}
.bdg-sh{position:absolute;top:8px;right:8px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);background:var(--surface-2);color:var(--fg);cursor:pointer}
.bdg-sh svg{width:16px;height:16px}
.bdg-sh:hover{border-color:var(--c-res)}
.bdg-sh:focus-visible{outline:2px solid var(--c-res);outline-offset:2px}

/* v19 : couleurs des rubriques sur les boutons secondaires, pronos allégés, mes statistiques */
.view[data-sec="jouer"]{--sdeep:#B35400}.view[data-sec="cote"]{--sdeep:#17803A}.view[data-sec="estim"]{--sdeep:#6533DC}.view[data-sec="res"]{--sdeep:#C2185B}
/* boutons secondaires (partager, voir la suite, refaire…) : blancs, texte à la couleur de la rubrique */
.view[data-sec] .btn.outline{background:radial-gradient(120% 95% at 50% -35%,#fff,rgba(255,255,255,0) 60%),linear-gradient(180deg,#FFFFFF,#EEF1F8);color:var(--sdeep);border:0;text-shadow:none;box-shadow:inset 0 -2px 6px rgba(10,20,60,.12),0 8px 22px rgba(0,0,0,.26)}
.view[data-sec] .btn.outline svg{color:currentColor}
.view[data-sec] .btn.outline:disabled{opacity:.6}
/* Jouer : les trois étapes en orange */
.playtabs [data-step]{--tc:var(--c-jouer);--tg:var(--g-jouer)}
.playtabs .pt.done .pt-n{background:var(--gloss),var(--g-jouer);color:#fff;--gl-sh:rgba(229,138,16,.35)}
/* Pronos : pastilles et étiquettes orange */
.pcat-ic,.pcat-ic.saison,.pcat-ic.prime{background:var(--gloss),var(--g-jouer);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.55),inset 0 -4px 10px rgba(90,40,0,.25),0 6px 16px rgba(229,138,16,.3)}
.view[data-sec="jouer"] .pcat .tag.ok,.view[data-sec="jouer"] .pcat .tag.open{background:rgba(240,138,28,.16);color:#FFC680}
.view[data-sec="jouer"] .pcat>summary>.tag:not(.gold){background:rgba(240,138,28,.16);color:#FFC680}
.view[data-sec="jouer"] .qs-cta{color:#FFC680}
.view[data-sec="jouer"] .qd.todo{border-color:rgba(240,138,28,.5)}

/* Mes statistiques */
.my-stats{display:flex;flex-direction:column;gap:14px}
.ms-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ms-t{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;padding:12px 6px 11px;border-radius:14px;background:rgba(7,13,38,.45);border:1px solid rgba(170,198,255,.12);min-width:0}
.ms-t b{font-family:var(--brandfont);font-weight:400;font-size:26px;line-height:1.05;color:#fff}
.ms-t b sup{font-size:.5em;margin-left:1px}.ms-t b small{font-size:.55em;color:var(--muted);margin-left:1px}
.ms-t span{font-size:12.5px;font-weight:700;color:#C9D8FF;line-height:1.2}
.ms-t>small{font-size:11.5px;color:var(--muted);line-height:1.25}
.ms-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.ms-list li{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 2px;border-top:1px solid rgba(170,198,255,.1);font-size:14px}
.ms-list li:first-child{border-top:0}
.ms-list b{font-family:var(--brandfont);font-weight:400;font-size:19px}
.ms-ic{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--gloss),linear-gradient(165deg,#86AEFF 0%,#4A86FF 45%,#1F4FE0 100%)}
.ms-ic svg{width:16px;height:16px}
@media (max-width:360px){.ms-t b{font-size:22px}.ms-t span{font-size:11.5px}}
/* badge affiché : encart repliable */
details.show-pick{gap:0;padding:0}
details.show-pick>summary{list-style:none;cursor:pointer;padding:14px 14px 14px 16px;display:grid;grid-template-columns:auto minmax(0,1fr) 18px;gap:14px;align-items:center;border-radius:var(--r)}
details.show-pick>summary::-webkit-details-marker{display:none}
.sp-ht b{display:block}.sp-ht small{display:block;color:var(--muted);font-size:12.5px;margin-top:2px}
details.show-pick[open] .sp-chev svg{transform:rotate(-90deg)}
.sp-body{display:flex;flex-direction:column;gap:12px;padding:0 16px 16px}

/* v20 : badges par catégorie, rareté, coup de cœur */
.bcats{display:flex;flex-direction:column;gap:10px}
details.bcat{padding:0}
details.bcat>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto 18px;gap:12px;align-items:center;padding:14px 14px 14px 16px;border-radius:var(--r)}
details.bcat>summary::-webkit-details-marker{display:none}
.bc-t b{display:block;font-family:var(--brandfont);font-weight:400;font-size:18px;line-height:1.15}
.bc-t small{display:block;color:var(--muted);font-size:12.5px;margin-top:2px}
.bc-prev{display:flex;align-items:center}
.bc-prev .av-bdg{position:static;width:26px;height:26px;margin-left:-6px;box-shadow:0 0 0 2px #14215C}.bc-prev .av-bdg:first-child{margin-left:0}
.bc-prev .av-bdg svg{width:14px;height:14px}
.bc-more{margin-left:6px;font-size:12px;font-weight:800;color:var(--muted)}
details.bcat[open] .pcat-chev svg{transform:rotate(-90deg)}
details.bcat>.badges{padding:0 12px 14px}
/* rareté (Pépite) */
.badge.tier.r1 .medal,.av-bdg.r1{background:var(--gloss),linear-gradient(165deg,#D8ECFF 0%,#6FB2FF 45%,#2C6BF0 100%);color:#fff;--gl-sh:rgba(44,107,240,.45)}
.badge.tier.r2 .medal,.av-bdg.r2{background:var(--gloss),linear-gradient(165deg,#EBDDFF 0%,#B07CFF 45%,#7036E8 100%);color:#fff;--gl-sh:rgba(112,54,232,.45)}
.badge.tier.r3 .medal,.av-bdg.r3{background:var(--gloss),linear-gradient(165deg,#FFE0EE 0%,#FF7FB3 45%,#D92C6E 100%);color:#fff;--gl-sh:rgba(217,44,110,.45)}
.badge.tier.r4 .medal,.av-bdg.r4{background:var(--gloss),linear-gradient(165deg,#FFF6C8 0%,#FFC93D 40%,#FF7A1A 80%,#FF4D6D 100%);color:#3A1A00;--gl-sh:rgba(255,122,26,.55)}
.av-bdg.r1,.av-bdg.r2,.av-bdg.r3,.av-bdg.r4{background-image:none}
.av-bdg.r1{background:linear-gradient(165deg,#D8ECFF,#6FB2FF 45%,#2C6BF0)}.av-bdg.r2{background:linear-gradient(165deg,#EBDDFF,#B07CFF 45%,#7036E8)}.av-bdg.r3{background:linear-gradient(165deg,#FFE0EE,#FF7FB3 45%,#D92C6E)}.av-bdg.r4{background:linear-gradient(165deg,#FFF6C8,#FFC93D 40%,#FF7A1A)}
.tier-l.r1{color:#8FC2FF}.tier-l.r2{color:#C9A4FF}.tier-l.r3{color:#FF9EC4}.tier-l.r4{color:#FFC93D}
/* exclusif saison */
.badge.excl .tier-l{color:#FFD97A}
.badge.excl:not(.locked) .medal{background:var(--gloss),linear-gradient(165deg,#8FB8FF 0%,#3D6BFF 45%,#1B2F9E 100%);box-shadow:0 0 0 2px rgba(255,217,122,.7),0 6px 18px rgba(61,107,255,.45)}
/* coup de cœur */
.fav-card{display:grid;grid-template-columns:auto minmax(0,1fr) 18px;gap:14px;align-items:center;width:100%;text-align:left;color:inherit}
.fav-card>svg{width:18px;height:18px;color:var(--muted)}
.fav-ph{position:relative;display:block}
.fav-ph .av{width:72px;height:72px}
.fav-hrt{position:absolute;right:-4px;bottom:-2px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(165deg,#FF8FB5,#EE4C7E 55%,#C2205A);box-shadow:0 0 0 3px #14215C}
.fav-hrt svg{width:15px;height:15px}
.fav-t b{display:block;font-family:var(--brandfont);font-weight:400;font-size:22px;line-height:1.1}
.fav-t small{display:block;color:#FFA3C2;font-weight:700;font-size:13px;margin-top:3px}
.fav-t .note{display:block;font-size:12px;margin-top:4px}
.fav-card.empty .fav-t b{font-family:inherit;font-weight:700;font-size:15.5px}
.fav-card.empty .fav-t small{color:var(--muted);font-weight:500;line-height:1.35}
.fav-ic{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--gloss),linear-gradient(165deg,#FF8FB5,#EE4C7E 55%,#C2205A)}
.fav-ic svg{width:22px;height:22px}
.fav-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px}
.fav-btn{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 14px;border-radius:999px;border:1.5px solid rgba(255,134,174,.55);background:rgba(238,76,126,.1);color:#FFA3C2;font-weight:800;font-size:14px;cursor:pointer}
.fav-btn svg{width:17px;height:17px}
.fav-btn.on{background:linear-gradient(180deg,#FF86AE,#EE4C7E 55%,#C2205A);border-color:transparent;color:#fff;box-shadow:0 6px 16px rgba(238,76,126,.35)}
.fav-btn:disabled{opacity:.5;cursor:default}
@media (prefers-reduced-motion:no-preference){.fav-btn.on svg{animation:favPop .4s cubic-bezier(.2,.8,.2,1)}}
@keyframes favPop{0%{transform:scale(.4)}70%{transform:scale(1.25)}100%{transform:scale(1)}}
/* ===== v23 : page « Semaine N en bref » (article) ===== */
.sem{display:flex;flex-direction:column;gap:26px}
.sem-h1{font-family:var(--brandfont);font-weight:400;font-synthesis:none;font-size:clamp(27px,7.2vw,36px);line-height:1.08;letter-spacing:0;text-wrap:balance}
.sem-sec{display:flex;flex-direction:column;gap:12px}
.sem-sec>h2{font-family:var(--brandfont);font-weight:400;font-synthesis:none;font-size:21px;line-height:1.15;transform:skewX(-6deg);transform-origin:0 100%}
.sem-sec>h2::before{content:"";display:inline-block;width:1.2em;height:.74em;margin-right:.4em;vertical-align:.02em;background:#fff;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='30 10 160 98'%3E%3Cpath d='M83 10H190V36H83a13 13 0 0 1 0-26ZM43 46H190V72H43a13 13 0 0 1 0-26ZM99 82H190V108H99a13 13 0 0 1 0-26Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='30 10 160 98'%3E%3Cpath d='M83 10H190V36H83a13 13 0 0 1 0-26ZM43 46H190V72H43a13 13 0 0 1 0-26ZM99 82H190V108H99a13 13 0 0 1 0-26Z'/%3E%3C/svg%3E") center/contain no-repeat}
.sem-p{margin:0;font-size:15.5px;line-height:1.55;color:rgba(242,245,255,.88)}
.sem .est h3{font-size:17px}
.sem-res{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.sem-r{display:flex;align-items:center;gap:10px;padding:10px 12px;text-align:left;color:inherit;width:100%}
.sem-r .av{width:46px;height:46px;box-shadow:0 0 0 2px #3DD598}
.sem-r.out .av{box-shadow:0 0 0 2px #FF5468}
.sem-r small{display:block;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#7FE3B4}
.sem-r.out small{color:#FF8A98}
.sem-r b{display:block;font-family:var(--brandfont);font-weight:400;font-size:18px}
.sem-list{padding:6px 12px}
.sem-list .rank-list,.sem-more .rank-list{gap:0}
.sem .score small{font-size:.62em;opacity:.7;margin-left:1px}
details.sem-more{padding:0}
details.sem-more>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;font-weight:800;cursor:pointer;color:#FFA3C2}
details.sem-more>summary::-webkit-details-marker{display:none}
details.sem-more>summary svg{width:16px;height:16px;transform:rotate(90deg);transition:transform .2s}
details.sem-more[open]>summary svg{transform:rotate(-90deg)}
details.sem-more .rank-list{padding:0 12px 10px}
.sem-pr .mini{grid-template-columns:minmax(0,1fr) auto;padding:8px 2px}
.sem-pr .mini>span:first-child{white-space:normal}
.sem-faces{display:flex;gap:4px;justify-content:flex-end}
.sem-face{padding:0;border:0;background:none;cursor:pointer;border-radius:50%}
.sem-face .av{width:40px;height:40px;box-shadow:0 0 0 2px rgba(255,255,255,.18)}
/* ===== v23 : Jouer en orange ===== */
.view[data-sec="jouer"] .modes .mode .ic{background:var(--gloss),linear-gradient(165deg,#FFC870 0%,#F08A1C 50%,#C25E05 100%);--gl-sh:rgba(240,138,28,.4)}
.view[data-sec="jouer"] .mode.rec{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.015) 46%) padding-box,linear-gradient(rgba(120,62,8,.5),rgba(120,62,8,.5)) padding-box,linear-gradient(180deg,#FFB24A,rgba(240,138,28,.35)) border-box}
.view[data-sec="jouer"] .mode>svg{color:#FFC680}
.view[data-sec="jouer"] .progress .bar i,.view[data-sec="jouer"] .bar i{background:linear-gradient(90deg,#FFB24A,#E58A10)}
/* encart d'actions, comme la barre « Annuler / Valider mon classement » */
.act-box{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:18px;border:1px solid transparent;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.012) 46%) padding-box,linear-gradient(var(--panel),var(--panel)) padding-box,var(--panel-brd) border-box;box-shadow:0 8px 24px rgba(10,20,60,.25)}
.act-k{margin:2px 4px 0;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.act-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.act-row .btn{padding-left:6px;padding-right:6px;white-space:nowrap}
.view[data-sec="jouer"] .btn.outline{background:radial-gradient(120% 95% at 50% -35%,rgba(255,255,255,.45),rgba(255,255,255,0) 60%),linear-gradient(180deg,#FFB24A 0%,#F08A1C 55%,#D4680A 100%);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.28);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 8px 22px rgba(240,138,28,.35)}
/* ===== v23 : Côte en direct, pastille d'évolution (+2, =, −3) ===== */
.cb-ev{position:absolute;right:-6cqi;top:-6cqi;z-index:4;min-width:26cqi;height:22cqi;padding:0 5cqi;border-radius:11cqi;display:grid;place-items:center;font:800 clamp(9px,13cqi,15px)/1 var(--body,system-ui);color:#fff;box-shadow:0 0 0 max(1.5px,1.4cqi) #0C1C58,0 3cqi 8cqi rgba(5,10,31,.5)}
.cb-ev.up{background:linear-gradient(180deg,#5BE3A4,#1FA864)}
.cb-ev.dn{background:linear-gradient(180deg,#FF7A88,#D2283F)}
.cb-ev.eq{background:linear-gradient(180deg,#9AA8C9,#5F6E92)}
.cb-i.t1 .cb-ev{min-width:22cqi;height:18cqi;font-size:clamp(10px,11cqi,15px)}
.stat b.dn{color:var(--danger)}
.stats.two .stat span b{display:block;margin-top:2px;color:var(--fg);font:800 15px/1.2 var(--body,system-ui);font-stretch:normal}
/* ===== v23 : pied de page plus aéré ===== */
footer.foot{margin-top:34px;padding-top:26px;padding-bottom:18px;gap:16px;font-size:12.5px;line-height:1.6}
footer.foot>p{margin:0;max-width:52ch}
.foot-links{gap:8px 22px}
.foot-links button,.foot-links .foot-av{padding:6px 0}
.lb-note{text-align:center;margin:4px 0 0}
/* ===== v23 : onglets du profil ===== */
.ptabs{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.ptabs [data-ptab]{--tc:#4A86FF;--tg:linear-gradient(165deg,#86AEFF 0%,#4A86FF 45%,#1F4FE0 100%)}
.ptabs .pt{flex-direction:column;gap:3px;min-height:58px;padding:6px 2px;font-size:12.5px}
.ptabs .pt-n{border:0;width:28px;height:28px;background:var(--gloss),var(--tg);color:#fff}
.ptabs .pt-n svg{width:15px;height:15px}
.ptabs .pt[aria-selected="true"] .pt-n{box-shadow:0 0 0 2px rgba(255,255,255,.85)}
/* ===== v23 : accès au site (champ affiché selon le choix) ===== */
.adm-site .f-code,.adm-site .f-msg{display:none}
.adm-site:has(input[name=siteMode][value=code]:checked) .f-code,.adm-site:has(input[name=siteMode][value=maintenance]:checked) .f-msg{display:flex}
.site-opt small{display:none}
/* ===== v23 : notifications ===== */
.push-models>summary{cursor:pointer;font-weight:700;font-size:14px;color:#9DBDFF;padding:4px 0;list-style:none}
.push-models>summary::-webkit-details-marker{display:none}
.push-models>summary::before{content:"+ "}
.push-models[open]>summary::before{content:"− "}
.push-models .chips{margin-top:8px}
.emo-row{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}
.emo{width:36px;height:34px;border-radius:10px;border:1px solid rgba(170,198,255,.18);background:rgba(255,255,255,.04);font-size:18px;line-height:1;cursor:pointer}
#pdUc{margin-top:8px}
.push-prev{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:start;padding:12px;border-radius:18px;background:rgba(235,240,255,.92);color:#11163A}
.pp-ic img{width:38px;height:38px;border-radius:9px;display:block}
.pp-t b{display:block;font-size:14px;line-height:1.25;color:#11163A;word-break:break-word}
.pp-t small{display:block;font-size:13px;line-height:1.3;color:#3B4266;margin-top:2px;word-break:break-word}
.pp-k{font-size:11.5px;color:#6A7196}
/* ===== v23 : page Direct en onglets, pavé de notes ===== */
.lx-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.lx-bar h1{font-family:var(--brandfont);font-weight:400;font-synthesis:none;font-size:24px;line-height:1.1;flex:1 1 auto;min-width:0}
.lx-bar .note{flex-basis:100%;margin:0}
.lx-tabs{position:sticky;top:calc(env(safe-area-inset-top,0px) + 70px);z-index:6;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))}
.lx-tabs button[aria-pressed="true"]{background:radial-gradient(120% 95% at 50% -35%,rgba(255,255,255,.45),rgba(255,255,255,0) 60%),linear-gradient(180deg,#FF7A88 0%,#E2384F 55%,#A3122A 100%);color:#fff}
.lx-cnt{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;margin-left:4px;border-radius:10px;background:#fff;color:#C81D35;font-size:12px;font-weight:900}
.lx-body{display:flex;flex-direction:column;gap:12px}
.lx-card{display:flex;flex-direction:column;gap:10px;padding:14px;border-color:rgba(255,122,136,.45)!important}
.lx-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center}
.lx-head .lv-faces .pimg{width:62px;height:62px}
.lx-t{display:flex;flex-direction:column;gap:2px;min-width:0}
.lx-t .tag{align-self:flex-start}
.lx-t b{font-family:var(--brandfont);font-weight:400;font-size:21px;line-height:1.15}
.lx-t small{color:var(--muted);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lx-steps{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:0 -2px;padding:2px}
.lx-steps::-webkit-scrollbar{display:none}
.lx-step{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 10px;border-radius:12px;border:1.5px solid rgba(170,198,255,.18);background:rgba(255,255,255,.04);color:var(--muted);font-weight:700;font-size:13px}
.lx-step b{color:var(--fg);font-size:15px}
.lx-step.ok{color:var(--fg);border-color:rgba(61,213,152,.45)}
.lx-step.on{border-color:#FF7A88;background:rgba(255,122,136,.14);color:#fff}
.av.xs{width:22px;height:22px;font-size:10px}
.lx-q{margin:2px 0 0;font-weight:800;font-size:15px}
.lx-q small{color:var(--muted);font-weight:600}
.lx-pad{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.lx-n{height:46px;border-radius:12px;border:1px solid rgba(170,198,255,.18);background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.02));color:#fff;font:400 19px var(--brandfont);font-synthesis:none;cursor:pointer;touch-action:manipulation}
.lx-n:active{transform:scale(.94)}
.lx-n.on{border-color:transparent;background:radial-gradient(120% 95% at 50% -35%,rgba(255,255,255,.45),rgba(255,255,255,0) 60%),linear-gradient(180deg,#FF7A88,#E2384F 55%,#A3122A);box-shadow:0 6px 16px rgba(226,56,79,.4)}
.lx-n:disabled{opacity:.55}
.lx-hint{margin:0;text-align:center;font-size:12.5px}
.lx-queue{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.lx-qb{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:3px 12px 3px 4px;border-radius:999px;border:1.5px solid rgba(255,122,136,.5);background:rgba(255,122,136,.1);color:#fff;font-size:13px}
.lx-qb .lv-faces.sm .pimg{width:30px;height:30px}
.lx-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.lx-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:8px 10px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(170,198,255,.1)}
.lx-list.next .lx-row{grid-template-columns:auto minmax(0,1fr);opacity:.85}
.lx-rt{display:flex;flex-direction:column;min-width:0}
.lx-rt b{font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lx-rt small{color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lx-sc{display:flex;gap:10px}
.lx-sc>span{display:flex;flex-direction:column;align-items:center;line-height:1.1}
.lx-sc small{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.lx-sc b{font:400 18px var(--brandfont)}
.lx-edit{border:0;background:none;color:#FF9AA5;font-weight:800;font-size:13px;padding:6px 2px}
.lx-empty{display:flex;flex-direction:column;gap:6px;align-items:center;text-align:center;padding:18px}
.lx-ok{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,#5BE3A4,#1FA864);color:#fff}
.lx-ok svg{width:22px;height:22px}
.lx-top3{display:grid;grid-template-columns:minmax(0,1fr) 18px;gap:6px 10px;align-items:center;text-align:left;color:inherit;width:100%;padding:12px 14px}
.lx-top3>.note{grid-column:1/-1;margin:0}
.lx-top3>svg{width:16px;height:16px;color:var(--muted)}
.lx-pod{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.lx-pod>span{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0}
.lx-pod b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.lx-pod em{font:400 17px var(--brandfont);font-style:normal}
.lx-pod .m1 em{color:#F7C75A}.lx-pod .m2 em{color:#E3E8F2}.lx-pod .m3 em{color:#F2AE72}
.lx-rank .rrow{padding-top:6px;padding-bottom:6px}
@media (max-width:360px){.lx-n{height:42px;font-size:17px}.lx-pad{gap:5px}}
/* ===== v23 : espace admin en boutons ===== */
.adm-secs details.adm{display:none}
.adm-secs details.adm.cur{display:block}
.adm-secs details.adm.cur>summary{cursor:default;pointer-events:none}
.adm-secs details.adm.cur>summary::after{display:none}
.adm-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.adm-tile{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:center;min-height:70px;padding:10px 12px;text-align:left;color:inherit;border-radius:16px;border:1px solid transparent;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.012) 46%) padding-box,linear-gradient(var(--panel),var(--panel)) padding-box,var(--panel-brd) border-box;cursor:pointer}
.adm-tile:active{transform:scale(.98)}
.at-ic{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;color:#fff;background:var(--gloss),linear-gradient(165deg,#86AEFF,#4A86FF 45%,#1F4FE0)}
.at-ic svg{width:18px;height:18px}
.adm-tile[data-admsec="adm-live"] .at-ic{background:var(--gloss),linear-gradient(165deg,#FF7A88,#E2384F 55%,#A3122A)}
.adm-tile[data-admsec="adm-todo"] .at-ic,.adm-tile[data-admsec="adm-pronos"] .at-ic,.adm-tile[data-admsec="adm-prime"] .at-ic{background:var(--gloss),linear-gradient(165deg,#FFC870,#F08A1C 50%,#C25E05)}
.adm-tile[data-admsec="adm-poll"] .at-ic{background:var(--gloss),linear-gradient(165deg,#C9AEFF,#8A55F5 50%,#4419C2)}
.adm-tile[data-admsec="adm-dash"] .at-ic,.adm-tile[data-admsec="adm-suivi"] .at-ic{background:var(--gloss),linear-gradient(165deg,#9BEA7F,#3BB552 50%,#17803A)}
.adm-tile[data-admsec="adm-players"] .at-ic,.adm-tile[data-admsec="adm-votes"] .at-ic{background:var(--gloss),linear-gradient(165deg,#FFA3C2,#EE4C7E 55%,#C2205A)}
.at-t{display:flex;flex-direction:column;min-width:0}
.at-t b{font-size:14.5px;line-height:1.2;padding-right:30px}
.at-t small{color:var(--muted);font-size:12px;line-height:1.25;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.at-tag{position:absolute;top:7px;right:8px;font-size:10.5px;font-weight:900;letter-spacing:.03em;padding:2px 7px;border-radius:999px;background:rgba(134,174,255,.18);color:#BFD3FF}
.adm-back{position:sticky;top:calc(env(safe-area-inset-top,0px) + 70px);z-index:6}
.adm-back .btn svg{width:16px;height:16px;transform:rotate(180deg)}
.adm-secs.on{margin-top:-4px}
/* ===== v23 : curseur de note du direct ===== */
.lx-sl{display:flex;flex-direction:column;gap:8px;padding:4px 2px 0}
.lx-sl-top{display:grid;grid-template-columns:52px minmax(0,1fr) 52px;align-items:center;gap:10px}
.lx-pm{height:52px;border-radius:16px;border:1px solid rgba(170,198,255,.2);background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.02));color:#fff;font:700 26px/1 var(--body,system-ui);cursor:pointer;touch-action:manipulation}
.lx-pm:active{transform:scale(.94)}
.lx-val{display:flex;align-items:baseline;justify-content:center;gap:4px}
.lx-val b{font:400 60px/1 var(--brandfont);font-synthesis:none;color:rgba(255,255,255,.35);transition:color .15s}
.lx-sl.set .lx-val b{color:#fff;text-shadow:0 0 22px rgba(255,122,136,.5)}
.lx-val small{font-weight:700;font-size:16px;color:var(--muted)}
.lx-range{-webkit-appearance:none;appearance:none;width:100%;height:34px;background:transparent;margin:0;touch-action:pan-y}
.lx-range::-webkit-slider-runnable-track{height:12px;border-radius:6px;background:linear-gradient(90deg,#FF7A88 0,#E2384F var(--p),rgba(255,255,255,.12) var(--p))}
.lx-range::-moz-range-track{height:12px;border-radius:6px;background:linear-gradient(90deg,#FF7A88 0,#E2384F var(--p),rgba(255,255,255,.12) var(--p))}
.lx-range::-webkit-slider-thumb{-webkit-appearance:none;width:34px;height:34px;margin-top:-11px;border-radius:50%;background:#fff;border:0;box-shadow:0 0 0 6px rgba(255,122,136,.3),0 4px 12px rgba(0,0,0,.4)}
.lx-range::-moz-range-thumb{width:34px;height:34px;border-radius:50%;background:#fff;border:0;box-shadow:0 0 0 6px rgba(255,122,136,.3),0 4px 12px rgba(0,0,0,.4)}
.lx-sl:not(.set) .lx-range::-webkit-slider-runnable-track{background:rgba(255,255,255,.12)}
.lx-sl:not(.set) .lx-range::-moz-range-track{background:rgba(255,255,255,.12)}
.lx-sl:not(.set) .lx-range::-webkit-slider-thumb{box-shadow:0 0 0 6px rgba(255,255,255,.12),0 4px 12px rgba(0,0,0,.4);animation:lxNudge 1.6s ease-in-out infinite}
@keyframes lxNudge{0%,100%{transform:translateX(0)}50%{transform:translateX(6px)}}
@media (prefers-reduced-motion:reduce){.lx-sl:not(.set) .lx-range::-webkit-slider-thumb{animation:none}}
.lx-ticks{display:flex;justify-content:space-between;padding:0 8px;font-size:12px;font-weight:700;color:var(--muted)}
.lx-ok{margin-top:4px}
.view .lx-ok:not(:disabled){background:radial-gradient(120% 95% at 50% -35%,rgba(255,255,255,.45),rgba(255,255,255,0) 60%),linear-gradient(180deg,#FF7A88,#E2384F 55%,#A3122A);box-shadow:0 8px 22px rgba(226,56,79,.35)}
.view .lx-ok{border-radius:16px;min-height:52px;font-size:16px}
.view .lx-ok:disabled{background:rgba(255,255,255,.06);color:var(--muted);box-shadow:none;text-shadow:none;border:1px solid rgba(170,198,255,.14);opacity:1}
/* ===== v24 : propositions de notifications ===== */
.pn-ask{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;padding:12px;border-radius:16px;background:rgba(98,203,255,.08);border:1px solid rgba(98,203,255,.35);margin:4px 0}
.pn-ask .pn-ic{width:36px;height:36px;border-radius:11px}
.pn-ask .pn-ic svg{width:19px;height:19px}
.pn-ask .pn-t b{font-size:14px;line-height:1.25}
.pn-ask .pn-t small{font-size:12.5px}
.pn-ask .btn{white-space:nowrap}
.pn-ic.big{width:76px;height:76px;border-radius:50%;margin:0 auto}
.pn-ic.big svg{width:38px;height:38px}
.dev-t{display:flex;flex-direction:column;gap:8px;margin:6px 0 4px}
.dev-t>b{font-size:14px}
a.btn{text-decoration:none}
/* ===== v25 : pronos « Réponses au choix » et « Nombre ou note » ===== */
.xopts{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}
.pcard.xopt{position:relative;min-height:56px;display:flex;align-items:center;justify-content:center;padding:10px 14px;font-weight:800;font-size:16px;text-align:center}
.pcard.xopt.on{border-color:#F08A1C;background:linear-gradient(180deg,rgba(255,178,74,.25),rgba(240,138,28,.12));box-shadow:0 0 0 2px rgba(240,138,28,.5)}
.pcard.xopt .ord{position:absolute;top:-8px;right:-8px}
.xnum{--lx1:#FFB24A;--lx2:#E58A10}
.xnum .lx-range::-webkit-slider-runnable-track{background:linear-gradient(90deg,#FFB24A 0,#E58A10 var(--p),rgba(255,255,255,.12) var(--p))}
.xnum .lx-range::-moz-range-track{background:linear-gradient(90deg,#FFB24A 0,#E58A10 var(--p),rgba(255,255,255,.12) var(--p))}
.xnum .lx-range::-webkit-slider-thumb{box-shadow:0 0 0 6px rgba(240,138,28,.3),0 4px 12px rgba(0,0,0,.4)}
.xnum.set .lx-val b{text-shadow:0 0 22px rgba(240,138,28,.5)}
.xnum-h{margin:0;text-align:center;font-size:12.5px}
.pick-res.x>span{font-size:16px}
.cons.x .cons-h{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin:0 0 6px}
.cons.x li.me .cons-n{color:#FFC680;font-weight:800}
.xrv{margin:4px 0 8px;text-align:center;font:400 44px/1.1 var(--brandfont);font-synthesis:none;color:#fff;text-shadow:0 0 22px rgba(134,174,255,.6)}
.grid2.qx .qx-no{display:none}

/* ===== v26 : encarts en calques (fond + élève + cadre) et numéros de rang en image ===== */
.cqw{position:relative;display:block;width:100%}
.cq{position:relative;display:block;width:100%;aspect-ratio:1;transition:transform .2s ease}
.cq>img,.cq>.cq-c{position:absolute;inset:0;width:100%;height:100%;display:block;max-width:none}
.cq>.cq-c.fb{inset:7%;width:86%;height:86%;object-fit:cover;object-position:50% 12%;border-radius:15%}
.cq>.cb-ini{display:grid;place-items:center;color:#fff;font:900 30cqi var(--display)}
.cq-rk{position:absolute;z-index:4;left:-14cqi;top:-17cqi;height:54cqi;width:auto;pointer-events:none;filter:drop-shadow(0 2cqi 4cqi rgba(5,10,31,.6))}
.cqw .cb-rk{z-index:4}
.cb-b .cqw .cb-n{bottom:0;transform:translateY(38%) skewX(-8deg)}
.cb-b:has(.cqw){padding-bottom:6cqi}
@media (hover:hover){.cb-b:hover .cq{transform:translateY(-2px)}}
.cb-i.out .cq{opacity:.38;filter:grayscale(.85)}
.cb-i.out .cb-n{opacity:.6}
.cb-moved .cq{animation:cqPop .9s ease-out}
@keyframes cqPop{40%{transform:scale(1.06)}}
/* podium du top 3 : mêmes encarts carrés */
.podimg.cqw{container-type:inline-size}
.podimg.cqw::after{display:none}
.podx .podimg .cq img{border:0;border-radius:0;aspect-ratio:auto;background:none;box-shadow:none;object-fit:fill}
.podx .podimg .cq img.cq-c.fb{object-fit:cover;border-radius:15%}
.podx .podimg img.cq-rk{position:absolute;width:auto;height:46cqi;left:-12cqi;top:-15cqi;aspect-ratio:auto;border:0;border-radius:0;background:none;box-shadow:none}
.podx b{margin-top:calc(-.6em - 2px)}
.pod3:has(.cqw){padding-top:40px}
/* v26b : fond de la Côte, halo de couleur et ombre derrière chaque encart */
.cboard,.stage:has(.pod3.cq3){background:radial-gradient(70% 22% at 50% 20%,rgba(74,134,255,.18),transparent 75%),url("img/fond-cote.webp?v=3") 50% 0/cover no-repeat,#120F5C}
.cq-or{--cqg:rgba(255,200,60,.85)}.cq-argent{--cqg:rgba(225,232,255,.7)}.cq-bronze{--cqg:rgba(240,130,60,.8)}.cq-bleu{--cqg:rgba(60,120,255,.85)}.cq-rouge{--cqg:rgba(255,60,80,.85)}
.cq::before{content:"";position:absolute;inset:-22%;border-radius:50%;background:radial-gradient(closest-side,var(--cqg) 0%,var(--cqg) 35%,transparent 100%);opacity:.75;pointer-events:none;mix-blend-mode:screen}
.cq>.cq-f{filter:drop-shadow(0 8cqi 10cqi rgba(3,5,22,.85)) drop-shadow(0 0 7cqi var(--cqg))}
.cb-i.out .cq::before{display:none}
/* v26c : pastilles + / − sans contour, lumière intérieure */
.cb-ev{box-shadow:inset 0 1.5cqi 0 rgba(255,255,255,.55),inset 0 -3cqi 6cqi rgba(0,0,0,.22),0 3cqi 8cqi rgba(5,10,31,.45),0 0 8cqi var(--evg,transparent);text-shadow:0 1px 2px rgba(0,0,0,.25)}
.cb-ev.up{--evg:rgba(61,213,152,.55);background:radial-gradient(90% 70% at 50% 18%,rgba(255,255,255,.55),rgba(255,255,255,0) 60%),radial-gradient(70% 90% at 50% 110%,rgba(170,255,210,.45),transparent 70%),linear-gradient(180deg,#5BE3A4,#16A05C)}
.cb-ev.dn{--evg:rgba(255,74,96,.55);background:radial-gradient(90% 70% at 50% 18%,rgba(255,255,255,.5),rgba(255,255,255,0) 60%),radial-gradient(70% 90% at 50% 110%,rgba(255,190,200,.4),transparent 70%),linear-gradient(180deg,#FF7A88,#CC2039)}
/* v26d : lumière de la couleur de la carte sur le visage (discrète) */
.cq{isolation:isolate}
.cq-or{--cqh:#FFC93C}.cq-argent{--cqh:#E2EAFF}.cq-bronze{--cqh:#FF8A3D}.cq-bleu{--cqh:#4C82FF}.cq-rouge{--cqh:#FF4358}
.cq>.cq-l{position:absolute;inset:4%;border-radius:16%;pointer-events:none;mix-blend-mode:soft-light;opacity:.7;background:radial-gradient(55% 45% at 50% 38%,var(--cqh),transparent 75%),linear-gradient(155deg,var(--cqh) 0%,transparent 45%)}
.cb-i.out .cq-l{display:none}
.cv-pod{padding:34px 4px 6px}

/* v26i : lumière de la 1re place moins jaune */
.cq-or{--cqh:#FFE2A6}.cq-or>.cq-l{opacity:.42}
.cq-or{--cqg:rgba(255,214,120,.7)}

/* v26j : halo plus doux et à la forme de la carte (plus de rond) */
.cq::before{inset:7%;border-radius:18%;background:none;opacity:1;mix-blend-mode:normal;box-shadow:0 0 7cqi 1cqi var(--cqg);opacity:.45}
.cq>.cq-f{filter:drop-shadow(0 8cqi 10cqi rgba(3,5,22,.85))}
/* v26l : choix des pronos avant le visuel */
.pk-list{display:flex;flex-direction:column;gap:8px;margin:12px 0 16px;max-height:52vh;overflow:auto;padding:2px}
.pk-opt{display:grid;grid-template-columns:26px minmax(0,1fr);gap:12px;align-items:center;text-align:left;width:100%;padding:12px 14px;border-radius:16px;border:2px solid var(--line);background:var(--surface-2,rgba(255,255,255,.04));color:inherit;font:inherit;cursor:pointer}
.pk-opt[aria-pressed="true"]{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 12%,transparent)}
.pk-opt:disabled{opacity:.45;cursor:not-allowed}
.pk-box{width:24px;height:24px;border-radius:8px;border:2px solid var(--muted);display:grid;place-items:center}
.pk-opt[aria-pressed="true"] .pk-box{background:var(--brand);border-color:var(--brand)}
.pk-opt[aria-pressed="true"] .pk-box::after{content:"";width:6px;height:11px;border:solid #fff;border-width:0 3px 3px 0;transform:translateY(-1px) rotate(45deg)}
.pk-t{display:flex;flex-direction:column;gap:2px;min-width:0}
.pk-t b{font-size:15px;line-height:1.3}
.pk-cat{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#8FB3FF}
.pk-cat.saison{color:#B996FF}.pk-cat.prime{color:#FF7A88}
.pk-who{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* v26m : évaluations en direct en doré (au lieu du rouge du prime) */
.ev-gold{--evA:#FFE08A;--evB:#F5A524;--evC:#B85C05}
.ev-gold .tag.live{background:linear-gradient(180deg,#FFE08A,#F9BE3B);color:#fff;box-shadow:0 4px 14px rgba(249,190,59,.4)}
.ev-gold .tag.live .live-dot{background:#fff}
.ev-gold .btn .live-dot{background:#F5A524}
.ev-gold .lv-home{background:radial-gradient(90% 70% at 100% 0%,rgba(249,190,59,.42),transparent 65%),linear-gradient(180deg,rgba(5,10,31,0) 45%,rgba(5,10,31,.35) 100%),url("img/fond-encart.webp") 50% 0/cover no-repeat,#0C1C58;box-shadow:0 0 0 1px rgba(249,190,59,.4),0 22px 50px rgba(5,10,31,.4)}
.ev-gold .lv-banner{border-color:rgba(249,190,59,.4);background:radial-gradient(120% 140% at 0% 0%,rgba(249,190,59,.22),transparent 60%),var(--surface)}
.ev-gold .lv-banner.hot{box-shadow:0 0 0 1px rgba(249,190,59,.45),0 14px 34px rgba(249,190,59,.22)}
.ev-gold .lv-fab{box-shadow:0 0 0 1px rgba(249,190,59,.6),0 14px 30px rgba(0,0,0,.45);background:#1F1606}
.ev-gold .lv-fab-c{background:linear-gradient(180deg,#FFE08A,#F9BE3B);color:#fff}
.ev-gold .lv-item.open{border-color:rgba(249,190,59,.45)}
.ev-gold .lv-c input[type=range]{accent-color:#F5A524}
.ev-gold .lv-k{color:#FFE08A}.ev-gold .lv-hero .lv-k{color:#FFE08A}
.ev-gold .lv-my b,.ev-gold .lv-row.flop .lv-sc b{color:#FFE08A}
.ev-gold .lv-row.flop{background:linear-gradient(100deg,rgba(249,190,59,.2),var(--surface) 60%);border-color:rgba(249,190,59,.5)}
.ev-gold .lv-row.flop .lv-pos{background:#F9BE3B;color:#fff}
.ev-gold .lv-flop-h::after{background:rgba(249,190,59,.4)}
.ev-gold .lv-arow.open{background:rgba(249,190,59,.08);border-color:rgba(249,190,59,.4)}
.ev-gold .lx-tabs button[aria-pressed="true"]{background:radial-gradient(120% 95% at 50% -35%,rgba(255,255,255,.45),rgba(255,255,255,0) 60%),linear-gradient(180deg,#FFE08A 0%,#F9BE3B 60%,#F5A524 100%);color:#fff}
.ev-gold .lx-cnt{color:#C7850F}
.ev-gold .lx-card{border-color:rgba(249,190,59,.5)!important}
.ev-gold .lx-step.on{border-color:#FFE08A;background:rgba(249,190,59,.14)}
.ev-gold .lx-n.on{background:radial-gradient(120% 95% at 50% -35%,rgba(255,255,255,.45),rgba(255,255,255,0) 60%),linear-gradient(180deg,#FFE08A,#F9BE3B 60%,#F5A524);box-shadow:0 6px 16px rgba(249,190,59,.4);color:#fff}
.ev-gold .lx-qb{border-color:rgba(249,190,59,.55);background:rgba(249,190,59,.1)}
.ev-gold .lx-edit{color:#FFE08A}
.ev-gold .lx-sl.set .lx-val b{text-shadow:0 0 22px rgba(249,190,59,.55)}
.ev-gold .lx-range::-webkit-slider-runnable-track{background:linear-gradient(90deg,#FFE08A 0,#F9BE3B var(--p),rgba(255,255,255,.12) var(--p))}
.ev-gold .lx-range::-moz-range-track{background:linear-gradient(90deg,#FFE08A 0,#F9BE3B var(--p),rgba(255,255,255,.12) var(--p))}
.ev-gold .lx-range::-webkit-slider-thumb{box-shadow:0 0 0 6px rgba(249,190,59,.3),0 4px 12px rgba(0,0,0,.4)}
.ev-gold .lx-range::-moz-range-thumb{box-shadow:0 0 0 6px rgba(249,190,59,.3),0 4px 12px rgba(0,0,0,.4)}
.ev-gold .view .lx-ok:not(:disabled){background:radial-gradient(120% 95% at 50% -35%,rgba(255,255,255,.45),rgba(255,255,255,0) 60%),linear-gradient(180deg,#FFE08A,#F9BE3B 60%,#F5A524);box-shadow:0 8px 22px rgba(249,190,59,.35);color:#fff}
.ev-gold .lv-rank .rrow.flop{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,0) 50%) padding-box,linear-gradient(180deg,#7A5410,#4A3008) padding-box,linear-gradient(180deg,#FFE08A,rgba(255,211,106,.25)) border-box}
.ev-gold .lv-rank .rrow.flop .lv-sc b{color:#FFE7A8}

/* v26o : écriture blanche sur le doré, avec une ombre légère pour la lisibilité */
.ev-gold .tag.live,.ev-gold .lv-fab-c,.ev-gold .lv-row.flop .lv-pos,.ev-gold .lx-tabs button[aria-pressed="true"],.ev-gold .lx-n.on,.ev-gold .view .lx-ok:not(:disabled){text-shadow:0 1px 2px rgba(120,60,0,.45)}
.ev-gold .lvh-now small{color:#FFE08A}
/* v27 : pronos des membres d'une ligue */
.sheet.lp-sheet{max-width:480px;gap:12px}
.lp-top h2{margin:0}.lp-top .note{margin:2px 0 0}
.lp-body{display:flex;flex-direction:column;gap:12px;max-height:64vh;overflow:auto;margin:0 -4px;padding:0 4px 4px}
.lp-seg{position:sticky;top:0;z-index:2;flex:none}
.lp-q{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:18px;background:var(--surface-2,rgba(255,255,255,.04));border:1px solid var(--line)}
.lp-h{display:flex;flex-direction:column;gap:4px}.lp-h b{font-size:16px;line-height:1.3}
.lp-tags{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.lp-st{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:999px;background:rgba(255,255,255,.08);color:var(--muted)}
.lp-st.open{background:rgba(143,179,255,.14);color:#AFC8FF}.lp-st.closed{background:rgba(249,190,59,.16);color:#FFD97A}.lp-st.done{background:rgba(61,213,152,.16);color:#7FE3A6}
.lp-gl{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.lp-g{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 10px 8px 8px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid transparent}
.lp-g.me{border-color:color-mix(in srgb,var(--brand) 55%,transparent);background:color-mix(in srgb,var(--brand) 10%,transparent)}
.lp-g.ok{border-color:rgba(61,213,152,.6);background:rgba(61,213,152,.12)}
.lp-face{width:44px;height:44px;border-radius:12px;object-fit:cover}
.lp-txt{display:grid;place-items:center;background:rgba(255,255,255,.1);font-weight:800;font-size:14px}
.lp-gt{display:flex;flex-direction:column;gap:5px;min-width:0}
.lp-gn{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.lp-gn b{font-size:15px}
.lp-ok{font-style:normal;font-weight:900;color:#3DD598}
.lp-pos{font-size:11.5px;color:var(--muted)}
.lp-bar{height:6px;border-radius:3px;background:rgba(255,255,255,.08);overflow:hidden}.lp-bar i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,#86AEFF,#4A86FF)}
.lp-g.ok .lp-bar i{background:linear-gradient(90deg,#7FE3A6,#2FB774)}
.lp-who{display:flex;flex-wrap:wrap;gap:4px}
.lp-chip{font-size:12px;font-weight:600;padding:1px 8px;border-radius:999px;background:rgba(255,255,255,.08);color:var(--fg)}
.lp-chip.me{background:color-mix(in srgb,var(--brand) 30%,transparent)}
.lp-n{font-size:20px;font-weight:900;min-width:22px;text-align:right}
.lp-j{font-style:normal;font-size:10.5px;font-weight:800;color:#3A2600;background:#F9BE3B;border-radius:6px;padding:0 5px}
.lp-lock{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;border:1px dashed rgba(255,255,255,.18)}
.lp-lock b{display:block;font-size:14px}.lp-lock small{display:block;font-size:12.5px;color:var(--muted)}
.lp-av{display:flex}.lp-av .av{width:26px;height:26px;margin-left:-8px;box-shadow:0 0 0 2px var(--surface)}.lp-av .av:first-child{margin-left:0}
.lp-none{margin:0}
.lp-done{display:flex;flex-direction:column;gap:12px}
.lp-done>summary{cursor:pointer;font-weight:800;padding:10px 4px;list-style:none;display:flex;align-items:center;gap:8px}
.lp-done>summary::-webkit-details-marker{display:none}
.lp-done>summary::before{content:"▸";transition:transform .2s}.lp-done[open]>summary::before{transform:rotate(90deg)}
.lp-done>summary .num{font-size:12px;padding:1px 8px;border-radius:999px;background:rgba(255,255,255,.1)}
.lp-done[open]{gap:12px}
.lp-ppl{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 6px;scrollbar-width:none}
.lp-pp{flex:none;display:flex;flex-direction:column;align-items:center;gap:4px;width:68px;padding:8px 4px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--fg);font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.lp-pp span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lp-pp .av{width:36px;height:36px}
.lp-pp[aria-selected="true"]{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 14%,transparent)}
.lp-pl{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.lp-pr{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border-radius:16px;background:var(--surface-2,rgba(255,255,255,.04));border:1px solid var(--line)}
.lp-pr b{font-size:15px;line-height:1.3}
.lp-ans{display:flex;flex-wrap:wrap;gap:6px}
.lp-c{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 3px;border-radius:999px;background:rgba(255,255,255,.08);font-size:13.5px;font-weight:600}
.lp-c:not(:has(.av)){padding-left:10px}
.lp-c .av.sm{width:24px;height:24px}
.lp-c.ok{background:rgba(61,213,152,.2);box-shadow:inset 0 0 0 1px rgba(61,213,152,.6)}
.lp-o{font-style:normal;font-weight:900;font-size:11px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#1533A6;margin-left:2px}
.lp-hid{font-size:13px;color:var(--muted)}
.lp-pts{margin:0}
.lp-seg{background:var(--surface);box-shadow:0 0 0 6px var(--surface),0 10px 14px -6px var(--surface)}
.lp-g{grid-template-columns:38px minmax(0,1fr) auto;padding:7px 10px 7px 7px;gap:10px}
.lp-face{width:38px;height:38px;border-radius:11px}
.lp-gt{gap:4px}
/* v28 : ligue vivante + écrans vides */
.lg-seg{margin:4px 0 2px}
.lg-board .lg-r{grid-template-columns:28px 28px minmax(0,1fr) auto;gap:10px}
.lg-board .av.sm{width:28px;height:28px}
.lg-pn{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lg-hint{margin:2px 0 0;font-size:12.5px}
.lg-fh{display:flex;align-items:center;gap:8px;margin-top:6px}.lg-fh h4{margin:0;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.lg-fh .live-dot{background:#3DD598}
.lg-feed{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.lg-ev{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 4px;border-bottom:1px solid var(--line)}
.lg-ev:last-child{border-bottom:0}
.lg-evi{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.07);font-size:15px}
.lg-evt{font-size:14px;line-height:1.35}.lg-evt b{font-weight:800}
.lg-evd{font-size:12px;color:var(--muted);white-space:nowrap}
.lg-more>summary{cursor:pointer;font-size:13.5px;font-weight:700;color:var(--brand);padding:6px 4px;list-style:none}
.lg-more>summary::-webkit-details-marker{display:none}
.lg-load{margin:0}
.lg-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:22px 18px}
.lg-empty.sm{padding:16px 14px;border-radius:16px;background:rgba(255,255,255,.04);border:1px dashed rgba(255,255,255,.16)}
.lg-empty b{font-size:16px}.lg-empty>span:not(.lg-em){font-size:14px;color:var(--muted);line-height:1.45;max-width:34ch}
.lg-empty .btn{margin-top:6px}
.lg-em{font-size:32px;line-height:1}
.bdg-start .bs-list{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:8px;width:100%;text-align:left}
.bdg-start .bs-list li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;padding:10px;border-radius:14px;background:rgba(255,255,255,.05)}
.bdg-start .medal{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;color:#fff;background:var(--gloss),linear-gradient(165deg,#86AEFF 0%,#4A86FF 45%,#1F4FE0 100%)}
.bdg-start .medal svg{width:22px;height:22px}
.bdg-start .bs-list b{display:block;font-size:14.5px}.bdg-start .bs-list small{display:block;font-size:12.5px;color:var(--muted);line-height:1.35}
/* v29 : estimation sur le visuel de la semaine (barres + pourcentages animés) */
.esth.eimg{padding:0 0 16px}
.esth.eimg .esth-top{padding:14px 16px 10px}
.ei{position:relative;container-type:inline-size;width:100%;overflow:hidden;background:#120F5C}
.ei-bg{position:absolute;top:0;left:var(--bgx);width:var(--bgw);height:100%;max-width:none;display:block}
.ei-c{position:absolute;inset:0;background:none;border:0;padding:0;color:#fff;cursor:pointer;pointer-events:none}
.ei-c>*{pointer-events:auto}
.ei-bar{position:absolute;left:var(--x);top:var(--y);width:var(--w);height:var(--h);border-radius:calc(var(--h)/2) 0.4cqw 0.4cqw calc(var(--h)/2)}
.ei-bar i{position:absolute;left:0;top:0;bottom:0;width:0;min-width:calc(var(--h)*.9);border-radius:calc(var(--h)/2);
  background:radial-gradient(120% 90% at 50% 0%,rgba(255,255,255,.45),rgba(255,255,255,0) 55%),linear-gradient(90deg,#B3122B 0%,#E5243B 55%,#FF4A5E 100%);
  box-shadow:0 0 1.4cqw rgba(255,46,72,.75),0 0 .4cqw rgba(255,120,130,.9) inset;transition:width 1.3s cubic-bezier(.2,.8,.2,1) calc(.25s + var(--i)*.18s)}
.ei-bar i.lead{background:radial-gradient(120% 90% at 50% 0%,rgba(255,255,255,.45),rgba(255,255,255,0) 55%),linear-gradient(90deg,#1534C9 0%,#2F62FF 55%,#5C8DFF 100%);box-shadow:0 0 1.4cqw rgba(60,110,255,.8),0 0 .4cqw rgba(150,190,255,.9) inset}
.ei.go .ei-bar i{width:var(--p)}
.ei-v{position:absolute;right:calc(100cqw - var(--x) - var(--pr));top:calc(var(--y) - var(--ty));display:flex;align-items:baseline;white-space:nowrap;font-family:var(--brandfont);font-synthesis:none;line-height:1;text-shadow:0 .25cqw .9cqw rgba(0,0,30,.6)}
.ei-v b{font-weight:400;font-size:var(--fs);letter-spacing:-.02em}
.ei-v small{font-size:var(--fs2);margin-left:-.1cqw;position:relative;z-index:2}
.ei-c.out .ei-v,.ei-c.out .ei-bar{opacity:.55}
@media (prefers-reduced-motion:reduce){.ei-bar i{transition:none}}
.esth.eimg .esth-f{padding:10px 16px 0;margin:0}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.esth.eimg{padding:0;overflow:hidden}
.ei-bar i{top:0!important;bottom:auto!important;height:100%!important;margin:0!important;transform:none!important}
/* fin de barre droite et oblique, lueur portée par le conteneur (le clip-path couperait l'ombre) */
.ei-bar i,.ei-bar i.lead{box-shadow:none;border-radius:calc(var(--h)/2) 0 0 calc(var(--h)/2);clip-path:polygon(0 0,100% 0,calc(100% - var(--h)*.32) 100%,0 100%)}
.ei-bar{filter:drop-shadow(0 0 .7cqw rgba(255,46,72,.7))}
.ei-bar:has(i.lead){filter:drop-shadow(0 0 .7cqw rgba(60,110,255,.8))}
/* date, heure et votants en haut à droite, comme sur le visuel partagé */
.ei-meta{position:absolute;right:3.65cqw;top:3.1cqw;display:flex;flex-direction:column;align-items:flex-end;gap:.45cqw;text-align:right;color:#fff;text-shadow:0 .1cqw .7cqw rgba(0,0,30,.55);pointer-events:none}
.ei-meta small{font-size:1.35cqw;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.ei-meta b{font-size:1.98cqw;font-weight:700;line-height:1.15}
.ei-vot{margin-top:.35cqw;font-size:1.56cqw;font-weight:800;padding:.45cqw 1.25cqw;border-radius:99px;background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 .1cqw rgba(255,255,255,.28)}
/* même inclinaison que les barres du fond (≈ 5 px sur 56 px) ; la largeur suit exactement le pourcentage (milieu de la coupe) */
.ei-bar i,.ei-bar i.lead{min-width:0;clip-path:polygon(0 0,100% 0,calc(100% - var(--h)*.09) 100%,0 100%)}
.ei.go .ei-bar i{width:calc(var(--p) + var(--h)*.045)}
.ei.go .ei-bar i[style*="--p:0%"]{width:0}
/* « % » qui chevauche un peu le chiffre, avec une ombre */
.ei-v small{margin-left:-.95cqw;text-shadow:-.15cqw .15cqw .6cqw rgba(0,0,30,.75),0 0 .3cqw rgba(0,0,30,.5)}
/* v30 : plus de boutons blancs — ils prennent la couleur de la page (dégradé brillant, texte blanc), comme « Partager mon classement » */
.view{--sb1:#86AEFF;--sb2:#4A86FF;--sb3:#1F4FE0;--sglow:rgba(74,134,255,.38)}
.view[data-sec="live"]{--sb1:#FF7A88;--sb2:#E2384F;--sb3:#A3122A;--sglow:rgba(226,56,79,.38);--stxt:#FF9AA6}
.ev-gold .view[data-sec="live"]{--sb1:#FFE08A;--sb2:#F9BE3B;--sb3:#F5A524;--sglow:rgba(249,190,59,.4)}
.view .btn.outline,.view[data-sec] .btn.outline,.view .btn.light,.view[data-sec] .btn.light{
  background:radial-gradient(120% 95% at 50% -35%,rgba(255,255,255,.45),rgba(255,255,255,0) 60%),linear-gradient(180deg,var(--sb1) 0%,var(--sb2) 55%,var(--sb3) 100%);
  color:#fff;border:0;text-shadow:0 1px 2px rgba(0,0,0,.28);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),inset 0 -2px 6px rgba(0,0,0,.12),0 8px 22px var(--sglow)}
.view .btn.outline svg,.view .btn.light svg{color:#fff}
.view .btn.outline:disabled,.view .btn.light:disabled{opacity:.55}
.view .btn.outline.warn{background:linear-gradient(180deg,#FF7A88,#E2384F 55%,#A3122A)}
/* exceptions : le bouton « Classer mes académiciens » de l'accueil reste blanc ; « Par touches » sans fond orange */
.view .btn.light.keep-white{background:radial-gradient(120% 95% at 50% -35%,#fff,rgba(255,255,255,0) 60%),linear-gradient(180deg,#FFFFFF,#E3ECFF);color:#1533A6;text-shadow:none;box-shadow:inset 0 -2px 6px rgba(21,51,166,.15),0 10px 26px rgba(0,0,0,.28)}
.view .btn.light.keep-white svg{color:#1533A6}
.view[data-sec="jouer"] .mode.rec{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.015)) padding-box,var(--surface) padding-box;border:1px solid var(--line);box-shadow:none}
.view[data-sec="jouer"] .mode.rec b,.view[data-sec="jouer"] .mode.rec small{color:inherit}
/* v30c : pas d'encadrement coloré autour des photos rondes */
.nomx .av{border:0}
.onb-p .av,.onb-p.nom .av,.onb-p.r1 .av,.onb-p.r2 .av,.onb-p.r3 .av{box-shadow:0 8px 18px rgba(0,10,60,.4)}
.sem-r .av,.sem-r.out .av,.sem-face .av{box-shadow:none}
.av-edit .av.xl{box-shadow:0 10px 24px rgba(0,10,60,.45)}
.lv-rank .rrow .av,.rrow .av,.cs-row .av,img.av{box-shadow:none;border:0;outline:0}
/* encart direct de l'accueil : boutons blancs (« Noter maintenant » + « Voir le classement en direct ») */
.view .lv-home .btn.lvh-rk2{background:rgba(255,255,255,.12);color:#fff;border:1.5px solid rgba(255,255,255,.85);text-shadow:none;box-shadow:none}
.lv-home .btn+.btn{margin-top:-2px}
.lv-home .btn+.btn{margin-top:-4px}
.pl-row{grid-template-columns:auto minmax(0,1fr) auto!important;gap:10px;align-items:center}
.pl-wk{display:inline-flex;align-items:center;gap:6px}.pl-wk .btn{min-height:32px;padding:4px 10px}.pl-wk b{min-width:30px;text-align:center}
.pl-t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* listes dépliables des pages Semaine (Côte, notes du prime, évaluations) : toutes les lignes en bleu foncé */
.sem-more .rrow.sem-rr{background:rgba(14,24,72,.62);border:1px solid rgba(255,255,255,.08);box-shadow:none}
.sem-more .rrow.sem-rr .pos{background:none;color:#fff}
.sem-more .rrow.sem-rr .pos{color:#fff!important;background:none!important;box-shadow:none!important}
/* classement des joueurs (et ligues) : 1, 2, 3 écrits comme les autres rangs, sans pastille */
.rank-list.lb .rrow.podm .pos,.rank-list.lb .rrow.m1 .pos,.rank-list.lb .rrow.m2 .pos,.rank-list.lb .rrow.m3 .pos{display:block;width:auto;height:auto;border-radius:0;background:none!important;box-shadow:none;font-family:var(--display)!important;font-weight:900!important;font-stretch:115%;font-size:20px!important;color:#fff!important}
.lg-board .mini.podm .p,.mini.m1 .p,.mini.m2 .p,.mini.m3 .p{display:inline;width:auto;height:auto;border-radius:0;background:none;color:inherit;font-weight:800}
.sem-d{display:block;margin-top:3px;font-size:12px;font-weight:700;color:var(--muted)}
.sem-d .sd.up{color:#3DD598}.sem-d .sd.dn{color:#FF8A98}
.sem-rr .score{display:flex;flex-direction:column;align-items:flex-end;line-height:1.05}
.sem-rr .score small{font-size:.55em}
.sem-lab{display:block;font-style:normal;font-family:var(--body);font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-top:3px}
.sem-rr .sv{white-space:nowrap}.sem-d{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sem-d{white-space:normal;overflow:visible}.sem-lab{font-size:10px;letter-spacing:.02em}
/* v31 : SEO — questions fréquentes et liens de pied de page */
.seo-faq{display:flex;flex-direction:column;gap:8px;margin-top:22px}
.seo-faq h2{font-size:16px;margin:0 0 2px;color:var(--muted);font-family:var(--body);font-weight:800;letter-spacing:.02em}
.seo-q{padding:0}.seo-q>summary{cursor:pointer;list-style:none;padding:13px 16px;font-weight:700;font-size:14.5px;display:flex;justify-content:space-between;gap:10px}
.seo-q>summary::-webkit-details-marker{display:none}.seo-q>summary::after{content:"+";font-weight:900;color:var(--muted)}.seo-q[open]>summary::after{content:"−"}
.seo-q p{margin:0;padding:0 16px 14px;font-size:14px;line-height:1.5;color:var(--muted)}
.foot-nav{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0 0 12px}
.foot-nav a{font-size:13px;color:var(--muted);text-decoration:none}.foot-nav a:hover{text-decoration:underline}
h1.h-page{margin:0}

/* v32 : clôture programmée et notifications programmées */
.q-close{font-size:11.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#FFB4A8;background:rgba(255,120,100,.12);padding:2px 8px;border-radius:999px}
.q-ca-row{display:flex;gap:8px;align-items:center}
.q-ca-row .inp{flex:1;min-width:0}
.q-ca .note{display:block;margin-top:4px}
.q-remind{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font-weight:700}
.q-remind svg{width:16px;height:16px}
.push-when{margin-bottom:8px}
.push-planned .note small,.push-planned small{display:block;margin-top:2px;opacity:.85}
.push-planned .btn.danger{background:#d64545;color:#fff}
.push-planned li>span,.push-planned .note,.push-planned small{white-space:normal;overflow:visible;text-overflow:clip}

/* v33 : pages de contenu, récaps, présentations, estimation en texte, publicités */
.page-sub{color:var(--muted,#AFC0EA);margin:6px 0 0;font-size:15px;line-height:1.45}
.prose{line-height:1.6;font-size:15.5px}
.prose h2{font:900 18px/1.2 var(--display);font-stretch:112%;text-transform:uppercase;margin:18px 0 6px}
.prose h2:first-child{margin-top:0}
.prose p{margin:0 0 10px}.prose p:last-child{margin-bottom:0}
.prose ul,.prose ol{margin:0 0 10px;padding-left:22px}.prose li{margin:4px 0}
.prose a{color:#9DBDFF;text-decoration:underline;text-underline-offset:2px}
.prose .lead{font-size:16.5px}
.prose .muted{color:var(--muted,#AFC0EA)}
.recap .prose{background:rgba(255,255,255,.04);border-radius:16px;padding:14px 16px}
.recap .note{margin-top:6px}
.fiche-bio h2{font-size:17px}
.est-txt{margin:10px 2px 0;font-size:14px;line-height:1.5;color:var(--muted,#AFC0EA)}
.el-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.el-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;text-align:left;padding:10px 14px;border-radius:16px;background:var(--card,rgba(255,255,255,.06));border:0;color:inherit}
.el-row small{display:block;color:var(--muted,#AFC0EA);font-size:13px}
.el-row svg{width:18px;height:18px;opacity:.6}
.el-cal{list-style:none;margin:0;padding:6px 0;display:grid}
.el-cal a{display:grid;gap:2px;padding:10px 16px;color:inherit;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.07)}
.el-cal li:last-child a{border-bottom:0}
.el-cal span{color:var(--muted,#AFC0EA);font-size:13.5px}
.el-cal .now b{color:#FFD97A}
.nf .nf-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:8px}
.ad-ph{min-height:120px;margin:14px 0;border-radius:16px}
#adLayer{position:absolute;left:0;top:0;width:0;height:0;z-index:4}
.ad-box{position:absolute;transition:opacity .25s;border-radius:16px;overflow:hidden}
.ad-lab{display:block;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.45);padding:0 4px 4px}
.ad-fake{height:250px;display:grid;place-items:center;border-radius:14px;background:repeating-linear-gradient(45deg,rgba(255,255,255,.06) 0 12px,rgba(255,255,255,.03) 12px 24px);border:1px dashed rgba(255,255,255,.25);color:rgba(255,255,255,.6);font-size:13px}
.eimg .est-txt{padding:0 14px 14px;margin-top:10px}
textarea.inp{font:inherit;line-height:1.5}

/* v33b : pied de page réorganisé */
footer.foot{display:block;margin-top:38px;padding:30px 0 22px;font-size:13.5px;line-height:1.5;color:var(--muted)}
.ft-top{display:grid;gap:12px;justify-items:start;margin-bottom:24px}
.ft-logo img{display:block;height:48px;width:auto;opacity:.95}
.ft-tag{margin:0;max-width:40ch;color:var(--muted)}
.ft-top .soc{margin:2px 0 0}
.ft-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px;padding:20px 0;border-top:1px solid rgba(170,198,255,.12);border-bottom:1px solid rgba(170,198,255,.12)}
.ft-cols .ft-col:first-child{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}
.ft-cols .ft-col:first-child .ft-h{grid-column:1/-1}
.ft-col{display:flex;flex-direction:column;gap:2px;min-width:0}
.ft-h{margin:0 0 6px;font:900 12.5px/1.2 var(--display);font-stretch:118%;letter-spacing:.06em;text-transform:uppercase;color:var(--fg)}
.ft-col a{display:block;padding:6px 0;color:var(--muted);text-decoration:none;font-weight:600;font-size:14px}
.ft-col a:hover,.ft-legal a:hover,.ft-legal button:hover{color:var(--fg)}
.ft-bot{display:grid;gap:10px;padding-top:16px}
.ft-legal{display:flex;flex-wrap:wrap;gap:4px 18px}
.ft-legal a,.ft-legal button{background:none;border:0;padding:6px 0;color:var(--muted);font-size:12.5px;font-weight:600;text-decoration:none}
.ft-dis{margin:0;font-size:12px;opacity:.75;max-width:60ch}
@media (min-width:640px){.ft-cols{grid-template-columns:1fr 1fr 1fr;align-items:start}.ft-cols .ft-col:first-child{grid-column:auto;display:flex}}
