@charset "UTF-8";

:root{
  /* Fantasy Jerseys brand palette */
  --color-green-deep:#1F5C45; --color-green-button:#1F8F62; --color-green-bright:#2E9C6F; --color-mint:#4ED199; --color-offwhite:#E8E8EA;
  --font-display:Anton,Impact,"Arial Narrow",sans-serif; --font-label:var(--font-body); --font-card-label:Oswald,"Arial Narrow",sans-serif; --font-body:Outfit,ui-rounded,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  --radius:12px; --r-ctl:8px; --blur:none;
  /* window and position colours */
  --wn:#E8590C; --pp:#C98A00; --sr:#0F8A7E; --hr:#6B4FD8; --ov:rgba(16,32,26,.5);
  --qb:#C2255C; --rb:#0F8A7E; --wr:#1F6FD6; --te:#D9480F; --pk:#6B4FD8; --pros:#5E8C00; --pos-ink:#fff;

  /* LIGHT: white page, white cards, deep-green accents */
  /* depth (Adam, 2 Nov 2026: "more depth and contrast"): three visible levels, page < panel < inset, no shadows at rest */
  --bg:#EBF1ED;
  --page:#EBF1ED;
  --panel:#FFFFFF; --panel-solid:#FFFFFF;
  --panel-border:1px solid #D3DFD7;
  --panel-shadow:none;
  --chrome:#FFFFFF;
  --surface:#FFFFFF; --raise:#EDF3EF; --field:#FFFFFF; --hover:rgba(16,32,26,.035); --th:#EDF3EF;
  --ink:#0F1F19; --muted:rgba(16,32,26,.78); --faint:rgba(16,32,26,.66); --line:rgba(16,32,26,.11); --ctl:rgba(16,32,26,.30);
  --accent:#1F8F62; --accent-ink:#FFFFFF; --accent-text:#1A7A53; --accent-soft:rgba(31,143,98,.10); --accent-border:rgba(31,143,98,.45);
  --focus:#1F8F62; --good:#1A7A53; --bad:#C2352B; --warn:#B7791F;
  --btn-primary:#1F8F62; --btn-primary-hover:#2E9C6F; --chart-line:#1F8F62;
  --scroll:rgba(16,32,26,.2); --scroll-hover:rgba(16,32,26,.35);
  --tip-bg:rgba(16,32,26,.9); --tip-ink:#fff;
  color-scheme:light;
}
/* DARK: deep emerald page, emerald glass panels, mint accents. Light is the default; dark only when chosen. */
:root[data-theme="dark"]{
  --wn:#FF8A4C; --pp:#F2B233; --sr:#2FC4B3; --hr:#9D8FFF; --ov:rgba(255,255,255,.55);
  --qb:#FF6A98; --rb:#2FC4B3; --wr:#62A2FF; --te:#FF8A4D; --pk:#A391FF; --pros:#A6DC4A; --pos-ink:#04140F;
  --bg:#03140F;
  --page:#03140F;
  --panel:#0B2920; --panel-solid:#0B2920;
  --panel-border:1px solid rgba(255,255,255,.11);
  --panel-shadow:none;
  --chrome:#0B2920;
  --surface:#0B2920; --raise:#123629; --field:rgba(0,0,0,.24); --hover:rgba(255,255,255,.04); --th:#123629;
  --ink:#FFFFFF; --muted:rgba(255,255,255,.78); --faint:rgba(255,255,255,.64); --line:rgba(255,255,255,.085); --ctl:rgba(255,255,255,.32);
  --accent:#4ED199; --accent-ink:#04140F; --accent-text:#4ED199; --accent-soft:rgba(78,209,153,.16); --accent-border:rgba(78,209,153,.45);
  --focus:#4ED199; --good:#4ED199; --bad:#FF7B72; --warn:#F2B233;
  --btn-primary:#1F8F62; --btn-primary-hover:#2E9C6F; --chart-line:#2E9C6F;
  --scroll:rgba(255,255,255,.18); --scroll-hover:rgba(255,255,255,.3);
  --tip-bg:rgba(0,0,0,.8); --tip-ink:#EDE8E0;
  color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 var(--font-body)}
.wrap{max-width:1180px;margin:0 auto;padding-inline:20px;padding-block:0 56px}
h1,h2,h3{font-family:var(--font-body);font-weight:700;line-height:1;margin:0;text-wrap:balance;letter-spacing:-.01em}
h2{font-size:30px;}
h3{font-size:20px;}
button,select,input{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.num,td.n,.val{font-variant-numeric:tabular-nums}
.small{font-size:13px;color:var(--muted)}

/* header */
header.top{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;padding-block:18px 14px}
.brand{display:flex;align-items:baseline;gap:10px;margin-right:auto}
.brand h1{font-size:38px;font-weight:400;}
.brand h1 b{color:var(--accent)}
.brand span{font:600 12px/1 var(--font-label);color:var(--faint)}
.fmt{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.fmt .chip{font:600 12px/1 var(--font-label);padding:7px 9px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--muted)}
.btn{font:600 14px/1 var(--font-body);padding:10px 14px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer}
.btn:hover{border-color:var(--ink)}
.btn.primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.btn:disabled{opacity:.4;cursor:not-allowed}

/* sponsor */
.sponsor{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:var(--spon);color:var(--spon-ink);border:1px solid var(--line);border-radius:10px;padding:10px 14px;text-decoration:none;position:relative;overflow:hidden}
.sponsor .tag{font:600 12px/1 var(--font-label);opacity:.7}
.sponsor b{font:400 20px/1 var(--font-display);}
.sponsor span.copy{font-size:14px;opacity:.9}
.sponsor .go{margin-left:auto;font:600 13px/1 var(--font-body);background:var(--accent);color:var(--accent-ink);padding:8px 12px;border-radius:6px}
.sponsor .mesh{position:absolute;inset:0;opacity:.08;background-image:radial-gradient(currentColor 1px,transparent 1.2px);background-size:6px 6px;pointer-events:none}

/* tabs */
nav.tabs{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:var(--bg);display:flex;gap:4px;padding-block:12px 10px;margin-top:10px;border-bottom:2px solid var(--ink);overflow-x:auto}
nav.tabs button{font:700 17px/1 var(--font-body);padding:9px 14px;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;flex:none;letter-spacing:-.01em}
nav.tabs button[aria-selected="true"]{background:var(--ink);color:var(--bg)}
.panel{display:none;padding-top:20px}
.ghead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:10px;margin-bottom:12px}
.gauth{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.gme{display:inline-flex;align-items:center;gap:8px}.gme img{border-radius:50%}
a.btn{text-decoration:none;display:inline-block}
.seg{display:flex;flex-wrap:wrap;gap:4px;border:1px solid var(--line);border-radius:8px;padding:4px;background:var(--surface);width:max-content;max-width:100%}
.seg button{border:0;background:transparent;padding:8px 12px;border-radius:6px;font:600 14px/1 var(--font-body);color:var(--muted);cursor:pointer}
.seg button[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
.gpanel{margin-top:14px}
.gpos{display:flex;gap:8px;flex-wrap:wrap}
.gpos button{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:10px 14px;font:700 17px/1 var(--font-body);cursor:pointer;display:grid;gap:2px;min-width:78px;text-align:left;border-bottom:3px solid var(--c);letter-spacing:-.01em}
.gpos button small{font:600 12px/1 var(--font-label);color:var(--muted)}
.gpos button[aria-pressed="true"]{background:var(--ink);color:var(--bg)}.gpos button[aria-pressed="true"] small{color:var(--bg)}
.gtools{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;margin:10px 0}
.gstatus{font:600 12px/1 var(--font-label);color:var(--good)}.gstatus.bad{color:var(--bad)}
.gcols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:14px;align-items:start}
.gcol{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px;display:grid;gap:8px}
.gcol input[type=search]{padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--raise)}
.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.row input{padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:var(--raise);min-width:0;flex:1}
.glist{list-style:none;margin:0;padding:0;max-height:62vh;overflow:auto;border-radius:8px}
.glist li{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:7px 8px;border-bottom:1px solid var(--line);cursor:pointer;background:var(--surface)}
.glist li:hover{background:var(--raise)}
.glist li.bye{opacity:.5}
.glist .pn b{font-weight:600;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.glist .pn small{font-size:12px;color:var(--muted)}
.glist .pn.empty{color:var(--faint);font-size:13px}
.glist .pj{font:600 13px/1.1 var(--font-label);text-align:right}.glist .pj small{display:block;font-size:12px;color:var(--faint)}
.gadd{border:1px solid var(--line);background:var(--raise);border-radius:6px;width:28px;height:28px;cursor:pointer;font-weight:700}
.slots li{grid-template-columns:52px 1fr auto auto;min-height:44px}
.slots li .rk{font:700 15px/1 var(--font-body);color:var(--muted);letter-spacing:-.01em}
.slots li.on .rk{color:var(--ink)}
.slots li.sel{outline:2px solid var(--focus);outline-offset:-2px;background:var(--raise)}
.slots li.over{background:color-mix(in srgb,var(--focus) 12%,var(--surface))}
.slots li.hit5{background:color-mix(in srgb,var(--good) 14%,var(--surface))}.slots li.hit1{background:color-mix(in srgb,var(--pp) 14%,var(--surface))}
.slots .res{font:600 12px/1.2 var(--font-label);color:var(--muted);text-align:right}.slots .res b{display:block;color:var(--ink);font-size:14px}
.ctl{display:flex;gap:2px}.ctl button{border:0;background:transparent;color:var(--faint);cursor:pointer;font-size:13px;width:26px;height:26px;border-radius:4px}.ctl button:hover{color:var(--ink);background:var(--raise)}
.lgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.scoring{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:baseline;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:10px 14px;margin-bottom:12px;font-size:13px;color:var(--muted)}
.scoring b{color:var(--ink);font-size:14px}
.opp{display:inline-block;font:600 12px/1 var(--font-label);padding:5px 7px;border-radius:6px;background:var(--raise);border:1px solid var(--line)}
.opp.easy{background:color-mix(in srgb,var(--good) 20%,var(--surface));border-color:color-mix(in srgb,var(--good) 55%,transparent)}
.opp.neutral{background:color-mix(in srgb,#e8b400 22%,var(--surface));border-color:color-mix(in srgb,#e8b400 55%,transparent)}
.opp.hard{background:color-mix(in srgb,var(--bad) 18%,var(--surface));border-color:color-mix(in srgb,var(--bad) 50%,transparent)}
.wx{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;color:var(--muted);white-space:nowrap;cursor:help}
.wx i{font-style:normal;font-size:15px;color:var(--ink)}
.wx-sun i{color:#e8a200}.wx-rain i{color:#2f7fb8}.wx-snow i{color:#7aa8ff}.wx-cloud i{color:var(--muted)}
.gt .pos{display:inline-block;min-width:46px;padding:5px 6px}
.gt td.lw{font:500 13px/1 var(--font-label);color:var(--muted)}
dialog#grules{border:0;border-radius:12px;padding:0;max-width:min(560px,calc(100% - 32px));background:var(--surface);color:var(--ink);box-shadow:0 24px 60px rgba(0,0,0,.35)}
dialog#grules::backdrop{background:rgba(8,14,24,.5)}
.rules{padding:22px;display:grid;gap:12px}.rules h2{font-size:30px}.rules ol{margin:0;padding-left:20px;display:grid;gap:8px;line-height:1.45}.rules .btn{justify-self:start}
.gbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}
.gbar input{padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);min-width:0;flex:0 1 260px}
.gbar .grow{flex:1}
.gtw{max-height:72vh;overflow:auto}
.gt th{position:sticky;top:0;z-index:2}
.gt td,.gt th{padding:6px 8px}
.gt th.c,.gt td.c{text-align:center;width:36px}
.gt input.tick{width:18px;height:18px;accent-color:var(--accent);cursor:pointer}
.gt input.st{width:68px;padding:5px 6px;border:1px solid var(--line);border-radius:6px;background:var(--raise);text-align:right;font:500 13px/1.2 var(--font-label);color:var(--ink)}
.gt input.st:focus{border-color:var(--focus);background:var(--surface)}
.gt input.st:disabled{background:transparent;border-color:transparent}
.gt td.pts{font:700 15px/1 var(--font-label)}
.gt tr.ed td.pts{color:var(--focus)}
.gt tr.ed td.who b::after{content:" · edited";font-weight:500;font-size:12px;color:var(--focus)}
.gt tr.out td{opacity:.55}
.gt tr.over td{opacity:.45}
.gt tr.cut td{border-top:3px solid var(--accent)}
.gt tr.hit5 td{background:color-mix(in srgb,var(--good) 14%,var(--surface))}.gt tr.hit1 td{background:color-mix(in srgb,var(--pp) 16%,var(--surface))}
.gt td.fin{font:600 12px/1 var(--font-label);color:var(--muted)}
.gt td.who small{display:block;font-size:12px;color:var(--muted)}
.gt .rst{border:0;background:transparent;color:var(--faint);cursor:pointer;font-size:15px}.gt .rst:hover{color:var(--ink)}
.gpos button.pALL{--c:var(--accent)}
.gt td.rkc{font-size:18px;width:44px}
/* finish order by drag and drop */
.gmode{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}
.gt td.drg{width:34px;padding-right:0}
.gt .grip{display:inline-grid;place-items:center;width:30px;height:32px;border:0;border-radius:8px;background:transparent;color:var(--faint);cursor:grab;touch-action:none}
.gt .grip:hover,.gt .grip:focus-visible{color:var(--ink);background:var(--hover)}
.gt .grip:disabled{cursor:default;opacity:.35;background:transparent}
.gt input.rk{width:54px;padding:5px 6px;border:1px solid var(--line);border-radius:6px;background:var(--raise);text-align:center;font:600 15px/1.2 var(--font-body);font-variant-numeric:tabular-nums;color:var(--ink)}
.gt input.rk:focus{border-color:var(--focus);background:var(--surface)}
.gt input.rk:disabled{background:transparent;border-color:transparent}
.gt td.pts.ref{font-weight:500;color:var(--muted)}
.gt tr.dragging td{background:var(--accent-soft);opacity:1}
.gt tr.dragging{box-shadow:0 6px 18px rgba(0,0,0,.18);position:relative;z-index:1}
body.gdragging,body.gdragging *{cursor:grabbing!important;user-select:none}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.bgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-top:8px}
.bdg{border:1px dashed var(--line);border-radius:12px;padding:12px;display:grid;gap:4px;opacity:.6}
.bdg.got{border-style:solid;border-color:var(--ink);opacity:1;background:var(--surface)}
.bdg .bi{font-size:26px;line-height:1}.bdg b{font-weight:700}.bdg small{font-size:12px;color:var(--muted)}.bdg .bc{font:600 12px/1 var(--font-label);color:var(--muted)}
tr.meRow td{background:color-mix(in srgb,var(--focus) 10%,transparent)}
.ulink{color:inherit;font-weight:600}
code{font:600 13px/1 var(--font-label);background:var(--raise);padding:4px 6px;border-radius:4px}
.pubgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.pubgrid ol{list-style:none;padding:0;margin:6px 0 0;font-size:13px;display:grid;gap:3px}
@media (max-width:760px){.gcols,.lgrid{grid-template-columns:1fr}.glist{max-height:none}}
.panel.active{display:block}
.note{margin:36px 0 0;padding-top:10px;border-top:1px solid var(--line);font-size:12.5px;color:var(--faint);max-width:110ch}

/* window dial */
.dial{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--raise)}
.dial button{border:0;background:transparent;padding:8px 4px;font:600 12px/1.15 var(--font-body);color:var(--muted);cursor:pointer;border-left:1px solid var(--line);position:relative}
.dial button:first-child{border-left:0}
.dial button::before{content:"";display:block;height:3px;border-radius:2px;margin:0 auto 5px;width:60%;background:var(--c)}
.dial button[aria-pressed="true"]{background:var(--surface);color:var(--ink);box-shadow:inset 0 -2px 0 var(--c)}
.w0{--c:var(--wn)} .w1{--c:var(--pp)} .w2{--c:var(--sr)} .w3{--c:var(--hr)} .w-1{--c:var(--ov)}
.wpill{display:inline-flex;align-items:center;gap:6px;font:600 12px/1 var(--font-body);padding:4px 8px;border-radius:999px;background:var(--raise);border:1px solid var(--line);white-space:nowrap}
.wpill::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c)}

/* calculator */
.cgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.side{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px;display:grid;gap:12px;align-content:start}
.side .head{display:flex;align-items:center;gap:10px;justify-content:space-between}
.side .head h3{font-size:24px}
.side .head input{width:100%;max-width:220px;border:0;border-bottom:1px dashed var(--line);background:transparent;font:700 21px/1 var(--font-body);padding:2px 0;letter-spacing:-.01em}
.search{position:relative}
.search input{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--raise)}
.search ul{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:30;margin:0;padding:4px;list-style:none;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 14px 34px rgba(10,20,40,.18);max-height:360px;overflow:auto}
.search li{display:grid;grid-template-columns:44px 1fr auto;gap:10px;align-items:center;padding:8px;border-radius:6px;cursor:pointer}
.search li.hi,.search li:hover{background:var(--raise)}
.search li small{display:block;color:var(--muted);font-size:12px}
.pos{font:700 12px/1 var(--font-label);text-align:left;padding:5px 0;color:var(--c);background:none;letter-spacing:.01em}
.pQB{--c:var(--qb)} .pRB{--c:var(--rb)} .pWR{--c:var(--wr)} .pTE{--c:var(--te)} .pPICK{--c:var(--pk)} .pPROS{--c:var(--pros)}
.asset{display:grid;grid-template-columns:44px 1fr auto 28px;gap:10px;align-items:center;padding:10px;border-radius:8px;background:var(--raise)}
.asset .nm{min-width:0}
.asset .nm b{display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.asset .nm small{color:var(--muted);font-size:12px}
.asset .val{font:600 16px/1 var(--font-label)}
.rm{border:0;background:transparent;color:var(--faint);font-size:18px;cursor:pointer;border-radius:4px}
.rm:hover{color:var(--bad)}
.empty{color:var(--faint);font-size:14px;padding:6px 2px}
.tot{border-top:2px solid var(--ink);padding-top:10px;display:grid;gap:4px}
.tot div{display:flex;justify-content:space-between}
.tot .adj{font:700 19px/1.1 var(--font-body);letter-spacing:-.01em}
.tot .adj b{font-family:var(--font-label);font-size:20px}
.actions{display:flex;gap:8px;margin-top:12px}
#calc .actions{flex-wrap:wrap}#calc .actions .btn[hidden]{display:none}
.verdict{margin-top:16px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:18px;display:grid;gap:14px}
.verdict .head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 14px}
.verdict .head h2{font-size:34px}
.verdict .head h2.ok{color:var(--good)}
.bar{height:12px;border-radius:999px;background:var(--raise);overflow:hidden;display:flex;border:1px solid var(--line)}
.bar i{display:block;height:100%}
.povs{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pov{border:1px solid var(--line);border-radius:8px;padding:12px;display:grid;gap:6px;background:var(--raise)}
.pov .net{font:700 29px/1 var(--font-body);letter-spacing:-.01em}
.pov .net.up{color:var(--good)} .pov .net.down{color:var(--bad)}
.povhead{display:flex;justify-content:space-between;align-items:center;gap:10px}
.povhead .grade{width:40px;height:40px;font-size:28px}
.split{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13px;color:var(--muted)}
.split b{font-family:var(--font-label);font-weight:600}.split b.up{color:var(--good)}.split b.down{color:var(--bad)}
.why h4,.adv h4{margin:6px 0 4px;font:700 14px/1 var(--font-body);letter-spacing:-.01em}
.why ul,.adv ul{margin:0;padding-left:18px;display:grid;gap:5px;font-size:13.5px;line-height:1.45}
.adv{border-top:1px solid var(--line);padding-top:6px}
.adv li::marker{color:var(--accent)}
.grade{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;font:700 17px/1 var(--font-body);color:#fff;background:var(--g);letter-spacing:-.01em}
.gS{--g:#b7791f} .gA{--g:var(--good)} .gB{--g:#2f7fb8} .gC{--g:#7b8699} .gD{--g:#c77d12} .gE{--g:#d9480f} .gF{--g:var(--bad)}
.bal h3{font-size:16px;margin-bottom:8px}
.bal .opts{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}
.bal button{display:grid;grid-template-columns:44px 1fr auto;gap:8px;align-items:center;text-align:left;padding:8px 10px;border:1px dashed var(--line);border-radius:8px;background:transparent;cursor:pointer}
.bal button:hover{border-style:solid;border-color:var(--ink)}
.bal button small{display:block;color:var(--muted);font-size:12px}
.ad{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;margin-top:16px;padding:14px 16px;border-radius:12px;border:1px solid var(--line);background:var(--surface);text-decoration:none;color:var(--ink)}
.ad .jersey{width:54px;height:54px}
.ad b{font:400 20px/1.05 var(--font-display);display:block}
.ad span{font-size:13px;color:var(--muted)}
.ad em{font-style:normal;font:600 13px/1 var(--font-body);background:var(--accent);color:var(--accent-ink);padding:9px 12px;border-radius:6px;white-space:nowrap}
.ad .tag{font:600 12px/1 var(--font-label);color:var(--faint);display:block;margin-bottom:4px}

/* values table */
.controls{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin-bottom:12px}
.controls label{display:grid;gap:4px;font:600 12px/1 var(--font-label);color:var(--faint)}
.controls select,.controls input{padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font:500 14px/1.2 var(--font-body);text-transform:none;letter-spacing:0;color:var(--ink)}
.count{margin-left:auto;font-size:13px;color:var(--muted)}
.tw{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:12px}
table{border-collapse:collapse;width:100%;font-size:14px}
th{font:600 12px/1.2 var(--font-label);color:var(--faint);text-align:right;padding:11px 10px;border-bottom:2px solid var(--ink);white-space:nowrap;cursor:pointer;user-select:none;background:var(--surface);position:sticky;top:0}
th.l,td.l{text-align:left}
th[aria-sort]{color:var(--ink)}
th[aria-sort="descending"]::after{content:" ▾"} th[aria-sort="ascending"]::after{content:" ▴"}
td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
tbody tr{cursor:pointer}
tbody tr:hover{background:var(--raise)}
td .who b{font-weight:600} td .who small{display:block;color:var(--muted);font-size:12px}
td.ov{font:600 15px/1 var(--font-label)}
td.lv{font-family:var(--font-label);font-size:13px;color:var(--muted)}
td.lv.up{color:var(--good)} td.lv.dn{color:var(--bad)}
.range{position:relative;height:8px;min-width:120px;border-radius:999px;background:var(--raise);border:1px solid var(--line)}
.range i{position:absolute;top:-1px;bottom:-1px;border-radius:999px;background:color-mix(in srgb,var(--focus) 30%,transparent)}
.range b{position:absolute;top:-4px;width:3px;height:14px;border-radius:2px;background:var(--ink)}
.vol{font-size:12px;padding:3px 0;white-space:nowrap}

/* one table language for Rankings, Values and Stats (Adam, 26 October: "colour coded", the same feel as the game
   reports). Every row carries its position colour three ways: the pill, a thin edge down the left of the row and a
   meter under its dynasty value. Values tints each window green or red against overall, with the dial's colour on the
   header; Stats underlines each group in the colour of the position it belongs to and shades the sorted column. */
#stable tbody tr[data-p]>td.sk{box-shadow:1px 0 0 var(--line)}
td.pcell{width:40px;padding-right:2px}
td.pcell .pos{display:inline-block;min-width:0;padding:5px 0}
.sa{display:none}
.vmt{display:block;height:3px;margin:5px 0 0 auto;max-width:76px;border-radius:2px;background:var(--line);overflow:hidden}
.vmt i{display:block;height:100%;border-radius:2px;background:var(--c,var(--accent))}
th.wh::before{content:"";display:block;height:3px;width:26px;margin:0 0 5px auto;border-radius:2px;background:var(--c)}
.vrb{min-width:110px}
.vrb .rrng{background:color-mix(in srgb,var(--c,var(--accent)) 32%,transparent)}
.vrb .rdot{background:var(--c,var(--accent-text))}
.vol i{display:inline-flex;gap:2px;margin-right:5px;vertical-align:-1px}
.vol i b{display:block;width:4px;height:10px;border-radius:1px;background:var(--line)}
.vol.vg1 b:nth-child(-n+1),.vol.vg2 b:nth-child(-n+2){background:var(--muted)}
.vol.vg3 b:nth-child(-n+3),.vol.vg4 b{background:var(--warn)}
.vol.vg3,.vol.vg4{border-color:color-mix(in srgb,var(--warn) 50%,var(--line))}
#rtog .tg[aria-pressed="true"]{background:color-mix(in srgb,var(--c) 9%,var(--panel-solid))}
.pmix{display:inline-flex;align-self:center;height:6px;width:84px;border-radius:3px;overflow:hidden;background:var(--line)}
.pmix i{display:block;height:100%;background:var(--c)}
/* one board: rankings and values in one table (Adam, 26 October 2026). The chosen window's column is lit in its
   colour and sets the order; the other windows are tinted green or red against overall. On a phone only rank, position
   and name stay put: the window columns give way to the chosen one plus four small bars under the name, which open the
   window strip, and everything else swipes under the name. */
.rankby{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.rankby[hidden],.bsort[hidden]{display:none}
.rbl{font:600 12px/1 var(--font-label);color:var(--faint);min-width:56px;white-space:nowrap}
.wchips{display:flex;gap:6px;flex-wrap:wrap}
.wc{display:inline-flex;align-items:center;gap:7px;font:600 13px/1 var(--font-body);padding:8px 13px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--muted);cursor:pointer}
.wc::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--c)}
.wc:hover{color:var(--ink)}
.wc[aria-pressed="true"]{color:var(--ink);border-color:var(--c);background:color-mix(in srgb,var(--c) 9%,var(--panel-solid))}
.bsort{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px;color:var(--muted);background:var(--raise);border-radius:8px;padding:8px 12px;margin:0 0 10px}
.bsort b{color:var(--ink)}
.bsort button{margin-left:auto;border:0;background:none;color:var(--accent-text);font:600 13px/1 var(--font-body);cursor:pointer;padding:4px 0}

#btable tr.lgrow{cursor:pointer}#btable tr.lgrow td.lgsum{color:var(--muted);font-size:13px;white-space:nowrap}#btable tr.lgrow td.lgsum b{color:var(--ink);font-weight:600}#stable tr.nocard{cursor:pointer}
#btable th{cursor:default;white-space:normal;vertical-align:bottom}
#btable th[data-s],#btable th[data-w]{cursor:pointer}
#btable th[data-s]:hover,#btable th[data-w]:hover{color:var(--ink)}
#btable th,#btable td{padding-left:6px;padding-right:6px}
/* the spare width goes to the range or next-game column, never between a name and its numbers */
#btable:not(.rdb) th:not(.rg),#btable.rdb th:not(.ngh){width:1%}
#btable:not(.rdb) td.nm{white-space:nowrap}
#btable.rdb td.nm{white-space:nowrap}
#btable td.rkc{width:46px;line-height:1.1}
#btable td.rkc b{font:700 16px/1 var(--font-body);color:var(--muted);letter-spacing:-.01em}
#btable td.rkc .mv{font:600 11px/1.2 var(--font-label);margin-top:3px}
#btable td.nm{min-width:140px;max-width:230px;white-space:normal}
#btable .sl{display:flex;align-items:center;gap:6px;min-width:0}
#btable td.nm .who{display:block;max-width:172px}
#btable td.nm .who b{display:block;overflow:hidden;text-overflow:ellipsis}
@media (min-width:561px) and (max-width:1240px){
  #btable td.nm .who{max-width:170px}
  #btable td.rg{min-width:84px}
  #btable .vol{font-size:0;padding:4px 0}
  #btable .vol i{margin-right:0}
  #btable td.wt span{padding:5px 4px}
}
@media (min-width:561px) and (max-width:1060px){#btable th,#btable td{padding-left:4px;padding-right:4px}#btable td.nm .who{max-width:150px}#btable td.rkc{width:38px}}
#btable .who small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* a long injury note stays inside the name cell (cut with an ellipsis, whole note on hover): it was flex:none and ran across the row */
#btable td.nm .who .sl small{flex:0 1 auto;min-width:0;max-width:100%}
#btable td.wv{font:500 13.5px/1 var(--font-label);color:var(--ink)}
#btable td.ov0{color:var(--muted)}
#btable td.wv em.wpr{display:block;margin-top:3px;font:500 10.5px/1 var(--font-label);font-style:normal;letter-spacing:.02em;color:var(--muted)}
#btable td.wt em.wpr{padding-right:17px}
@media (min-width:561px) and (max-width:1240px){#btable td.wt em.wpr{padding-right:15px}}
#btable td.wt span{display:inline-block;padding:5px 6px;border-radius:6px}
#btable td.wt.up span{background:color-mix(in srgb,var(--good) var(--a),transparent)}
#btable td.wt.dn span{background:color-mix(in srgb,var(--bad) var(--a),transparent)}
#btable td.wt span::after{content:"▲";display:inline-block;width:9px;margin-left:2px;font-size:8px;vertical-align:2px;visibility:hidden}
#btable td.wt.up span::after{visibility:visible;color:var(--good)}
#btable td.wt.dn span::after{content:"▼";visibility:visible;color:var(--bad)}
#btable .k-1{--wc:var(--ov)} #btable .k0{--wc:var(--wn)} #btable .k1{--wc:var(--pp)} #btable .k2{--wc:var(--sr)} #btable .k3{--wc:var(--hr)}
#btable td.wa{font:600 15px/1 var(--font-label);background:color-mix(in srgb,var(--wc,var(--accent)) 7%,transparent)}
#btable th.wa{color:var(--ink);background:color-mix(in srgb,var(--c,var(--accent)) 10%,var(--surface))}
#btable td.rg{min-width:88px}#btable .vrb{min-width:84px}
#btable .vol{font-size:0;padding:4px 0;cursor:help}#btable .vol i{margin-right:0}
#btable td.rg .rbar{display:block}
#btable .tierh{align-items:center}
#ranks .rtop .rfind{flex:1 1 380px}
#btable td.dv{color:var(--muted)}
#btable th.ngh{text-align:center}
#btable td.pj{font:600 14px/1 var(--font-label)}
#btable .ngr{display:flex;align-items:center;min-width:170px;padding:0 34px}
#btable .ngr .ngb b{position:absolute;top:2px;font:500 11.5px/1 var(--font-label);color:var(--muted);white-space:nowrap}
#btable .ngr .ngb .nf{padding-right:6px}
#btable .ngr .ngb .nc{padding-left:6px}
#btable .mu{font:700 12.5px/1 var(--font-label);color:var(--ink);white-space:nowrap}
#btable .mu.good{color:var(--good)}
#btable .mu.bad{color:var(--bad)}
#btable .mu[data-tip]{cursor:help}
#btable .ngb{flex:1;min-width:80px}
#btable .ngtag{font:600 12px/1 var(--font-label);color:var(--faint);border:1px solid var(--line);border-radius:6px;padding:3px 8px}
#btable tr.tierrow td{padding:14px 10px 6px;border-bottom:1px solid var(--line);background:var(--surface);cursor:default}
#btable tr.tierrow:hover{background:none}
#btable tr.t-alt td{background:color-mix(in srgb,var(--raise) 70%,transparent)}
#btable tr.t-alt:hover td{background:var(--raise)}
.wfp{display:none}
#btable .rank-arrow{width:30px;min-width:30px;height:30px;border:0;border-radius:4px;background:transparent;font-size:15px}
#btable .rank-arrow.higher{color:var(--good)}#btable .rank-arrow.lower{color:var(--bad)}
#btable .rank-arrow:hover{background:var(--raise);filter:none}
#btable .rank-arrow.higher[aria-pressed=true]{background:color-mix(in srgb,var(--good) 18%,transparent);outline:0;box-shadow:none}#btable .rank-arrow.lower[aria-pressed=true]{background:color-mix(in srgb,var(--bad) 18%,transparent);outline:0;box-shadow:none}
#btable td.l4c,#btable td.nxc{white-space:nowrap}
.l4b{display:inline-flex;align-items:flex-end;gap:7px;padding:4px 4px 3px;margin:-4px;border:0;border-radius:4px;background:transparent;color:var(--ink);cursor:pointer;font:inherit}
.l4b:hover,.l4b:focus-visible,.l4b[aria-expanded="true"]{background:var(--raise);outline:none}
.l4b .bars{display:inline-flex;align-items:flex-end;gap:2px;height:18px}
.l4b .bars i{display:block;width:5px;min-height:2px;border-radius:1px;background:var(--c,var(--accent));opacity:.35}
.l4b .bars i.hi{opacity:1}
.l4b b{font:600 13px/1 var(--font-body);font-variant-numeric:tabular-nums;min-width:30px;text-align:right}
.nxb{display:grid;gap:3px;text-align:left;padding:3px 4px;margin:-3px -4px;border:0;border-radius:4px;background:transparent;color:var(--ink);font:inherit;cursor:pointer}
span.nxb{cursor:default}
button.nxb:hover,button.nxb:focus-visible{background:var(--raise);outline:none}
.nxb b{font:700 12.5px/1 var(--font-label)}.nxb.good b{color:var(--good)}.nxb.bad b{color:var(--bad)}
.nxb small{font-size:11.5px;color:var(--muted)}
#l4pop{position:fixed;z-index:2147483000;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.18);padding:12px 14px;font:500 12.5px/1.3 var(--font-body);width:min(400px,calc(100vw - 16px))}
#l4pop[hidden]{display:none}
#l4pop .h{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin:0 0 8px}#l4pop .h b{font-size:14px}#l4pop .h span{color:var(--muted)}
#l4pop .r{display:grid;grid-template-columns:44px minmax(0,1fr) 56px 42px;gap:10px;align-items:center;padding:6px 0;font-variant-numeric:tabular-nums}
#l4pop .r small{display:block;color:var(--muted);font-size:11px}#l4pop .r .s{color:var(--muted);font-size:11.5px;line-height:1.35}
#l4pop .r .b{height:5px}#l4pop .r .b i{display:block;height:5px;border-radius:3px;background:var(--c);min-width:2px}#l4pop .r.lo .b i{opacity:.35}
#l4pop .r .p{text-align:right;font-weight:700}
#l4pop .f{display:flex;justify-content:space-between;gap:10px;margin-top:8px;color:var(--muted);font-size:11.5px}
#l4pop .f button{font:600 12.5px/1 var(--font-body);color:var(--accent-text);background:none;border:0;padding:4px 0;cursor:pointer}
@media (min-width:561px) and (max-width:1279px){#btable .l4h,#btable td.l4c,#btable .nxh,#btable td.nxc{display:none}}
@media (min-width:561px){#btable .rank-contribution-head{width:66px;max-width:66px}}
@media (max-width:560px){
  #btable td.rkc b{font-size:14px}
  #btable td.rkc,#btable th.rkc,#btable td.pcell,#btable th.pcell,#btable td.nm,#btable th.nm{position:sticky;z-index:1;background-color:var(--surface)}
  #btable thead th.rkc,#btable thead th.pcell,#btable thead th.nm{z-index:3}
  #btable td.rkc,#btable th.rkc{left:0;width:30px;min-width:30px;max-width:30px;padding-left:7px;padding-right:0}
  #btable td.pcell,#btable th.pcell{left:30px;width:36px;min-width:36px;max-width:36px;padding-left:4px;padding-right:2px}
  #btable td.nm,#btable th.nm{left:66px;width:140px;min-width:140px;max-width:140px;box-shadow:1px 0 0 var(--line)}
  /* pinned cells stay opaque in shaded tiers too: the shading is laid over solid surface, so the numbers swiping
     underneath never show through (in dark mode --raise is see-through) */
  #btable tr.t-alt>td.rkc,#btable tr.t-alt>td.pcell,#btable tr.t-alt>td.nm{background-color:var(--surface);background-image:linear-gradient(color-mix(in srgb,var(--raise) 70%,transparent),color-mix(in srgb,var(--raise) 70%,transparent))}
  #btable tr.t-alt:hover>td.rkc,#btable tr.t-alt:hover>td.pcell,#btable tr.t-alt:hover>td.nm{background-color:var(--surface);background-image:linear-gradient(var(--raise),var(--raise))}
  #btable tr.tierrow .tierh{position:sticky;left:8px;width:max-content;max-width:calc(100vw - 72px);flex-wrap:wrap}
  #btable:not(.rdb) .wv:not(.wa){display:none}
  #btable td.wa{font-size:14px}
  #btable .ngr{min-width:150px}
  .wfp{display:inline-flex;align-items:flex-end;gap:2px;height:16px;padding:0 2px 2px;border:0;border-radius:3px;background:transparent;flex:none;cursor:pointer}
  .wfp i{display:block;width:4px;border-radius:1px;background:var(--c)}
  .wfp i.dim{opacity:.45}
  .wfp[aria-expanded="true"]{background:var(--raise)}
  #btable tr.wsrow td{padding:0;text-align:left;cursor:default}
  #btable tr.wsrow:hover{background:none}
  .wstrip{position:sticky;left:0;width:calc(100vw - 26px);box-sizing:border-box;padding:0 10px 10px 66px}
  .wsl{display:block;font-size:11px;color:var(--muted);margin-bottom:5px}
  .wsg{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}
  .wsg button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:5px 5px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);cursor:pointer;min-width:0}
  .wsg button small{font-size:10px;color:var(--muted);white-space:nowrap}
  .wsg button b{font:600 12px/1 var(--font-label)}
  .wsg button small.wpr{font-size:9.5px}
  .wsg button.on{border-color:var(--c)}
  .wsg button.up{background:color-mix(in srgb,var(--good) 10%,var(--surface))}
  .wsg button.dn{background:color-mix(in srgb,var(--bad) 8%,var(--surface))}
  .rankby{flex-wrap:nowrap}
  .rankby .wchips{min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-right:-12px;padding-right:12px}
  .rankby .wchips::-webkit-scrollbar{display:none}
  .rankby .wc{flex:none}
  .rbl{min-width:0;flex:none}
  .rtop>.rbl{display:none}
}
/* sorting never moves a header (Adam, 26 October: "the titles get all janky"): the arrow sits in the header's bottom
   padding, out of the flow, so a sorted header keeps its width, its line breaks and its colour tick */
#ranks th[aria-sort]::after{position:absolute;right:6px;bottom:1px;font-size:10px;line-height:1;color:var(--accent-text)}
#ranks th.l[aria-sort]::after{right:auto;left:10px}
/* phones: smaller type, and rank, position and name stay put while the numbers swipe under them (Adam, 26 October) */
@media (max-width:560px){
  #ranks table{font-size:13px}
  #ranks th{font-size:10.5px;}
  #ranks td .who b{font-size:13px;line-height:1.2}
  #ranks td .who small{font-size:11px}
  #ranks td.ov,#stable td.sv{font-size:14px}
  #ranks td.lv,#btable td.wv{font-size:12.5px}
  #btable td.wt span{padding:4px 4px}
  #btable td.wt em.wpr{padding-right:15px}
  #ranks td.pcell .pos,#stable .skc .pos{font-size:10.5px;min-width:36px;padding:4px 2px}
  #ranks .vmt{max-width:56px}
  #stable td.sk{min-width:144px;max-width:150px}
  #stable th.stpc{position:sticky;left:0;z-index:3;background:var(--surface)}
  #stable .skc{grid-template-columns:16px 36px minmax(0,1fr);gap:0 5px}
}

/* season stats table: player column stays put while the stats scroll sideways */
#stable th.stpc{padding:6px 8px;text-transform:none;letter-spacing:0;cursor:default}
#stable .stpc{vertical-align:middle;white-space:nowrap!important;position:static}#stable .stpc .seg{display:inline-flex;vertical-align:middle;margin-right:6px}
#stseas{font:600 13px/1 var(--font-body);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:6px 8px;vertical-align:middle;cursor:pointer}
#stable tr.nocard{cursor:default}
#stable .stpc .seg{padding:3px;gap:2px}#stable .stpc .seg button{min-height:28px;padding:0 9px;font-size:12px}
#stable th.sgh{border-bottom:1px solid var(--line);text-align:center;padding:8px 10px 4px;cursor:default}
#stable thead tr:first-child th{top:auto}
#stable .g0{border-left:1px solid var(--line)}
#stable td.sk,#stable th.sk{position:sticky;left:0;z-index:1;background:var(--surface);box-shadow:1px 0 0 var(--line)}
#stable thead th.sk{z-index:3}
#stable tbody tr:hover td{background:var(--raise)}
#stable tbody tr:hover td.sk{background:linear-gradient(var(--raise),var(--raise)),var(--surface)}
#stable .srk{color:var(--faint);font:500 12px/1 var(--font-label);text-align:right}
#stable .skc{display:grid;grid-template-columns:22px 38px minmax(0,1fr);gap:0 8px;align-items:center}
#stable .skc .pos{font-size:11.5px;padding:4px 0}
#stable th.sg-qb{border-bottom:3px solid var(--qb)}#stable th.sg-rb{border-bottom:3px solid var(--rb)}#stable th.sg-wr{border-bottom:3px solid var(--wr)}
#stable tbody td.sh{background:color-mix(in srgb,var(--c) var(--a),transparent)}
#stable td.sv{font:600 14px/1 var(--font-label)}
#stable td.ssort{color:var(--ink);font-weight:600}
#stable td.z{color:var(--faint)}
@media (max-width:560px){#stable th,#stable td{padding-left:7px;padding-right:7px}#stable td.sk{white-space:normal;min-width:150px;max-width:164px}#stable .skc{grid-template-columns:18px 34px minmax(0,1fr);gap:0 6px}}

/* desktop: every table fits the panel, no sideways scroll (Adam, 23 October). Notes under a name keep to one line,
   the whole note on hover; two-word headers wrap; Values and Stats use tighter cells. */
#stable td .who small{max-width:24em;overflow:hidden;text-overflow:ellipsis}
@media (min-width:561px){
  #stable th,#stable td{padding-left:5px;padding-right:5px}
  #stable th.sk,#stable td.sk{padding-left:10px}
  #stable td.sk{white-space:normal;min-width:200px}
  .rank-contribution{width:66px;min-width:66px}
}

/* rankings */
.rgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.rcol{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.rcol h3{padding:12px 12px 10px;border-bottom:3px solid var(--c);display:flex;justify-content:space-between;align-items:baseline}
.rcol h3 small{font:600 12px/1 var(--font-label);color:var(--faint);text-transform:none}
.rcol ol{list-style:none;margin:0;padding:0}
.rcol li{display:grid;grid-template-columns:26px 1fr auto;gap:8px;align-items:center;padding:7px 12px;border-bottom:1px solid var(--line);cursor:pointer}
.rcol li:hover{background:var(--raise)}
.rcol li .rk{font:700 15px/1 var(--font-body);color:var(--faint);letter-spacing:-.01em}
.rcol li b{font-weight:600;font-size:14px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rcol li small{font-size:12px;color:var(--muted)}
.rcol li .v{text-align:right;font:600 13px/1.1 var(--font-label)}
.mv{display:block;font-size:12px}
.mv.up{color:var(--good)} .mv.dn{color:var(--bad)}
.rtop{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:14px}
.toggles{display:flex;flex-wrap:wrap;gap:6px}
.crs{display:inline-grid;place-items:center;flex:none;width:1.35em;height:1.35em;margin-left:.35em;vertical-align:-.28em;cursor:help;color:var(--pros)}
.crs svg{width:100%;height:100%;display:block;overflow:visible}
.crs .crs-r{fill:var(--pros)}.crs .crs-c{fill:none;stroke:#fff;stroke-width:2.6;stroke-linecap:round}
:root[data-theme="dark"] .crs .crs-c{stroke:#10201A}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .crs .crs-c{stroke:#10201A}}
.pc-top .crs,.pc-bhead .crs{width:1.4em;height:1.4em}
.rrs{display:inline-grid;place-items:center;flex:none;width:1.35em;height:1.35em;margin-left:.35em;vertical-align:-.28em;cursor:help;color:#c64f82}
.rrs svg{width:100%;height:100%;display:block;overflow:visible}
.rrs .rrs-r{fill:#c64f82}.rrs .rrs-l{fill:#fff;font:800 11px/1 Arial,sans-serif;text-anchor:middle;dominant-baseline:central}
:root[data-theme="dark"] .rrs .rrs-l{fill:#1b1020}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .rrs .rrs-l{fill:#1b1020}}
.pc-top .rrs,.pc-bhead .rrs{width:1.4em;height:1.4em}
/* On the card name the seal must fit inside the line box, or it pushes the role chip down into the clip. */
.pc-name h2 .rrs{width:.9em;height:.9em;margin-left:.22em;vertical-align:top}
.tg{font:600 13px/1 var(--font-body);padding:8px 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--muted);cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.tg::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--c);opacity:.35}
.tg[aria-pressed="true"]{color:var(--ink);border-color:var(--c)}
.tg[aria-pressed="true"]::before{opacity:1}
td.rkc{font:700 17px/1 var(--font-body);color:var(--muted);width:56px;letter-spacing:-.01em}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.rtop .dial{min-width:min(100%,560px)}
/* tiers and the rankings chart */
.rview{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:-4px 0 14px}
.rview .seg button{min-height:34px;padding:0 14px}
.tgtier{--c:var(--accent)}
.rinfo{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1px solid var(--line);font:600 12px/1 var(--font-label);color:var(--muted);cursor:help}
.rinfo[hidden],.dial[hidden],.tg[hidden],.seg[hidden],.cfl[hidden]{display:none}
.tierh{display:flex;align-items:baseline;gap:10px}
.tierh b,.rch-th b{font:600 12px/1 var(--font-label);color:var(--ink)}
.tierh small,.rch-th small{font-size:12px;color:var(--faint)}
.rch-r.t-alt{background:color-mix(in srgb,var(--raise) 70%,transparent)}
.rch{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:6px 12px 10px}
.rch-ax,.rch-r{display:grid;grid-template-columns:34px minmax(150px,230px) 1fr;gap:10px;align-items:center}
.rch-ax{position:sticky;top:0;z-index:1;background:var(--surface);height:30px;border-bottom:2px solid var(--ink)}
.rch-tk{position:relative;height:100%;margin-right:30px}
.rch-tk span{position:absolute;top:9px;transform:translateX(-50%);font:600 11px/1 var(--font-label);color:var(--faint);white-space:nowrap}
.rch-tk span:first-child{transform:none}
.rch-r{height:34px;border-bottom:1px solid var(--line);cursor:pointer}
.rch-r:hover{background:var(--raise)}
.rch-r .rk{font:700 17px/1 var(--font-body);color:var(--faint);text-align:right;letter-spacing:-.01em}
.rch-who{display:flex;align-items:center;gap:8px;min-width:0}
.rch-who b{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rch-who .pos{flex:none;font-size:10.5px;padding:2px 6px;margin-left:auto}
.rch-p{position:relative;height:100%;margin-right:30px;background:linear-gradient(to right,var(--line) 1px,transparent 1px) 0 0/calc(100% / var(--segs)) 100%;border-right:1px solid var(--line)}
.rcm{position:absolute;inset:0;cursor:help}
.rcm i{position:absolute;display:block}
.rcm .rr{top:13px;height:8px;border-radius:4px;background:color-mix(in srgb,var(--c) 32%,transparent)}
.rcm .rd{top:11px;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:var(--c);box-shadow:0 0 0 2px var(--surface)}
.rcm .ro{top:11px;width:12px;height:12px;margin-left:-6px;border-radius:50%;border:2px solid var(--faint);background:var(--surface)}
.rcm .rl{top:16px;height:2px;border-radius:2px}
.rcm .rl.up{background:var(--good)} .rcm .rl.dn{background:var(--bad)}
.rcm .rb{left:0;top:11px;height:12px;border-radius:0 4px 4px 0;background:color-mix(in srgb,var(--c) 80%,transparent)}
.rcm em{position:absolute;top:10px;margin-left:6px;font:600 12px/1 var(--font-label);font-style:normal;color:var(--muted)}
.rcna{display:flex;align-items:center;padding-left:6px;color:var(--faint);font-size:12px;cursor:default}
.rch-th{padding:14px 0 6px 44px;display:flex;align-items:baseline;gap:10px;border-bottom:1px solid var(--line)}
.rch-key{display:flex;flex-wrap:wrap;gap:14px;padding:8px 2px 4px;font:600 12px/1 var(--font-label);color:var(--muted)}
.rch-key span{display:inline-flex;align-items:center;gap:6px}
.rch-key i{width:10px;height:10px;border-radius:50%;background:var(--c)}
.rch-scw{overflow:hidden}
.rch-sc{display:block;max-width:100%;height:auto}
.rch-sc .g{stroke:var(--line)} .rch-sc .yl{fill:var(--faint);font:600 11px var(--font-label)} .rch-sc .ax{font-size:12px}
.rch-sc .tb{fill:color-mix(in srgb,var(--raise) 80%,transparent)} .rch-sc .tb.alt{fill:color-mix(in srgb,var(--accent) 7%,transparent)}
.rch-sc .tl{fill:var(--faint);font:600 10.5px var(--font-label)}
.rch-sc circle{fill:var(--c);stroke:var(--surface);stroke-width:1.5;cursor:pointer}
.rch-sc circle:hover{stroke:var(--ink)}
@media (max-width:560px){
  .rch{padding:4px 8px 8px}
  .rch-ax,.rch-r{grid-template-columns:20px minmax(0,1fr) 50%;gap:6px}
  .rch-r .rk{font-size:14px}
  .rch-who{gap:5px} .rch-who b{font-size:13px} .rch-who .pos{font-size:9.5px;padding:2px 4px}
  .rch-p,.rch-tk{margin-right:22px}
  .rch-th{padding-left:30px}
}

/* settings */
.sgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px}
.card h3{margin-bottom:10px}
.presets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.presets button[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.field{display:grid;grid-template-columns:1fr 84px;gap:8px;align-items:center;padding:5px 0;border-bottom:1px solid var(--line);font-size:14px}
.field:last-child{border-bottom:0}
.field input{width:84px;padding:6px 8px;border:1px solid var(--line);border-radius:6px;background:var(--raise);text-align:right;font-family:var(--font-label);font-size:13px}

/* drawer */
dialog#drawer{border:0;padding:0;margin:0 0 0 auto;height:100%;max-height:100%;width:min(520px,100%);background:var(--surface);color:var(--ink);box-shadow:-20px 0 50px rgba(0,0,0,.25)}
dialog#drawer::backdrop{background:rgba(8,14,24,.45)}
.dw{padding:22px;display:grid;gap:16px}
.dw .top{display:flex;justify-content:space-between;align-items:start;gap:10px}
.dw h2{font-size:36px}
.dw .big{font:700 48px/1 var(--font-body);letter-spacing:-.01em}
.lvgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.lvgrid div{border:1px solid var(--line);border-radius:8px;padding:8px;display:grid;gap:4px}.lvgrid div>span:first-child{color:var(--c);font-weight:600}
.lvgrid span{font-size:12px;color:var(--muted)}
.lvgrid b{font:600 17px/1 var(--font-label)}
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.facts div{background:var(--raise);border-radius:8px;padding:8px 10px}
.facts span{display:block;font:600 12px/1.2 var(--font-label);color:var(--faint)}
.facts b{font-weight:600}
.proj{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;align-items:end;height:120px;padding-top:8px}
.proj div{display:grid;gap:4px;align-content:end;text-align:center;font-size:12px;color:var(--muted)}
.proj i{display:block;border-radius:4px 4px 0 0;background:var(--c)}
.proj b{font:600 12px/1 var(--font-label);color:var(--ink)}
footer{margin-top:28px;font-size:12px;color:var(--faint);border-top:1px solid var(--line);padding-top:12px}
footer a{color:inherit}
@media (max-width:760px){.cgrid,.povs{grid-template-columns:1fr}.rgrid{grid-template-columns:1fr 1fr}.brand h1{font-size:30px}.lvgrid{grid-template-columns:1fr 1fr}.facts{grid-template-columns:1fr 1fr}.dial button{font-size:12px}}
@media (max-width:460px){.rgrid{grid-template-columns:1fr}.ad{grid-template-columns:1fr}.ad .jersey{display:none}}
@media (prefers-reduced-motion:no-preference){.pov .net,.verdict .head h2{transition:color .2s}}

/* ===== Fantasy Jerseys design language, light (white) and dark (emerald) ===== */
html{background:var(--bg)}
/* the page itself never drags sideways on a phone (Adam, 13 Nov 2026); wide tables scroll inside their own box. tests/layout_check.py catches what this would hide */
html,body{overflow-x:clip}
body{min-height:100vh;background:var(--page);background-attachment:fixed;color:var(--ink);font-family:var(--font-body);font-size:15px;-webkit-font-smoothing:antialiased;transition:background-color .2s}
*{scrollbar-width:thin;scrollbar-color:var(--scroll) transparent}
*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-track,*::-webkit-scrollbar-corner{background:transparent}
*::-webkit-scrollbar-thumb{border-radius:999px;background:var(--scroll)}*::-webkit-scrollbar-thumb:hover{background:var(--scroll-hover)}
::selection{background:var(--accent-soft)}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
input[type=checkbox],input[type=radio],input[type=range]{accent-color:var(--accent)}
button:not(:disabled),[role=button],select,summary,a{cursor:pointer}
.ico{display:block;flex:none}
.small,.note,footer{color:var(--faint)}
.note,footer{border-top:1px solid var(--line)}
.note{font-size:12.5px}

/* type: Outfit bold sentence-case titles; the wordmark is the logo-pack SVG in /brand; tracked capitals only for tiny eyebrows */
h1,h2,h3{font-family:var(--font-body);font-weight:700;text-transform:none;letter-spacing:-.01em;line-height:1.1}
h2{font-size:30px} h3{font-size:19px} .ghead h2{font-size:34px} .verdict .head h2{font-size:32px} .rcol h3{font-size:20px}
.eyebrow,.stage,.controls label,th,.facts span,.why h4,.adv h4{font-family:var(--font-body);font-weight:500;font-size:12.5px}
.eyebrow{color:var(--muted)}

/* panels */
.side,.verdict,.gcol,.card,.tw,.rcol,.sponsor,.ad,.scoring,.seg,.bdg.got,dialog#grules,dialog#drawer{
  background:var(--panel);border:var(--panel-border);box-shadow:var(--panel-shadow);background-clip:padding-box;color:var(--ink)}
@supports (backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px)){
  .side,.verdict,.gcol,.card,.tw,.rcol,.sponsor,.ad,.scoring,.seg{-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur)}}
.side,.verdict,.card,.tw,.rcol,.gcol,.sponsor,.ad{border-radius:var(--radius)}
.pov,.asset,.facts div,.lvgrid div,.bal button{border-radius:12px;background:var(--raise);border:1px solid var(--line)}

/* header: solid on purpose (--chrome is opaque, no backdrop-filter). A see-through blurred bar flickered over the moving ticker and over panels scrolling under it. */
header.site{position:sticky;top:12px;z-index:40;margin:12px 12px 0;display:flex;align-items:center;gap:12px 16px;padding:10px 14px 10px 18px;
  border-radius:var(--radius);background:var(--chrome);border:var(--panel-border);box-shadow:var(--panel-shadow)}
.wordmark{display:flex;align-items:center;flex:none;line-height:0;text-decoration:none;user-select:none;margin:-4px -6px}
.wordmark img{display:block;height:52px;width:auto}
.wordmark .wm-dark{display:none}
:root[data-theme="dark"] .wordmark .wm-light{display:none}:root[data-theme="dark"] .wordmark .wm-dark{display:block}
@media (max-width:760px){.wordmark img{height:44px}}
.stage{border:1px solid var(--accent-border);background:var(--accent-soft);color:var(--accent-text);border-radius:12px;padding:4px 9px;white-space:nowrap}
nav.tabs{position:static;margin:0 auto;padding:0;border:0;background:transparent;display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}
nav.tabs::-webkit-scrollbar{display:none}
nav.tabs button,.ctl-ico{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;min-width:40px;padding:0 11px;border-radius:12px;flex:none;
  background:var(--panel);border:1px solid var(--line);box-shadow:var(--panel-shadow);color:var(--muted);text-decoration:none;
  font:500 14px/1 var(--font-body);letter-spacing:0;text-transform:none;transition:background-color 160ms ease,border-color 160ms ease,color 160ms ease}
nav.tabs button:hover,.ctl-ico:hover{border-color:var(--accent-border);color:var(--ink)}
nav.tabs button .tl{display:none;white-space:nowrap}
nav.tabs button[aria-selected="true"]{background:var(--accent-soft);border-color:var(--accent-border);color:var(--ink);cursor:default;padding:0 14px 0 12px}
nav.tabs button[aria-selected="true"] .ic{color:var(--accent-text)}
nav.tabs button[aria-selected="true"] .tl{display:inline}
.hact{display:flex;gap:8px;align-items:center}
.ctl-ico{padding:0;width:40px}
.ctl-ico.shop{color:var(--accent-text)}
.theme-ico .moon{display:none}
:root[data-theme="dark"] .theme-ico .sun{display:none}:root[data-theme="dark"] .theme-ico .moon{display:block}
.navlabel{position:fixed;top:78px;left:50%;transform:translateX(-50%);z-index:60;height:36px;display:flex;align-items:center;padding:0 16px;border-radius:12px;
  background:var(--tip-bg);color:var(--tip-ink);font:500 13px/1 var(--font-body);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s}
.navlabel.on{opacity:1}
@media (hover:none){.navlabel{display:none}}
.wrap{padding-top:18px}
.fmt{justify-content:flex-end;margin-bottom:10px}
.fmt .chip{font:500 12px/1 var(--font-body);padding:7px 10px;border-radius:12px;border:1px solid var(--line);background:var(--panel);color:var(--muted)}
@media (max-width:860px){
  header.site{flex-wrap:wrap;position:relative;top:0;margin:8px 8px 0;padding:10px 12px}
  .stage{display:none}
  nav.tabs{order:3;flex-basis:100%;justify-content:flex-start;margin:0;gap:6px} nav.tabs button{padding:0 10px}
  #openset{display:none}
  .hact{margin-left:auto}
  .navlabel{display:none}
}

/* controls */
.btn,a.btn{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:12px;font:500 14px/1 var(--font-body);color:var(--ink);
  background:var(--panel);border:1px solid var(--ctl);box-shadow:var(--panel-shadow);transition:background-color 160ms ease,border-color 160ms ease,color 160ms ease}
.btn:hover{border-color:var(--accent-border);background-color:var(--hover)}
.btn.primary{background:var(--btn-primary);border-color:var(--btn-primary);color:#fff}
.btn.primary:hover{background:var(--btn-primary-hover)}
.btn:disabled{opacity:.45;cursor:not-allowed}
input[type=search],input[type=text],input[type=number],input:not([type]),select,.search input,.gbar input,.row input,.gcol input[type=search],.controls select,.controls input{
  min-height:44px;font-size:16px;border:1px solid var(--ctl);border-radius:12px;background:var(--field);color:var(--ink);font-family:var(--font-body);transition:border-color 160ms ease,box-shadow 160ms ease}
input::placeholder{color:var(--faint)}
input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}
.side .head input{min-height:0;border:0;border-bottom:1px dashed var(--ctl);border-radius:0;background:transparent;font:700 22px/1.1 var(--font-body);letter-spacing:-.01em;text-transform:none;box-shadow:none}
.side .head select.ltsel{min-height:0;flex:0 1 auto;max-width:min(100%,360px);min-width:0;border:0;border-bottom:1px dashed var(--ctl);border-radius:0;background:transparent;font:700 22px/1.1 var(--font-body);letter-spacing:-.01em;padding:2px 22px 2px 0;color:var(--ink);box-shadow:none;cursor:pointer;text-overflow:ellipsis;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:right 8px center,right 3px center;background-size:5px 5px;background-repeat:no-repeat}
.side .head select.ltsel option{font:500 15px/1.3 var(--font-body);background:var(--panel-solid);color:var(--ink)}
.side .head .lthead{font-size:12px;color:var(--faint)}
.search li .own{color:var(--ink);font-weight:600}
.search li.lh{display:block;cursor:default;padding:6px 8px 4px;font:600 12px/1.2 var(--font-body);color:var(--faint);background:none}
.controls label{color:var(--faint)}
.seg{border-radius:12px;padding:4px}
.seg button,.dial button,.tg,.presets button{color:var(--muted);font-family:var(--font-body);text-transform:none;letter-spacing:0}
.seg button{border-radius:8px;font-weight:500;font-size:14px;min-height:36px}
.seg button:hover,.dial button:hover,.tg:hover,.gpos button:hover{color:var(--ink)}
.seg button[aria-pressed="true"],.presets button[aria-pressed="true"],.gpos button[aria-pressed="true"]{background:var(--accent-soft);color:var(--ink);border-color:var(--accent-border);box-shadow:inset 0 0 0 1px var(--accent-border)}
.gpos button{border-radius:12px;background:var(--panel);border:1px solid var(--ctl);border-bottom:3px solid var(--c);color:var(--ink);font:700 18px/1.05 var(--font-body);letter-spacing:-.01em;text-transform:none;box-shadow:var(--panel-shadow)}
.gpos button small{font:400 12px/1.2 var(--font-body);color:var(--faint)}
.gpos button[aria-pressed="true"] small{color:var(--muted)}
.gpos button.pALL{--c:var(--accent)}
.dial{border-radius:12px;border:1px solid var(--ctl);background:var(--raise)}
.dial button{font-weight:500;font-size:12.5px;border-left:1px solid var(--line);min-height:44px}
.dial button[aria-pressed="true"]{background:var(--panel-solid);color:var(--ink)}
.tg{border-radius:12px;border:1px solid var(--ctl);background:var(--panel);font-weight:500;font-size:13px;min-height:36px}
.tg[aria-pressed="true"]{color:var(--ink)}
.wpill{font:500 12px/1 var(--font-body);background:var(--raise);border-color:var(--line)}
.gadd{border:1px solid var(--ctl);background:var(--field);border-radius:8px;width:32px;height:32px;color:var(--ink)}
.gadd:hover{border-color:var(--accent-border)}
.rm,.gt .rst,.ctl button{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:8px;color:var(--faint);background:transparent;border:0}
.rm:hover{color:var(--bad);background:var(--hover)}.gt .rst:hover,.ctl button:hover{color:var(--ink);background:var(--hover)}

/* in-page sponsor strips */
.nolink{cursor:default}
.ctl-ico.shop[hidden]{display:none}.ctl-ico.getapp[hidden]{display:none}
.sponsor.nolink .go,.ad.nolink em{background:var(--ctl,var(--line));color:var(--muted)}
.sponsor{color:var(--ink);padding:12px 14px 12px 16px;gap:12px}
.sponsor>.ic{color:var(--accent-text)}
.sponsor .tag,.ad .tag{color:var(--accent-text);opacity:1}
.sponsor b,.ad b{font:700 18px/1.1 var(--font-body);text-transform:none;letter-spacing:-.005em;color:var(--ink)}
.sponsor span.copy,.ad span{color:var(--muted)}
.sponsor .go,.ad em{background:var(--btn-primary);color:#fff;border:0;border-radius:12px;padding:11px 14px;font:500 14px/1 var(--font-body);white-space:nowrap}
.sponsor:hover .go,.ad:hover em{background:var(--btn-primary-hover)}
.sponsor:hover,.ad:hover{border-color:var(--accent-border)}
.sponsor .mesh{display:none}

/* tables */
.tw{overflow:auto}
table{font-size:14px}
th{color:var(--faint);background:var(--th);border-bottom:1px solid var(--line);padding:12px 10px;font-size:12px;}
th:hover{color:var(--ink)}
th[aria-sort]{color:var(--accent-text)}
td{border-bottom:1px solid var(--line)}
tbody tr:hover{background:var(--hover)}
td.ov,.asset .val,.gt td.pts,.split b,.tot .adj b,.lvgrid b,.glist .pj,.gt td.lw,.proj b,td.lv,.slots .res,.gt td.fin,.rcol li .v,.gt input.st,.field input{font-family:var(--font-body);font-variant-numeric:tabular-nums}
td.ov,.gt td.pts{font-weight:600}
td.rkc,.gt td.rkc,.slots li .rk,.rcol li .rk{font:600 16px/1 var(--font-body);font-variant-numeric:tabular-nums;color:var(--faint)}
td .who small,.gt td.who small,.asset .nm small,.search li small,.rcol li small{color:var(--faint);font-size:12px}
.pos{font:700 12px/1 var(--font-label);color:var(--c)}
.pc-top .pos,.pc-bhead .pos,.ogc-top .pos{background:var(--c);color:var(--pos-ink);border-radius:4px;text-align:center}
.gt input.st{width:72px;min-height:34px;font-size:16px;padding:4px 8px;border-radius:8px;border:1px solid var(--ctl);background:var(--field);color:var(--ink);text-align:right}
.gt input.st:disabled{border-color:transparent;background:transparent;opacity:1}
.gt tr.ed td.pts{color:var(--accent-text)}
.gt tr.ed td.who b::after{color:var(--accent-text);font-size:12px}
.gt tr.cut td{border-top:2px solid var(--accent)}
.gt tr.hit5 td{background:var(--accent-soft)}.gt tr.hit1 td{background:color-mix(in srgb,var(--warn) 14%,transparent)}
.gt input.tick{accent-color:var(--accent);width:20px;height:20px}
.gt td.lw small{display:block;font:500 12px/1 var(--font-label);color:var(--faint);margin-top:3px}
.gt td.lw.pend i{font-style:normal;color:var(--warn);font-size:9px;margin-left:4px;vertical-align:super}
.opp{font:500 12px/1 var(--font-label);border-radius:8px;padding:6px 8px;color:var(--ink);background:var(--raise);border:1px solid var(--ctl)}
.opp.easy{background:color-mix(in srgb,var(--good) 16%,transparent);border-color:color-mix(in srgb,var(--good) 60%,transparent)}
.opp.neutral{background:color-mix(in srgb,var(--warn) 16%,transparent);border-color:color-mix(in srgb,var(--warn) 60%,transparent)}
.opp.hard{background:color-mix(in srgb,var(--bad) 14%,transparent);border-color:color-mix(in srgb,var(--bad) 55%,transparent)}
.wx{color:var(--muted);font-size:13px;gap:6px}
.wx i{display:inline-flex;color:var(--ink)}
.wx-sun i{color:var(--warn)}.wx-rain i{color:var(--wr)}.wx-snow i{color:var(--wr)}.wx-cloud i{color:var(--faint)}.wx-dome i{color:var(--accent-text)}.wx-wind i{color:var(--sr)}
.scoring{border-radius:12px;color:var(--muted)}
.scoring b{font:700 14px/1.2 var(--font-body);color:var(--accent-text)}
.gstatus{font:500 12px/1 var(--font-label);color:var(--accent-text)}.gstatus.bad{color:var(--bad)}
.search ul{background:var(--panel-solid);border:var(--panel-border);border-radius:12px;box-shadow:0 18px 40px rgba(0,0,0,.18)}
.search li{border-radius:8px}.search li.hi,.search li:hover{background:var(--hover)}
.glist li{background:transparent;border-bottom:1px solid var(--line)}.glist li:hover{background:var(--hover)}
.slots li.hit5{background:var(--accent-soft)}
.rcol h3 small{font:500 12px/1 var(--font-label);color:var(--faint)}
.rcol li:hover{background:var(--hover)}
.rcol li{border-bottom:1px solid var(--line)}
.mv,.glist .pj small,.lvgrid span{font-size:12px}
.facts span{color:var(--faint);}
.bdg{border-radius:12px;border-color:var(--ctl)}
.bdg .bi{color:var(--accent-text)}.bdg .bi .ico{width:26px;height:26px}
.bdg.got{border-color:var(--accent-border)}
.bdg .bc{font:500 12px/1 var(--font-label);}
code{font:500 13px/1 var(--font-body);background:var(--raise);border-radius:8px}
.tot{border-top:1px solid var(--line)}
.tot .adj{font:700 20px/1.1 var(--font-body);text-transform:none}
.pov .net{font:700 34px/1 var(--font-body);letter-spacing:-.02em}
.dw .big{font:700 52px/1 var(--font-body);letter-spacing:-.02em}
.why h4,.adv h4{color:var(--accent-text)}
.adv li::marker{color:var(--accent)}
.bar{background:var(--raise);border-color:var(--line)}
.grade{border-radius:8px;font:700 20px/1 var(--font-body);color:#fff}
.povhead .grade{font-size:24px}
.range{background:var(--raise);border-color:var(--line)}.range i{background:color-mix(in srgb,var(--accent) 40%,transparent)}.range b{background:var(--ink)}
.vol{border-color:var(--ctl)}
tr.meRow td{background:var(--accent-soft)}

/* dialogs */
dialog#grules,dialog#drawer{background:var(--panel-solid);color:var(--ink)}
dialog#grules{border-radius:var(--radius)}
dialog#drawer{border-radius:var(--radius) 0 0 var(--radius);border-right:0}
dialog::backdrop{background:rgba(4,20,15,.5)!important;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.rules ol li::marker{color:var(--accent-text);font-family:var(--font-label)}
@media (max-width:760px){.sponsor .copy{display:none}}

/* ===== side banners for fantasy-jerseys.com: wide screens only, in the empty gutters ===== */
/* Artwork lives in site/banners/ and is listed in FJ_BANNERS in the script. Both gutters rotate every 2 minutes from a random start. */
.fjside{display:none}
@media (min-width:1600px) and (min-height:600px){
  .fjside{display:block;position:fixed;top:112px;z-index:5;height:min(588px,calc(100vh - 136px));aspect-ratio:724/2172;border-radius:var(--radius);overflow:hidden;isolation:isolate;
    background:#04140F;border:1px solid rgba(78,209,153,.35);box-shadow:0 18px 40px rgba(4,30,22,.28),0 0 0 1px rgba(0,0,0,.2);
    transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
  .fjside.l{right:calc(50% + 626px)} .fjside.r{left:calc(50% + 626px)}
  .fjside img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .9s ease}
  .fjside img.on{opacity:1}
  /* glass edge: a thin highlight along the top and a soft vignette so the art sits in the frame */
  .fjside::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:inherit;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 0 0 1px rgba(255,255,255,.06),inset 0 -40px 60px -30px rgba(0,0,0,.35)}
  /* the shine: a diagonal light sweep on hover, and once each time a new banner rotates in */
  .fjside::after{content:"";position:absolute;inset:-20% -60%;z-index:3;pointer-events:none;
    background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.05) 45%,rgba(255,255,255,.22) 50%,rgba(255,255,255,.05) 55%,transparent 60%);
    transform:translateX(-100%);transition:transform 1.1s ease}
  .fjside:hover::after{transform:translateX(100%)}
  .fjside.glint::after{animation:fjglint 1.4s ease .5s 1}
  .fjside:hover{transform:translateY(-3px);border-color:rgba(78,209,153,.75);box-shadow:0 24px 50px rgba(4,30,22,.36),0 0 28px rgba(78,209,153,.22)}
  :root[data-theme="dark"] .fjside{border-color:rgba(78,209,153,.45);box-shadow:0 18px 40px rgba(0,0,0,.45)}
  :root[data-theme="dark"] .fjside:hover{box-shadow:0 24px 50px rgba(0,0,0,.5),0 0 32px rgba(78,209,153,.28)}
}
@keyframes fjglint{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
@media (prefers-reduced-motion:reduce){.fjside,.fjside img,.fjside::after{transition:none;animation:none!important}.fjside:hover{transform:none}}

/* ===== Play Games: the game picker ===== */
.gamehub{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:4px 0 18px}
.gamehub button{display:flex;gap:12px;align-items:flex-start;text-align:left;padding:14px;border-radius:var(--radius);border:var(--panel-border);background:var(--panel);box-shadow:var(--panel-shadow);color:var(--ink);cursor:pointer;font:inherit;transition:transform .15s,border-color .15s}
.gamehub button:hover{transform:translateY(-2px);border-color:var(--accent-border)}
.gamehub button[aria-pressed="true"]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent),var(--panel-shadow)}
.gh-ic{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--accent-soft);color:var(--accent-text)}
.gh-ic svg{width:22px;height:22px}
.gh-t{display:grid;gap:3px;min-width:0}.gh-t em{font:500 11px/1 var(--font-label);font-style:normal;color:var(--accent-text)}
.gh-t b{font:700 19px/1 var(--font-body);letter-spacing:-.01em}.gh-t small{font-size:12.5px;line-height:1.35;color:var(--muted)}
@media (max-width:720px){.gamehub{gap:6px;margin-bottom:12px}.gamehub button{flex-direction:column;align-items:center;text-align:center;gap:6px;padding:10px 6px;border-radius:12px}.gh-ic{width:32px;height:32px;border-radius:8px}.gh-t{justify-items:center}.gh-t small,.gh-t em{display:none}.gh-t b{font-size:15px;line-height:1.05;text-wrap:balance}}
#play .stagehead{margin-bottom:8px}@media (max-width:720px){#play .stagehead{display:none}}
.bbps{margin:4px 0 10px}
/* ===== nav with words, and Play Big Board as the call to action ===== */
nav.tabs button .tl{display:inline}
nav.tabs button .ts{display:none;white-space:nowrap}
nav.tabs button{padding:0 13px 0 11px}
nav.tabs button[aria-selected="true"]{padding:0 13px 0 11px}
@keyframes ping{0%{transform:scale(1);opacity:.9}100%{transform:scale(2.4);opacity:0}}
/* short tab labels below 1680px: the search field in the header takes the room the long ones had */
@media (max-width:1679px){nav.tabs button .tl,nav.tabs button[aria-selected="true"] .tl{display:none} nav.tabs button .ts{display:inline}}
@media (max-width:1539px){.stage{display:none}}
@media (max-width:860px){nav.tabs{justify-content:space-between} nav.tabs button{padding:0 10px;gap:6px} nav.tabs button:not(.cta-tab) .ic{display:none}}
/* game promo card */
  background:var(--panel);border:1px solid var(--accent-border);box-shadow:var(--panel-shadow);cursor:pointer;transition:border-color .16s,transform .16s}
/* the side banners carry the sponsor message on wide screens, so the top strip steps aside there */
@media (min-width:1600px) and (min-height:600px){#sp1{display:none}}
/* FJ_SHOW=false in the head: every Fantasy Jerseys placement steps out entirely */
:root[data-fj="off"] :is(#sp0,#sp1,#sp2,.fjside){display:none!important}

/* popups: a close button in the corner */
dialog#grules{position:fixed}
.dlgx{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:var(--raise);color:var(--muted);cursor:pointer}
.dlgx:hover{color:var(--ink);border-color:var(--accent-border)}
.rules h2{padding-right:48px}
/* ===== Home ===== */
.hhero{display:grid;grid-template-columns:1fr;gap:16px;align-items:stretch;margin-bottom:16px}
.hh1{padding:22px 24px;border-radius:var(--radius);background:var(--panel);border:var(--panel-border);box-shadow:var(--panel-shadow)}
.hh1 h2{font-size:38px;margin:6px 0 8px}
.hh1 p{margin:0;color:var(--muted);line-height:1.5;font-size:15.5px}.hh1 p b{color:var(--ink)}
.hh1 .eyebrow,.hcard .eyebrow{color:var(--accent-text)}
.hgrid{display:grid;grid-template-columns:1.35fr 1fr;gap:16px;align-items:start}
.hgrid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:start;margin-top:16px}
.hquad{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.hstack{display:grid;gap:16px}
.hsec{font-size:24px;margin:28px 0 12px}
.hcard{background:var(--panel);border:var(--panel-border);box-shadow:var(--panel-shadow);border-radius:var(--radius);padding:16px 16px 8px;min-width:0}
.hhead{display:grid;gap:4px;margin-bottom:8px}.hhead h3{font-size:18px}
.hl{list-style:none;margin:0;padding:0;counter-reset:h}
.hl li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--line)}
.hl li:first-child{border-top:0}
.hn{display:flex;align-items:center;gap:10px;min-width:0}
.hn .pos{min-width:38px;padding:5px 0}
.hn>span:last-child{min-width:0}
.hn b{display:block;font-weight:600;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hn b a{color:inherit;text-decoration:none}.hn b a:hover{color:var(--accent-text);text-decoration:underline}
.hn small{display:block;color:var(--faint);font-size:12.5px;line-height:1.35}
.hn small .opp{padding:2px 5px;font-size:12px}
.hp{font:700 16px/1 var(--font-body);font-variant-numeric:tabular-nums;white-space:nowrap}
.hp.up{color:var(--good)}.hp.down{color:var(--bad)}
.hcard.wide .hl{counter-reset:h}.hcard.wide .hl li{counter-increment:h}
.hcard.wide .hl li::before{content:counter(h);font:600 14px/1 var(--font-body);color:var(--faint);width:22px;flex:none;font-variant-numeric:tabular-nums}
.hcard.wide .hn{flex:1}
.qQB{border-top:3px solid var(--qb)}.qRB{border-top:3px solid var(--rb)}.qWR{border-top:3px solid var(--wr)}.qTE{border-top:3px solid var(--te)}
.st{font:500 12px/1 var(--font-label);padding:5px 8px;border-radius:8px;border:1px solid var(--ctl);white-space:nowrap}
.stOut{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 55%,transparent)}
.stDoubtful{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 55%,transparent)}
.wxi{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:var(--raise);color:var(--wr);flex:none}
.hhead h3{display:flex;align-items:center}
.reck{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0 0 6px;font-size:12px;color:var(--faint)}
.reck>span{display:inline-flex;align-items:center;gap:5px}.reck>span>i{width:10px;height:10px;border-radius:3px}
.recp{display:flex;align-items:center;gap:8px;flex:0 0 clamp(120px,28%,230px)}
.recb{display:flex;height:12px;border-radius:6px;overflow:hidden;min-width:8px}.recb i{display:block;height:100%;border-right:1.5px solid var(--panel-solid)}.recb i:last-child{border-right:0}
.recn{font:700 10.5px/1 var(--font-body);font-style:normal;color:#fff;background:var(--bad);border-radius:4px;padding:2px 4px}
.recl{margin-left:auto;font:600 11.5px/1 var(--font-body);color:var(--faint);white-space:nowrap}.recl.hi{color:#B07A00}:root[data-theme="dark"] .recl.hi{color:#F2C94C}
.dmb{position:relative;flex:0 0 clamp(70px,26%,150px);height:14px}
.dmb i{position:absolute;display:block}.dtrk{left:0;right:0;top:6px;height:2px;border-radius:2px;background:var(--line)}
.dln{top:5px;height:4px;border-radius:2px}.dln.up{background:color-mix(in srgb,var(--good) 45%,transparent)}.dln.down{background:color-mix(in srgb,var(--bad) 45%,transparent)}
.dav,.dwk{top:2px;width:10px;height:10px;margin-left:-5px;border-radius:50%;box-shadow:0 0 0 2px var(--panel-solid)}.dav{background:var(--faint)}.dwk.up{background:var(--good)}.dwk.down{background:var(--bad)}
.pwh{display:flex;align-items:center;flex-wrap:wrap;margin:0 0 4px}
.mfb{display:block;width:min(150px,100%);height:5px;margin-top:5px;border-radius:3px;background:var(--line);overflow:hidden}.mfb i{display:block;height:100%;background:var(--good);border-radius:3px}
.wxtal{display:grid;gap:8px;margin:2px 0 10px}
.wxbar{display:flex;height:14px;border-radius:6px;overflow:hidden}.wxbar i{display:block;border-right:2px solid var(--panel-solid)}.wxbar i:last-child{border-right:0}
.wxlg{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12.5px;color:var(--muted)}.wxlg>span{display:inline-flex;align-items:center;gap:5px}.wxlg>span>i{width:10px;height:10px;border-radius:3px}.wxlg b{color:var(--ink)}
@media (max-width:560px){.hrec .hl li{flex-wrap:wrap;row-gap:6px}.hrec .hn{flex:1 1 60%}.hrec .recp{order:3;flex:1 0 100%;padding-left:80px}.dmb{flex-basis:64px}}
@media (max-width:1100px){.hquad{grid-template-columns:1fr 1fr}.hgrid3{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.hhero,.hgrid,.hgrid3,.hquad{grid-template-columns:1fr}.hh1 h2{font-size:30px}}
@media (max-width:860px){nav.tabs button:not(.cta-tab) .ic{display:none}}

/* top bar sign-in and profile */
.topsign{min-height:40px}
.topme{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 12px 0 6px;border-radius:12px;border:1px solid var(--line);background:var(--panel);box-shadow:var(--panel-shadow);color:var(--ink);font:600 14px/1 var(--font-body)}
.topme:hover{border-color:var(--accent-border)}
.topme img{width:28px;height:28px;border-radius:50%}
.topme[hidden],.topsign[hidden],.topme img[hidden],.topini[hidden]{display:none}
.topini{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--btn-primary);color:#fff;font:700 14px/1 var(--font-body)}
@media (max-width:860px){#toph{display:none}.topme{padding:0 6px}}
.phead{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:16px;padding:20px}
.phead img,.pav{width:72px;height:72px;border-radius:50%;flex:none}
.pav{display:grid;place-items:center;background:var(--btn-primary);color:#fff;font:700 30px/1 var(--font-body)}
.pmain{flex:1;min-width:180px}.pmain h2{font-size:32px;margin:4px 0 2px;overflow-wrap:anywhere}
.pname{display:flex;align-items:center;gap:6px}.pname[hidden],.pnform[hidden]{display:none}
.pedit{flex:none;display:grid;place-items:center;width:44px;height:44px;margin:-6px 0;border:0;border-radius:12px;background:none;color:var(--faint);cursor:pointer}
.pedit:hover,.pedit:focus-visible{color:var(--accent-text);background:var(--hover)}
.pnform{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:6px 0 4px}
.pnform input{flex:1 1 150px;min-width:0;max-width:260px;padding:0 12px;font-weight:600}
#pnmsg.bad{color:var(--bad)}
.pstats{display:flex;gap:10px;flex-wrap:wrap}
.pstats div{display:grid;gap:2px;padding:10px 14px;border-radius:12px;background:var(--raise);border:1px solid var(--line);min-width:110px}
.pstats b{font:700 22px/1.1 var(--font-body);font-variant-numeric:tabular-nums}.pstats span{font-size:12.5px;color:var(--faint)}
.pgrid{display:grid;grid-template-columns:1.3fr 1fr;gap:16px;align-items:start}
.pgrid>section:first-child{grid-row:span 2}
.ptw{box-shadow:none}
.ptable td b{font-variant-numeric:tabular-nums}
.pbadges{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;padding-bottom:8px}
.pb{display:grid;gap:3px;padding:10px;border-radius:12px;border:1px dashed var(--ctl);opacity:.7}
.pb.got{opacity:1;border-style:solid;border-color:var(--accent-border);background:var(--accent-soft)}
.pb .bi{color:var(--accent-text)}.pb .bi .ico{width:24px;height:24px}.pb b{font-size:14px}.pb small{font-size:12px;color:var(--faint)}
.pcta{max-width:560px;padding:24px}.pcta h2{margin:6px 0 8px}.pcta p{color:var(--muted)}
.hcard .btn{margin:6px 0 10px}
@media (max-width:860px){.pgrid{grid-template-columns:1fr}.pgrid>section:first-child{grid-row:auto}}

/* calculator modes and start/sit */
.calcmode{margin-bottom:16px}
.calcmode button,.rmode button{font-weight:600}
.ssbar{display:flex;flex-wrap:wrap;gap:14px 22px;align-items:flex-end;padding:14px 16px;margin-bottom:16px}
.ssg{display:grid;gap:6px;justify-items:center;text-align:center}.ssg .eyebrow{color:var(--faint)}
.ssg .seg{box-shadow:none;padding:3px}.ssg .seg button{min-height:34px;padding:0 12px}
.ssreset{margin-left:auto}
.sswrap{display:grid;gap:12px}
/* one widget: spots, players and the answer (Adam, 10 Nov 2026: "Make them one widget at the top") */
.ssbox{padding:16px 20px 18px;display:grid;gap:12px}
.sshd{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.sshd h3{font-size:18px;margin:0}.sshd .small{color:var(--muted)}
.ssbox .sslots{padding:0}
.sspl{display:grid;gap:8px}.sspl-in{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.sspl-in .search{flex:0 1 420px;min-width:240px}
.sspl-in #sschips{display:flex;flex-wrap:wrap;align-items:center;gap:6px;flex:1 1 300px}.sspl-in .sschips{display:contents}
#ssout .ssempty{padding:14px 0 0;border-top:1px solid var(--line);border-radius:0}
#ssout>.hcard.ssverdict{margin-top:2px}
.sschips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}
.chip2{display:inline-flex;align-items:center;gap:6px;padding:4px 4px 4px 4px;border-radius:12px;border:1px solid var(--line);background:var(--raise);font-size:14px;font-weight:500}
.chip2 .pos{min-width:34px;padding:4px 0}.chip2 button{display:grid;place-items:center;width:26px;height:26px;border:0;background:transparent;color:var(--faint);border-radius:8px}.chip2 button:hover{color:var(--bad);background:var(--hover)}
.chip2 .ico{width:14px;height:14px}
.ssempty{display:flex;gap:14px;align-items:center;padding:22px}
.ssempty .gi{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--accent-soft);color:var(--accent-text)}
.ssverdict{padding:18px 20px;margin-bottom:12px;background:var(--panel)}
.ssverdict h2{font-size:30px;margin:4px 0 6px}.ssverdict p{margin:0;color:var(--muted)}.ssverdict b{color:var(--ink)}
.sslist{display:grid}
.sssum{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 18px;padding:12px 0 8px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}.sssum>b{font-size:17px;color:var(--ink)}.sssum b{color:var(--ink)}
.ssinfo{margin-left:auto;font-size:13px;color:var(--accent-text);text-decoration:underline dotted;cursor:help}
.ssrow{display:grid;grid-template-columns:72px minmax(150px,210px) minmax(200px,270px) minmax(0,420px) minmax(120px,1fr) 56px auto;gap:12px;align-items:center;padding:7px 0;border-top:1px solid var(--line);min-height:40px}
.ssrow.bench:not(.bench ~ .bench){border-top:2px solid var(--ctl)}
.ssrow .ssslot{font:600 13px/1.1 var(--font-body);color:var(--accent-text)}.ssrow.bench .ssslot{color:var(--faint)}
.ssrow .ssnm .pos{min-width:0;padding:0;margin:0 2px 0 0;flex:none}.ssrow .ssnm{display:flex;align-items:center;gap:6px;min-width:0;font-weight:600;white-space:nowrap}.ssrow .ssnm a{color:inherit;text-decoration:none;overflow:hidden;text-overflow:ellipsis}.ssrow .ssnm a:hover{color:var(--accent-text);text-decoration:underline}
.ssrow .ssgm,.ssrow .ssx{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted)}.ssrow .opp{padding:2px 5px}.ssrow .wx{margin-left:4px}.ssrow .wx .ico{width:14px;height:14px}
.ssrow .ssrange{cursor:help}.ssrow .rb{display:block}
.ssrow .sspts{font:700 17px/1 var(--font-body);text-align:right;font-variant-numeric:tabular-nums}
.ssrow.empty{grid-template-columns:72px 1fr;color:var(--muted)}
.sscard{display:grid;grid-template-columns:34px minmax(0,1.4fr) minmax(160px,1fr) 96px;gap:14px;align-items:center;padding:14px 16px;border-radius:12px;background:var(--panel);border:var(--panel-border);box-shadow:var(--panel-shadow)}
.sscard.best{border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-soft),var(--panel-shadow)}
.ssrk{font:700 20px/1 var(--font-body);color:var(--faint);text-align:center}.sscard.best .ssrk{color:var(--accent-text)}
.ssn{display:grid;gap:4px;min-width:0}.ssnm{display:flex;align-items:center;gap:8px}.ssnm .pos{min-width:38px;padding:5px 0}
.ssnm b{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ssnm a{color:inherit;text-decoration:none}.ssnm a:hover{color:var(--accent-text);text-decoration:underline}
.ssn .small{font-size:13px}.ssn .opp{padding:3px 6px}.ssn .wx{margin-left:6px}.ssn .wx .ico{width:15px;height:15px}.ssst{color:var(--warn);font-weight:600}
.rb{position:relative;height:10px;border-radius:999px;background:var(--raise);border:1px solid var(--line)}
.rb i{position:absolute;top:-1px;bottom:-1px;border-radius:999px;background:color-mix(in srgb,var(--accent) 40%,transparent)}
.rb b{position:absolute;top:-4px;width:3px;height:16px;border-radius:2px;background:var(--ink);transform:translateX(-1px)}
.rl{display:flex;justify-content:space-between;font-size:12px;color:var(--faint);margin-top:5px;font-variant-numeric:tabular-nums}
.sspts{text-align:right;display:grid;gap:2px}.sspts b{font:700 26px/1 var(--font-body);font-variant-numeric:tabular-nums}.sspts span{font-size:12px;color:var(--faint)}
/* this week's start/sit calls in the empty results area (pipeline/startsit_calls.py) */
.sscalls{container-type:inline-size;padding:18px 20px 8px;background:var(--panel);border:var(--panel-border);box-shadow:var(--panel-shadow);border-radius:var(--radius)}
.sschd{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px;margin-bottom:6px}.sschd h2{font-size:22px;margin:0}.sschd p{margin:0;color:var(--muted)}
.sscols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 28px}
.sscol h3{font-size:16px;margin:14px 0 2px;color:var(--c)}
.sspos{display:none}
.sscol h4{font-size:14px;margin:12px 0 2px}.ssv{font-weight:700}.ssv.start{color:var(--good)}.ssv.sit{color:var(--bad)}.ssv.close{color:var(--warn)}
.sscol ul{list-style:none;margin:0;padding:0}
.sscol li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:9px 0;border-top:1px solid var(--line)}
.sscol li:first-child{border-top:0}
.sccl{display:flex;align-items:baseline;gap:8px;min-width:0}.sscn{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sscn a{color:inherit;text-decoration:none}.sscn a:hover{color:var(--accent-text);text-decoration:underline}
.sccl .small{white-space:nowrap;color:var(--muted)}.sccl .opp{padding:2px 5px}
.sspj{margin-left:auto;font-variant-numeric:tabular-nums}
.sscol li>p{grid-column:1;margin:0;font-size:12.5px;line-height:1.4;color:var(--muted)}
.ssadd{grid-column:2;grid-row:1/span 2;align-self:center;border:0;background:none;padding:6px 2px;font:600 13px/1 var(--font-body);color:var(--accent-text);cursor:pointer}
.ssadd:hover{text-decoration:underline}.ssadd:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.sscall .ssv{margin-right:4px}
@container (max-width:1240px){.sscols{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (max-width:560px){.sscols{grid-template-columns:1fr}}
@media (max-width:600px){.sscols{grid-template-columns:1fr}.sscalls{padding:14px 14px 6px}
  .sspos{display:flex;gap:4px;margin:8px 0 0}.sspos button{flex:1;border:0;background:none;padding:10px 0;font:700 15px/1 var(--font-body);color:var(--c);opacity:.45;border-bottom:2px solid transparent}
  .sscalls[data-pos="QB"] [data-sspos="QB"],.sscalls[data-pos="RB"] [data-sspos="RB"],.sscalls[data-pos="WR"] [data-sspos="WR"],.sscalls[data-pos="TE"] [data-sspos="TE"]{opacity:1;border-bottom-color:currentColor}
  .sscalls[data-pos] .sscol{display:none}.sscalls[data-pos="QB"] .sscol[data-pos="QB"],.sscalls[data-pos="RB"] .sscol[data-pos="RB"],.sscalls[data-pos="WR"] .sscol[data-pos="WR"],.sscalls[data-pos="TE"] .sscol[data-pos="TE"]{display:block}
  .sscol h3{display:none}}
@media (max-width:1100px){.ssrow{grid-template-columns:64px minmax(0,1fr) minmax(90px,140px) 50px auto;gap:2px 12px}.ssrow .ssx{display:none}
  .ssrow .ssslot{grid-area:1/1/3/2}.ssrow .ssnm{grid-area:1/2}.ssrow .ssgm{grid-area:2/2}.ssrow .ssrange{grid-area:1/3/3/4}.ssrow .sspts{grid-area:1/4/3/5}.ssrow .tou{grid-area:1/5/3/6}}
@media (max-width:600px){.ssrow{grid-template-columns:44px minmax(0,1fr) 54px;gap:3px 8px}.ssrow .tou{display:none}.ssrow .ssrange{grid-area:3/2}.ssrow .sspts{grid-area:1/3/4/4}.ssrow .ssslot{grid-area:1/1/4/2;font-size:12px}.ssinfo{margin-left:0}.ssrow .ssgm{white-space:normal}}

/* player panel */
dialog#drawer{width:min(620px,100%)}
.dw{gap:18px}
.dhead{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.dhead h2{font-size:32px;margin:6px 0 0}
.dmeta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:14px;color:var(--muted)}.dmeta .pos{padding:5px 8px}
dialog#drawer .dlgx{position:static;flex:none}
.dval{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;padding:16px;border-radius:12px;background:var(--raise);border:1px solid var(--line)}
.dval .eyebrow{color:var(--accent-text)}.dval .big{font:700 48px/1.05 var(--font-body);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.drange{display:grid;gap:2px;text-align:right}.drange span{font-size:12.5px;color:var(--faint)}.drange b{font:700 18px/1.2 var(--font-body);font-variant-numeric:tabular-nums}.drange small{font-size:12.5px;color:var(--faint)}
.dsec{display:grid;gap:8px}.dsec h3{font-size:17px}
.dsh{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}
#dchg .up{color:var(--good);font-weight:600}#dchg .down{color:var(--bad);font-weight:600}
.dnote{margin:0;font-size:12.5px}
.vchart{position:relative}
.vchart svg{width:100%;height:auto;display:block;outline-offset:4px;touch-action:none}
.vchart .g{stroke:var(--line);stroke-width:1}
.vchart .yl,.vchart .xl{fill:var(--faint);font:500 11px var(--font-body)}
.vchart .ln{fill:none;stroke:var(--chart-line);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.vchart .xh{stroke:var(--faint);stroke-width:1;stroke-dasharray:3 3}
.vchart .dot{fill:var(--chart-line);stroke:var(--panel-solid);stroke-width:2}
.vchart .hit{fill:transparent;cursor:crosshair}
.vtip{position:absolute;top:-6px;display:grid;gap:1px;padding:6px 10px;border-radius:8px;background:var(--panel-solid);border:1px solid var(--line);box-shadow:0 8px 20px rgba(0,0,0,.15);pointer-events:none;white-space:nowrap}
.vtip[hidden]{display:none}.vtip b{font:700 15px/1.2 var(--font-body);font-variant-numeric:tabular-nums}.vtip span{font-size:12px;color:var(--faint)}
.dtbl summary{cursor:pointer;font-size:13px;color:var(--accent-text);font-weight:500}.dtbl table{margin-top:6px;font-size:13px}.dtbl td,.dtbl th{padding:5px 8px}
.drow{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 0;border-top:1px solid var(--line)}
.drow div{display:grid;gap:2px}.drow b{font-weight:600;font-size:14.5px}.drow small{font-size:12.5px;color:var(--faint);line-height:1.35}
.drow>span{font:600 15px/1.2 var(--font-body);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}

/* matchups */
.hsech{display:flex;align-items:baseline;gap:6px 14px;flex-wrap:wrap;margin:24px 0 12px}.hsech .hsec{margin:0}
.mgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-bottom:8px}
.mcard{display:grid;gap:6px;text-align:left;padding:12px 14px;border-radius:12px;background:var(--panel);border:var(--panel-border);box-shadow:var(--panel-shadow);color:var(--ink);font:inherit;transition:border-color .16s,transform .16s}
.mcard:hover{border-color:var(--accent-border);transform:translateY(-1px)}
.mcard{position:relative;isolation:isolate;overflow:hidden}
.msky{position:absolute;left:0;right:0;top:0;height:92px;z-index:-1;pointer-events:none;opacity:.5;
  -webkit-mask-image:linear-gradient(180deg,#000 30%,transparent 100%);mask-image:linear-gradient(180deg,#000 30%,transparent 100%)}
.mcard .mtime,.mcard .mrow{position:relative;text-shadow:0 0 3px var(--panel-solid),0 0 8px var(--panel-solid),0 0 14px var(--panel-solid)}
.mcard .mtime{color:var(--muted)}
.msky svg{display:block;width:100%;height:100%}
.msky.sk{height:118px;opacity:.78;-webkit-mask-image:linear-gradient(180deg,#000 62%,transparent 100%);mask-image:linear-gradient(180deg,#000 62%,transparent 100%)}
.mcard:hover .msky.sk{opacity:.9}
.msky.sk.wx{opacity:.92}
:root[data-theme="dark"] .msky.sk{opacity:.55}:root[data-theme="dark"] .msky.sk.wx{opacity:.72}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .msky.sk{opacity:.55}:root:not([data-theme="light"]) .msky.sk.wx{opacity:.72}}
.mcard:hover .msky{opacity:.62}
:root[data-theme="dark"] .msky{opacity:.4}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .msky{opacity:.4}}

.mtime{display:flex;justify-content:space-between;align-items:center;gap:6px;font-size:12.5px;color:var(--faint)}.mtime .wx{font-size:12px}.mtime .ico{width:15px;height:15px}
.mrow{display:flex;justify-content:space-between;align-items:baseline;font-size:17px}.mrow b{font-weight:600}.mrow em{font-style:normal;font:700 20px/1 var(--font-body);font-variant-numeric:tabular-nums;color:var(--muted)}
.mrow.fav em{color:var(--accent-text)}
.mfoot{font-size:12px;color:var(--faint);border-top:1px solid var(--line);padding-top:6px}
dialog#gamedlg{overflow:auto;border:var(--panel-border);border-radius:var(--radius);padding:0;width:min(1080px,calc(100% - 24px));max-height:90vh;background:var(--panel-solid);color:var(--ink);box-shadow:0 24px 60px rgba(0,0,0,.3)}
.gdw{padding:22px;display:grid;gap:16px}.gdw h2{font-size:30px}.gdw h2 .small{font-size:18px;font-weight:500}
dialog#gamedlg .dlgx{position:static;flex:none}
.gtop{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gtop>div{padding:12px 14px;border-radius:12px;background:var(--raise);border:1px solid var(--line)}.gtop p{margin:4px 0 0;color:var(--muted)}
.gtop .eyebrow,.gsub2 .eyebrow{color:var(--accent-text)}
.gcols{display:grid;grid-template-columns:1fr 1fr;gap:16px 40px;position:relative}
@media (min-width:761px){.gcols::before{content:'';position:absolute;left:50%;top:6px;bottom:6px;border-left:1px solid var(--line)}}
.gteam{display:grid;gap:12px;align-content:start}.gteam h3{display:flex;justify-content:space-between;align-items:baseline;font-size:22px;padding-bottom:6px;border-bottom:2px solid var(--line)}
.gproj{font:700 24px/1 var(--font-body);color:var(--accent-text)}
.gsub2{display:grid;gap:4px}.gsub2 .hl li{padding:7px 0}
.gsub2 .hn b a{color:inherit;text-decoration:none}.gsub2 .hn b a:hover{color:var(--accent-text);text-decoration:underline}
@media (max-width:760px){.gcols,.gtop{grid-template-columns:1fr}}
@media (max-width:560px){.mgrid{grid-template-columns:1fr 1fr;gap:8px}.mcard{padding:10px}.mrow{font-size:15px}.mrow em{font-size:17px}.mtime .wx span,.mtime .wx{font-size:0}.mtime .wx .ico{width:14px;height:14px}.mfoot{font-size:11.5px}}

/* weekly champions */
/* this week's champions: one closeable box on Play Games for every game with a global leaderboard. It steps aside while one of those leaderboards is open, so no score shows twice */
.pnote{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 14px;align-items:center;margin:0 0 14px;padding:12px 52px 12px 16px;border-radius:var(--radius);color:var(--ink);background:linear-gradient(100deg,color-mix(in srgb,var(--warn) 14%,transparent),transparent 55%),var(--panel);border:1px solid color-mix(in srgb,var(--warn) 45%,transparent);box-shadow:var(--panel-shadow)}
.pnote[hidden],#play:has(#bigboardgame:not([hidden]) .gpanel[data-k="lb"]:not([hidden])) .pnote,#play:has(#bbgame:not([hidden]) #bblb) .pnote{display:none}
.pnote .gi{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:color-mix(in srgb,var(--warn) 18%,transparent);color:var(--warn)}.pnote .gi .ico{width:22px;height:22px}
.pnote .eyebrow{color:var(--warn);display:block;margin-bottom:2px}
.pn-rows{display:grid;grid-template-columns:auto minmax(0,auto) auto;justify-content:start;column-gap:16px}
.pn-rows a{display:grid;grid-template-columns:subgrid;grid-column:1/-1;align-items:baseline;padding:4px 0;color:inherit;text-decoration:none;font-size:15px}
.pn-rows a>span:first-child{color:var(--muted);white-space:nowrap}.pn-rows b{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pn-rows i{font-style:normal;font-weight:700;font-variant-numeric:tabular-nums;text-align:right}
.pn-rows a:hover b,.pn-rows a:focus-visible b{color:var(--accent-text);text-decoration:underline}
.pnx{position:absolute;top:4px;right:4px;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:12px;background:none;color:var(--muted);cursor:pointer}.pnx:hover{color:var(--ink)}.pnx .ico{width:18px;height:18px}
@media (max-width:560px){.pnote{grid-template-columns:minmax(0,1fr);padding:10px 44px 8px 14px}.pnote .gi{display:none}.pn-rows{column-gap:10px}.pn-rows a{font-size:14px}}
@media (max-width:360px){.pn-rows{column-gap:8px}.pn-rows a{font-size:13px}}
.champs{margin-bottom:14px}.champh{display:grid;gap:3px;margin-bottom:8px}.champh .eyebrow{color:var(--warn)}.champh h3{font-size:20px}
.champrow{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px}
.champ{flex:none;width:220px;display:grid;gap:6px;padding:12px;border-radius:12px;background:var(--panel);border:var(--panel-border);box-shadow:var(--panel-shadow)}
.champ.latest{border-color:color-mix(in srgb,var(--warn) 55%,transparent)}
.cw{display:flex;justify-content:space-between;align-items:baseline;font-weight:700}.cw small{font-weight:400;font-size:12px;color:var(--faint)}
.ct{display:grid;grid-template-columns:30px auto 1fr auto;gap:6px;align-items:center;font-size:13.5px}
.ct img{border-radius:50%}.ct a{color:inherit;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct a:hover{color:var(--accent-text)}
.ct .cr{font-size:12px;color:var(--faint)}.ct b{font-variant-numeric:tabular-nums}
.ct.first{font-size:15.5px}.ct.first .cr{color:var(--warn);font-weight:700}.ct.me a{font-weight:700;color:var(--accent-text)}
.ct:not(:has(img)){grid-template-columns:30px 1fr auto}
.grk{font-weight:600;font-variant-numeric:tabular-nums}.grk small{font-weight:400;color:var(--faint)}.grk.top{color:var(--warn)}

/* the central tool on each tab stands out; everything around it stays quiet */
.focus{position:relative;display:grid;gap:14px;padding:20px 20px 22px;margin:4px 0 20px;border-radius:var(--radius);background:var(--panel-solid);border:1px solid var(--line)}
.focus[hidden]{display:none}
.focushead{display:flex;justify-content:space-between;align-items:flex-end;gap:12px 20px;flex-wrap:wrap}
.focushead h2{font-size:28px;margin-top:4px}.focushead .eyebrow{color:var(--accent-text)}
.focushead .calcmode{margin:0}
.focus .side,.focus .verdict,.focus .tw,.focus .hcard,.focus .sscard,.focus .scoring{background:var(--raise);box-shadow:none;border:1px solid var(--line);-webkit-backdrop-filter:none;backdrop-filter:none}
:root[data-theme="dark"] .focus .side,:root[data-theme="dark"] .focus .verdict,:root[data-theme="dark"] .focus .tw,:root[data-theme="dark"] .focus .hcard,:root[data-theme="dark"] .focus .sscard{background:rgba(255,255,255,.035)}
.focus .sscard.best,.focus .sscard.flex{border-color:var(--accent-border)}
.focus .th,.focus th{background:var(--panel-solid)}
.focus .ssbar{margin-bottom:0}
.focus .note{margin-top:4px}
.gpanel.focus{margin-top:14px}
#mode-ss,#mode-rd,#mode-dyn{display:grid;gap:14px}
#mode-ss[hidden],#mode-rd[hidden],#mode-dyn[hidden]{display:none}
.rdnote{margin:0}
/* start/sit lineup */
.sslots{display:grid;gap:8px;padding:10px 0 4px}
#ssslots{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:6px}
@media (min-width:901px){#ssslots{grid-template-columns:repeat(8,minmax(0,170px))}}
.stp>span{white-space:nowrap}
.stp{display:grid;gap:4px;padding:8px;border-radius:12px;border:1px solid var(--line);background:var(--panel-solid)}
.stp>span{font-size:12.5px;font-weight:600}
.stp div{display:flex;align-items:center;justify-content:space-between}
.stp button{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;border:1px solid var(--ctl);background:var(--field);color:var(--ink);font:600 16px/1 var(--font-body)}
.stp button:hover:not(:disabled){border-color:var(--accent-border)}.stp button:disabled{opacity:.35}
.stp b{font:700 18px/1 var(--font-body);font-variant-numeric:tabular-nums}
.sshd{font-size:16px;margin:6px 0 -4px}
.ssslot{font:700 13px/1.1 var(--font-body);text-align:center;color:var(--accent-text);}
.sscard.bench .ssslot{color:var(--faint)}
.sscard.bench{opacity:.92}
.sscard.empty{grid-template-columns:34px 1fr;border-style:dashed}
.sscard{grid-template-columns:64px minmax(0,1.4fr) minmax(150px,1fr) 88px}
.kick{font-weight:600;color:var(--ink)}
@media (max-width:900px){.sscard{grid-template-columns:54px 1fr 72px}}

@media (max-width:640px){
  .focus{padding:16px 12px 18px}
  .focus>*,#mode-ss>*,#mode-rd>*,#mode-dyn>*,.sswrap>*{min-width:0}
  .stagehead .calcmode{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}
  .stagehead .rmode{width:100%;display:grid;grid-template-columns:repeat(2,1fr)}
  .stagehead .calcmode button{padding:0 6px;font-size:13px}
  .ssbar{gap:10px 14px}
  .hact{flex:none}.topme{flex:none;min-width:40px;justify-content:center}
}

/* dynasty trade: sums and pop-outs */
.trow{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:var(--muted)}
.trow.adj{font:700 20px/1.2 var(--font-body);color:var(--ink);margin-top:2px}.trow.adj b{font-variant-numeric:tabular-nums}
.ipop{position:relative;display:inline-block;vertical-align:middle}
.ibtn{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;border:1px solid var(--ctl);background:var(--field);color:var(--accent-text);font:700 12px/1 var(--font-body);cursor:pointer;margin-left:4px}
.ibtn:hover,.ibtn[aria-expanded="true"]{border-color:var(--accent);background:var(--accent-soft)}
.pop{position:absolute;z-index:50;left:-8px;top:28px;width:min(320px,80vw);display:grid;gap:6px;padding:12px 14px;border-radius:12px;background:var(--panel-solid);border:1px solid var(--accent-border);box-shadow:0 18px 40px rgba(0,0,0,.2);font:400 13px/1.4 var(--font-body);color:var(--ink);text-align:left}
.pop[hidden]{display:none}
.ipop .pop b{font:700 13.5px/1.3 var(--font-body);color:var(--ink)}.pop small{color:var(--faint);font-size:12.5px}
.pop table{width:100%;font-size:13px}.pop td{padding:3px 0;border:0;text-align:right;white-space:nowrap}.pop td:first-child{text-align:left;white-space:normal;padding-right:8px}
.pop tr.t td{border-top:1px solid var(--line);font-weight:700;padding-top:5px}
.eq{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin:10px 0 2px}
.eq>div{display:grid;gap:2px}.eq span{font-size:12.5px;color:var(--faint)}.eq b{font:700 22px/1.1 var(--font-body);font-variant-numeric:tabular-nums}
.eq em{font-style:normal;font-size:20px;color:var(--faint);padding-bottom:2px}
.eq .res b{font-size:30px}.eq .res b.up{color:var(--good)}.eq .res b.down{color:var(--bad)}
.eqn{margin:4px 0 0}
.eq .pop{left:-8px;right:auto}

/* team sheets and finished games */
.wkseg{box-shadow:none;padding:3px}.wkseg button{min-height:34px}
.mcard.done .mtime{justify-content:space-between}.mcard .fin{font-weight:700;color:var(--ink);font-size:11.5px}
/* "Final" over actual scores and "Prj." over projections, each label sitting right above its own column of numbers */
.mcard .mrow em,.mlab{display:flex;align-items:baseline;justify-content:flex-end;gap:8px}
.mcard .mrow em .sc,.mlab .sc{min-width:30px;text-align:right}
.mcard.done .mrow em small,.mlab small{font:500 13px/1 var(--font-body);color:var(--faint);min-width:26px;text-align:right}
.mtime .mlab{margin-left:auto}.mlab .sc,.mlab small{font:600 10.5px/1 var(--font-label);color:var(--faint)}
.mcard.done .mlab .sc{color:var(--ink)}
@media (max-width:560px){.mcard .mrow em .sc,.mlab .sc{min-width:24px}.mcard.done .mrow em small,.mlab small{min-width:22px}.mcard .mrow em,.mlab{gap:6px}}
.mcard.done .mrow.fav em{color:var(--ink)}.mcard.done .mrow:not(.fav) em{color:var(--faint)}
.shp{display:grid;grid-template-columns:1fr 52px 52px 52px;gap:4px;align-items:end;margin:12px 0 2px;padding-bottom:4px;border-bottom:1px solid var(--line);font:600 12.5px/1.2 var(--font-body);color:var(--accent-text)}
.shp span{text-align:right;font:500 11.5px/1 var(--font-body);color:var(--faint)}
.shp:not(:has(span:nth-child(2))){grid-template-columns:1fr 52px}
.sh li{display:grid;grid-template-columns:1fr 52px;gap:4px}.sh li.pl3{grid-template-columns:1fr 52px 52px 52px}
.sh .hp{text-align:right;font-size:15px}.sh .pj{color:var(--muted);font-weight:600}.sh li.pl3 .pj{color:var(--faint);font-weight:500}
.sh .act{font-weight:700}.sh .dif{font-size:13px;font-weight:600}.sh .dif.up{color:var(--good)}.sh .dif.down{color:var(--bad)}
.gproj small{font:500 13px/1 var(--font-body);color:var(--faint);margin-left:4px}
/* college teams with no game this week: one tile in the games grid, the size of a game card (the min-heights are a game
   card's own height, for when the tile sits alone on a row). Ten names fit; past that the last slot counts the rest and
   opens them in a popout, so the tile never grows */
.mcard.idle{align-content:start;min-height:139px;overflow:visible}.mcard.idle:hover{border:var(--panel-border);transform:none}
.idl{display:grid;grid-template-columns:minmax(calc(50% - 6px),auto) auto;justify-content:start;gap:3px 12px;font:500 12.5px/1.2 var(--font-body);color:var(--ink)}
.idl .ipop{display:block;margin:0}
.idl .ibtn{display:inline;width:auto;height:auto;margin:0;border:0;border-radius:0;background:none;font:inherit;color:var(--faint);white-space:nowrap;text-decoration:underline dotted;text-underline-offset:3px}
.idl .ipb{width:min(240px,calc(100vw - 24px))}.ipb .idl{color:inherit;font-size:13px}
@media (max-width:560px){.mcard.idle{min-height:128px}}
.gproj{display:inline-flex;align-items:flex-end;gap:12px}.gsc{display:grid;justify-items:end;gap:3px}.gsc i{font:600 10.5px/1 var(--font-label);font-style:normal;color:var(--faint)}
.gsc.sm b{font:500 15px/1 var(--font-body);color:var(--faint)}.gsc b{font:inherit;color:inherit}
.finl.prj{background:transparent;color:var(--faint)}
.gtm{white-space:nowrap}
.finl.live{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-variant-numeric:tabular-nums;cursor:help}
.ldot{flex:none;width:6px;height:6px;border-radius:50%;background:var(--bad)}
@media (prefers-reduced-motion:no-preference){.ldot{animation:ldot 2.4s ease-in-out infinite}}
@keyframes ldot{50%{opacity:.35}}
.lnow{display:inline-flex;align-items:center;gap:5px;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}
.finl{font:700 12px/1 var(--font-body);padding:4px 8px;border-radius:8px;background:var(--raise);border:1px solid var(--line);vertical-align:middle}
.lvd{display:inline-block;width:.5em;height:.5em;margin-right:.4em;border-radius:50%;background:var(--bad);vertical-align:middle;animation:ldot 1.6s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.lvd{animation:none}}
.lvp{font-variant-numeric:tabular-nums;white-space:nowrap}.lvp.on{color:var(--ink);font-weight:600}
.pK{--c:#9A6B12}.pDST{--c:#3F5A73}
:root[data-theme="dark"] .pK{--c:#E0B25A}:root[data-theme="dark"] .pDST{--c:#8FB0CC}
.pDL,.pLB,.pDB{--c:#3F5A73}:root[data-theme="dark"] .pDL,:root[data-theme="dark"] .pLB,:root[data-theme="dark"] .pDB{--c:#8FB0CC}
@media (max-width:560px){.sh li.pl3,.shp{grid-template-columns:1fr 38px 44px 42px}.sh .hn .pos{min-width:32px}.sh .hn b{white-space:normal;font-size:14px}.sh .hp{font-size:14px}.sh .dif{font-size:12.5px}}
/* ---------- over/under calls ---------- */
.ou{display:inline-flex;align-items:center;gap:4px;font-weight:400}
.ouv{display:grid;justify-items:center;gap:2px;min-width:46px}
.ouv b{font:700 16px/1 var(--font-body);font-variant-numeric:tabular-nums}
.ouv small{font:500 10.5px/1 var(--font-body);color:var(--faint);white-space:nowrap;}
.oub{display:grid;place-items:center;width:26px;height:26px;padding:0;border-radius:8px;border:1px solid var(--line);background:var(--raise);color:var(--faint);cursor:pointer;transition:background .15s,color .15s,border-color .15s,transform .1s}
.oub .ico{width:14px;height:14px}
.oub:active{transform:scale(.92)}
.oub.over:hover{color:var(--good);border-color:color-mix(in srgb,var(--good) 55%,transparent)}
.oub.under:hover{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 55%,transparent)}
.oub.over[aria-pressed="true"]{background:var(--good);border-color:var(--good);color:#fff}
.oub.under[aria-pressed="true"]{background:var(--bad);border-color:var(--bad);color:#fff}
.oub:disabled{cursor:default;opacity:.45}.oub:disabled[aria-pressed="true"]{opacity:.8}
.hp.hasou{font-weight:400}
.oucard{padding:16px;border-radius:12px;border:1px solid var(--accent-border);background:linear-gradient(180deg,var(--accent-soft),transparent 70%)}
.oucard[hidden]{display:none}
.oubig{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px}
.ouline{display:grid;justify-items:center;gap:2px;text-align:center}
.ouline b{font:700 40px/1 var(--font-body);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.ouline span{font-size:11.5px;color:var(--faint)}
.oubtn{display:flex;align-items:center;justify-content:center;gap:6px;min-height:52px;border-radius:12px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);font:500 17px/1 var(--font-label);cursor:pointer;transition:background .15s,color .15s,border-color .15s,transform .1s}
.oubtn .ico{width:20px;height:20px}
.oubtn:active{transform:scale(.97)}
.oubtn.over{color:var(--good)}.oubtn.under{color:var(--bad)}
.oubtn.over:hover{border-color:var(--good)}.oubtn.under:hover{border-color:var(--bad)}
.oubtn.over[aria-pressed="true"]{background:var(--good);border-color:var(--good);color:#fff}
.oubtn.under[aria-pressed="true"]{background:var(--bad);border-color:var(--bad);color:#fff}
.oubtn:disabled{cursor:default;opacity:.5}.oubtn:disabled[aria-pressed="true"]{opacity:.85}
.oubar{display:flex;height:10px;border-radius:99px;overflow:hidden;background:var(--line);gap:2px}
.oubar i{display:block;height:100%}.oubar .u{background:var(--bad)}.oubar .o{background:var(--good)}
.oucl{display:flex;justify-content:space-between;gap:8px;margin-top:5px;font-size:12.5px;color:var(--faint)}
.oucl span:first-child{color:var(--bad);font-weight:600}.oucl span:last-child{color:var(--good);font-weight:600}
.ounote{margin:0}.ounote a,.toast a{color:var(--accent-text);font-weight:600}
.oures{display:inline-block;padding:2px 7px;border-radius:99px;font:600 11px/1.3 var(--font-label);border:1px solid var(--line)}
.oures.W{color:var(--good);border-color:color-mix(in srgb,var(--good) 55%,transparent);background:color-mix(in srgb,var(--good) 12%,transparent)}
.oures.L{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 55%,transparent);background:color-mix(in srgb,var(--bad) 10%,transparent)}
.oures.P,.oures.V,.oures.open{color:var(--faint)}
.oupick{display:inline-flex;align-items:center;gap:3px;font-weight:600}.oupick .ico{width:13px;height:13px}.oupick.over{color:var(--good)}.oupick.under{color:var(--bad)}
.oupast{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:8px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
#ouhome:not(:empty){margin-top:16px}
#ouhome a[data-gogame]{color:var(--accent-text);font-weight:600;white-space:nowrap}
.ouhero{display:flex;gap:14px;align-items:center;padding-bottom:16px}.ouhero .gi{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:12px;background:var(--btn-primary);color:#fff}.ouhero .gi .ico{width:26px;height:26px}
.oustats{display:flex;gap:18px;flex-wrap:wrap}.oustats div{display:grid;gap:2px}.oustats b{font:700 22px/1 var(--font-body);font-variant-numeric:tabular-nums}.oustats span{font-size:12px;color:var(--faint)}
.oulist .hp{display:flex;align-items:center;gap:8px;font-size:14px}
.crowd2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.crowd2 h4{margin:0 0 4px;font:500 13px/1 var(--font-label);}
.crowd2 h4.o{color:var(--good)}.crowd2 h4.u{color:var(--bad)}
@media (max-width:640px){.crowd2{grid-template-columns:1fr}.ouline b{font-size:34px}.oubtn{min-height:48px;font-size:15px}}
.sh li:has(.hasou){grid-template-columns:1fr auto}
.sh .ou{gap:3px}.sh .oub{width:24px;height:24px}.sh .ouv{min-width:38px}.sh .ouv b{font-size:15px}
/* ===== game report: explainers, sky header, stars, injury badges, floor-to-ceiling bars ===== */
.ipop{position:relative;display:inline-flex;vertical-align:middle;margin-left:6px}
.ibtn{display:grid;place-items:center;width:20px;height:20px;padding:0;border-radius:50%;border:1px solid var(--ctl);background:var(--panel-solid);color:var(--muted);font:italic 700 12px/1 Georgia,"Times New Roman",serif;cursor:pointer;flex:none}
.ibtn:hover,.ipop.open .ibtn{color:var(--accent-text);border-color:var(--accent-border)}
.ipb{display:none;position:fixed;z-index:200;width:min(300px,calc(100vw - 24px));padding:12px 14px;border-radius:12px;background:var(--tip-bg);color:var(--tip-ink);font:400 13px/1.45 var(--font-body);letter-spacing:0;text-transform:none;text-align:left;white-space:normal;box-shadow:0 14px 34px rgba(0,0,0,.28)}
.ipb b{font-weight:700;color:inherit}.ipop.open .ipb{display:block}

.tipx{display:none;position:fixed;z-index:210;max-width:min(260px,calc(100vw - 24px));padding:8px 11px;border-radius:8px;background:var(--tip-bg);color:var(--tip-ink);font:500 12.5px/1.4 var(--font-body);box-shadow:0 10px 26px rgba(0,0,0,.25);pointer-events:none}
.eyi{display:inline-flex;align-items:center}
/* the header carries the sky: time of day and weather, faint enough to read through */
.skyc{--sky1:#9FD2F4;--sky2:#DCEFFB;--sky-sun:#F5B83D;--sky-cloud:#FFFFFF;--sky-ink:#2A4256;--sky-rain:#3E7CC0;--sky-lamp:#FFE9A8}
.gdw.skyc{background:radial-gradient(55% 360px at 84% 0,color-mix(in srgb,var(--sky-sun) 20%,transparent),transparent 70%),
  linear-gradient(180deg,color-mix(in srgb,var(--sky1) 40%,var(--panel-solid)) 0,color-mix(in srgb,var(--sky2) 28%,var(--panel-solid)) 170px,color-mix(in srgb,var(--sky2) 10%,var(--panel-solid)) 340px,var(--panel-solid) 460px) no-repeat}
.gsky .dmeta,.gsky .gline,.gwt small{color:var(--ink);opacity:.78}
.gsky h2,.gwt b{text-shadow:0 0 10px color-mix(in srgb,var(--panel-solid) 70%,transparent)}
.gsky{position:relative;isolation:isolate;margin:-22px -22px 0;padding:22px 22px 18px;align-items:flex-start;gap:16px}
.sky-morning{--sky1:#C9E6F7;--sky2:#FBE9D0;--sky-sun:#F7C25A}
.sky-dusk{--sky1:#B9AEE6;--sky2:#F9C9A2;--sky-sun:#F08A3C;--sky-ink:#3C3560}
.sky-night{--sky1:#5D6FA6;--sky2:#AFB8DA;--sky-sun:#F3E7BE;--sky-ink:#26325A;--sky-cloud:#C6CCE0}
.sky-grey{--sky1:#B5C1CC;--sky2:#E3E8EC;--sky-cloud:#F4F6F8}.sky-grey.sky-night{--sky1:#6F7891;--sky2:#B9BFCC;--sky-cloud:#9AA3B8}
:root[data-theme="dark"] .skyc{--sky-ink:#DDE7F0;--sky-cloud:#9FB0C2;--sky-rain:#8FC1FF}
:root[data-theme="dark"] .skyc.sky-night{--sky1:#2B3C78;--sky2:#17244A;--sky-cloud:#55617E}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .skyc{--sky-ink:#DDE7F0;--sky-cloud:#9FB0C2;--sky-rain:#8FC1FF}}
.ghl{flex:1;min-width:0;display:grid;gap:4px}
.gline{font-size:13.5px;color:var(--muted)}
.gwx2{display:flex;align-items:center;gap:10px;margin-top:8px;max-width:520px}
.gwi{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:color-mix(in srgb,var(--panel-solid) 62%,transparent);color:var(--sky-ink)}
.gwi .ico,.gwi svg{width:22px;height:22px}
.gwt{display:grid;gap:1px;min-width:0}.gwt b{font:700 15px/1.25 var(--font-body)}.gwt small{font-size:12.5px;line-height:1.35;color:var(--muted)}
.gwt em{font-style:normal;font-size:12.5px;line-height:1.35;color:color-mix(in srgb,var(--warn) 55%,var(--ink));font-weight:600}
.gwt b{display:flex;align-items:center}.gwt b .ipop{margin-left:8px}
/* team sheets: one row per player */
.gteam{gap:6px}.gteam h3{font-size:20px;padding-bottom:4px}
.gs{--cols:minmax(0,1fr) 92px 52px}
.gs.gs-rg{--cols:minmax(0,1fr) 34px 84px 34px 52px}
.gs.gs-pl{--cols:minmax(0,1fr) 80px 48px 48px 50px}
.gs.gs-pl.gs-lv{--cols:minmax(0,1fr) 92px 48px 52px}   /* a game in progress: points so far, and no +/− until the final */
.gsh,.gs .hl li{display:grid;grid-template-columns:var(--cols);gap:6px;align-items:center}
.gsh{min-height:24px;padding:0 0 4px;border-bottom:1px solid var(--line);font:500 11px/1 var(--font-label);color:var(--faint)}
.gsh span{text-align:right}.gsh span:first-child{text-align:left;display:flex}.gsh .ipop{margin:0}
.gs .hl li{padding:6px 0}
.gs .hn{gap:8px}.gs .hn .pos{min-width:34px;padding:4px 0;font-size:11.5px}.gs .hn b{font-size:14.5px}
.gs .hn small.ssst{font-size:11.5px}
.gs .hn>span:last-child{min-width:0;overflow:hidden}.gnm{display:flex!important;align-items:center;flex-wrap:wrap;row-gap:2px;min-width:0}.gnt{min-width:0;overflow-wrap:anywhere;line-height:1.2}.gnt .ns{display:none}.gnm .pstar,.gnm .injb{flex:none}
.gs .hp{text-align:right;font-size:15px}.gs .pj{color:var(--ink);font-weight:700}.gs.gs-pl .pj{color:var(--faint);font-weight:500}
.rnum{font:500 12px/1 var(--font-body);font-variant-numeric:tabular-nums;color:var(--faint);text-align:right}
.rnum+.rbar+.rnum{text-align:left}
.gs.gs-rg:has(.hasou){--cols:minmax(0,1fr) 34px 84px 34px 104px}
.gs:not(.gs-rg):has(.hasou){--cols:minmax(0,1fr) 92px 104px}
.gs:has(.hasou) .pj:not(.hasou),.gs:has(.hasou) .gsh span:last-child{text-align:center}
.gs:has(.hasou) .pj:not(.hasou){font-size:16px}
/* a narrow team column (two teams side by side on a laptop, or a phone): initial and surname, and a shorter bar */
.gteam{container:gteam/inline-size}
@container gteam (max-width:489px){.gnt .nf{display:none}.gnt .ns{display:inline}
  .gs.gs-rg{--cols:minmax(0,1fr) 34px 64px 34px 52px}.gs.gs-rg:has(.hasou){--cols:minmax(0,1fr) 34px 64px 34px 104px}}
/* a phone-width column: the floor and ceiling sit under the two ends of the bar, and the room they leave goes to the name */
@container gteam (max-width:400px){
  .gs.gs-rg .gsh,.gs.gs-rg .hl li{grid-template-columns:minmax(0,1fr) 66px 46px;gap:0 6px}
  .gs.gs-rg:has(.hasou) .gsh,.gs.gs-rg:has(.hasou) .hl li{grid-template-columns:minmax(0,1fr) 66px 96px}
  .gs.gs-rg .hl li>.hn{grid-column:1;grid-row:1/3}.gs.gs-rg .hl li>.hp{grid-column:3;grid-row:1/3}
  .gs.gs-rg .hl li>.rbar{grid-column:2;grid-row:1;margin:0 6px;align-self:end}
  .gs.gs-rg .hl li>.rnum{grid-column:2;grid-row:2;justify-self:start;align-self:start;font-size:10.5px}.gs.gs-rg .hl li>.rbar+.rnum{justify-self:end}
  .gs.gs-rg .gsh span:nth-child(2),.gs.gs-rg .gsh span:nth-child(4){display:none}
  .gs.gs-rg .gsh span:nth-child(3){text-align:center}.gs.gs-rg .gsh span:nth-child(3)::after{content:'Floor–ceiling';white-space:nowrap;}
  .gs .hn{gap:6px}.gs .hn .pos{min-width:30px}.gs .ou{gap:3px}.gs .oub{width:24px;height:24px}.gs .ouv{min-width:42px}}
.gs .hl li.isstar{background:linear-gradient(90deg,rgba(232,170,0,.10),transparent 70%);border-radius:8px}
.pstar{color:#D99A00;margin-left:6px;font-size:.95em;cursor:help}:root[data-theme="dark"] .pstar{color:#F2C94C}
.injb{display:inline-block;margin-left:6px;padding:2px 5px;border-radius:6px;font:700 10.5px/1.15 var(--font-label);vertical-align:2px;color:#fff;cursor:help}
.inj-q{background:#F2C94C;color:#3A2A00}.inj-d{background:var(--wn)}.inj-o{background:var(--bad)}.inj-s{background:var(--hr)}
:root[data-theme="dark"] .inj-d,:root[data-theme="dark"] .inj-o,:root[data-theme="dark"] .inj-s{color:#10201A}
.rbar{position:relative;height:16px;align-self:center;cursor:help}
.rbar i{position:absolute;display:block}
.rtrk{left:0;right:0;top:7px;height:2px;border-radius:2px;background:var(--line)}
.rrng{top:4px;height:8px;border-radius:4px;background:color-mix(in srgb,var(--accent) 34%,transparent)}
.rfill{left:0;top:4px;height:8px;border-radius:4px;background:color-mix(in srgb,var(--accent) 34%,transparent)}
.rdot{top:3px;width:10px;height:10px;margin-left:-5px;border-radius:50%;background:var(--accent-text);box-shadow:0 0 0 2px var(--panel-solid)}
.ract{top:3px;width:9px;height:9px;margin-left:-4.5px;transform:rotate(45deg);box-shadow:0 0 0 2px var(--panel-solid)}.ract.up{background:var(--good)}.ract.down{background:var(--bad)}.ract.now{background:var(--ink)}
.gmore{border-top:1px solid var(--line);padding-top:8px}.gmore+.gmore{border-top:0;padding-top:0}
.gmore summary{cursor:pointer;font:500 12px/1.6 var(--font-label);color:var(--accent-text)}
.gmore summary b{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:4px;border-radius:8px;background:var(--raise);color:var(--muted);font:600 11px/1 var(--font-body);letter-spacing:0}
.gmore .hl li{padding:6px 0}
@media (max-width:560px){.gs.gs-rg{--cols:minmax(0,1fr) 26px 48px 28px 46px}.gs .rnum{font-size:11px}.gs.gs-rg .rbar{margin:0 5px}.gs .gsh{font-size:10px;gap:4px}.gs .hl li{gap:4px}.skyart{opacity:.5;height:120px}.gdw{padding:16px}.gsky{margin:-16px -16px 0;padding:16px 16px 14px}
  .gs.gs-rg:has(.hasou){--cols:minmax(0,1fr) 26px 44px 28px 104px}
  .gs.gs-pl{--cols:minmax(0,1fr) 44px 40px 42px 44px}.gs.gs-pl.gs-lv{--cols:minmax(0,1fr) 64px 42px 46px}.gs .hn b{white-space:normal;font-size:14px}.gs .hp{font-size:14px}}
/* game report: club scoreboard, the ground behind, the fantasy panel; on a phone the scoreboard switches teams */
.gdw.rp{background:var(--panel-solid)}
.rp-pl{display:inline-grid;place-items:center;vertical-align:.08em;flex:none}
.rp-pl i{display:grid;place-items:center;min-width:1.9em;height:1.45em;padding:0 .3em;border-radius:.3em;background:var(--tf);color:#fff;font:700 normal 400 .62em/1 var(--font-body);box-shadow:inset 0 -.16em 0 var(--ta);white-space:nowrap;letter-spacing:-.01em}
.rp-h{position:relative;overflow:hidden;display:grid!important;gap:10px}
.msky.rp-std{position:absolute;inset:0 0 0 auto;left:auto;width:min(460px,46%);height:100%;top:0;opacity:.9;z-index:-1;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 38%);mask-image:linear-gradient(90deg,transparent 0,#000 38%)}
.msky.rp-std svg{height:100%}
:root[data-theme="dark"] .msky.rp-std{opacity:.6}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .msky.rp-std{opacity:.6}}
.rp-top{display:flex;align-items:center;gap:10px;padding-right:52px}.rp-top .dmeta{flex:1}
dialog#gamedlg .rp-h>.rp-top>.dlgx{position:absolute;top:14px;right:14px;z-index:2;background:var(--panel-solid)}
.rp-sb{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:10px;max-width:680px}
.rp-at{align-self:center;font-size:14px;opacity:.6}
.rp-sd{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border-radius:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--tf) 13%,var(--panel-solid)),color-mix(in srgb,var(--tf) 4%,var(--panel-solid)));border:1px solid color-mix(in srgb,var(--tf) 22%,transparent);position:relative;overflow:hidden;min-width:0}


.rp-sd.rp-home::before{left:auto;right:0}.rp-sd.rp-home::after{left:auto;right:4px}
.rp-sd.rp-home{flex-direction:row-reverse;text-align:right}.rp-sd.rp-home .rp-sdn{flex-direction:row-reverse}
.rp-sdn{display:flex;align-items:center;gap:10px;min-width:0}.rp-sdn .rp-pl{font-size:30px}
.rp-sdn>span{display:grid;line-height:1.15;min-width:0}.rp-sdn b{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-sdn small{font-size:12px;opacity:.7}
.rp-sdsc{font:700 34px/1 var(--font-body);display:grid;justify-items:end;gap:2px;letter-spacing:-.01em}.rp-home .rp-sdsc{justify-items:start}
.rp-sdsc small{font:500 11px var(--font-label);opacity:.6;white-space:nowrap}
.rp-sd:not(.w) .rp-sdsc .gsv{opacity:.55}
.rp-sub{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;max-width:640px}
.rp-line{font-size:13px;opacity:.75}
.rp-wx{display:flex;align-items:center;gap:10px;padding:6px 12px 6px 8px;border-radius:8px;background:color-mix(in srgb,var(--panel-solid) 80%,transparent);border:1px solid var(--line)}
.rp-wxi{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--raise);flex:none}.rp-wxi svg,.rp-wxi .ico{width:20px;height:20px}
.rp-wx>span:last-child{display:grid;line-height:1.25}.rp-wx b{font-size:14px}.rp-wx small{font-size:12px;opacity:.7}
.rp-wx em{font-style:normal;font-size:12px;font-weight:600;color:color-mix(in srgb,var(--warn) 55%,var(--ink));margin-top:2px}
.rp-wx.warn{border-color:color-mix(in srgb,var(--warn) 55%,var(--line))}
/* the fantasy panel */
.rp-ang{grid-column:1/-1;position:relative;z-index:1;background:var(--panel-solid)}
.rp-bar{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:8px}
.rp-bar button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1px 8px;padding:7px 12px;border-radius:8px;border:1px solid var(--line);background:var(--raise);color:var(--ink);text-align:left;cursor:pointer;min-width:0}
.rp-bl{font:500 11px var(--font-label);opacity:.7}
.rp-bh{grid-row:2;display:block;font-size:13.5px;white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}.rp-bh b{flex:none;font-variant-numeric:tabular-nums}.rp-bh small{opacity:.6}
.rp-nm{min-width:0;overflow:hidden;text-overflow:ellipsis}
.rp-bh b.up,.rp-tr.up,.rp-vm b.up{color:var(--good)}.rp-bh b.dn,.rp-tr.dn,.rp-vm b.dn{color:var(--bad)}
.rp-chev{grid-row:1/span 2;grid-column:2;width:8px;height:8px;border:solid currentColor;border-width:0 1.6px 1.6px 0;transform:rotate(45deg) translateY(-2px);opacity:.55;transition:transform .15s}
.rp-bar button[aria-expanded="true"]{background:var(--panel-solid);border-color:var(--ink);box-shadow:inset 0 -2px 0 var(--ink)}
.rp-bar button[aria-expanded="true"] .rp-chev{transform:rotate(-135deg) translateY(-2px)}
.rp-cards{margin-top:8px}.rp-ang:not([data-on]) .rp-cards{display:none}
.rp-card{display:none;border:1px solid var(--line);border-radius:12px;padding:10px 12px;min-width:0;background:var(--panel-solid)}
.rp-ang[data-on="wl"] .rp-card[data-c="wl"],.rp-ang[data-on="vm"] .rp-card[data-c="vm"],.rp-ang[data-on="mu"] .rp-card[data-c="mu"],.rp-ang[data-on="ij"] .rp-card[data-c="ij"],.rp-ang[data-on="dr"] .rp-card[data-c="dr"]{display:block}
.rp-two{display:grid;grid-template-columns:repeat(2,minmax(0,420px));column-gap:60px;row-gap:8px}.rp-two>div>.rp-pl{font-size:16px;margin-bottom:2px}
.rp-wl,.rp-vm{list-style:none;margin:0;padding:0;display:grid;gap:3px}
.rp-wl li{display:grid;grid-template-columns:30px minmax(0,1fr) auto 34px;gap:6px;align-items:center;font-size:13px;padding:2px 0}
.rp-card .pos{display:inline-grid;place-items:center;font-size:10px;padding:0;width:30px;min-width:30px;height:18px;line-height:1}
.rp-wl a,.rp-vm a{color:inherit;text-decoration:none;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rp-wn{font-size:12px;white-space:nowrap;text-align:right;opacity:.8;font-variant-numeric:tabular-nums}.rp-wn small{opacity:.7}
.rp-tr{text-align:right;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;opacity:.7}.rp-tr.big{opacity:1;font-weight:800}
.rp-vm{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;max-width:900px}
.rp-vm li{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:8px;align-items:center;min-height:26px;font-size:13px;padding:3px 0;border-bottom:1px solid var(--line)}
.rp-vm .rp-pl{font-size:15px}.rp-rk{font:500 11px var(--font-label);opacity:.65;white-space:nowrap}
.rp-vm b{font-variant-numeric:tabular-nums;white-space:nowrap}.rp-vm b small{font-weight:400;opacity:.6}
.rp-nmw{display:flex;align-items:center;gap:6px;min-width:0}.rp-nmw a{min-width:0}.rp-nmw .injb{margin-left:0}
.rp-mu{width:100%;max-width:560px;border-collapse:collapse;font-size:13px}
.rp-mu th{font-weight:500;text-align:left;padding:2px 4px}.rp-mu tbody th{width:34px}.rp-mu thead th{font:500 11px var(--font-label);opacity:.85;white-space:nowrap}
.rp-mu thead th .rp-pl{font-size:15px;margin-right:4px}
.rp-mu td{padding:3px 6px;border-radius:6px;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.rp-mu td b{font-weight:700}.rp-mu td small{margin-left:5px;opacity:.6}
.rp-mu td.easy{background:color-mix(in srgb,var(--good) 16%,transparent)}.rp-mu td.hard{background:color-mix(in srgb,var(--bad) 13%,transparent)}
.rp-mu tbody tr+tr td,.rp-mu tbody tr+tr th{border-top:2px solid var(--panel-solid)}
.rp-note{margin:6px 0 0;font-size:11.5px;opacity:.6}
/* team columns */
.rp-th{display:flex!important;align-items:center;gap:10px;border-bottom:0!important;padding:8px 12px!important;border-radius:8px;background:linear-gradient(90deg,color-mix(in srgb,var(--tf) 12%,var(--panel-solid)),transparent);font-size:17px!important;position:relative;overflow:hidden}

.rp-th .rp-pl{font-size:19px}.rp-th small{margin-left:auto;font:500 12px var(--font-body);opacity:.7;white-space:nowrap}
.rp-team .gs .hl li.isstar{background:linear-gradient(90deg,color-mix(in srgb,var(--tl) 9%,transparent),transparent 70%)}
.rp-foot{display:grid;gap:8px;align-content:start}
.rp-fbs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.rp-fbs button{display:flex;align-items:center;gap:8px;height:38px;padding:0 12px;border-radius:8px;border:1px solid var(--line);background:var(--raise);color:var(--ink);font:500 12px var(--font-label);cursor:pointer}
.rp-fbs button b{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;margin-left:auto;border-radius:12px;background:var(--panel-solid);font:600 12px var(--font-body);letter-spacing:0}
.rp-fbs button::after{content:'';flex:none;width:7px;height:7px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg) translateY(-2px);opacity:.6}
.rp-fbs button[aria-expanded="true"]{border-color:var(--ink);box-shadow:inset 0 -2px 0 var(--ink)}
.rp-fbs button[aria-expanded="true"]::after{transform:rotate(-135deg) translateY(-2px)}
.rp-fp .hl li{padding:6px 0}
button.rp-sd{font:inherit;color:inherit;text-align:inherit;cursor:default;margin:0}
@media (max-width:760px){
  .msky.rp-std{width:100%;-webkit-mask-image:linear-gradient(180deg,#000 30%,transparent 95%);mask-image:linear-gradient(180deg,#000 30%,transparent 95%);opacity:.45}
  /* the ground as a band across the top; the scoreboard overlaps its foot and is the team switch */
  .msky.rp-std{inset:0 0 auto 0;width:auto;height:156px;opacity:1;-webkit-mask-image:linear-gradient(180deg,#000 80%,transparent);mask-image:linear-gradient(180deg,#000 80%,transparent)}
  :root[data-theme="dark"] .msky.rp-std{opacity:.85}
  .rp-top{min-height:92px;align-items:flex-start;color:#2A2B30}.sky-night .rp-top{color:#E7E9F2}.sky-night .rp-top .finl:not(.live){background:#FFFFFF;color:#1A2340;border-color:transparent}.rp-top .dmeta{color:inherit;opacity:.9}
  .rp-sb{gap:6px}
  .rp-sd{display:grid!important;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"pl sc" "tx tx";align-items:start;gap:2px 8px;padding:10px 12px 10px 14px;cursor:pointer;box-shadow:0 10px 22px -18px rgba(20,20,40,.5);transition:background .15s,color .15s,box-shadow .15s}
  .rp-sd.rp-home{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"sc pl" "tx tx";padding:10px 14px 10px 12px}
  .rp-sdn{display:contents}.rp-sdn .rp-pl{grid-area:pl;font-size:24px;margin-top:2px}.rp-sdn>span{grid-area:tx;margin-top:6px}
  .rp-sdn b{font-size:13.5px;white-space:normal;line-height:1.2}.rp-sdn small{font-size:11px}
  .rp-sdsc{grid-area:sc;font-size:34px;justify-items:end}.rp-home .rp-sdsc{justify-items:start}
  .rp-sd[aria-pressed="true"]{background:var(--tf);border-color:var(--tf);color:var(--tx);box-shadow:inset 0 -4px 0 var(--ta),0 14px 26px -16px var(--tf)}
  .rp-sd[aria-pressed="true"]::before,.rp-sd[aria-pressed="true"]::after{display:none}
  .rp-sd[aria-pressed="true"] .rp-pl i{background:var(--tx);color:var(--tf)}
  .rp-sd[aria-pressed="true"] .rp-sdn small,.rp-sd[aria-pressed="true"] .rp-sdsc small{opacity:.8}
  .rp-sd[aria-pressed="true"]:not(.w) .rp-sdsc .gsv{opacity:.75}
  .rp-wx{width:100%;box-sizing:border-box}
  .rp-bar{gap:5px}.rp-bar button{padding:6px 8px;grid-template-columns:minmax(0,1fr)}.rp-chev{display:none}.rp-bl{font-size:10px;}.rp-bh{font-size:12.5px;display:flex;align-items:baseline;gap:4px}.rp-lg{display:none}
  .rp-two{grid-template-columns:1fr}.rp-two>div{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:start;gap:6px}.rp-two>div>.rp-pl{margin-top:3px}
  .rp-wl li:nth-child(n+4){display:none}.rp-wl li{grid-template-columns:30px minmax(0,1fr) auto 30px}
  .rp-vm{grid-template-columns:1fr}
  .gcols .rp-team[data-t="1"],.gcols .rp-foot[data-t="1"]{display:none}
  .gcols[data-k="1"] [data-t="0"]{display:none!important}.gcols[data-k="1"] .rp-team[data-t="1"],.gcols[data-k="1"] .rp-foot[data-t="1"]{display:grid}
  .gcols .rp-th{display:none!important}
}
.toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%,20px);max-width:min(460px,calc(100vw - 32px));padding:12px 16px;border-radius:12px;background:var(--tip-bg);color:var(--tip-ink);font-size:14px;line-height:1.4;box-shadow:0 12px 30px rgba(0,0,0,.25);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:100}
.toast.on{opacity:1;transform:translate(-50%,0);pointer-events:auto}
.toast a{color:var(--color-mint)}

/* ---------- Over/Under game: swipe deck, still to call, your calls ---------- */
#ougame{display:grid;gap:14px}
#ougame[hidden]{display:none}
.og-load{padding:30px 0;text-align:center}
.og-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 20px}
.og-head h3{margin:4px 0 0;font:700 clamp(22px,5vw,32px)/1.05 var(--font-body);letter-spacing:-.01em}
.og-stats b small{font-size:14px;font-weight:500;color:var(--faint)}
.og-sign{margin:0;padding:10px 14px;border-radius:12px;background:var(--accent-soft);border:1px solid var(--accent-border)}
.og-sign a{color:var(--accent-text);font-weight:600}
.og-bar{display:grid;gap:10px}
.og-views{width:100%}.og-views button{flex:1 1 0;white-space:nowrap}
.og-views button b{display:inline-block;min-width:20px;margin-left:4px;padding:2px 6px;border-radius:99px;background:var(--raise);font:600 12px/1.2 var(--font-body);color:var(--muted)}
.og-views button[aria-pressed="true"] b{background:color-mix(in srgb,var(--bg) 22%,transparent);color:inherit}
.og-pos{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.og-pos::-webkit-scrollbar{display:none}
.og-pos button{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border-radius:99px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font:600 13px/1 var(--font-body);cursor:pointer}
.og-pos button small{font-weight:500;color:var(--faint);font-variant-numeric:tabular-nums}
.og-pos button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--bg)}.og-pos button[aria-pressed="true"] small{color:inherit;opacity:.7}
.og-pos button:disabled{opacity:.4;cursor:default}
/* the deck */
.og-stage{display:grid;justify-items:center;gap:14px;padding:4px 0 8px;overflow:hidden}
.og-deck{--cw:min(420px,100%);position:relative;width:var(--cw);height:clamp(540px,calc(100dvh - 230px),620px);margin-bottom:18px}
.ogc{--c:var(--accent);position:absolute;inset:0;border-radius:12px;padding:6px;background:linear-gradient(150deg,color-mix(in srgb,var(--c) 70%,#fff),var(--c) 45%,color-mix(in srgb,var(--c) 65%,#000));
  box-shadow:0 2px 4px rgba(0,0,0,.14),0 16px 36px rgba(0,0,0,.2);transform-origin:50% 90%;will-change:transform;user-select:none;-webkit-user-select:none}
.ogc.og-deep{pointer-events:none;transform:translateY(calc(var(--k) * 10px)) scale(calc(1 - var(--k) * .04));filter:brightness(calc(1 - var(--k) * .05))}
.ogc.og-k1{transform:translateY(calc(10px - var(--pr,0) * 10px)) scale(calc(.96 + var(--pr,0) * .04))}
.ogc.og-deep:not(.og-k1) .ogc-in>*{visibility:hidden}
.ogc.og-lead{touch-action:pan-y;cursor:grab}.ogc.og-drag{cursor:grabbing;transition:none!important}
.ogc-in{position:relative;height:100%;border-radius:12px;background:var(--panel-solid);color:var(--ink);overflow:hidden;display:flex;flex-direction:column;gap:9px;padding:13px 13px 12px}
.ogc-top{display:flex;align-items:center;gap:8px;font:500 12.5px/1 var(--font-label);color:var(--muted)}
.ogc-top .pos{padding:5px 8px;font-size:13px}
.ogc-mu{display:inline-flex;align-items:center;gap:6px}.ogc-mu .opp{padding:4px 6px}
.ogc-kick{margin-left:auto;color:var(--faint);text-transform:none;letter-spacing:0;font-family:var(--font-body);font-size:12.5px}
.ogc-name{display:flex;align-items:center;gap:8px;min-width:0}
.ogc-name h3 a{color:inherit;text-decoration:none}.ogc-name h3{margin:0;font:700 clamp(24px,7.5vw,32px)/1 var(--font-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em}
.ogc-st{flex:none;padding:3px 8px;border-radius:99px;background:color-mix(in srgb,var(--bad) 14%,transparent);color:var(--bad);font:600 11px/1.2 var(--font-label);max-width:45%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ogc-line{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center;padding:8px 12px;border-radius:12px;background:linear-gradient(180deg,color-mix(in srgb,var(--c) 12%,transparent),color-mix(in srgb,var(--c) 4%,transparent));border:1px solid color-mix(in srgb,var(--c) 30%,transparent)}
.ogc-lv span,.ogc-rng>span,.ogc-h>span,.og-t>span,.ogc-more p span{display:block;font:500 10.5px/1.1 var(--font-label);color:var(--faint)}
.ogc-lv b{display:block;margin-top:3px;font:700 36px/1 var(--font-body);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.og-rb{position:relative;height:10px;margin-top:8px;border-radius:99px;background:var(--line)}
.og-rb i{position:absolute;top:0;bottom:0;border-radius:99px;background:color-mix(in srgb,var(--c) 45%,transparent)}
.og-rb b{position:absolute;top:-4px;width:3px;height:18px;margin-left:-1.5px;border-radius:2px;background:var(--ink)}
.og-rl{display:flex;justify-content:space-between;margin-top:4px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.ogc-l4w{display:grid;gap:6px}
.ogc-h{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.ogc-h b{font-size:13px}
.og-l4{position:relative;height:66px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;align-items:end;border-bottom:1px solid var(--line)}
.og-l4>div{height:100%;display:flex;align-items:flex-end}
.og-l4 i{position:relative;display:block;width:100%;border-radius:6px 6px 2px 2px}
.og-l4 .og-o i{background:var(--good)}.og-l4 .og-u i{background:color-mix(in srgb,var(--bad) 70%,transparent)}
.og-l4 i b{position:absolute;bottom:100%;left:-6px;right:-6px;margin-bottom:3px;text-align:center;font:700 12.5px/1 var(--font-body);font-variant-numeric:tabular-nums;color:var(--ink)}
.og-l4ln{position:absolute;left:-4px;right:-4px;height:0;border-top:2px dashed var(--ink);opacity:.7;z-index:1;pointer-events:none}
.og-dash{display:inline-block;width:16px;height:0;margin:0 3px 3px;border-top:2px dashed var(--ink);opacity:.7;vertical-align:middle}
.og-l4x{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;text-align:center;font:500 10.5px/1.2 var(--font-label);color:var(--faint)}
.og-l4none{padding:18px 0;text-align:center;font-size:13px;color:var(--faint)}
.ogc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.og-t{min-width:0;padding:7px 8px;border-radius:12px;background:var(--raise);border:1px solid var(--line);display:grid;gap:3px;align-content:start}
.og-t>div{display:flex;align-items:center;gap:4px;min-width:0}
.og-t>div b{font:700 16px/1.1 var(--font-body);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.og-t small{font-size:11px;line-height:1.25;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.og-t .wx{font-size:0;gap:0}.og-t .wx i{font-size:0}.og-t .wx .ico{width:17px;height:17px}
.og-t.og-easy{background:color-mix(in srgb,var(--good) 11%,var(--surface));border-color:color-mix(in srgb,var(--good) 35%,transparent)}
.og-t.og-hard{background:color-mix(in srgb,var(--bad) 9%,var(--surface));border-color:color-mix(in srgb,var(--bad) 30%,transparent)}
.og-up{color:var(--good)}.og-dn{color:var(--bad)}
.ogc-more{display:grid;gap:5px;font-size:12.5px;line-height:1.3;color:var(--muted)}
.ogc-more p{margin:0}.ogc-more p span{margin-bottom:2px}.ogc-more b{color:var(--ink)}.ogc-more p>span:not(:first-child){display:inline;font:inherit;letter-spacing:0;text-transform:none;color:var(--faint)}
.ogc-foot{margin-top:auto;display:flex;justify-content:center}
.ogc-foot a{font-size:13px;font-weight:600;color:var(--accent-text);text-decoration:none;padding:4px 8px}
.og-stamp{position:absolute;top:58px;padding:6px 14px;border:3px solid;border-radius:10px;font:400 30px/1 var(--font-display);pointer-events:none;background:var(--panel-solid)}
.og-so{left:16px;color:var(--good);transform:rotate(-12deg);opacity:var(--so,0)}
.og-su{right:16px;color:var(--bad);transform:rotate(12deg);opacity:var(--su,0)}
.og-ctl{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;width:var(--cw,min(420px,100%));width:min(420px,100%)}
.og-b{display:flex;align-items:center;justify-content:center;gap:8px;min-height:56px;padding:0 14px;border-radius:12px;border:1.5px solid var(--line);background:var(--surface);font:500 18px/1 var(--font-label);cursor:pointer;transition:transform .1s,background .15s,color .15s}
.og-b .ico{width:22px;height:22px}.og-b:active{transform:scale(.96)}
.og-bu{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 45%,transparent)}.og-bu:hover{background:var(--bad);color:#fff}
.og-bo{color:var(--good);border-color:color-mix(in srgb,var(--good) 45%,transparent)}.og-bo:hover{background:var(--good);color:#fff}
.og-bs{min-width:76px;font-size:14px;color:var(--muted)}
.og-sub{display:flex;align-items:center;justify-content:space-between;gap:10px;width:min(420px,100%);font-size:12.5px;color:var(--faint)}
.og-undo{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:600 13px/1 var(--font-body);cursor:pointer}
.og-undo .ico{width:15px;height:15px}.og-undo:disabled{opacity:.4;cursor:default}
@media (pointer:coarse){.og-keys{display:none}}
.og-empty{display:grid;justify-items:center;gap:6px;text-align:center;padding:40px 16px;border:1px dashed var(--line);border-radius:12px}
.og-empty>.ico{width:34px;height:34px;color:var(--good)}.og-empty h3{margin:0}.og-empty p{margin:0}
.og-emb{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:6px}
/* the lists */
.og-note{margin:0}
.og-list{list-style:none;margin:0;padding:0;display:grid;gap:0;border:1px solid var(--line);border-radius:12px;background:var(--surface);overflow:hidden}
.og-list li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 12px;border-top:1px solid var(--line)}
.og-list li:first-child{border-top:0}
.og-list li[data-ogo]{cursor:pointer}.og-list li[data-ogo]:hover{background:var(--hover)}
.og-list .pos{width:36px}
.og-rn{display:grid;gap:2px;min-width:0}.og-rn b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.og-rn b a{color:inherit;text-decoration:none}
.og-rn small{font-size:12.5px;color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.og-rn small em{font-style:normal;color:var(--bad)}
.og-rh .oub{width:34px;height:34px;border-radius:8px}.og-rh .oub .ico{width:16px;height:16px}.og-rh .ouv{min-width:50px}
.og-res{display:inline-flex;align-items:center;gap:8px;font-size:14px}.og-res b{font-variant-numeric:tabular-nums}
.og-wk{display:grid;gap:8px}.og-wk+.og-wk{margin-top:14px}
.og-wkh{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.og-wkh h4{margin:0;font:500 15px/1 var(--font-label);}
@media (max-width:560px){.og-stats{gap:14px}.og-stats b{font-size:18px}.og-stats span{font-size:11px}.og-head{gap:8px}}
@media (max-width:420px){.ogc-in{padding:11px 11px 10px;gap:7px}.ogc-grid{gap:5px}.og-t{padding:7px 7px}.og-t>div b{font-size:15.5px}.og-t small{font-size:11px}.ogc-lv b{font-size:34px}
  .og-views button{padding:8px 6px;font-size:13px}.og-res{gap:5px;font-size:13px}.og-list li{gap:8px;padding:9px 10px}}

/* ---------- player awards: video-game-style hexes ---------- */
.awhex{--s:52px;position:relative;display:grid;place-items:center;flex:none;width:var(--s);height:calc(var(--s) * 1.1);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);background:var(--rim);color:#fff}
.awhex::before{content:"";position:absolute;inset:calc(var(--s) * .06);clip-path:inherit;background:var(--fill)}
.awhex::after{content:"";position:absolute;inset:calc(var(--s) * .06) calc(var(--s) * .06) 55%;clip-path:polygon(50% 0,100% 45%,100% 100%,0 100%,0 45%);background:linear-gradient(180deg,rgba(255,255,255,.35),rgba(255,255,255,0))}
.awhex svg{position:relative;z-index:1;width:calc(var(--s) * .7);height:calc(var(--s) * .7);filter:drop-shadow(0 1px 1px rgba(0,0,0,.35))}
.awhex .t{fill:currentColor;fill-opacity:.3;stroke-width:1.4}
.awhex .s{fill:currentColor;stroke:none}
.awhex.k-good.t1{--rim:linear-gradient(160deg,#FFF3C4,#C98A00);--fill:linear-gradient(160deg,#F6C945,#D49A13 50%,#8A5A00)}
.awhex.k-good.t2{--rim:linear-gradient(160deg,#FFFFFF,#8A99A6);--fill:linear-gradient(160deg,#D5DEE6,#98A6B3 50%,#5B6875)}
.awhex.k-good.t3{--rim:linear-gradient(160deg,#FFD9B8,#9C5A2B);--fill:linear-gradient(160deg,#E6A06A,#B86B33 50%,#6E3A15)}
.awhex.k-bad{--rim:linear-gradient(160deg,#FFC9C4,#8E1F1A);--fill:linear-gradient(160deg,#F2665B,#C6352A 50%,#7A1813)}
.awhex.k-bad.t2{--fill:linear-gradient(160deg,#F28A80,#D0554A 50%,#8E2E26)}
.awhex.k-bad.t3{--fill:linear-gradient(160deg,#F3A39B,#D77369 50%,#9A4A42)}
.awhex.k-wild{--rim:linear-gradient(160deg,#E4DBFF,#3F2A99);--fill:linear-gradient(160deg,#A48BFF,#6B4FD8 50%,#34208A)}
.awhex.k-week{--rim:linear-gradient(160deg,#C9F1FF,#0F4C81);--fill:linear-gradient(160deg,#5CC8F2,#1F7FC4 50%,#0E4677)}
.awgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
.aw{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--raise);border:1px solid var(--line)}
.aw>div{display:grid;gap:2px;min-width:0}
.aw b{font:700 16px/1 var(--font-body);letter-spacing:-.01em}
.aw small{font-size:12.5px;color:var(--muted);line-height:1.35}
.awt{font:500 10.5px/1 var(--font-label);color:var(--faint)}
.awt.k-good.t1{color:#B7791F}.awt.k-bad{color:var(--bad)}.awt.k-wild{color:var(--hr)}.awt.k-week{color:var(--wr)}
:root[data-theme="dark"] .awt.k-good.t1{color:#F2C94C}
.dstrip{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.dstrip .awhex{--s:30px;cursor:help}
.awnone{margin:0}
.dfull{display:inline-flex;gap:4px;margin-top:10px;font:500 13px/1 var(--font-label);color:var(--accent-text);text-decoration:none}.dfull:hover{text-decoration:underline}
/* crawlable page links and the page's own write-up (filled by pipeline/seo.py) */
.sitelinks{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;margin:28px 0 8px;padding-top:20px;border-top:1px solid var(--line)}
.sitelinks h2{font:500 12px/1 var(--font-label);color:var(--accent-text);margin:0 0 8px}
.sitelinks ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.sitelinks a{color:var(--muted);text-decoration:none;font-size:14px}.sitelinks a:hover{color:var(--ink);text-decoration:underline}
.seo[hidden]{display:none}
.seo{margin:0}
/* The written section: one slim band of closed parts, one open at a time (seo_copy.band). Text stays in the HTML for search. */
.xband{border-top:1px solid var(--line);margin-top:28px}
.xb{border-bottom:1px solid var(--line)}
.xb>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 2px;cursor:pointer;-webkit-tap-highlight-color:transparent}
.xb>summary::-webkit-details-marker{display:none}
.xb>summary h2{margin:0;font-weight:600;font-size:14px;line-height:1.3;letter-spacing:0;color:var(--muted)}
.xb>summary:hover h2,.xb[open]>summary h2{color:var(--ink)}
.xb>summary::after{content:"";flex:none;width:7px;height:7px;margin-right:4px;border:solid var(--faint);border-width:0 1.5px 1.5px 0;transform:translateY(-2px) rotate(45deg);transition:transform .18s}
.xb[open]>summary::after{transform:translateY(1px) rotate(-135deg)}
.xb>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.xb-in{padding:0 2px 16px;color:var(--muted);font-size:14px;line-height:1.6}
.xb-in>p,.xb-in>h3+p{max-width:80ch}.xb-in p{margin:0 0 8px}
.xb-in h2,.xb-in h3{font-weight:600;font-size:14px;line-height:1.4;color:var(--ink);margin:14px 0 2px;letter-spacing:0}
.xb-in a{color:inherit;text-decoration-color:var(--line)}.xb-in a:hover{color:var(--accent-text)}
.xb-in .tw{max-height:420px;overflow:auto}
html.fhl-on:has(#home.active) .seo{display:none}
/* Each address's own H1 and one-line summary (seo.py put_head), in the eyebrow's place above the tool: the eyebrow it replaces is hidden */
.routehead{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;margin:0 0 4px}.routehead[hidden]{display:none}
.routehead h1{margin:0;font:600 12.5px/1.4 var(--font-body);color:var(--muted);letter-spacing:0}
.routehead p{margin:0;font:400 12.5px/1.4 var(--font-body);color:var(--faint)}
/* Space (Adam, 8 Nov 2026: "optimise for page balance, sensible tool, data, sort filter layout"). The league chips sit at the
   right end of the tool's H1 line instead of a row of their own (placeFmt); each tool's title shares its line with the tool's
   switches; filters share rows; nothing printed twice. */
.routehead:has(>.fmtwrap){align-items:center;row-gap:6px}.routehead>.fmtwrap{margin-left:auto;padding-left:12px}.routehead .fmt{margin:0}
#ranks .stagehead{display:flex;align-items:center;flex-wrap:wrap;gap:10px 20px;margin-bottom:12px}#ranks .stagehead h2{margin:0}#ranks .stagehead .rkswitch{margin-left:auto}
#ranks .rtop .rfind{flex:0 1 auto;margin-left:auto}#ranks .rtop .rfind input{flex:0 1 260px;width:260px}
#charts .focus{display:flex;flex-wrap:wrap;align-items:center;column-gap:24px}#charts .focus>*{flex:0 0 100%;min-width:0}
#charts .focus>.stagehead{flex:0 0 auto;margin:0 0 12px}#charts .focus>.stagehead h2{margin:0}#charts .focus>.cbbar{flex:1 1 auto;justify-content:flex-end}
#cbcoverage,.cbhead .eyebrow{display:none}
.wrap:not(:has(>.fmtwrap))>.panel{padding-top:4px}
@media (max-width:860px){#ranks .rtop .rfind{margin-left:0;flex:1 1 100%}#ranks .rtop .rfind input{flex:1 1 auto;width:auto}#ranks .rtop .rfind label{display:flex;align-items:center;gap:6px;white-space:nowrap}#charts .focus>.cbbar{justify-content:flex-start}#ranks .stagehead .rkswitch{margin-left:0}}
.panel:has(.routehead:not([hidden])) .stagehead .eyebrow{display:none}
/* Server-rendered data (seo.py ssr): the route's main table in its HTML; the live board removes it when it draws */
table.ssr caption{caption-side:top;text-align:left;font:500 12.5px/1.4 var(--font-body);color:var(--faint);padding:0 0 6px}
table.ssr td.l a{color:var(--ink);text-decoration:none;font-weight:600}table.ssr td.l a:hover{text-decoration:underline}
.pPK{--c:var(--pk)}
/* the daily question, asked only when the visitor asks (preferences.js askRankQuestion) */
.askq{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:0;font-size:14px;color:var(--muted)}
.askq-go{font:600 14px/1.2 var(--font-body);color:var(--accent-text);background:none;border:0;padding:6px 0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}

/* ---------- player cards: a collectable card in the middle of the screen; from Ranks, a deck to flick through ---------- */
dialog#drawer{margin:0;padding:0;width:100%;max-width:100%;height:100%;max-height:100%;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:hidden;-webkit-backdrop-filter:none;backdrop-filter:none}
dialog#drawer .dw{padding:0;display:block;height:100%}
.pc-stage{--cw:min(380px,calc(100vw - 32px),calc((100vh - 150px) * 5 / 7));height:100%;display:grid;place-items:center;align-content:center;gap:18px;padding:56px 16px 16px;position:relative;overflow:hidden}
@supports (height:100dvh){.pc-stage{--cw:min(380px,calc(100vw - 32px),calc((100dvh - 150px) * 5 / 7))}}
/* desktop: bigger cards (everything inside scales with the card), still fitting the window height */
@media (min-width:900px) and (pointer:fine){.pc-stage{--cw:min(500px,calc((100vh - 140px) * 5 / 7))}}
dialog#drawer .pc-stage>.dlgx{position:absolute;top:14px;right:14px;background:var(--panel-solid);width:44px;height:44px}
.pc-deck{position:relative;width:var(--cw);height:calc(var(--cw) * 7 / 5)}
.pcard{position:absolute;inset:0;container-type:inline-size;transform-origin:50% 60%;will-change:transform}
.pcard.pc-deep{pointer-events:none;transform:translate(var(--x),calc(var(--k) * 9px)) rotate(var(--r)) scale(calc(1 - var(--k) * .025))}
.pcard.pc-deep .pc-in{filter:brightness(calc(1 - var(--k) * .06))}
.pcard.pc-lead{touch-action:none;cursor:grab}.pcard.pc-lead.pc-drag{cursor:grabbing}
.pcard.pc-ghost{pointer-events:none;z-index:5}
.pc-tilt{position:absolute;inset:0;transform:perspective(900px) rotateX(var(--ry,0deg)) rotateY(var(--rx,0deg));transition:transform .18s ease-out;will-change:transform}
.pcard.pc-lead .pc-front::after{content:"";position:absolute;inset:2.2cqw;border-radius:3.4cqw;pointer-events:none;z-index:5;
  background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.18),rgba(255,255,255,.06) 18%,transparent 42%),
    linear-gradient(115deg,transparent 34%,rgba(255,255,255,.09) 48%,transparent 62%);
  opacity:.38;mix-blend-mode:soft-light;transition:opacity .2s ease}
.pcard.pc-lead.pc-hov .pc-front::after{opacity:.72}
@media (prefers-reduced-motion:no-preference){
  .pcard.pc-lead.pc-hov .pc-art{transform:translateZ(18px)}
  .pcard.pc-lead.pc-hov .pc-name{transform:translateZ(26px)}
}
.pc-art,.pc-name{transition:transform .18s ease-out}
.pc-in{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.3,.9,.3,1)}
.pcard.pc-flipped .pc-in{transform:rotateY(180deg)}
.pc-face{position:absolute;inset:0;-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:5cqw;padding:2.2cqw;overflow:hidden;
  background:linear-gradient(150deg,color-mix(in srgb,var(--c) 70%,#fff),var(--c) 45%,color-mix(in srgb,var(--c) 65%,#000));box-shadow:0 2px 4px rgba(0,0,0,.18),0 18px 40px rgba(0,0,0,.28)}
.pc-back{transform:rotateY(180deg)}
.pc-body{position:relative;height:100%;border-radius:3.4cqw;background:var(--panel-solid);color:var(--ink);overflow:hidden;display:flex;flex-direction:column;font-size:max(11px,3.4cqw)}
.pc-front .pc-body{padding:3.2cqw;gap:2.4cqw}
/* front */
.pc-top{display:flex;align-items:center;gap:2cqw;font:500 max(11px,3.3cqw)/1 var(--font-label);color:var(--muted);}
.pc-top .pos{padding:1.3cqw 2.2cqw;font-size:max(11px,3.4cqw)}
.pc-top .pc-no{margin-left:auto;font-variant-numeric:tabular-nums;color:var(--faint)}
.pc-art{position:relative;flex:1 1 auto;min-height:12cqw;border-radius:3cqw;overflow:hidden;isolation:isolate;
  background:radial-gradient(circle at 50% 115%,color-mix(in srgb,var(--c) 55%,#fff) 0,transparent 60%),linear-gradient(160deg,color-mix(in srgb,var(--c) 85%,#fff),color-mix(in srgb,var(--c) 70%,#000))}
.pc-art::before{content:"";position:absolute;inset:0;z-index:-1;background-image:radial-gradient(rgba(255,255,255,.22) 1px,transparent 1.4px);background-size:2.6cqw 2.6cqw;-webkit-mask-image:linear-gradient(200deg,#000,transparent 70%);mask-image:linear-gradient(200deg,#000,transparent 70%)}
.pc-num{position:absolute;right:6cqw;top:-2cqw;z-index:-1;font:400 36cqw/1 var(--font-display);color:rgba(255,255,255,.16);letter-spacing:-.02em}
.pc-sil{position:absolute;right:-2%;bottom:0;height:96%;fill:rgba(0,0,0,.22);filter:drop-shadow(0 0 .8cqw rgba(255,255,255,.35))}
.pc-name{position:absolute;left:0;right:0;bottom:0;padding:8cqw 3.4cqw 2.6cqw;background:linear-gradient(180deg,transparent,rgba(0,0,0,.45) 70%);color:#fff}
.pc-name h2{margin:0;font:400 min(9.6cqw,var(--nf,9.6cqw))/.95 var(--font-display);letter-spacing:.01em;color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.35)}
.pc-name small{display:block;margin-top:1.2cqw;font:500 max(11px,3.2cqw)/1 var(--font-label);opacity:.9}
.pc-inj.soft{background:#F2C94C;color:#3A2A00}
.pc-inj[data-tip]{cursor:help;z-index:2}
.pc-inj{position:absolute;right:3cqw;top:3cqw;left:auto;z-index:3;max-width:46%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:1cqw 2cqw;border-radius:99px;background:var(--bad);color:#fff;font:600 max(10px,2.8cqw)/1.2 var(--font-label);}
.pc-stamp{position:absolute;right:3cqw;top:3cqw;padding:1.2cqw 2.2cqw;border-radius:99px;font:600 max(10px,2.8cqw)/1 var(--font-label);color:#3a2800;
  background:linear-gradient(120deg,#FFF3C4,#F6C945 30%,#FFFBE6 50%,#D49A13 75%,#FFE8A0);box-shadow:0 1px 3px rgba(0,0,0,.3)}
.pc-bdgs{display:flex;gap:1.4cqw;align-items:center;min-height:9.5cqw}
.pc-bdgs button{padding:0;border:0;background:none;cursor:pointer;display:grid;border-radius:2cqw}
.pc-bdgs .awhex{--s:8.6cqw}
.pc-bdgs button[aria-expanded="true"] .awhex{outline:0;transform:translateY(-.6cqw) scale(1.08);transition:transform .15s}
.pc-bdgs .pc-more{font:600 max(11px,3.2cqw)/1 var(--font-label);color:var(--faint);margin-left:.6cqw}
.pc-bfrow{display:flex;align-items:center;justify-content:space-between;gap:2cqw;min-width:0}.pc-bfrow>.pc-bdgs{flex:1 1 auto;min-width:0;overflow:hidden}
.pc-bfrow>.pc-format{align-self:center;margin-left:auto}.pc-bfrow:has(>.pc-format) .pc-bdgs{gap:1.1cqw}.pc-bfrow:has(>.pc-format) .pc-bdgs .awhex{--s:7.4cqw}
.pc-bnone{font-size:max(11px,3.1cqw);color:var(--faint)}
/* the role chip on the art: tap it for what the role means and why he has it */
.pc-role{display:inline-flex;align-items:center;gap:1cqw;margin-top:1.4cqw;padding:1cqw 1.6cqw 1cqw 2.2cqw;border-radius:99px;border:1px solid rgba(255,255,255,.45);background:rgba(0,0,0,.28);color:#fff;cursor:pointer;
  font:600 max(11px,3.1cqw)/1 var(--font-label);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.pc-role svg{width:max(12px,3.3cqw);height:max(12px,3.3cqw);opacity:.85}
.pc-role:hover,.pc-role[aria-expanded="true"]{background:rgba(0,0,0,.5);border-color:#fff}
.pc-name small.pc-plain{display:block;margin-top:1.2cqw}
.pc-rv{display:flex;flex-wrap:wrap;align-items:center;gap:1.2cqw 2.2cqw;min-width:0;margin-top:1.4cqw}
.pc-rv .pc-role,.pc-rv small.pc-plain{margin-top:0;flex:none}
.pc-vit{min-width:0;max-width:100%;font:500 max(10.5px,3cqw)/1.2 var(--font-body);color:rgba(255,255,255,.86);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 2px rgba(0,0,0,.3)}
.pc-vit:empty{display:none}
/* season / last 4 games: one panel, two tabs, so the card stays the same size */
.pc-tabs{display:flex;align-items:center;gap:1.2cqw}
.pc-tabs button{padding:.8cqw 1.8cqw;border-radius:99px;border:1px solid transparent;background:none;color:var(--faint);cursor:pointer;font:500 max(10px,2.8cqw)/1 var(--font-label);}
.pc-tabs button[aria-pressed="true"]{border-color:var(--line);background:var(--raise);color:var(--ink);font-weight:600}
.pc-tabs .pc-tabr{margin-left:auto;font:500 max(10px,2.8cqw)/1 var(--font-label);color:var(--faint);white-space:nowrap}
.pc-tabs .pc-tabr b{color:var(--ink);font-family:var(--font-body);letter-spacing:0;text-transform:none;font-size:max(11px,3.2cqw)}
.pc-tabp{min-height:21.5cqw;margin-top:1.4cqw;display:grid}
.pc-tabp .pc-l4,.pc-tabp .pc-l4none{margin-top:0}
.pc-tabp[hidden],.pc-tabr[hidden]{display:none}
.pc-st{display:grid;grid-template-columns:1fr 1fr 1fr 1.25fr;gap:1.6cqw}
.pc-st button{display:grid;align-content:center;justify-items:start;gap:.9cqw;min-width:0;padding:1.6cqw 2cqw;border-radius:2.4cqw;border:1px solid var(--line);background:var(--raise);color:var(--ink);cursor:pointer;text-align:left}
.pc-st button:hover,.pc-st button[aria-expanded="true"]{border-color:var(--c)}
.pc-st b{font:700 max(15px,5.6cqw)/1 var(--font-body);letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap}
.pc-st b small{font-size:.55em;font-weight:600;letter-spacing:0;margin-left:.3em;color:var(--muted)}
.pc-st span{font:600 max(9.5px,2.6cqw)/1.1 var(--font-label);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.pc-st i{font:normal 500 max(9.5px,2.6cqw)/1.1 var(--font-body);color:var(--faint);white-space:nowrap;font-variant-numeric:tabular-nums}
.pc-st .pc-lg{background:linear-gradient(160deg,color-mix(in srgb,var(--c) 16%,var(--raise)),var(--raise));border-color:color-mix(in srgb,var(--c) 45%,var(--line))}
/* the Summary tab: his last game on one line, then this season's run of weeks in tiles (Adam, 10 November 2026) */
.pc-sm{display:grid;gap:1.4cqw;align-content:start}
.pc-sm button{min-width:0;border:1px solid transparent;background:var(--raise);color:var(--ink);border-radius:2.4cqw;cursor:pointer;text-align:left;font:inherit}
.pc-sm button:hover,.pc-sm button[aria-expanded="true"]{border-color:var(--ac,var(--c))}
.pc-sml{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto auto;align-items:center;gap:2cqw;padding:1.6cqw 2.2cqw}
.pc-sml .wk{font:600 max(9.5px,2.6cqw)/1 var(--font-label);color:var(--muted);white-space:nowrap}
.pc-sml .rs{font:700 max(12px,3.5cqw)/1 var(--font-body);white-space:nowrap;font-variant-numeric:tabular-nums}
.pc-sml .rs em{font-style:normal;margin-right:.7cqw}
.pc-sml .ln{font:500 max(10px,2.9cqw)/1.15 var(--font-body);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pc-sml .pt{font:700 max(13px,4.2cqw)/1 var(--font-body);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.pc-sml .fn{font:600 max(9.5px,2.6cqw)/1 var(--font-label);letter-spacing:.04em;color:var(--muted);min-width:7cqw;text-align:right}
.pc-smw{display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr));gap:1.4cqw}
.pc-smw button{display:grid;gap:.6cqw;padding:1.3cqw 2cqw;align-content:center}
.pc-smw span{font:600 max(9.5px,2.6cqw)/1.1 var(--font-label);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pc-smw b{font:700 max(14px,4.2cqw)/1 var(--font-body);letter-spacing:-.01em;font-variant-numeric:tabular-nums;white-space:nowrap}
.pc-smw i{font:normal 500 max(9.5px,2.6cqw)/1.1 var(--font-body);color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}
.pc-sm .good{color:var(--good)}.pc-sm .bad{color:var(--bad)}
.pc-sm .lvd{margin-right:.8cqw}
/* depth chart tab, and a defense's named defenders: the same tiles with a name where the season tiles have a number */
.pc-st.pc-dc{grid-template-columns:repeat(4,1fr)}
.pc-dc b{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;font:600 max(11.5px,3.5cqw)/1.15 var(--font-body);letter-spacing:-.01em}
.pc-tabr a{color:inherit;text-decoration:none}.pc-tabr a:hover{color:var(--ink)}
.pc-tabr .tou{text-transform:none;letter-spacing:0}.pc-tabr .ou{transform:scale(.85);transform-origin:right center}
.pc-pop .pc-dcl td{border-top:1px solid var(--line);padding:.8cqw 0}.pc-pop .pc-dcl td:first-child{width:1%;padding-right:2.4cqw;white-space:nowrap;text-align:left;color:var(--faint);font-family:var(--font-label);letter-spacing:.04em}
.pc-pop .pc-dcl td.l{padding-left:0;color:var(--ink)}.pc-pop .pc-dcl td:last-child{font-weight:500;color:var(--muted)}.pc-pop .pc-dcl tr.me td{font-weight:700;color:var(--ink)}
.pc-pop a.pl{color:var(--accent-text);text-decoration:none}.pc-pop a.pl:hover{text-decoration:underline}
.pc-go{display:inline-block;margin-top:1.6cqw;font-weight:600;color:var(--accent-text);text-decoration:none}.pc-go:hover{text-decoration:underline}
.pc-idl{display:grid;gap:1.2cqw}.pc-idl a{display:grid;grid-template-columns:11cqw 1fr auto;gap:2cqw;align-items:baseline;padding:1.8cqw 2.4cqw;border-radius:2.2cqw;background:var(--raise);border:1px solid var(--line);color:var(--ink);text-decoration:none}
.pc-idl a:hover{border-color:var(--c)}.pc-idl span{font:600 max(10px,2.8cqw)/1 var(--font-label);letter-spacing:.05em;color:var(--faint)}.pc-idl b{font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pc-idl i{font:normal 500 max(10.5px,2.9cqw)/1 var(--font-body);color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.pc-foot a.pc-flip{text-decoration:none;margin-left:auto}
/* popouts: every longer explanation on the front opens here instead of sitting on the card */
.pc-pop{position:absolute;left:3cqw;right:3cqw;z-index:7;padding:3cqw 3.4cqw;border-radius:3cqw;background:var(--panel-solid);color:var(--ink);border:1px solid var(--line);
  box-shadow:0 10px 30px rgba(0,0,0,.28),0 0 0 .5cqw color-mix(in srgb,var(--c) 30%,transparent);display:grid;gap:1.4cqw;font-size:max(12px,3.3cqw);line-height:1.4;animation:pcpop .16s ease-out}
.pc-pop::before{content:"";position:absolute;left:clamp(4cqw,var(--ax,50%),calc(100% - 4cqw));width:3cqw;height:3cqw;background:inherit;border:inherit;border-right:0;border-bottom:0;transform:translateX(-50%) rotate(45deg)}
.pc-pop.pc-scr::before{display:none}.pc-pop.pc-below::before{top:-1.6cqw}.pc-pop.pc-above::before{bottom:-1.6cqw;transform:translateX(-50%) rotate(225deg)}
.pc-pop h4{margin:0;padding-right:7cqw;font:400 max(16px,5cqw)/1 var(--font-display);letter-spacing:.01em}
.pc-pop p{margin:0;color:var(--muted)}.pc-pop p b{color:var(--ink)}
.pc-pop .pc-why{padding-top:1.4cqw;border-top:1px solid var(--line);font-size:max(11px,3cqw);color:var(--ink)}
.pc-pop small{color:var(--faint);font-size:max(10.5px,2.8cqw);line-height:1.35}
.pc-ib{display:inline-grid;place-items:center;vertical-align:middle;margin:-1cqw 0 -1cqw .6cqw;padding:1cqw;border:0;border-radius:99px;background:none;color:var(--faint);cursor:pointer}
.pc-ib svg{width:max(14px,3.6cqw);height:max(14px,3.6cqw)}.pc-ib:hover,.pc-ib[aria-expanded="true"]{color:var(--accent-text)}
.pc-pop .pc-nwt td{padding:.5cqw 0}.pc-pop .pc-nwt td:last-child{text-align:right;font-weight:700}.pc-pop .pc-nwt .up{color:var(--good)}.pc-pop .pc-nwt .dn{color:var(--bad)}
.pc-pop .pc-nws{padding-top:1.4cqw;border-top:1px solid var(--line);font-size:max(11px,3cqw);color:var(--ink)}.pc-pop .pc-nws a{color:var(--accent-text);white-space:nowrap}
.pc-pop .pc-popx{position:absolute;top:1.6cqw;right:1.6cqw;width:max(28px,7cqw);height:max(28px,7cqw);display:grid;place-items:center;border:0;border-radius:99px;background:var(--raise);color:var(--muted);cursor:pointer}
@keyframes pcpop{from{opacity:0;transform:translateY(1cqw)}}
@media (prefers-reduced-motion:reduce){.pc-pop{animation:none}}
.pc-val{display:grid;grid-template-columns:1fr auto;align-items:end;gap:2cqw;padding-top:2cqw;border-top:1px solid var(--line)}
.pc-val .eyebrow{font-size:max(10px,2.8cqw);color:var(--accent-text)}
.pc-val .pc-big{font:700 12cqw/1 var(--font-body);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.pc-val .pc-rt{text-align:right;display:grid;gap:.8cqw;font-size:max(11px,3.1cqw);color:var(--faint)}
/* the latest move in his value, beside the number: green up, red down; tap for when (pipeline/value_moves.py) */
.pc-val .pc-big{white-space:nowrap}
.pc-mv{display:inline-block;margin:-1cqw 0 -1cqw 1.2cqw;padding:1cqw .6cqw;border:0;border-radius:1.6cqw;background:none;font:700 max(11px,3.5cqw)/1 var(--font-body);letter-spacing:0;font-variant-numeric:tabular-nums;cursor:pointer}
.pc-mv.up{color:var(--good)}.pc-mv.dn{color:var(--bad)}
.pc-mv svg{width:max(7px,2.1cqw);height:max(7px,2.1cqw);margin-right:.7cqw;vertical-align:.02em}.pc-mv.dn svg{transform:rotate(180deg)}
.pc-val .pc-rt b{font:700 max(12px,3.8cqw)/1.1 var(--font-body);color:var(--ink);font-variant-numeric:tabular-nums}
.pc-l4h{display:flex;justify-content:space-between;align-items:baseline;font:500 max(10px,2.8cqw)/1 var(--font-label);color:var(--faint)}
.pc-l4h b{color:var(--ink);font-family:var(--font-body);letter-spacing:0;text-transform:none;font-size:max(11px,3.2cqw)}
.pc-l4{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:2.4cqw;align-items:end;margin-top:1.4cqw}
.pc-l4>.pc-g{display:grid;gap:.8cqw;align-content:end;text-align:center;margin:0;padding:.6cqw 0 0;border:0;border-radius:1.6cqw;background:none;color:inherit;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s}
.pc-l4>.pc-g:hover,.pc-l4>.pc-g[aria-expanded="true"]{background:var(--raise)}.pc-l4>.pc-g:hover i,.pc-l4>.pc-g[aria-expanded="true"] i{opacity:1}
.pc-l4>.pc-g:focus-visible{outline:2px solid var(--c);outline-offset:1px}
.pc-pop .pc-bxp{width:100%;border-collapse:collapse;font-size:max(11px,3cqw);font-variant-numeric:tabular-nums}
.pc-bxp tbody tr:first-child td{border-top:1px solid var(--line);padding-top:1cqw}.pc-bxp td.z{color:var(--faint);font-weight:400}
.pc-bxp td{padding:.5cqw 0;text-align:right;color:var(--muted)}.pc-bxp td.l{text-align:left}.pc-bxp td:last-child{color:var(--ink);font-weight:600;padding-left:2.4cqw;width:1%;white-space:nowrap}
.pc-bxp td:nth-child(2){padding-left:2cqw;white-space:nowrap}.pc-bxp tfoot td{padding-top:1cqw;border-top:1px solid var(--line);color:var(--ink);font-weight:700}
.pc-l4 i{display:block;min-height:.8cqw;border-radius:1.4cqw 1.4cqw .4cqw .4cqw;background:var(--c);opacity:.45}
.pc-l4 .pc-hi i{opacity:1}
.pc-l4 b{font:700 max(11px,3.3cqw)/1 var(--font-body);font-variant-numeric:tabular-nums}
.pc-l4 span{font:500 max(9.5px,2.6cqw)/1.15 var(--font-label);color:var(--faint);white-space:nowrap}
.pc-l4 .pc-avg{position:absolute;left:-1.3cqw;right:-1.3cqw;height:0;border-top:1.5px dashed var(--faint);pointer-events:none}
.pc-l4none{height:23cqw;margin-top:1.4cqw;display:grid;place-items:center;border:1px dashed var(--line);border-radius:2cqw;color:var(--faint);font-size:max(11px,3.1cqw)}
.pc-win{display:grid;grid-template-columns:repeat(4,1fr);gap:1.6cqw}
.pc-win>*{display:grid;gap:.6cqw;padding:1.6cqw 1.4cqw;border-radius:2cqw;background:var(--raise);border:1px solid var(--line);min-width:0;color:var(--ink);text-align:left;font:inherit}
.pc-win button{cursor:pointer}.pc-win button:hover,.pc-win button[aria-expanded="true"]{border-color:var(--c)}
.pc-win span{font:500 max(9px,2.5cqw)/1.1 var(--font-label);color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pc-win b{font:700 max(11px,3.5cqw)/1 var(--font-body);font-variant-numeric:tabular-nums}
.pc-win i.wpr{font:600 max(9px,2.4cqw)/1 var(--font-label);font-style:normal;letter-spacing:.02em;color:var(--muted)}
.pc-profile{display:block;text-align:center;padding:1.6cqw 2cqw;border:1px solid var(--accent-border);border-radius:99px;color:var(--accent-text);background:var(--accent-soft);font:600 max(11px,3.1cqw)/1 var(--font-label);text-decoration:none}.pc-profile[hidden]{display:none}.pc-profile:hover{background:var(--accent);color:var(--accent-ink)}
.pc-foot{display:flex;justify-content:space-between;align-items:center;gap:2cqw}
.pc-flip{display:inline-flex;align-items:center;gap:1.4cqw;padding:1.8cqw 3cqw;border-radius:99px;border:1px solid var(--accent-border);background:var(--accent-soft);color:var(--accent-text);font:600 max(11px,3.1cqw)/1 var(--font-label);cursor:pointer}
.pc-flip:hover{background:var(--accent);color:var(--accent-ink)}
.pc-foot small{font:500 max(9.5px,2.6cqw)/1 var(--font-label);color:var(--faint)}
/* back */
.pc-bhead{display:flex;align-items:center;gap:2.4cqw;padding:3.4cqw 3.4cqw 2.6cqw;border-bottom:1px solid var(--line);background:linear-gradient(180deg,color-mix(in srgb,var(--c) 14%,transparent),transparent)}
.pc-bhead h3{margin:0;font:400 6.4cqw/1 var(--font-display);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pc-bhead .pos{padding:1.3cqw 2.2cqw}
.pc-scroll{flex:1;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;padding:3.4cqw 3.4cqw 8cqw;display:grid;gap:5cqw;align-content:start;-webkit-overflow-scrolling:touch;
  scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--c) 55%,transparent) transparent;
  -webkit-mask-image:linear-gradient(180deg,#000 calc(100% - 14cqw),rgba(0,0,0,.08));mask-image:linear-gradient(180deg,#000 calc(100% - 14cqw),rgba(0,0,0,.08))}
.pc-scroll::-webkit-scrollbar{width:1.4cqw}.pc-scroll::-webkit-scrollbar-thumb{border-radius:99px;background:color-mix(in srgb,var(--c) 55%,transparent)}
.pc-body.pc-atend .pc-scroll{-webkit-mask-image:none;mask-image:none}
/* the back's footer: the flip button sits exactly where it does on the front, with a quiet cue that there's more below */
.pc-bfoot{padding:2.4cqw 3.2cqw 3.2cqw;border-top:1px solid var(--line)}
.pc-sh{display:inline-flex;align-items:center;gap:1cqw;font:500 max(10px,2.7cqw)/1 var(--font-label);color:var(--faint);transition:opacity .25s}
.pc-sh svg{width:max(12px,3.4cqw);height:max(12px,3.4cqw)}
.pc-body.pc-atend .pc-sh{opacity:0}
@media (prefers-reduced-motion:no-preference){.pcard.pc-flipped .pc-body:not(.pc-atend) .pc-sh svg{animation:pcbob 1.6s ease-in-out 3}}
@keyframes pcbob{0%,100%{transform:none}50%{transform:translateY(.8cqw)}}
.pc-scroll .dsec{gap:2cqw}.pc-scroll .dsec h3{font-size:max(14px,4.4cqw)}
.pc-scroll .small{font-size:max(11.5px,3.2cqw)}
.pc-scroll .vchart .yl,.pc-scroll .vchart .xl{font-size:13px}
.pc-scroll .proj{height:26cqw}
.pc-scroll .awgrid{grid-template-columns:1fr}
.pc-scroll .aw .awhex{--s:11cqw}
.pc-scroll .oucard{padding:3.4cqw}
.pc-facts{display:grid;grid-template-columns:1fr 1fr;gap:1.8cqw}
.pc-facts div{padding:2.2cqw 2.6cqw;border-radius:2.4cqw;background:var(--raise);border:1px solid var(--line);display:grid;gap:.8cqw;align-content:start}
.pc-facts span{font:500 max(10px,2.7cqw)/1.1 var(--font-label);color:var(--faint)}
.pc-facts b{font:700 max(13px,4cqw)/1.1 var(--font-body);font-variant-numeric:tabular-nums}
.pc-facts small{font-size:max(10.5px,2.9cqw);color:var(--faint);line-height:1.3}
/* shiny: the top five at each position */
.pcard.pc-holo .pc-face{background:conic-gradient(from 200deg at 50% 50%,#F6C945,#FFFBE6,#8FE3FF,#D8B4FE,#FFD1E8,#F6C945,#FFF3C4,#C98A00,#F6C945)}
.pcard.pc-holo .pc-art::after,.pcard.pc-holo .pc-front .pc-body::before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;z-index:3}
.pcard.pc-holo .pc-art::after{background:repeating-linear-gradient(115deg,#ff0084 0%,#fca400 4%,#ffff00 8%,#00ff8a 12%,#00cfff 16%,#cc4cfa 20%,#ff0084 24%);background-size:400% 400%;background-position:var(--mx,50%) var(--my,50%);mix-blend-mode:color-dodge;opacity:.52}
.pcard.pc-holo.pc-hov .pc-art::after{opacity:.78}
.pcard.pc-holo.pc-hov .pc-front::after{opacity:.92;mix-blend-mode:screen}
.pcard.pc-holo .pc-front .pc-body::before{background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.32),transparent 20%) no-repeat;background-size:200% 200%;background-position:calc(100% - var(--mx,30%)) calc(100% - var(--my,20%));mix-blend-mode:soft-light}
.pcard.pc-holo .pc-art{box-shadow:inset 0 0 0 .6cqw rgba(255,240,190,.75)}
@media (prefers-reduced-motion:no-preference){
  .pcard.pc-holo:not(.pc-hov) .pc-art::after{animation:holo 7s ease-in-out infinite alternate}
  .pcard.pc-holo:not(.pc-hov) .pc-front .pc-body::before{animation:glare 7s ease-in-out infinite alternate}}
@keyframes holo{from{background-position:0% 30%}to{background-position:100% 70%}}
@keyframes glare{from{background-position:85% 90%}to{background-position:15% 10%}}
/* ---------- club colours (25 October 2026): the card's header is the club's main colour, its accent used the way the
   club's kit uses it (a fine edge, a stripe with a pin line, or a two-colour block). The data sits on a calm panel with a
   faint tint of the club; the accent marks the active tab, highlighted tiles and the bars. Colours only: no logos,
   wordmarks or uniform art. The team plate is our own shape with the club's letters. The top five keep the holo foil. */
.pcard{--ac:var(--acL,var(--accent));--tint:4%;--film:.035}
:root[data-theme="dark"] .pcard{--ac:var(--acD,var(--accent));--tint:11%;--film:.06}
/* the card's tiles (Summary, windows, stats, popouts) sit a step deeper in the club's main colour, never the site's mint
   (Adam, 10 Nov 2026: "They should be colour matched to team"); on the dark theme the card is black, not the site's green
   ("For dark mode, the cards can be black. Replace the green") */
.pcard{--raise:color-mix(in srgb,var(--f,#22362F) 11%,var(--panel-solid))}
:root[data-theme="dark"] .pcard{--panel:#0D0E10;--panel-solid:#0D0E10;--surface:#0D0E10;--th:#1A1C1F;--raise:color-mix(in srgb,var(--f,#22362F) 26%,#1A1C1F)}
.pcard .pc-face{padding:0;background:color-mix(in srgb,var(--f,#22362F) var(--tint),var(--panel-solid));box-shadow:0 1px 2px rgba(0,0,0,.14),0 18px 40px rgba(0,0,0,.26),inset 0 0 0 1px color-mix(in srgb,var(--f,#22362F) 22%,transparent)}
.pcard .pc-body{border-radius:5cqw;background:transparent}
.pcard .pc-front .pc-body{padding:0 0 3.4cqw;gap:2.2cqw}
.pcard .pc-front .pc-body>:not(.pc-art):not(.pc-pop):not(.pc-addw){margin-inline:3.8cqw}
/* the header */
.pcard .pc-art{flex:1 1 auto;min-height:38cqw;border-radius:0;display:flex;flex-direction:column;gap:1.8cqw;padding:3.4cqw 3.8cqw 3.6cqw;color:#fff;
  background:radial-gradient(120% 90% at 0% 0%,rgba(255,255,255,.12),transparent 55%),linear-gradient(180deg,var(--f,#22362F) 35%,color-mix(in srgb,var(--f,#22362F) 80%,#000));box-shadow:none}
.pcard .pc-art::before{content:"";position:absolute;inset:0;z-index:-1;background:none;-webkit-mask-image:none;mask-image:none}
/* the header keeps one height whatever tab is open: every tab panel sits in the same grid cell, so the tab area is as
   tall as its tallest tab on every tab and the header takes what is left (it used to squash the tiles into each other) (Adam, 10 Nov 2026: "It should be uniform regardless of the tab") */
.pcard .pc-front .pc-body>.pc-stats{flex:none}
.pc-stats{display:grid;grid-template-columns:minmax(0,1fr);align-items:start}
.pc-stats>.pc-tabp{grid-area:2/1}
.pc-stats>.pc-tabp[hidden]{display:grid;visibility:hidden;pointer-events:none}
.pcard.tr-line .pc-art{padding-bottom:4.6cqw}.pcard.tr-line .pc-art::before{background:linear-gradient(0deg,var(--a) 0 1.1cqw,transparent 1.1cqw)}
.pcard.tr-band .pc-art{padding-bottom:6.6cqw}.pcard.tr-band .pc-art::before{background:linear-gradient(0deg,transparent 0 1.6cqw,var(--a) 1.6cqw 3.4cqw,transparent 3.4cqw 4.1cqw,var(--a2) 4.1cqw 4.6cqw,transparent 4.6cqw)}
.pcard.tr-block .pc-art::before{background:linear-gradient(104deg,transparent 0 64%,var(--a) 64%)}
.pcard .pc-art .pc-sil{display:none}
.pcard .pc-num{right:3cqw;top:auto;bottom:-7cqw;font:700 44cqw/1 var(--font-label);letter-spacing:-.04em;color:#fff;opacity:.1}
.pcard.tr-block .pc-num{color:color-mix(in srgb,var(--a) 65%,#fff);opacity:.2}
.pcard .pc-art .pc-top{color:rgba(255,255,255,.88);text-shadow:0 1px 2px rgba(0,0,0,.25)}
.pcard .pc-art .pc-top .pc-no{color:rgba(255,255,255,.8)}
.pcard .pc-art .pc-top .pos{box-shadow:0 0 0 1px rgba(255,255,255,.35)}
.pcard .pc-inj,.pcard .pc-stamp{top:11cqw;right:3.8cqw}
.pcard .pc-inj~.pc-stamp{top:17.4cqw}
.pcard .pc-name{position:relative;margin-top:auto;padding:0;background:none;z-index:1}
.pcard .pc-name h2{margin-top:1.4cqw;font-size:min(10cqw,var(--nf,10cqw));text-shadow:0 1px 4px rgba(0,0,0,.25)}
.pc-plate{display:flex;align-items:center;gap:1.8cqw;font:500 max(10px,2.8cqw)/1.15 var(--font-label);color:rgba(255,255,255,.92)}
.pc-plate i{display:grid;place-items:center;flex:none;width:7.6cqw;height:7.6cqw;border-radius:2cqw;background:var(--a);color:var(--aink);font:normal 400 3.2cqw/1 var(--font-display);letter-spacing:.03em;box-shadow:0 0 0 .5cqw rgba(255,255,255,.18)}
.pc-plate-c i{width:auto;min-width:7.6cqw;padding:0 1.4cqw}.pc-plate-c i.lg{font-size:2.6cqw;letter-spacing:.02em}
/* The format switch uses one solid club colour, never the header's stripes. */
.pc-stage:has(.pc-format){--cw:min(380px,calc(100vw - 32px),calc((100vh - 150px) / 1.5))}
.pc-deck:has(.pc-format){height:calc(var(--cw) * 1.5)}
.pc-front .pc-body:has(.pc-format){gap:1.6cqw}
@supports(height:100dvh){.pc-stage:has(.pc-format){--cw:min(380px,calc(100vw - 32px),calc((100dvh - 150px) / 1.5))}}
@media(min-width:900px) and (pointer:fine){.pc-stage:has(.pc-format){--cw:min(500px,calc((100vh - 140px) / 1.5))}}
.pc-format{display:inline-flex;align-self:flex-start;flex:none;border:1px solid var(--line);border-radius:var(--r-ctl,8px);overflow:hidden;max-width:calc(100% - 7.6cqw)}
.pc-format button{min-height:36px;padding:1.4cqw 3.8cqw;border:0;border-radius:0;background:var(--panel-solid);color:var(--ink);font:600 max(12px,3cqw)/1.1 var(--font-card-label,var(--font-label));letter-spacing:0;cursor:pointer;box-shadow:none;text-transform:none}
.pc-format button[aria-pressed="true"]{background:var(--modeL);color:var(--modeInkL)}
:root[data-theme="dark"] .pc-format button[aria-pressed="true"]{background:var(--modeD);color:var(--modeInkD)}
.pc-format button:focus-visible{outline:2px solid currentColor;outline-offset:-4px}
@media(pointer:coarse){.pc-format button{min-height:44px}}
/* the data panel */
.pcard .pc-tabs{gap:3cqw;border-bottom:1px solid var(--line)}
.pcard .pc-tabs button{position:relative;padding:1.4cqw 0 1.8cqw;border:0;border-radius:0;background:none}
.pcard .pc-tabs button[aria-pressed="true"]{background:none;color:var(--ink)}
.pcard .pc-tabs button[aria-pressed="true"]::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:.7cqw;border-radius:1cqw 1cqw 0 0;background:var(--ac)}
.pcard .pc-tabs sup{margin-left:.6cqw;font:700 max(9px,2.3cqw)/1 var(--font-body);color:var(--faint);vertical-align:.3em}
.pcard .pc-tabs .pc-new{display:inline-block;width:1.4cqw;height:1.4cqw;margin-left:.5cqw;border-radius:50%;background:var(--bad);vertical-align:.5em}
.pcard .pc-tabs .pc-tabr{padding-bottom:.4cqw}
.pcard .pc-tabp{margin-top:1.8cqw}
.pcard .pc-st button,.pcard .pc-win>*,.pcard .pc-land button{border-color:transparent}
.pcard .pc-st button:hover,.pcard .pc-st button[aria-expanded="true"]{border-color:var(--ac)}
.pcard .pc-st .pc-lg{background:var(--raise);border-color:transparent}.pcard .pc-st .pc-lg span{color:var(--ac)}
.pcard .pc-l4 i{background:var(--ac)}
.pcard .pc-win>*{border-top:1px solid transparent}
.pc-win span{color:var(--c)!important;font-weight:600}
.pcard .pc-win button:hover,.pcard .pc-win button[aria-expanded="true"]{border-color:var(--c)}
.pcard .pc-flip{border-color:var(--line);background:transparent;color:var(--muted)}
.pcard .pc-flip:hover{background:var(--ac);border-color:var(--ac);color:var(--acink,#fff)}
.pcard .pc-profile{border-color:var(--line);background:transparent;color:var(--ink)}
.pcard .pc-profile:hover{background:var(--ac);border-color:var(--ac);color:var(--acink,#fff)}
.pcard .eyebrow{color:var(--faint)}
/* the news tab: the newest three articles that name him */
.pc-nl{display:grid;grid-template-rows:repeat(3,1fr);min-width:0}
.pc-nl a{display:grid;grid-template-columns:14cqw 1fr auto;align-items:center;gap:2cqw;min-width:0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}
.pc-nl a:last-child{border-bottom:0}.pc-nl a:hover .pc-ntt{color:var(--ac)}
.pc-nty{font:600 max(9px,2.3cqw)/1 var(--font-label);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pc-nty.ty-start-sit{color:#1F6FD6}.pc-nty.ty-injuries{color:#C2352B}.pc-nty.ty-waivers{color:#0F8A7E}.pc-nty.ty-buy-sell{color:#A06E00}.pc-nty.ty-recaps{color:#6B4FD8}
:root[data-theme="dark"] .pc-nty.ty-start-sit{color:#8EBBFF}:root[data-theme="dark"] .pc-nty.ty-injuries{color:#FF9A90}:root[data-theme="dark"] .pc-nty.ty-waivers{color:#5FE0CF}:root[data-theme="dark"] .pc-nty.ty-buy-sell{color:#FFD06A}:root[data-theme="dark"] .pc-nty.ty-recaps{color:#C3B6FF}
.pc-ntt{font:500 max(11px,3cqw)/1.2 var(--font-body);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pc-nl time{font:500 max(9.5px,2.5cqw)/1 var(--font-label);color:var(--faint);white-space:nowrap}
.pc-tabr a[data-news-for]{color:var(--ink);font-weight:600}.pc-tabr a[data-news-for]:hover{color:var(--ac)}
/* the back: the same club header band */
.pcard .pc-back .pc-bhead{background:var(--f,#22362F);color:#fff;border-bottom:0;box-shadow:inset 0 -.9cqw 0 var(--a,transparent)}
.pcard .pc-back .pc-bhead .pos{box-shadow:0 0 0 1px rgba(255,255,255,.35)}
.pcard .pc-scroll{scrollbar-color:color-mix(in srgb,var(--ac) 55%,transparent) transparent}
.pcard .pc-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ac) 55%,transparent)}
/* the top five: holographic. A foil rim, the rainbow film over the header, a fainter film over the data */
/* The rim is drawn over the card's outer edge, so the card underneath is laid out exactly like any other card:
   nothing inside moves or shrinks. Content keeps at least 3.4cqw from the edge, well clear of the .9cqw rim. */
.pcard.pc-holo .pc-face{padding:0;background:color-mix(in srgb,var(--f,#22362F) var(--tint),var(--panel-solid))}
.pcard.pc-holo .pc-face::before{content:"";position:absolute;inset:0;z-index:6;pointer-events:none;border-radius:inherit;padding:.9cqw;
  background:conic-gradient(from 200deg at 50% 50%,#F6C945,#FFFBE6,#8FE3FF,#D8B4FE,#FFD1E8,#F6C945,#FFF3C4,#C98A00,#F6C945);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}
.pcard.pc-holo .pc-body{background:transparent}
.pcard.pc-holo .pc-scroll::-webkit-scrollbar-track{margin-block:5cqw}
.pcard.pc-holo .pc-scroll::-webkit-scrollbar-thumb{border-right:.9cqw solid transparent;background-clip:padding-box}
.pcard.pc-holo .pc-art{box-shadow:none}
.pcard.pc-holo .pc-art::after{opacity:.18;filter:saturate(.65)}
.pcard.pc-holo.pc-hov .pc-art::after{opacity:.28}
.pcard.pc-holo .pc-front .pc-body::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:inherit;mix-blend-mode:soft-light;opacity:var(--film,.12);
  background:repeating-linear-gradient(115deg,#ff0084 0%,#fca400 4%,#ffff00 8%,#00ff8a 12%,#00cfff 16%,#cc4cfa 20%,#ff0084 24%);background-size:400% 400%;background-position:var(--mx,50%) var(--my,50%);
  -webkit-mask-image:linear-gradient(180deg,transparent 28%,#000 40%,rgba(0,0,0,.35) 75%,rgba(0,0,0,.6));mask-image:linear-gradient(180deg,transparent 28%,#000 40%,rgba(0,0,0,.35) 75%,rgba(0,0,0,.6))}
/* Keep the foil light on the header and quiet over the numbers, including hover. */
.pcard.pc-holo .pc-front .pc-body::before{opacity:.28;-webkit-mask-image:linear-gradient(#000 25%,rgba(0,0,0,.18) 44%);mask-image:linear-gradient(#000 25%,rgba(0,0,0,.18) 44%)}
.pcard.pc-holo.pc-lead .pc-front::after{opacity:.24;-webkit-mask-image:linear-gradient(#000 25%,rgba(0,0,0,.15) 44%);mask-image:linear-gradient(#000 25%,rgba(0,0,0,.15) 44%)}
.pcard.pc-holo.pc-lead.pc-hov .pc-front::after{opacity:.42}
.pcard.pc-holo .pc-num{opacity:.2}
.pcard.pc-lead .pc-front::after{inset:0;border-radius:inherit}
@media (prefers-reduced-motion:no-preference){.pcard.pc-holo:not(.pc-hov) .pc-front .pc-body::after{animation:holo 7s ease-in-out infinite alternate}}
/* deck controls */
.pc-ctl{display:flex;align-items:center;justify-content:center;gap:12px;min-height:44px;color:var(--faint);font:500 13px/1 var(--font-label);}
.pc-ctl button{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;border:1px solid var(--line);background:var(--panel-solid);color:var(--ink);cursor:pointer}
.pc-ctl button:disabled{opacity:.35;cursor:default}
.pc-ctl button:not(:disabled):hover{border-color:var(--accent-border);color:var(--accent-text)}
.pc-ctl b{color:var(--ink);font-variant-numeric:tabular-nums}
.pc-ctl .pc-hint{display:block;margin-top:4px;font-size:11px;opacity:.8;text-align:center}
@media (prefers-reduced-motion:reduce){.pc-in,.pc-tilt{transition:none}}
/* college prospects: an outlined position badge, landing-spot chips, draft-range bars */
.pc-l4h .tou{text-transform:none;letter-spacing:0}.pc-l4h .ou{transform:scale(.85);transform-origin:right center}
.pc-kdwk{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:-1cqw;font-size:max(11px,3.2cqw);line-height:1.2;color:var(--muted)}.pc-kdwk .tou:empty{display:none}.pc-kdwk .ou{transform:scale(.9);transform-origin:right center}
.pc-stamp.plain{background:rgba(0,0,0,.35);color:#fff;box-shadow:none}
.pc-land{display:flex;gap:1.6cqw;align-items:stretch;min-height:9.5cqw}
.pc-land button{flex:1;display:grid;gap:.4cqw;justify-items:start;padding:1.4cqw 2.4cqw;border-radius:2.4cqw;border:1px solid var(--line);background:var(--raise);color:var(--ink);cursor:pointer;text-align:left}
.pc-land button b{font:600 max(12px,4cqw)/1 var(--font-label);letter-spacing:.04em}
.pc-land button small{font-size:max(10px,2.7cqw);color:var(--faint);white-space:nowrap}
.pc-land button b{display:flex;justify-content:space-between;align-items:baseline;gap:1cqw;width:100%}.pc-land button b i{font:600 max(11px,3.4cqw)/1 var(--font-body);font-style:normal;letter-spacing:0;color:var(--c)}
.pc-clubs{display:grid;gap:2.2cqw}.pc-clubs div{display:grid;grid-template-columns:27cqw 1fr 10cqw;align-items:center;gap:.6cqw 2cqw;font-size:max(11px,3.1cqw)}
.pc-clubs span{display:grid;gap:.3cqw}.pc-clubs span b{font:600 max(12px,3.6cqw)/1 var(--font-label);letter-spacing:.04em}.pc-clubs small{color:var(--faint);font-size:max(10px,2.7cqw)}
.pc-clubs>div>b{text-align:right;font-variant-numeric:tabular-nums}.pc-clubs i{display:block;height:3cqw;border-radius:1cqw;background:linear-gradient(90deg,var(--c) var(--w),var(--line) var(--w))}
.pc-pop a{color:var(--accent-text)}
.pc-clubs em{grid-column:1/-1;font-style:normal;color:var(--faint);font-size:max(10px,2.8cqw);line-height:1.3}
.pc-land button[aria-expanded="true"]{border-color:var(--c);box-shadow:inset 0 0 0 1px var(--c);background:color-mix(in srgb,var(--c) 10%,var(--raise))}
.pc-range{display:grid;gap:1.4cqw}
.pc-range div{display:grid;grid-template-columns:34cqw 1fr 10cqw;align-items:center;gap:2cqw;font-size:max(11px,3.1cqw)}
.pc-range span{color:var(--muted)}.pc-range b{text-align:right;font-variant-numeric:tabular-nums}
.pc-range i{display:block;height:3cqw;border-radius:1cqw;background:linear-gradient(90deg,var(--c) var(--w),var(--line) var(--w))}
.pc-fits{display:grid;gap:1.6cqw}.pc-fits div{display:grid;gap:.6cqw;padding:2.2cqw 2.6cqw;border-radius:2.4cqw;background:var(--raise);border:1px solid var(--line)}
.pc-fits small{color:var(--faint);font-size:max(11px,3cqw);line-height:1.35}
.pc-ctab{font-size:max(11px,3.1cqw);width:100%}.pc-ctab td,.pc-ctab th{padding:1.4cqw 1.6cqw;white-space:nowrap}
/* game log on the back of the card: every week of the season, opponents coloured by matchup (rank in the popout) */
.pc-gsos{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6cqw}
.pc-gsos>div{min-width:0;padding:1.6cqw 2cqw;border-radius:2.4cqw;background:var(--raise)}
.pc-gsos span{display:block;font:500 max(10px,2.6cqw)/1.2 var(--font-body);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pc-gsos b{display:block;margin-top:.6cqw;font:700 max(13px,4cqw)/1 var(--font-body);color:var(--ink);white-space:nowrap}
.pc-gtw{overflow-x:auto;margin:0 -.4cqw}
.pc-glt{width:100%;border-collapse:collapse;font-size:max(10.5px,2.9cqw);font-variant-numeric:tabular-nums}
.pc-glt th{font:600 max(9.5px,2.5cqw)/1 var(--font-body);color:var(--muted);text-align:right;padding:1cqw .8cqw;white-space:nowrap;background:var(--raise)}
.pc-glt thead tr:first-child th{background:none;text-align:left;color:var(--ink);padding-bottom:.4cqw}
.pc-glt th:first-child,.pc-glt td:first-child{text-align:left;padding-left:1.4cqw}
.pc-glt td{text-align:right;padding:1.5cqw .8cqw;white-space:nowrap;color:var(--muted)}
.pc-glt tbody tr:nth-child(even) td{background:color-mix(in srgb,var(--raise) 55%,transparent)}
.pc-glt .sep{border-left:1px solid var(--line)}
.pc-glt td.op{text-align:left;font-weight:700;color:var(--ink)}
.pc-glt td.pt,.pc-glt td.f{font-weight:700;color:var(--ink)}
.pc-glt td.x{text-align:left;color:var(--faint)}
.pc-glt tr.fut td:first-child{color:var(--faint)}
.pc-glog .good{color:var(--good)!important}.pc-glog .bad{color:var(--bad)!important}
.pc-glog [data-tip]{cursor:help}
/* fantasy teams */
.pc-foot .pc-add{margin-left:auto}
.pc-foot small{display:none}
.pc-addw{position:absolute;left:0;right:0;bottom:0;z-index:6;padding:3.4cqw;background:var(--panel-solid);border-top:1px solid var(--line);box-shadow:0 -12px 30px rgba(0,0,0,.18);border-radius:0 0 3.4cqw 3.4cqw}
.pc-addp{display:grid;gap:2.2cqw;font-size:max(12px,3.3cqw)}.pc-addp p{margin:0;color:var(--muted)}
.pc-addl{display:flex;flex-wrap:wrap;gap:1.6cqw}.pc-addl .btn.on{opacity:.7}
.pc-addn{display:flex;gap:1.6cqw}.pc-addn input{flex:1;min-width:0;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--field);color:var(--ink);font:inherit}
.tsec{margin-bottom:16px}
.tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin:8px 0 12px}
.ttile{display:grid;gap:12px;text-align:left;padding:16px;border-radius:12px;border:1px solid var(--line);background:var(--raise);color:var(--ink);cursor:pointer;font:inherit}
.ttile:hover{border-color:var(--accent-border)}
.ttile .tt{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.ttile .tt b{font-size:18px}.ttile small{color:var(--faint);font-size:12.5px}
.ttile .tn{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ttile .tn span{display:grid;gap:2px}.ttile .tn b{font:700 22px/1.1 var(--font-body);font-variant-numeric:tabular-nums}
.ttile .tv{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;padding-top:10px;border-top:1px solid var(--line)}.ttile .tv b{font:700 17px/1 var(--font-body);font-variant-numeric:tabular-nums}
.up{color:var(--good);font-weight:600}.down{color:var(--bad);font-weight:600}
.tform{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.tform input,.tform select{padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:var(--field);color:var(--ink);font:inherit;min-width:0;flex:1 1 160px}
.tforms{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media (max-width:760px){.tforms{grid-template-columns:1fr}}
.tlink{display:flex;width:100%;justify-content:space-between;align-items:center;gap:10px;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.tlink .go{color:var(--accent-text);font-weight:600;white-space:nowrap}
.tback{border:0;background:none;color:var(--accent-text);font:600 14px var(--font-body);cursor:pointer;padding:0;margin-bottom:10px}
.thead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:12px}.thead h3{font-size:26px;margin:4px 0 8px}
.thead .chips{display:flex;flex-wrap:wrap;gap:6px}
.tstats{display:flex;gap:10px;flex-wrap:wrap}.tstats div{display:grid;gap:2px;padding:10px 14px;border-radius:12px;background:var(--raise);border:1px solid var(--line);min-width:120px}
.tstats b{font:700 22px/1.1 var(--font-body);font-variant-numeric:tabular-nums}.tstats span{font-size:12.5px;color:var(--faint)}
.tbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}.btn.danger{color:var(--bad)}
.tsearch{position:relative;flex:1 1 260px}.tsearch input{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--field);color:var(--ink);font:inherit}
.tsug{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:20;display:grid;padding:6px;border-radius:12px;background:var(--panel-solid);border:1px solid var(--line);box-shadow:0 12px 30px rgba(0,0,0,.18)}
.tsug[hidden]{display:none}.tsug button{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:10px;padding:8px;border:0;border-radius:8px;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.tsug button:hover{background:var(--hover)}.tsug .pos{padding:4px 0}.tsug small{color:var(--faint)}
.tnote{margin:4px 0 10px}
.tpos{margin-top:14px}.tpos h4{margin:0 0 6px;font-size:16px}.tpos h4 small{color:var(--faint);font-weight:500}
.ttab{width:100%}.ttab td,.ttab th{padding:8px 10px}.ttab .who{display:flex;flex-direction:column}.ttab .who a{color:inherit;text-decoration:none}.ttab .who a:hover b{text-decoration:underline}
.ttab .dv{display:block;font-size:12px}.st1{align-self:flex-start;font:600 10.5px/1 var(--font-label);color:var(--accent-text);background:var(--accent-soft);border-radius:6px;padding:3px 6px;margin-bottom:3px}
.trm{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;border:1px solid transparent;background:none;color:var(--faint);cursor:pointer}.trm:hover{color:var(--bad);border-color:var(--line)}
.ttab.lg tr[data-lteam]{cursor:pointer}.ttab.lg tr[data-lteam]:hover td{background:var(--hover)}
.tset{padding:12px;border:1px solid var(--line);border-radius:12px;margin-bottom:10px}.tpre{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.tsgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}.tsave{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.tsrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:12px}.tsrow>div{display:grid;gap:6px;align-content:start}.tsrow small{color:var(--faint);font-size:12.5px}.tsrow .field input{width:100%}
.tcols{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px;margin:12px 0}.tcols:empty{display:none}.tcols .hcard{margin:0}
.twin h3,.tlu h3{margin:2px 0 0}.tlu h3 small{font:500 13px var(--font-body);color:var(--faint)}
.wmeter{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:10px}.wmeter span{font:600 11px/1 var(--font-label);text-align:center;padding:8px 4px;border-radius:8px;background:var(--raise);color:var(--faint);border-top:3px solid transparent}
.wmeter .w0{--wc:#E8590C}.wmeter .w1{--wc:#D4A017}.wmeter .w2{--wc:#12B886}.wmeter .w3{--wc:#7048E8}.wmeter span.on{color:var(--ink);border-top-color:var(--wc);background:var(--hover)}
.tmoves{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}.tmoves h4{margin:0}.tmoves p.small{margin:2px 0 6px}@media (max-width:560px){.tmoves{grid-template-columns:1fr}}
.tmv{padding:6px 0;border-top:1px solid var(--line);cursor:pointer}.tmv:hover b{text-decoration:underline}
.tas{display:flex;align-items:center;gap:8px;min-width:0}.tas .pos{min-width:40px;text-align:center;flex:none}.tas>span:last-child{display:grid;min-width:0}.tas b{font-size:14px}.tas small{color:var(--faint);font-size:12px}.tas i{font-style:normal}
.tdeals{display:grid;gap:8px}.tdeal{display:grid;grid-template-columns:1fr auto 1fr;gap:8px 12px;align-items:center;text-align:left;padding:12px;border-radius:12px;border:1px solid var(--line);background:var(--raise);color:var(--ink);font:inherit;cursor:pointer}
.tdeal:hover{border-color:var(--accent-border)}.td-side{display:grid;gap:6px;min-width:0}.td-side>small{font:600 10.5px/1 var(--font-label);color:var(--faint)}.td-arrow{font-size:20px;color:var(--faint)}
.td-foot{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12.5px;color:var(--muted);border-top:1px solid var(--line);padding-top:8px}.td-foot .go{margin-left:auto;color:var(--accent-text);font-weight:600}
@media (max-width:560px){.tdeal{grid-template-columns:1fr}.td-arrow{display:none}}
.twk{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:14px 0 4px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--raise)}.twk select{padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:var(--field);color:var(--ink);font:inherit}
.twk .twtot{margin-left:auto;font-variant-numeric:tabular-nums}.tlsave{display:flex;gap:6px}.tlsave .btn[disabled]{opacity:.5;cursor:default}
.ttab tr.ton td{background:var(--accent-soft)}.tck{width:34px}.tck input{width:18px;height:18px;accent-color:var(--btn-primary)}
.tou{display:inline-flex;justify-content:flex-end;min-height:1px}.tou:not(.hasou)::after{content:"–";color:var(--faint)}
.tlu .hl li{align-items:center}.tlu .hl .tou{margin-left:auto;margin-right:8px}.tlu .lempty{opacity:.6}
@media (max-width:560px){.tlu .hl li{flex-wrap:wrap;row-gap:4px}.tlu .hl .hn{flex:1 1 55%;min-width:0}.tlu .hl .tou{order:3;flex-basis:100%;justify-content:flex-start;margin:0 0 0 44px}.pc-kdwk{flex-wrap:wrap}.tlu .hl .tou:not(.hasou){display:none}}.pos.pE{--c:#8A949C}
.ttile .chips{display:flex;flex-wrap:wrap;gap:4px}.ttile .chips .chip{font-size:11px;padding:3px 7px}
.crk{display:inline-block;min-width:18px;font:600 11px/1 var(--font-label);color:var(--faint);}
.lgseg{margin-right:4px}
.cfl{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--muted)}.cfl select{font:inherit;font-weight:500;padding:6px 10px;border-radius:8px;border:1px solid var(--line);background:var(--field);color:var(--ink);max-width:220px}

/* News cards: one phone row, same move record as the static article. */
/* league tables on the homepage: eight divisions, four across; one conference at a time on a phone */
.hst{margin:20px 0 24px}.hst-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.hst-head h2{margin:0;font-size:22px}.hst-as{font:500 11.5px/1 var(--font-label);color:var(--faint);margin-left:4px}
.hst-on{display:inline-block;width:6px;height:6px;margin-right:5px;border-radius:50%;background:var(--bad);vertical-align:2px}
.hst-head .seg{margin-left:auto;display:none;box-shadow:none;padding:3px}.hst-head .seg button{min-height:32px;padding:0 14px}
.hst-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.hst-d{background:var(--panel);border:var(--panel-border);box-shadow:var(--panel-shadow);border-radius:12px;padding:6px 12px 4px;min-width:0}
.hst-d table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:14px}
.hst-d th{font:500 10.5px/1.2 var(--font-label);color:var(--faint);text-align:right;padding:6px 0 6px 8px;white-space:nowrap}
.hst-d th:first-child{text-align:left;padding-left:0;color:var(--accent-text);font-size:11.5px;}
.hst-d td{padding:6px 0 6px 8px;text-align:right;border-top:1px solid var(--line);white-space:nowrap;color:var(--muted)}
.hst-d td:first-child{text-align:left;padding-left:0}.hst-d td:nth-child(2){color:var(--ink);font-weight:600}
.hst-d a{color:var(--ink);font-weight:600;text-decoration:none}.hst-d a:hover{color:var(--accent-text);text-decoration:underline}
.hst-s{display:inline-grid;place-items:center;width:17px;height:17px;margin-right:6px;border-radius:50%;font:600 10px/1 var(--font-body);vertical-align:1px}
.hst-s.dv{background:var(--accent-soft);color:var(--accent-text);box-shadow:inset 0 0 0 1px var(--accent-border)}.hst-s.wcs{box-shadow:inset 0 0 0 1px var(--ctl);color:var(--muted)}
.hst-pk{display:inline-grid;gap:3px;justify-items:end;vertical-align:middle}.hst-pk b{font-weight:600;color:var(--ink);line-height:1}
.hst-rg{position:relative;display:block;width:46px;height:4px;border-radius:2px;background:var(--line)}
.hst-rg i{position:absolute;top:0;bottom:0;left:var(--a);width:var(--w);border-radius:2px;background:var(--hr);opacity:.6}
.hst-rg u{position:absolute;top:-2px;left:var(--m);width:2px;height:8px;margin-left:-1px;border-radius:1px;background:var(--ink)}
@media (max-width:1100px){.hst-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.hst-head .seg{display:flex}.hst-as{order:3;flex-basis:100%;margin:-4px 0 0}.hst-grid[data-c="AFC"] .hst-d[data-c="NFC"],.hst-grid[data-c="NFC"] .hst-d[data-c="AFC"]{display:none}
  .hst-grid{gap:8px}.hst-d{padding:4px 7px 2px}.hst-d table{font-size:13px}.hst-d th,.hst-d td{padding-left:4px}.hst .hst-d th{font-size:10px}.hst .hst-d th:first-child{font-size:11px}
  .hst-cf{display:none}.hst-s{width:15px;height:15px;margin-right:3px;font-size:9.5px}.hst-rg{width:30px}}
@media (max-width:389px){.hst-d{padding:4px 6px 2px}.hst-d th,.hst-d td{padding-left:3px}.hst-s{margin-right:2px}.hst-rg{width:24px}}
@media (max-width:367px){.hst-grid{grid-template-columns:1fr}.hst-rg{width:46px}.hst-d th,.hst-d td{padding-left:8px}}
.hnews{margin:18px 0}.hnews-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.hnews-head h2{margin:0;font-size:22px}.hnews-head a{font-size:13px;color:var(--muted)}
.hnews-row{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}.hnews-card{text-align:left;cursor:pointer;font:inherit;flex:0 0 290px;scroll-snap-align:start;border:1px solid var(--line);background:var(--raise);border-radius:12px;padding:13px;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:10px}.hnews-card:hover,.hnews-card:focus-visible{border-color:var(--accent)}.hnews-label{font:500 11px/1.3 var(--font-body);color:var(--muted)}.hnews-title{font:600 17px/1.25 Outfit,sans-serif;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hnews-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:auto}.hnews-chip{display:inline-flex;gap:4px;align-items:center;border:1px solid var(--line);border-radius:6px;padding:3px 5px;font-size:11px}.hnews-chip .pos{font-size:9px}.hnews-chip.down{color:var(--bad)}.hnews-chip.up{color:var(--good)}

/* News uses the same modal frame and house typography as matchup windows. */
nav.tabs .news-nav{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 13px;border:var(--panel-border);border-radius:12px;color:var(--muted);font:500 14px/1 var(--font-body);text-decoration:none;flex:none}
nav.tabs .news-nav:hover,nav.tabs .news-nav:focus-visible{color:var(--ink);border-color:var(--accent)}
dialog#newsdlg{border:var(--panel-border);border-radius:var(--radius);padding:0;width:min(1080px,calc(100% - 24px));max-height:90svh;background:var(--panel-solid);color:var(--ink);box-shadow:0 24px 60px rgba(0,0,0,.3);overflow:hidden}
/* a house-voice article is one 720px column: the dialog hugs it instead of leaving a blank band beside it */
dialog#newsdlg:has(.news-content .fa){width:min(780px,calc(100% - 24px))}
dialog#newsdlg[open]{display:flex;flex-direction:column}
dialog#newsdlg::backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}
#newsdlg .news-toolbar{position:relative;flex:none}
#newsdlg .news-content{min-height:0;overflow-y:auto;overscroll-behavior:contain;overflow-anchor:none}
html:has(#newsdlg[open]){overflow:hidden}
body:has(#newsdlg[open]) .ticker-track{animation-play-state:paused}
.news-toolbar{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:10px 20px;background:var(--panel-solid);border-bottom:1px solid var(--line)}.news-toolbar a{color:var(--muted);font-size:13px}.news-toolbar .dlgx{position:static;flex:none}
.news-content{padding:22px;line-height:1.55;overflow-wrap:anywhere}.news-content h1{font:700 clamp(28px,4vw,40px)/1.08 var(--font-body);margin:0 0 12px;letter-spacing:-.01em}.news-content h2{font:700 19px/1.15 var(--font-body);margin:26px 0 12px;letter-spacing:-.01em}.news-content .lead{font-size:17px;color:var(--muted)}.news-content .meta{font-size:13px;color:var(--muted)}.news-content .cards{display:grid;gap:10px;margin:14px 0}.news-content a{color:var(--accent-text)}.news-content .card{padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--raise)}.news-content summary{cursor:pointer}.news-content .note{font-size:13px;color:var(--muted)}.news-content .cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.news-ticker{display:flex;align-items:center;gap:12px;position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:var(--raise);height:38px;padding:0 20px}.news-ticker[hidden]{display:none}.ticker-label{font:500 11px var(--font-body);flex:none;color:var(--accent-text)}.ticker-viewport{overflow:hidden;flex:1;min-width:0}.ticker-track{display:flex;width:max-content;animation:news-crawl var(--ticker-time,90s) linear infinite}.ticker-copy{display:flex;align-items:center;flex:none}.ticker-item{display:flex;align-items:center;gap:12px;padding:0 28px;border-right:1px solid var(--line);white-space:nowrap;font-size:12px;text-decoration:none;color:var(--ink)}.ticker-item strong{font-weight:500}.ticker-item.ticker-breaking{background:color-mix(in srgb,#b91c1c 10%,var(--raise))}.ticker-breaking .ticker-alert{display:inline-flex;align-items:center;border-radius:4px;background:#b91c1c;color:#fff;padding:3px 7px;font:700 10px var(--font-body);}.ticker-breaking strong{font-weight:700}.ticker-breaking:focus-visible{outline:2px solid #dc2626;outline-offset:-2px}.ticker-change{font-variant-numeric:tabular-nums}.ticker-pause{border:0;background:transparent;color:var(--muted);font:500 11px var(--font-body);cursor:pointer;padding:6px;flex:none}.news-ticker:hover .ticker-track,.news-ticker:focus-within .ticker-track,.news-ticker.paused .ticker-track{animation-play-state:paused}
@keyframes news-crawl{to{transform:translateX(-50%)}}
.ticker-live{display:flex;align-items:center;gap:8px;flex:0 1 auto;max-width:min(560px,45vw);min-width:0;font-size:12px;white-space:nowrap;padding-right:14px;margin-right:2px;border-right:1px solid var(--line)}.ticker-live[hidden]{display:none}.ticker-live i{width:7px;height:7px;border-radius:50%;background:var(--bad);flex:none;animation:tl-pulse 1.6s ease-in-out infinite}.ticker-live b{font-weight:700;font-variant-numeric:tabular-nums}.ticker-live .tl-q{color:var(--muted);font-variant-numeric:tabular-nums}.ticker-live .tl-x{overflow:hidden;text-overflow:ellipsis}.ticker-live .tl-x.sc{font-weight:700;color:var(--good)}@keyframes tl-pulse{50%{opacity:.35}}@media(prefers-reduced-motion:reduce){.ticker-live i{animation:none}}
@media(max-width:860px){.news-ticker{display:none}.news-content{padding:16px}nav.tabs .news-nav{padding:0 10px}}
@media(prefers-reduced-motion:reduce){.ticker-track{animation:none}.ticker-copy[aria-hidden]{display:none}.ticker-viewport{overflow-x:auto}}
.news-moves{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr))}.news-move{min-width:0}.news-move .pos{display:inline-block;color:#fff;width:auto;height:auto;min-width:34px;padding:3px 7px;flex:none;border-radius:6px;font:600 12px/1.2 var(--font-body);background:var(--c,var(--rb))}.news-move h3{margin:0 0 12px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.news-number{display:block;font:700 32px/1.1 Outfit,sans-serif;font-variant-numeric:tabular-nums}.news-move p{margin:10px 0;font-size:14px}.news-move small{display:block;color:var(--faint);font-size:12px}
.news-windows{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:12px 0}.news-windows details,.news-windows>div{border:1px solid var(--line);border-radius:8px;padding:7px;font-size:12px}.news-windows summary{cursor:pointer}.news-windows strong{display:block;font-size:16px;font-variant-numeric:tabular-nums}.news-windows p{font-size:12px}.news-prose{max-width:760px;font-size:17px;overflow-wrap:anywhere}.news-prose p{margin:15px 0}.news-prose li{margin:7px 0}.news-method{max-width:760px;margin:24px 0;padding:14px;border:1px solid var(--line);border-radius:12px}.news-method summary{cursor:pointer;font-weight:600}.news-related{display:flex;gap:8px 16px;flex-wrap:wrap}.news-muted{color:var(--faint)}
.news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:12px;margin:18px 0}
.news-filters{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.news-filters label{display:flex;flex:1 1 150px;flex-direction:column;gap:5px;font-size:13px;color:var(--muted)}.news-filters label:first-child{flex-basis:280px}.news-filters input,.news-filters select{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--raise);color:var(--ink);font:inherit}.news-grid [hidden],.news-date-group[hidden]{display:none}
.news-card{background:var(--panel);border:var(--panel-border);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:9px;text-decoration:none;color:var(--ink);min-width:0}.news-card:hover,.news-card:focus-visible{border-color:var(--accent)}
.news-label{font:500 12px/1.3 var(--font-body);color:var(--faint)}.news-label .ntype{margin-right:4px}
.news-types{display:flex;gap:6px;flex-wrap:wrap;margin:18px 0 0}.news-types button{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border-radius:999px;border:1px solid var(--line);background:none;color:var(--ink);font:500 14px/1 var(--font-body);cursor:pointer}.news-types button span{color:var(--faint);font-size:12px;font-variant-numeric:tabular-nums}.news-types button .ntype{border:0;padding:0;font-size:12px}.news-types button[aria-pressed=true]{border-color:var(--accent);background:var(--raise)}

.ntype{display:inline-block;font:600 11px/1 Outfit,sans-serif;padding:4px 7px;border-radius:6px;border:1px solid currentColor;color:var(--muted);white-space:nowrap}
.ntype.t-start-sit{color:var(--accent-text,var(--accent))}.ntype.t-injuries{color:var(--bad)}.ntype.t-waivers{color:color-mix(in srgb,var(--sr) 75%,var(--ink))}
.ntype.t-buy-sell{color:var(--hr)}.ntype.t-recaps{color:var(--wr,#1F6FD6)}.ntype.t-nfl{color:var(--muted)}.ntype.t-site{color:var(--accent-text,var(--accent))}

.fa{max-width:720px}
.fa-kick{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 10px;font:600 12px/1.2 Outfit,sans-serif;color:var(--faint)}
.fa h1{margin:0 0 10px}
.fa-dek{font:italic 400 19px/1.45 "Source Serif 4",Georgia,serif;color:var(--muted);margin:0 0 14px}
.fa-by{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--faint);margin:0 0 20px}
.fa-by i{width:30px;height:30px;border-radius:50%;border:1px solid var(--line);background:var(--raise);display:inline-flex;align-items:center;justify-content:center;font:600 11px/1 Outfit,sans-serif;font-style:normal;color:var(--accent-text,var(--accent));flex:none}
.fa-set{font-size:12px;color:var(--faint);margin:6px 0 0}
.fa-moves{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 20px}
.fa-moves a{display:inline-flex;gap:6px;align-items:center;border:1px solid var(--line);border-radius:999px;padding:5px 10px;font:600 13px/1.2 Outfit,sans-serif;color:var(--ink);text-decoration:none;white-space:nowrap}
.fa-moves a b{font-weight:700}.fa-moves .up b{color:var(--good)}.fa-moves .down b{color:var(--bad)}
.fa-calls{display:flex;flex-direction:column;gap:8px;margin:0 0 22px}
.fa-row{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:10px;background:var(--raise);border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.fa-row span:nth-child(2){font-weight:600;min-width:0;overflow-wrap:anywhere}.fa-row span:nth-child(2) a{color:inherit}
.fa-row em{font:600 15px/1 Outfit,sans-serif;font-style:normal;color:var(--accent-text,var(--accent));white-space:nowrap;font-variant-numeric:tabular-nums}
.fa-v{display:inline-block;text-align:center;font:600 12px/1 Outfit,sans-serif;padding:5px 0;border-radius:6px;background:var(--accent);color:#04140F}
.fa-v.neg{background:var(--bad);color:#fff}.fa-v.mid{background:none;border:1px solid var(--line);color:var(--muted);padding:4px 0}
.fa-call{background:var(--raise);border:1px solid var(--line);border-radius:12px;padding:16px;margin:0 0 22px}
.fa-call small,.fa-flip small,.fa-lab{display:block;font:600 12px/1.2 Outfit,sans-serif;color:color-mix(in srgb,var(--pp) 65%,var(--ink))}
.fa-call p{margin:8px 0 0;font:600 20px/1.35 Outfit,sans-serif}.fa-call p+p{font:400 15px/1.5 Outfit,sans-serif;color:var(--muted)}
.fa-mark{background:linear-gradient(transparent 58%,color-mix(in srgb,var(--pp) 45%,transparent) 58%)}
.fa-vs{background:var(--raise);border:1px solid var(--line);border-radius:12px;padding:16px;margin:0 0 22px}
.fa-vs-top{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.fa-vs-top>div{display:flex;flex-direction:column;gap:3px;min-width:0}.fa-vs-top>div+div{text-align:right}
.fa-vs-top b{font:600 18px/1.2 Outfit,sans-serif;overflow-wrap:anywhere}.fa-vs-top b a{color:inherit}.fa-vs-top small{font-size:13px;color:var(--faint)}
.fa-vs-top strong{font:700 26px/1 Outfit,sans-serif;color:var(--accent-text,var(--accent));letter-spacing:-.01em}
.fa-vs-top strong.neg{color:var(--bad)}.fa-vs-top strong.mid{color:var(--muted)}
.fa-bars{display:flex;flex-direction:column;gap:8px;margin:14px 0 4px;font-size:13px}
.fa-bar{display:grid;grid-template-columns:44px minmax(0,1fr) 84px minmax(0,1fr) 44px;align-items:center;gap:8px}
.fa-bar>span:nth-child(3){text-align:center;color:var(--faint)}.fa-bar>b{font:600 14px/1 Outfit,sans-serif;font-variant-numeric:tabular-nums}.fa-bar>b:first-child{text-align:right}
.fa-bar i{display:block;height:8px;border-radius:4px;background:var(--accent)}.fa-bar>span:nth-child(2) i{margin-left:auto}.fa-bar>span:nth-child(4) i{background:var(--faint)}
.fa-body{font-size:17px;line-height:1.62;overflow-wrap:anywhere}.fa-body p{margin:0 0 16px}.fa-body li{margin:6px 0}
.fa-body h2{font:600 22px/1.25 Outfit,sans-serif;text-transform:none;letter-spacing:0;margin:28px 0 10px}
.fa h2.fa-h{font:600 20px/1.25 Outfit,sans-serif;text-transform:none;letter-spacing:0;margin:26px 0 10px}
.fa-col .fa-body p,.fa-col .fa-body li{font:400 18px/1.62 "Source Serif 4",Georgia,serif}
.fa-note{font:600 18px/1.35 Outfit,sans-serif;color:color-mix(in srgb,var(--pp) 65%,var(--ink));margin:0 0 18px}
.fa-body figure.fa-shot{margin:22px 0 26px;padding:0;border:0;background:none;overflow:visible}.fa-shot img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:8px;background:var(--raise)}.fa-shot figcaption{margin-top:8px}
.fa-body figure{margin:24px 0;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--raise);overflow:auto}.fa-body figcaption{font-size:13px;color:var(--faint);margin-top:8px}
.fa-tbl{border:1px solid var(--line);border-radius:12px;margin:0 0 22px}
.fa-tbl div{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:12px;padding:11px 14px;font-size:15px}.fa-tbl div+div{border-top:1px solid var(--line)}.fa-tbl div span:last-child{text-align:right;color:var(--muted)}
.fa-win{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 22px}
.fa-win div{border:1px solid var(--line);border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:4px;font-size:15px;line-height:1.4}
.fa-win div small{font:600 11px/1.2 Outfit,sans-serif;}
.fa-win .w0 small{color:color-mix(in srgb,var(--wn) 70%,var(--ink))}.fa-win .w1 small{color:color-mix(in srgb,var(--pp) 65%,var(--ink))}.fa-win .w2 small{color:color-mix(in srgb,var(--sr) 75%,var(--ink))}.fa-win .w3 small{color:var(--hr)}
.fa-flip{border:1px dashed var(--line);border-radius:12px;padding:12px 14px;margin:0 0 22px}.fa-flip small{color:var(--faint)}.fa-flip p{margin:6px 0 0;font-size:16px;line-height:1.5}
.fa-col .fa-flip{border:0;border-top:2px solid var(--accent);border-radius:0;padding:10px 0 0}.fa-col .fa-flip small{color:var(--accent-text,var(--accent))}
.fa-act{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 22px}
.fa-act a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:8px;border:1px solid var(--line);color:var(--ink);text-decoration:none;font-weight:600;font-size:15px}
.fa-act a:first-child{background:var(--accent);border-color:var(--accent);color:#04140F}
.fa-src{font-size:13px;color:var(--faint);line-height:1.5}.fa-src a{color:var(--faint)}
.fa-rel{display:flex;gap:6px 14px;flex-wrap:wrap;font-size:14px;margin:6px 0 0}
@media (max-width:420px){.fa-win{grid-template-columns:1fr}.fa-bar{grid-template-columns:36px minmax(0,1fr) 64px minmax(0,1fr) 36px;gap:6px}}

.news-card h2{font:600 20px/1.25 Outfit,sans-serif;text-transform:none;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-card p{font-size:14px;line-height:1.45;color:var(--muted);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}.news-chip{display:inline-flex;gap:5px;align-items:center;font-size:12px;border:1px solid var(--line);border-radius:6px;padding:4px 6px}.news-chip .pos{font-size:10px;min-width:22px;padding:2px 4px}

#newsbody .lead{color:var(--muted)}#newsbody h1{font-size:32px}#newsbody .note{margin:12px 0;border:0;padding:0}#newsbody .news-date-group>h2{font:600 18px/1.3 var(--font-body);text-transform:none;margin-top:22px}
/* The matchup header now leads the homepage: no bulletin spacing above it. */
#home.panel{padding-top:0}#homebody #mwrap>.hsech{margin-top:4px}

/* charts lab */
.cbbar{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;margin:0 0 12px}.cbpresets button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.cbown{min-width:0}.cbown>summary{display:none}
#charts{--s1:#2a78d6;--s2:#eb6834;--s3:#1baf7a;--s4:#eda100;--s5:#e87ba4;--s6:#008300}:root[data-theme="dark"] #charts{--s1:#3987e5;--s2:#d95926;--s3:#199e70;--s4:#c98500;--s5:#d55181;--s6:#008300}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) #charts{--s1:#3987e5;--s2:#d95926;--s3:#199e70;--s4:#c98500;--s5:#d55181;--s6:#008300}}
#charts:not([data-mode="prog"]) .cbpg,#charts[data-mode="prog"] .cbxy{display:none!important}.cbmode button{white-space:nowrap}
.cbsvg .pl{fill:none;stroke-width:1.3;stroke-linejoin:round;stroke-linecap:round;opacity:.34;pointer-events:none}.cbsvg .pl.f{stroke-width:2.2;opacity:1}.cbsvg.hov .pl{opacity:.16}.cbsvg.hov .pl.f{opacity:.4}.cbsvg .pl.on,.cbsvg.hov .pl.on{stroke-width:2.8;opacity:1}.cbsvg .pl.live{stroke-dasharray:5 4}
.cbsvg .band{stroke:none;opacity:.13;pointer-events:none}.cbsvg .mid{fill:none;stroke-width:2.4;stroke-dasharray:2 6;stroke-linecap:round;opacity:.95;pointer-events:none}.cbsvg .hair{stroke:var(--ctl);stroke-width:1;pointer-events:none}.cbsvg .dot{stroke:var(--panel-solid);stroke-width:2;pointer-events:none}.cbsvg .end{stroke:var(--panel-solid);stroke-width:1.5;pointer-events:none}.cbsvg .lab.ret{cursor:default}.cbsvg.prog{cursor:crosshair;touch-action:pan-y}
.cbanalysis{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.cbanalysis[hidden]{display:none}.cbahead{display:flex;align-items:center;gap:2px;margin:0 0 6px}.cbahead.cbwin{margin:18px 0 8px}
.cbanalysis th{position:static;cursor:default;background:none;user-select:auto}.cbanalysis td{white-space:normal;text-align:left}.cbanalysis tbody tr{cursor:default}.cbanalysis tbody tr:hover{background:none}
.cbtrend{font-size:14px;line-height:1.45}.cbtrend th{width:1%;white-space:nowrap;text-align:left;vertical-align:top;padding:8px 14px 8px 0;border:0;font:600 12px/1.7 var(--font-label);text-transform:none;color:var(--muted)}.cbtrend td{padding:8px 0;border:0;color:var(--ink)}.cbtrend tr+tr th,.cbtrend tr+tr td{border-top:1px solid var(--line)}.cbtrend .pos{display:inline-block;min-width:34px;padding:4px 6px}.cbtrend .sep{color:var(--faint)}
.cbanalysis a.pl{color:inherit;text-decoration:none;font-weight:600}.cbanalysis a.pl:hover{text-decoration:underline}.cbanalysis .up{color:var(--good)}.cbanalysis .down{color:var(--bad)}
.cbtrend th .ibtn{white-space:nowrap}.cbsig{display:inline;margin:0}.cbsig .ibtn{display:inline;white-space:normal;width:auto;height:auto;margin:0;padding:0;border:0;border-radius:0;background:none;font:inherit;color:inherit;text-align:left;text-decoration:underline dotted;text-decoration-color:var(--faint);text-underline-offset:3px}
#cbdial{grid-template-columns:repeat(4,1fr)}.cbmoves{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:4px 24px;margin-top:8px;align-items:start}
.cbt{font-size:13.5px}.cbt th{font:600 11px/1 var(--font-label);color:var(--muted);text-align:left;padding:10px 6px 8px;border-bottom:1px solid var(--line)}.cbt th:first-child{font-size:13px;color:var(--ink)}.cbt td{padding:8px 6px;border-bottom:1px solid var(--line);vertical-align:middle}.cbt th:first-child,.cbt td:first-child{padding-left:0}.cbt th:last-child,.cbt td:last-child{padding-right:0}.cbt .n{text-align:right;white-space:nowrap;width:1%}.cbt td:nth-child(2){line-height:1.3;width:34%}
.cbt .who{display:flex;align-items:center;gap:8px}.cbt .who .pos{flex:none;min-width:30px;padding:4px 5px;font-size:11px}.cbt .who small{display:block;font-size:11.5px;color:var(--muted)}.cbt .who em{font-style:normal;font-weight:600;color:var(--accent-text)}.cbt .none{color:var(--muted);padding:12px 0}
.cbanalysis .ipb{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.cbmore{grid-column:1/-1;justify-self:start;border:0;background:none;padding:8px 0;font:600 13px/1 var(--font-body);color:var(--accent-text);cursor:pointer}
.chartbuilder{display:grid;grid-template-columns:minmax(250px,320px) 1fr;gap:16px;align-items:start}.cbcontrols{display:grid;gap:12px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--raise)}.cbsection{display:grid;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--line)}.cbsectiontitle{font-family:var(--font-body);font-size:13px;color:var(--ink);letter-spacing:-.01em}.cbage{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cbdisplay{padding:0 0 12px}.cbdisplay summary{cursor:pointer;font-weight:700;color:var(--ink);padding:4px 0}.cbdisplay[open] summary{margin-bottom:8px}.cbcontrols [hidden]{display:none!important}.cbcontrols label{display:grid;gap:5px;font-size:12px;color:var(--muted)}.cbcontrols select,.cbcontrols input{width:100%;padding:10px 11px;border:1px solid var(--ctl);border-radius:8px;background:var(--panel-solid);color:var(--ink)}.cbpos{display:flex;gap:5px;flex-wrap:wrap}.cbpos button{padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel-solid);color:var(--muted);cursor:pointer}.cbpos button[aria-pressed=true]{background:var(--ink);color:var(--bg)}#cbpos button[data-cbp="QB"][aria-pressed=true]{background:var(--qb);border-color:var(--qb);color:var(--pos-ink)}#cbpos button[data-cbp="RB"][aria-pressed=true]{background:var(--rb);border-color:var(--rb);color:var(--pos-ink)}#cbpos button[data-cbp="WR"][aria-pressed=true]{background:var(--wr);border-color:var(--wr);color:var(--pos-ink)}#cbpos button[data-cbp="TE"][aria-pressed=true]{background:var(--te);border-color:var(--te);color:var(--pos-ink)}.cbplot{min-width:0;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.cbhead{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:10px}.cbhead h3{font-size:24px}.cbmeta{font-size:12px;color:var(--muted)}.cblegend{display:inline-flex;align-items:center;gap:4px;margin-left:5px;font-weight:700}.cblegend i{display:inline-block;width:8px;height:8px;border-radius:50%}.cbsvg{width:100%;height:auto;display:block;overflow:visible}.cbsvg text{font-family:var(--font-body);fill:var(--muted);font-size:11px}.cbsvg .ttl{font-size:11.5px;font-weight:600}.cbsvg .trend{fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;opacity:.5}.cbsvg .ring{fill:none;stroke-width:1.8;stroke:var(--muted)}.cbsvg .ring.buy{stroke:var(--good)}.cbsvg .ring.sell{stroke:var(--bad)}.cbsvg .grid{stroke:var(--line);stroke-width:1}.cbsvg .axis{stroke:var(--ctl);stroke-width:1.2}.cbsvg .pt{fill:var(--accent);stroke:var(--panel-solid);stroke-width:2;cursor:pointer;transition:r .12s,opacity .12s}.cbsvg .pt:hover,.cbsvg .pt.on{r:7}.cbsvg .lab{fill:var(--ink);font-weight:600;font-size:11px;paint-order:stroke;stroke:var(--panel-solid);stroke-width:3px;stroke-linejoin:round;cursor:pointer}.cbtip{position:fixed;z-index:100;padding:9px 11px;border-radius:12px;background:var(--panel-solid);border:1px solid var(--accent-border);box-shadow:0 12px 28px rgba(0,0,0,.2);font-size:12px;pointer-events:none;max-width:220px}.cbtip b{display:block;font-size:14px;color:var(--ink)}.cbtip span{display:block;color:var(--muted);margin-bottom:4px}.cbtip i{display:block;font-style:normal;font-weight:600;color:var(--ink);margin-top:6px;padding-top:6px;border-top:1px solid var(--line)}.cbtip[hidden]{display:none}.cbsearchresults{display:grid;gap:4px}.cbsearchresults button{width:100%;text-align:left;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel-solid);color:var(--ink);cursor:pointer}.cbsearchresults .small{padding:7px 2px}.cbempty{min-height:320px;display:grid;place-items:center;text-align:center;color:var(--muted);padding:30px}.cbactions{display:flex;gap:8px;flex-wrap:wrap}.cbcheck{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px!important}.cbcheck input{width:auto!important}@media(max-width:760px){.chartbuilder{grid-template-columns:1fr}.cbplot{padding:12px 10px}.cbcontrols{padding:12px}.cbhead h3{font-size:20px}.cbt{font-size:13px}.cbt th,.cbt td{padding-left:4px;padding-right:4px}.cbtrend{font-size:13.5px}.cbtrend th{padding-right:10px}
.cbown>summary{display:flex;align-items:center;justify-content:space-between;list-style:none;cursor:pointer;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--raise);font:600 14px/1 var(--font-body);color:var(--ink)}.cbown>summary::-webkit-details-marker{display:none}.cbown>summary::after{content:"+";font-size:18px;line-height:14px;color:var(--muted)}.cbown[open]>summary::after{content:"\2212"}.cbown[open]>summary{margin-bottom:8px}}


.ownership-dialog{width:min(620px,calc(100% - 32px));box-sizing:border-box;border:var(--panel-border);border-radius:var(--radius);padding:28px;background:var(--panel-solid);color:var(--ink);max-height:90dvh;overflow:auto}
.ownership-dialog::backdrop{background:rgba(0,0,0,.55)}
.ownership-close{position:absolute;right:12px;top:8px;border:0;background:transparent;color:var(--ink);font-size:28px;width:44px;height:44px;cursor:pointer}
.ownership-window{font-size:14px;color:var(--faint);margin:12px 25px 10px 0}
.ownership-dialog h2{font:700 24px/1.15 var(--font-body);margin:0 0 20px;letter-spacing:-.01em}
.ownership-players{display:grid;gap:10px}.startsit-players{grid-template-columns:repeat(2,minmax(0,1fr))}.ownership-player{display:grid;gap:6px;text-align:left;border:1px solid var(--line);border-radius:12px;background:var(--raise);color:var(--ink);padding:16px;cursor:pointer;min-height:76px}
.ownership-player:hover,.ownership-player:focus-visible{border-color:var(--ink);outline:2px solid var(--ink);outline-offset:2px}
.ownership-player span{font-size:14px;color:var(--faint)}.ownership-player b{font-size:20px}.ownership-error{font-size:14px}.ownership-skip{width:100%;min-height:44px}
@media(max-width:480px){.ownership-dialog{padding:24px 18px}.ownership-dialog h2{font-size:25px}}
/* ===== site search (site/search.css, put here by build.py) ===== */
.fhs{display:flex;flex:none;font-family:var(--font-body,Outfit,system-ui,sans-serif)}
.fhs-open,.fhs-x{display:inline-flex;align-items:center;justify-content:center;flex:none;width:40px;height:40px;padding:0;border-radius:12px;color:var(--muted);cursor:pointer}
.fhs-open{border:1px solid var(--line);background:var(--panel,var(--raise));box-shadow:var(--panel-shadow,none);transition:border-color 160ms ease,color 160ms ease}
.fhs-open:hover,.fhs-x:hover{color:var(--ink)}.fhs-open:hover{border-color:var(--accent-border,var(--accent))}
.fhs-x{border:0;background:transparent}
.fhs-mag{flex:none;color:var(--faint)}
.fhs .fhs-box input{flex:1;min-width:0;width:100%;min-height:0;height:38px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;outline:0;color:var(--ink);font:400 16px/1 var(--font-body,Outfit,system-ui,sans-serif);-webkit-appearance:none;appearance:none}
.fhs .fhs-box input::placeholder{color:var(--faint);opacity:1;text-overflow:ellipsis}
.fhs .fhs-box input::-webkit-search-cancel-button,.fhs .fhs-box input::-webkit-search-decoration{-webkit-appearance:none;display:none}
.fhs-key{flex:none;min-width:20px;padding:3px 0;border:1px solid var(--line);border-radius:6px;color:var(--faint);font:500 12px/1 var(--font-body,Outfit,system-ui,sans-serif);text-align:center}
.fhs-list{margin:0;padding:6px;list-style:none;overflow-y:auto;overscroll-behavior:contain}
.fhs-list[hidden]{display:none}
.fhs-list a{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:46px;padding:0 10px;border-radius:8px;color:var(--ink);text-decoration:none}
.fhs-list li[aria-selected=true] a,.fhs-list a:hover{background:var(--hover,var(--raise))}
.fhs-list b{font-weight:600;font-size:15px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fhs-list i{font:normal 500 12px/1 var(--font-body,Outfit,sans-serif);color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}
.fhs-tag{padding:5px 0;border-radius:8px;border:1px solid transparent;background:var(--c,var(--faint));color:var(--pos-ink,#fff);font:600 12px/1 var(--font-body,Outfit,sans-serif);text-align:center}
.fhs-tag[data-p=QB]{--c:var(--qb)}.fhs-tag[data-p=RB]{--c:var(--rb)}.fhs-tag[data-p=WR]{--c:var(--wr)}.fhs-tag[data-p=TE]{--c:var(--te)}
.fhs-tag[data-p=T]{background:transparent;border-color:var(--ctl,var(--faint));color:var(--ink)}
.fhs-none{padding:12px 10px;color:var(--muted);font-size:14px}
@media (min-width:1400px){
  .fhs-open,.fhs-x{display:none}
  .fhs-box{position:relative;display:flex;align-items:center;gap:8px;width:232px;height:40px;padding:0 9px 0 11px;border:1px solid var(--line);border-radius:12px;background:var(--field,var(--raise));transition:border-color 160ms ease,box-shadow 160ms ease}
  .fhs-box:hover{border-color:var(--accent-border,var(--accent))}
  .fhs-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft,transparent)}
  .fhs-box:focus-within .fhs-key{display:none}
  .fhs .fhs-box input{font-size:14.5px}
  .fhs-list{position:absolute;z-index:60;top:calc(100% + 8px);right:0;width:380px;max-height:min(440px,calc(100vh - 110px));border:var(--panel-border,1px solid var(--line));border-radius:12px;background:var(--panel-solid,var(--bg));box-shadow:0 18px 40px rgba(0,0,0,.18)}
}
@media (max-width:1399.98px){
  .fhs-box,.fhs-key{display:none}
  .fhs.on .fhs-box{position:absolute;z-index:60;left:-1px;right:-1px;top:-1px;display:flex;flex-wrap:wrap;align-items:center;gap:0 10px;padding:10px 8px 10px 16px;border:1px solid transparent;border-radius:var(--fhs-r,16px);background:var(--chrome,var(--bg))}
  .fhs.on.res .fhs-box{border:var(--panel-border,1px solid var(--line));box-shadow:0 18px 40px rgba(0,0,0,.18)}
  .fhs.on .fhs-box input{flex:1 1 0;height:40px}
  .fhs-list{flex:0 0 100%;max-height:min(420px,46vh);margin:8px -4px 0 -12px;padding:6px 0 0;border-top:1px solid var(--line)}
  .fhs-list li{max-width:560px}
}
/* in this header the search sits between the tabs and the account buttons, as close to them as they are to each other.
   Where it is a field (1400px up) it gives way before the tabs do when a long signed-in handle needs the room. */
header.site{--fhs-r:var(--radius)}.hact{flex:none}.topsign{white-space:nowrap}
header.site .fhs{margin-right:-8px}
@media (min-width:1400px){header.site .fhs{flex:0 1000 232px;min-width:150px}header.site .fhs-box{flex:1;width:auto;min-width:0}}
@media (max-width:860px){header.site .fhs{margin-left:auto}.hact{margin-left:0}}
@media (max-width:1100px){nav.tabs button:not(.cta-tab) .ic{display:none}}
@media (max-width:385px){.wordmark img{height:38px}.hact{gap:6px}.topsign{padding:0 10px}}
@media (max-width:340px){.wordmark img{height:32px}.hact{gap:4px}.topsign{padding:0 8px}header.site{padding:10px 8px}}
.rview[hidden],.tw[hidden],.dial[hidden]{display:none}
.rkswitch{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
#rkv.format-switch.seg{grid-template-columns:repeat(3,minmax(0,1fr))}
#rkv.format-switch.seg.redraft{grid-template-columns:repeat(2,minmax(0,1fr))}
#rkv button[hidden]{display:none}
@media(max-width:560px){.rkswitch{grid-template-columns:2fr 3fr!important}#rkv.format-switch.seg button{padding:8px 2px}}
.format-switch.seg.quiet button[aria-pressed="true"],.format-switch.seg.quiet button[aria-pressed="true"]:hover{background:var(--accent-soft);border-color:var(--accent-border);color:var(--ink)}
.lgdrawer{margin:0 0 4px}.lgdrawer[hidden]{display:none}
.fmtbtn{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin:0;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer;text-align:right}
.fmted{display:inline-flex;align-items:center;gap:4px;padding:7px 4px;font:600 12px/1 var(--font-body);color:var(--accent-text)}.fmted svg{transition:transform .16s}.fmtbtn[aria-expanded="true"] svg{transform:rotate(180deg)}.fmtbtn:hover .chip{border-color:var(--accent-border)}.fmtbtn:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:12px}
.lgbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 4px}
.lgbar select{min-height:40px;padding:8px 10px;font-size:14px}
.lgtep{display:flex;align-items:center;gap:8px}.lgtep>span{cursor:help}.lgtep .seg button{min-height:36px;padding:0 12px;font-size:13px}
.lgall{margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid var(--line)}.lgall>summary{cursor:pointer;font-size:13px;color:var(--muted);padding:6px 0}.lgall>summary:hover{color:var(--ink)}.lgall[open]>summary{margin-bottom:12px}.lgall .presets{flex-wrap:wrap}
.rfind{display:flex;gap:10px;align-items:center;flex:1 1 300px;min-width:0}.rfind input{flex:1;min-width:0}.rfind .count{margin-left:0;white-space:nowrap}
.profile-settings{margin-top:16px}
@media(max-width:560px){.rkswitch{display:grid;grid-template-columns:1fr 1fr;width:100%;margin-top:8px}.stagehead .rkswitch .format-switch.seg{margin-top:0;width:auto}.rkswitch .format-switch.seg button{padding:8px 4px;font-size:13px;min-height:38px}
  .fmtbtn{flex-wrap:nowrap;gap:5px;max-width:100%}.fmtbtn .chip{padding:6px 7px;white-space:nowrap}.fmted{font-size:0;padding:6px 2px}.fmted svg{width:16px;height:16px}
  #rtog{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -12px;padding:2px 12px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12px,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(90deg,transparent,#000 12px,#000 calc(100% - 24px),transparent)}#rtog::-webkit-scrollbar{display:none}#rtog .tg{flex:none}
  .lgbar{display:grid;grid-template-columns:1fr 1fr}.lgbar select{width:100%}.lgtep{grid-column:1/-1;justify-content:space-between}.lgall .sgrid{grid-template-columns:1fr}.rfind{flex-basis:100%}.rfind input{padding:9px 10px}}
.format-switch.seg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.format-switch.seg button{appearance:none;-webkit-appearance:none;position:relative;min-height:40px;padding:10px 18px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font:600 14px/1.2 var(--font-body);box-shadow:none}
.format-switch.seg button::before,.format-switch.seg button::after{content:none}
.format-switch.seg button[aria-pressed="true"]{background:var(--btn-primary);border-color:var(--btn-primary);color:#fff;box-shadow:none}
.format-switch.seg button:hover{background:var(--raise);color:var(--ink)}
.format-switch.seg button[aria-pressed="true"]:hover{background:var(--btn-primary-hover);border-color:var(--btn-primary-hover);color:#fff}
.format-switch.seg button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
@media(max-width:560px){.stagehead .format-switch.seg{width:100%;margin-top:8px}.format-switch.seg button{min-height:42px}}



/* ===== One site header and one control language (Adam, 26 October 2026: no glow, even corners, menu on the centre line) =====
   Plain full-width bar; its edges sit on the page column (1180px); the tabs sit on the page's centre line from 1180px up;
   tabs are text, the current one on a grey tray. Corner scale: panels var(--radius) 12px, controls var(--r-ctl) 8px, pills round. */
.pcard{--font-label:var(--font-card-label)}
header.site{position:sticky;top:0;margin:0;border-radius:0;box-shadow:none;border:0;border-bottom:1px solid var(--line);background:var(--chrome);
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:10px var(--hdr-x)}
header.site .wordmark{margin:0}
header.site .wordmark img{height:44px}
header.site .stage{display:none}
/* the tabs centre in the room between the wordmark and the search, so they can never run under it */
header.site nav.tabs{margin:0;gap:2px;justify-self:center;max-width:100%}
header.site .hright{display:flex;align-items:center;gap:8px}
header.site nav.tabs button,header.site nav.tabs .news-nav{height:36px;min-width:0;padding:0 12px;border-radius:var(--r-ctl);border:0;box-shadow:none;background:transparent;
  color:var(--muted);font:500 14.5px/1 var(--font-body);gap:0}
header.site nav.tabs button .ic,header.site nav.tabs .news-nav .ic{display:none}
header.site nav.tabs button:hover,header.site nav.tabs .news-nav:hover{color:var(--ink);background:var(--hover)}
header.site nav.tabs button[aria-selected="true"]{background:var(--raise);color:var(--ink);font-weight:600;padding:0 12px}
header.site .ctl-ico{width:36px;height:36px;min-width:36px;border-radius:var(--r-ctl);box-shadow:none;background:transparent;border:1px solid var(--line)}
header.site .topsign,header.site .topme{height:36px;min-height:36px;border-radius:var(--r-ctl);box-shadow:none}
header.site .fhs{margin:0}
header.site .fhs:not(.on) .fhs-box{width:232px;height:36px;border-radius:var(--r-ctl)}
header.site .fhs-open{width:36px;height:36px;border-radius:var(--r-ctl);box-shadow:none;background:transparent}
@media (max-width:860px){
  header.site{display:flex;flex-wrap:wrap;padding:8px 16px 0;gap:8px}
  header.site .wordmark{margin-right:auto}
  header.site nav.tabs{order:3;flex-basis:100%;margin:0 -16px;padding:0 16px 8px;justify-content:flex-start;max-width:none}
  header.site nav.tabs button{padding:0 10px}
}

/* Header edges (Adam, 2 Nov 2026): the wordmark and the controls sit on the wide page edges the league pages use (1680px),
   not the 1180px reading column, so the logo is out to the left on every page; the site tabs stay on the page's centre line
   (equal side columns) wherever both sides fit. The news ticker shares the edges. */
/* Full width (Adam, 8 Nov 2026: "all pages and tabs to utilise the full width of a desktop's screen ... now we have pulled off the
   banners"). While the Fantasy Jerseys banners are off (data-fj="off"), the page column, the header edges and the league layer share
   one width: the screen less a gutter, up to 2400px. With the banners on, the old 1180px column and 1680px edges come back by themselves
   (revisit when the banners return). Wide boards hand the extra room to every column rather than one range bar. */
:root{--page-max:1680px;--gut:20px}
:root[data-fj="off"]{--page-max:2400px;--gut:clamp(20px,2.2vw,40px)}
:root[data-fj="off"] .wrap{max-width:calc(var(--page-max) + 2*var(--gut));padding-inline:var(--gut)}
:root{--hdr-x:max(var(--gut),calc((100vw - var(--page-max))/2))}
@media (min-width:1500px){:root[data-fj="off"] #btable:not(.rdb) th.rg,:root[data-fj="off"] #btable.rdb th.ngh{width:6%}}
:root[data-fj="off"] .fl-form[data-form="find"]{max-width:880px}
@media (min-width:1360px){html:not(.fhl-nav) header.site{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}html:not(.fhl-nav) header.site .wordmark{justify-self:start}html:not(.fhl-nav) header.site .hright{justify-self:end}}
/* ===== Trade calculators on one screen (Adam, 26 October 2026: "fit all items in one screen so all trade related data is visible
   without scrolling"). Title, calculator switch and deal buttons share one row; windows, search, totals and verdict are set tighter. */
#calc .focus{padding:16px 20px 18px;gap:12px;margin-top:0}
#calc .stagehead{display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px;margin:0}
#calc .stagehead h2{font-size:24px}
#calc .calcmode{margin:0}
#calc .calcmode button{min-height:32px;padding:6px 12px}
#calc .cgrid{gap:12px}
#calc .side{padding:14px 16px;gap:8px}
#calc .dial button{min-height:34px;padding-block:4px}
#calc .search input{height:40px;min-height:40px}
#calc .tot{margin-top:8px;padding-top:8px;gap:2px}
#calc .trow{line-height:1.3}
#mode-dyn .tot>.small{display:none}
#calc .actions{margin:0;gap:8px}
#calc .actions .btn{min-height:36px;height:36px;padding:0 14px}
#calc .verdict{padding:14px 18px;margin:0;gap:10px}
#calc .verdict .head{margin-bottom:8px}
#calc .verdict .head h2{font-size:24px}
#calc .verdict .pov{padding:10px 14px;gap:4px}
#calc .verdict .povhead{min-height:0}
#calc .verdict .grade{width:32px;height:32px;font-size:16px}
@media (min-width:861px){
#calc .scbar{padding:8px 14px;gap:8px 18px;align-items:center}
#calc .scbar .ssg{display:flex;flex-direction:row;align-items:center;gap:8px}
#calc .scbar .seg button{min-height:30px;padding:4px 10px}
#calc .scbar .ssreset{min-height:32px;height:32px;padding:0 12px}
}
@media (max-width:560px){#calc .focus{padding:14px 12px 16px}#calc .side{padding:12px}}
#calc .rdnote{margin:-4px 0 0}
@media (min-width:1300px){
  #calc .focus{position:relative}
  #calc .actions{position:absolute;top:calc(16px + var(--rhh,0px));right:20px}   /* --rhh: the H1 line above the tool, when it shows */
}

/* league settings: a dropdown that floats over the page under the format chips */
.fmtwrap{position:relative;z-index:25}
#fmtchips{min-height:28px}   /* the chip row is drawn by script: hold its line so the page doesn't drop 28px when it appears (CLS 0.77 on rankings) */
.lgdrawer{position:absolute;right:0;top:calc(100% + 6px);width:min(640px,100%);max-height:min(70vh,640px);overflow:auto;margin:0;padding:14px 16px;
  background:var(--panel-solid);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 18px 40px rgba(0,0,0,.18);display:grid;gap:10px}
.lgdrawer .lgall{margin:0;padding-bottom:0;border-bottom:0}
.lgfoot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid var(--line)}
.lgfoot .btn{min-height:36px;height:36px;padding:0 18px}
@media (max-width:560px){header.site nav.tabs button{padding:0 9px}}
.news-ticker{padding-inline:var(--hdr-x);background:transparent}
.ticker-label{color:var(--muted);font-weight:600}
/* switches: one grey tray, the choice in white */
.seg{background:var(--raise);border:0}
.seg button{box-shadow:none}
.seg button[aria-pressed="true"],.seg button[aria-pressed="true"]:hover{background:var(--panel-solid)!important;color:var(--ink)!important;border-color:transparent!important;box-shadow:0 0 0 1px var(--line)!important}
/* small labels: one readable size now that they are sentence case */
.gsh,.rp-bl,.rp-sdsc small,.news-label,.mlab .sc,.mlab small,.gsc i,.mcard .fin,.tierh b,.rch-th b,.awt,.hst-d th,.hst-as,.og-l4x,.ogc-lv span,.ogc-rng>span,.ogc-h>span,
.og-t>span,.crowd2 h4,.og-wkh h4,.gh-t em,.st1,.td-side>small,.wmeter span,.sitelinks h2,.hnews-label,.ticker-alert,.ticker-pause,.oures,.ogc-st,.finl,.st{font-size:12.5px;font-weight:500}
@media (max-width:560px){th{font-size:11.5px}}
/* Generic helmets occupy the old badge slots, including the facemask. */
.pc-plate i,.pc-plate-c i{display:block;width:8.8cqw;min-width:0;height:7.6cqw;padding:0;border-radius:0;background:none;box-shadow:none}
.rp-pl i{display:block;width:2.2em;min-width:0;height:1.85em;padding:0;border-radius:0;background:none;box-shadow:none;font-size:inherit}
.rp-sd[aria-pressed="true"] .rp-pl i{background:none;color:inherit}

/* Permanent ranking contributions: green higher, coral lower; points/game calls are separate. */
.asset:has(.rank-votes){grid-template-columns:44px minmax(0,1fr) auto auto 28px}.rank-votes.none{width:66px;height:32px}.rank-profile-context{overflow-x:auto}.rank-profile-context table{min-width:360px}.rank-notice a:focus-visible{outline:2px solid var(--accent)}
@media(max-width:650px){.asset:has(.rank-votes){grid-template-columns:34px minmax(0,1fr) auto 28px}.asset>.rank-votes{grid-column:2/4;grid-row:2}.asset>.rank-votes.none{display:none}.asset>.rm{grid-column:4;grid-row:1}.asset .nm b{white-space:normal}}
.rank-votes{display:inline-flex;gap:6px;align-items:center;vertical-align:middle;white-space:nowrap}
.rank-arrow{display:inline-grid;place-items:center;width:30px;min-width:30px;height:32px;padding:0;border:1px solid transparent;border-radius:6px;font:700 14px/1 var(--font-body,Outfit,sans-serif);cursor:pointer;box-shadow:none}
.rank-arrow.higher{background:#1F8F62;color:#fff}.rank-arrow.lower{background:#C2352B;color:#fff}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .rank-arrow.higher{background:#4ED199;color:#05201A}:root:not([data-theme=light]) .rank-arrow.lower{background:#FF7B72;color:#05201A}}
:root[data-theme=dark] .rank-arrow.higher{background:#4ED199;color:#05201A}:root[data-theme=dark] .rank-arrow.lower{background:#FF7B72;color:#05201A}
.rank-arrow:hover{filter:brightness(1.12)}.rank-arrow:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.rank-arrow[aria-pressed=true]{outline:3px solid var(--ink);outline-offset:2px;box-shadow:0 0 0 5px var(--panel-solid,var(--bg))}.rank-arrow:disabled{opacity:.35;cursor:default;box-shadow:none}
.rank-contribution{text-align:center!important;width:72px;min-width:72px}.rank-contribution-head{color:var(--accent-text,var(--accent))!important}.rank-notice{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid var(--line);border-radius:12px;background:var(--raise);padding:9px 14px;max-width:1140px;margin:12px auto;font:500 13px/1.4 var(--font-body,Outfit,sans-serif);color:var(--ink)}
.rank-notice a{font-weight:700;color:var(--accent-text,var(--accent));text-decoration:none}.rank-notice button{margin-left:auto;border:0;background:transparent;color:var(--muted);width:36px;height:36px;font-size:22px;cursor:pointer}.rank-card-feedback{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:10px 0;font:500 13px var(--font-body,Outfit,sans-serif)}.rank-card-feedback select{font:inherit;border:1px solid var(--line);border-radius:8px;background:var(--raise);color:var(--ink);padding:7px}
.rank-toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:9999;max-width:calc(100% - 32px);padding:14px 18px;border:1px solid var(--line);border-radius:12px;background:var(--panel-solid,var(--bg));color:var(--ink);box-shadow:0 10px 30px rgba(0,0,0,.18);font:500 14px/1.4 var(--font-body,Outfit,sans-serif)}.rank-toast a{color:var(--accent-text,var(--accent));font-weight:700}
.ranking-question table{width:100%;border-collapse:collapse;font-size:14px}.ranking-question td,.ranking-question th{padding:13px 9px;border-bottom:1px solid var(--line);text-align:left}.ranking-question td:last-child{width:110px;text-align:center}.ranking-question th{font:500 12px var(--font-body,Outfit,sans-serif);color:var(--faint)}.ranking-question td small{display:block;color:var(--faint);font-size:12px}.ranking-question tr.featured{background:var(--raise)}.ranking-question .rank-arrow{width:44px;height:44px;min-width:44px}.ranking-question .rank-number{font-weight:700;font-variant-numeric:tabular-nums}.rank-profile-context{margin:12px 0}.rank-chart-picked{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:var(--raise);padding:12px;border-radius:12px;margin:8px 0}.rank-chart-picked[hidden]{display:none}

@media(max-width:480px){.rank-notice{margin:8px 0;padding:8px 10px;gap:6px}.rank-notice span{flex:1;min-width:160px}.rank-notice button{order:2}.rank-notice a{order:3}.ranking-question td,.ranking-question th{padding:12px 4px}.ranking-question td:first-child{max-width:130px;overflow-wrap:anywhere}.rank-card-feedback{flex-wrap:wrap}}

/* Data columns scroll together; contributions never cover the numbers. */
#btable .rank-contribution{position:static;background:transparent;box-shadow:none}
#btable .rank-contribution-head{position:static;width:72px;max-width:72px;white-space:normal;text-align:center;line-height:1.3;box-shadow:none;color:var(--faint)!important}
@media(max-width:560px){#btable .who b{font-size:13px;line-height:1.25}#btable .rank-contribution{min-width:68px;width:68px}.rank-votes{gap:4px}}

/* The compact range chart keeps names, bars and contributions on one aligned row. */
.rch-ax,.rch-r{grid-template-columns:34px minmax(150px,230px) minmax(80px,1fr) 70px}
.rch-r{height:40px}.rch-contrib{display:flex;justify-content:center;align-items:center}
.rch-contrib-head{text-align:center;font:600 11px/1 var(--font-body,Outfit,sans-serif);color:var(--accent-text,var(--accent))}
.rch-contrib .rank-votes{gap:6px}.rch-contrib .rank-arrow{width:30px;min-width:30px;height:30px;border-radius:8px;font-size:16px;box-shadow:none}
.rch .rcm .rr{top:calc(50% - 4px)}.rch .rcm .rd,.rch .rcm .ro,.rch .rcm .rb{top:calc(50% - 6px)}.rch .rcm .rl{top:calc(50% - 1px)}.rch .rcm em{top:calc(50% - 7px)}
@media(max-width:560px){.rch-ax,.rch-r{grid-template-columns:20px minmax(100px,1fr) minmax(65px,1fr) 70px;gap:6px}.rch-contrib-head{font-size:10px}.rch-p,.rch-tk{margin-right:12px}.rch{overflow-x:auto}.rch-ax,.rch-r{min-width:307px}}
@media(pointer:coarse){.rch-r{height:44px}}

