/* PronostiK : sombre par défaut, clair si le système le demande. */
:root{
  --bg:#0b1020; --bg2:#172a42; --panel:#121a2e; --panel2:#0d1527; --line:#293652;
  --text:#f3f6ff; --muted:#9eacc8; --accent:#47e3c6; --accent2:#8d7cff; --on-accent:#08151b;
  --best-bg:#123c3a; --best-line:#3d9e94; --warn:#f6c76b; --ok:#5ce0a1; --ko:#ff8f9b;
  color-scheme:dark;
}
@media (prefers-color-scheme:light){
  :root{
    --bg:#f4f6fb; --bg2:#e3ebf7; --panel:#ffffff; --panel2:#f0f3fa; --line:#d6ddec;
    --text:#10192d; --muted:#53617f; --accent:#0e9f87; --accent2:#5b4bd6; --on-accent:#ffffff;
    --best-bg:#dff5f0; --best-line:#52b8a7; --warn:#946200; --ok:#0b7a4f; --ko:#b3303f;
    color-scheme:light;
  }
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);background-image:radial-gradient(ellipse at top right,var(--bg2) 0,transparent 55%);background-repeat:no-repeat;color:var(--text);font:15px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.app{max-width:960px;margin:0 auto;padding-block:20px 40px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
a{color:inherit}
.muted{color:var(--muted)}
.top{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;flex-wrap:wrap;margin-bottom:22px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand strong{display:block;font-size:19px;letter-spacing:-.5px}
.brand i{color:var(--accent);font-style:normal}
.brand small{display:block;color:var(--muted);font-size:10.5px;letter-spacing:1.4px}
.logo{width:42px;height:42px;border-radius:14px;background:linear-gradient(145deg,#76f0b5,#30a978);display:grid;place-items:center;color:#082116;font-size:23px;font-weight:900}
nav{display:flex;gap:6px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:4px}
nav a{text-decoration:none;color:var(--muted);padding:8px 14px;border-radius:10px;font-weight:700;font-size:14px}
nav a[aria-current="page"]{color:var(--on-accent);background:linear-gradient(100deg,var(--accent),var(--accent2))}
nav a:focus-visible,.head:focus-visible,.brand:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.view[hidden]{display:none}
.hero{margin:6px 0 18px}
.eyebrow{margin:0;font-size:11px;letter-spacing:1.7px;color:var(--accent);font-weight:800}
h1{font-size:clamp(26px,5vw,38px);line-height:1.15;letter-spacing:-1px;margin:8px 0;text-wrap:balance}
h2{font-size:17px;margin:0 0 8px}
.section-title{margin:28px 0 10px;font-size:15px;color:var(--muted);letter-spacing:.3px}
.alert{border:1px solid var(--warn);color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,transparent);padding:11px 14px;border-radius:12px;font-size:13px;margin-bottom:14px}
.day{font-size:12px;font-weight:800;letter-spacing:1.2px;color:var(--muted);text-transform:uppercase;margin:18px 0 8px}
.day:first-child{margin-top:0}
.list{display:flex;flex-direction:column;gap:10px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:18px;overflow:hidden}
.head{all:unset;box-sizing:border-box;display:block;width:100%;padding:14px 16px;cursor:pointer}
.meta{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:12px;color:var(--muted);margin-bottom:6px}
.chip{font-size:10.5px;border-radius:6px;padding:2px 7px;background:var(--panel2);border:1px solid var(--line);color:var(--muted)}
.chip.warn{color:var(--warn);border-color:var(--warn)}
.teams{display:flex;flex-wrap:wrap;gap:2px 8px;align-items:baseline;font-size:17px;font-weight:800;letter-spacing:-.3px;margin-bottom:10px;overflow-wrap:anywhere}
.teams span{font-size:12px;color:var(--muted);font-weight:700}
.probs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.cell{background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:9px 6px 8px;text-align:center;min-width:0}
.cell.best{background:var(--best-bg);border-color:var(--best-line)}
.cell .k{font-size:11px;color:var(--muted);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cell .v{font-size:23px;font-weight:850;letter-spacing:-.8px;font-variant-numeric:tabular-nums}
.bar{height:4px;border-radius:3px;background:var(--line);margin-top:6px;overflow:hidden}
.bar span{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent2))}
.detail{padding:0 16px 16px;border-top:1px solid var(--line)}
.detail[hidden]{display:none}
.detail h3{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin:14px 0 6px}
.kv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.kv div{background:var(--panel2);border:1px solid var(--line);border-radius:10px;padding:8px;text-align:center;min-width:0}
.kv small{display:block;color:var(--muted);font-size:11px}
.kv strong{font-size:16px;font-variant-numeric:tabular-nums}
.forms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.form-list{display:flex;flex-direction:column;gap:4px;font-size:12.5px}
.form-list p{margin:0 0 2px;font-weight:700;font-size:13px}
.form-row{display:flex;gap:8px;align-items:center;color:var(--muted)}
.dot{width:20px;height:20px;border-radius:6px;display:inline-grid;place-items:center;font-size:11px;font-weight:800;color:#fff;flex:none}
.dot.V{background:#1f9d6b}.dot.N{background:#7b8599}.dot.D{background:#cf4a5a}
.note{font-size:12px;color:var(--muted);margin:12px 0 0}
.recent{display:flex;flex-direction:column;gap:8px}
.rrow{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:10px 14px;font-size:13.5px}
.rrow .sc{font-weight:800;font-variant-numeric:tabular-nums}
.rrow .res{font-weight:800}
.ok{color:var(--ok)}.ko{color:var(--ko)}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:18px;margin-bottom:14px}
.panel h2{font-size:18px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:12px 0}
.stat{background:var(--panel2);border:1px solid var(--line);border-radius:14px;padding:12px}
.stat b{display:block;font-size:clamp(18px,5.4vw,24px);white-space:nowrap;letter-spacing:-.6px;font-variant-numeric:tabular-nums;color:var(--text)}
.stat span{font-size:12px;color:var(--muted)}
.table{overflow-x:auto;border:1px solid var(--line);border-radius:12px;margin-top:10px}
table{border-collapse:collapse;width:100%;font-size:13px}
th,td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);white-space:nowrap;font-variant-numeric:tabular-nums}
th{font-size:11px;letter-spacing:.8px;text-transform:uppercase;color:var(--muted)}
tr:last-child td{border-bottom:0}
.prose p{color:var(--muted);margin:0 0 14px}
.prose h2{margin-top:6px}
.empty{border:1px dashed var(--line);border-radius:16px;padding:22px;text-align:center;color:var(--muted)}
footer{margin-top:34px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}
footer p{margin:0 0 6px}
@media (max-width:480px){
  .forms{grid-template-columns:1fr}
  .cell .v{font-size:21px}
  .rrow{grid-template-columns:1fr auto}
  .rrow .res{grid-column:2}
}
@media (prefers-reduced-motion:no-preference){.bar span{transition:width .4s ease}}

.chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin:0 0 14px;scrollbar-width:thin}
.chip-btn{all:unset;box-sizing:border-box;cursor:pointer;white-space:nowrap;border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:999px;padding:7px 13px;font-size:13px;font-weight:700}
.chip-btn i{font-style:normal;font-weight:800;margin-left:4px;color:var(--text);opacity:.7}
.chip-btn[aria-pressed="true"]{color:var(--on-accent);background:linear-gradient(100deg,var(--accent),var(--accent2));border-color:transparent}
.chip-btn[aria-pressed="true"] i{color:var(--on-accent)}
.chip-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* v2 : barre unique + lecture rapide */
.read{margin:0 0 8px;font-size:13px;color:var(--muted)}
.tag{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.3px;padding:2px 8px;border-radius:999px;border:1px solid var(--line);background:var(--panel2);color:var(--text);margin-right:6px}
.tag.ok{border-color:var(--best-line);background:var(--best-bg)}
.seg{display:flex;gap:3px;height:10px;margin-bottom:10px}
.seg span{display:block;border-radius:5px;min-width:4px;opacity:.45}
.seg .s0{background:var(--accent)}.seg .s1{background:var(--muted)}.seg .s2{background:var(--accent2)}
.seg .lead{opacity:1}
.cell .v{order:-1}.cell{display:flex;flex-direction:column;gap:2px}
.cell .k{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cell .k b{color:var(--text)}
.more{display:block;text-align:right;font-size:11.5px;color:var(--muted);margin-top:8px}
.head[aria-expanded="true"] .more{opacity:.6}

/* v3 : blasons et face-à-face */
.card{border-left:4px solid var(--lg,var(--accent));box-shadow:0 10px 30px -18px #000}
.lgname{display:inline-flex;align-items:center;gap:7px;font-weight:700}
.lgname i{width:8px;height:8px;border-radius:50%}
.match{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center;margin:8px 0 14px}
.side{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;min-width:0}
.side .nm{font-size:15px;font-weight:800;letter-spacing:-.2px;line-height:1.2;overflow-wrap:anywhere}
.crest,.mono{width:56px;height:56px;flex:none}
.crest{object-fit:contain;filter:drop-shadow(0 5px 8px rgba(0,0,0,.35))}
.mono{border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:900;font-size:19px;letter-spacing:-.5px;box-shadow:inset 0 -6px 12px rgba(0,0,0,.25),0 5px 10px -4px rgba(0,0,0,.5)}
.side.fav .crest,.side.fav .mono{filter:drop-shadow(0 0 12px color-mix(in srgb,var(--accent) 70%,transparent))}
.side.fav .nm{color:var(--accent)}
.mid{display:flex;flex-direction:column;align-items:center;gap:2px}
.mid strong{font-size:18px;font-variant-numeric:tabular-nums}
.mid small{font-size:10.5px;letter-spacing:2px;color:var(--muted);font-weight:800}
.cell .v{font-size:26px}
.cell.best{box-shadow:0 0 0 1px var(--best-line),0 8px 20px -10px var(--accent)}
.teams{display:none}

/* v4 : barre de jours + à retenir */
.days{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px;margin:0 0 12px;scrollbar-width:thin}
.day-btn{all:unset;box-sizing:border-box;cursor:pointer;flex:none;min-width:64px;display:flex;flex-direction:column;align-items:center;gap:1px;padding:8px 10px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--muted)}
.day-btn span{font-size:11px;font-weight:800;letter-spacing:.6px;text-transform:uppercase}
.day-btn b{font-size:20px;color:var(--text);line-height:1.1}
.day-btn i{font-style:normal;font-size:10.5px;text-transform:none}
.day-btn[aria-pressed="true"]{background:linear-gradient(160deg,var(--accent),var(--accent2));border-color:transparent;color:var(--on-accent)}
.day-btn[aria-pressed="true"] b{color:var(--on-accent)}
.day-btn:focus-visible,.spot-tile:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.spot-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-bottom:14px}
.spot-tile{display:flex;flex-direction:column;gap:3px;text-decoration:none;padding:12px 14px;border-radius:16px;border:1px solid var(--best-line);background:var(--best-bg)}
.spot-tile small{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--accent);font-weight:800}
.spot-tile strong{font-size:15px}
.spot-tile span{font-size:13px;color:var(--muted)}
.card.flash{outline:2px solid var(--accent);outline-offset:3px}

.mkline{margin:10px 0 0;font-size:12px;color:var(--muted)}
.mkline b{color:var(--text)}

/* v5 : affiches + page par match */
.posters{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.poster{display:block;text-decoration:none;color:inherit;background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--lg,var(--accent));border-radius:18px;padding:14px 16px 14px;box-shadow:0 10px 30px -18px #000;transition:transform .15s ease,border-color .15s ease}
.poster:hover{transform:translateY(-2px);border-color:var(--lg,var(--accent))}
.poster:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.poster .meta{margin-bottom:4px}
.ptime{font-weight:800;color:var(--text);font-variant-numeric:tabular-nums}
.poster .match{margin:10px 0 12px}
.poster .crest,.poster .mono{width:60px;height:60px}
.poster .side .nm{font-size:14.5px}
.poster .mid small{font-size:13px;letter-spacing:2px}
.seg.mini{height:6px;margin-bottom:10px}
.pfoot{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0;font-size:13px}
.pfav{color:var(--muted);text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pfav b{color:var(--text);font-size:15px}
.back{display:inline-block;margin:0 0 14px;color:var(--muted);text-decoration:none;font-weight:700;font-size:14px}
.back:hover{color:var(--text)}
.mpage{border-left:0;border-top:4px solid var(--lg,var(--accent))}
.mpage .detail{border-top:1px solid var(--line)}
.match.big .crest,.match.big .mono{width:88px;height:88px}
.match.big .side .nm{font-size:18px}
.match.big .mid strong{font-size:22px}
@media (max-width:480px){.match.big .crest,.match.big .mono{width:72px;height:72px}}

/* v6 : onglets de la page match */
.rank{font-size:12px;color:var(--muted);font-weight:600}
.tabs{display:flex;gap:6px;overflow-x:auto;margin:14px 0 6px;padding:4px;background:var(--panel2);border:1px solid var(--line);border-radius:14px;scrollbar-width:none}
.tab{all:unset;box-sizing:border-box;cursor:pointer;white-space:nowrap;padding:8px 14px;border-radius:10px;font-weight:700;font-size:14px;color:var(--muted)}
.tab[aria-selected="true"]{background:var(--panel);color:var(--text);box-shadow:0 0 0 1px var(--line)}
.tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.tabpanel[hidden]{display:none}
.lecture{font-size:15.5px;line-height:1.65;margin:12px 0 4px}
.cmp-head{display:grid;grid-template-columns:1fr 1.4fr 1fr;font-weight:800;font-size:13px;margin:12px 0 4px}
.cmp-head span:last-child{text-align:right}
.cmp{display:grid;grid-template-columns:1fr 1.4fr 1fr;align-items:center;padding:8px 0;border-bottom:1px solid var(--line);font-size:13.5px}
.cmp span{text-align:center;color:var(--muted);font-size:12.5px}
.cmp b{font-variant-numeric:tabular-nums;font-size:15px}
.cmp b:last-child{text-align:right}
.cmp b.win{color:var(--accent)}
.h2h{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.h2h .rrow{grid-template-columns:auto 1fr;text-align:right}

/* v7 : page match visuelle */
.i{width:18px;height:18px;flex:none;vertical-align:-3px}
.tab{display:inline-flex;align-items:center;gap:6px}
.detail h3{display:flex;align-items:center;gap:8px}
.insights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.ins{background:var(--panel2);border:1px solid var(--line);border-radius:16px;padding:12px;display:flex;flex-direction:column;gap:2px;min-width:0}
.ins .ic{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);margin-bottom:6px}
.ins .ic .i{width:20px;height:20px}
.ins small{font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;font-weight:700}
.ins b{font-size:20px;letter-spacing:-.4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ins em{font-style:normal;color:var(--muted);font-size:12.5px}
.ins.ok .ic{background:color-mix(in srgb,var(--ok) 18%,transparent);color:var(--ok)}
.ins.warn .ic{background:color-mix(in srgb,var(--warn) 18%,transparent);color:var(--warn)}
.rings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;text-align:center}
.ring{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
.ring .ring-in{width:78px;height:78px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(closest-side,var(--panel) 72%,transparent 73% 100%),conic-gradient(var(--accent) calc(var(--v)*1%),var(--line) 0)}
.ring b{font-size:18px}
.ring small{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.vs3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.vs3>div{display:flex;flex-direction:column;gap:5px}
.vs3 small{font-weight:800}
.vs3 em{font-style:normal;font-size:12.5px;color:var(--muted)}
.mini2{height:7px;border-radius:4px;background:var(--line);overflow:hidden}
.mini2 span{display:block;height:100%;background:var(--accent)}
.mini2.mk span{background:var(--accent2)}
.legend{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:6px;margin:8px 0 0}
.legend i{width:10px;height:10px;border-radius:3px;display:inline-block}
.lg-a{background:var(--accent)}.lg-b{background:var(--accent2);margin-left:10px}
.odds3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.odds3 div{background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:8px;text-align:center}
.odds3 small{display:block;color:var(--muted);font-weight:800}
.odds3 b{font-size:18px}
.duel-head{display:flex;justify-content:space-between;align-items:center;margin:14px 0 6px;font-weight:800;font-size:14px}
.duel-head span{display:flex;align-items:center;gap:8px}
.duel-head .crest,.duel-head .mono{width:28px;height:28px;font-size:11px}
.ranks,.wdl{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid var(--line)}
.ranks>span,.wdl>span{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12.5px}
.ranks div:last-child,.wdl div:last-child{text-align:right}
.ranks b{font-size:24px}
.ranks small{display:block;color:var(--muted);font-size:12px}
.wdl div{display:flex;gap:5px}
.wdl div:last-child{justify-content:flex-end}
.pill{min-width:28px;height:26px;border-radius:8px;display:inline-grid;place-items:center;font-weight:800;font-size:13px;color:#fff;padding:0 6px}
.pill.w{background:#1f9d6b}.pill.d{background:#7b8599}.pill.l{background:#cf4a5a}
.duel{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:4px 10px;padding:9px 0 10px}
.duel b{font-size:16px;font-variant-numeric:tabular-nums;min-width:40px}
.duel b.r{text-align:right}
.duel b.win{color:var(--accent)}
.duel .dl{display:flex;align-items:center;justify-content:center;gap:6px;color:var(--muted);font-size:12.5px;text-align:center}
.duel .dl .i{width:16px;height:16px}
.dbar{grid-column:1/-1;display:flex;gap:4px;height:6px}
.dbar span{border-radius:3px;background:var(--line)}
.dbar .da{background:color-mix(in srgb,var(--accent) 45%,var(--line))}
.dbar .db{background:color-mix(in srgb,var(--accent2) 45%,var(--line))}
.dbar .da.win{background:var(--accent)}.dbar .db.win{background:var(--accent2)}
.frow{display:flex;flex-direction:column;gap:8px;padding:12px 0;border-bottom:1px solid var(--line)}
.fteam{display:flex;align-items:center;gap:8px}
.fteam .crest,.fteam .mono{width:26px;height:26px;font-size:10px}
.fdots{display:flex;gap:10px}
.fd{display:flex;flex-direction:column;align-items:center;gap:3px}
.fd .dot{width:34px;height:34px;border-radius:10px;font-size:14px}
.fd small{font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.h2h-sum{display:flex;justify-content:space-between;align-items:center;margin-top:14px}
.h2h-sum .crest,.h2h-sum .mono{width:36px;height:36px;font-size:12px}
.h2h-bar{display:flex;gap:4px;height:8px;margin:10px 0 6px}
.h2h-bar span{border-radius:4px}
.h2h-bar .a{background:var(--accent)}.h2h-bar .d{background:var(--line)}.h2h-bar .b{background:var(--accent2)}
.h2h-leg{display:flex;justify-content:space-between;font-size:13px;font-weight:700}
.h2h-leg .a{color:var(--accent)}.h2h-leg .b{color:var(--accent2)}
.hrow{display:grid;grid-template-columns:1fr auto 1fr;grid-template-rows:auto auto;gap:2px 10px;align-items:center;background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:8px 12px}
.hrow small{grid-column:1/-1;text-align:center;color:var(--muted);font-size:11.5px}
.hrow span:first-of-type{text-align:right}
.hrow b{font-variant-numeric:tabular-nums}
.note .i{width:14px;height:14px}

.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.tile{border-radius:16px;padding:14px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;border:1px solid var(--line);background:linear-gradient(135deg,color-mix(in srgb,var(--tc) 22%,var(--panel2)),var(--panel2))}
.tile b{font-size:26px;letter-spacing:-.8px;font-variant-numeric:tabular-nums}
.tile .tl{white-space:nowrap;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;padding:5px 9px;border-radius:10px;border:1px solid color-mix(in srgb,var(--tc) 55%,transparent);color:color-mix(in srgb,var(--tc) 80%,var(--text))}
.t1{--tc:#22c55e}.t2{--tc:#14b8a6}.t3{--tc:#3b82f6}.t4{--tc:#a855f7}.t5{--tc:#f59e0b}.t6{--tc:#eab308}

/* v8 : logo et emblèmes des championnats */
.logo-img{width:48px;height:48px;display:block;filter:drop-shadow(0 4px 12px rgba(47,107,255,.35))}
.chips{align-items:center}
.chip-btn.lg-chip,.chip-btn.lg-all{display:inline-flex;align-items:center;gap:8px;height:52px;padding:6px 12px;border-radius:16px}
.lg-emb{width:40px;height:40px;border-radius:10px;background:#fff;display:grid;place-items:center;overflow:hidden}
.lg-emb img{width:32px;height:32px;object-fit:contain}
.chip-btn[aria-pressed="true"] .lg-emb{box-shadow:0 0 0 2px var(--on-accent)}
.lg-mini{width:24px;height:24px;border-radius:7px;background:#fff;display:inline-grid;place-items:center;overflow:hidden;flex:none}
.lg-mini img{width:19px;height:19px;object-fit:contain}
.lgname{gap:8px}

/* v9 : titre lumineux */
.brand .wordmark{font-family:"Exo 2",Inter,system-ui,sans-serif;font-style:italic;font-weight:900;font-size:26px;letter-spacing:.5px;line-height:1;
  background:linear-gradient(90deg,#7fe9ff 0%,#3fa2ff 45%,#8d7cff 100%);-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 6px rgba(63,162,255,.55)) drop-shadow(0 0 16px rgba(141,124,255,.35))}
.brand small{margin-top:4px;color:#8fb4e8}
@media (prefers-color-scheme:light){.brand .wordmark{filter:drop-shadow(0 0 4px rgba(63,162,255,.35))}}

/* v10 : bannière d'accueil */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero-banner{margin:0 0 14px}
.banner{display:block;width:100%;max-width:560px;margin:0 auto;height:auto;border-radius:22px;border:1px solid var(--line);box-shadow:0 18px 40px -24px rgba(47,107,255,.6)}
.fresh{font-size:12.5px;margin:8px 2px 0;text-align:center}

/* v11 : retouches */
.spot-tile{flex-direction:row;align-items:center;justify-content:space-between;gap:12px}
.spot-txt{display:flex;flex-direction:column;gap:3px;min-width:0}
.spot-txt strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.spot-pct{font-family:"Exo 2",Inter,sans-serif;font-style:italic;font-weight:900;font-size:40px;line-height:1;letter-spacing:-1px;flex:none;
  background:linear-gradient(90deg,#7fe9ff,#3fa2ff 55%,#8d7cff);-webkit-background-clip:text;background-clip:text;color:transparent}
.spot-pct i{font-size:22px;font-style:italic}
@media (max-width:600px){.banner{max-width:78%}}

/* v12 : matchs de la saison */
button.pill{all:unset;box-sizing:border-box;cursor:pointer;min-width:28px;height:26px;border-radius:8px;display:inline-grid;place-items:center;font-weight:800;font-size:13px;color:#fff;padding:0 6px}
button.pill.w{background:#1f9d6b}button.pill.d{background:#7b8599}button.pill.l{background:#cf4a5a}
button.pill.on{outline:2px solid var(--text);outline-offset:2px}
button.pill:focus-visible,.steam:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.season{margin:12px 0 4px;background:var(--panel2);border:1px solid var(--line);border-radius:16px;padding:10px}
.steams{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:8px}
.steam{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;border-radius:10px;font-weight:700;font-size:13.5px;color:var(--muted);border:1px solid transparent;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.steam .crest,.steam .mono{width:22px;height:22px;font-size:9px;flex:none}
.steam[aria-pressed="true"]{background:var(--panel);color:var(--text);border-color:var(--line)}
.slist{display:flex;flex-direction:column}
.srow{display:grid;grid-template-columns:auto 52px 1fr auto;align-items:center;gap:10px;padding:8px 4px;border-bottom:1px solid var(--line);font-size:14px}
.srow[hidden]{display:none}
.srow:last-child{border-bottom:0}
.srow .dot{width:26px;height:26px;border-radius:8px;font-size:12px}
.srow small{color:var(--muted);font-size:12px}
.sopp{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.sopp .i{width:15px;height:15px;color:var(--muted);flex:none}
.srow b{font-variant-numeric:tabular-nums}
.sempty{margin:8px 4px;font-size:13px}

/* v13 : classement */
.thead,.trow{display:grid;grid-template-columns:22px minmax(0,1fr) 46px 22px 32px 28px;align-items:center;gap:6px}
.thead{font-size:11px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--muted);padding:12px 8px 6px}
.thead span:nth-child(n+4){text-align:center}
.table-lg{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.trow{padding:7px 8px;border-bottom:1px solid var(--line);font-size:13.5px;border-left:3px solid transparent}
.trow:last-child{border-bottom:0}
.trow.z-top{border-left-color:#3b82f6}.trow.z-bot{border-left-color:#ef4444}
.trow.me-h{background:color-mix(in srgb,var(--accent) 18%,transparent)}
.trow.me-a{background:color-mix(in srgb,var(--accent2) 22%,transparent)}
.trow.me-h b,.trow.me-a b{color:var(--text)}
.tr{font-weight:800;color:var(--muted);text-align:center;font-variant-numeric:tabular-nums}
.tt{display:flex;align-items:center;gap:8px;min-width:0}
.tt b{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tt .crest,.tt .mono{width:20px;height:20px;font-size:8px;flex:none}
.tt{gap:6px}
.tf{display:flex;gap:2px;justify-content:center}
.tf i{width:7px;height:7px;border-radius:2px;display:block}
.tf i.V{background:#1f9d6b}.tf i.N{background:#7b8599}.tf i.D{background:#cf4a5a}
.tn{text-align:center;color:var(--muted);font-variant-numeric:tabular-nums}
.tp{text-align:center;font-weight:900;font-variant-numeric:tabular-nums}
.tlegend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:10px}
.tlegend span{display:flex;align-items:center;gap:6px}
.lz{width:10px;height:10px;border-radius:3px;display:inline-block}.lz.top{background:#3b82f6}.lz.bot{background:#ef4444}
@media (max-width:360px){.tf{display:none}.thead span:nth-child(3){display:none}.thead,.trow{grid-template-columns:22px minmax(0,1fr) 22px 32px 28px}}

/* v14 : chat */
.ask{display:flex;align-items:center;justify-content:center;gap:8px;margin:16px 0 4px;padding:12px;border-radius:14px;text-decoration:none;font-weight:800;color:var(--on-accent);background:linear-gradient(100deg,var(--accent),var(--accent2))}
.ask .i{width:20px;height:20px}
.chat-head{display:flex;align-items:center;gap:12px;margin:4px 0 14px}
.chat-head h1{font-size:22px;margin:0}
.chat-head p{margin:2px 0 0;font-size:13px}
.chat-head p a{color:var(--accent)}
.chat-av{width:46px;height:46px;border-radius:14px;background:url(assets/favicon-48.png) center/cover,#0b1020;box-shadow:0 0 0 1px var(--line),0 6px 16px -8px rgba(47,107,255,.7);flex:none}
.chat-log{display:flex;flex-direction:column;gap:10px;min-height:280px;max-height:58vh;overflow-y:auto;padding:14px;background:var(--panel);border:1px solid var(--line);border-radius:18px}
.bubble{max-width:85%;padding:10px 14px;border-radius:16px;font-size:15px;line-height:1.5;overflow-wrap:anywhere}
.bubble.me{align-self:flex-end;background:linear-gradient(100deg,var(--accent),var(--accent2));color:var(--on-accent);border-bottom-right-radius:6px;font-weight:600}
.bubble.ai{align-self:flex-start;background:var(--panel2);border:1px solid var(--line);border-bottom-left-radius:6px}
.bubble.err{border-color:var(--warn);color:var(--warn)}
.typing{display:flex;gap:5px}
.typing i{width:8px;height:8px;border-radius:50%;background:var(--muted);animation:blink 1s infinite}
.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}
@keyframes blink{0%,100%{opacity:.25}50%{opacity:1}}
@media (prefers-reduced-motion:reduce){.typing i{animation:none}}
.chat-hello{margin:auto;text-align:center;color:var(--muted);max-width:280px}
.chat-hello .i{width:36px;height:36px;color:var(--accent)}
.chat-sugg{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.sugg{all:unset;box-sizing:border-box;cursor:pointer;padding:8px 12px;border-radius:999px;border:1px solid var(--line);background:var(--panel);font-size:13.5px;color:var(--text)}
.sugg:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.chat-form{display:flex;gap:8px;margin-top:10px}
.chat-form input{flex:1;min-width:0;font:inherit;font-size:16px;padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:var(--panel);color:var(--text)}
.chat-form input:focus{outline:2px solid var(--accent);outline-offset:1px}
.chat-form button{font:inherit;font-weight:800;padding:0 18px;border:0;border-radius:14px;cursor:pointer;color:var(--on-accent);background:linear-gradient(100deg,var(--accent),var(--accent2))}
.chat-err{color:var(--ko);font-size:13.5px}
nav{flex-wrap:nowrap}
nav a{padding:8px 12px}

/* v15 : téléchargement de l'application */
.get-app{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;margin:0 0 14px;padding:12px 14px;border-radius:16px;border:1px solid var(--best-line);background:linear-gradient(100deg,color-mix(in srgb,var(--accent) 20%,var(--panel)),color-mix(in srgb,var(--accent2) 20%,var(--panel)))}
.get-app[hidden]{display:none}
.get-app img{width:40px;height:40px;border-radius:10px;flex:none}
.get-app b{display:block;font-size:15px}
.get-app small{color:var(--muted);font-size:12.5px}
.get-how{text-decoration:underline;color:var(--accent)}
.get-help{font-size:14px}
.get-help p{margin:0 0 6px}

/* v16 : résumé de la journée */
.rkpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:6px}
.rkpi{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:12px;text-align:center}
.rkpi b{display:block;font-family:"Exo 2",Inter,sans-serif;font-style:italic;font-weight:900;font-size:30px;line-height:1.1;background:linear-gradient(90deg,#7fe9ff,#3fa2ff 55%,#8d7cff);-webkit-background-clip:text;background-clip:text;color:transparent}
.rkpi b i{font-size:18px}
.rkpi span{font-size:12px;color:var(--muted)}
.rh{display:flex;align-items:center;gap:8px;font-size:17px;margin:22px 0 10px}
.rgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:10px}
.rcard{display:block;text-decoration:none;color:inherit;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:12px 14px}
.rcard.sur{border-left:4px solid var(--warn)}.rcard.ok{border-left:4px solid var(--ok)}
.rtop{display:flex;align-items:center;gap:8px;font-size:12.5px;margin-bottom:8px}
.rbadge{margin-left:auto;font-size:13px;padding:2px 8px;border-radius:999px;background:var(--panel2);border:1px solid var(--line)}
.rcard.sur .rbadge{color:var(--warn);border-color:var(--warn)}.rcard.ok .rbadge{color:var(--ok);border-color:var(--ok)}
.rmatch{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;font-weight:700;font-size:14px}
.rmatch span{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.rmatch span:last-child{justify-content:flex-end}
.rmatch .crest,.rmatch .mono,.rteam .crest,.rteam .mono{width:22px;height:22px;font-size:9px;flex:none}
.rscore{font-size:18px;font-variant-numeric:tabular-nums}
.rnote{margin:8px 0 0;font-size:13px;color:var(--muted)}
.rlist{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.rteam{display:flex;align-items:center;gap:8px;padding:9px 12px;border-bottom:1px solid var(--line);background:var(--panel);font-size:14px}
.rteam:last-child{border-bottom:0}
.rteam b{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.rser,.rmv,.rpts{font-weight:800;font-size:13px;white-space:nowrap}
.rser.good,.rmv.up{color:var(--ok)}.rser.bad,.rmv.down{color:var(--ko)}
.lgdot{width:8px;height:8px;border-radius:50%;display:inline-block;flex:none}
nav a{padding:8px 10px;font-size:13.5px}

/* v17 : autres marchés */
.mkt{background:var(--panel2);border:1px solid var(--line);border-radius:16px;padding:12px;margin-top:12px}
.mkt-h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px;font-weight:800;font-size:14px}
.mkt-h span:first-child{display:flex;align-items:center;gap:6px;min-width:0}
.fiab{font-size:11px;font-weight:800;padding:3px 8px;border-radius:999px;white-space:nowrap;border:1px solid}
.fiab.ok{color:var(--ok);border-color:var(--ok)}.fiab.mid{color:var(--warn);border-color:var(--warn)}
.mk2,.mk3{display:grid;gap:8px}.mk2{grid-template-columns:1fr 1fr}.mk3{grid-template-columns:repeat(3,minmax(0,1fr))}
.mk2>div,.mk3>div{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:9px 6px;text-align:center;min-width:0}
.mk2>div.on,.mk3>div.on{background:var(--best-bg);border-color:var(--best-line)}
.mk2 b,.mk3 b{display:block;font-size:20px;font-variant-numeric:tabular-nums}
.mk2 small,.mk3 small{display:block;color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fiab.low{color:var(--ko);border-color:var(--ko)}
.mknote{margin:8px 2px 0;font-size:12px;color:var(--muted)}
/* Ligue des champions */
.chip.new{color:#38bdf8;border-color:#38bdf8;font-weight:700}
.trow.z-mid{border-left-color:#f59e0b}.lz.mid{background:#f59e0b}
/* Résultats */
.mode{display:flex;gap:6px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:4px;margin:0 0 12px}
.mode button{all:unset;box-sizing:border-box;cursor:pointer;flex:1;text-align:center;padding:9px 10px;border-radius:10px;font-weight:800;font-size:14px;color:var(--muted)}
.mode button[aria-pressed="true"]{background:linear-gradient(100deg,var(--accent),var(--accent2));color:var(--on-accent)}
.mode button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.fscore{font-size:30px;font-weight:900;letter-spacing:1px;font-variant-numeric:tabular-nums;white-space:nowrap}
.rcells{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:2px 0 10px}
.rc{display:flex;flex-direction:column;align-items:center;gap:1px;padding:7px 4px;border:1px solid var(--line);border-radius:12px;background:var(--panel2)}
.rc small{font-size:11px;font-weight:800;color:var(--muted)}
.rc b{font-size:16px}
.rc em{font-style:normal;font-size:11.5px;color:var(--muted)}
.rc.hit{border-color:var(--best-line);background:var(--best-bg)}
.rc.hit small{color:var(--text)}
.rc.ours b::after{content:" ★";font-size:11px;color:var(--accent)}
.tag.ko{border-color:#ef444466;color:#fca5a5}
.poster.result .tag{white-space:nowrap}
.crest.flag{object-fit:cover;border-radius:50%;box-shadow:0 0 0 2px rgba(255,255,255,.18),0 6px 14px rgba(0,0,0,.35);filter:none}

.xi{background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-bottom:10px}
.xi-h{display:flex;align-items:center;gap:8px;margin-bottom:2px}
.xi-f{margin-left:auto;font-size:12px;font-weight:700;padding:2px 8px;border-radius:999px;border:1px solid var(--line)}
.xi-l{display:grid;grid-template-columns:72px 1fr;gap:8px;margin-top:6px;font-size:13.5px}
.xi-l span{color:var(--muted);font-size:12px;padding-top:1px}
.xi-l p{margin:0}

.pitch{position:relative;margin:10px 0;aspect-ratio:68/138;border-radius:12px;overflow:hidden;background:repeating-linear-gradient(180deg,#2f8f4e 0 6.25%,#2a8447 6.25% 12.5%);border:2px solid rgba(255,255,255,.55)}
.pt-mid{position:absolute;left:0;right:0;top:50%;border-top:2px solid rgba(255,255,255,.5)}
.pt-circle{position:absolute;left:50%;top:50%;width:28%;aspect-ratio:1;border:2px solid rgba(255,255,255,.5);border-radius:50%;transform:translate(-50%,-50%)}
.pt-box{position:absolute;left:22%;right:22%;height:9%;border:2px solid rgba(255,255,255,.5)}
.pt-box.b{bottom:-2px;border-bottom:0}.pt-box.t{top:-2px;border-top:0}
.pl{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;width:24%;text-align:center}
.pl-n{width:30px;height:30px;border-radius:50%;background:var(--tc);color:var(--tt,#fff);font-weight:800;font-size:13px;display:grid;place-items:center;border:2px solid rgba(0,0,0,.25);box-shadow:0 2px 6px rgba(0,0,0,.35)}
.pl-name{margin-top:3px;color:#fff;font-size:11px;font-weight:700;line-height:1.15;text-shadow:0 1px 3px rgba(0,0,0,.8);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}

a.pl{text-decoration:none;color:inherit}
a.pl:active .pl-n{transform:scale(.92)}

.rvs{display:flex;align-items:center;justify-content:center;gap:14px;margin:12px 0 4px;background:var(--panel2);border:1px solid var(--line);border-radius:14px;padding:12px}
.rvs div{display:flex;flex-direction:column;align-items:center;min-width:110px}
.rvs b{font-size:26px;font-variant-numeric:tabular-nums}.rvs span{color:var(--muted);font-size:12.5px}.rvs em{font-style:normal;color:var(--muted);font-size:13px}
