:root{--bg:#061019;--panel:#101f29;--panel2:#142631;--gold:#cf9e5b;--gold2:#f1cb8a;--line:#3a4b51;--muted:#91a5ac;--cream:#f1ead8;--blue:#67abc7;--red:#d67667;--quiet:#4b6068}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--cream);background:var(--bg);font:14px/1.45 'Trebuchet MS',Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold2);outline-offset:3px}button:disabled{opacity:.35;cursor:default}a{color:var(--gold2)}[hidden]{display:none!important}.app-shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh;background:radial-gradient(ellipse 90% 50% at 65% 2%,#24343b 0%,transparent 65%),repeating-linear-gradient(90deg,transparent 0,transparent 79px,#ffffff04 80px),#08141c}.rail{padding:27px 18px 22px 20px;border-right:1px solid #6d5d414d;background:linear-gradient(170deg,#172934 0%,#0b1b25 38%,#091720 100%);display:flex;flex-direction:column;min-height:100vh;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:13px;border-bottom:1px solid #a88b6044;padding-bottom:23px}.brand-monogram{width:50px;height:54px;border:2px solid var(--gold);clip-path:polygon(50% 0,97% 20%,97% 74%,50% 100%,3% 74%,3% 20%);background:linear-gradient(140deg,#bf9a63,#15232d 45%,#13202a);display:grid;place-items:center;position:relative;color:#f6d8a5;font:bold 30px Georgia,serif;box-shadow:inset 0 0 0 3px #12212a}.brand-monogram em{position:absolute;top:7px;right:4px;font:10px sans-serif;color:#f6d8a5}.brand strong{font:800 35px/1 Georgia,serif;letter-spacing:1px}.trademark{font:9px Arial,sans-serif;vertical-align:top;color:var(--gold)}.brand small{display:block;letter-spacing:2.6px;font:700 8px/2 Arial,sans-serif;color:#cda967}.rail-section-label{font-size:9px;letter-spacing:2.1px;color:#ac986f;padding:36px 9px 14px}.rail-nav{display:grid;gap:7px}.nav-btn{width:100%;display:flex;align-items:center;text-align:left;gap:11px;padding:14px 9px 14px 12px;border:1px solid transparent;border-radius:0;background:transparent;color:#b6c1c3;letter-spacing:1.3px;font-size:10px;font-weight:800}.nav-btn .nav-idx{color:#ac9166;font:12px Georgia,serif}.nav-btn .nav-mark{margin-left:auto;color:#866c48;font-size:9px}.nav-btn:hover{background:#ffffff09;border-color:#425766}.nav-btn.is-active{border:1px solid #b08a50;background:linear-gradient(110deg,#7e654125,transparent);color:var(--cream);box-shadow:inset 3px 0 var(--gold)}.rail-fill{flex:1}.rail-bottom{border-top:1px solid #8c785244;padding-top:20px}.rail-serial{font:9px/1.9 'Courier New',monospace;color:#96a8aa;letter-spacing:1.3px}.return-btn{display:block;background:#bd9258;color:#06151d;text-align:center;text-decoration:none;padding:13px 6px;margin:22px 0;font-weight:900;font-size:11px;letter-spacing:1px}.return-btn:hover{background:#f0c987}.rail-bottom p{font:700 10px/1.8 Georgia,serif;letter-spacing:1px;color:var(--gold);text-align:center}.rail-bottom p span{font:10px Arial,sans-serif;color:#90a0a6}.main-stage{min-width:0;padding:0 32px 22px;max-width:1900px;width:100%;margin:auto}.topline{height:47px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #b49c7444;font:9px Arial,sans-serif;font-weight:800;letter-spacing:2px;color:#a8aaa1}.status-dot,.mini-led{display:inline-block;background:#cfad6c;width:5px;height:5px;border-radius:50%;box-shadow:0 0 5px #cfad6c55;vertical-align:middle;margin-right:6px}.top-right{display:flex;gap:26px}.top-id{color:#cbb18b}.masthead{min-height:166px;display:flex;align-items:center;justify-content:space-between;padding:24px 10px 20px 3px;border-bottom:1px solid #9e876544}.eyebrow{font-size:10px;letter-spacing:3.1px;color:#c6a573;font-weight:900}.masthead h1{font:700 clamp(42px,5.2vw,78px)/.97 Georgia,'Times New Roman',serif;letter-spacing:-2.5px;margin:13px 0 11px;text-shadow:0 4px 12px #000a}.masthead h1 i{color:var(--gold2);font-weight:400}.mast-caption{font-size:10px;letter-spacing:5.2px;color:#b8c4c5}.right-mast{display:flex;align-items:center;gap:16px}.roundel{border:2px double #ba9865;border-radius:50%;height:81px;width:81px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#d7b477;background:radial-gradient(circle,#61503b33,#0f1f28);box-shadow:0 0 0 5px #d9b57d14}.roundel span{font:700 44px/.95 Georgia,serif}.roundel small{font:9px Arial,sans-serif;letter-spacing:2px}.signal{border-left:1px solid #7e674a;padding-left:17px;display:grid;gap:6px}.signal strong{font:700 12px Arial,sans-serif;letter-spacing:2px;color:#e4c797}.signal span{font-size:9px;letter-spacing:1px;color:#869da5}.demo-strip{background:#3e3044;color:#f5def4;border:1px solid #9f719b;padding:11px 16px;font-weight:900;font-size:12px;letter-spacing:1.6px;display:flex;gap:13px;align-items:center;margin:15px 0}.demo-diamond{color:#ffc3f4}.demo-small{font-weight:400;letter-spacing:.5px;font-size:11px;margin-left:auto}.demo-strip button{border:1px solid #ac88b7;background:transparent;color:inherit;font-size:10px;letter-spacing:.8px;padding:6px 10px}.scoreboard{position:relative;margin:21px 0 25px;background:linear-gradient(180deg,#142b34,#0e1f28);border:1px solid #5d604f;box-shadow:0 9px 25px #0004, inset 0 0 0 5px #ffffff05;overflow:hidden}.scoreboard:before,.scoreboard:after{position:absolute;content:'✦';color:#8e7753;top:17px;font-size:12px}.scoreboard:before{left:16px}.scoreboard:after{right:16px}.score-title{text-align:center;padding:14px 12px 0;display:flex;flex-direction:column;gap:5px}.score-title>span{font:700 11px Georgia,serif;letter-spacing:5px;color:#e5ca9e}.score-title small{font-size:9px;color:#90a5ae;letter-spacing:2.4px}.scores{display:grid;grid-template-columns:1fr 1.2fr 1fr;align-items:center;gap:0;min-height:122px;max-width:810px;margin:0 auto}.score{text-align:center;position:relative}.score-party{font:900 10px Arial,sans-serif;letter-spacing:2.4px}.score strong{display:block;font:700 70px/.98 Georgia,serif;margin:2px 0 4px;font-variant-numeric:tabular-nums}.score.dem{color:var(--blue)}.score.rep{color:var(--red)}.score-stroke{display:block;width:80px;max-width:70%;height:2px;background:currentColor;opacity:.6;margin:0 auto}.score-center{text-align:center;border-left:1px solid #a8956a30;border-right:1px solid #a8956a30}.versus{font:700 28px Georgia,serif;letter-spacing:4px;color:var(--gold2)}.versus span{color:#748b92}.seats-count{color:#ede4d2;letter-spacing:2.2px;font-size:11px;margin:9px 0}.majority{font-size:9px;letter-spacing:1px;color:#8fa1a6}.score-footer{border-top:1px solid #75848444;display:flex;justify-content:space-between;padding:9px 20px;color:#99aab1;letter-spacing:1.4px;font:700 9px Arial,sans-serif}.section-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:15px}.section-title{font:700 16px Georgia,serif;letter-spacing:1px}.section-title small{font:800 9px Arial,sans-serif;color:#95a7ae;letter-spacing:1.4px;margin-left:14px}.gold-spark{font-size:18px;color:var(--gold);margin-right:9px}.toggle-group{display:flex;gap:0;border:1px solid #6a6b58;padding:3px}.toggle{border:0;color:#9cafb5;background:transparent;padding:9px 16px;font:900 10px Arial,sans-serif;letter-spacing:1.5px}.toggle span{color:#c29d67;margin-left:6px}.toggle.active{color:#132029;background:var(--gold2)}.toggle.active span{color:#1d3644}.content-columns{display:grid;grid-template-columns:minmax(0,1.68fr) minmax(295px,.92fr);gap:17px;align-items:start}.chamber-box,.inspector,.feed-panel,.directory-panel,.source-card{border:1px solid #59635d;background:linear-gradient(155deg,#152a35 0%,#0d1d27 80%);box-shadow:inset 0 0 0 3px #ffffff03,0 5px 18px #0003}.chamber-inset{padding:16px 20px 10px}.chamber-meta{display:flex;justify-content:space-between;gap:8px;align-items:center;font:800 10px Arial,sans-serif;letter-spacing:1.5px;color:#d2bd97}.text-cta{border:0;color:#c6a873;background:none;letter-spacing:1px;font:800 9px Arial,sans-serif;padding:5px}.text-cta:hover{text-decoration:underline}.chamber-stage{position:relative;min-height:280px}.chamber-stage svg{display:block;width:100%;max-height:500px;filter:drop-shadow(0 10px 15px #0005)}#archLines .arch-line{fill:none;stroke:#927e584d;stroke-width:1.3}#archLines .outer-arch{stroke:#c6a26a99;stroke-width:2.5}#seatPoints circle{stroke:#c0a87760;stroke-width:1.15;cursor:pointer;transition:fill .45s ease,stroke .2s ease,filter .25s ease;outline:none}#seatPoints circle.unreported{fill:#415861}#seatPoints circle.dem{fill:#5bacc9;stroke:#95d7ea}#seatPoints circle.rep{fill:#c87968;stroke:#f0a28a}#seatPoints circle.other{fill:#d3b16e}#seatPoints circle.not-up{fill:#172934;stroke:#516269}#seatPoints circle.selected{stroke:#fff0bf;stroke-width:3;filter:drop-shadow(0 0 7px #edcc85)}#seatPoints circle.updated{animation:arrival .7s ease 1}@keyframes arrival{0%{stroke:#fff;stroke-width:8;filter:drop-shadow(0 0 12px #fff)}100%{stroke-width:1.15}}#seatPoints circle:hover,#seatPoints circle:focus{stroke:#f3d7a9;stroke-width:3;filter:drop-shadow(0 0 5px #dcb976)}.podium-outline{fill:#9a79463d;stroke:#c5a164;stroke-width:2}.podium-detail{stroke:#b69a65;stroke-width:1.5}.podium-v{fill:#f0d39d;font:bold 23px Georgia,serif}.arc-top-label{font:700 11px Arial,sans-serif;letter-spacing:2.7px;fill:#c6b48d}.chamber-floorlabel{position:absolute;bottom:21%;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;pointer-events:none;white-space:nowrap}.chamber-floorlabel span{font:8px Arial,sans-serif;letter-spacing:1.7px;color:#a4997e}.chamber-floorlabel strong{font:700 15px Georgia,serif;letter-spacing:3px;color:#d9c08f}.legend{display:flex;justify-content:center;flex-wrap:wrap;gap:20px;align-items:center;font:800 9px Arial,sans-serif;color:#9fb2ba;letter-spacing:1px;padding-bottom:7px}.legend-dot{display:inline-block;width:9px;height:9px;border-radius:50%;vertical-align:middle;margin-right:5px;border:1px solid #9f9b8b}.legend-dot.blue{background:#5bacc9}.legend-dot.red{background:#c87968}.legend-dot.gray{background:#415861}.legend-dot.muted{background:#172934}.chamber-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #71827c5c;background:#112632;padding:14px 20px}.chamber-bottom>div:first-child{display:flex;gap:14px;align-items:center}.mini-number{font:700 33px Georgia,serif;color:var(--gold2)}.chamber-bottom strong{font:900 9px Arial,sans-serif;letter-spacing:1.2px;display:block}.chamber-bottom small{font-size:10px;color:#90a8af}.chamber-ornament{font:13px Georgia,serif;color:#a58b61;letter-spacing:5px}.detail-column{display:grid;gap:15px}.inspector-top{display:flex;justify-content:space-between;border-bottom:1px solid #637069;padding:12px 15px;background:#213640;font:800 9px Arial,sans-serif;letter-spacing:1.6px}.panel-id{color:#ebc48a}.inspector-top span:last-child{color:#adb4ae}.inspector-body{padding:18px}.district-pill{display:inline-block;border:1px solid #a17d4b;color:#ecc68c;font-size:9px;font-weight:900;letter-spacing:1.4px;padding:5px 8px;background:#a4804c17}.inspector h2{font:700 29px/1.2 Georgia,serif;margin:12px 0 3px;color:#f3ece1}.muted-location{font:11px Arial,sans-serif;color:#9cabb0;margin:0 0 15px}.candidate-rows{min-height:72px}.empty-candidates{border-left:2px solid #917752;padding:13px;color:#aab9bb;font-size:12px;background:#ffffff05}.candidate{padding:9px 0;display:flex;gap:9px;align-items:center;border-bottom:1px solid #68716b52}.candidate-pin{width:9px;height:9px;background:#70858d;border-radius:50%;flex-shrink:0}.candidate-pin.dem{background:var(--blue)}.candidate-pin.rep{background:var(--red)}.candidate-pin.other{background:var(--gold)}.candidate-name{font-size:12px;flex:1}.candidate-name small{display:block;color:#8f9fa5;font-size:10px}.candidate strong{font:700 13px Georgia,serif}.inspector-divider{height:1px;background:#917d5f60;margin:12px 0}.race-metadata{display:grid;gap:12px}.race-metadata>div{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:10px}.race-metadata>div span{color:#90a5ad;letter-spacing:1px}.race-metadata strong,.race-metadata a{font:700 10px Arial,sans-serif;color:#e2c595;text-align:right;max-width:190px;text-decoration:none}.feed-panel{min-height:168px}.feed-head{background:#21343b;padding:11px 14px;display:flex;justify-content:space-between;font:900 10px Arial,sans-serif;letter-spacing:1.2px;color:var(--gold2);border-bottom:1px solid #687367}.feed-head span:last-child{color:#90a8aa;font-size:9px}.wire-list{padding:8px 14px;max-height:181px;overflow:auto}.wire-item{padding:8px 0;color:#b4c0c1;font:11px/1.45 Arial,sans-serif;border-bottom:1px solid #55666144}.wire-item .wire-time{color:var(--gold);font-weight:800;margin-right:7px}.directory-panel{padding:20px}.directory-controls{display:flex;gap:14px;flex-wrap:wrap}.directory-controls label{font:800 10px Arial,sans-serif;color:#d1b68c;letter-spacing:1.4px;display:grid;gap:7px;flex:1;min-width:150px}.directory-controls .search-label{flex:2;min-width:220px}.directory-controls input,.directory-controls select{width:100%;border:1px solid #647576;background:#0b1a24;color:#f0e7d7;border-radius:0;padding:11px 9px;outline-offset:0}.directory-count{color:var(--gold2);font-size:11px;letter-spacing:1.2px;border-bottom:1px solid #766b574f;margin-top:21px;padding:9px 0}.directory-row{width:100%;display:grid;grid-template-columns:75px 1fr 110px 115px;gap:12px;align-items:center;border:0;border-bottom:1px solid #56676b44;padding:13px 8px;background:transparent;text-align:left;color:var(--cream)}.directory-row:hover,.directory-row:focus{background:#b9996220}.directory-row span:first-child{font:900 11px Arial,sans-serif;color:var(--gold)}.directory-row strong{font:700 16px Georgia,serif}.directory-row small{color:#8fa8ad}.directory-row em{font-style:normal;color:#b4c1c1;font-size:11px}.directory-pager{display:flex;justify-content:center;align-items:center;gap:20px;padding-top:18px}.directory-pager button,.refresh-btn{background:#c69b64;border:0;color:#0a1a24;font:900 11px Arial,sans-serif;letter-spacing:1px;padding:11px 15px}.directory-pager span{font-size:10px;color:#d6c9af;letter-spacing:1px}.sources-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.source-card{padding:20px;min-height:225px}.source-kicker{color:#d0a56b;font:800 10px Arial,sans-serif;letter-spacing:1.8px}.source-card h2{font:700 31px Georgia,serif;margin:14px 0}.source-card h2 span{font-size:12px;color:#bd9b67}.source-card p{color:#b6c5c6;font:12px/1.7 Arial,sans-serif;min-height:100px}.source-card>a,.source-small{font-size:10px;font-weight:800;letter-spacing:1px}.source-foot{display:flex;gap:20px;justify-content:space-between;align-items:center;color:#a9b5b3;margin:18px 0;font-size:11px}.source-foot a{color:#d0b17f}.bottomline{display:grid;grid-template-columns:auto 1fr auto;align-items:center;margin-top:21px;gap:14px;background:#0c1a21;border-top:1px solid #998461;border-bottom:1px solid #998461;min-height:49px;padding:0 8px 0 0;overflow:hidden}.ticker-label{background:var(--gold);color:#152129;font:900 9px Arial,sans-serif;letter-spacing:1.5px;height:100%;padding:18px 14px;white-space:nowrap}.bottomline #tickerText{color:#c2c7bd;font:800 10px Arial,sans-serif;letter-spacing:1.1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.footer-controls{display:flex;align-items:center;gap:10px}.footer-controls span{color:#93a5ad;font:9px Arial,sans-serif;white-space:nowrap}.footer-controls button{border:1px solid #be985c;color:#eaca93;background:transparent;padding:10px 12px;font:900 9px Arial,sans-serif;letter-spacing:1px;white-space:nowrap}.footer-controls button:hover{background:#ad8c532e}@media(max-width:1350px){.app-shell{grid-template-columns:203px minmax(0,1fr)}.rail{padding:23px 12px}.main-stage{padding:0 22px 22px}.brand strong{font-size:30px}.content-columns{grid-template-columns:minmax(0,1.4fr) minmax(285px,.95fr)}.section-title small{display:block;margin:3px 0 0 27px}.right-mast .signal{display:none}.chamber-ornament{display:none}}@media(max-width:1050px){.app-shell{grid-template-columns:1fr}.rail{position:relative;min-height:auto;height:auto;flex-direction:row;gap:15px;padding:12px 20px;align-items:center}.brand{padding:0;border:0}.brand-monogram{width:34px;height:37px;font-size:19px}.brand strong{font-size:22px}.brand small{font-size:6px}.rail-section-label,.rail-fill,.rail-serial,.rail-bottom p{display:none}.rail-nav{display:flex;flex:1;justify-content:center}.nav-btn{width:auto;padding:9px 8px;font-size:9px}.rail-bottom{padding:0;border:0}.return-btn{margin:0;padding:9px 12px;font-size:9px}.content-columns{grid-template-columns:1fr minmax(285px,.8fr)}.right-mast{display:none}}@media(max-width:770px){.main-stage{padding:0 13px 18px}.rail{flex-wrap:wrap;justify-content:space-between}.rail-nav{order:3;width:100%;justify-content:space-around}.nav-btn{flex:1}.rail-bottom{order:2}.top-id{display:none}.masthead{min-height:130px}.masthead h1{font-size:44px}.mast-caption{font-size:8px;letter-spacing:3px}.content-columns,.sources-grid{grid-template-columns:1fr}.chamber-stage{min-height:0}.chamber-stage svg{max-height:460px}.score strong{font-size:51px}.score-party{font-size:8px}.score-footer{font-size:8px}.demo-strip{flex-wrap:wrap}.demo-small{margin-left:0}.bottomline{grid-template-columns:1fr;gap:0;padding:0}.ticker-label{padding:8px;text-align:center}.bottomline #tickerText{padding:10px}.footer-controls{justify-content:space-between;padding:0 10px 9px}.directory-row{grid-template-columns:45px 1fr 95px}.directory-row em{display:none}}@media(max-width:430px){.masthead h1{font-size:37px}.eyebrow{font-size:8px}.scores{grid-template-columns:1fr .8fr 1fr}.score strong{font-size:43px}.majority{font-size:8px}.topline{font-size:7px}.toggle{padding:8px 9px}.section-title{font-size:12px}.legend{gap:9px;font-size:8px}.chamber-inset{padding:12px 8px}.roundel{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media(max-width:770px){html,body{max-width:100%;overflow-x:hidden}.app-shell,.rail,.main-stage{min-width:0;max-width:100vw}.rail-nav{min-width:0}.nav-btn{min-width:0;gap:5px;letter-spacing:.5px;font-size:8px;padding:8px 3px}.nav-btn .nav-idx{font-size:10px}.nav-btn .nav-mark{display:none}.rail-bottom .return-btn{font-size:8px;padding:9px 7px}.topline{min-width:0}.top-right{min-width:0}.demo-strip .demo-small{flex-basis:100%}.scoreboard,.chamber-box,.inspector,.feed-panel{min-width:0}.score-title{min-width:0}.section-bar{flex-wrap:wrap}.section-title small{max-width:280px}.bottomline{min-width:0}}
