

@font-face{font-family:"Sora";src:url("/fonts/sora-variable.woff2") format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Manrope";src:url("/fonts/manrope-variable.woff2") format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url("/fonts/ibm-plex-mono-400.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url("/fonts/ibm-plex-mono-500.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url("/fonts/ibm-plex-mono-600.woff2") format("woff2");font-weight:600;font-display:swap}
:root{
  --bg:#0A0B0E;--surface:#131318;--surface-2:#1A1A20;
  --line:rgba(233,231,226,.10);--line-2:rgba(233,231,226,.22);
  --text:#E9E7E2;--muted:#9A9CA3;--dim:#5C5E66;
  --accent:#FF4FE0;--accent-soft:rgba(255,79,224,.14);--way:#D7EDF2;
  --good:#3DDC84;--caution:#F5B83D;
  --bar:rgba(233,231,226,.26);
  --head:"Sora",system-ui,sans-serif;--body:"Manrope",system-ui,sans-serif;--mono:"IBM Plex Mono",ui-monospace,monospace;
  --seg:215,237,242;--s1:8px;--s2:16px;--s3:24px;--s4:40px;--s5:64px;
  color-scheme:dark;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg)}
body{font:400 1rem/1.6 var(--body);color:var(--text);-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4{font-family:var(--head);margin:0;letter-spacing:-.01em}
a{color:var(--text)}
p{margin:0}
.mono{font-family:var(--mono)}
.wrap{max-width:1200px;margin:0 auto;padding:0 var(--s2)}
.narrow{max-width:700px;margin:0 auto;padding:0 var(--s2)}


.h-lead{font:700 clamp(1.875rem,3.4vw + .8rem,2.75rem)/1.05 var(--head);letter-spacing:-.02em}
.h-sec{font:600 1.5rem/1.2 var(--head)}
.h-card{font:600 1.1875rem/1.25 var(--head)}
.stand{font:500 1.125rem/1.5 var(--body);color:var(--muted)}
.kick{font:500 .72rem/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.cap{font:400 .72rem/1.5 var(--mono);letter-spacing:.04em;color:var(--muted)}


.banner{background:var(--surface-2);border-bottom:1px solid var(--line);font:500 .68rem/1.5 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--caution);text-align:center;padding:6px var(--s2)}
.site-head{border-bottom:1px solid var(--line);background:var(--bg)}
.site-head .wrap{display:flex;align-items:center;gap:var(--s3);padding-top:14px;padding-bottom:14px}
.brand{font:700 1rem var(--head);text-decoration:none;display:flex;align-items:center;gap:10px;white-space:nowrap}
.brand i{width:9px;height:9px;background:var(--way);transform:rotate(45deg);display:inline-block}
.nav{display:flex;gap:var(--s3);margin-left:auto;overflow-x:auto;white-space:nowrap;scrollbar-width:none}
.nav::-webkit-scrollbar{display:none}
.nav a{font:500 .74rem var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--muted);text-decoration:none;padding:6px 0}
.nav a.on,.nav a:hover{color:var(--text)}
.pill{display:inline-block;font:600 .66rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--way);border:1px solid rgba(215,237,242,.35);padding:5px 8px;border-radius:3px}
.stamp{display:inline-block;font:600 .62rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--caution);border:1px solid rgba(245,184,61,.55);padding:4px 7px;border-radius:3px;white-space:nowrap}
.src{font:400 .7rem/1.55 var(--mono);color:var(--muted);margin-top:var(--s2)}
.src b{font-weight:500;color:var(--text)}
.btn{display:inline-block;background:var(--accent);color:#1A0313;font:700 .9rem var(--body);padding:12px 18px;border-radius:7px;text-decoration:none;border:0;cursor:pointer}
.btn.ghost{background:none;color:var(--text);border:1px solid var(--line-2)}
.card{background:var(--surface);border:1px solid var(--line);border-radius:10px}
.pad{padding:var(--s3)}
.foot{border-top:1px solid var(--line);margin-top:var(--s5);padding:var(--s4) 0;font:400 .74rem/1.6 var(--mono);color:var(--muted)}
.foot .wrap{display:flex;justify-content:space-between;gap:var(--s2);flex-wrap:wrap}
.foot a{color:var(--muted)}


.cond{background:var(--surface);border-bottom:1px solid var(--line)}
.cond .wrap{display:flex;align-items:center;gap:var(--s2);padding-top:10px;padding-bottom:10px;overflow-x:auto;scrollbar-width:none;white-space:nowrap}
.cond .wrap::-webkit-scrollbar{display:none}
.chip{display:inline-flex;align-items:center;gap:8px;font:500 .74rem var(--mono);color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:5px 9px}
.chip i{width:7px;height:7px;border-radius:50%;background:var(--dim);display:inline-block}
.chip b{color:var(--text);font-weight:600}


.nl{display:flex;gap:var(--s1);flex-wrap:wrap;margin-top:var(--s2)}
.nl input{flex:1;min-width:0;background:var(--bg);border:1px solid var(--line-2);color:var(--text);padding:12px;border-radius:7px;font:inherit}


.chart{padding:var(--s3)}
.chart h3{font:600 1.1875rem/1.25 var(--head)}
.chart h3 em{font-style:normal;color:var(--accent)}
.legend{display:flex;flex-wrap:wrap;gap:6px var(--s2);margin:var(--s2) 0 var(--s1);font:400 .7rem var(--mono);color:var(--muted)}
.legend span{display:inline-flex;align-items:center;gap:6px}
.sw{width:12px;height:8px;border-radius:2px;background:var(--bar);display:inline-block}
.sw.hi{background:var(--accent)}
.sw.tick{width:2px;height:12px;background:var(--text)}
.sw.bench{width:14px;height:0;border-top:2px dashed var(--caution);border-radius:0;background:none}
.pbars .r{display:grid;grid-template-columns:2.6rem 1fr 3.6rem;gap:12px;align-items:center;padding:7px 0;font:500 .8rem var(--mono)}
.pbars .r b{font-weight:600;color:var(--text)}
.pbars .t{position:relative;height:16px}
.pbars .t .f{position:absolute;left:0;top:0;bottom:0;background:var(--bar);border-radius:0 3px 3px 0}
.pbars .r.hi .f{background:var(--accent)}
.pbars .t .j{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--text);opacity:.8}
.pbars .t .bm{position:absolute;top:-8px;bottom:-8px;border-left:2px dashed var(--caution)}
.pbars .v{text-align:right;color:var(--text)}

.cause{margin:var(--s2) 0}
.cause .h{display:flex;justify-content:space-between;font:500 .78rem var(--mono);margin-bottom:6px}
.cause .h span{color:var(--muted)}
.cause .bar{display:flex;gap:2px;height:22px}
.cause .bar i{display:block;border-radius:2px}
.cause .k{display:flex;flex-wrap:wrap;gap:4px var(--s2);margin-top:8px;font:400 .72rem var(--mono);color:var(--muted)}
.cause .k span{display:inline-flex;align-items:center;gap:6px}
.cause .k u{width:9px;height:9px;border-radius:2px;display:inline-block}


.rtbl{width:100%;border-collapse:collapse;font:500 .84rem var(--mono)}
.rtbl th{font:500 .66rem var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:left;padding:8px 6px;border-bottom:1px solid var(--line-2)}
.rtbl td{padding:11px 6px;border-bottom:1px solid var(--line);vertical-align:middle}
.rtbl .rk{width:2.2rem;color:var(--muted)}
.rtbl .hub b{font-weight:600}
.rtbl .hub span{display:block;font:400 .72rem var(--body);color:var(--muted)}
.rtbl .num{text-align:right;white-space:nowrap}
.rtbl .bcell{width:34%}
.rtbl .tr{height:8px;background:var(--surface-2);border-radius:2px;position:relative}
.rtbl .tr i{position:absolute;left:0;top:0;bottom:0;background:var(--accent);border-radius:2px}
.rtbl tr.mut .tr i{background:var(--bar)}
.mv{white-space:nowrap}
.mv.up{color:var(--caution)}
.mv.dn{color:var(--good)}
.mv.eq{color:var(--muted)}
.ptbl{width:100%;border-collapse:collapse;font:500 .84rem var(--mono)}
.ptbl th{font:500 .66rem var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:left;padding:8px 6px;border-bottom:1px solid var(--line-2)}
.ptbl td{padding:10px 6px;border-bottom:1px solid var(--line)}
.ptbl td.n{text-align:right}


.th{height:84px;display:flex;align-items:flex-end;gap:4px;padding:0}
.th i{display:block;flex:1;background:var(--bar);border-radius:2px 2px 0 0;min-width:3px}
.th i.hi{background:var(--accent)}
.th i.up{background:var(--caution)}
.th i.dn{background:var(--good)}
.th.rows{flex-direction:column;align-items:stretch;gap:5px;justify-content:center}
.th.rows i{height:9px;flex:none;border-radius:0 2px 2px 0}


.ring{background-image:radial-gradient(circle at 82% 8%,transparent 0 118px,rgba(233,231,226,.07) 119px 120px,transparent 121px 228px,rgba(233,231,226,.07) 229px 230px,transparent 231px 350px,rgba(233,231,226,.07) 351px 352px,transparent 353px),linear-gradient(rgba(233,231,226,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(233,231,226,.045) 1px,transparent 1px);background-size:auto,48px 48px,48px 48px}

.only-s{display:none}
@media(max-width:700px){.only-l{display:none!important}.only-s{display:block}}


.scard{display:flex;flex-direction:column;gap:12px;padding:20px;text-decoration:none;color:inherit}
.scard:hover{border-color:var(--line-2)}
.sc-top{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.sc-sum{color:var(--muted);font-size:.9375rem;line-height:1.5}
.credits{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4);margin-top:var(--s3);padding-top:var(--s2);border-top:1px solid var(--line)}
.credits div{display:flex;flex-direction:column;gap:2px}
.credits b{font:500 .85rem var(--body)}
.art-hero{padding:var(--s4) 0 var(--s3);border-bottom:1px solid var(--line)}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s2)}
.tile{padding:20px;display:flex;flex-direction:column;gap:6px}
.tile b{font:600 2rem/1 var(--mono);color:var(--text)}
.tile span{color:var(--muted);font-size:.9rem;line-height:1.45}
.prose{padding-top:var(--s4)}
.prose h2{margin:var(--s4) 0 12px}
.prose h2:first-child{margin-top:0}
.prose p{color:var(--text);font-size:1.0625rem;line-height:1.7;max-width:66ch}
.prose .wide{margin-top:var(--s3)}
.sources{margin-top:var(--s4);padding-top:var(--s3);border-top:1px solid var(--line);font-size:.9rem;color:var(--muted)}
.sources ul{margin:10px 0 0;padding-left:20px;line-height:1.6}
.two{display:grid;grid-template-columns:1fr 1fr;gap:var(--s3);align-items:start}
@media(max-width:820px){.tiles{grid-template-columns:1fr}.two{grid-template-columns:1fr}.tile b{font-size:1.75rem}}


.rnotes{margin-top:var(--s2);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px var(--s4);font-size:.8125rem;line-height:1.55;color:var(--muted)}
.rnotes p{margin:0}
.rnotes b{color:var(--text);font-weight:600}
.rnotes a{color:var(--text)}
.rnotes .src{grid-column:1;margin-top:0}
.rnotes .corr{grid-column:2;grid-row:1 / span 2;text-align:right;color:var(--text);font:500 .75rem/1.5 var(--mono)}
@media(max-width:900px){.rnotes{grid-template-columns:1fr}.rnotes .corr{grid-column:1;grid-row:auto;text-align:left}}
.rnotes.compact{grid-template-columns:1fr}
.rnotes.compact .corr{grid-column:1;grid-row:auto;text-align:left;margin-top:6px}
.rnotes.compact .src{grid-column:1}
.th.dense{gap:2px}
.th .tb{display:flex;flex-direction:column;align-items:flex-start;gap:6px;justify-content:flex-end;height:104px;width:96px}
.th .tb i{display:block;width:100%;flex:none;background:var(--bar);border-radius:2px 2px 0 0;max-height:70px}
.th .tb i.hi{background:var(--accent)}
.th .tb span{font:400 .66rem/1.35 var(--mono);color:var(--muted)}
.rtbl .grp th{border-bottom:0;padding:8px 6px 0;font-size:.6rem;color:var(--muted)}
.rtbl .grp th.gc{border-top:1px solid var(--line-2);padding-top:6px;color:var(--text)}
.th .tb{height:112px}
.th .tb i{max-height:56px}
.prose .src{font:400 .7rem/1.55 var(--mono);color:var(--muted);max-width:none}
.prose .cap{font:400 .72rem/1.5 var(--mono);color:var(--muted)}
.prose .sc-sum,.prose .rnotes p{max-width:none}


:root{--hb-fill:rgba(215,237,242,.14);--hb-line:rgba(215,237,242,.45);--hb-dot:#D7EDF2;--hb-halo:#0A0B0E}
.hb{display:inline-block;vertical-align:middle;flex:none}
.hb .us{fill:var(--hb-fill);stroke:var(--hb-line);stroke-width:.8;stroke-linejoin:round}
.hb circle{fill:var(--hb-dot);stroke:var(--hb-halo);stroke-width:1}
.hb.hi circle{fill:#FF4FE0;stroke:var(--hb-halo)}
.hubrow{display:flex;align-items:center;gap:10px}
.hubrow b{display:block}
.sc-hubs{display:flex;flex-wrap:wrap;gap:8px}
.hbc{display:inline-flex;align-items:center;gap:6px;font:600 .72rem var(--mono);color:var(--text)}
.hbc.big{gap:8px;font-size:.8rem;min-width:88px}
.hbc.big.x2 .hb{width:76px;height:48px}
.tk b{display:flex;align-items:center;gap:8px}


:root{--rd-bg:#131318;--rd-ink:#E9E7E2;--rd-line:rgba(233,231,226,.6)}
.rd{display:inline-block;vertical-align:middle;flex:none}
.rd .fr{fill:var(--rd-bg);stroke:var(--rd-line);stroke-width:1.6}
.rd .mt{fill:var(--rd-ink)}
.rd .ln{fill:none;stroke:var(--rd-ink);stroke-linecap:round;stroke-linejoin:round}
.rd .hole{fill:var(--rd-bg)}
.rd text{fill:var(--rd-ink);font:700 11.4px Sora,sans-serif;letter-spacing:.02em}
.rd.hi{--rd-bg:#FF4FE0;--rd-ink:#1A0313;--rd-line:#1A0313}
.hbc:has(.rd){gap:0}
.hbc.big:has(.rd){min-width:0}
.hbc.big .rd{width:46px;height:46px}
.hbc.big.x2 .rd{width:78px;height:78px}


.em{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;font:400 21px/1 "Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;flex:none;border-radius:50%}
.em img{width:24px;height:24px;display:block}
.em.hi{box-shadow:0 0 0 2px #FF4FE0}
.hbc .em{width:26px;height:26px;font-size:19px}
.hbc.big .em{width:30px;height:30px;font-size:23px}
.tk b .em{width:26px;height:26px;font-size:19px}
.rtbl .hub .hubrow>.em{display:inline-flex;font:400 21px/1 "Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;color:inherit;margin:0}
