
:root{
  --page:#f2f3f5; --surface:#ffffff; --surface-2:#e8eaee; --raise:#ffffff;
  --ink:#0f1218; --ink-2:#3f4553; --muted:#6b7280;
  --line:rgba(15,18,24,.09); --border:rgba(15,18,24,.16);
  --accent:#ffb61e;
  --accent-ink:color-mix(in srgb,var(--accent) 58%,#000);
  --accent-soft:color-mix(in srgb,var(--accent) 16%,transparent);
  --up:#15803d; --down:#c62828; --new:#0369a1;
  --fbig:"Big Shoulders Display","Barlow Condensed",Impact,"Arial Narrow",sans-serif;
  --fcond:"Barlow Condensed","Arial Narrow",sans-serif;
  --fui:"Barlow",system-ui,-apple-system,"Segoe UI",sans-serif;
  --r:12px;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --page:#0d0f13; --surface:#151820; --surface-2:#1d2129; --raise:#242a35;
    --ink:#f4f5f7; --ink-2:#b9bec8; --muted:#7d8494;
    --line:rgba(255,255,255,.08); --border:rgba(255,255,255,.15);
    --accent-ink:color-mix(in srgb,var(--accent) 86%,#fff);
    --up:#3ddc84; --down:#ff6b6b; --new:#5ac8fa;
  }
}
:root[data-theme="dark"]{
  --page:#0d0f13; --surface:#151820; --surface-2:#1d2129; --raise:#242a35;
  --ink:#f4f5f7; --ink-2:#b9bec8; --muted:#7d8494;
  --line:rgba(255,255,255,.08); --border:rgba(255,255,255,.15);
  --accent-ink:color-mix(in srgb,var(--accent) 86%,#fff);
  --up:#3ddc84; --down:#ff6b6b; --new:#5ac8fa;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;background:var(--page);color:var(--ink);font-family:var(--fui);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
a{color:var(--accent-ink)}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
h1,h2,h3{margin:0;font-weight:700;text-wrap:balance}
img{max-width:100%}
.spacer{flex:1 1 auto}
.kick{font-family:var(--fcond);font-weight:600;font-size:12.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.sd{width:8px;height:8px;border-radius:50%;display:inline-block;flex:none;background:var(--muted)}

/* ---------- buttons ---------- */
.btn{background:var(--surface);border:1px solid var(--border);color:var(--ink-2);padding:7px 14px;border-radius:99px;font-family:var(--fcond);font-weight:600;font-size:14px;letter-spacing:.06em;text-transform:uppercase;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;text-decoration:none;line-height:1.2}
.btn:hover{color:var(--ink);border-color:var(--ink)}
.btn.primary{background:var(--accent);border-color:var(--accent);color:#111}
.btn.primary:hover{filter:brightness(1.06)}
.btn.sm{padding:5px 10px;font-size:12.5px}
.btn.danger:hover{color:var(--down);border-color:var(--down)}
.btn.ghost{background:transparent}
.btn:disabled{opacity:.55;cursor:default}

/* ---------- site top ---------- */
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;background:color-mix(in srgb,var(--page) 92%,transparent);backdrop-filter:blur(10px) saturate(1.3);border-bottom:1px solid var(--line)}
.top .in{max-width:1280px;margin:0 auto;padding:10px 20px 0;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.wordmark{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);min-width:0}
.wordmark svg{width:32px;height:32px;flex:none}
.wordmark svg.bpo{width:.58em;height:.58em;flex:none}
.wordmark b{font-family:var(--fbig);font-weight:800;font-size:30px;letter-spacing:.01em;line-height:1;white-space:nowrap}.bpo{width:.58em;height:.58em;display:inline-block;vertical-align:-.022em;margin:0 .012em}
.wordmark i{font-family:var(--fcond);font-style:normal;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-left:4px}
@media (max-width:720px){.wordmark i{display:none}}
.gsearch{position:relative;flex:0 1 240px;min-width:140px}
.gsearch input{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:99px;padding:7px 12px 7px 32px;font-size:14px;outline:none}
.gsearch input:focus{border-color:var(--accent)}
.gsearch svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);opacity:.55}
.navrow{max-width:1280px;margin:0 auto;padding:4px 20px 0;display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap}
.tabs{display:flex;gap:4px}
.tab{font-family:var(--fcond);font-weight:600;font-size:16px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-decoration:none;padding:8px 10px 9px;border-bottom:3px solid transparent;margin-bottom:-1px;display:inline-block}
.tab:hover{color:var(--ink)}
.tab.active{color:var(--ink);border-bottom-color:var(--accent)}
.chips{display:flex;gap:6px;flex-wrap:wrap;padding-bottom:9px;margin-left:auto}
@media (max-width:640px){.chips{margin-left:0}}
.chip{background:var(--surface);border:1px solid var(--border);color:var(--ink-2);padding:4px 11px;border-radius:99px;font-family:var(--fcond);font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;display:inline-flex;align-items:center;gap:7px}
.chip:hover{color:var(--ink)}
.chip.active{background:var(--ink);border-color:var(--ink);color:var(--page)}

/* ---------- frames ---------- */
.wrap{max-width:1280px;margin:0 auto;padding:0 20px 80px}
.read{max-width:840px;margin:0 auto;padding:0 20px 80px}
@media (max-width:900px){.wrap,.read{padding-inline:16px}}
.sh{display:flex;align-items:baseline;gap:12px;margin-top:36px}
.sh h2{font-family:var(--fbig);font-weight:800;font-size:30px;text-transform:uppercase;letter-spacing:.03em;line-height:1}
.sh .cnt{font-family:var(--fcond);color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:12px}
.sh::after{content:"";flex:1;height:2px;background:var(--line)}
.empty{border:1px dashed var(--border);border-radius:var(--r);padding:30px;text-align:center;color:var(--muted);font-size:14px;margin-top:18px}
.notice{background:var(--surface-2);border-bottom:1px solid var(--line)}
.notice .in{max-width:1280px;margin:0 auto;padding:8px 20px;font-size:13px;color:var(--ink-2);display:flex;gap:10px;align-items:center;flex-wrap:wrap}

/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;border-radius:16px;margin-top:22px;background:var(--surface);border:1px solid var(--line);text-decoration:none;color:inherit;display:block}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(112deg,transparent 0 56%,color-mix(in srgb,var(--sc) 30%,transparent) 56% 100%)}
.hero::after{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--sc)}
.hero .in{position:relative;padding:32px 34px 30px;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:26px;align-items:end}
@media (max-width:820px){.hero .in{grid-template-columns:minmax(0,1fr);padding:22px 20px}}
.hero .kick{color:var(--accent-ink)}
.hero .kick .sp{color:var(--sc)}
.hero h1{font-family:var(--fbig);font-weight:800;font-size:clamp(40px,6.2vw,78px);line-height:.94;text-transform:uppercase;margin-top:10px;letter-spacing:.005em}
.hero .dek{font-size:17px;color:var(--ink-2);max-width:56ch;margin-top:14px;line-height:1.5}
.hero .cta{margin-top:18px}
.hero .strip{display:flex;gap:14px;justify-content:flex-end;flex-wrap:wrap;align-items:flex-end}
@media (max-width:820px){.hero .strip{justify-content:flex-start}}
.hero .strip .p{position:relative;text-align:center}
.hero .strip .ava{width:74px;height:74px}
.hero .strip .n{position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);font-family:var(--fbig);font-weight:800;font-size:18px;background:var(--page);padding:0 7px;border-radius:99px;color:var(--accent-ink);line-height:1.3}
.hero:hover h1{color:var(--accent-ink)}

/* ---------- avatars ---------- */
.ava{border-radius:50%;object-fit:cover;background:var(--surface-2);box-shadow:0 0 0 2.5px var(--tc,var(--border));display:inline-grid;place-items:center;font-family:var(--fcond);font-weight:700;color:var(--ink-2);flex:none;overflow:hidden}
.ava.txt{font-size:11px}
.stat.extra b{max-width:22ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.stat.extra{margin-right:6px}

/* ---------- cards / feed ---------- */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;margin-top:16px}
.card{display:flex;flex-direction:column;text-decoration:none;color:inherit;background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--sc);border-radius:var(--r);padding:14px 16px 12px;transition:transform .12s,border-color .12s;min-width:0;height:196px}
.card:hover{transform:translateY(-2px);border-color:var(--border)}
.card .kick{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.card .kick .k{color:var(--sc);font-weight:700}
.card h3{font-family:var(--fcond);font-weight:700;font-size:22px;line-height:1.08;margin-top:5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card h3 mark,.card .dek mark{background:transparent;color:var(--accent-ink)}
.card .dek{font-size:14px;color:var(--ink-2);margin-top:8px;line-height:1.45}
.card .foot{margin-top:auto;padding-top:8px;font-family:var(--fcond);font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);display:flex;gap:12px;flex-wrap:wrap}
.mini{margin-top:8px;display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-height:0;overflow:hidden;justify-content:center}
.mini .r{font-size:16.5px;line-height:1.28;gap:9px}
.mini .r .n{font-size:18px;width:20px;line-height:1.28}
.mini .wl{font-size:15.5px}
.mini.motif{display:block;color:var(--sc)}
.mini.motif.halftone{opacity:.62;
  background-image:radial-gradient(currentColor 1.75px,transparent 1.85px);
  background-size:12px 14px;background-position:2px 4px;
  -webkit-mask-image:linear-gradient(101deg,#000 0%,rgba(0,0,0,.42) 58%,transparent 93%);
          mask-image:linear-gradient(101deg,#000 0%,rgba(0,0,0,.42) 58%,transparent 93%)}
.mini.motif .mv{width:100%;height:100%;display:block}
.mini.motif.steps{display:flex;flex-direction:row;align-items:flex-end;justify-content:stretch;gap:6px;height:100%;width:100%}
.mini.motif.steps .st{flex:1;display:flex;justify-content:center;align-items:flex-start;padding-top:4px;color:var(--ink);font-family:"Oswald","Barlow Condensed","Arial Narrow",sans-serif;font-weight:700;font-size:21px;line-height:1}
.mini.motif.steps .st3{height:36%;background:color-mix(in srgb,var(--sc) 38%,#fff)}
.mini.motif.steps .st2{height:64%;background:color-mix(in srgb,var(--sc) 68%,#fff)}
.mini.motif.steps .st1{height:96%;background:var(--sc)}
.card h3{flex:0 0 auto}
.card .mini.blurb{min-height:0;flex:1 1 auto;margin-top:10px}
.mini.intro.art{-webkit-line-clamp:3;height:63px}
.mini.chartmini{display:flex;flex-direction:column;gap:4px;color:var(--sc);margin-top:8px;flex:0 1 auto;min-height:0}
.mini.chartmini .cap{font-family:var(--fcond);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mini.chartmini .mv{width:100%;height:46px;display:block}
.hero .prev .mini.chartmini{max-width:420px}
.hero .prev .mini.chartmini .mv{height:120px}
.hero .prev .mini.chartmini .cap{font-size:14px}
.mini.summary{margin-top:8px;gap:6px;display:flex;justify-content:center}
.mini.summary .srow{font-family:var(--fcond);font-size:14.5px;letter-spacing:.06em;text-transform:uppercase;line-height:1.2}
.mini.summary .scope{color:var(--ink);font-weight:700}
.mini.summary .sub{color:var(--muted);font-weight:600}
.mini.summary .move{display:flex;gap:12px;flex-wrap:wrap;font-weight:700}
.mini.summary .move .up{color:var(--up)}
.mini.summary .move .down{color:var(--down)}
.mini.summary .move .new{color:var(--new)}
.mini.intro{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;line-height:21px;color:var(--ink-2);margin-top:8px;flex:0 0 auto;height:84px}
.mini .r{display:flex;align-items:center;gap:9px;font-family:var(--fcond);font-size:15.5px;font-weight:500}
.mini .r .n{font-family:var(--fbig);font-weight:800;color:var(--accent-ink);width:20px;text-align:right;font-size:17px}
.mini .ava{width:26px;height:26px}
.mini .wl{margin-left:auto;color:var(--muted);font-variant-numeric:tabular-nums}
.tagpill{background:var(--surface-2);border-radius:99px;padding:1px 8px;font-family:var(--fcond);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}
.tagpill.sample{background:var(--accent-soft);color:var(--accent-ink);font-weight:700}
.boards{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.board{text-decoration:none;color:var(--ink-2);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:8px 12px;font-family:var(--fcond);font-weight:600;font-size:15px;display:inline-flex;align-items:center;gap:8px}
.board:hover{border-color:var(--border);color:var(--ink)}
.board small{color:var(--muted);font-weight:500;letter-spacing:.06em;text-transform:uppercase;font-size:11.5px}

/* ---------- article ---------- */
.article{padding-top:26px}
.crumb{font-family:var(--fcond);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.crumb a{color:var(--muted);text-decoration:none}
.crumb a:hover{color:var(--ink)}
.crumb .sp{display:inline-flex;align-items:center;gap:7px;color:var(--ink-2);font-weight:600}
.article .rule{height:4px;background:var(--sc);width:72px;margin-top:16px;border-radius:2px}
.article h1{font-family:var(--fbig);font-weight:800;font-size:clamp(38px,6vw,64px);line-height:.96;text-transform:uppercase;margin-top:14px}
.article .dek{font-size:19px;color:var(--ink-2);line-height:1.45;margin-top:14px;max-width:62ch}
.byline{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:18px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:var(--fcond);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.byline .sp{display:flex;gap:7px;align-items:center;color:var(--ink-2);font-weight:600}
.tagrow{display:flex;gap:6px;flex-wrap:wrap}
.prose{font-size:17.5px;line-height:1.65;margin-top:26px;max-width:68ch}
.prose p{margin:0 0 1.1em}
.prose h2{font-family:var(--fbig);font-weight:800;font-size:28px;text-transform:uppercase;letter-spacing:.03em;margin:1.8em 0 .5em;line-height:1}
.prose h3{font-family:var(--fcond);font-weight:700;font-size:22px;margin:1.5em 0 .4em}
.prose ul,.prose ol{margin:0 0 1.2em;padding-left:1.35em}
.prose li{margin:.25em 0}
.prose blockquote{margin:1.2em 0;padding:.2em 0 .2em 1em;border-left:3px solid var(--accent);color:var(--ink-2);font-style:italic}
.prose code{font-family:ui-monospace,Menlo,monospace;font-size:.85em;background:var(--surface-2);padding:1px 5px;border-radius:5px}
.prose strong{font-weight:600}
.listcard{display:block;text-decoration:none;color:inherit;margin:1.4em 0;border:1px solid var(--line);border-left:4px solid var(--sc,var(--accent));border-radius:var(--r);background:var(--surface);padding:14px 16px;font-size:14px}
.listcard:hover{border-color:var(--border);border-left-color:var(--sc,var(--accent))}
.listcard .t{font-family:var(--fcond);font-weight:700;font-size:22px;margin-top:3px}
.listcard .mini{margin-top:8px}
.listcard .more{color:var(--accent-ink);font-family:var(--fcond);font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-size:12.5px;margin-top:10px}
.artfoot{margin-top:34px;padding-top:16px;border-top:1px solid var(--line);display:flex;gap:10px;flex-wrap:wrap}

/* ---------- rankings ---------- */
@media (max-width:900px){}
@media (max-width:900px){}
main.ldetail{padding-block:26px 0;min-width:0}
.lhead{padding-bottom:0}
.lhead.editing{border-bottom:2px solid var(--line);padding-bottom:16px}
.eyebrow{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.eyebrow .src{font-family:ui-monospace,Menlo,monospace;text-transform:none;letter-spacing:0;font-size:11.5px;color:var(--muted)}
h1.ltitle{font-family:var(--fbig);font-weight:800;font-size:clamp(38px,6vw,64px);line-height:.96;text-transform:uppercase;margin:12px 0 0}
.lheadrow{display:flex;gap:26px;align-items:flex-start;justify-content:space-between}
.lheadmain{min-width:0;flex:1 1 auto}
.lheadrow .xlink{flex:0 0 auto;width:min(330px,38%);margin-top:16px;padding:11px 14px;gap:12px;align-self:center}
.lheadrow .xlink .xn{font-size:clamp(17px,1.7vw,21px)}
.lheadrow .xlink .xar{font-size:26px}
@media (max-width:900px){.lheadrow{flex-direction:column;gap:12px}.lheadrow .xlink{width:100%;margin-top:4px}}
.lhead .rule{height:4px;background:var(--sc);width:72px;margin-top:14px;border-radius:2px}
.lhead .byline{margin-top:18px}
.crumb .clbl{color:var(--ink-2);font-weight:600}
.crumb .clbl::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin:0 9px 0 1px;vertical-align:2px}
.lsub{font-size:15.5px;color:var(--ink-2);max-width:64ch;margin-top:8px;line-height:1.5}
.lnote{font-size:12.5px;color:var(--muted);margin-top:8px;max-width:80ch}
.editions{display:flex;gap:6px;flex-wrap:wrap;margin-top:16px;align-items:center}
.epill{background:var(--surface);border:1px solid var(--border);color:var(--ink-2);padding:5px 13px;border-radius:99px;font-family:var(--fcond);font-weight:600;font-size:14px;letter-spacing:.04em}
.epill:hover{color:var(--ink)}
.epill.active{background:var(--accent);border-color:var(--accent);color:#111}
.epill.add{border-style:dashed;color:var(--muted)}
.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:18px 0 6px}
.search{position:relative;flex:1 1 220px;max-width:340px}
.search input{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:8px 12px 8px 32px;font-size:14px;outline:none}
.search input:focus{border-color:var(--accent)}
.search svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);opacity:.5}
.meta{font-family:var(--fcond);font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.group{margin-top:26px}
.ghead{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-family:var(--fcond);font-size:14px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--ink-2)}
.ghead::after{content:"";flex:1;height:2px;background:var(--line)}
.ghead .gcount{color:var(--muted);letter-spacing:.04em;font-size:12px}
.rows{display:block}
.rows.split{column-count:2;column-gap:28px}
@media (max-width:1000px){.rows.split{column-count:1}}
.prow{display:grid;grid-template-columns:46px 46px minmax(0,1fr) auto;align-items:center;gap:12px;padding:7px 10px 7px 4px;border-bottom:1px solid var(--line);break-inside:avoid;text-align:left;background:none;border-top:0;border-left:0;border-right:0;width:100%;color:inherit;cursor:default}
.prow.click{cursor:pointer}
.prow.click:hover{background:var(--surface)}
.prow.hit{background:var(--accent-soft)}
.prow .num{font-family:var(--fbig);font-weight:800;font-size:28px;color:var(--muted);text-align:right;line-height:1;font-variant-numeric:tabular-nums}
.prow .ava{width:42px;height:42px}
.prow .who{min-width:0}
.prow .nm{font-family:var(--fcond);font-weight:600;font-size:19px;line-height:1.1;overflow-wrap:anywhere}
.prow .nm mark,td mark{background:transparent;color:var(--accent-ink)}
.prow .sub{font-family:var(--fcond);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:2px;display:flex;gap:8px;flex-wrap:wrap}
.prow .sub .tm{color:var(--tc,var(--ink-2));font-weight:700}
.prow .note{font-size:13.5px;color:var(--ink-2);margin-top:4px;line-height:1.4}
.prow .right{display:flex;align-items:center;gap:14px}
.stat{display:flex;gap:12px;font-family:var(--fcond);font-variant-numeric:tabular-nums}
.stat span{display:flex;flex-direction:column;align-items:center;line-height:1}
.stat b{font-weight:700;font-size:17px}
.stat small{font-size:10.5px;letter-spacing:.1em;color:var(--muted);margin-top:2px}
@media (max-width:560px){.stat{display:none}.prow{grid-template-columns:38px 40px minmax(0,1fr) auto}.prow .num{font-size:24px}}
.delta{font-family:var(--fcond);font-weight:700;font-size:17px;min-width:2.6em;text-align:right;letter-spacing:.02em;line-height:1}
.delta.up{color:var(--up)} .delta.down{color:var(--down)} .delta.flat{color:var(--muted)} .delta.new{color:var(--new)}
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
table{border-collapse:collapse;width:100%}
th,td{padding:8px 13px;text-align:left;white-space:nowrap;border-bottom:1px solid var(--line)}
th{font-family:var(--fcond);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700;background:var(--surface-2);cursor:pointer}
th.norank{cursor:default}
th .arrow{opacity:.6;font-size:9px}
tbody tr:last-child td{border-bottom:0}
tbody tr:hover{background:var(--surface-2)}
tbody tr.hit{background:var(--accent-soft)}
td.num{font-family:var(--fcond);font-weight:600;font-size:16px;font-variant-numeric:tabular-nums;text-align:right}
td.rankcell{font-family:var(--fbig);font-weight:800;font-size:20px;color:var(--muted);width:1%;text-align:right}
td.primary{font-family:var(--fcond);font-weight:600;font-size:16.5px}
td.primary .tb{display:inline-block;width:4px;height:18px;border-radius:2px;background:var(--tc,transparent);vertical-align:-3px;margin-right:9px}
.hm{margin-top:12px;display:flex;gap:7px;flex-wrap:wrap;align-items:center}
.hm .lab{font-family:var(--fcond);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700}
.hmchip{background:var(--surface-2);border:1px solid var(--line);border-radius:99px;padding:3px 11px;font-size:13px;color:var(--ink-2);display:inline-flex;align-items:center;gap:6px}
.hmchip button{background:none;border:0;color:var(--muted);padding:0;line-height:1;font-size:13px}
.hmchip button:hover{color:var(--down)}

.sectabs{display:flex;gap:4px;margin-top:18px;border-bottom:2px solid var(--line)}
.sectab{background:none;border:0;border-bottom:3px solid transparent;margin-bottom:-2px;padding:10px 14px 11px;font-family:var(--fbig);font-weight:800;font-size:22px;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);display:inline-flex;align-items:baseline;gap:8px}
.sectab .cnt{font-family:var(--fcond);font-weight:600;font-size:12px;letter-spacing:.08em;color:var(--muted)}
.sectab.active .cnt{color:var(--accent-ink)}
.sectab:hover{color:var(--ink)}
.sectab.active{color:var(--ink);border-bottom-color:var(--accent)}
@media (max-width:560px){.sectab{font-size:18px;padding:8px 10px 9px}}
.group.tabbed{margin-top:14px}
.hmchip.click{cursor:pointer}
.hmchip.click:hover{border-color:var(--accent);color:var(--ink)}
.prose .tblwrap{overflow-x:auto;margin:0 0 1.3em;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
.prose table{border-collapse:collapse;width:100%;font-family:var(--fcond);font-size:15.5px}
.prose th,.prose td{padding:7px 12px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}
.prose th{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:var(--surface-2)}
.prose tbody tr:last-child td{border-bottom:0}
.prose td:first-child{font-family:var(--fbig);font-weight:800;font-size:18px;color:var(--muted);width:1%}
.archive{margin-top:14px}
.ayear{font-family:var(--fbig);font-weight:800;font-size:26px;color:var(--muted);margin:22px 0 6px}
.arow{display:grid;grid-template-columns:110px 120px minmax(0,1fr);gap:14px;align-items:center;padding:10px 0;border-top:1px solid var(--line);text-decoration:none;color:inherit}
.arow:hover .atitle{color:var(--accent-ink)}
.adate{font-family:var(--fcond);font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.asp{display:flex;align-items:center;gap:7px;font-family:var(--fcond);font-weight:600;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}
.atitle{font-family:var(--fcond);font-weight:700;font-size:20px;line-height:1.1}
@media (max-width:560px){.arow{grid-template-columns:minmax(0,1fr);gap:3px}}
/* ---------- player drawer ---------- */
.scrim{position:fixed;inset:0;background:rgba(6,8,12,.6);z-index:60}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(580px,100%);background:var(--page);border-left:1px solid var(--border);z-index:70;overflow:auto;padding:22px 24px calc(env(safe-area-inset-bottom,0px) + 34px);box-shadow:-20px 0 60px rgba(0,0,0,.35)}
.drawer .close{position:absolute;top:14px;right:16px}
.drawer .head{display:flex;gap:18px;align-items:center;margin-top:8px}
.drawer .head .ava{width:104px;height:104px;box-shadow:0 0 0 4px var(--tc,var(--border))}
.drawer h2{font-family:var(--fbig);font-weight:800;font-size:42px;text-transform:uppercase;line-height:.95}
.drawer .bio{font-family:var(--fcond);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:13px;margin-top:6px;display:flex;gap:10px;flex-wrap:wrap}
.drawer .bio .tm{color:var(--tc,var(--ink-2));font-weight:700}
.drawer .rankline{display:flex;align-items:baseline;gap:12px;margin-top:18px;padding:12px 16px;background:var(--surface);border-radius:var(--r);border:1px solid var(--line)}
.drawer .rankline .rk{font-family:var(--fbig);font-size:56px;font-weight:800;color:var(--accent-ink);line-height:.9}
.drawer .rankline .lab{font-family:var(--fcond);letter-spacing:.1em;text-transform:uppercase;font-size:13px;color:var(--muted)}
.drawer .rankline .lab b{display:block;color:var(--ink);font-size:18px;letter-spacing:.02em}
.drawer h3{font-family:var(--fcond);letter-spacing:.14em;text-transform:uppercase;font-size:13px;color:var(--muted);margin:26px 0 10px;font-weight:700}
.chart{width:100%;height:auto;display:block}
.chart .grid{stroke:var(--line);stroke-width:1}
.chart .lbl{fill:var(--muted);font-family:var(--fcond);font-size:12px;letter-spacing:.04em}
.chart .line{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}
.chart .pt{fill:var(--page);stroke:var(--accent);stroke-width:2.5}
.chart .pt.cur{fill:var(--accent)}
.chart .rk{fill:var(--ink);font-family:var(--fcond);font-weight:700;font-size:13px}
.chart .nr{fill:var(--muted);font-family:var(--fcond);font-size:11px}
.stats{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
.stats table td,.stats table th{padding:6px 10px;font-size:13.5px}
.stats td{font-family:var(--fcond);font-variant-numeric:tabular-nums;font-size:15px}
.stats tr.cur td{background:var(--accent-soft)}
.drawer .note{font-size:16px;line-height:1.55;color:var(--ink-2);background:var(--surface);border-left:3px solid var(--accent);padding:10px 14px;border-radius:0 var(--r) var(--r) 0}

/* ---------- studio ---------- */
#studio{display:grid;grid-template-columns:224px minmax(0,1fr);min-height:100vh}
.snav{background:var(--surface);border-right:1px solid var(--line);padding:18px 14px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:3px}
.snav .brand{font-family:var(--fbig);font-weight:800;font-size:22px;line-height:1;color:var(--ink)}
.snav .sub{font-family:var(--fcond);letter-spacing:.16em;font-size:11px;color:var(--accent-ink);text-transform:uppercase;margin:4px 0 16px;font-weight:700}
.snav a{display:block;padding:8px 10px;border-radius:8px;color:var(--ink-2);text-decoration:none;font-weight:500;font-size:14.5px}
.snav a:hover{background:var(--surface-2);color:var(--ink)}
.snav a.active{background:var(--accent-soft);color:var(--ink)}
.snav .bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:10px}
@media (max-width:820px){#studio{grid-template-columns:minmax(0,1fr)}.snav{position:static;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px;border-right:0;border-bottom:1px solid var(--line)}.snav .sub{margin:0 10px 0 4px}.snav .bottom{margin:0;border:0;padding:0}}
.smain{min-width:0}
.stop{position:sticky;top:0;z-index:20;background:var(--page);border-bottom:1px solid var(--line);padding:12px 22px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.stop h1{font-family:var(--fcond);font-size:20px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.pill{display:inline-flex;align-items:center;gap:7px;font-family:var(--fcond);font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;padding:5px 11px;border-radius:99px;background:var(--surface-2);color:var(--ink-2)}
.pill.live .sd{background:var(--up)} .pill.dirty{background:var(--accent-soft);color:var(--accent-ink)} .pill.dirty .sd{background:var(--accent)} .pill.ro .sd{background:var(--down)}
.sbody{padding:22px;max-width:1180px}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px}
.tile .v{font-family:var(--fbig);font-weight:800;font-size:38px;line-height:1;color:var(--ink)}
.tile .l{font-family:var(--fcond);letter-spacing:.1em;text-transform:uppercase;font-size:12px;color:var(--muted);margin-top:4px}
.stable{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.stable th{font-family:var(--fcond);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:left;padding:9px 12px;background:var(--surface-2);cursor:default}
.stable td{padding:9px 12px;border-top:1px solid var(--line);vertical-align:middle;white-space:normal}
.stable td a{color:var(--ink);text-decoration:none;font-weight:600}
.stable td a:hover{color:var(--accent-ink)}
.stable select,.stable input[type=radio]{font-size:13px}
.stable select{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:3px 6px}
.swrap{overflow-x:auto}
.form{display:flex;flex-direction:column;gap:14px;margin-top:6px;max-width:820px}
.field{display:flex;flex-direction:column;gap:5px}
.field label{font-family:var(--fcond);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700}
.field input,.field select,.field textarea{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 11px;font-size:14.5px;outline:none;width:100%}
.field textarea{font-size:15.5px;line-height:1.55;min-height:320px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent)}
.field .help{font-size:12px;color:var(--muted)}
.rowfields{display:flex;gap:12px;flex-wrap:wrap}
.rowfields .field{flex:1 1 160px}
label.check{display:flex;gap:8px;align-items:flex-start;font-size:14px;color:var(--ink-2)}
label.check input{width:auto;margin-top:3px}
.swatches{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.swatch{width:28px;height:28px;border-radius:50%;border:2px solid var(--line);cursor:pointer;padding:0}
.swatch.on{border-color:var(--ink)}
.mdhelp{font-size:12px;color:var(--muted);line-height:1.7}
.edactions{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin-top:6px}
.cellin{background:var(--surface-2);border:1px solid var(--line);border-radius:6px;padding:4px 7px;width:100%;min-width:60px;font-size:14px}
.cellin:focus{border-color:var(--accent);background:var(--raise);outline:none}
.rowtools{display:flex;gap:3px;flex:none}
.rowtools button{background:var(--surface-2);border:1px solid var(--line);border-radius:6px;width:26px;height:24px;display:grid;place-items:center;font-size:10px;color:var(--muted);padding:0}
.rowtools button:hover{color:var(--ink);border-color:var(--border)}
.rowtools button.x:hover{color:var(--down);border-color:var(--down)}
.erow{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:8px;align-items:start;padding:5px 0;border-bottom:1px solid var(--line)}
.erow .num{font-family:var(--fbig);font-weight:800;font-size:20px;color:var(--muted);text-align:right;padding-top:4px}
.erow .cells{display:flex;flex-direction:column;gap:4px}
.erow .cells .multi{display:grid;gap:6px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}
.erow .note{font-size:13px}
.addrow{margin-top:8px}
.banner{margin:0 0 16px;padding:10px 14px;border-radius:9px;font-size:13.5px;background:var(--accent-soft);color:var(--ink-2);border:1px solid var(--accent);display:flex;gap:10px;align-items:center;flex-wrap:wrap}

/* ---------- standings ---------- */
.stand{display:flex;flex-direction:column;gap:3px;margin-top:8px}
.strow{position:relative;display:grid;grid-template-columns:32px minmax(0,1fr) 96px 56px;align-items:center;gap:12px;padding:10px 14px 10px 8px;border-radius:10px;background:var(--surface);border:1px solid var(--line);overflow:hidden}
.strow::before{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--pct,0%);background:linear-gradient(90deg,color-mix(in srgb,var(--ink) 13%,transparent) 0%,color-mix(in srgb,var(--ink) 5%,transparent) 86%,transparent 100%);pointer-events:none}
.strow>*{position:relative;z-index:1}
.strow.hit{background:var(--accent-soft)}
.strow .rk{font-family:var(--fbig);font-weight:800;font-size:23px;line-height:1;color:var(--tcink,var(--tc,var(--muted)));text-align:right;font-variant-numeric:tabular-nums}
.strow .tm{display:flex;align-items:center;gap:11px;min-width:0}
.strow .tm .bar{width:5px;align-self:stretch;min-height:26px;border-radius:3px;background:var(--tcink,var(--tc,var(--border)));flex:none}
.strow .who{min-width:0;display:flex;flex-direction:column;gap:3px}
.strow .nm{font-family:var(--fcond);font-weight:600;font-size:19.5px;line-height:1.1;overflow-wrap:anywhere}
.strow .nm mark{background:transparent;color:var(--accent-ink)}
.strow .nt{font-size:13.5px;color:var(--ink-2);line-height:1.45;max-width:72ch}
.strow .rec{font-family:var(--fbig);font-weight:800;font-size:23px;line-height:1;text-align:right;font-variant-numeric:tabular-nums;letter-spacing:.01em}
.strow .rec i{font-style:normal;color:var(--muted);margin:0 3px;font-size:19px}
.strow .pct{font-family:var(--fcond);font-size:15.5px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}
.strow.sthead{background:none;border-color:transparent;padding:0 14px 4px 8px}
.strow.sthead span{font-family:var(--fcond);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700}
.strow.sthead .tm{padding-left:16px}
.stcut{display:flex;align-items:center;gap:10px;margin:11px 2px 5px;font-family:var(--fcond);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:700}
.stcut::after{content:"";flex:1;height:1px;background:var(--line)}
@media (max-width:560px){.strow{grid-template-columns:24px minmax(0,1fr) auto;gap:9px;padding:9px 11px 9px 6px}.strow .pct{display:none}.strow .rec{font-size:20px}.strow .nm{font-size:17.5px}.strow.sthead{padding:0 11px 4px 6px}}


/* ---------- win/loss balance check ---------- */
.wlcheck{position:sticky;top:52px;z-index:15;margin:0 0 14px;padding:9px 14px;border-radius:9px;font-size:13.5px;display:flex;gap:8px 14px;align-items:center;flex-wrap:wrap;border:1px solid var(--border);background:var(--surface)}
.wlcheck b{font-family:var(--fcond);font-size:16px;letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--ink)}
.wlcheck .fix{font-weight:600;color:var(--ink)}
.wlcheck .sub{color:var(--muted)}
.wlcheck.ok{background:color-mix(in srgb,var(--up) 13%,var(--surface));border-color:color-mix(in srgb,var(--up) 55%,transparent)}
.wlcheck.bad{background:color-mix(in srgb,var(--down) 13%,var(--surface));border-color:color-mix(in srgb,var(--down) 60%,transparent)}
.wlcheck .tag{font-family:var(--fcond);font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.wlcheck.ok .tag{color:var(--up)}
.wlcheck.bad .tag{color:var(--down)}
@media (max-width:820px){.wlcheck{position:static}}

/* ---------- dialog / toast ---------- */
.sheetscrim{position:fixed;inset:0;background:rgba(6,8,12,.6);z-index:80;display:grid;place-items:center;padding:18px}
.sheet{background:var(--page);border:1px solid var(--border);border-radius:14px;width:min(560px,100%);max-height:88vh;overflow:auto;box-shadow:0 18px 50px rgba(0,0,0,.35)}
.sheet header{padding:18px 20px 0}
.sheet h2{font-family:var(--fcond);font-size:22px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.sheet p.hint{color:var(--muted);font-size:13px;margin:5px 0 0}
.sheet .body{padding:16px 20px;display:flex;flex-direction:column;gap:13px}
.sheet .body textarea{min-height:0}
.sheet footer{padding:14px 20px 18px;display:flex;gap:9px;justify-content:flex-end;border-top:1px solid var(--line);position:sticky;bottom:0;background:var(--page)}
.toast{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 18px);transform:translateX(-50%);background:var(--ink);color:var(--page);padding:9px 16px;border-radius:99px;font-size:13.5px;z-index:90;box-shadow:0 8px 24px rgba(0,0,0,.3);max-width:calc(100% - 32px);font-family:var(--fcond);letter-spacing:.04em}
footer.site{max-width:1280px;margin:0 auto;padding:30px 20px 40px;color:var(--muted);font-family:var(--fcond);font-size:13px;letter-spacing:.06em;text-transform:uppercase;display:flex;gap:14px;flex-wrap:wrap;align-items:center}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

.fig{margin:1.6em 0 1.8em}
.fig .ft{font-family:var(--fcond);font-weight:700;font-size:19px;margin:0 0 6px;color:var(--ink)}
.fig svg{width:100%;height:auto;display:block;font-family:var(--fui);--s1:#b07400;--s2:#1d6fb8;--s3:#c2185b;--s4:#6a3fc9;--s5:#d95d1e}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .fig svg{--s1:#bd8510;--s2:#3a9fd6;--s3:#e0507f;--s4:#9a7ce8;--s5:#d9661f}}
:root[data-theme="dark"] .fig svg{--s1:#bd8510;--s2:#3a9fd6;--s3:#e0507f;--s4:#9a7ce8;--s5:#d9661f}
.fig .ax{font-size:12px;fill:var(--muted)}
.fig .lb{font-size:12.5px;fill:var(--ink-2);font-weight:500}
.fig .lg{font-size:12.5px;fill:var(--ink-2)}
.fig .grid{stroke:var(--line);stroke-width:1}
.fig .axis{stroke:var(--border);stroke-width:1}
.fig .ln{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.fig .pt{stroke:var(--surface);stroke-width:2}
.fig .area{stroke:var(--surface);stroke-width:1.5}
.fig .s1{fill:var(--s1)}.fig .s2{fill:var(--s2)}.fig .s3{fill:var(--s3)}.fig .s4{fill:var(--s4)}.fig .s5{fill:var(--s5)}
.fig .ln.s1{stroke:var(--s1);fill:none}.fig .ln.s2{stroke:var(--s2);fill:none}.fig .ln.s3{stroke:var(--s3);fill:none}
.fig .hit{fill:transparent}
.fig figcaption{font-size:13px;color:var(--muted);margin-top:8px;line-height:1.45}
.fig .sub{font-family:var(--fcond);font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 4px}

.notelink{color:var(--accent-ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px;text-decoration-thickness:2px;cursor:pointer;position:relative;border-radius:4px;padding:0 2px;margin:0 -2px;white-space:nowrap}
.notelink:hover,.notelink.open{background:var(--accent-soft)}
.notelink .ni{display:inline-grid;place-items:center;width:15px;height:15px;margin-left:4px;border-radius:50%;background:var(--accent);color:#111;font:700 10.5px/1 Georgia,"Times New Roman",serif;font-style:italic;vertical-align:3px;text-decoration:none}
.prose p{position:relative}
.popnote{display:block;position:relative;margin:12px 0 4px;z-index:5;max-width:560px;padding:12px 40px 12px 14px;background:var(--raise);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:10px;font-size:14.5px;line-height:1.5;color:var(--ink-2);box-shadow:0 8px 24px rgba(0,0,0,.12)}
/* Notes never cover the text (Sam, 2026-09-22): on wide screens they open in the
   margin beside the paragraph, level with the link; on narrower screens they
   open below the paragraph and push the text down. */
@media (min-width:1240px){.popnote{position:absolute;top:var(--pn-side,0);left:calc(100% + 36px);width:270px;margin:0}}
.popnote .x{position:absolute;top:6px;right:8px;border:0;background:transparent;font-size:20px;line-height:1;color:var(--muted);padding:4px 6px;border-radius:6px}
.popnote .x:hover{color:var(--ink);background:var(--surface-2)}
.popnote .pn-h{display:block;font-family:var(--fcond);font-weight:700;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-ink);margin:0 0 6px}
.popnote .pn-l{display:block}
.popnote .pn-l+.pn-l{margin-top:6px}
.popnote .pn-l b{color:var(--ink);font-weight:600}
.byline .bybits{display:inline-flex;align-items:center;flex-wrap:wrap;gap:2px 10px}
.byline .bybits .bi:first-child{color:var(--ink-2);font-weight:600}
.byline .bi{white-space:nowrap}
.byline .bi.sep::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin:0 10px 0 0;vertical-align:2px}
.fig figcaption .src{opacity:.85}
.prose .tblwrap{overflow-x:auto;margin:0 0 1.4em}
.prose .tblwrap td:first-child{font-family:var(--fcond);font-weight:600;font-size:15.5px;color:var(--ink);width:auto}
.prose .tblwrap td:last-child{white-space:normal}
.prose .tblwrap th:first-child{color:var(--ink-2)}
.ltc{margin:1.8em 0 2em;padding:0}
.ltc{--ltc-1:#2a78d6;--ltc-2:#eb6834;--ltc-3:#1baf7a;--ltc-4:#8fb8ee;--ltc-5:#e87ba4;--ltc-6:#eda100;
  --ltc-grid:rgba(11,11,11,.1);--ltc-axis:#c3c2b7;--ltc-ink:#0b0b0b;--ltc-ink2:#52514e;--ltc-surface:var(--page,#fff);
  --ltc-font:ui-sans-serif,-apple-system,system-ui,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .ltc{--ltc-1:#3987e5;--ltc-2:#d95926;--ltc-3:#199e70;--ltc-4:#7fa6d9;--ltc-5:#d55181;--ltc-6:#c98500;
  --ltc-grid:rgba(255,255,255,.1);--ltc-axis:#383835;--ltc-ink:#f0efec;--ltc-ink2:#c3c2b7}}
:root[data-theme="dark"] .ltc{--ltc-1:#3987e5;--ltc-2:#d95926;--ltc-3:#199e70;--ltc-4:#7fa6d9;--ltc-5:#d55181;--ltc-6:#c98500;
  --ltc-grid:rgba(255,255,255,.1);--ltc-axis:#383835;--ltc-ink:#f0efec;--ltc-ink2:#c3c2b7}
.ltc-chart{font-family:var(--ltc-font);color:var(--ltc-ink);margin:0 0 18px}
.ltc-chart+.ltc-chart{margin-top:22px}
.ltc-title{font-weight:600;font-size:14.5px;text-align:center;margin:0 0 8px;line-height:1.3}
.ltc-legend{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:center;font-size:12.5px;color:var(--ltc-ink2);margin:0 0 6px 8px}
.ltc-legend b{color:var(--ltc-ink);font-weight:600;margin-right:2px}
.ltc-li{display:inline-flex;align-items:center;gap:6px}
.ltc-sw{display:inline-block;flex:none;background:var(--c)}
.ltc-sw.bx{width:10px;height:10px;border-radius:2px}
.ltc-sw.ln{width:12px;height:2px;border-radius:1px}
.ltc-sw.pt{width:8px;height:8px;border-radius:50%}
.ltc-plot{position:relative;width:100%}
.ltc-svg{display:block;width:100%;height:auto;overflow:visible;touch-action:pan-y}
.ltc-grid{stroke:var(--ltc-grid);stroke-width:1}
.ltc-axis{stroke:var(--ltc-axis);stroke-width:1}
.ltc-tick{font-size:11.5px;fill:var(--ltc-ink2);font-variant-numeric:tabular-nums}
.ltc-atitle{font-size:12px;fill:var(--ltc-ink2)}
.ltc-lab{font-size:11.5px;fill:var(--ltc-ink2);font-variant-numeric:tabular-nums;paint-order:stroke;stroke:var(--ltc-surface);stroke-width:3px;stroke-linejoin:round}
.ltc-lead{stroke:var(--ltc-ink2);stroke-width:1;opacity:.8}
.ltc-arrow{fill:var(--ltc-ink2);opacity:.8}
.ltc-bar{fill:var(--c)}
.ltc-line{fill:none;stroke:var(--c);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.ltc-area{fill:var(--c);fill-opacity:.12;stroke:none}
.ltc-dot{fill:var(--c);stroke:var(--ltc-surface);stroke-width:1.5}
.ltc-hdot{fill:var(--c);stroke:var(--ltc-surface);stroke-width:2}
.ltc-cross{stroke:var(--ltc-ink2);stroke-width:1;stroke-dasharray:3 3;opacity:.7}
.ltc-hband{fill:var(--ltc-grid)}
.ltc-region{fill:var(--ltc-2);opacity:.08}
.prose li{position:relative}
.ltc-rule{stroke:var(--ltc-ink);stroke-width:2;stroke-dasharray:6 4;opacity:.7}
.ltc-stem{stroke:var(--ltc-grid);stroke-width:2}
.ltc-sub{font-size:10.5px;opacity:.75}
.ltc-hit{fill:transparent;cursor:crosshair}
.ltc-note{font-size:12.5px;color:var(--ltc-ink2);margin-top:6px;line-height:1.45}
.ltc-tip{position:absolute;z-index:4;pointer-events:none;background:var(--raise,#fff);color:var(--ltc-ink);border:1px solid var(--border,rgba(0,0,0,.15));border-radius:8px;padding:7px 10px;font-size:12.5px;line-height:1.5;box-shadow:0 6px 18px rgba(0,0,0,.14);white-space:nowrap}
.ltc-th{color:var(--ltc-ink2);margin-bottom:2px}
.ltc-tr{display:flex;align-items:center;gap:6px}
.ltc-tr b{font-weight:600;font-variant-numeric:tabular-nums}

.prose sup.fn{font-size:.62em;line-height:0;vertical-align:super;margin-left:1px;font-family:var(--fui);font-weight:600;white-space:nowrap}
.prose sup.fn a{color:var(--accent-ink);text-decoration:none;padding:0 1px}
.prose sup.fn a:hover{text-decoration:underline}
.prose sup.fn .fnc{color:var(--muted)}
.prose ol.srclist{font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.prose ol.srclist li{border-radius:6px;transition:background-color .6s}
.prose ol.srclist li.flash{background:var(--accent-soft)}
.prose .ltc{--ltc-surface:var(--page)}

/* ---- cross-board link ---- */
.xlink{display:flex;align-items:center;gap:16px;margin-top:18px;padding:14px 18px;border:2px solid var(--accent);border-radius:var(--r);background:var(--accent-soft);color:var(--ink);text-decoration:none}
.xlink:hover,.xlink:focus-visible{background:var(--accent);color:#141005}
.xlink .xt{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.xlink .xk{font-family:var(--fcond);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--accent-ink)}
.xlink .xn{font-family:var(--fbig);font-weight:800;font-size:clamp(21px,2.7vw,27px);line-height:1.02;text-transform:uppercase}
.xlink .xs{font-size:13.5px;color:var(--ink-2);line-height:1.35}
.xlink:hover .xk,.xlink:hover .xs,.xlink:focus-visible .xk,.xlink:focus-visible .xs{color:#3d2f06}
.xlink .xar{font-family:var(--fbig);font-weight:800;font-size:32px;line-height:1;flex:none}
@media (max-width:560px){.xlink{padding:12px 14px;gap:10px}.xlink .xs{display:none}}
/* ---- edition intro ---- */
.lintro{font-size:19px;line-height:1.62;color:var(--ink-2);max-width:none;margin-top:20px;padding:0;border:0}
.lintro p{margin:0 0 1em}
.lintro p:last-child{margin-bottom:0}
.lintro strong{color:var(--ink);font-weight:600}
.introlab{font-size:11.5px;color:var(--muted);margin-top:14px;max-width:74ch;line-height:1.45}
.introta{display:block;width:100%;max-width:74ch;min-height:150px;margin-top:6px;padding:10px 12px;font-family:var(--fui);font-size:14px;line-height:1.55;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:var(--r);resize:vertical}
.introta:focus{outline:none;border-color:var(--accent)}
/* ---- rows carrying commentary ---- */
.rows.noted .prow{align-items:flex-start;padding-top:13px;padding-bottom:13px}
.rows.noted .prow .num,.rows.noted .prow .ava,.rows.noted .prow .right{margin-top:3px}
.rows.noted .prow .note{font-size:14.5px;line-height:1.5;margin-top:6px;max-width:74ch}

/* ---- countdown ---- */
.hm.above{margin:0 0 16px}
/* ---- click-for-details hint ---- */
.clickhint{position:relative;display:flex;align-items:center;gap:8px;width:fit-content;max-width:100%;margin:0 0 10px 92px;padding:8px 8px 8px 14px;background:var(--accent);color:#141005;border-radius:10px;font-family:var(--fcond);font-weight:600;font-size:14.5px;letter-spacing:.04em;box-shadow:0 6px 18px rgba(0,0,0,.16);break-inside:avoid}
.clickhint::before{content:"";position:absolute;bottom:-7px;left:22px;width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid var(--accent)}
.clickhint .chx{background:transparent;border:0;color:#141005;font-size:18px;line-height:1;padding:2px 6px;border-radius:6px;opacity:.65}
.clickhint .chx:hover{opacity:1;background:rgba(0,0,0,.09)}

/* ---------- clickable standings rows ---------- */
.strow.click{font:inherit;color:inherit;text-align:left;width:100%;cursor:pointer;
  border:1px solid var(--line);appearance:none;-webkit-appearance:none}
.strow.click:hover{border-color:var(--border)}
.strow.click:hover .nm{color:var(--accent-ink)}
.clickhint.team{margin-left:46px}
@media (max-width:560px){.clickhint.team{margin-left:34px}}

/* ---------- team drawer ---------- */
.drawer.team .bio .tm{color:var(--tc,var(--ink-2));font-weight:700}
.teamrecs{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.trec{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;
  display:flex;flex-direction:column;gap:3px}
.trl{font-family:var(--fcond);font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-weight:700}
.trv{font-family:var(--fbig);font-weight:800;font-size:32px;line-height:1;color:var(--ink);font-variant-numeric:tabular-nums}
.trv i{font-style:normal;color:var(--muted);margin:0 3px;font-size:26px}
.trp{font-family:var(--fcond);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.moves{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px 10px;align-items:start}
.mgrp{display:contents}
.mlab{font-family:var(--fcond);font-weight:700;font-size:12px;letter-spacing:.13em;text-transform:uppercase;
  padding:4px 9px;border-radius:99px;flex:none;line-height:1.25;text-align:center}
.mgrp.in .mlab{background:color-mix(in srgb,var(--up) 17%,transparent);color:var(--up)}
.mgrp.out .mlab{background:color-mix(in srgb,var(--down) 15%,transparent);color:var(--down)}
.mpills{display:flex;flex-wrap:wrap;gap:6px}
.mpill{background:var(--surface-2);border-radius:99px;padding:4px 11px;font-size:14px;color:var(--ink-2);line-height:1.25}
.mpill.none{background:transparent;border:1px dashed var(--border);color:var(--muted);font-style:italic}

/* ---------- studio: last season + offseason moves ---------- */
.teamex{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}
.teamex .cellin{flex:1 1 150px;min-width:0;font-size:13px}
.teamex .cellin.tiny{flex:0 0 auto}
@media (max-width:560px){.clickhint{margin-left:78px;font-size:13.5px}.clickhint::before{left:18px}}

/* ---- studio: board rows that read like the live board ---- */
.erow.rich{grid-template-columns:34px 46px minmax(0,1fr) auto auto;gap:10px;align-items:start;padding:9px 0}
.erow.rich .num{padding-top:9px;font-size:22px}
.eava{background:none;border:0;padding:0;margin-top:5px;line-height:0;display:block;border-radius:50%}
.eava .ava{width:42px;height:42px}
button.eava{cursor:pointer}
button.eava:hover .ava,button.eava:focus-visible .ava{box-shadow:0 0 0 3px var(--accent)}
.eava.miss{opacity:.4}
.esub{font-family:var(--fcond);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);display:flex;gap:9px;flex-wrap:wrap;align-items:center;padding:1px 2px;cursor:pointer;border-radius:5px;width:fit-content;max-width:100%}
.esub:hover{background:var(--surface-2);color:var(--ink-2)}
.esub .tm{color:var(--tc,var(--ink-2));font-weight:700}
.esub .peek{color:var(--accent-ink);font-weight:700;opacity:0}
.erow.rich:hover .esub .peek,.esub:hover .peek{opacity:1}
.eright{display:flex;align-items:center;gap:13px;padding-top:9px}
.erow.rich .cells .note{min-height:38px;line-height:1.45;resize:vertical;overflow:hidden}
@media (max-width:1040px){.eright .stat{display:none}}
@media (max-width:640px){.erow.rich{grid-template-columns:26px 40px minmax(0,1fr) auto auto;gap:7px}.erow.rich .eava .ava{width:36px;height:36px}}

/* toolbar with nothing in it (public board) takes no space */
.toolbar.bare{margin:0;gap:0}
.toolbar.bare .meta:empty{display:none}
.toolbar.bare .meta:not(:empty){padding:14px 0 2px}

.thumbbar{margin-top:8px}
.thumbbar .tlab{font-family:var(--fcond);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700}

/* hero preview when a board is pinned */
.hero .prev{display:flex;justify-content:flex-end;align-items:flex-end;min-width:0}
.hero .prev .mini{margin-top:0;width:100%;max-width:360px}
.hero .prev .mini.blurb{min-height:0;justify-content:flex-end;text-align:right;font-size:clamp(24px,3vw,34px);line-height:1.15;color:var(--ink)}
.hero .prev .mini .r{font-size:18.5px}
.hero .prev .mini .r .n{font-size:20px;width:23px}
.hero .prev .mini .ava{width:32px;height:32px}
@media (max-width:820px){.hero .prev{justify-content:flex-start}.hero .prev .mini.photos{justify-content:flex-start}.hero .prev .mini.blurb{justify-content:flex-start;text-align:left}}
.mini.blurb{display:flex;align-items:center;justify-content:center;min-height:126px;text-align:center;font-family:var(--fcond);font-weight:600;font-size:clamp(20px,2.3vw,25px);line-height:1.22;color:var(--ink);margin-top:16px;padding:4px 6px;text-wrap:balance}


/* ---------- permanent in every look (Sam, 2026-09-22) ---------- */
/* ranks 1–3 are the same colour as every other rank (no .top3 highlight);
   the crumb's sport dot and board-type marker are two identical accent circles */
.crumb .sd{background:var(--accent)!important;width:7px;height:7px}
.crumb .clbl::before{width:7px;height:7px;border-radius:50%;background:var(--accent);vertical-align:0}

/* ---------- light only: the page background always follows the theme ---------- */
html body{background:var(--page);color:var(--ink)}
@media (max-width:560px){.top .in{gap:10px}.gsearch{min-width:0}}

/* ---------- tables fit without sideways scrolling ---------- */
.prose .tblwrap th{white-space:normal;vertical-align:bottom;line-height:1.25}
.stats table td,.stats table th{padding:6px 8px}
@media (max-width:620px){
  .stats table td,.stats table th{padding:5px 3px}
  .stats table td{font-size:12px}
  .stats table th{font-size:9.5px;letter-spacing:.03em}
  .drawer{padding-left:16px;padding-right:16px}
  .prose .tblwrap th,.prose .tblwrap td{padding:6px 8px}
  .prose .tblwrap td:first-child{white-space:normal}
  .prose .tblwrap td,.prose .tblwrap td:first-child{white-space:normal;font-size:13.5px}
  .prose .tblwrap th,.prose .tblwrap td{padding:6px 5px}
  .prose .tblwrap th{font-size:10.5px;letter-spacing:.04em}
}

@media (max-width:380px){.prose .tblwrap th,.prose .tblwrap td{padding:5px 3px}.prose .tblwrap td,.prose .tblwrap td:first-child{font-size:12.5px}.prose .tblwrap th{font-size:9.5px;letter-spacing:.02em}}

/* pop-out rank number black, team name in team colour (Sam, 2026-09-24) */
.drawer .rankline .rk{color:var(--ink)}
.drawer.team h2{color:var(--tc,var(--ink))}


/* ===== THEME: wire ===== */
/* BallPoint theme: Wire  |  fonts: family=Playfair+Display:ital,wght@0,700;0,800;0,900;1,700;1,800;1,900&family=Libre+Franklin:wght@400;500;600;700;800&family=Source+Serif+4:ital,opsz,wght@0,8..60,400;0,8..60,600;1,8..60,400&family=JetBrains+Mono:wght@500;600;700&family=Oswald:wght@500;600;700
   Wire (Sam, 2026-09-22). A newspaper layout (centred masthead over a double
   rule, Playfair Display headlines in sentence case, hairline-ruled story
   columns, mono labels, Oswald rank numbers) in basketball orange #FF7A1A
   (text shade #C2410C) with a darker, brighter blue #1A3CFF for the sport
   marks. Article body text, tables, chart captions and standings rows use the
   Basic type. Chosen in Studio → Site display; the other option is Basic.
   (Built from an earlier blue version — kept in _retired/wire-blue.css — with
   orange and blue swapped, so the blue values in the Press Box/Wire sections
   below read as orange.) */


:root{
  --page:#f3f3ef; --surface:#fafaf7; --surface-2:#e6e7e2; --raise:#ffffff;
  --ink:#0b1230; --ink-2:#343b58; --muted:#6a6f82;
  --line:rgba(11,18,48,.13); --border:rgba(11,18,48,.3);
  --rule:#0b1230;
  --accent:#FF7A1A !important;
  --accent-ink:#C2410C !important;
  --accent-soft:rgba(255,122,26,.10);
  --up:#11804e; --down:#c8243f; --new:#C2410C;
  --volt:#FF7A1A; --volt-2:#D9480F; --volt-hi:#FFB067;
  --ball:#FF7A1A;
  --rglow:none; --tglow:none;
  --gridline:transparent;
  --fbig:"Playfair Display",Georgia,"Times New Roman",serif;
  --fcond:"JetBrains Mono",ui-monospace,Menlo,monospace;
  --fui:"Libre Franklin",system-ui,-apple-system,"Segoe UI",sans-serif;
  --fread:"Source Serif 4",Georgia,"Times New Roman",serif;
  --r:0px;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --page:#050a1a; --surface:#0a1128; --surface-2:#111a3a; --raise:#15204a;
    --ink:#eef2fb; --ink-2:#b4bfd8; --muted:#7a86a6;
    --line:rgba(255,176,103,.13); --border:rgba(255,176,103,.3);
    --rule:rgba(255,176,103,.62);
    --accent-ink:#FFB067 !important;
    --accent-soft:rgba(255,122,26,.15);
    --up:#2ee59d; --down:#ff5a7a; --new:#FFB067;
    --rglow:0 0 10px rgba(255,122,26,.55); --tglow:0 0 16px rgba(255,122,26,.35);
    --gridline:rgba(255,122,26,.05);
  }
}
:root[data-theme="dark"]{
  --page:#050a1a; --surface:#0a1128; --surface-2:#111a3a; --raise:#15204a;
  --ink:#eef2fb; --ink-2:#b4bfd8; --muted:#7a86a6;
  --line:rgba(255,176,103,.13); --border:rgba(255,176,103,.3);
  --rule:rgba(255,176,103,.62);
  --accent-ink:#FFB067 !important;
  --accent-soft:rgba(255,122,26,.15);
  --up:#2ee59d; --down:#ff5a7a; --new:#FFB067;
  --rglow:0 0 10px rgba(255,122,26,.55); --tglow:0 0 16px rgba(255,122,26,.35);
  --gridline:rgba(255,122,26,.05);
}
html body{background:var(--page)!important;color:var(--ink)!important;font-variant-numeric:lining-nums}
h1,h2,h3,.prow .num,.strow .rk,.strow .rec,.trv,.tile .v,.mini .r .n,td.rankcell,.drawer .rankline .rk{font-variant-numeric:lining-nums tabular-nums}
::selection{background:rgba(255,122,26,.25)}
.kick{font-family:var(--fcond);font-size:11.5px;font-weight:700;letter-spacing:.14em}

/* ---------- masthead ---------- */
.top{background:color-mix(in srgb,var(--page) 94%,transparent);border-bottom:0}
.top .in{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:16px 20px 12px}
.wordmark{grid-column:2;grid-row:1;justify-self:center;gap:12px}
.wordmark b{font-family:var(--fbig);font-weight:900;font-size:42px;letter-spacing:-.01em}
.wordmark svg{width:36px;height:36px}
.wordmark svg circle,.bpo circle{fill:var(--ball)}
.top .spacer{display:none}
.gsearch{grid-column:3;grid-row:1;justify-self:end;width:220px;flex:none}
#studiolink{grid-column:1;grid-row:1;justify-self:start}
.gsearch input{border-radius:0;border:0;border-bottom:1px solid var(--border);background:transparent;padding-left:26px}
.gsearch input:focus{border-bottom-color:var(--ink)}
.gsearch svg{left:4px}
.navrow{border-top:1px solid var(--rule);border-bottom:3px double var(--rule);justify-content:center;padding:0 20px;gap:10px 24px;align-items:center;max-width:1240px}
.tabs{gap:10px}
.tab{font-family:var(--fcond);font-weight:700;font-size:12.5px;letter-spacing:.2em;padding:10px 12px 9px;border-bottom:0;margin:0;color:var(--ink-2)}
.tab:hover{color:var(--accent-ink)}
.tab.active{color:var(--accent-ink);border-bottom:0;box-shadow:inset 0 -2px 0 var(--accent)}
.chips{margin-left:0;padding:6px 0}
.chip{border-radius:0;background:transparent;font-family:var(--fcond);font-size:11.5px;letter-spacing:.12em;font-weight:700}
.chip.active{background:var(--ink);color:var(--page)}
@media (max-width:720px){
  .top .in{grid-template-columns:minmax(0,1fr) auto;padding:12px 16px 10px}
  .wordmark{grid-column:1;justify-self:start}
  .wordmark b{font-size:32px}
  .gsearch{grid-column:2;width:140px}
  #studiolink{grid-column:2;grid-row:2;justify-self:end}
}

/* ---------- buttons, pills ---------- */
.btn{border-radius:0;font-family:var(--fcond);font-weight:700;font-size:12px;letter-spacing:.14em;background:transparent;border-color:var(--ink);color:var(--ink)}
.btn:hover{background:var(--ink);color:var(--page);border-color:var(--ink)}
.btn.primary{background:var(--ink);border-color:var(--ink);color:var(--page)}
.btn.primary:hover{background:var(--accent);border-color:var(--accent);color:#fff;filter:none}
.epill{border-radius:0;background:transparent;font-family:var(--fcond);font-weight:600;font-size:13px;border-color:var(--border)}
.epill:hover{border-color:var(--ink)}
.epill.active{background:var(--ink);border-color:var(--ink);color:var(--page)}
.tagpill{border-radius:0;background:transparent;border:1px solid var(--border);font-family:var(--fcond);font-size:11px;letter-spacing:.1em}

/* ---------- section headings: rule above, headline below ---------- */
.sh h2{font-family:var(--fbig);font-weight:900;font-style:italic;text-transform:none;letter-spacing:-.005em}
.sh .cnt{font-family:var(--fcond);font-weight:700}
.ghead{font-family:var(--fcond);font-size:12px;letter-spacing:.18em}
.ghead::after{height:1px;background:var(--ink);opacity:.5}

/* ---------- hero: the front-page lead (layout from Basic, Sam 2026-09-24;
   Wire keeps only its colours and type here) ---------- */
.hero{border-radius:var(--r)}
.hero .kick{color:var(--accent-ink)}
.hero .kick .sp{color:var(--accent-ink)}
.hero h1{font-family:var(--fbig);font-weight:900;text-transform:none;letter-spacing:-.015em;line-height:1.02}
.hero .dek{font-family:var(--fread);font-style:italic;color:var(--ink-2)}
.hero .strip .n{font-family:var(--fbig);font-style:italic}

/* ---------- story cards (layout from Basic, Sam 2026-09-24) ---------- */
.card .kick .k{color:var(--accent-ink)}
.card h3{font-family:var(--fbig);font-weight:800;letter-spacing:-.005em}
.card .dek{font-family:var(--fread)}
.card .foot{font-family:var(--fcond);font-size:11px;letter-spacing:.12em;font-weight:600}
.mini .r{font-family:var(--fcond);font-size:15px}
.mini .r .n{font-family:var(--fbig);font-style:italic;font-weight:900;font-size:19px;color:var(--accent-ink)}
.mini.intro{font-family:var(--fread);font-size:15px}
.mini.blurb{font-family:var(--fbig);font-style:italic;font-weight:700}
.mini.summary .srow{font-family:var(--fcond)}

/* ---------- board page ---------- */
.crumb{font-family:var(--fcond);font-size:11.5px;letter-spacing:.14em;font-weight:600}
.crumb .clbl::before,.byline .bi.sep::before{background:var(--accent);border-radius:0;width:5px;height:5px}
h1.ltitle,.article h1{font-family:var(--fbig);font-weight:900;text-transform:none;font-size:clamp(38px,5.6vw,66px);line-height:1.03;letter-spacing:-.015em}
.lhead .rule,.article .rule{height:3px;width:44px;background:var(--accent);border-radius:0}
.lsub,.article .dek{font-family:var(--fread);font-style:italic;font-size:19px}
.byline{font-family:var(--fcond);font-size:11.5px;letter-spacing:.14em;border-top:1px solid var(--rule);border-bottom:1px solid var(--line)}
.xlink{border:1px solid var(--rule);border-radius:0;background:transparent}
.xlink:hover,.xlink:focus-visible{background:var(--ink);color:var(--page)}
.xlink:hover .xk,.xlink:hover .xs,.xlink:focus-visible .xk,.xlink:focus-visible .xs{color:color-mix(in srgb,var(--page) 80%,transparent)}
.xlink .xk{color:var(--accent-ink)}
.xlink .xn{font-family:var(--fbig);font-weight:800;text-transform:none;font-size:clamp(19px,2.2vw,24px)}
.xlink .xar{font-family:var(--fbig)}
.lintro{font-family:var(--fread);font-size:19px;line-height:1.66;color:var(--ink)}
.lintro strong{font-weight:600}
.search input{border-radius:0}

/* ranked rows */
.prow .num{font-family:var(--fbig);font-style:italic;font-weight:900;font-size:32px;color:var(--muted)}
.prow .nm{font-family:var(--fbig);font-weight:700;font-size:21px;letter-spacing:-.005em}
.prow .sub{font-family:var(--fcond);font-size:11px;letter-spacing:.12em}
.prow .note,.rows.noted .prow .note{font-family:var(--fread);font-size:15.5px;line-height:1.55}
.prow.click:hover{background:var(--surface)}
.stat{font-family:var(--fcond)}
.stat b{font-weight:600;font-size:16px}
.delta{font-family:var(--fcond);font-size:15px}
.sectabs{border-bottom:1px solid var(--rule)}
.sectab{font-family:var(--fbig);font-weight:800;text-transform:none;font-size:23px;letter-spacing:-.005em;border-bottom-width:3px;margin-bottom:-1px}
.sectab.active{border-bottom-color:var(--ink)}
.sectab .cnt{font-family:var(--fcond)}

/* tables */


/* click-for-details bubble */
.clickhint{background:var(--ink);color:var(--page);border-radius:0;font-family:var(--fcond);font-size:13px;font-weight:600;box-shadow:none}
.clickhint::before{border-top-color:var(--ink)}
.clickhint .chx{color:var(--page)}

/* ---------- drawer ---------- */
.drawer{border-left:1px solid var(--rule);box-shadow:-20px 0 60px rgba(0,0,0,.25)}
.drawer h2{font-family:var(--fbig);font-weight:900;text-transform:none;font-size:40px;letter-spacing:-.01em;line-height:1.02}
.drawer .bio{font-family:var(--fcond);font-size:11.5px;letter-spacing:.12em}
.drawer .rankline{border-radius:0;background:transparent;border:0;border-top:3px solid var(--rule);border-bottom:1px solid var(--rule);padding-inline:0}
.drawer .rankline .rk{font-family:var(--fbig);font-style:italic;font-weight:900}
.drawer .rankline .lab b{font-family:var(--fbig);font-weight:800;font-size:20px;text-transform:none;letter-spacing:0}
.drawer .note{font-family:var(--fread);font-style:italic;font-size:17px;background:transparent;border-left:3px solid var(--accent);border-radius:0}
.drawer h3{font-family:var(--fcond);font-size:11.5px;letter-spacing:.18em;border-bottom:1px solid var(--rule);padding-bottom:6px}
.trec{border-radius:0;background:transparent;border:0;border-top:2px solid var(--rule)}
.trv{font-family:var(--fbig);font-style:italic;font-weight:900}
.mpill{border-radius:0}
.chart .line{stroke-width:2}

/* ---------- article ---------- */
.article h1{font-size:clamp(38px,5.2vw,60px)}
.prose>p:first-of-type::first-letter{font-family:"Playfair Display",Georgia,serif;font-weight:900;float:left;font-size:3.55em;line-height:.86;margin:.06em .08em 0 0;color:var(--accent-ink)}
.notelink{text-decoration-color:var(--accent)}
.notelink .ni{background:var(--accent);color:#fff}
.popnote{font-family:var(--fui);border-radius:0;border:1px solid var(--rule);border-left:3px solid var(--accent)}
.listcard{border-radius:0;background:transparent;border:1px solid var(--rule);border-left:4px solid var(--accent)}
.listcard .t{font-family:var(--fbig);font-weight:800}
.artfoot{border-top:3px double var(--rule)}
.arow{border-top:1px solid var(--line)}
.atitle{font-family:var(--fbig);font-weight:800;font-size:22px;letter-spacing:-.005em}
.ayear{font-family:var(--fbig);font-style:italic;font-weight:900}

/* ---------- studio ---------- */
.snav .brand{font-family:var(--fbig);font-weight:900}
.snav .sub{color:var(--accent-ink)}
.snav a,.bsw,.tile,.stable,.banner,.sheet,.pill,.field input,.field select,.field textarea,.cellin,.introta{border-radius:0}
.tile .v{font-family:var(--fbig);font-style:italic;font-weight:900}
.stop h1,.sheet h2{font-family:var(--fbig);text-transform:none;letter-spacing:0;font-weight:800}

@media (max-width:720px){
  .top .in{grid-template-columns:minmax(0,1fr) auto auto;column-gap:10px}
  .gsearch{margin-right:0}
  #studiolink{grid-column:2 / 4}
}

/* ================= Wire: what changes from Press Box ================= */
html body{background-image:linear-gradient(var(--gridline) 1px,transparent 1px),linear-gradient(90deg,var(--gridline) 1px,transparent 1px)!important;background-size:44px 44px!important;background-attachment:fixed!important}

/* mono "wire" labels: tighter spacing than Franklin needed */
.kick,.crumb,.byline,.card .foot,.tab,.chip,.btn,.epill,.tagpill,.ghead,.prow .sub,.drawer .bio,.drawer h3,.sh .cnt,
.clickhint,.xlink .xk,.stat small,.hm .lab,.trl,.trp,.meta,.adate,.asp{letter-spacing:.07em}
.kick{font-size:11px;font-weight:600}
.tab{font-size:12px;font-weight:600}
.btn{font-weight:600;font-size:11.5px}
.mini .r,.board,.hmchip,.mpill{font-family:var(--fui)}
.mini .r{font-weight:500}
.prow .sub,.byline,.crumb{font-size:11px}
.epill{font-size:12px}

/* masthead: blue ball, blue rule under the double rule, glow at night */
.wordmark svg circle,.bpo circle{fill:var(--ball)}
:root[data-mode="dark"] .wordmark svg circle,:root[data-mode="dark"] .bpo circle{filter:drop-shadow(0 0 3px rgba(255,122,26,.9))}
.top::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;
  background:linear-gradient(90deg,transparent 0%,var(--volt) 18%,var(--volt-hi) 50%,var(--volt) 82%,transparent 100%);box-shadow:var(--rglow)}
.navrow{box-shadow:0 1px 0 0 transparent}
.tab:hover{color:var(--accent-ink)}
.tab.active{color:var(--accent-ink);box-shadow:inset 0 -2px 0 var(--volt);text-shadow:var(--tglow)}
.chip.active,.epill.active{background:var(--volt);border-color:var(--volt);color:#fff}
:root[data-mode="light"] .epill.active{background:var(--ink);border-color:var(--ink);color:var(--page)}

/* buttons: ink by day, blue by night */
.btn{border-color:var(--rule);color:var(--ink)}
.btn:hover{background:var(--ink);color:var(--page);border-color:var(--ink)}
.btn.primary{background:var(--ink);border-color:var(--ink);color:var(--page)}
.btn.primary:hover{background:var(--volt);border-color:var(--volt);color:#fff}
:root[data-mode="dark"] .btn.primary{background:linear-gradient(135deg,#FF7A1A,#D9480F);border-color:transparent;color:#fff;box-shadow:0 6px 22px -8px rgba(255,122,26,.8)}
:root[data-mode="dark"] .btn:hover{background:var(--volt);border-color:var(--volt);color:#fff}

/* section heads + story cards: colours only (layout from Basic) */
.card .kick .k,.hero .kick,.hero .kick .sp,.xlink .xk{color:var(--accent-ink)}
.mini .r .n{color:var(--accent-ink);text-shadow:var(--tglow)}

/* lead story */
.hero h1{text-shadow:var(--tglow)}
.hero .strip .n{color:var(--accent-ink)}

/* headlines, rules, drop cap */
h1.ltitle,.article h1{text-shadow:var(--tglow)}
.lhead .rule,.article .rule{background:var(--volt);box-shadow:var(--rglow)}
.crumb .clbl::before,.byline .bi.sep::before{background:var(--volt);box-shadow:var(--rglow)}
.prose>p:first-of-type::first-letter{color:var(--volt);text-shadow:var(--tglow)}
.prose sup.fn a{color:var(--accent-ink)}
.notelink{text-decoration-color:var(--volt)}
.notelink .ni{background:var(--volt);color:#fff}
.popnote{border-left-color:var(--volt)}
.listcard{border-left-color:var(--volt)}
.drawer .note{border-left-color:var(--volt)}

/* ranked rows: blue italic numbers for the top three */
.stat b,.delta{font-family:var(--fcond);font-weight:600}
.stat b{font-size:14.5px}
.delta{font-size:13.5px}
.prow.click:hover{background:var(--accent-soft)}
.sectab.active{border-bottom-color:var(--volt);text-shadow:var(--tglow)}

.clickhint{background:var(--volt);color:#fff}
.clickhint::before{border-top-color:var(--volt)}
.clickhint .chx{color:#fff}

/* drawer */
.drawer{border-left-color:var(--rule);box-shadow:-2px 0 20px rgba(255,122,26,.18),-20px 0 60px rgba(0,0,0,.3)}
.drawer .rankline .rk{color:var(--accent-ink);text-shadow:var(--tglow)}
.chart .line{filter:drop-shadow(0 0 3px rgba(255,122,26,.5))}
.scrim,.sheetscrim{background:rgba(3,7,20,.66)}
.trv{color:var(--ink)}


/* studio */
.snav .sub{color:var(--accent-ink)}

@media (max-width:560px){
  .top .in{grid-template-columns:auto minmax(0,1fr) auto;column-gap:10px}
  .wordmark{gap:8px}
  .wordmark b{font-size:27px}
  .wordmark svg{width:28px;height:28px}
  .gsearch{width:auto;min-width:0;justify-self:stretch}
}

/* ---- Article body, tables and standings keep the Classic type and shapes
   (Sam, 2026-09-22: Wire's article title, big display pieces and colours stay;
   the reading text, section headings, chart captions, tables and the standings
   rows go back to how they looked before). Only the fonts are re-pointed here —
   the rules themselves come from styles.css untouched. ---- */
.prose,.tablewrap,.stats,.stand,.stcut{
  --fbig:"Big Shoulders Display","Barlow Condensed",Impact,"Arial Narrow",sans-serif;
  --fcond:"Barlow Condensed","Arial Narrow",sans-serif;
  --fui:"Barlow",system-ui,-apple-system,"Segoe UI",sans-serif;
  --r:12px;
  font-family:var(--fui)}

/* ---- Rank numbers and player initials (Sam, 2026-09-22): every rank number is
   the same colour (no highlight for 1–3), numbers in Oswald, initials in
   Libre Franklin. ---- */
.prow .num,.mini .r .n,.drawer .rankline .rk,td.rankcell{font-family:"Oswald","Barlow Condensed","Arial Narrow",sans-serif;font-style:normal;text-shadow:none}
.prow .num{font-weight:600;font-size:28px;letter-spacing:.01em}
.prow.top3 .num,tr.top3 td.rankcell{color:var(--muted)}
.mini .r .n{font-weight:600;font-size:16px}
.drawer .rankline .rk{font-weight:600;font-size:54px;letter-spacing:.01em}
@media (max-width:560px){.prow .num{font-size:23px}}
.ava{font-family:"Libre Franklin",system-ui,sans-serif;font-weight:700;letter-spacing:.02em}

/* ================= Flip: the colour swap on top of Wire ================= */
/* The Basketball sport colour used to be swapped to blue #1A3CFF here; on
   2026-09-24 Sam asked for the board-card previews (halftone, steps, ladder —
   the only places it still showed) to go back to orange, so the swap is gone. */

/* orange is too light for white text: things Wire filled with blue + white
   text are orange + ink text here */
.chip.active{background:#FF7A1A;border-color:#FF7A1A;color:var(--ink)}
.btn.primary:hover{background:#FF7A1A;border-color:#FF7A1A;color:var(--ink)}
.clickhint{color:var(--ink)}
.clickhint .chx{color:var(--ink)}
.notelink .ni{color:var(--ink)}

/* ---- Sam, 2026-09-22: the drop cap is black like the text; the crumb's sport
   dot and board-type marker are both plain circles in the accent colour
   (orange in Flip) — no colour-coding by sport ---- */
.prose>p:first-of-type::first-letter{color:var(--ink)!important;text-shadow:none!important}
.crumb .sd{background:var(--accent)!important;width:7px;height:7px}
.crumb .clbl::before{background:var(--accent);border-radius:50%;width:7px;height:7px;box-shadow:none;vertical-align:0}

/* ---- Sam, 2026-09-24: the front-page lead's top stripe and diagonal panel are
   orange, not the swapped sport blue ---- */
.hero::after{background:#FF7A1A}
.hero::before{background:linear-gradient(112deg,transparent 0 56%,color-mix(in srgb,#FF7A1A 30%,transparent) 56% 100%)}

/* ---- Sam, 2026-09-24: card preview rows (standings teams and records) use the
   same serif as the other card previews ---- */
.card .mini .r{font-family:var(--fread);font-weight:400}

/* ---- Sam, 2026-09-24: card top stripes are orange (hover included) ---- */
.card,.card:hover{border-top-color:#FF7A1A}

/* ---- Sam, 2026-09-24: on Latest / Articles / Boards the wordmark sits top left;
   it stays centred while reading an article or a board ---- */
@media (min-width:721px){
  html[data-page="index"] .wordmark{grid-column:1;justify-self:start}
  html[data-page="index"] #studiolink{grid-column:2;justify-self:center}
}

/* ---- Sam, 2026-09-24: the big rank number in a pop-out is black like the text;
   in a team pop-out the team name is the team colour ---- */
.drawer .rankline .rk{color:var(--ink)!important}
.drawer.team h2{color:var(--tc,var(--ink))}
