:root{--bg:#f7f8fb;--panel:#fff;--panel-2:#f0f2f7;--text:#0f172a;--muted:#64748b;--line:#e2e8f0;--empty:#e5e7eb;--no-race:#f3f4f6;--counting:#cbd5e1;--toss:#a8a29e;--d-1:#84a7f4;--d-2:#5787f0;--d-3:#2563eb;--d-hold:#1e3a8a;--r-1:#eb8484;--r-2:#e45858;--r-3:#dc2626;--r-hold:#7f1d1d;--accent:#6366f1;--map-stroke:#fff;--shadow:0 8px 30px #0f172a14;--ease:cubic-bezier(.22, 1, .36, 1);--spring:cubic-bezier(.34, 1.56, .64, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#0b0f17;--panel:#121826;--panel-2:#1a2132;--text:#e5e9f2;--muted:#8b95a8;--line:#232b3d;--empty:#2a3244;--no-race:#171d2a;--counting:#475569;--map-stroke:#0b0f17;--shadow:0 8px 30px #0006;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font:14px/1.45 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;color:inherit;cursor:pointer}.muted{color:var(--muted)}.small{font-size:12px}.d-text{color:var(--d-3)}.r-text{color:var(--r-3)}.app{flex-direction:column;min-height:100vh;display:flex}.topbar{border-bottom:1px solid var(--line);background:var(--panel);z-index:20;align-items:center;gap:20px;padding:12px 20px;display:flex;position:sticky;top:0}.brand{letter-spacing:-.02em;color:var(--text);align-items:center;gap:10px;font-size:18px;font-weight:800;display:flex}.brand:hover{text-decoration:none}.elections{gap:4px;display:flex}.elections a{color:var(--muted);border-radius:8px;padding:6px 10px;font-weight:600}.elections a.on{background:var(--panel-2);color:var(--text)}.elections a:hover{color:var(--text);text-decoration:none}.status{align-items:center;gap:8px;margin-left:auto;display:flex;position:relative}.pill{background:var(--panel-2);border:1px solid var(--line);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.pill.sim{color:#92400e;background:#fef3c7;border-color:#fde68a}@media (prefers-color-scheme:dark){.pill.sim{color:#fcd34d;background:#3a2a06;border-color:#5c430b}}.pulse{background:#22c55e;border-radius:50%;width:8px;height:8px;animation:2s infinite pulse;box-shadow:0 0 #22c55e99}.pill.err .pulse{background:#f59e0b}@keyframes pulse{0%{box-shadow:0 0 #22c55e99}70%{box-shadow:0 0 0 8px #22c55e00}to{box-shadow:0 0 #22c55e00}}.sources-pop{background:var(--panel);border:1px solid var(--line);width:340px;box-shadow:var(--shadow);z-index:30;border-radius:12px;padding:14px;position:absolute;top:40px;right:0}.sources-pop ul{gap:6px;margin:10px 0;padding:0;list-style:none;display:grid}.sources-pop li{grid-template-columns:14px 1fr;column-gap:6px;display:grid}.sources-pop li.ok span{color:#22c55e}.sources-pop li.bad span{color:#f59e0b}.sources-pop em{color:var(--muted);grid-column:2;font-size:12px;font-style:normal}.sources-pop small{color:var(--muted)}.controls{flex-wrap:wrap;align-items:center;gap:12px;padding:12px 20px;display:flex}.seg{background:var(--panel);border:1px solid var(--line);border-radius:10px;gap:2px;padding:3px;display:inline-flex;position:relative}.seg button{z-index:1;color:var(--muted);transition:color .3s var(--ease), background .2s;background:0 0;border:0;border-radius:7px;padding:6px 12px;font-weight:600;position:relative}.seg button.on{color:var(--bg)}.seg-pill{background:var(--text);transition:transform .45s var(--ease), width .45s var(--ease);border-radius:7px;position:absolute;top:3px;bottom:3px;left:3px;box-shadow:0 2px 8px #0f172a2e}.seg button:not(.on):hover{color:var(--text);background:var(--panel-2)}.sim-ctl{align-items:center;gap:8px;margin-left:auto;display:flex}.switch{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-weight:600;display:inline-flex}.switch input{accent-color:var(--accent);width:16px;height:16px}.sim-ctl input[type=range]{width:160px;accent-color:var(--accent)}.icon-btn{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:4px 10px;line-height:1.2}.icon-btn:hover{background:var(--panel-2)}.stage{flex:1;grid-template-columns:minmax(0,1fr) 360px;gap:16px;padding:0 20px 20px;display:grid}.map-col{flex-direction:column;gap:12px;min-width:0;display:flex}.balance-wrap,.map-wrap,.key-races,.panel,.house-block{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px}.balance-wrap{padding:14px 18px}.balance-head{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:8px;display:flex}.balance .side{align-items:baseline;gap:8px;display:flex}.balance .side .n{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:34px;font-weight:800;line-height:1}.balance .side.d .n{color:var(--d-3)}.balance .side.r .n{color:var(--r-3)}.balance .side .who{color:var(--muted);font-weight:600}.balance .side.win .who:after{content:" ✓"}.balance .mid{text-align:center;flex-direction:column;display:flex}.balance .mid .ttl{font-weight:700}.balance .mid .maj{color:var(--muted);font-size:12px}.bar{background:var(--empty);border-radius:6px;height:18px;display:flex;position:relative;overflow:hidden}.bar span{height:100%;transition:width .9s var(--ease)}.bar .seg-d{transform-origin:0;animation:grow-x 1.1s var(--ease) backwards}.bar .seg-r{transform-origin:100%;animation:grow-x 1.1s var(--ease) backwards}@keyframes grow-x{0%{transform:scaleX(0)}}.bar .toss{background:var(--empty)}.majline{background:var(--text);width:2px;position:absolute;top:-3px;bottom:-3px;transform:translate(-1px)}.toss-label{text-align:center;color:var(--muted);margin-top:4px;font-size:12px}.control-odds{margin-top:10px;font-size:13px}.map-wrap{padding:8px;position:relative}.usmap{width:100%;height:auto;display:block}.state{stroke:var(--map-stroke);transition:fill .8s var(--ease), opacity .45s var(--ease), filter .2s;animation:state-in .9s var(--ease) backwards;animation-delay:var(--d,0s)}@keyframes state-in{0%{opacity:0}}.state.has-race{cursor:pointer}.state.has-race:hover{filter:brightness(1.06)saturate(1.1)}.state.dim{opacity:.25}.state.selected{stroke:var(--text)}.state.flash{animation:flash .9s var(--ease) 3}@keyframes flash{50%{filter:brightness(1.6)}}.mesh{fill:none;stroke:var(--map-stroke);stroke-linejoin:round;pointer-events:none}.counties path{stroke:var(--map-stroke);stroke-opacity:.7;transition:fill .5s}.counties path:hover{stroke:var(--text);stroke-opacity:1}.labels text{text-anchor:middle;fill:#fff;font-weight:700}.labels .ink-dark text,.callout text.ink-dark{fill:#1e293b}.labels .abbr{font-size:11px}.labels .sub{font-size:8.5px;font-weight:600}.callout{cursor:pointer}.callout line{stroke:var(--muted);stroke-width:.6px;opacity:.5}.callout rect{stroke:var(--line)}.callout text{text-anchor:middle;fill:#fff;font-size:11px;font-weight:700}.callout:hover rect{stroke:var(--text)}.back{z-index:2;border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:6px 10px;font-weight:600;position:absolute;top:14px;left:14px}.legend{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:6px 14px;padding:4px 8px 8px;font-size:12px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend i{border:1px solid var(--line);border-radius:3px;width:12px;height:12px;display:inline-block}.hint{text-align:center;color:var(--muted);margin:0 0 8px;font-size:12px}.house-block{text-align:center;align-self:start;padding:14px}.house-block h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);text-align:left;margin:0 0 8px;font-size:13px}.hemicycle{width:100%;max-width:520px}.seat{fill:var(--empty);transition:fill .4s}.seat.d-called{fill:var(--d-3)}.seat.d-lead{fill:var(--d-1)}.seat.r-called{fill:var(--r-3)}.seat.r-lead{fill:var(--r-1)}.hemi-maj{stroke:var(--text);stroke-width:1.2px}.key-races{align-self:start;padding:14px}.key-races h3,.panel h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 8px;font-size:13px}.key-races ul{margin:0;padding:0;list-style:none}.key-races button{text-align:left;background:0 0;border:0;border-radius:8px;grid-template-rows:auto auto;grid-template-columns:12px 1fr auto;column-gap:10px;width:100%;padding:8px;display:grid}.key-races button:hover{background:var(--panel-2)}.swatch{border-radius:3px;grid-row:span 2;width:12px;height:12px;margin-top:4px}.kr-state{font-weight:700}.kr-names{grid-column:2;font-size:12px}.kr-val{font-variant-numeric:tabular-nums;grid-area:1/3/span 2;align-self:center;font-weight:700}.panel{align-self:start;max-height:calc(100vh - 140px);padding:16px;position:sticky;top:72px;overflow:auto}.panel-head{justify-content:space-between;align-items:flex-start;display:flex}.panel h2{letter-spacing:-.02em;margin:0 0 6px;font-size:24px}.eyebrow{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:12px;font-weight:600}.panel section{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.chips{flex-wrap:wrap;gap:6px;margin:6px 0;display:flex}.chip{background:var(--panel-2);border:1px solid var(--line);border-radius:999px;padding:3px 8px;font-size:12px;font-weight:600}.chip.rating.safe-d,.chip.rating.likely-d,.chip.rating.lean-d{background:var(--d-3);color:#fff;border-color:#0000}.chip.rating.lean-d{background:var(--d-2)}.chip.rating.safe-r,.chip.rating.likely-r,.chip.rating.lean-r{background:var(--r-3);color:#fff;border-color:#0000}.chip.rating.lean-r{background:var(--r-2)}.chip.rating.tossup{background:var(--toss);color:#fff;border-color:#0000}.note{color:var(--muted);margin:6px 0 0;font-size:13px}.cands{gap:10px;margin:0;padding:0;list-style:none;display:grid}.cand-row{align-items:center;gap:8px;display:flex}.cname{flex:1;font-weight:600}.pct{font-variant-numeric:tabular-nums;font-size:16px;font-weight:800}.check{color:#16a34a;margin-left:4px;font-size:12px}.dot{border-radius:50%;flex:none;width:10px;height:10px;display:inline-block}.dot.d{background:var(--d-3)}.dot.r{background:var(--r-3)}.dot.i{background:#a855f7}.dot.o{background:var(--toss)}.cand-bar{background:var(--panel-2);border-radius:3px;height:6px;margin-top:4px;overflow:hidden}.cand-bar span{height:100%;transition:width .6s;display:block}.cand-bar .d{background:var(--d-3)}.cand-bar .r{background:var(--r-3)}.cand-bar .i{background:#a855f7}.cand-bar .o{background:var(--toss)}.votes{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.winner .cname{color:var(--text)}.reporting{background:var(--panel-2);border-radius:2px;height:4px;margin-bottom:10px;overflow:hidden}.reporting span{background:var(--accent);height:100%;transition:width .6s;display:block}.odds{color:#fff;border-radius:6px;height:26px;font-size:12px;font-weight:700;display:flex;overflow:hidden}.odds span{white-space:nowrap;align-items:center;padding:0 8px;transition:width .6s;display:flex;overflow:hidden}.odds .d{background:var(--d-3)}.odds .r{background:var(--r-3);justify-content:flex-end}.sources{gap:4px;margin:8px 0 0;padding:0;font-size:13px;list-style:none;display:grid}.sources li{justify-content:space-between;display:flex}.poll-avg{margin:0 0 8px}table.polls{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin-bottom:6px;font-size:12px}table.polls th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);padding:4px;font-weight:600}table.polls td{border-bottom:1px solid var(--line);padding:4px}table.polls td:first-child{text-overflow:ellipsis;white-space:nowrap;max-width:130px;overflow:hidden}.pick{gap:8px;display:flex}.pick-btn{border:2px solid var(--line);background:var(--panel);border-radius:10px;flex:1;padding:8px;font-weight:700}.pick-btn.d.on{background:var(--d-3);border-color:var(--d-3);color:#fff}.pick-btn.r.on{background:var(--r-3);border-color:var(--r-3);color:#fff}.facts{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.facts div{flex-direction:column;display:flex}.districts{grid-template-columns:repeat(auto-fill,minmax(34px,1fr));gap:4px;display:grid}.district{text-align:center;background:var(--empty);border-radius:6px;padding:6px 0;font-size:11px;font-weight:700}.district.d-called{background:var(--d-3);color:#fff}.district.d-lead{background:var(--d-1)}.district.r-called{background:var(--r-3);color:#fff}.district.r-lead{background:var(--r-1)}.tooltip{z-index:50;pointer-events:none;background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px;max-width:280px;padding:8px 10px;font-size:13px;position:fixed}.foot{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px;padding:12px 20px 20px;font-size:12px;display:flex}@media (max-width:960px){.stage{grid-template-columns:1fr}.panel{z-index:40;border-radius:16px 16px 0 0;max-height:62vh;position:fixed;inset:auto 0 0}.sim-ctl{margin-left:0}}@media (max-width:640px){.topbar{flex-wrap:wrap;gap:10px;padding:10px 12px}.controls,.stage,.foot{padding-left:12px;padding-right:12px}.seg{max-width:100%;overflow-x:auto}.seg button{white-space:nowrap;padding:6px 9px}.balance .side .n{font-size:26px}.balance .side .who,.status .pill:not(.live),.tooltip{display:none}}.market-call{background:var(--panel-2);border-left:3px solid var(--accent);border-radius:4px;margin:0 0 8px;padding:6px 8px;font-size:12px}.wordmark{letter-spacing:-.03em;font-weight:800}.wordmark .tide{background:linear-gradient(90deg,#2563eb,#dc2626);color:#0000;-webkit-background-clip:text;background-clip:text}.doc-wrap{min-height:100vh}.doc{max-width:860px;margin:0 auto;padding:24px 20px 64px;font-size:16px;line-height:1.6}.doc h1{letter-spacing:-.02em;margin:8px 0 12px;font-size:34px;line-height:1.15}.doc h2{letter-spacing:-.01em;margin:32px 0 10px;font-size:22px}.doc h3{margin:18px 0 6px;font-size:16px}.doc .lede{color:var(--text);font-size:18px}.doc ul{padding-left:20px}.crumbs{color:var(--muted);font-size:13px}.cta{background:var(--text);color:var(--bg);border-radius:10px;padding:10px 16px;font-weight:700;display:inline-block}.cta:hover{opacity:.9;text-decoration:none}.updated{margin-top:-6px}table.data{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:14px}table.data th,table.data td{text-align:left;border-bottom:1px solid var(--line);padding:8px 6px}table.data th{color:var(--muted);font-weight:600}table.data caption{caption-side:bottom;text-align:left;color:var(--muted);padding-top:6px;font-size:13px}.faq h3,.faq h2{margin-bottom:4px}.faq p{margin-top:0}.inline-link{margin-right:12px}.race-links{flex-wrap:wrap;gap:6px 14px;display:flex}.home-doc{border-top:1px solid var(--line)}.stakes .sides{grid-template-columns:1fr 1fr;gap:14px;margin-top:12px;display:grid}.side-case{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:4px 14px}.side-case.d{border-top:4px solid var(--d-3)}.side-case.r{border-top:4px solid var(--r-3)}.side-case ul{padding-left:18px}.panel-stakes{border-top:1px solid var(--line);margin-top:12px;padding-top:10px;font-size:13px}.panel-stakes summary{cursor:pointer;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:6px;font-size:13px;font-weight:700}.panel-stakes .side-case{margin-top:8px;padding:6px 10px}.panel-stakes ul{margin:4px 0;padding-left:16px}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:640px){.stakes .sides{grid-template-columns:1fr}.doc h1{font-size:27px}.elections{max-width:100%;overflow-x:auto}}.odds .toss-seg{background:var(--toss)}.turnout-card{text-align:left;border:1px solid var(--line);background:var(--panel-2);border-radius:10px;flex-direction:column;gap:2px;width:100%;margin-bottom:12px;padding:10px;display:flex}.claims .side-case ul{padding-left:0;list-style:none}.claim{border-top:1px solid var(--line);padding:12px 0}.claim:first-child{border-top:0}.claim p{margin:0 0 6px}.claim-topic{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:11px;font-weight:700}.claim-summary{font-weight:600}.claim blockquote{border-left:3px solid var(--line);margin:6px 0;padding-left:10px;font-style:italic}.claim-who{color:var(--muted);font-size:13px}.claim-record{background:var(--bg,transparent);border:1px solid var(--line);border-radius:8px;margin-top:6px;padding:8px 10px;font-size:13px}.ev-list{max-height:320px;margin:8px 0 4px;padding:0;list-style:none;overflow-y:auto}.ev-list button{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;grid-template-columns:1fr auto 92px;gap:8px;padding:4px 2px;font-size:13px;display:grid}.ev-list button:hover{background:var(--line)}.ev-list button>span:last-child{text-align:right;font-variant-numeric:tabular-nums}.ev-r{color:#f87171}.ev-d{color:#60a5fa}.linkish{color:#a78bfa;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:2px 0}.btn{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:10px;align-items:center;gap:6px;padding:8px 14px;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover{background:var(--panel-2)}.btn:disabled{opacity:.6;cursor:progress}.btn.small{padding:4px 10px;font-size:13px}.btn.x{color:#fff;background:#000;border-color:#000}.btn.x:hover{background:#222}.celebrate{flex-direction:column;gap:12px;display:flex}.celebrate-canvas{aspect-ratio:16/9;background:#05070c;border-radius:12px;width:100%;height:auto;display:block}.celebrate-actions{flex-wrap:wrap;gap:8px;display:flex}.celebrate-note{overflow-wrap:anywhere;margin:0}.celebrate-overlay{z-index:60;background:#05070cb8;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.celebrate-box{background:var(--panel);border:1px solid var(--line);width:min(920px,100%);max-height:calc(100vh - 32px);box-shadow:var(--shadow);border-radius:16px;padding:16px;position:relative;overflow:auto}.celebrate-close{z-index:1;color:#fff;background:#00000080;border-color:#0000;position:absolute;top:24px;right:24px}.celebrate-btn{color:#fff;text-align:left;background:linear-gradient(90deg, var(--d-3), #1e3a8a);border:0;border-radius:12px;align-items:center;gap:10px;width:100%;margin-top:10px;padding:10px 12px;display:flex}.celebrate-btn.r{background:linear-gradient(90deg, var(--r-3), #7f1d1d)}.celebrate-btn.i{background:linear-gradient(90deg,#9333ea,#4c1d95)}.celebrate-btn>span:first-child{font-size:24px}.celebrate-btn b,.celebrate-btn small{display:block}.celebrate-btn small{opacity:.85}.celebrate-btn:hover{filter:brightness(1.1)}.win-toast{z-index:50;background:var(--panel);border:1px solid var(--line);max-width:calc(100vw - 32px);box-shadow:var(--shadow);border-radius:12px;align-items:center;gap:10px;padding:8px 10px 8px 14px;animation:.35s ease-out toast-in;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.win-toast em{font-style:normal}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,20px)}}@media (prefers-reduced-motion:reduce){.win-toast{animation:none}}.winner-doc .celebrate{margin:16px 0}.num{font-variant-numeric:tabular-nums;transition:color .4s;display:inline-block}.num.bump{animation:bump .7s var(--ease)}@keyframes bump{30%{filter:brightness(1.25);transform:translateY(-2px)}}.balance-wrap,.map-wrap,.key-races,.house-block{animation:rise .7s var(--ease) backwards}.map-wrap{animation-delay:60ms}.key-races,.house-block{animation-delay:.12s}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}.panel{animation:panel-in .5s var(--ease)}@keyframes panel-in{0%{opacity:0;transform:translate(24px)}}.panel section,.panel .panel-stakes{animation:rise .6s var(--ease) backwards}.panel section:first-of-type{animation-delay:50ms}.panel section:nth-of-type(2){animation-delay:.1s}.panel section:nth-of-type(3){animation-delay:.15s}.panel section:nth-of-type(4){animation-delay:.2s}.panel section:nth-of-type(n+5){animation-delay:.25s}.cand-bar span,.reporting span,.odds span{transition:width .9s var(--ease)}.cand-bar span{animation:grow-x 1s var(--ease) backwards;transform-origin:0}.key-races li,.ev-list li{animation:rise .5s var(--ease) backwards}.key-races li:first-child{animation-delay:.15s}.key-races li:nth-child(2){animation-delay:.18s}.key-races li:nth-child(3){animation-delay:.21s}.key-races li:nth-child(4){animation-delay:.24s}.key-races li:nth-child(5){animation-delay:.27s}.key-races li:nth-child(6){animation-delay:.3s}.key-races li:nth-child(7){animation-delay:.33s}.key-races li:nth-child(8){animation-delay:.36s}.key-races li:nth-child(n+9){animation-delay:.39s}.key-races button,.ev-list button{transition:background .2s, transform .25s var(--ease)}.key-races button:hover,.ev-list button:hover{transform:translate(3px)}.swatch{transition:background .8s var(--ease), transform .3s var(--spring)}.key-races button:hover .swatch{transform:scale(1.25)}.balance-wrap,.map-wrap,.key-races,.house-block,.turnout-card{transition:box-shadow .3s,border-color .3s}.labels{animation:fade .8s .5s var(--ease) backwards}.callouts{animation:fade .8s .6s var(--ease) backwards}@keyframes fade{0%{opacity:0}}.tooltip{animation:tip-in .18s var(--ease)}@keyframes tip-in{0%{opacity:0;transform:translateY(4px)scale(.98)}}.sources-pop{animation:pop-in .25s var(--ease);transform-origin:100% 0}@keyframes pop-in{0%{opacity:0;transform:translateY(-6px)scale(.97)}}.back{animation:fade .4s var(--ease);transition:background .2s, transform .2s var(--ease)}.back:hover{background:var(--panel-2);transform:translate(-2px)}.pick-btn,.chip,.icon-btn,.btn,.pill{transition:background .25s, border-color .25s, color .25s, transform .2s var(--ease)}.pick-btn:active,.btn:active,.icon-btn:active,.seg button:active{transform:scale(.96)}.pill.live:hover{transform:translateY(-1px)}.house-block .seat{animation:fade .6s var(--ease) backwards}.elections a{white-space:nowrap;transition:background .25s,color .25s}@media (max-width:960px){.panel{animation:sheet-in .5s var(--ease);box-shadow:0 -10px 40px #0f172a2e}.panel:before{content:"";background:var(--line);border-radius:2px;width:40px;height:4px;margin:-6px auto 10px;display:block}@keyframes sheet-in{0%{transform:translateY(100%)}}}@media (max-width:420px){.brand .wordmark,.live-n{display:none}.topbar{flex-wrap:nowrap}.elections a{padding:6px 8px;font-size:13px}.pill.live{padding:6px 10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}}.terr-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;display:grid}.terr-card{border:1px solid var(--line);background:var(--panel);animation:rise .6s var(--ease) backwards;border-radius:14px;padding:14px 16px;scroll-margin-top:80px}.terr-card h2{margin:2px 0 6px;font-size:20px}.terr-card:target{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 25%, transparent)}.terr-cands{gap:6px;margin:10px 0;padding:0;list-style:none;display:grid}.terr-cands li{align-items:baseline;gap:8px;display:flex}.terr-cands .dot{transform:translateY(1px)}.terr-strip{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);animation:rise .7s .18s var(--ease) backwards;border-radius:14px;padding:12px 14px}.terr-strip-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.terr-strip-head h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0;font-size:13px}.terr-row{scroll-snap-type:x proximity;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.terr-chip{scroll-snap-align:start;border:1px solid var(--line);background:var(--panel-2);min-width:180px;color:var(--text);transition:transform .25s var(--ease), border-color .25s;border-radius:10px;flex-direction:column;flex:none;gap:2px;padding:8px 10px;display:flex}.terr-chip:hover{border-color:var(--accent);text-decoration:none;transform:translateY(-2px)}.terr-chip b{font-size:13px}.terr-chip span{color:var(--muted);font-size:12px}.terr-chip .terr-lead{color:var(--text);font-weight:600}
