@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700&family=Inter:wght@400;500;600;700;800&display=swap');
:root{--ink:#18212b;--muted:#6e747a;--line:#dfe2e5;--blue:#2574bf;--red:#d34442}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#f5f6f6;font-family:Inter,Arial,sans-serif;font-size:14px}button,input,select{font:inherit}button,a,select{ -webkit-tap-highlight-color:transparent}button{cursor:pointer;background:white;border:1px solid var(--line);border-radius:4px;padding:10px 14px;color:inherit}button:hover{background:#edf0f3}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #e8ae39;outline-offset:3px}header{height:82px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 5%;gap:35px}.brand{display:flex;align-items:center;gap:15px;font-size:18px;letter-spacing:2px;font-weight:800;color:var(--ink);text-decoration:none}.mark{display:block;letter-spacing:-4px;font-size:41px;line-height:43px;border-bottom:5px solid #df443d;padding-right:5px}.edition{font-size:10px;letter-spacing:2px;color:var(--muted)}header button{margin-left:auto;font-size:12px}header b{background:#edf0f2;padding:3px 6px;margin-left:8px}main{max-width:1440px;margin:auto;padding:40px 5% 0}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:700;display:flex;align-items:center;gap:12px}.eyebrow>span:not(.pulse){color:#b1b5b8}.pulse{width:7px;height:7px;border-radius:50%;background:#d84741;box-shadow:0 0 0 4px #d8474110}.titlebar{display:flex;justify-content:space-between;align-items:center;margin:16px 0 30px}h1{font-family:'Barlow Condensed',Arial,sans-serif;font-size:49px;letter-spacing:-.8px;line-height:1.1;margin:0 0 12px}p{color:var(--muted);line-height:1.65;margin:0}.feed{text-align:right;font-size:11px}.feed b{display:block;margin-bottom:8px}.feed small{color:var(--muted)}nav{display:flex;border-bottom:1px solid #cbd0d4;gap:26px;align-items:center;margin-bottom:25px}nav button{border:0;border-radius:0;background:none;padding:15px 0;font-weight:700;border-bottom:3px solid transparent}nav button.active{border-bottom-color:var(--red)}nav a{color:var(--muted);text-decoration:none;font-size:12px}nav>span{margin-left:auto;font-size:9px;letter-spacing:1.5px;color:var(--muted)}h2{font-size:18px;letter-spacing:-.4px;margin:0}section.balance{background:white;border:1px solid var(--line);padding:24px 28px;margin-bottom:24px}.balance-title{display:flex;justify-content:space-between;align-items:center}.balance-title span{font-size:11px;color:var(--muted)}.totals{display:flex;justify-content:space-between;align-items:end;margin:22px 0 12px}.totals>div{display:flex;align-items:center;gap:15px}.totals strong{font-size:37px;letter-spacing:-1px}.totals small{font-size:10px;letter-spacing:1px;font-weight:700}.dem{color:var(--blue)}.rep{color:var(--red)}#reporting{font-size:11px;color:var(--muted);padding-bottom:8px}.seatbar{height:17px;display:flex;background:#e4e7e9;position:relative;gap:3px}.seatbar div{transition:width .4s}#demBar{background:var(--blue)}#repBar{background:var(--red)}#otherBar{background:#b6bac1}.seatbar i{position:absolute;left:50%;top:-6px;height:29px;width:1px;background:#19232b}.barfoot{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:12px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 325px;gap:24px}.mapcard,aside,.races{border:1px solid var(--line);background:#fff}.sectionhead{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:24px}.sectionhead p{font-size:11px;margin-top:7px}.segmented{display:flex;border:1px solid var(--line);padding:3px;background:#f5f6f6;border-radius:5px}.segmented button{border:0;background:transparent;font-size:10px;padding:7px 9px}.segmented button.active{background:#fff;box-shadow:0 1px 3px #0002}#map{padding:5px 25px;min-height:360px}svg{width:100%;height:auto;display:block}svg path{stroke:#fff;stroke-width:1.3;cursor:pointer;transition:fill .25s}svg path:hover,svg path.selected{stroke:#17232e;stroke-width:2.5}svg text{pointer-events:none;font-size:9px;fill:#263642;font-weight:700;paint-order:stroke;stroke:#ffffffcc;stroke-width:2px}.legend{display:flex;gap:17px;justify-content:center;font-size:10px;align-items:center;padding:10px}.legend span{display:flex;gap:6px;align-items:center}.swatch{width:9px;height:9px;display:inline-block}.mapnote{text-align:center;font-size:9px;line-height:1.6;color:var(--muted);padding:10px 15px 20px}aside{padding:23px}.detailtop{display:flex;justify-content:space-between;align-items:start;margin:15px 0}aside h2{font-family:'Barlow Condensed',sans-serif;font-size:32px}.status{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.6px;background:#f0f3f5;padding:6px 8px;margin:0 0 20px}.candidate{margin:18px 0}.candidate .name{display:flex;justify-content:space-between;font-size:12px;font-weight:600}.candidate .meta{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin:8px 0}.track{background:#edf0f2;height:5px}.track div{height:100%}.detailfoot{margin-top:25px;border-top:1px solid var(--line);padding-top:17px;font-size:10px;color:var(--muted);line-height:1.8}.source{display:block;margin-top:15px;font-size:11px;color:var(--ink)}.races{margin-top:24px}.races .eyebrow{font-size:9px;color:var(--muted);margin-bottom:9px}.filters{display:flex;gap:10px}input,select{padding:10px;border:1px solid var(--line);background:white;border-radius:4px;font-size:11px}input{width:220px}.race-row{display:grid;grid-template-columns:1.15fr 1.4fr .65fr .6fr 35px;align-items:center;gap:18px;border-top:1px solid var(--line);padding:17px 24px}.race-row>button:first-child{padding:0;border:0;background:none;text-align:left;font-weight:700;font-size:12px}.rowcandidate{font-size:11px;display:flex;align-items:center;gap:8px}.race-row small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.race-row .margin{font-size:12px;font-weight:600}.star{border:0;padding:5px;background:none;font-size:20px;color:#8a939b}.star.saved{color:#bf861a}.empty{padding:30px;color:var(--muted)}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:40px;padding:25px 0 30px;border-top:2px solid var(--ink)}footer .brand{font-size:12px;letter-spacing:1px}footer p{font-size:9px}footer a{color:inherit}footer button{font-size:10px;background:none}.redline{width:20px;height:3px;background:var(--red)}@media(min-width:1350px){#map{min-height:420px}}@media(max-width:900px){.workspace{grid-template-columns:1fr}.edition{display:none}aside{min-height:0}.filters{flex-wrap:wrap}.titlebar{align-items:start}h1{font-size:39px}.feed{max-width:150px}.race-row{grid-template-columns:1fr 1.2fr .7fr 30px}.race-row>.reported{display:none}}@media(max-width:600px){header{height:65px;padding:0 5%}.brand{font-size:13px;gap:10px}.mark{font-size:32px;line-height:32px}main{padding-top:25px}.titlebar{display:block}.feed{text-align:left;max-width:none;margin-top:20px}.feed b,.feed small{display:inline;margin-right:8px}h1{font-size:35px}nav{gap:22px}nav>span{display:none}section.balance{padding:20px}.totals>div{display:block}.totals small{font-size:8px}.totals strong{display:block;font-size:30px}.rep{text-align:right}#reporting{font-size:9px}.sectionhead{padding:20px;align-items:start;flex-direction:column}#map{padding:10px;min-height:230px}.filters{width:100%}input{width:100%}select{width:100%}.race-row{padding:15px;gap:10px;grid-template-columns:1fr 1.1fr .65fr 25px}.rowcandidate{font-size:10px}footer{align-items:start;flex-wrap:wrap}footer p{order:3;width:100%}.legend{gap:10px;font-size:9px}}
.workspace{align-items:start}aside{max-height:610px;overflow:auto}@media(max-width:600px){aside{max-height:520px}}
.live-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 18px}.live-tools button,.live-tools select{font-size:11px}.live-tools label{margin-left:auto;font-size:10px;color:var(--muted)}#crumb{font-weight:600;font-size:12px}.ticker{display:flex;gap:20px;background:#18222d;color:white;padding:13px 18px;margin-bottom:20px;font-size:11px}.ticker b{font-size:9px;letter-spacing:1px;color:#ffb9ac;white-space:nowrap}.ticker span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-controls{display:flex;align-items:center;gap:5px;padding:0 24px}.map-controls button{padding:5px 10px;font-size:12px}.map-controls span{color:var(--muted);font-size:9px;margin-left:10px}#map{overflow:hidden;touch-action:none;cursor:grab}#map svg{user-select:none;min-height:320px}#detail .candidate:nth-of-type(n+6){margin:12px 0}.history-panel{margin-top:24px;background:white;padding:20px 24px;border:1px solid var(--line)}.history-panel>div:first-child{display:flex;align-items:center;gap:20px;margin-bottom:14px}.history-panel b{font-size:10px;letter-spacing:1.2px}.history-panel span{color:var(--muted);font-size:10px}.history-controls{display:flex;gap:8px;flex-wrap:wrap}.history-controls button{font-size:10px}.history-controls select{max-width:100%}.updates-panel{background:white;border:1px solid var(--line);margin-top:24px}.updates-panel .sectionhead span{color:var(--muted);font-size:10px}.event{padding:12px 24px;border-top:1px solid var(--line);display:flex;gap:15px;font-size:11px}.event time{color:var(--muted);min-width:75px}.event b{color:#9e3e36;font-size:9px;text-transform:uppercase;min-width:65px}.event span{line-height:1.6}.status.replay{color:#9a6617;background:#fff1d7}dialog{width:min(900px,94vw);max-height:87vh;border:1px solid var(--line);border-radius:9px;padding:28px;color:var(--ink);background:white}dialog::backdrop{background:#0a1526a8;backdrop-filter:blur(4px)}.dialoghead{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.dialoghead h2{font-size:25px;margin-top:5px}dialog p{font-size:12px;margin-bottom:15px}#discoveryForm{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}#discoveryForm label{font-size:9px;display:flex;flex-direction:column;gap:4px}#discoveryForm input{width:auto}#discoverQuery{flex:1;min-width:200px}#discoverState{max-width:95px}#discoveryForm button{align-self:end}details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin:18px 0}summary{cursor:pointer;font-size:12px}.calendar-tools{display:flex;gap:10px;margin:15px 0}#calendarDates{display:flex;gap:7px;flex-wrap:wrap;max-height:200px;overflow:auto}#calendarDates button{font-size:10px;padding:6px}.discovery-row{border-bottom:1px solid var(--line);padding:15px 0;display:flex;align-items:center;justify-content:space-between;gap:15px}.discovery-row strong{font-size:12px;display:block}.discovery-row small{display:block;font-size:10px;color:var(--muted);margin-top:6px}.discovery-row button{font-size:10px;white-space:nowrap}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#18222d;color:white;padding:12px 20px;border-radius:5px;box-shadow:0 5px 30px #0003;z-index:100;display:none;font-size:12px}.health-row{padding:15px 0;border-top:1px solid var(--line);font-size:12px}.health-row small{display:block;color:var(--muted);line-height:1.8;margin-top:5px}.health-row button{float:right;font-size:10px}.comparison-table{width:100%;margin-top:15px;border-collapse:collapse;font-size:11px}.comparison-table th,.comparison-table td{text-align:left;padding:10px;border-bottom:1px solid var(--line)}body.bigboard{background:#0a1320;color:#eef4ff;--ink:#eef4ff;--muted:#9baabe;--line:#2a394d;--blue:#43a2ff;--red:#ff645e}body.bigboard header{background:#101d2e;position:sticky;top:0;z-index:10}body.bigboard main{max-width:none;padding:20px 3%}body.bigboard .titlebar,body.bigboard main>.eyebrow,body.bigboard nav>span,body.bigboard footer,body.bigboard .races,body.bigboard .updates-panel,body.bigboard .edition{display:none}body.bigboard nav{margin:0 0 12px}body.bigboard .live-tools{margin-bottom:12px}body.bigboard .mapcard,body.bigboard aside,body.bigboard .balance,body.bigboard .history-panel{background:#101d2e}body.bigboard .balance{margin-bottom:16px;padding:16px 25px}body.bigboard .balance h2{font-size:22px}body.bigboard .totals{margin:8px 0}body.bigboard .totals strong{font-size:45px}body.bigboard .workspace{grid-template-columns:minmax(0,1fr) 370px;gap:16px}body.bigboard #map{height:clamp(350px,48vh,850px);min-height:0}body.bigboard #map svg{height:100%;min-height:0}body.bigboard aside{max-height:68vh}body.bigboard .candidate .name{font-size:17px}body.bigboard aside h2{font-size:42px}body.bigboard button,body.bigboard select,body.bigboard input{background:#16283e;color:#eef4ff}body.bigboard .segmented{background:#0a1320}body.bigboard .segmented .active{background:#2d4867}body.bigboard .track{background:#26374d}body.bigboard dialog{background:#101d2e}body.bigboard .status{background:#24364a}body.bigboard .history-panel{margin-top:16px;padding:15px 20px}body.bigboard .legend{font-size:12px}body.bigboard .mapnote{font-size:10px}body.bigboard .ticker{background:#22364e;margin-bottom:14px}body.bigboard header .brand{font-size:16px}@media(max-width:900px){body.bigboard .workspace{grid-template-columns:1fr}body.bigboard aside{max-height:420px}.live-tools label{margin-left:0}header{gap:10px}header button{margin-left:0}header .brand{margin-right:auto}.edition{display:none}}@media(max-width:600px){header{height:auto;min-height:70px;flex-wrap:wrap;padding:12px 5%}header .brand{width:100%;margin-bottom:8px}.ticker{gap:10px}.map-controls{padding:0 15px}.map-controls span{font-size:8px}.history-panel{padding:16px}.history-controls button{padding:9px}.history-panel>div:first-child{display:block}.history-panel span{display:block;margin-top:7px}#map svg{min-height:230px}.event{padding:12px;gap:8px}.event time{min-width:55px;font-size:9px}.event b{min-width:50px;font-size:8px}.event span{font-size:10px}.discovery-row{flex-wrap:wrap}#discoveryForm input{max-width:100%}.comparison-table th,.comparison-table td{padding:6px;font-size:10px}}
#boardSource{display:none;font-size:10px;color:var(--muted)}body.bigboard #boardSource{display:inline}body.bigboard header #bigBoard{margin-left:auto}body.bigboard header #watchToggle{margin-left:0}
.race-row.called-row{background:var(--called-tint);border-left:4px solid var(--called-color);padding-left:20px}.race-row.called-row>button:first-child small{color:var(--called-color);font-weight:600}.race-row.called-row:hover{filter:brightness(.98)}
[hidden]{display:none!important}
