:root{--ink:#0f1d19;--ink2:#162a24;--line:#2c443c;--paper:#f4ecd4;--dim:#a9b3a2;--gold:#d7b450;--d:#5b8fd9;--r:#d9604f;--i:#9b7fd1;--o:#8a8a8a}
*{box-sizing:border-box}html{background:var(--ink)}body{margin:0;color:var(--paper);font:16px/1.55 Georgia,'Times New Roman',serif;-webkit-text-size-adjust:100%}
a{color:var(--gold)}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.shell{max-width:1060px;margin:0 auto;padding:0 18px 48px}
.masthead{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 0;border-bottom:1px solid var(--line);font:11px/1.6 'Courier New',monospace;letter-spacing:.12em;color:var(--dim)}
.masthead a{color:var(--dim)}
.kicker{font:11px/1.7 'Courier New',monospace;text-transform:uppercase;letter-spacing:.14em;color:var(--gold);margin:0 0 8px}
.micro{font:12px/1.6 'Courier New',monospace;color:var(--dim)}
.hero{padding:28px 0 8px}.hero h1{font-weight:400;font-size:clamp(42px,9vw,76px);line-height:1;margin:0 0 14px}.hero h1 em{color:var(--gold)}
.next{font-size:19px;margin:0 0 4px}
.block{margin-top:34px}.section{font-weight:400;font-size:24px;margin:0 0 12px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.note{margin:8px 0 0}
.chambers{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.chamber{background:var(--ink2);border:1px solid var(--line);padding:16px 18px 14px}
.chamber.called.p-D{border-color:var(--d)}.chamber.called.p-R{border-color:var(--r)}
.big{margin:0 0 8px}.big-val{font-size:clamp(28px,5vw,40px);line-height:1.1}
.bar{display:block;width:100%;height:6px;margin:6px 0}.b-D{fill:var(--d)}.b-R{fill:var(--r)}.b-I{fill:var(--i)}.b-other{fill:#3a2a2a}.b-mid{stroke:var(--paper);stroke-width:.6;opacity:.5}
.race .bar .b-other,.chamber .bar .b-other{fill:var(--r);opacity:.55}
.meta{display:flex;flex-wrap:wrap;gap:4px 14px;margin:6px 0 4px;font:12px/1.6 'Courier New',monospace;color:var(--dim)}
.delta.up{color:#9fc3f0}.delta.down{color:#f0a89c}
.spark{display:block;width:100%;height:30px}.spark .line{fill:none;stroke:var(--gold);stroke-width:1.4;vector-effect:non-scaling-stroke}.spark .mid{stroke:var(--line);stroke-dasharray:2 3;vector-effect:non-scaling-stroke}
.big-spark{height:44px}
.cali{display:inline-block;font:12px/1.6 'Courier New',monospace;border:1px solid var(--line);padding:0 6px;color:var(--paper)}.cali.right{border-color:#6fae7a;color:#a9dcb0}.cali.wrong{border-color:#c46b5f;color:#f0a89c}
.chamber .cali{margin-top:6px}
.timeline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.wave{background:var(--ink2);border:1px solid var(--line);padding:10px 12px}.wave.past{opacity:.62}.wave.now{opacity:1;border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}
.wave-head{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 2px}.wave-head strong{font-weight:400;font-size:20px}
.wave-states{font-size:13px;color:var(--dim);margin:0 0 6px}
.chips{display:flex;flex-wrap:wrap;gap:4px}.chip{font:11px/1.7 'Courier New',monospace;padding:0 6px;border:1px solid var(--line);color:var(--paper)}
.chip.s-counting,.chip.s-sure{border-color:var(--gold)}.chip.s-called.p-D{background:var(--d);border-color:var(--d);color:#fff}.chip.s-called.p-R{background:var(--r);border-color:var(--r);color:#fff}.chip.s-called.p-I{background:var(--i);border-color:var(--i);color:#fff}
.feed{list-style:none;margin:0;padding:0}.entry{border-left:3px solid var(--line);padding:8px 0 10px 14px;margin:0 0 8px}
.entry.k-call.p-D{border-color:var(--d)}.entry.k-call.p-R{border-color:var(--r)}.entry.k-call.p-I{border-color:var(--i)}.entry.k-correction{border-color:var(--gold)}
.entry.fresh{animation:fresh 2.5s ease-out}@keyframes fresh{from{background:rgba(215,180,80,.18)}to{background:transparent}}
@media(prefers-reduced-motion:reduce){.entry.fresh{animation:none}}
.entry-head{display:flex;gap:10px;align-items:center;margin:0;font:12px/1.6 'Courier New',monospace;color:var(--dim)}
.tag{font:10px/1.6 'Courier New',monospace;letter-spacing:.08em;border:1px solid var(--dim);padding:0 5px}
.entry-text{margin:3px 0 2px;font-size:17px}.src{font:12px/1.6 'Courier New',monospace}
.empty{color:var(--dim);font-style:italic;list-style:none}
.races-head{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:10px}
.races-head .section{border:0;margin:0;padding:0}
.tabs{display:flex;gap:4px}.tab{background:transparent;color:var(--dim);border:1px solid var(--line);border-bottom:0;font:13px/1 'Courier New',monospace;padding:10px 12px;min-height:40px;cursor:pointer}.tab[aria-selected=true]{color:var(--ink);background:var(--paper);border-color:var(--paper)}
.score{font-size:15px;margin:6px 0 12px;color:var(--paper)}
.races{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.race{background:var(--ink2);border:1px solid var(--line);padding:12px 14px 8px}
.race.s-counting,.race.s-sure{border-color:#6b5a2c}.race.s-called.p-D{border-color:var(--d)}.race.s-called.p-R{border-color:var(--r)}.race.s-called.p-I{border-color:var(--i)}.race.s-called{opacity:.92}
.race-top{display:flex;justify-content:space-between;gap:12px}
.race-name{display:flex;flex-direction:column}.race-name strong{font-weight:400;font-size:18px}.matchup{font-size:13px;color:var(--dim)}
.race-price{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.pct{font-size:24px;line-height:1.1}.who{font:11px/1.5 'Courier New',monospace;color:var(--dim);max-width:140px}
.stat{color:var(--paper)}.race.s-counting .stat,.race.s-sure .stat{color:var(--gold)}.stale{color:#f0a89c}
.foot{margin-top:40px;padding-top:12px;border-top:1px solid var(--line);font-size:14px;color:var(--dim)}
@media(max-width:620px){.chambers{grid-template-columns:1fr}.shell{padding:0 14px 40px}.timeline{grid-template-columns:1fr 1fr}.races{grid-template-columns:1fr}.tab{padding:10px 8px}}
@media(max-width:380px){.timeline{grid-template-columns:1fr}}
.entry.withdrawn .entry-text{text-decoration:line-through;color:var(--dim)}.entry.withdrawn{border-color:var(--line)}
.wave-head strong{white-space:nowrap}.wave-head{gap:8px;flex-wrap:wrap}
