:root{color-scheme:light;--ink: #102033;--soft-ink: #46576a;--paper: #f8fbfd;--white: #ffffff;--line: #d8e4ec;--line-bright: #b8cad6;--blue: #1268b3;--cyan: #00a6c8;--gold: #b8872f;--green: #397a5a;--rose: #a94758;--purple: #765c86;--red: var(--rose);--yellow: var(--gold);--text: var(--ink);--muted: var(--soft-ink);--panel: var(--white);--panel-2: var(--paper);--panel-3: #edf4f8;--ocean: var(--paper);--ocean-deep: var(--white);--ocean-light: #edf4f8;--black: #000000;--heading: "Rajdhani", "Arial Narrow", Arial, sans-serif;--body: "Inter", Arial, Helvetica, sans-serif;--label: "Courier New", Courier, monospace;--race-card-title-size: 38px;--race-card-name-size: 27px;--race-card-meta-size: 16px;--playmap-race-heading-size: 23px;--playmap-race-context-size: 15px;--playmap-race-name-size: 25px;--playmap-race-meta-size: 16px;--playmap-result-name-size: 21px;--playmap-result-meta-size: 13px;--playmap-result-compact-name-size: 17px;--playmap-result-compact-meta-size: 11px}html[data-text-scale=small]{--race-card-title-size: 34px;--race-card-name-size: 23px;--race-card-meta-size: 14px;--playmap-race-heading-size: 20px;--playmap-race-context-size: 13px;--playmap-race-name-size: 21px;--playmap-race-meta-size: 14px;--playmap-result-name-size: 18px;--playmap-result-meta-size: 11px;--playmap-result-compact-name-size: 15px;--playmap-result-compact-meta-size: 10px}html[data-text-scale=large]{--race-card-title-size: 42px;--race-card-name-size: 30px;--race-card-meta-size: 18px;--playmap-race-heading-size: 26px;--playmap-race-context-size: 17px;--playmap-race-name-size: 28px;--playmap-race-meta-size: 18px;--playmap-result-name-size: 24px;--playmap-result-meta-size: 15px;--playmap-result-compact-name-size: 20px;--playmap-result-compact-meta-size: 13px}.module-tabs{grid-template-columns:repeat(14,minmax(0,1fr))}.module-tabs button{position:relative;font-size:clamp(13px,1.05vw,19px)}#alert-nav-count{min-width:25px;min-height:25px;display:inline-grid;place-items:center;margin-left:4px;color:var(--white);background:var(--rose);border-radius:13px;font:800 12px/1 var(--label)}#alert-nav-count[hidden]{display:none}#alerts-view.is-active,#early-vote-view.is-active,#timeline-view.is-active,#civlab-view.is-active{overflow:auto;background:var(--paper)}#workspace[data-module=early] .map-legend .legend-dem{color:#77b8c8}#workspace[data-module=early] .map-legend .legend-even{color:#23849b}#workspace[data-module=early] .map-legend .legend-rep{color:#075e78}.early-vote-dashboard{min-height:100%;display:grid;align-content:start;gap:1px;background:var(--line)}.early-vote-status{min-height:116px;display:grid;grid-template-columns:minmax(330px,1.25fr) minmax(260px,.8fr) auto;align-items:stretch;gap:1px;color:var(--ink);background:var(--ink);border-bottom:2px solid var(--ink)}.early-vote-status>div{min-width:0;display:grid;align-content:center;gap:5px;padding:12px 16px;background:var(--white)}.early-vote-status>div:first-child{grid-template-columns:auto minmax(0,1fr);align-items:baseline;column-gap:18px}.early-vote-status>div:first-child span,.early-vote-status-copy span,.early-vote-metrics span,.early-vote-party-summary span,.early-vote-state-table>header span,.early-vote-state-row>div>span,.early-vote-method{color:var(--soft-ink);font:900 11px/1.15 var(--label);letter-spacing:.045em}.early-vote-status>div:first-child span{grid-column:1 / -1}.early-vote-status>div:first-child strong{color:#075e78;font:900 clamp(42px,4.4vw,70px)/.78 var(--heading);letter-spacing:-.03em}.early-vote-status>div:first-child small{color:var(--ink);font:900 13px/1.1 var(--label)}.early-vote-status-copy strong{color:var(--green);font:900 18px/1 var(--label)}.early-vote-status.is-stale .early-vote-status-copy strong{color:var(--rose)}.early-vote-status-copy time{color:var(--ink);font:900 14px/1 var(--label)}.early-vote-status>nav{min-width:166px;display:grid;grid-template-rows:repeat(3,1fr);gap:1px;background:var(--line)}.early-vote-status>nav button,.early-vote-status>nav a,.early-vote-method a{display:inline-flex;align-items:center;justify-content:center;padding:0 12px;color:var(--ink);background:var(--white);border:0;font:900 12px/1 var(--label);text-decoration:none}.early-vote-status>nav button:hover,.early-vote-status>nav button:focus-visible,.early-vote-status>nav a:hover,.early-vote-status>nav a:focus-visible,.early-vote-method a:hover,.early-vote-method a:focus-visible{color:var(--white);background:#075e78}.early-vote-status>nav button:disabled{color:var(--soft-ink);background:var(--paper)}.early-vote-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--line)}.early-vote-metrics article{min-width:0;min-height:92px;display:grid;align-content:center;gap:6px;padding:10px 13px;background:var(--white);box-shadow:inset 5px 0 #23849b}.early-vote-metrics strong{overflow:hidden;color:var(--ink);font:900 clamp(26px,2.5vw,42px)/.86 var(--heading);text-overflow:ellipsis;white-space:nowrap}.early-vote-party-summary{min-height:82px;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);gap:1px;background:var(--line);border-bottom:2px solid var(--ink)}.early-vote-party-summary>div{display:grid;align-content:center;gap:8px;padding:10px 14px;background:var(--white)}.early-vote-party-summary>p{margin:0;padding:12px 14px;color:var(--soft-ink);background:var(--paper);font:750 12px/1.35 var(--label);text-transform:uppercase}.early-vote-party-summary>p strong{color:var(--rose)}.early-vote-registration{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.early-vote-registration b{min-height:30px;display:inline-flex;align-items:center;padding:0 8px;color:var(--white);font:900 13px/1 var(--label)}.early-vote-registration .is-dem{background:var(--blue)}.early-vote-registration .is-rep{background:var(--rose)}.early-vote-registration .is-other{background:var(--purple)}.early-vote-registration.is-compact b{min-height:24px;padding:0 5px;font-size:10px}.early-vote-registration-unavailable{color:var(--soft-ink);font:850 11px/1.2 var(--label)}.early-vote-state-table{min-width:0;display:grid;background:var(--white)}.early-vote-state-table>header{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 14px;border-bottom:2px solid var(--ink)}.early-vote-state-table>header>div{display:grid;gap:4px}.early-vote-state-table>header strong{font:900 25px/.9 var(--heading)}.early-vote-state-table>header small{color:var(--soft-ink);font:850 11px/1.2 var(--label)}.early-vote-state-table>div{display:grid;gap:1px;background:var(--line)}.early-vote-state-row{min-height:78px;display:grid;grid-template-columns:minmax(180px,1.1fr) repeat(3,minmax(90px,.55fr)) minmax(220px,1.25fr);gap:1px;background:var(--line);content-visibility:auto;contain-intrinsic-size:auto 78px}.early-vote-state-row>*{min-width:0;background:var(--white)}.early-vote-state-row>div{display:grid;align-content:center;gap:5px;padding:8px 10px}.early-vote-state-row>div>strong{overflow:hidden;color:var(--ink);font:900 21px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.early-vote-state-name{display:grid;grid-template-columns:42px minmax(0,1fr);align-content:center;align-items:center;gap:4px 9px;padding:8px 12px;color:var(--ink);text-align:left;border:0;box-shadow:inset 6px 0 0 var(--line-bright)}.early-vote-state-row.has-started .early-vote-state-name{box-shadow:inset 6px 0 #23849b}.early-vote-state-name:hover,.early-vote-state-name:focus-visible{color:var(--blue);background:var(--paper)}.early-vote-state-name>span:first-child{grid-row:1 / span 2;color:#075e78;font:900 18px/1 var(--label)}.early-vote-state-name>strong{font:900 25px/.92 var(--heading);letter-spacing:.025em}.early-vote-state-name .early-vote-state-flag{grid-column:2}.early-vote-state-registration{align-content:center!important}.early-vote-method{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding-left:14px;background:var(--paper);border-top:2px solid var(--ink)}.early-vote-method nav{align-self:stretch;display:flex;gap:1px;background:var(--line)}.early-vote-method a{min-width:150px}.early-vote-unavailable{min-height:260px;display:grid;place-content:center;justify-items:center;gap:12px;padding:24px;text-align:center;background:var(--white)}.early-vote-unavailable>span{color:var(--soft-ink);font:900 12px/1 var(--label)}.early-vote-unavailable>strong{font:900 34px/.9 var(--heading)}.early-vote-unavailable>p{margin:0;color:var(--soft-ink);font:750 13px/1.35 var(--label)}.early-vote-unavailable-actions{display:flex;gap:1px;background:var(--line)}.early-vote-unavailable-actions button{min-height:48px;padding:0 18px;color:var(--white);background:var(--ink);border:0;font:900 13px/1 var(--label)}.early-vote-unavailable-actions button:hover,.early-vote-unavailable-actions button:focus-visible{background:#075e78}.early-vote-unavailable.is-error>strong{color:var(--rose)}.early-vote-state-flag{width:fit-content;max-width:100%;min-height:19px;display:inline-flex;align-items:center;gap:4px;padding:2px 5px;overflow:hidden;color:#075e78;background:#e4f4f7;border:1px solid #77b8c8;font:900 9px/1.05 var(--label);letter-spacing:.015em;text-overflow:ellipsis;white-space:nowrap}.early-vote-state-flag b{font:inherit}.state-card .early-vote-state-flag{max-width:230px}.map-state-race-drawer>summary>span{min-width:0;display:grid;gap:4px}.map-state-race-drawer>summary>span>.early-vote-state-flag{color:#075e78;font:900 9px/1.05 var(--label);letter-spacing:.015em}.map-state-race-drawer[open]>summary>span>.early-vote-state-flag{color:var(--white);background:#075e78;border-color:#77b8c8}.early-vote-history-dialog{width:min(1580px,94vw);height:88dvh;max-width:none;max-height:none;padding:0;overflow:hidden;color:var(--ink);background:var(--white);border:2px solid var(--ink);box-shadow:0 22px 70px #1020333d}#early-vote-history-dialog-content,.early-vote-history-profile{height:100%;min-height:0}.early-vote-history-profile{display:grid;grid-template-rows:112px minmax(0,1fr)}.early-vote-history-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 18px;border-bottom:3px solid #075e78}.early-vote-history-header>div{min-width:0;display:grid;gap:4px}.early-vote-history-header span{color:var(--soft-ink);font:900 11px/1 var(--label);letter-spacing:.06em}.early-vote-history-header h1{margin:0;overflow:hidden;font:900 42px/.9 var(--heading);letter-spacing:.025em;text-overflow:ellipsis;white-space:nowrap}.early-vote-history-header strong{width:fit-content;padding:5px 7px;color:var(--white);background:#075e78;font:900 11px/1 var(--label)}.early-vote-history-header>button{width:72px;height:72px;flex:0 0 auto;color:var(--ink);background:var(--paper);border:1px solid var(--line-bright);font:400 44px/1 var(--body)}.early-vote-history-header>button:hover,.early-vote-history-header>button:focus-visible{color:var(--white);background:var(--ink)}.early-vote-history-scroll{min-height:0;overflow:auto;background:var(--line)}.early-vote-history-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border-bottom:2px solid var(--ink)}.early-vote-history-summary article{min-height:108px;display:grid;align-content:center;gap:5px;padding:12px 16px;background:var(--white);box-shadow:inset 6px 0 #23849b}.early-vote-history-summary span,.early-vote-history-table thead th{color:var(--soft-ink);font:900 10px/1.15 var(--label);letter-spacing:.055em}.early-vote-history-summary strong{color:#075e78;font:900 38px/.9 var(--heading)}.early-vote-history-summary small{color:var(--ink);font:900 11px/1.15 var(--label)}.early-vote-history-table-wrap{overflow:auto;background:var(--white)}.early-vote-history-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.early-vote-history-table th,.early-vote-history-table td{min-width:0;padding:12px 14px;text-align:left;vertical-align:middle;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.early-vote-history-table thead th{position:sticky;top:0;z-index:1;height:42px;color:var(--white);background:var(--ink)}.early-vote-history-table thead th:first-child{width:15%}.early-vote-history-table thead th:last-child{width:27%}.early-vote-history-table tbody th{box-shadow:inset 6px 0 0 var(--line-bright)}.early-vote-history-table tbody tr.is-live th{box-shadow:inset 6px 0 #23849b}.early-vote-history-table tbody tr.is-live>*{background:#eaf7fa}.early-vote-history-table tbody th strong{display:block;color:var(--ink);font:900 28px/.9 var(--heading)}.early-vote-history-table tbody th span,.early-vote-history-table tbody td span{display:block;margin-top:5px;color:var(--soft-ink);font:850 9px/1.25 var(--label)}.early-vote-history-table tbody td>strong{color:var(--ink);font:900 17px/1.05 var(--label)}.early-vote-history-note{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;padding:16px 18px;color:var(--white);background:#075e78}.early-vote-history-note strong{font:900 17px/1 var(--heading)}.early-vote-history-note p{margin:0;font:750 11px/1.45 var(--label);text-transform:uppercase}.early-vote-history-sources{min-height:56px;display:flex;justify-content:end;gap:1px;background:var(--line)}.early-vote-history-sources a{min-width:210px;display:inline-flex;align-items:center;justify-content:center;padding:0 14px;color:var(--ink);background:var(--white);font:900 11px/1 var(--label);text-decoration:none}.early-vote-history-sources a:hover,.early-vote-history-sources a:focus-visible{color:var(--white);background:#075e78}.early-vote-dialog{width:min(1560px,94vw);height:88dvh;max-width:none;max-height:none;padding:0;overflow:hidden;color:var(--ink);background:var(--white);border:2px solid var(--ink);box-shadow:0 22px 70px #1020333d}#early-vote-dialog-content,.early-vote-state-profile{height:100%;min-height:0}.early-vote-state-profile{display:grid;grid-template-rows:124px 56px minmax(0,1fr)}.early-vote-dialog-header{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 18px;background:var(--white);border-bottom:3px solid #075e78}.early-vote-dialog-identity{min-width:0;display:flex;align-items:center;gap:17px}.early-vote-dialog-identity .state-flag{width:126px;height:82px;flex:0 0 auto}.early-vote-dialog-identity>div{min-width:0;display:grid;gap:4px}.early-vote-dialog-identity span{color:var(--soft-ink);font:900 12px/1 var(--label);letter-spacing:.05em}.early-vote-dialog-identity h1{margin:0;overflow:hidden;font:900 52px/.9 var(--heading);letter-spacing:.025em;text-overflow:ellipsis;white-space:nowrap}.early-vote-dialog-identity strong{width:fit-content;padding:5px 7px;color:var(--white);background:#075e78;font:900 11px/1 var(--label);letter-spacing:.04em}.early-vote-dialog-header>button{width:72px;height:72px;flex:0 0 auto;color:var(--ink);background:var(--paper);border:1px solid var(--line-bright);font:400 44px/1 var(--body)}.early-vote-dialog-header>button:hover,.early-vote-dialog-header>button:focus-visible{color:var(--white);background:var(--ink)}.early-vote-dialog-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border-bottom:2px solid var(--ink)}.early-vote-dialog-tabs button{color:var(--soft-ink);background:var(--paper);border:0;font:900 13px/1 var(--label);letter-spacing:.045em}.early-vote-dialog-tabs button:hover,.early-vote-dialog-tabs button:focus-visible,.early-vote-dialog-tabs button.is-active{color:var(--white);background:#075e78}.early-vote-dialog-scroll{min-height:0;overflow:auto;background:var(--line)}.early-vote-state-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line)}.early-vote-state-metrics article{min-width:0;min-height:132px;display:grid;align-content:center;gap:7px;padding:13px 16px;background:var(--white);box-shadow:inset 6px 0 #23849b}.early-vote-state-metrics span,.early-vote-method-card header span,.early-vote-demographic-card header span,.early-vote-availability>header span,.early-vote-demographics>header span{color:var(--soft-ink);font:900 11px/1 var(--label);letter-spacing:.05em}.early-vote-state-metrics article>strong{overflow:hidden;color:#075e78;font:900 clamp(31px,3.4vw,51px)/.86 var(--heading);text-overflow:ellipsis;white-space:nowrap}.early-vote-state-metrics small{color:var(--ink);font:900 11px/1.2 var(--label)}.early-vote-state-registration-summary{min-height:92px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:1px;background:var(--line);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.early-vote-state-registration-summary>div{display:grid;align-content:center;gap:9px;padding:13px 16px;background:var(--white)}.early-vote-state-registration-summary>div>span{color:var(--soft-ink);font:900 11px/1 var(--label);letter-spacing:.04em}.early-vote-state-registration-summary>p{margin:0;padding:15px 17px;color:var(--soft-ink);background:var(--paper);font:750 13px/1.4 var(--label);text-transform:uppercase}.early-vote-state-registration-summary>p strong{color:var(--rose)}.early-vote-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line)}.early-vote-method-card{min-width:0;min-height:174px;display:grid;align-content:start;gap:12px;padding:15px 16px;background:var(--white)}.early-vote-method-card header{display:flex;align-items:end;justify-content:space-between;gap:12px}.early-vote-method-card header strong{color:var(--ink);font:900 34px/.9 var(--heading)}.early-vote-method-card p{margin:0;color:var(--soft-ink);font:750 12px/1.35 var(--label);text-transform:uppercase}.early-vote-detail-status{min-height:88px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:center;gap:6px 16px;padding:14px 17px;background:#e4f4f7;border-top:1px solid #77b8c8;border-bottom:1px solid #77b8c8}.early-vote-detail-status strong{color:#075e78;font:900 18px/1 var(--label)}.early-vote-detail-status span{color:var(--soft-ink);font:850 11px/1.25 var(--label)}.early-vote-detail-status button{grid-row:1 / span 2;grid-column:2;min-width:110px;height:48px;color:var(--white);background:var(--ink);border:0;font:900 12px/1 var(--label)}.early-vote-detail-status.is-error{background:#fff1f3;border-color:#d9a9b2}.early-vote-detail-status.is-error strong{color:var(--rose)}.early-vote-availability{display:grid;gap:1px;background:var(--line)}.early-vote-availability>header,.early-vote-demographics>header{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;background:var(--white);border-top:3px solid var(--ink)}.early-vote-availability>header strong,.early-vote-demographics>header strong{font:900 25px/.92 var(--heading);letter-spacing:.025em}.early-vote-availability-grid{min-width:850px;display:grid;grid-template-columns:minmax(170px,1.2fr) repeat(5,minmax(100px,1fr));gap:1px;background:var(--line)}.early-vote-availability-grid>*{min-height:48px;display:grid;place-content:center;padding:7px;text-align:center;background:var(--white);font:900 11px/1.15 var(--label)}.early-vote-availability-grid>strong{justify-content:start;color:var(--ink);background:var(--paper)}.early-vote-availability-grid>b{color:var(--soft-ink);font-size:9px}.early-vote-availability-grid>i{font-style:normal}.early-vote-availability-grid>i.is-available{color:var(--white);background:#23849b}.early-vote-availability-grid>i.is-unavailable{color:var(--soft-ink);background:var(--paper)}.early-vote-demographics{display:grid;gap:1px;background:var(--line)}.early-vote-demographics>header{display:grid;grid-template-columns:auto minmax(0,1fr);align-content:center;justify-content:start}.early-vote-demographics>header strong{grid-column:1 / -1}.early-vote-demographics>header small{color:var(--soft-ink);font:800 10px/1.2 var(--label);text-align:right}.early-vote-demographics>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}.early-vote-demographic-card{min-width:0;padding:15px 16px 17px;background:var(--white)}.early-vote-demographic-card>header{display:flex;align-items:end;justify-content:space-between;gap:14px;padding-bottom:12px;border-bottom:2px solid var(--ink)}.early-vote-demographic-card>header>div{display:grid;gap:5px}.early-vote-demographic-card>header strong{font:900 25px/.92 var(--heading)}.early-vote-demographic-card>header>b{font:900 20px/1 var(--label)}.early-vote-demographic-card ol{display:grid;gap:1px;margin:0;padding:0;list-style:none;background:var(--line)}.early-vote-demographic-card li{min-width:0;min-height:44px;display:grid;grid-template-columns:minmax(130px,1fr) minmax(80px,.85fr) 92px 58px;align-items:center;gap:9px;padding:6px 8px;background:var(--white)}.early-vote-demographic-card li>span{overflow:hidden;font:900 11px/1.1 var(--label);text-overflow:ellipsis;white-space:nowrap}.early-vote-demographic-card li>i{height:8px;overflow:hidden;background:var(--line)}.early-vote-demographic-card li>i>b{height:100%;display:block;background:#23849b}.early-vote-demographic-card li>strong{text-align:right;font:900 12px/1 var(--label)}.early-vote-demographic-card li>small{color:var(--soft-ink);text-align:right;font:900 10px/1 var(--label)}.early-vote-state-caveats{min-height:118px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 18px;align-items:center;padding:14px 17px;background:var(--paper);border-top:4px solid var(--ink)}.early-vote-state-caveats>div{display:grid;gap:6px}.early-vote-state-caveats>div strong{color:var(--rose);font:900 13px/1 var(--label)}.early-vote-state-caveats p{max-width:95ch;margin:0;color:var(--soft-ink);font:750 12px/1.4 var(--label);text-transform:uppercase}.early-vote-state-caveats nav{display:flex;align-items:stretch;gap:1px;background:var(--line)}.early-vote-state-caveats a{min-height:46px;display:inline-flex;align-items:center;justify-content:center;padding:0 11px;color:var(--ink);background:var(--white);font:900 10px/1 var(--label);text-decoration:none}.early-vote-state-caveats a:hover,.early-vote-state-caveats a:focus-visible{color:var(--white);background:#075e78}.early-vote-state-caveats time{grid-column:1 / -1;color:var(--soft-ink);font:900 10px/1 var(--label)}.early-vote-race-status{min-width:0;display:grid;gap:1px;background:var(--line);border-bottom:3px solid var(--ink)}.early-vote-race-status>header{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;background:var(--ink)}.early-vote-race-status>header>div{min-width:0;display:grid;gap:4px}.early-vote-race-status>header span,.early-vote-race-status>header small{color:color-mix(in srgb,var(--white) 67%,transparent);font:900 9px/1 var(--label);letter-spacing:.05em}.early-vote-race-status>header strong{color:var(--white);font:900 23px/.92 var(--heading);letter-spacing:.02em}.early-vote-race-status-grid{min-width:0;display:grid;grid-template-columns:1fr;gap:1px;background:var(--line)}.early-vote-race-status-grid.has-polling{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr)}.early-vote-return-status,.early-vote-polling-signal{min-width:0;display:grid;align-content:start;gap:10px;padding:14px 16px;background:var(--white)}.early-vote-return-status>header,.early-vote-polling-signal>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.early-vote-return-status>header>span,.early-vote-polling-signal>header>span{color:var(--soft-ink);font:900 10px/1.1 var(--label);letter-spacing:.04em}.early-vote-return-status>strong{color:var(--rose);font:900 25px/.95 var(--heading)}.early-vote-return-status.has-returns>strong{color:var(--green)}.early-vote-return-status>p,.early-vote-polling-signal>p{margin:0;color:var(--soft-ink);font:800 10px/1.35 var(--label);text-transform:uppercase}.early-vote-return-status>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:9px;border-top:1px solid var(--line)}.early-vote-return-status>footer span{color:var(--ink);font:900 9px/1.2 var(--label)}.early-vote-return-status>footer a,.early-vote-poll-sources a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 9px;color:var(--white);background:#075e78;font:900 9px/1.15 var(--label);text-decoration:none}.early-vote-return-status>footer a:hover,.early-vote-return-status>footer a:focus-visible,.early-vote-poll-sources a:hover,.early-vote-poll-sources a:focus-visible{background:var(--ink)}.early-vote-return-leads{display:grid;gap:1px;background:var(--line)}.early-vote-return-leads>section{display:grid;gap:7px;padding:9px 11px;background:var(--paper);border-left:6px solid var(--purple)}.early-vote-return-leads>section.is-dem{border-left-color:var(--blue)}.early-vote-return-leads>section.is-rep{border-left-color:var(--rose)}.early-vote-return-leads>section>header,.early-vote-return-leads>section>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.early-vote-return-leads>section>header{color:var(--soft-ink);font:900 9px/1 var(--label)}.early-vote-return-leads>section>div>strong{font:900 25px/1 var(--heading)}.early-vote-return-leads>section>small{color:var(--soft-ink);font:900 8px/1.2 var(--label)}.early-vote-poll-headline{display:flex;align-items:end;justify-content:space-between;gap:12px}.early-vote-poll-headline>strong{font:900 clamp(29px,3vw,45px)/.88 var(--heading)}.early-vote-poll-headline>strong.is-dem{color:var(--blue)}.early-vote-poll-headline>strong.is-rep{color:var(--rose)}.early-vote-poll-headline>small{color:var(--soft-ink);font:900 8px/1.25 var(--label);text-align:right}.early-vote-poll-matchup{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}.early-vote-poll-matchup>section{min-width:0;min-height:62px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;padding:7px 9px;background:var(--paper);border-left:6px solid var(--purple)}.early-vote-poll-matchup>section.is-dem{border-left-color:var(--blue)}.early-vote-poll-matchup>section.is-rep{border-left-color:var(--rose)}.early-vote-poll-matchup>section>strong{font:900 28px/1 var(--heading)}.early-vote-poll-matchup .candidate-link-cluster{overflow:hidden}.early-vote-poll-matchup .candidate-link{font:900 13px/1 var(--label)}.early-vote-poll-matchup .candidate-career-button,.early-vote-return-leads .candidate-career-button{min-width:48px;min-height:34px;font-size:8px}.early-vote-lead-portrait{width:42px;height:42px;flex-basis:42px}.early-vote-poll-sources{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line)}.early-vote-poll-sources a{min-width:0;display:grid;justify-content:start;gap:4px;color:var(--ink);background:var(--paper)}.early-vote-poll-sources a strong,.early-vote-poll-sources a span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.early-vote-poll-sources a span{color:var(--soft-ink);font-size:8px}.early-vote-data-class{width:fit-content;min-height:19px;display:inline-flex;align-items:center;padding:3px 5px;color:var(--white);background:var(--ink);font:normal 900 8px/1 var(--label);letter-spacing:.045em;white-space:nowrap}.early-vote-data-class.is-official{background:#075e78}.early-vote-data-class.is-calculated{background:var(--purple)}.early-vote-data-class.is-modeled{color:var(--ink);background:#f1cd63}.early-vote-state-metrics small{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.early-vote-context{display:grid;gap:1px;background:var(--line)}.early-vote-context-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line)}.early-vote-context-metrics article{min-width:0;min-height:104px;display:grid;align-content:center;gap:4px;padding:9px 11px;background:var(--white);box-shadow:inset 5px 0 0 var(--purple)}.early-vote-context-metrics article>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.early-vote-context-metrics article>header>span{color:var(--soft-ink);font:900 9px/1 var(--label);letter-spacing:.035em}.early-vote-context-metrics article>strong{overflow:hidden;color:var(--ink);font:900 clamp(25px,2.6vw,39px)/.86 var(--heading);text-overflow:ellipsis;white-space:nowrap}.early-vote-context-metrics article>strong.is-text-value{font-size:clamp(16px,1.7vw,24px);letter-spacing:-.015em}.early-vote-context-metrics article>small{overflow:hidden;color:var(--ink);font:900 8px/1.1 var(--label);text-overflow:ellipsis;white-space:nowrap}.early-vote-context-metrics article>p{overflow:hidden;margin:0;color:var(--soft-ink);font:750 8px/1.15 var(--label);text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.early-vote-context-metrics .early-vote-quality-card{box-shadow:inset 6px 0 #23849b}.early-vote-history-panel,.early-vote-archive-panel,.early-vote-presidential-panel,.early-vote-national-history-panel,.early-vote-county-panel,.early-vote-pipeline-panel,.early-vote-quality-panel,.early-vote-provenance{min-width:0;display:grid;gap:1px;background:var(--white);border-top:3px solid var(--ink)}.early-vote-history-panel>header,.early-vote-archive-panel>header,.early-vote-presidential-panel>header,.early-vote-national-history-panel>header,.early-vote-county-panel>header,.early-vote-pipeline-panel>header,.early-vote-quality-panel>header,.early-vote-provenance>header{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 16px}.early-vote-history-panel>header>div,.early-vote-archive-panel>header>div,.early-vote-presidential-panel>header>div,.early-vote-national-history-panel>header>div,.early-vote-county-panel>header>div,.early-vote-pipeline-panel>header>div,.early-vote-quality-panel>header>div,.early-vote-provenance>header{display:grid;gap:5px}.early-vote-history-panel>header span,.early-vote-archive-panel>header span,.early-vote-presidential-panel>header span,.early-vote-national-history-panel>header span,.early-vote-county-panel>header span,.early-vote-pipeline-panel>header span,.early-vote-quality-panel>header span,.early-vote-provenance>header span{color:var(--soft-ink);font:900 10px/1 var(--label);letter-spacing:.05em}.early-vote-history-panel>header strong,.early-vote-archive-panel>header strong,.early-vote-presidential-panel>header strong,.early-vote-national-history-panel>header strong,.early-vote-county-panel>header strong,.early-vote-pipeline-panel>header strong,.early-vote-quality-panel>header strong,.early-vote-provenance>header strong{font:900 26px/.92 var(--heading);letter-spacing:.025em}.early-vote-history-scroll{min-width:0;overflow-x:auto;background:var(--white);scrollbar-color:#075e78 var(--paper)}.early-vote-history-scroll table{width:100%;min-width:980px;border-collapse:separate;border-spacing:1px;background:var(--line)}.early-vote-archive-panel .early-vote-history-scroll table{min-width:760px}.early-vote-presidential-panel .early-vote-history-scroll table{min-width:1050px}.early-vote-national-history-panel .early-vote-history-scroll table{min-width:720px}.early-vote-history-scroll th,.early-vote-history-scroll td{padding:12px 13px;color:var(--ink);background:var(--white);text-align:right;vertical-align:middle}.early-vote-history-scroll thead th{color:var(--soft-ink);background:var(--paper);font:900 9px/1.25 var(--label);letter-spacing:.035em}.early-vote-history-scroll th:first-child,.early-vote-history-scroll td:first-child{position:sticky;left:0;z-index:1;text-align:left;box-shadow:1px 0 0 var(--line)}.early-vote-history-scroll tbody th{min-width:115px}.early-vote-history-scroll tbody th b{display:block;font:900 24px/.9 var(--heading)}.early-vote-history-scroll tbody td{font:900 15px/1 var(--label)}.early-vote-history-scroll tbody small{display:block;margin-top:6px;color:var(--soft-ink);font:900 8px/1.2 var(--label)}.early-vote-history-scroll tbody tr.is-not-comparable td:last-child strong{color:var(--rose);font-size:12px}.early-vote-presidential-winner{font:900 11px/1.2 var(--label)}.early-vote-presidential-winner.is-dem{color:var(--blue)}.early-vote-presidential-winner.is-rep{color:var(--rose)}.early-vote-history-mail{display:grid;gap:1px;background:var(--line)}.early-vote-history-mail>header{min-height:45px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 16px;background:var(--paper)}.early-vote-history-mail>header span{font:900 10px/1 var(--label)}.early-vote-history-mail>header small{color:var(--soft-ink);font:900 8px/1.2 var(--label);text-align:right}.early-vote-history-mail .early-vote-history-scroll table{min-width:620px}.early-vote-county-layout{min-height:470px;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.65fr);gap:1px;background:var(--line)}.early-vote-county-map{min-width:0;display:grid;grid-template-rows:minmax(0,1fr) 34px;background:var(--paper)}.early-vote-county-map-svg{width:100%;height:100%;min-height:420px;display:block}.early-vote-county-map footer{display:flex;align-items:center;justify-content:center;gap:8px;padding:6px 10px;color:var(--soft-ink);background:var(--white);font:900 9px/1 var(--label)}.early-vote-county-map footer i{width:min(220px,35%);height:9px;background:linear-gradient(90deg,#edf2f5,#d7f0f4,#075e78)}.early-vote-county-map-empty{min-height:330px;display:grid;place-content:center;color:var(--soft-ink);background:var(--paper);font:900 12px/1.2 var(--label);text-align:center}.early-vote-county-layout ol{display:grid;align-content:start;gap:1px;margin:0;padding:0;background:var(--line);list-style:none}.early-vote-county-layout li{min-width:0;min-height:54px;display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 11px;background:var(--white)}.early-vote-county-layout li b{color:#23849b;font:900 10px/1 var(--label)}.early-vote-county-layout li span{overflow:hidden;font:900 11px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.early-vote-county-layout li strong{font:900 15px/1 var(--label)}.early-vote-history-panel>p,.early-vote-archive-panel>p,.early-vote-presidential-panel>p,.early-vote-national-history-panel>p,.early-vote-county-panel>p,.early-vote-pipeline-panel>p{margin:0;padding:11px 16px;color:var(--soft-ink);background:var(--paper);font:800 10px/1.35 var(--label);text-transform:uppercase}.early-vote-pipeline{min-height:150px;display:grid;grid-template-columns:minmax(150px,1fr) 38px minmax(150px,1fr) 38px minmax(150px,1fr) 38px minmax(180px,1fr);align-items:stretch;gap:1px;background:var(--line)}.early-vote-pipeline article{min-width:0;display:grid;align-content:center;gap:7px;padding:13px 15px;background:var(--white)}.early-vote-pipeline article>span{color:var(--soft-ink);font:900 10px/1.1 var(--label)}.early-vote-pipeline article>strong{font:900 34px/.9 var(--heading)}.early-vote-pipeline article>small{color:var(--ink);font:900 9px/1.2 var(--label)}.early-vote-pipeline article.is-unavailable{color:var(--soft-ink);background:var(--paper)}.early-vote-pipeline>i,.early-vote-pipeline>b{display:grid;place-content:center;color:#23849b;background:var(--paper);font:normal 900 24px/1 var(--label)}.early-vote-quality-panel>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line)}.early-vote-quality-panel>div>b{min-height:54px;display:grid;place-content:center;padding:9px;color:var(--ink);background:var(--white);font:900 10px/1.2 var(--label);text-align:center}.early-vote-provenance>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line)}.early-vote-provenance article{min-height:100px;display:grid;align-content:center;gap:9px;padding:13px 16px;background:var(--white)}.early-vote-provenance article p{margin:0;color:var(--soft-ink);font:750 11px/1.35 var(--label);text-transform:uppercase}.early-vote-provenance nav{display:flex;justify-content:end;gap:1px;background:var(--line)}.early-vote-provenance nav a{min-height:46px;display:inline-flex;align-items:center;justify-content:center;padding:0 13px;color:var(--ink);background:var(--white);font:900 10px/1 var(--label);text-decoration:none}.early-vote-provenance nav a:hover,.early-vote-provenance nav a:focus-visible{color:var(--white);background:#075e78}@media(max-width:1100px){.early-vote-history-dialog{width:98vw;height:94dvh}.early-vote-history-table{min-width:960px}.early-vote-history-summary,.early-vote-history-note{grid-template-columns:1fr}.early-vote-dialog{width:98vw;height:94dvh}.early-vote-state-profile{grid-template-rows:104px 54px minmax(0,1fr)}.early-vote-dialog-identity .state-flag{width:88px;height:58px}.early-vote-dialog-identity h1{font-size:38px}.early-vote-dialog-header>button{width:58px;height:58px}.early-vote-state-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.early-vote-state-registration-summary,.early-vote-method-grid{grid-template-columns:1fr}.early-vote-demographics>div{grid-template-columns:1fr}.early-vote-state-caveats{grid-template-columns:1fr}.early-vote-state-caveats nav{flex-wrap:wrap}.early-vote-race-status-grid.has-polling{grid-template-columns:1fr}.early-vote-context-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.early-vote-county-layout{grid-template-columns:minmax(0,1.5fr) minmax(220px,.7fr)}}@media(max-width:720px){.early-vote-context-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.early-vote-pipeline{grid-template-columns:1fr}.early-vote-pipeline>i,.early-vote-pipeline>b{min-height:30px;transform:rotate(90deg)}}.night-workspace,.civlab-shell{min-height:100%;display:grid;gap:1px;background:var(--line)}.night-workspace{grid-template-rows:auto auto minmax(220px,1fr) auto}.night-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--line)}.night-summary article{min-height:86px;display:grid;align-content:center;gap:5px;padding:12px 16px;background:var(--white)}.night-summary span,.night-toolbar span,.night-method,.timeline-status span,.timeline-status small,.timeline-chambers span,.timeline-chambers small,.timeline-rail header span,.timeline-detail>span,.civlab-disclaimer span,.civlab-lab>header span,.civlab-chamber>span,.civlab-chamber small,.civlab-coverage small,.civlab-society-status span,.civlab-society-status small,.civlab-gauge span{color:var(--soft-ink);font:800 12px/1.15 var(--label);letter-spacing:.04em}.night-summary strong{color:var(--ink);font:800 31px/.9 var(--heading)}.night-toolbar{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;background:var(--white)}.night-toolbar>div{display:flex;align-items:center;gap:8px}.night-filter{min-width:0;overflow-x:auto}.night-toolbar button,.timeline-status button,.timeline-detail button,.civlab-scenarios button{min-height:38px;padding:0 11px;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);font:800 12px/1 var(--label);letter-spacing:.025em}.night-toolbar button.is-active,.civlab-scenarios button.is-active{color:var(--white);background:var(--ink);border-color:var(--ink)}.night-event-list{min-height:0;overflow:auto;display:grid;align-content:start;gap:1px;background:var(--line)}.night-event-card{min-width:0;min-height:82px;display:grid;grid-template-columns:minmax(0,1fr) auto;background:var(--white);border-left:6px solid var(--line-bright)}.night-event-card[data-priority="3"]{border-left-color:var(--gold)}.night-event-card[data-priority="4"]{border-left-color:var(--rose)}.night-event-card.is-watched{box-shadow:inset 0 -3px color-mix(in srgb,var(--gold) 45%,transparent)}.night-event-card.is-selected{background:color-mix(in srgb,var(--cyan) 10%,var(--white));border-left-color:var(--cyan)}.night-event-main{min-width:0;display:grid;gap:5px;padding:11px 14px;text-align:left;background:transparent;border:0}.night-event-main span{color:var(--soft-ink);font:800 11px/1 var(--label);letter-spacing:.035em}.night-event-main strong{overflow:hidden;color:var(--ink);font:800 22px/.95 var(--heading);text-overflow:ellipsis;white-space:nowrap}.night-event-main small{color:var(--soft-ink);font:700 13px/1.2 var(--body)}.night-event-flags{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:5px;padding:10px 12px}.night-event-flags b,.timeline-detail b{padding:6px 8px;color:var(--white);background:var(--soft-ink);font:800 10px/1 var(--label)}.night-event-flags b[data-alert-kind=call]{background:var(--rose)}.night-event-flags b[data-alert-kind=lead-change],.night-event-flags b[data-alert-kind=tight-race]{color:var(--ink);background:var(--gold)}.night-event-flags b.is-watched{color:var(--ink);background:var(--white);border:1px solid var(--gold)}.night-method{min-height:35px;display:flex;align-items:center;padding:0 12px;background:var(--white)}.timeline-workspace{grid-template-rows:auto auto minmax(280px,1fr) auto}.timeline-status{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 14px;background:var(--white);border-left:8px solid var(--cyan)}.timeline-status.is-replay{border-left-color:var(--gold)}.timeline-status>div{min-width:0;display:grid;gap:4px}.timeline-status strong{font:800 28px/.92 var(--heading)}.timeline-status nav{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.timeline-status button.is-danger{border-color:var(--rose)}.timeline-chambers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line)}.timeline-chambers article{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 12px;min-height:80px;padding:10px 14px;background:var(--white)}.timeline-chambers strong{display:flex;gap:12px;font:800 22px/1 var(--heading)}.timeline-chambers strong b{color:var(--blue)}.timeline-chambers strong i{color:var(--rose);font-style:normal}.timeline-chambers small{grid-column:1 / -1}.timeline-layout{min-height:0;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:1px;overflow:hidden;background:var(--line)}.timeline-rail{min-height:0;overflow:auto;display:grid;align-content:start;gap:1px;background:var(--line)}.timeline-rail>header{min-height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;background:var(--white)}.timeline-rail>header strong{font:800 23px/1 var(--heading)}.timeline-detail{min-width:0;display:grid;align-content:start;gap:12px;padding:20px;background:var(--white)}.timeline-detail>strong{font:800 30px/.95 var(--heading)}.timeline-detail>div{display:flex;flex-wrap:wrap;gap:5px}.timeline-detail p{margin:0;color:var(--soft-ink);font:600 15px/1.45 var(--body)}.timeline-detail button{width:fit-content}.civlab-shell{align-content:start}.civlab-disclaimer{display:grid;grid-template-columns:minmax(280px,.55fr) minmax(0,1.45fr);align-items:center;gap:20px;min-height:82px;padding:12px 16px;color:var(--white);background:var(--ink)}.civlab-disclaimer span{color:color-mix(in srgb,var(--white) 65%,transparent)}.civlab-disclaimer strong{display:block;margin-top:4px;color:var(--white);font:800 28px/.9 var(--heading)}.civlab-disclaimer p{margin:0;color:var(--white);font:600 14px/1.4 var(--body)}.civlab-lab{display:grid;background:var(--white)}.civlab-lab>header{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 14px;border-bottom:1px solid var(--line)}.civlab-lab>header>div:first-child{display:grid;gap:4px}.civlab-lab>header strong{font:800 25px/.9 var(--heading)}.civlab-scenarios{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:5px}.civlab-scenarios button.is-remove{color:var(--rose)}.civlab-grid{display:grid;grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr);gap:1px;background:var(--line)}.civlab-controls{display:grid;align-content:start;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}.civlab-control{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:67px;padding:9px 12px;background:var(--white)}.civlab-control span{color:var(--soft-ink);font:800 11px/1.15 var(--label);letter-spacing:.025em}.civlab-control output{color:var(--ink);font:800 16px/1 var(--label)}.civlab-control input{grid-column:1 / -1;width:100%;accent-color:var(--blue)}.civlab-results{min-width:0;display:grid;align-content:start;gap:1px;background:var(--line)}.civlab-chambers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line)}.civlab-chamber{min-height:102px;display:grid;align-content:center;gap:7px;padding:12px;background:var(--white)}.civlab-chamber strong{display:flex;gap:12px;font:800 23px/1 var(--heading)}.civlab-chamber strong b{color:var(--blue)}.civlab-chamber strong i{color:var(--rose);font-style:normal}.civlab-coverage{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line)}.civlab-coverage>span{min-height:84px;display:grid;align-content:center;gap:6px;padding:10px 12px;background:var(--white)}.civlab-coverage strong{font:800 28px/.9 var(--heading)}.civlab-society-status{min-height:78px;display:grid;grid-template-columns:1fr auto;align-content:center;gap:5px 12px;padding:12px 14px;background:var(--white)}.civlab-society-status strong{color:var(--purple);font:800 28px/.9 var(--heading);text-transform:uppercase}.civlab-society-status small{grid-column:1 / -1}.civlab-gauges{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line)}.civlab-gauge{min-height:90px;display:grid;grid-template-columns:1fr auto;align-content:center;gap:8px;padding:10px 12px;background:var(--white)}.civlab-gauge strong{font:800 23px/1 var(--heading)}.civlab-gauge>i{grid-column:1 / -1;height:8px;overflow:hidden;background:var(--line)}.civlab-gauge>i>b{display:block;height:100%;background:var(--purple)}.civlab-gauge.is-positive>i>b{background:var(--green)}.civlab-gauge.is-warning>i>b{background:var(--rose)}@media(max-width:1200px){.module-tabs{overflow-x:auto;grid-template-columns:repeat(14,minmax(92px,1fr))}.module-tabs button{font-size:12px}.civlab-grid{grid-template-columns:1fr}.civlab-controls{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.night-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.night-toolbar,.timeline-status,.civlab-lab>header{align-items:stretch;flex-direction:column}.night-toolbar>div{flex-wrap:wrap}.night-event-card{grid-template-columns:1fr}.night-event-flags{justify-content:flex-start}.timeline-chambers,.timeline-layout,.civlab-disclaimer,.civlab-chambers,.civlab-gauges{grid-template-columns:1fr}.timeline-layout{overflow:visible}.civlab-controls{grid-template-columns:1fr}.civlab-coverage{grid-template-columns:repeat(2,minmax(0,1fr))}}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}body{color:var(--ink);background:var(--white);font-family:var(--body)}button,input,select{font:inherit}button{color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.38}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}.candidate-link-cluster{min-width:0;max-width:100%;display:inline-flex;align-items:center;gap:7px}.candidate-link-cluster>.candidate-link{flex:1 1 auto}.candidate-link{min-width:0;display:inline-flex;align-items:center;gap:9px;color:inherit;text-decoration:none}.candidate-link:hover .candidate-link-label,.candidate-link:focus-visible .candidate-link-label{color:var(--blue);text-decoration:underline;text-decoration-color:var(--cyan);text-underline-offset:4px}.candidate-link-label{overflow:hidden;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.candidate-career-button{min-width:58px;min-height:42px;flex:0 0 auto;padding:0 7px;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);font:900 10px/1 var(--label);letter-spacing:.035em}.candidate-career-button:hover,.candidate-career-button:focus-visible{color:var(--white);background:var(--blue);border-color:var(--blue)}.candidate-portrait{position:relative;width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;overflow:hidden;color:var(--white);background:var(--soft-ink);border:2px solid var(--line-bright);border-radius:50%}.candidate-portrait img{position:absolute;inset:0;z-index:1;width:100%;height:100%;object-fit:cover;object-position:center 18%;background:var(--paper)}.candidate-portrait.is-fallback img{display:none}.candidate-initials{font:800 15px/1 var(--label);letter-spacing:.03em}.state-flag{position:relative;width:108px;height:68px;flex:0 0 auto;display:grid;place-items:center;overflow:hidden;color:var(--ink);background:var(--paper);border:1px solid var(--line-bright)}.state-flag img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:var(--white)}.state-flag .state-flag-fallback{color:var(--soft-ink);font:800 23px/1 var(--label);letter-spacing:.08em}.state-flag.is-unavailable{border-style:dashed}.control-shell{width:100vw;height:100vh;display:grid;grid-template-rows:104px 76px minmax(0,1fr) 62px;overflow:hidden;background:var(--line)}.topbar{display:grid;grid-template-columns:minmax(470px,.88fr) minmax(760px,1.12fr);align-items:stretch;border-bottom:1px solid var(--line-bright);background:var(--white)}.title-block{display:grid;align-content:center;gap:3px;padding:0 22px}.title-block strong{font:800 44px/.88 var(--heading);letter-spacing:.045em}.title-block span{color:var(--soft-ink);font:700 22px/1 var(--label);letter-spacing:.06em}.polls-clock{min-width:0;min-height:25px;display:flex;align-items:center;gap:8px;margin-top:2px;color:var(--ink);white-space:nowrap}.polls-clock #polls-clock-label{overflow:hidden;color:var(--soft-ink);font:800 12px/1 var(--label);letter-spacing:.025em;text-overflow:ellipsis}.polls-clock #polls-clock-value{flex:0 0 auto;color:var(--ink);font:800 21px/1 var(--label);letter-spacing:-.025em}.polls-clock .polls-clock-info{width:22px;height:22px;min-width:22px;margin:0;border-width:1px;font-size:14px}.text-scale-control{flex:0 0 auto;height:28px;display:grid;grid-template-columns:34px 46px 34px;gap:1px;margin-left:2px;padding:2px;background:var(--line);border:1px solid var(--line)}.text-scale-control button,.text-scale-control output{min-width:0;display:grid;place-items:center;padding:0;color:var(--ink);background:var(--white);border:0;font:900 9px/1 var(--label)}.text-scale-control button:hover:not(:disabled),.text-scale-control button:focus-visible:not(:disabled){color:var(--white);background:var(--blue)}.text-scale-control button:disabled{color:var(--line-bright);background:var(--paper)}.text-scale-control output{color:var(--white);background:var(--ink)}.zone-clocks{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--line)}.zone-clocks div{display:grid;place-content:center;gap:5px;padding:0 12px;text-align:right;border-right:1px solid var(--line)}.zone-clocks div:last-child{border-right:0}.zone-clocks span{color:var(--soft-ink);font:700 21px/1 var(--label);letter-spacing:.08em}.zone-clocks strong{font:800 30px/1 var(--label);letter-spacing:-.04em}.module-tabs{display:grid;grid-template-columns:repeat(14,minmax(0,1fr));border-bottom:1px solid var(--line-bright);background:var(--paper)}.module-tabs button,.desk-footer button,.map-controls button,.whiteboard-tools button,.panel-actions button,.output-actions button{min-width:0;border:0;border-right:1px solid var(--line);background:transparent;color:var(--soft-ink);font:800 22px/1 var(--label);letter-spacing:.02em}.module-tabs button:hover{color:var(--blue);background:var(--white)}.module-tabs button.is-active{color:var(--ink);background:var(--white);box-shadow:inset 0 -5px 0 var(--blue)}.module-tabs button{font-size:clamp(13px,1.05vw,19px)}.workspace{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:minmax(350px,46%) 74px minmax(0,1fr);grid-template-areas:"map drawer" "dataset drawer" "data drawer";gap:1px;overflow:hidden;background:var(--line)}.workspace.is-map-drawer-collapsed{grid-template-rows:78px 74px minmax(0,1fr)}.workspace[data-module=map][data-map-size=compact]{grid-template-rows:minmax(260px,34%) 74px minmax(0,1fr)}.workspace[data-module=map][data-map-size=micro]{grid-template-rows:minmax(130px,17%) 74px minmax(0,1fr)}.workspace[data-module=map][data-map-size=large]{grid-template-rows:minmax(430px,58%) 74px minmax(0,1fr)}.workspace[data-module=map].is-map-drawer-collapsed{grid-template-rows:78px 74px minmax(0,1fr)}.map-panel{grid-area:map;min-width:0;min-height:0;display:grid;grid-template-rows:78px minmax(0,1fr);background:var(--white)}.map-panel.is-collapsed{grid-template-rows:78px}.map-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px;border-bottom:1px solid var(--line);background:var(--white)}.map-panel.is-drawer-enabled>.map-header{cursor:pointer}.map-panel.is-drawer-enabled>.map-header :is(button,a,input,select,textarea,[role=group]){cursor:auto}.map-panel.is-drawer-enabled>.map-header button,.map-panel.is-drawer-enabled>.map-header a{cursor:pointer}.map-header>div:first-child{display:grid;gap:5px}.map-header-actions{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:12px}.map-result-control,.map-size-control,.playmap-display-control,.early-vote-display-control{min-height:46px;display:grid;grid-template-columns:auto repeat(3,auto);align-items:center;gap:1px;padding:3px;background:var(--line);border:1px solid var(--line)}.map-size-control,.map-result-control{grid-template-columns:auto repeat(4,auto)}.playmap-display-control,.early-vote-display-control{grid-template-columns:auto repeat(2,auto)}.map-result-control[hidden],.map-size-control[hidden],.playmap-display-control[hidden],.early-vote-display-control[hidden]{display:none}.map-header .map-result-control>span,.map-header .map-size-control>span,.map-header .playmap-display-control>span,.map-header .early-vote-display-control>span{padding:0 7px;color:var(--soft-ink);background:var(--white);font:900 9px/1 var(--label);letter-spacing:.04em}.map-result-control button,.map-size-control button,.playmap-display-control button,.early-vote-display-control button{min-width:58px;align-self:stretch;padding:0 7px;color:var(--soft-ink);background:var(--white);border:0;font:900 9px/1 var(--label)}.playmap-display-control button[data-playmap-display=composition],.playmap-display-control button[data-playmap-display=change]{min-width:72px}.map-result-control button[data-main-map-result=governor]{min-width:74px}.map-result-control button:hover,.map-result-control button:focus-visible,.map-size-control button:hover,.map-size-control button:focus-visible,.playmap-display-control button:hover,.playmap-display-control button:focus-visible,.early-vote-display-control button:hover,.early-vote-display-control button:focus-visible{color:var(--blue)}.map-result-control button.is-active,.map-size-control button.is-active,.playmap-display-control button.is-active,.early-vote-display-control button.is-active{color:var(--white);background:var(--ink)}.map-header span,.panel-header span,.dataset-strip span,.state-dialog-copy>span{color:var(--soft-ink);font:700 21px/1 var(--label);letter-spacing:.035em}.map-mode-kicker{display:inline-flex;align-items:center;gap:3px}.map-header strong{font:800 34px/.9 var(--heading);letter-spacing:.035em}.info-button{display:inline-grid;width:29px;height:29px;min-height:0!important;place-items:center;margin:0 0 5px 3px;padding:0;vertical-align:super;color:var(--blue);background:var(--white);border:2px solid var(--blue);border-radius:50%;font:italic 800 19px/1 Georgia,serif}.map-legend{display:grid;grid-template-columns:auto 26px;align-items:center;gap:2px 7px}.map-legend i{display:block;width:26px;height:7px;background:currentColor}.map-legend .legend-dem{color:var(--blue)}.map-legend .legend-even{color:var(--purple)}.map-legend .legend-rep{color:var(--rose)}#workspace[data-module=president] .map-legend span{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer-toggle{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 10px;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);font:900 12px/1 var(--label);letter-spacing:.04em}.drawer-toggle:hover,.drawer-toggle:focus-visible{color:var(--blue);border-color:var(--blue)}.drawer-toggle>strong{display:inline-block;font:900 18px/1 var(--label);transition:transform .12s ease}.drawer-toggle:not(.is-open)>strong{transform:rotate(180deg)}.drawer-toggle[hidden]{display:none}.map-drawer-toggle{min-width:78px;min-height:48px}.map-workspace{min-height:0;display:grid;grid-template-columns:82px minmax(0,1fr) 102px;background:var(--paper)}.map-workspace[hidden]{display:none}.map-host{position:relative;min-width:0;min-height:0;overflow:hidden;background:var(--paper)}.map-state-drilldown-toolbar{position:absolute;z-index:6;top:112px;left:14px;max-width:calc(100% - 28px);display:flex;align-items:stretch;gap:1px;color:var(--white);background:var(--ink);border:2px solid var(--ink);box-shadow:0 8px 24px #10203338}.map-state-drilldown-toolbar[hidden]{display:none}.map-state-drilldown-back{min-height:52px;padding:0 15px;color:var(--white);background:var(--ink);border:0;font:900 14px/1 var(--label);letter-spacing:.035em;white-space:nowrap}.map-state-drilldown-back:hover,.map-state-drilldown-back:focus-visible{color:var(--ink);background:var(--white)}.map-state-drilldown-toolbar>div{min-width:0;display:grid;align-content:center;gap:4px;padding:6px 13px;background:var(--white)}.map-state-drilldown-toolbar span{color:var(--soft-ink);font:900 10px/1 var(--label);letter-spacing:.06em}.map-state-drilldown-toolbar strong{overflow:hidden;color:var(--ink);font:900 18px/1 var(--heading);letter-spacing:.025em;text-overflow:ellipsis;white-space:nowrap}.state-drilldown-loading{fill:var(--soft-ink);font:900 20px/1 var(--label);letter-spacing:.05em}.state-drilldown-layer .state-district-label{font-size:22px;stroke-width:4px}.map-score-overlay{position:absolute;z-index:4;top:12px;right:12px;left:12px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;pointer-events:none;color:var(--ink);background:var(--ink);border:2px solid var(--ink);box-shadow:0 8px 24px #1020332e}.map-score-overlay[hidden]{display:none}.map-score-card{min-width:0;min-height:86px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto minmax(0,1fr);align-items:center;gap:2px 8px;padding:8px 12px;background:#fffffff5}.map-score-card>span{grid-column:1;grid-row:1;color:var(--soft-ink);font:900 10px/1 var(--label);letter-spacing:.07em}.map-score-card>small{grid-column:2;grid-row:1;color:var(--soft-ink);font:900 9px/1 var(--label)}.map-score-values{grid-column:1 / -1;grid-row:2;min-width:0;display:flex;align-items:baseline;justify-content:space-between;gap:8px;white-space:nowrap}.map-score-values strong{font:900 clamp(34px,3.8vw,58px)/.78 var(--heading);letter-spacing:-.035em}.map-score-values .is-dem{color:var(--blue)}.map-score-values .is-rep{color:var(--rose)}.map-score-values b{flex:0 0 auto;color:var(--white);background:var(--purple);padding:4px 5px;font:900 9px/1 var(--label)}#workspace[data-module=calls] .map-score-values b.is-uncalled{color:var(--ink);background:#d5dbe0}.watched-race-marker{cursor:pointer}.abigail-map-whiteboard svg[data-tool=SELECT],.abigail-map-whiteboard svg[data-tool=PAN],.abigail-map-whiteboard .geography-hit,.abigail-map-whiteboard .state-district-shape{cursor:grab}.abigail-map-whiteboard.is-panning svg,.abigail-map-whiteboard.is-panning .geography-hit,.abigail-map-whiteboard.is-panning .state-district-shape{cursor:grabbing}.abigail-map-whiteboard .geography-hit.is-selected{cursor:zoom-in}.abigail-map-whiteboard .state-district-shape.is-stylus-focus{filter:brightness(1.06) drop-shadow(0 0 5px rgba(0,166,200,.85));stroke:var(--cyan);stroke-width:3}.watched-race-dot-halo{opacity:0;transition:opacity 90ms ease}.watched-race-marker:hover .watched-race-dot-halo,.watched-race-marker:focus-visible .watched-race-dot-halo{opacity:1}.watched-race-tooltip{visibility:hidden;opacity:0;transition:opacity 90ms ease,visibility 0s linear 90ms}.watched-race-tooltip.is-visible{visibility:visible;opacity:1;transition-delay:0s}.watched-race-tooltip.is-visible .watched-race-tooltip-shell{filter:drop-shadow(0 8px 12px rgba(16,32,51,.22))}.watched-race-marker:focus{outline:none}.whiteboard-tools,.map-controls{z-index:2;display:flex;flex-direction:column;background:var(--white)}.whiteboard-tools{overflow-y:auto;border-right:1px solid var(--line-bright)}.map-controls{border-left:1px solid var(--line-bright)}.whiteboard-tools button{flex:1;min-height:48px;padding:0 3px;border-right:0;border-bottom:1px solid var(--line);font-size:18px}.whiteboard-tools button.is-active,.map-controls button.is-active{color:var(--white);background:var(--blue)}.ink-color-controls,.whiteboard-command-controls{flex:0 0 auto;display:grid;gap:1px;padding:3px;background:var(--line);border-top:2px solid var(--ink)}.ink-color-controls{grid-template-columns:1fr}.whiteboard-tools .ink-color-controls button{min-height:31px;display:grid;grid-template-columns:14px minmax(0,1fr);align-items:center;gap:5px;padding:0 4px;color:var(--ink);background:var(--white);border:0;font-size:10px;text-align:left}.whiteboard-tools .ink-color-controls button.is-active{box-shadow:inset 0 0 0 3px var(--ink)}.ink-color-controls i{width:13px;height:13px;background:var(--ink-swatch);border:1px solid var(--ink);border-radius:50%}.whiteboard-command-controls{grid-template-columns:1fr}.whiteboard-tools .whiteboard-command-controls button{flex:0 0 auto;min-height:38px;padding:2px;color:var(--ink);background:var(--white);border:0;font-size:11px}.whiteboard-tools .whiteboard-command-controls button:disabled{color:var(--line-bright);background:var(--paper)}.map-controls .segmented{display:grid;margin-bottom:auto}.map-controls button{min-height:56px;padding:0 3px;border-right:0;border-bottom:1px solid var(--line);font-size:16px;overflow-wrap:anywhere}.map-controls #zoom-in,.map-controls #zoom-out{font:500 44px/1 var(--body)}.dataset-strip{grid-area:dataset;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line)}.dataset-strip>div{min-width:0;display:grid;align-content:center;gap:7px;padding:0 10px;background:var(--white)}.dataset-strip span{font-size:15px;letter-spacing:0}.dataset-strip strong{overflow:hidden;font:800 27px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.dataset-strip>div:last-child strong{color:var(--soft-ink);font-size:18px}.count-card{min-width:0;display:grid;grid-template-rows:22px minmax(0,1fr);padding:5px 8px;background:var(--white)}.count-card>header{min-width:0;display:flex;align-items:center;border-bottom:1px solid var(--line)}.count-card>header span{overflow:hidden;color:var(--ink);font:800 13px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.count-card .info-button{width:17px;height:17px;min-width:17px;margin:0 0 1px 2px;border-width:1px;font-size:11px}.count-card-values{min-width:0;min-height:0;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));align-items:stretch;overflow:hidden}html[data-polling-presentation=hidden] .count-card:not(.player-card) .count-card-values{grid-template-rows:repeat(2,minmax(0,1fr))}.count-card-values>[data-polling-presentation-item][hidden]{display:none!important}.player-card .count-card-values{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:1fr}.count-card-values>div{min-width:0;display:grid;align-content:center;gap:3px;padding:0 7px;border-left:1px solid var(--line)}.count-card-values>div:first-child{padding-left:0;border-left:0}.count-card:not(.player-card) .count-card-values>div{grid-template-columns:66px minmax(0,1fr);align-items:center;gap:4px;padding:0;border-top:1px solid var(--line);border-left:0}.count-card:not(.player-card) .count-card-values>div:first-child{border-top:0}.count-card-values small{overflow:hidden;color:var(--soft-ink);font:800 9px/1 var(--label);letter-spacing:.025em;text-overflow:ellipsis;white-space:nowrap}.count-card-values .info-button{width:11px;height:11px;min-width:11px;margin:0;border-width:1px;font-size:8px}.count-card-values strong{overflow:hidden;color:var(--ink);font:800 12px/1 var(--label);letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap}.count-card-values>div:nth-child(2) strong{color:var(--purple)}.count-card-values>div:nth-child(3) strong{color:var(--blue)}.player-card .count-card-values>div:nth-child(3) strong{color:var(--green)}.player-card .count-card-values>div:nth-child(4) strong{color:var(--gold)}.data-panel{grid-area:data;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--white)}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px;border-bottom:1px solid var(--line);background:var(--white)}.data-panel>.panel-header{flex:0 0 84px}.panel-header>div:first-child{display:grid;gap:5px}.panel-header>div:first-child strong{font:800 34px/.9 var(--heading);letter-spacing:.035em}.panel-actions{min-width:0;display:flex;align-items:stretch;gap:7px;height:62px}.panel-actions>button{min-width:164px;padding:0 9px;border:1px solid var(--line-bright);background:var(--paper);font-size:17px}.search-field{width:min(520px,36vw);min-width:250px;display:grid;grid-template-rows:18px 1fr;gap:3px}.search-field span{font-size:15px}.search-field input{width:100%;min-width:0;padding:0 10px;color:var(--ink);background:var(--white);border:2px solid var(--line-bright);border-radius:0;font:700 19px/1 var(--label)}.search-field input::placeholder{color:#6f7d8a}.panel-view{display:none;min-height:0;overflow:hidden}.panel-view.is-active{flex:1 1 0;display:block}#directory-view.is-active{overflow:auto}.race-directory{display:grid;grid-template-columns:1fr;background:var(--line)}.race-flag-filter{position:sticky;top:0;z-index:7;display:grid;gap:8px;padding:10px 14px 12px;background:color-mix(in srgb,var(--white) 96%,transparent);border-bottom:2px solid var(--ink);box-shadow:0 8px 18px #08121c14;backdrop-filter:blur(10px)}.race-flag-filter>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.race-flag-filter>header span{color:var(--ink);font:900 13px/1 var(--label);letter-spacing:.08em}.race-flag-filter>header strong{color:var(--soft-ink);font:900 13px/1 var(--label)}.race-flag-filter-buttons{display:flex;align-items:stretch;flex-wrap:wrap;gap:6px}.race-flag-filter-button{min-height:36px;display:inline-grid;grid-template-columns:auto auto;align-items:center;gap:9px;padding:0 9px;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);font:850 12px/1 var(--label);letter-spacing:.025em}.race-flag-filter-button b{min-width:24px;padding:4px 5px;color:var(--soft-ink);background:var(--paper);font:900 11px/1 var(--label);text-align:center}.race-flag-filter-button:hover,.race-flag-filter-button:focus-visible{color:var(--blue);border-color:var(--blue)}.race-flag-filter-button.is-active{color:var(--white);background:var(--ink);border-color:var(--ink);box-shadow:inset 0 -4px 0 var(--cyan)}.race-flag-filter-button.is-active b{color:var(--ink);background:var(--white)}.seat-score-view{flex:0 0 auto;min-height:0;display:grid;grid-template-rows:auto auto;padding:6px 14px 10px;overflow:hidden;background:var(--paper);border-bottom:1px solid var(--line-bright)}.seat-score-view[hidden]{display:none}.seat-score-header{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:14px}.seat-score-header>div:first-child{display:flex;align-items:baseline;gap:10px;white-space:nowrap}.seat-score-header span,.seat-score-kicker{color:var(--soft-ink);font:800 15px/1 var(--label);letter-spacing:.04em}.seat-score-header strong{font:800 28px/.9 var(--heading);letter-spacing:.035em}.seat-score-header-actions{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:8px}.seat-score-summary{min-width:0;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:5px}.seat-score-summary>*{min-height:30px;display:inline-flex;align-items:center;gap:6px;padding:0 8px;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);font:800 15px/1 var(--label)}.seat-score-summary [data-party=DEM],.seat-score-summary .dem{color:var(--blue);border-color:var(--blue)}.seat-score-summary [data-party=REP],.seat-score-summary .rep{color:var(--rose);border-color:var(--rose)}.seat-score-summary [data-party=OTHER],.seat-score-summary .other{color:var(--purple);border-color:var(--purple)}.seat-score-drawer-toggle{flex:0 0 auto}.seat-score-details{min-width:0;min-height:0;display:grid;grid-template-columns:minmax(500px,1fr) auto;column-gap:12px}.seat-score-details[hidden]{display:none}.analyst-outlook{grid-column:1;grid-row:1;align-self:stretch;display:grid;grid-template-columns:minmax(310px,1.25fr) minmax(250px,.9fr) minmax(220px,.75fr);gap:1px;margin:3px 0 2px;background:var(--line);border:1px solid var(--line-bright)}.analyst-outlook-lead,.analyst-outlook-metrics,.analyst-outlook-watch,.analyst-outlook-sources{min-width:0;background:var(--white)}.analyst-outlook-lead{grid-row:1 / span 2;display:grid;align-content:center;gap:5px;padding:10px 12px;box-shadow:inset 5px 0 0 var(--blue)}.analyst-outlook-lead>span,.analyst-outlook-watch>span{color:var(--soft-ink);font:800 11px/1 var(--label);letter-spacing:.04em}.analyst-outlook-lead>strong{color:var(--blue);font:800 23px/.95 var(--heading);letter-spacing:.03em}.analyst-outlook-lead>p{margin:0;color:var(--ink);font:600 13px/1.3 var(--body)}.analyst-outlook-lead .info-button{width:17px;height:17px;min-width:17px;margin:0 0 0 3px;font-size:10px;vertical-align:middle}.analyst-outlook-metrics{display:flex;align-content:center;align-items:center;flex-wrap:wrap;gap:4px;padding:8px}.analyst-outlook-metrics span{min-height:25px;display:inline-flex;align-items:center;padding:0 6px;color:var(--ink);background:var(--paper);border:1px solid var(--line-bright);font:800 10px/1 var(--label)}.analyst-outlook-watch{display:grid;align-content:center;gap:4px;padding:8px 10px}.analyst-outlook-watch strong{color:var(--ink);font:800 12px/1.25 var(--label)}.analyst-outlook-sources{grid-column:2 / 4;display:flex;align-items:center;flex-wrap:wrap;gap:4px;padding:5px 8px}.analyst-outlook-sources a{min-height:24px;display:inline-flex;align-items:center;padding:0 6px;color:var(--blue);background:var(--white);border:1px solid var(--blue);font:800 9px/1 var(--label);text-decoration:none}.analyst-outlook-sources a:hover,.analyst-outlook-sources a:focus-visible{color:var(--white);background:var(--blue)}.seat-score-dots{--seat-columns: 29;grid-column:2;grid-row:1;align-self:center;display:grid;grid-template-columns:repeat(var(--seat-columns),11px);grid-auto-rows:11px;justify-content:center;gap:3px;width:auto;padding:2px 0}#workspace[data-module=house] .seat-score-dots{--seat-columns: 44}#workspace[data-module=senate] .seat-score-dots{--seat-columns: 25}#workspace[data-module=governor] .seat-score-dots{--seat-columns: 10}.seat-dot{width:11px;height:11px;min-width:0;min-height:0;padding:0;background:#7c8b98;border:0;border-radius:50%;appearance:none}.seat-dot[data-party=DEM],.seat-dot.is-dem,.seat-dot.party-dem{background:var(--blue)}.seat-dot[data-party=REP],.seat-dot.is-rep,.seat-dot.party-rep{background:var(--rose)}.seat-dot[data-party=OTHER],.seat-dot[data-party=IND],.seat-dot.is-other,.seat-dot.party-other{background:var(--purple)}.seat-dot.is-up{outline:1px solid var(--ink);outline-offset:1px}.seat-dot:hover,.seat-dot:focus-visible{position:relative;z-index:2;outline:2px solid var(--cyan);outline-offset:2px;transform:scale(1.45)}.state-drawer{grid-area:drawer;z-index:8;width:292px;min-width:0;min-height:0;display:grid;grid-template-rows:58px minmax(0,1fr);overflow:hidden;background:var(--white);border-left:1px solid var(--line-bright)}.state-drawer:not(.is-open){width:58px}.state-drawer-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:6px;padding:0 12px;color:var(--ink);background:var(--white);border:0;border-bottom:1px solid var(--line-bright);font:800 18px/1 var(--label);letter-spacing:.04em}.state-drawer-toggle:hover{color:var(--blue);background:var(--paper)}.state-drawer-toggle strong{font:500 34px/1 var(--body)}.state-drawer:not(.is-open) .state-drawer-toggle{grid-row:1 / -1;flex-direction:column;justify-content:flex-start;padding:16px 0;writing-mode:vertical-rl}.state-drawer:not(.is-open) .state-drawer-toggle strong{transform:rotate(180deg)}.state-drawer:not(.is-open) .state-drawer-panel{display:none}.state-drawer-panel{min-height:0;display:grid;grid-template-rows:54px 62px minmax(0,1fr);overflow:hidden}.state-drawer-panel>header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 10px;border-bottom:1px solid var(--line)}.state-drawer-panel>header span,.drawer-search-field>span{color:var(--soft-ink);font:800 13px/1 var(--label);letter-spacing:.04em}.state-drawer-panel>header strong{font:800 16px/1 var(--label)}.drawer-search-field{min-width:0;display:grid;grid-template-rows:15px minmax(0,1fr);gap:3px;padding:7px 9px;border-bottom:1px solid var(--line)}.drawer-search-field input{width:100%;min-width:0;padding:0 8px;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);border-radius:0;font:800 17px/1 var(--label)}.state-directory{min-height:0;display:grid;grid-template-columns:1fr;align-content:start;gap:1px;overflow-y:auto;background:var(--line)}.state-card{min-height:62px;display:grid;grid-template-columns:8px minmax(0,1fr);align-items:center;gap:9px;padding:5px 10px 5px 0;text-align:left;color:var(--ink);background:var(--white);border:0}.state-card:hover,.state-card:focus-visible,.race-directory-row:hover{background:var(--paper)}.state-swatch{width:8px;align-self:stretch;background:var(--state-color)}.state-card>div:nth-child(2){min-width:0;display:grid;gap:2px}.state-card strong{overflow:hidden;font:800 23px/.92 var(--heading);letter-spacing:.025em;text-overflow:ellipsis;white-space:nowrap}.state-card small{overflow:hidden;color:var(--soft-ink);font:700 12px/1.1 var(--label);text-overflow:ellipsis;white-space:nowrap}.state-card-counts{display:none}.race-directory-row{width:100%;min-height:142px;display:grid;grid-template-columns:minmax(0,1fr) 154px minmax(210px,246px);align-items:center;gap:12px;padding:8px 14px;text-align:left;color:var(--ink);background:var(--white);border:0;border-bottom:1px solid var(--line)}.race-directory-row.is-measure{min-height:156px;align-items:start}.race-directory-row.is-watched{box-shadow:inset 5px 0 0 var(--gold)}.watch-star{color:var(--gold);font-size:26px;line-height:.8;text-shadow:0 0 0 var(--gold)}.race-directory-main{min-width:0;display:grid;gap:7px}.race-directory-heading{min-width:0;display:flex;align-items:center;gap:10px}.race-directory-open{min-width:0;width:fit-content;max-width:100%;display:inline-flex;align-items:center;gap:8px;flex:1 1 auto;padding:0;color:var(--ink);text-align:left;background:transparent;border:0}.race-directory-open .watch-star{flex:0 0 auto}.race-directory-open:hover strong,.race-directory-open:focus-visible strong{color:var(--blue)}.race-directory-title{min-width:0;display:grid;gap:3px}.race-directory-circumstances{display:flex;align-items:center;flex-wrap:wrap;gap:4px}.race-directory-circumstances .contest-circumstance{min-height:21px;font-size:10px!important}.open-seat-reason{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:7px 9px;color:var(--ink);background:color-mix(in srgb,var(--gold) 9%,var(--white));border-left:5px solid var(--gold)}.open-seat-reason>span{color:var(--ink);font:900 11px/1 var(--label);letter-spacing:.05em;white-space:nowrap}.open-seat-reason>p{min-width:0;margin:0;color:var(--soft-ink);font:750 12px/1.25 var(--label);overflow-wrap:anywhere}.open-seat-reason>a{color:var(--blue);font:900 10px/1 var(--label);letter-spacing:.045em;text-decoration:underline;text-underline-offset:3px}.open-seat-reason[data-open-reason=primary-loss]{border-left-color:var(--rose)}.open-seat-reason[data-open-reason=term-limited]{border-left-color:var(--purple)}.open-seat-reason[data-open-reason=vacancy],.open-seat-reason[data-open-reason=interim]{border-left-color:var(--cyan)}.race-directory-row strong{overflow:hidden;font:800 var(--race-card-title-size)/.95 var(--heading);letter-spacing:.025em;text-overflow:ellipsis;white-space:nowrap}.race-directory-row small{overflow:hidden;color:var(--soft-ink);font:700 17px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.district-area-label{min-width:0;color:var(--soft-ink);font-family:var(--label);font-weight:750;letter-spacing:.025em;text-transform:uppercase}.race-directory-row small.district-area-label{max-width:100%;font-size:var(--race-card-meta-size);line-height:1}.race-note-drawer{min-width:0;background:color-mix(in srgb,var(--gold) 9%,var(--white));border-left:5px solid var(--gold)}.race-note-summary{width:100%;min-width:0;min-height:38px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 9px;color:var(--ink);text-align:left;background:transparent;border:0}.race-note-summary>span{color:var(--gold);font:900 11px/1 var(--label);letter-spacing:.06em}.race-note-summary>strong{overflow:visible;color:var(--ink);font:800 15px/1.25 var(--label);letter-spacing:.015em;text-overflow:clip;white-space:normal}.race-note-summary>i{color:var(--ink);font:normal 800 22px/1 var(--label)}button.race-note-summary:hover,button.race-note-summary:focus-visible{color:var(--blue);background:var(--white)}.race-note-long{padding:10px 12px 12px;color:var(--ink);background:var(--white);border-top:1px solid var(--line);font:500 17px/1.42 var(--body);white-space:pre-wrap;overflow-wrap:anywhere}.race-note-long[hidden]{display:none}.race-directory-candidates{min-width:0;display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:6px}.directory-candidate-entry{width:100%;min-width:0;min-height:60px;display:flex;align-items:center;flex-wrap:wrap;gap:5px 9px;padding:4px 10px 4px 5px;background:linear-gradient(90deg,color-mix(in srgb,var(--candidate-color) 12%,transparent),color-mix(in srgb,var(--candidate-color) 48%,transparent));border-left:5px solid var(--candidate-color)}.directory-candidate-entry[data-party=DEM]{--candidate-color: var(--blue)}.directory-candidate-entry[data-party=REP]{--candidate-color: var(--rose)}.directory-candidate-entry[data-party=OTHER]{--candidate-color: var(--purple)}.candidate-factor-flags{min-width:0;display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px}.candidate-factor-flags:empty{display:none}.factor-flag{min-height:24px;display:inline-flex;align-items:center;padding:0 6px;color:var(--white);background:var(--purple);border:1px solid var(--purple);font:800 10px/1 var(--label);letter-spacing:.02em}.factor-flag.is-elon-endorsement{background:var(--green);border-color:var(--green)}.factor-flag.is-elon-support{background:var(--purple);border-color:var(--purple)}.factor-flag.is-elon-oppose{color:var(--ink);background:var(--white);border:3px double var(--purple)}.factor-flag.is-elon-contribution{color:var(--ink);background:var(--white);border-color:var(--gold);box-shadow:inset 0 -3px 0 var(--gold)}.factor-flag:hover,.factor-flag:focus-visible{color:var(--blue);background:var(--white);border-color:var(--blue)}.trump-record-flag{min-height:24px;display:inline-flex;align-items:center;padding:0 6px;color:var(--white);background:var(--ink);border:1px solid var(--ink);font:800 10px/1 var(--label);letter-spacing:.02em}.trump-record-flag.is-alignment.is-lockstep,.trump-record-flag.is-alignment.is-high{color:var(--ink);background:var(--white)}.trump-record-flag.is-alignment.is-breaks{color:var(--ink);background:var(--white);border-color:var(--gold);box-shadow:inset 0 -3px 0 var(--gold)}.trump-record-flag.is-bbb.is-no{color:var(--ink);background:var(--white);border:3px double var(--rose)}.trump-record-flag.is-bbb.is-nv{color:var(--ink);background:var(--paper);border-color:var(--line-bright)}.trump-record-flag:hover,.trump-record-flag:focus-visible{color:var(--blue);background:var(--white);border-color:var(--blue)}.measure-question{width:100%;min-width:0;display:grid;gap:5px}.measure-question span,.personal-vote-control>span,.modal-measure-question>span{color:var(--soft-ink);font:800 13px/1 var(--label);letter-spacing:.04em}.measure-question p{margin:0;color:var(--ink);font:600 18px/1.38 var(--body);overflow-wrap:anywhere}.measure-question a{width:fit-content;color:var(--blue);font:800 13px/1 var(--label);letter-spacing:.04em;text-decoration-thickness:1px;text-underline-offset:3px}.candidate-field-pending{color:var(--soft-ink);font:800 16px/1 var(--label);letter-spacing:.04em}.candidate-link-directory{max-width:290px;color:var(--ink);font:800 var(--race-card-name-size)/1 var(--label)}.candidate-portrait-directory{width:50px;height:50px;flex-basis:50px}.candidate-portrait-directory .candidate-initials{font-size:15px}.race-directory-polling{min-width:0;display:grid;grid-template-columns:1fr;align-items:start;gap:5px;padding-top:7px;border-top:1px solid var(--line)}.race-directory-polling>span,.race-directory-polling>b,.race-directory-polling>em,.race-directory-polling>small{min-width:0}.race-directory-polling>span{color:var(--blue);font:900 12px/1 var(--label);letter-spacing:.025em;white-space:nowrap}.race-directory-polling>b{overflow:visible;color:var(--ink);font:900 14px/1.15 var(--label);overflow-wrap:anywhere;text-overflow:clip;white-space:normal}.race-directory-polling>em{color:var(--soft-ink);font:normal 850 11px/1.2 var(--label);overflow-wrap:anywhere;white-space:normal}.race-directory-polling>small{overflow:visible;color:var(--soft-ink);font:750 12px/1.3 var(--label);overflow-wrap:anywhere;text-overflow:clip;white-space:normal}.race-directory-history,.race-directory-note{min-height:34px;padding:0 8px;color:var(--ink);background:var(--paper);border:1px solid var(--line-bright);font:850 12px/1 var(--label);white-space:nowrap}.race-directory-history:hover,.race-directory-history:focus-visible,.race-directory-note:hover,.race-directory-note:focus-visible{color:var(--blue);background:var(--white);border-color:var(--blue)}.race-directory-note.is-saved{color:var(--white);background:var(--ink);border-color:var(--ink);box-shadow:inset 0 -3px 0 var(--gold)}.race-directory-result{min-height:54px;padding:0 6px;text-align:right;color:var(--ink);background:transparent;border:0;font:800 18px/1.22 var(--label)}.race-directory-result:hover,.race-directory-result:focus-visible{color:var(--blue);background:var(--paper)}.race-directory-pick-column{min-width:0;display:grid;align-content:center;gap:7px}.race-directory-pick-column .watch-toggle{width:100%}.race-directory-action-row{min-width:0;display:grid;grid-template-columns:minmax(136px,1.5fr) minmax(60px,.6fr);gap:6px}.race-directory-action-row>:only-child{grid-column:1 / -1}.race-directory-action-row .race-directory-history,.race-directory-action-row .race-directory-note{width:100%;min-width:0;font-size:11px}.personal-vote-control{min-width:0;display:grid;grid-template-rows:15px minmax(0,1fr) auto;gap:5px}.personal-vote-control select{width:100%;min-width:0;min-height:50px;padding:0 9px;color:var(--ink);background:var(--white);border:2px solid var(--line-bright);border-radius:0;font:800 16px/1 var(--label)}.personal-vote-control select:not(:has(option:checked[value=""])){border-color:var(--blue)}.analyst-shorthand{overflow:visible!important;color:var(--soft-ink);font:800 10px/1.2 var(--label)!important;letter-spacing:.02em;text-overflow:clip!important;white-space:normal!important}.analyst-shorthand[data-tone=dem]{color:var(--blue)}.analyst-shorthand[data-tone=rep]{color:var(--rose)}.analyst-shorthand[data-tone=tossup]{color:var(--purple)}.directory-personal-vote{align-self:center}.race-directory-row.is-measure .directory-personal-vote,.race-directory-row.is-measure .race-directory-result{margin-top:30px}.watch-toggle{min-width:118px;min-height:40px;flex:0 0 auto;padding:0 9px;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);font:800 15px/1 var(--label);letter-spacing:.025em}.watch-toggle:hover,.watch-toggle:focus-visible{color:var(--blue);background:var(--paper);border-color:var(--blue)}.watch-toggle[aria-pressed=true]{color:var(--white);background:var(--ink);border-color:var(--ink)}.watch-toggle[aria-pressed=true]:hover,.watch-toggle[aria-pressed=true]:focus-visible{background:var(--blue);border-color:var(--blue)}.empty-state{min-height:220px;display:grid;place-items:center;color:var(--soft-ink);background:var(--white);font:800 25px/1 var(--label);letter-spacing:.05em}.empty-state.is-compact{min-height:100px;font-size:18px}.map-watch-section{min-width:0;background:var(--white);border-bottom:2px solid var(--ink)}.map-watch-section>summary{min-height:58px;display:grid;grid-template-columns:minmax(0,1fr) auto 28px;align-items:center;gap:12px;padding:0 14px;background:var(--paper);border-bottom:1px solid var(--line-bright);cursor:pointer;list-style:none}.map-watch-section>summary::-webkit-details-marker{display:none}.map-watch-section>summary:hover,.map-watch-section>summary:focus-visible{color:var(--blue);background:var(--white)}.map-watch-section>summary span{color:currentColor;font:800 22px/.95 var(--heading);letter-spacing:.035em}.map-watch-section>summary strong{min-width:44px;color:var(--gold);font:800 24px/1 var(--label);text-align:right}.map-watch-section>summary i{font:normal 500 28px/1 var(--body);text-align:center;transition:transform .14s ease}.map-watch-section[open]>summary i{transform:rotate(45deg)}.map-watch-list{display:grid;grid-template-columns:1fr}.map-state-race-directory{min-width:0;display:grid;background:var(--white);border-top:3px solid var(--ink)}.map-directory-filters{position:sticky;top:0;z-index:8;display:grid;gap:8px;padding:11px 14px 13px;background:color-mix(in srgb,var(--white) 96%,transparent);border-bottom:2px solid var(--ink);box-shadow:0 8px 18px #08121c14;backdrop-filter:blur(10px)}.map-directory-filters>header{display:flex;align-items:end;justify-content:space-between;gap:14px}.map-directory-filters>header>div{display:grid;gap:3px}.map-directory-filters>header span{font:900 18px/.95 var(--heading);letter-spacing:.045em}.map-directory-filters>header strong,.map-directory-filters>header small{color:var(--soft-ink);font:900 10px/1.2 var(--label);letter-spacing:.045em}.map-directory-filter-row{min-width:0;display:flex;align-items:stretch;flex-wrap:wrap;gap:5px}.map-directory-filter-row>span{min-width:58px;display:inline-flex;align-items:center;color:var(--soft-ink);font:900 11px/1 var(--label);letter-spacing:.06em}.map-directory-filter-button{min-height:35px;display:inline-grid;grid-template-columns:auto auto;align-items:center;gap:8px;padding:0 8px;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);font:850 11px/1 var(--label)}.map-directory-filter-button b{min-width:23px;padding:4px;color:var(--soft-ink);background:var(--paper);font:900 10px/1 var(--label);text-align:center}.map-directory-filter-button:hover,.map-directory-filter-button:focus-visible{color:var(--blue);border-color:var(--blue)}.map-directory-filter-button.is-active{color:var(--white);background:var(--ink);border-color:var(--ink);box-shadow:inset 0 -4px 0 var(--cyan)}.map-directory-filter-button.is-active b{color:var(--ink);background:var(--white)}.map-state-race-list{min-width:0;display:grid;align-content:start;gap:1px;background:var(--line)}.map-state-race-drawer{min-width:0;background:var(--white)}.map-state-race-drawer>summary{min-height:66px;display:grid;grid-template-columns:minmax(180px,.75fr) minmax(0,1fr) 54px 30px;align-items:center;gap:12px;padding:0 14px;color:var(--ink);background:var(--white);cursor:pointer;list-style:none}.map-state-race-drawer>summary::-webkit-details-marker{display:none}.map-state-race-drawer>summary:hover,.map-state-race-drawer>summary:focus-visible{color:var(--blue);background:var(--paper)}.map-state-race-drawer>summary span{font:900 24px/.95 var(--heading);letter-spacing:.035em}.map-state-race-drawer>summary small{overflow:visible;color:var(--soft-ink);font:900 12px/1 var(--label);white-space:normal}.map-state-race-drawer>summary strong{color:var(--soft-ink);font:900 17px/1 var(--label);text-align:right}.map-state-race-drawer>summary i{font:normal 500 30px/1 var(--body);text-align:center;transition:transform .14s ease}.map-state-race-drawer[open]>summary{color:var(--white);background:var(--ink)}.map-state-race-drawer[open]>summary small,.map-state-race-drawer[open]>summary strong{color:#ffffffb8}.map-state-race-drawer[open]>summary i{transform:rotate(45deg)}.map-state-race-body{min-width:0;display:grid;background:var(--line);border-top:1px solid var(--line)}#history-view.is-active{display:grid;grid-template-rows:64px 92px 76px minmax(0,1fr) 36px;overflow:hidden;background:var(--white)}.history-toolbar{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 12px;border-bottom:1px solid var(--line-bright)}.history-heading{min-width:0;display:grid;gap:4px}.history-heading span{color:var(--soft-ink);font:800 15px/1 var(--label);letter-spacing:.035em}.history-heading strong{font:800 24px/.9 var(--heading);letter-spacing:.035em;white-space:nowrap}.history-controls,.history-office-tabs{display:flex;align-items:stretch;gap:5px}.history-controls label{display:grid;grid-template-columns:auto 106px;align-items:center;gap:7px;color:var(--soft-ink);font:800 14px/1 var(--label)}.history-controls button,.history-controls select{min-height:46px;padding:0 11px;color:var(--soft-ink);background:var(--white);border:1px solid var(--line-bright);border-radius:0;font:800 16px/1 var(--label)}.history-controls button.is-active{color:var(--white);background:var(--ink);border-color:var(--ink);box-shadow:inset 0 -4px 0 var(--cyan)}.history-summary{min-width:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--line);border-bottom:1px solid var(--line)}.history-summary article{min-width:0;display:grid;align-content:center;gap:3px;padding:7px 10px;background:var(--white)}.history-summary span,.history-summary small{overflow:hidden;color:var(--soft-ink);font:800 12px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.history-summary strong{overflow:hidden;font:800 28px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.history-summary .is-dem strong{color:var(--blue)}.history-summary .is-rep strong{color:var(--rose)}.history-summary .is-warning{box-shadow:inset 0 5px 0 var(--rose)}.history-summary .is-warning small{color:var(--rose)}.history-loading{grid-column:1 / -1;display:grid;place-items:center;color:var(--soft-ink);background:var(--paper);font:800 18px/1 var(--label);letter-spacing:.04em}.history-loading.is-error{color:var(--rose)}.history-timeline{min-width:0;display:flex;gap:4px;padding:6px 8px;overflow-x:auto;overflow-y:hidden;background:var(--paper);border-bottom:1px solid var(--line-bright);scrollbar-width:thin}.history-cycle{min-width:92px;display:grid;grid-template-rows:17px 7px 13px;align-content:center;gap:4px;padding:3px 7px;color:var(--soft-ink);background:var(--white);border:1px solid var(--line-bright);font-family:var(--label)}.history-cycle strong{color:var(--ink);font-size:16px;line-height:1}.history-cycle small{font:800 10px/1 var(--label)}.history-cycle.is-active{border-color:var(--ink);box-shadow:inset 0 -4px 0 var(--cyan)}.history-cycle.is-incomplete strong{color:var(--rose)}.history-cycle-score{display:flex;width:100%;overflow:hidden;background:var(--line)}.history-cycle-score i{display:block;height:7px}.history-cycle-score .is-dem{background:var(--blue)}.history-cycle-score .is-rep{background:var(--rose)}.history-cycle-score .is-other{background:var(--purple)}.history-races{min-height:0;overflow:auto;background:var(--line)}.history-race-row{min-height:72px;display:grid;grid-template-columns:96px minmax(190px,1.15fr) minmax(190px,1.15fr) 138px 138px;align-items:center;gap:8px;padding:7px 11px;background:var(--white);border-bottom:1px solid var(--line)}.history-race-place{color:var(--ink);font:800 19px/1 var(--label)}.history-candidate,.history-race-margin,.history-race-turnout{min-width:0;display:grid;gap:5px}.history-candidate strong,.history-race-margin strong,.history-race-turnout strong{overflow:hidden;color:var(--ink);font:800 16px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.history-candidate small,.history-race-margin small,.history-race-turnout small{color:var(--soft-ink);font:800 11px/1 var(--label)}.history-candidate.is-dem{padding-left:8px;border-left:5px solid var(--blue)}.history-candidate.is-rep{padding-left:8px;border-left:5px solid var(--rose)}.history-candidate.is-other{padding-left:8px;border-left:5px solid var(--purple)}.history-source-note{min-width:0;display:flex;align-items:center;gap:10px;padding:0 10px;overflow:hidden;background:var(--ink);color:var(--white);font:800 10px/1 var(--label);white-space:nowrap}.history-source-note span{overflow:hidden;text-overflow:ellipsis}.history-source-note .history-source-warning{flex:0 0 auto;color:#ffd8de}.history-source-note a{flex:0 0 auto;color:var(--white);text-underline-offset:3px}#elon-view.is-active{display:block;overflow-y:auto;background:var(--paper)}.elon-factor-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;background:var(--line);border-bottom:2px solid var(--ink)}.elon-factor-summary article{min-width:0;min-height:104px;display:grid;align-content:center;gap:5px;padding:10px 12px;background:var(--white)}.elon-factor-summary span,.elon-factor-summary small,.elon-factor-section>header span,.elon-evidence-label,.elon-match-status{color:var(--soft-ink);font:800 14px/1.1 var(--label);letter-spacing:.025em}.elon-factor-summary strong{overflow:hidden;font:800 31px/.95 var(--heading);text-overflow:ellipsis;white-space:nowrap}.elon-factor-summary small{font-size:12px}.elon-factor-content{display:grid;gap:1px;background:var(--line)}.elon-factor-method{min-height:58px;display:flex;align-items:center;gap:8px;padding:7px 14px;background:var(--white);border-bottom:1px solid var(--line-bright)}.elon-factor-method>strong{font:800 16px/1.2 var(--label);letter-spacing:.02em}.elon-factor-method .info-button{flex:0 0 auto;margin:0 8px 0 0}.elon-factor-method>a,.elon-source-links a{display:inline-flex;align-items:center;min-height:32px;padding:0 8px;color:var(--blue);background:var(--paper);border:1px solid var(--line-bright);font:800 13px/1 var(--label);text-decoration:none}.elon-factor-method>a:hover,.elon-factor-method>a:focus-visible,.elon-source-links a:hover,.elon-source-links a:focus-visible{color:var(--ink);border-color:var(--blue)}.elon-factor-section{background:var(--white);border-bottom:2px solid var(--ink)}.elon-factor-section>header{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 14px;border-bottom:1px solid var(--line-bright)}.elon-factor-section>header>div{display:grid;gap:5px}.elon-factor-section>header strong{font:800 29px/.9 var(--heading);letter-spacing:.025em}.elon-factor-section>header b{min-width:58px;color:var(--soft-ink);font:800 29px/1 var(--label);text-align:right}.elon-primary-grid,.elon-factor-grid{display:grid;gap:1px;background:var(--line)}.elon-primary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.elon-factor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.elon-factor-card{min-width:0;display:grid;align-content:start;background:var(--white)}.race-directory-row,.elon-factor-card,.state-race-card{content-visibility:auto;contain-intrinsic-size:auto 124px}.race-directory-row{contain-intrinsic-size:auto 200px}.elon-factor-card>header{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 10px;color:var(--soft-ink);border-bottom:1px solid var(--line);font:800 13px/1 var(--label);letter-spacing:.025em}.elon-factor-card[data-elon-kind=explicit-endorsement]>header{color:var(--green);box-shadow:inset 5px 0 0 var(--green)}.elon-factor-card[data-elon-kind=pac-support]>header,.elon-factor-card[data-elon-kind=independent-expenditure]>header,.elon-factor-card[data-elon-kind=america-pac-independent-expenditure]>header{color:var(--purple);box-shadow:inset 5px 0 0 var(--purple)}.elon-factor-card[data-elon-kind=direct-contribution]>header,.elon-factor-card[data-elon-kind=direct-candidate-contribution]>header{color:var(--gold);box-shadow:inset 5px 0 0 var(--gold)}.elon-card-identity{min-height:104px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;border-bottom:1px solid var(--line)}.elon-card-identity>div:first-child{min-width:0;display:grid;gap:6px}.elon-card-identity.has-opponent{align-items:start}.elon-card-identity.has-opponent>div:first-child{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px}.elon-card-identity.has-opponent>div:first-child>small{grid-column:1 / -1;grid-row:3}.elon-identity-label,.elon-opponent-identity>span{color:var(--soft-ink);font:800 12px/1 var(--label);letter-spacing:.04em}.elon-identity-label{grid-column:1}.elon-opponent-identity{min-width:0;grid-column:2;grid-row:1 / span 2;display:grid;align-content:start;gap:6px}.candidate-link-elon{width:fit-content;max-width:100%;font:800 25px/.95 var(--heading)}.elon-factor-portrait{width:62px;height:62px;flex-basis:62px}.elon-card-identity small{overflow:hidden;color:var(--soft-ink);font:800 14px/1.1 var(--label);text-overflow:ellipsis;white-space:nowrap}.elon-card-actions{display:grid;gap:5px}.elon-card-actions>button,.elon-card-actions .watch-toggle{min-width:108px;min-height:38px;padding:0 7px;color:var(--ink);background:var(--paper);border:1px solid var(--line-bright);font:800 13px/1 var(--label)}.elon-card-actions>button:hover,.elon-card-actions>button:focus-visible{color:var(--blue);border-color:var(--blue)}.elon-evidence-list{display:grid}.elon-evidence{min-width:0;display:grid;grid-template-columns:minmax(132px,.48fr) minmax(0,1fr) auto;align-items:center;gap:8px;min-height:72px;padding:7px 10px;border-bottom:1px solid var(--line)}.elon-evidence:last-child{border-bottom:0}.elon-evidence-label{display:grid;gap:5px}.elon-evidence-label span{color:var(--ink)}.elon-evidence-label time{font-size:12px}.elon-evidence-value{min-width:0;display:grid;gap:3px}.elon-evidence-value strong{font:800 25px/1 var(--label)}.elon-evidence-value p{margin:0;color:var(--soft-ink);font:700 14px/1.25 var(--label);text-transform:uppercase}.elon-source-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.elon-source-links a{min-height:30px}.elon-factor-card.is-compact .elon-card-identity{min-height:88px}.elon-factor-card.is-compact .elon-factor-portrait{width:52px;height:52px;flex-basis:52px}.elon-factor-card.is-compact .candidate-link-elon{font-size:22px}.elon-factor-card.is-compact .elon-evidence{min-height:62px}.elon-factor-card.is-archive{background:var(--paper)}.elon-archive-identity{min-width:0;display:flex!important;align-items:center;gap:9px}.elon-archive-identity strong{overflow:hidden;font:800 22px/.95 var(--heading);text-overflow:ellipsis;white-space:nowrap}.elon-match-status{max-width:130px;text-align:right}#trump-view.is-active{display:block;overflow-y:auto;background:var(--paper)}.trump-factor-loading{min-height:180px;display:grid;place-items:center;padding:24px;color:var(--soft-ink);background:var(--white);font:800 21px/1 var(--label)}.trump-factor-loading.is-error{color:var(--rose)}.trump-factor-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;background:var(--line);border-bottom:2px solid var(--ink)}.trump-factor-summary article{min-width:0;min-height:104px;display:grid;align-content:center;gap:5px;padding:10px 12px;background:var(--white)}.trump-factor-summary span,.trump-factor-summary small,.public-mood-section>header span,.trump-record-section>header span,.public-mood-poll header span{color:var(--soft-ink);font:800 12px/1.15 var(--label);letter-spacing:.025em}.trump-factor-summary strong{overflow:hidden;font:800 30px/.95 var(--heading);text-overflow:ellipsis;white-space:nowrap}.trump-factor-content{display:grid;gap:1px;background:var(--line)}.public-mood-section,.trump-record-section{min-width:0;background:var(--white);border-bottom:2px solid var(--ink)}.public-mood-section>header,.trump-record-section>header{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 14px;border-bottom:1px solid var(--line-bright)}.public-mood-section>header>div,.trump-record-section>header>div{display:grid;gap:5px}.public-mood-section>header strong,.trump-record-section>header strong{font:800 29px/.92 var(--heading);letter-spacing:.025em}.public-mood-headlines{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line)}.public-mood-headline{min-width:0;min-height:116px;display:grid;align-content:center;gap:5px;padding:10px 12px;background:var(--white);box-shadow:inset 5px 0 0 var(--ink)}.public-mood-headline[data-tone=dem]{box-shadow:inset 5px 0 0 var(--blue)}.public-mood-headline[data-tone=rep]{box-shadow:inset 5px 0 0 var(--rose)}.public-mood-headline[data-tone=warning]{box-shadow:inset 5px 0 0 var(--gold)}.public-mood-headline>strong{font:800 40px/.86 var(--heading)}.public-mood-headline>span{color:var(--ink);font:800 14px/1.18 var(--label)}.public-mood-headline>a,.public-mood-poll header>a,.trump-record-method a,.trump-record-vote a{width:fit-content;color:var(--blue);font:800 10px/1 var(--label);letter-spacing:.025em;text-decoration:none}.public-mood-headline>a:hover,.public-mood-poll header>a:hover,.trump-record-method a:hover,.trump-record-vote a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.public-mood-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}.public-mood-poll{min-width:0;display:grid;align-content:start;background:var(--white)}.public-mood-poll>header{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border-bottom:1px solid var(--line)}.public-mood-poll header>div{min-width:0;display:grid;gap:5px}.public-mood-poll header strong{font:800 23px/.95 var(--heading)}.public-mood-poll>p{min-height:52px;margin:0;padding:9px 12px;color:var(--soft-ink);background:var(--paper);border-bottom:1px solid var(--line);font:700 12px/1.35 var(--label);text-transform:uppercase}.public-mood-metrics{display:grid;padding:7px 12px}.public-mood-metrics>div{min-width:0;display:grid;gap:4px;padding:6px 0;border-bottom:1px solid var(--line)}.public-mood-metrics>div:last-child{border-bottom:0}.public-mood-metrics span{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.public-mood-metrics b{font:800 12px/1.1 var(--label)}.public-mood-metrics strong{font:800 18px/1 var(--label)}.public-mood-metrics i{height:7px;display:block;background:linear-gradient(90deg,var(--ink) var(--poll-value),var(--line) var(--poll-value))}.public-mood-metrics [data-tone=dem] i{background:linear-gradient(90deg,var(--blue) var(--poll-value),var(--line) var(--poll-value))}.public-mood-metrics [data-tone=rep] i{background:linear-gradient(90deg,var(--rose) var(--poll-value),var(--line) var(--poll-value))}.public-mood-poll>footer{min-height:48px;display:flex;align-items:center;padding:8px 12px;color:var(--soft-ink);background:var(--paper);border-top:1px solid var(--line);font:700 10px/1.25 var(--label);text-transform:uppercase}.public-mood-caveat{margin:0;padding:12px 14px;color:var(--soft-ink);background:var(--paper);border-top:1px solid var(--line-bright);font:800 12px/1.35 var(--label);text-transform:uppercase}.trump-record-method{min-height:72px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:9px 14px;background:var(--paper);border-bottom:1px solid var(--line-bright)}.trump-record-method>strong{font:800 16px/1.15 var(--label)}.trump-record-method>span{color:var(--soft-ink);font:700 11px/1.35 var(--label);text-transform:uppercase}.trump-record-method nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.trump-record-method a{min-height:32px;display:inline-flex;align-items:center;padding:0 7px;background:var(--white);border:1px solid var(--blue)}.trump-record-filters{min-height:54px;display:flex;align-items:stretch;gap:1px;background:var(--line);border-bottom:1px solid var(--line-bright)}.trump-record-filters button{min-width:0;flex:1 1 0;padding:0 8px;color:var(--soft-ink);background:var(--white);border:0;font:800 13px/1 var(--label)}.trump-record-filters button.is-active{color:var(--ink);box-shadow:inset 0 -5px 0 var(--blue)}.trump-record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}.trump-record-card{min-width:0;display:grid;align-content:start;background:var(--white);content-visibility:auto;contain-intrinsic-size:auto 350px}.trump-record-card>header{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:9px;padding:0 10px;color:var(--soft-ink);border-bottom:1px solid var(--line);box-shadow:inset 5px 0 0 var(--ink);font:800 11px/1 var(--label)}.trump-record-card>header strong{color:var(--ink);text-align:right}.trump-record-card[data-score-band=breaks]>header{box-shadow:inset 5px 0 0 var(--gold)}.trump-record-identity{min-height:104px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;border-bottom:1px solid var(--line)}.trump-record-identity>div{min-width:0;display:grid;gap:6px}.trump-record-identity>div>small{overflow:hidden;color:var(--soft-ink);font:800 11px/1.2 var(--label);text-overflow:ellipsis;white-space:nowrap}.candidate-link-trump{width:fit-content;max-width:100%;color:var(--ink);font:800 25px/.95 var(--heading)}.trump-record-portrait{width:70px;height:70px;flex-basis:70px}.trump-record-identity>button{min-width:102px;min-height:40px;padding:0 7px;color:var(--ink);background:var(--paper);border:1px solid var(--line-bright);font:800 12px/1 var(--label)}.trump-record-identity>button:hover,.trump-record-identity>button:focus-visible{color:var(--blue);border-color:var(--blue)}.trump-record-score{display:grid;gap:7px;padding:9px 10px;background:var(--paper);border-bottom:1px solid var(--line)}.trump-record-score>span{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.trump-record-score strong{font:800 25px/1 var(--heading)}.trump-record-score small{color:var(--soft-ink);font:800 10px/1 var(--label)}.trump-record-score>i{height:9px;display:block;background:linear-gradient(90deg,var(--ink) var(--alignment-score),var(--line) var(--alignment-score))}.trump-record-score[data-band=breaks]>i{background:linear-gradient(90deg,var(--gold) var(--alignment-score),var(--line) var(--alignment-score))}.trump-record-votes{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}.trump-record-vote{min-width:0;min-height:82px;display:grid;align-content:center;gap:5px;padding:8px 10px;background:var(--white)}.trump-record-vote>span{color:var(--soft-ink);font:800 10px/1.15 var(--label)}.trump-record-vote>strong{font:800 16px/1.05 var(--label)}.trump-record-vote[data-tone=yes]>strong{color:var(--green)}.trump-record-vote[data-tone=no]>strong{color:var(--rose)}.trump-record-vote[data-tone=nv]>strong{color:var(--gold)}#aipac-view.is-active{display:block;overflow-y:auto;background:var(--paper)}.aipac-factor-loading,.aipac-factor-error{min-height:180px;display:grid;place-items:center;padding:24px;color:var(--soft-ink);background:var(--white);font:800 21px/1 var(--label)}.aipac-factor-summary{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:var(--line);border-bottom:2px solid var(--ink)}.aipac-factor-summary article{min-width:0;min-height:104px;display:grid;align-content:center;gap:5px;padding:10px 12px;background:var(--white)}.aipac-factor-summary span,.aipac-factor-summary small,.aipac-section>header span,.aipac-card-kicker,.aipac-finance-metric span,.aipac-match-note{color:var(--soft-ink);font:800 12px/1.15 var(--label);letter-spacing:.025em}.aipac-factor-summary strong{overflow:hidden;font:800 30px/.95 var(--heading);text-overflow:ellipsis;white-space:nowrap}.aipac-factor-summary article.is-cycle-position{box-shadow:inset 0 -6px 0 var(--blue)}.aipac-factor-content{display:grid;gap:1px;background:var(--line)}.aipac-factor-method{min-height:66px;display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:8px 14px;background:var(--white);border-bottom:1px solid var(--line-bright)}.aipac-factor-method>strong{margin-right:auto;font:800 16px/1.2 var(--label);letter-spacing:.02em}.aipac-factor-method .info-button{flex:0 0 auto;margin:0 7px 0 0}.aipac-factor-method a,.aipac-card-actions a,.aipac-card-actions button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;padding:0 8px;color:var(--blue);background:var(--paper);border:1px solid var(--line-bright);font:800 12px/1 var(--label);text-decoration:none}.aipac-factor-method a:hover,.aipac-factor-method a:focus-visible,.aipac-card-actions a:hover,.aipac-card-actions a:focus-visible,.aipac-card-actions button:hover,.aipac-card-actions button:focus-visible{color:var(--ink);border-color:var(--blue)}.aipac-mapping-note{margin:0;padding:9px 12px;color:var(--soft-ink);background:var(--paper);border-bottom:1px solid var(--line);font:700 11px/1.3 var(--label);text-transform:uppercase}.aipac-factor-filters{min-height:54px;display:flex;align-items:stretch;gap:1px;background:var(--line);border-bottom:1px solid var(--line-bright)}.aipac-factor-filters button{min-width:0;flex:1 1 0;padding:0 10px;color:var(--soft-ink);background:var(--white);border:0;font:800 14px/1 var(--label)}.aipac-factor-filters button.is-active{color:var(--ink);box-shadow:inset 0 -5px 0 var(--blue)}.aipac-factor-filters button strong{margin-left:5px;color:var(--ink)}.aipac-section{background:var(--white);border-bottom:2px solid var(--ink)}.aipac-section>header{min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 14px;border-bottom:1px solid var(--line-bright)}.aipac-section>header>div{display:grid;gap:5px}.aipac-section>header h2{margin:0;font:800 28px/.95 var(--heading)}.aipac-section>header b{color:var(--soft-ink);font:800 28px/1 var(--label)}.aipac-factor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}.aipac-candidate-card{min-width:0;display:grid;align-content:start;background:var(--white);content-visibility:auto;contain-intrinsic-size:auto 360px}.aipac-candidate-card>header{min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 10px;color:var(--soft-ink);border-bottom:1px solid var(--line);box-shadow:inset 5px 0 0 var(--ink);font:800 12px/1 var(--label)}.aipac-card-identity{min-height:112px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border-bottom:1px solid var(--line)}.aipac-card-person{min-width:0;display:grid;gap:6px}.aipac-card-person h3{min-width:0;margin:0;font:inherit}.candidate-link-aipac{width:fit-content;max-width:100%;color:var(--ink);font:800 25px/.95 var(--heading)}.aipac-factor-portrait{width:72px;height:72px;flex-basis:72px}.aipac-card-person small{overflow:hidden;color:var(--soft-ink);font:800 13px/1.15 var(--label);text-overflow:ellipsis;white-space:nowrap}.aipac-card-actions{display:grid;gap:5px}.aipac-card-actions a,.aipac-card-actions button{min-width:96px;color:var(--ink)}.aipac-cycle-position{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:10px;background:linear-gradient(90deg,#1369ff29,#fffffff5 70%);border-bottom:1px solid var(--line);box-shadow:inset 6px 0 0 var(--blue)}.aipac-cycle-position>div{min-width:0;display:grid;gap:5px}.aipac-cycle-position span,.aipac-cycle-position small{color:var(--soft-ink);font:800 10px/1.25 var(--label);letter-spacing:.03em}.aipac-cycle-position strong{font:800 21px/1 var(--heading)}.aipac-cycle-position p{margin:0;color:var(--ink);font:700 12px/1.3 var(--label);text-transform:uppercase}.aipac-cycle-position nav{display:flex;align-items:flex-start;flex-wrap:wrap;justify-content:flex-end;gap:5px}.aipac-cycle-position a{min-height:32px;display:inline-flex;align-items:center;padding:0 7px;color:var(--blue);background:var(--white);border:1px solid var(--line-bright);font:800 10px/1 var(--label);text-decoration:none}.aipac-cycle-position>small{grid-column:1 / -1}.aipac-career-ledger,.aipac-current-ledger{display:grid;background:var(--white);border-bottom:1px solid var(--line)}.aipac-career-ledger>header,.aipac-current-ledger>header{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 10px;border-bottom:1px solid var(--line)}.aipac-career-ledger>header>div{display:grid;gap:3px}.aipac-career-ledger>header span,.aipac-current-ledger>header span{color:var(--soft-ink);font:800 11px/1 var(--label);letter-spacing:.04em}.aipac-career-ledger>header strong,.aipac-current-ledger>header strong{font:800 19px/1 var(--heading)}.aipac-career-ledger>header small{max-width:62%;color:var(--soft-ink);font:700 10px/1.2 var(--label);text-align:right}.aipac-career-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line)}.aipac-career-metric{min-width:0;min-height:86px;display:grid;align-content:center;gap:5px;padding:8px 10px;background:var(--paper)}.aipac-career-metric span{color:var(--soft-ink);font:800 10px/1.1 var(--label)}.aipac-career-metric strong{overflow:hidden;font:800 23px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.aipac-career-metric small{color:var(--soft-ink);font:700 9px/1.25 var(--label)}.aipac-career-metric.is-direct{box-shadow:inset 5px 0 0 var(--ink)}.aipac-career-metric.is-support{box-shadow:inset 5px 0 0 var(--soft-ink)}.aipac-career-metric.is-oppose{box-shadow:inset 8px 0 0 var(--white),inset 12px 0 0 var(--ink)}.aipac-career-cycles{display:grid;gap:1px;background:var(--line);border-top:1px solid var(--line)}.aipac-career-cycle{min-height:42px;display:grid;grid-template-columns:52px repeat(3,minmax(0,1fr));align-items:center;gap:8px;padding:5px 10px;background:var(--white)}.aipac-career-cycle b{font:800 14px/1 var(--heading)}.aipac-career-cycle span{min-width:0;display:grid;gap:3px;color:var(--soft-ink);font:800 8px/1 var(--label)}.aipac-career-cycle span strong{overflow:hidden;color:var(--ink);font:800 14px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.aipac-career-ledger>p{margin:0;padding:7px 10px;color:var(--soft-ink);background:var(--paper);font:700 9px/1.25 var(--label);text-transform:uppercase}.aipac-current-ledger>header{min-height:42px;background:var(--paper)}.aipac-activity-list{display:grid;gap:1px;background:var(--line)}.aipac-activity{min-height:62px;display:grid;grid-template-columns:minmax(142px,.62fr) minmax(0,1fr);align-items:center;gap:10px;padding:8px 10px;background:var(--white)}.aipac-activity>div{display:grid;gap:4px}.aipac-activity span{color:var(--soft-ink);font:800 11px/1.1 var(--label)}.aipac-activity strong{font:800 22px/1 var(--label)}.aipac-activity p{margin:0;color:var(--soft-ink);font:700 12px/1.25 var(--label);text-transform:uppercase}.aipac-activity.is-direct{box-shadow:inset 5px 0 0 var(--ink)}.aipac-activity.is-conduit{box-shadow:inset 5px 0 0 var(--gold)}.aipac-activity.is-udp-support{box-shadow:inset 5px 0 0 var(--soft-ink)}.aipac-activity.is-udp-oppose{box-shadow:inset 9px 0 0 var(--white),inset 13px 0 0 var(--ink)}.aipac-finance{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border-top:1px solid var(--line)}.aipac-finance-metric{min-width:0;min-height:64px;display:grid;align-content:center;gap:4px;padding:7px 9px;background:var(--paper)}.aipac-finance-metric strong{overflow:hidden;font:800 19px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.aipac-finance-metric small{color:var(--soft-ink);font:700 10px/1.15 var(--label)}.aipac-fec-status{min-height:50px;display:grid;align-content:center;gap:4px;padding:8px 10px;color:var(--soft-ink);background:var(--paper);font:800 12px/1.25 var(--label)}.aipac-fec-status strong{color:var(--ink);font-size:14px}.aipac-section-note{margin:0;padding:14px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--soft-ink);background:var(--paper);font:700 13px/1.35 var(--label);text-transform:uppercase}.aipac-section-note button{flex:0 0 auto;min-height:38px;padding-inline:14px;color:var(--white);background:var(--ink);border-color:var(--ink)}#workspace[data-module=president]{grid-template-rows:minmax(390px,50%) minmax(0,1fr);grid-template-areas:"map drawer" "data drawer"}#workspace[data-module=president] .dataset-strip{display:none}#president-view.is-active{display:block;overflow-y:auto;background:var(--paper)}.president-simulator-shell{min-height:100%;display:grid;align-content:start;background:var(--line)}.president-scoreboard{position:sticky;top:0;z-index:6;display:grid;grid-template-columns:160px repeat(3,minmax(210px,1fr)) 140px;gap:1px;background:var(--line);border-bottom:1px solid var(--line-bright)}.president-threshold,.president-candidate-card,.president-unassigned{min-width:0;min-height:100px;background:var(--white)}.president-threshold,.president-unassigned{display:grid;place-content:center;gap:4px;padding:10px;text-align:center}.president-threshold span,.president-unassigned span{color:var(--soft-ink);font:800 10px/1.1 var(--label);letter-spacing:.04em}.president-threshold strong,.president-unassigned strong{font:900 34px/.9 var(--heading)}.president-threshold small,.president-unassigned small{color:var(--soft-ink);font:800 11px/1 var(--label)}.president-candidate-card{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:1fr auto;gap:5px 10px;padding:10px 12px 9px 16px;box-shadow:inset 6px 0 0 var(--candidate-color)}.president-candidate-card label{min-width:0;display:grid;align-content:center;gap:5px}.president-candidate-card label span{color:var(--candidate-color);font:900 10px/1 var(--label);letter-spacing:.05em}.president-candidate-card input{width:100%;min-width:0;height:38px;padding:0 8px;color:var(--ink);background:var(--paper);border:1px solid var(--line-bright);font:900 18px/1 var(--label);text-transform:uppercase}.president-candidate-card>div{display:grid;grid-template-columns:auto auto;align-content:center;align-items:end;gap:4px;color:var(--candidate-color)}.president-candidate-card>div strong{font:900 39px/.85 var(--heading)}.president-candidate-card>div small{font:900 11px/1 var(--label)}.president-candidate-card p{grid-column:1 / -1;margin:0;color:var(--soft-ink);font:800 10px/1 var(--label);letter-spacing:.035em}.president-progress{position:sticky;top:101px;z-index:6;height:24px;display:flex;overflow:visible;background:var(--white);border-bottom:1px solid var(--line-bright)}.president-progress>i{display:block;height:100%;transition:width .15s ease}.president-progress>i[data-candidate=blue]{background:var(--blue)}.president-progress>i[data-candidate=red]{background:var(--rose)}.president-progress>i[data-candidate=other]{background:var(--purple)}.president-progress>span{position:absolute;top:0;bottom:0;width:2px;background:var(--ink)}.president-progress>span b{position:absolute;top:3px;left:5px;padding:2px 4px;color:var(--white);background:var(--ink);font:900 9px/1 var(--label)}.president-state-header{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 14px;background:var(--white);border-bottom:1px solid var(--line-bright)}.president-state-header>div{display:grid;gap:5px}.president-state-header>div:last-child{text-align:right}.president-state-header span,.president-state-header small{color:var(--soft-ink);font:800 10px/1.2 var(--label);letter-spacing:.04em}.president-state-header strong{font:900 16px/1 var(--label)}.president-state-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}.president-state-card{min-width:0;display:grid;gap:8px;padding:10px 12px 12px;background:var(--white);border-left:6px solid var(--line-bright);transition:box-shadow .12s ease,border-color .12s ease}.president-state-card[data-result=blue]{border-left-color:var(--blue)}.president-state-card[data-result=red]{border-left-color:var(--rose)}.president-state-card[data-result=other]{border-left-color:var(--purple)}.president-state-card[data-result=split]{border-left-color:var(--gold)}.president-state-card.is-focused{box-shadow:inset 0 0 0 4px var(--cyan)}.president-state-card>header{min-width:0;display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:9px}.president-state-card>header>span{color:var(--soft-ink);font:900 17px/1 var(--label)}.president-state-card>header>div{min-width:0;display:grid;gap:3px}.president-state-card>header strong,.president-state-card>header small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.president-state-card>header strong{font:900 18px/1 var(--label)}.president-state-card>header small{color:var(--soft-ink);font:800 10px/1 var(--label)}.president-state-card>header b{min-width:58px;display:inline-flex;align-items:baseline;justify-content:flex-end;gap:3px;font:900 28px/.9 var(--heading)}.president-state-card>header b small{font:900 9px/1 var(--label)}.president-assignment-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.president-assignment-buttons button{min-width:0;min-height:38px;overflow:hidden;padding:4px 6px;color:var(--soft-ink);background:var(--paper);border:1px solid var(--line-bright);font:900 10px/1.05 var(--label);text-overflow:ellipsis;white-space:nowrap}.president-assignment-buttons button[data-president-choice=blue][aria-pressed=true]{color:var(--white);background:var(--blue);border-color:var(--blue)}.president-assignment-buttons button[data-president-choice=red][aria-pressed=true]{color:var(--white);background:var(--rose);border-color:var(--rose)}.president-assignment-buttons button[data-president-choice=other][aria-pressed=true]{color:var(--white);background:var(--purple);border-color:var(--purple)}.president-assignment-buttons .president-clear-choice[aria-pressed=true]{color:var(--ink);background:var(--white);border-color:var(--ink)}.president-split-units{display:grid;gap:1px;background:var(--line);border:1px solid var(--line)}.president-split-row{min-width:0;display:grid;grid-template-columns:minmax(150px,.75fr) minmax(0,1.25fr);align-items:center;gap:8px;padding:6px 7px;background:var(--paper)}.president-split-row>span{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.president-split-row>span strong{font:900 10px/1 var(--label)}.president-split-row>span small{color:var(--soft-ink);font:800 9px/1 var(--label)}.president-assignment-buttons.is-compact button{min-height:30px;font-size:9px}.president-source-note{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px;color:var(--soft-ink);background:var(--white);border-top:1px solid var(--line-bright);font:800 11px/1 var(--label)}.president-source-note a{min-height:30px;display:inline-flex;align-items:center;padding:0 8px;color:var(--blue);border:1px solid var(--blue);text-decoration:none}.candidate-finance-badges{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px}.candidate-finance-badges:empty{display:none}.finance-flag{min-height:24px;display:inline-flex;align-items:center;padding:0 6px;color:var(--ink);background:#ffffffe6;border:1px solid var(--ink);font:800 10px/1 var(--label);letter-spacing:.02em}button.finance-flag{cursor:pointer}.finance-flag.is-pro-israel-total{color:var(--white);background:var(--ink);border-color:var(--ink);box-shadow:inset 0 -3px 0 var(--gold)}.finance-flag.is-aipac-direct{color:var(--white);background:var(--ink)}.finance-flag.is-aipac-refusal{color:var(--white);background:var(--blue);border-color:var(--blue);box-shadow:inset 0 -3px 0 var(--ink)}.finance-flag.is-aipac-conduit{border-color:var(--gold);box-shadow:inset 0 -3px 0 var(--gold)}.finance-flag.is-udp-support{border-color:var(--soft-ink);box-shadow:inset 0 -3px 0 var(--soft-ink)}.finance-flag.is-udp-oppose{border-style:double;border-width:3px}.finance-flag:hover,.finance-flag:focus-visible{color:var(--blue);background:var(--white);border-color:var(--blue)}#output-view.is-active{display:grid;grid-template-rows:minmax(0,1fr) 86px;padding:10px}.monitor-grid{min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.monitor-grid article{min-width:0;display:grid;grid-template-rows:58px minmax(0,1fr);border:1px solid var(--line-bright);background:var(--paper)}.monitor-grid header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 10px;background:var(--white);border-bottom:1px solid var(--line)}.monitor-grid header span{color:var(--green);font:800 22px/1 var(--label)}.monitor-grid header strong{overflow:hidden;color:var(--soft-ink);font:700 17px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.monitor-grid iframe{width:100%;height:100%;min-height:0;border:0}.output-actions{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:7px;padding-top:9px}.output-actions button{border:1px solid var(--line-bright);background:var(--paper);font-size:19px}.output-actions .take-button{color:var(--white);background:var(--rose);border-color:var(--rose)}.output-actions .take-button.is-arming{box-shadow:inset 0 0 0 50px #1020334d}#workspace[data-module=output]{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr);grid-template-areas:"data"}#workspace[data-module=output] .map-panel,#workspace[data-module=output] .dataset-strip,#workspace[data-module=output] .state-drawer{display:none}#workspace[data-module=output] .data-panel>.panel-header{flex-basis:84px}#workspace[data-module=playmap]{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(430px,54%) minmax(0,1fr);grid-template-areas:"map" "data"}#workspace[data-module=playmap][data-map-size=compact]{grid-template-rows:minmax(300px,36%) minmax(0,1fr)}#workspace[data-module=playmap][data-map-size=micro]{grid-template-rows:minmax(150px,18%) minmax(0,1fr)}#workspace[data-module=playmap][data-map-size=large]{grid-template-rows:minmax(520px,68%) minmax(0,1fr)}#workspace[data-module=early][data-map-size=micro]{grid-template-rows:minmax(130px,17%) 74px minmax(0,1fr)}#workspace[data-module=early][data-map-size=compact]{grid-template-rows:minmax(260px,34%) 74px minmax(0,1fr)}#workspace[data-module=early][data-map-size=large]{grid-template-rows:minmax(430px,58%) 74px minmax(0,1fr)}#workspace[data-module=playmap] .dataset-strip,#workspace[data-module=playmap] .state-drawer,#workspace[data-module=playmap] .data-panel>.panel-header,#workspace[data-module=playmap] .seat-score-view{display:none}#workspace[data-module=playmap] .data-panel{overflow:hidden}#playmap-view.is-active{overflow:auto;background:var(--paper)}.playmap-shell{min-height:100%;display:flex;flex-direction:column;gap:1px;background:var(--line)}.playmap-scenario-bar{position:sticky;top:0;z-index:9;min-height:92px;display:grid;grid-template-columns:minmax(280px,1.45fr) minmax(250px,1fr) auto auto auto minmax(150px,auto);align-items:stretch;gap:1px;background:var(--line);border-bottom:2px solid var(--ink);box-shadow:0 8px 22px #1020331f}.playmap-scenario-control{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;background:var(--white)}.playmap-scenario-control>label{grid-column:1;grid-row:1}.playmap-scenario-bar label{min-width:0;display:grid;grid-template-rows:24px minmax(0,1fr);gap:3px;padding:9px 10px;background:var(--white)}.playmap-scenario-bar label>span{color:var(--soft-ink);font:900 11px/1 var(--label);letter-spacing:.06em}.playmap-scenario-bar select,.playmap-scenario-bar input{width:100%;min-width:0;height:44px;padding:0 9px;color:var(--ink);background:var(--paper);border:1px solid var(--line-bright);border-radius:0;font:900 15px/1 var(--label);text-transform:uppercase}.playmap-scenario-bar button{min-width:102px;padding:0 10px;color:var(--ink);background:var(--white);border:0;font:900 12px/1.15 var(--label);letter-spacing:.02em}.playmap-scenario-bar button:hover:not(:disabled),.playmap-scenario-bar button:focus-visible:not(:disabled){color:var(--white);background:var(--blue)}.playmap-scenario-bar button:disabled{color:var(--line-bright);background:var(--paper)}.playmap-source-button{grid-column:2;grid-row:1;min-width:86px;height:44px;display:inline-flex;align-items:center;justify-content:center;margin:0 10px 9px 0;padding:0 12px;color:var(--white);background:var(--ink);border:1px solid var(--ink);font:900 12px/1 var(--label);letter-spacing:.04em;text-decoration:none}.playmap-source-button:hover,.playmap-source-button:focus-visible{color:var(--white);background:var(--blue);border-color:var(--blue)}.playmap-lock{display:grid;place-content:center;padding:8px 10px;color:var(--soft-ink);background:var(--white);font:900 11px/1.25 var(--label);text-align:center}.playmap-scores{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line)}.playmap-score-card{min-width:0;min-height:105px;display:grid;align-content:center;gap:8px;padding:12px 16px;background:var(--white)}.playmap-score-card>span{color:var(--soft-ink);font:900 12px/1 var(--label);letter-spacing:.06em}.playmap-score-card>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px}.playmap-score-card strong{font:900 30px/.9 var(--heading);letter-spacing:.02em}.playmap-score-card strong.is-dem{color:var(--blue)}.playmap-score-card strong.is-rep{color:var(--rose)}.playmap-score-card strong.is-other{color:var(--purple)}.playmap-score-card small{color:var(--soft-ink);font:900 10px/1.2 var(--label);letter-spacing:.025em}.playmap-breakdown{min-width:0;display:grid;background:var(--white);border-top:4px solid var(--blue)}.playmap-breakdown>summary{min-height:68px;display:grid;grid-template-columns:minmax(0,1fr) auto 32px;align-items:center;gap:15px;padding:10px 16px;cursor:pointer;list-style:none;background:var(--white);border-bottom:1px solid var(--line)}.playmap-breakdown>summary::-webkit-details-marker{display:none}.playmap-breakdown>summary:hover,.playmap-breakdown>summary:focus-visible{color:var(--blue);background:var(--paper)}.playmap-breakdown>summary>div{display:flex;align-items:baseline;gap:12px}.playmap-breakdown>summary span{font:900 17px/1 var(--label);letter-spacing:.04em}.playmap-breakdown>summary strong{color:var(--white);background:var(--blue);padding:7px 10px;font:900 17px/1 var(--label)}.playmap-breakdown>summary small{color:var(--soft-ink);font:900 10px/1.2 var(--label);letter-spacing:.04em;text-align:right}.playmap-breakdown>summary>i{color:var(--soft-ink);font:normal 400 30px/1 var(--body);text-align:center;transition:transform .12s ease}.playmap-breakdown[open]>summary>i{transform:rotate(45deg)}.playmap-breakdown:not([open])>.playmap-breakdown-body{display:none}.playmap-breakdown-body{display:grid;gap:1px;background:var(--line)}.playmap-breakdown-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line)}.playmap-breakdown-card{min-width:0;display:grid;grid-template-rows:auto auto 1fr;background:var(--white)}.playmap-breakdown-card>header{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 12px;background:var(--paper);border-bottom:1px solid var(--line)}.playmap-breakdown-card>header span{font:900 12px/1 var(--label);letter-spacing:.055em}.playmap-breakdown-card>header small{color:var(--soft-ink);font:900 9px/1 var(--label)}.playmap-breakdown-board{min-height:68px;display:flex;align-items:center;gap:18px;padding:10px 13px;border-bottom:1px solid var(--line)}.playmap-breakdown-board strong{font:900 25px/.9 var(--heading)}.playmap-breakdown-board .is-dem,.playmap-breakdown-card dd.is-dem{color:var(--blue)}.playmap-breakdown-board .is-rep,.playmap-breakdown-card dd.is-rep{color:var(--rose)}.playmap-breakdown-card dl{display:grid;margin:0;background:var(--line);gap:1px}.playmap-breakdown-card dl>div{min-width:0;min-height:54px;display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:10px;padding:8px 12px;background:var(--white)}.playmap-breakdown-card dt{color:var(--soft-ink);font:900 9px/1 var(--label);letter-spacing:.05em}.playmap-breakdown-card dd{min-width:0;margin:0;font:900 12px/1.25 var(--label)}.playmap-breakdown-card dd>span{display:block;margin-bottom:4px;color:var(--soft-ink);font-size:9px;letter-spacing:.04em}.playmap-breakdown-card dd>strong{display:block;overflow-wrap:anywhere}.playmap-movement-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}.playmap-movement-strip>div{min-width:0;display:grid;gap:7px;padding:12px 14px;background:var(--paper)}.playmap-movement-strip span{color:var(--soft-ink);font:900 9px/1 var(--label);letter-spacing:.055em}.playmap-movement-strip strong{font:900 12px/1.35 var(--label);overflow-wrap:anywhere}.playmap-breakdown-body>p{margin:0;padding:12px 14px;color:var(--soft-ink);background:var(--white);font:700 12px/1.4 var(--body)}.playmap-watchboard,.playmap-differences{min-width:0;display:grid;background:var(--white);border-top:4px solid var(--ink)}.playmap-watchboard>summary,.playmap-differences>summary{min-height:62px;display:grid;grid-template-columns:minmax(0,1fr) auto 32px;align-items:center;gap:15px;padding:10px 16px;cursor:pointer;list-style:none;background:var(--white);border-bottom:1px solid var(--line)}.playmap-watchboard>summary::-webkit-details-marker,.playmap-differences>summary::-webkit-details-marker{display:none}.playmap-watchboard>summary:hover,.playmap-watchboard>summary:focus-visible,.playmap-differences>summary:hover,.playmap-differences>summary:focus-visible{color:var(--blue);background:var(--paper)}.playmap-watchboard>summary>div,.playmap-differences>summary>div{display:flex;align-items:baseline;gap:12px}.playmap-watchboard>summary span,.playmap-differences>summary span{font:900 17px/1 var(--label);letter-spacing:.04em}.playmap-watchboard>summary strong,.playmap-differences>summary strong{color:var(--white);background:var(--ink);padding:7px 10px;font:900 17px/1 var(--label)}.playmap-watchboard>summary small,.playmap-differences>summary small{color:var(--soft-ink);font:900 10px/1.2 var(--label);letter-spacing:.04em;text-align:right}.playmap-watchboard>summary>i,.playmap-differences>summary>i{color:var(--soft-ink);font:normal 400 30px/1 var(--body);text-align:center;transition:transform .12s ease}.playmap-watchboard[open]>summary>i,.playmap-differences[open]>summary>i{transform:rotate(45deg)}.playmap-watchboard:not([open])>.playmap-watch-grid,.playmap-differences:not([open])>.playmap-difference-grid{display:none}.playmap-watch-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.75fr);gap:1px;background:var(--line)}.playmap-watch-grid-heading{min-width:0;min-height:76px;display:grid;align-content:center;gap:6px;padding:11px 15px;background:var(--paper)}.playmap-watch-grid-heading span,.playmap-compare-control label>span{color:var(--soft-ink);font:900 10px/1 var(--label);letter-spacing:.06em}.playmap-watch-grid-heading strong{overflow:hidden;font:900 20px/1 var(--heading);text-overflow:ellipsis;white-space:nowrap}.playmap-compare-control{min-width:0;min-height:76px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;padding:9px 10px;background:var(--paper)}.playmap-compare-control label{min-width:0;display:grid;gap:7px}.playmap-compare-control select{width:100%;min-width:0;height:42px;padding:0 8px;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);border-radius:0;font:900 12px/1 var(--label);text-transform:uppercase}.playmap-compare-source{min-width:72px;height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0 9px;color:var(--white);background:var(--ink);border:1px solid var(--ink);font:900 10px/1 var(--label);letter-spacing:.04em;text-decoration:none}.playmap-compare-source:hover,.playmap-compare-source:focus-visible{background:var(--blue);border-color:var(--blue)}.playmap-watch-card,.playmap-compare-result{min-width:0;min-height:102px;display:grid;align-items:center;background:var(--white)}.playmap-watch-card{grid-template-columns:minmax(180px,.78fr) minmax(230px,1.22fr)}.playmap-watch-card>button,.playmap-difference-card>button{min-width:0;height:100%;display:grid;align-content:center;justify-items:start;gap:6px;padding:11px 14px;text-align:left;background:var(--white);border:0;border-right:1px solid var(--line)}.playmap-watch-card>button:hover,.playmap-watch-card>button:focus-visible,.playmap-difference-card>button:hover,.playmap-difference-card>button:focus-visible{color:var(--blue);background:var(--paper)}.playmap-watch-card>button span,.playmap-difference-card>button span,.playmap-compare-result>span{color:var(--soft-ink);font:900 10px/1 var(--label);letter-spacing:.05em}.playmap-watch-card>button strong,.playmap-difference-card>button strong{overflow:hidden;width:100%;font:900 17px/1.05 var(--heading);text-overflow:ellipsis;white-space:nowrap}.playmap-compare-result{grid-template-columns:72px minmax(0,1fr);gap:8px;padding:8px 10px}.playmap-result-person{--playmap-result-color: var(--purple);min-width:0;height:100%;display:grid;align-content:center;gap:6px;padding:9px 11px;background:linear-gradient(90deg,var(--white),color-mix(in srgb,var(--playmap-result-color) 18%,var(--white)))}.playmap-result-person[data-party=DEM]{--playmap-result-color: var(--blue)}.playmap-result-person[data-party=REP]{--playmap-result-color: var(--rose)}.playmap-result-person>span{overflow:hidden;color:var(--soft-ink);font:900 var(--playmap-result-meta-size)/1 var(--label);letter-spacing:.045em;text-overflow:ellipsis;white-space:nowrap}.playmap-result-person>div{min-width:0;display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:9px}.playmap-result-person strong{overflow:hidden;font:900 var(--playmap-result-name-size)/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.playmap-result-person small{color:var(--white);background:var(--playmap-result-color);padding:5px 6px;font:900 var(--playmap-result-meta-size)/1 var(--label)}.candidate-portrait-playmap-result{width:44px;height:44px;flex-basis:44px;border-width:2px}.candidate-portrait-playmap-result .candidate-initials{font-size:11px}.playmap-watch-empty{grid-column:1 / -1;min-height:98px}.playmap-differences{border-top-color:var(--purple)}.playmap-difference-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}.playmap-difference-card{min-width:0;min-height:118px;display:grid;grid-template-columns:minmax(150px,.66fr) minmax(0,1.34fr);background:var(--white)}.playmap-difference-transition{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);align-items:stretch}.playmap-difference-transition>i{display:grid;place-content:center;color:var(--soft-ink);background:var(--paper);font:normal 900 17px/1 var(--label)}.playmap-result-person.is-compact{padding:7px 8px}.playmap-result-person.is-compact>div{grid-template-columns:36px minmax(0,1fr) auto;gap:6px}.playmap-result-person.is-compact .candidate-portrait-playmap-result{width:34px;height:34px;flex-basis:34px}.playmap-result-person.is-compact strong{font-size:var(--playmap-result-compact-name-size)}.playmap-result-person.is-compact small{padding:4px;font-size:var(--playmap-result-compact-meta-size)}.playmap-difference-empty{grid-column:1 / -1;min-height:76px}.playmap-state-list{display:grid;grid-template-columns:1fr;gap:1px;background:var(--line)}.playmap-state-drawer{min-width:0;background:var(--white)}.playmap-state-drawer>summary{min-height:64px;display:grid;grid-template-columns:minmax(0,1fr) auto 32px;align-items:center;gap:12px;padding:0 15px;cursor:pointer;list-style:none;border-left:7px solid var(--line-bright)}.playmap-state-drawer>summary::-webkit-details-marker{display:none}.playmap-state-drawer>summary:hover,.playmap-state-drawer>summary:focus-visible{color:var(--blue);background:var(--paper);border-left-color:var(--blue)}.playmap-state-drawer>summary>span{font:900 22px/1 var(--heading);letter-spacing:.035em}.playmap-state-drawer>summary>small{color:var(--soft-ink);font:900 11px/1 var(--label)}.playmap-state-drawer>summary>i{color:var(--soft-ink);font:normal 400 30px/1 var(--body);text-align:center}.playmap-state-drawer[open]>summary{border-left-color:var(--purple);border-bottom:1px solid var(--line)}.playmap-state-drawer[open]>summary>i{transform:rotate(45deg)}.playmap-state-body{min-width:0;display:grid;gap:1px;background:var(--line)}.playmap-state-viewbar{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:9px 14px;background:var(--paper)}.playmap-state-viewbar>div{min-width:0;display:grid;gap:5px}.playmap-state-viewbar span{color:var(--soft-ink);font:900 10px/1 var(--label);letter-spacing:.06em}.playmap-state-viewbar strong{overflow:hidden;font:900 14px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.playmap-state-viewbar button{min-width:176px;min-height:44px;padding:0 12px;color:var(--white);background:var(--ink);border:1px solid var(--ink);font:900 12px/1 var(--label);letter-spacing:.035em}.playmap-state-viewbar button:hover,.playmap-state-viewbar button:focus-visible{background:var(--blue);border-color:var(--blue)}.playmap-state-viewbar button[aria-expanded=true]{background:var(--purple);border-color:var(--purple)}.playmap-state-map-panel{min-width:0;display:grid;grid-template-rows:66px minmax(340px,50vw) auto;background:var(--white);border-top:4px solid var(--purple);border-bottom:4px solid var(--ink)}.playmap-state-map-panel[data-map-size=compact]{grid-template-rows:66px minmax(260px,32vw) auto}.playmap-state-map-panel[data-map-size=large]{grid-template-rows:66px minmax(480px,68vw) auto}.playmap-state-map-panel[hidden]{display:none}.playmap-state-map-panel>header{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:9px 15px;border-bottom:1px solid var(--line)}.playmap-state-map-panel>header>div:first-child{min-width:0;display:grid;gap:5px}.playmap-state-map-panel>header span{color:var(--soft-ink);font:900 10px/1 var(--label);letter-spacing:.055em}.playmap-state-map-panel>header strong{overflow:hidden;font:900 22px/1 var(--heading);text-overflow:ellipsis;white-space:nowrap}.playmap-state-map-header-actions{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:9px}.playmap-state-map-size{display:grid;grid-template-columns:repeat(3,auto);gap:1px;padding:2px;background:var(--line)}.playmap-state-map-size button{min-width:58px;min-height:38px;padding:0 7px;color:var(--soft-ink);background:var(--white);border:0;font:900 9px/1 var(--label)}.playmap-state-map-size button:hover,.playmap-state-map-size button:focus-visible{color:var(--blue)}.playmap-state-map-size button.is-active{color:var(--white);background:var(--ink)}.playmap-state-map-tally{display:flex;align-items:center;gap:1px;background:var(--line)}.playmap-state-map-tally b{min-width:58px;padding:10px 9px;color:var(--white);font:900 15px/1 var(--label);text-align:center}.playmap-state-map-tally .is-dem{background:var(--blue)}.playmap-state-map-tally .is-rep{background:var(--rose)}.playmap-state-map-tally .is-other{background:var(--purple)}.playmap-state-map-host{min-width:0;min-height:340px;display:grid;place-items:center;overflow:hidden;background:var(--paper)}.playmap-state-map-host .state-district-map{width:100%;height:100%;max-height:540px}.playmap-state-map-panel>footer{min-width:0;display:grid;grid-template-columns:minmax(240px,auto) minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 13px;background:var(--white);border-top:1px solid var(--line)}.playmap-state-map-legend{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.playmap-state-map-legend span{display:inline-flex;align-items:center;gap:5px;color:var(--soft-ink);font:900 9px/1 var(--label)}.playmap-state-map-legend i{width:15px;height:15px;display:inline-block;border:1px solid var(--ink)}.playmap-state-map-legend i.is-dem{background:var(--blue)}.playmap-state-map-legend i.is-rep{background:var(--rose)}.playmap-state-map-legend i.is-other{background:var(--purple)}.playmap-statewide-context{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}.playmap-statewide-context .playmap-result-person{min-height:66px}.playmap-statewide-empty{padding:12px;color:var(--soft-ink);background:var(--paper);font:900 10px/1.25 var(--label)}.playmap-state-map-panel>footer>a{min-height:38px;display:inline-flex;align-items:center;justify-content:center;padding:0 9px;color:var(--blue);border:1px solid var(--blue);font:900 9px/1 var(--label);text-decoration:none}.playmap-state-map-panel>footer>a:hover,.playmap-state-map-panel>footer>a:focus-visible{color:var(--white);background:var(--blue)}.playmap-state-map-panel>footer>small{grid-column:1 / -1;color:var(--soft-ink);font:700 9px/1.25 var(--label)}.playmap-state-races{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}.playmap-race{min-width:0;display:grid;grid-template-rows:auto 1fr;background:var(--white)}.playmap-race>header{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;background:var(--paper);border-bottom:1px solid var(--line)}.playmap-race>header span{font:900 var(--playmap-race-heading-size)/1 var(--label)}.playmap-race>header small{color:var(--soft-ink);font:900 var(--playmap-race-context-size)/1 var(--label);text-align:right}.playmap-candidates{display:grid;align-content:start;gap:1px;background:var(--line)}.playmap-candidate-option{--playmap-party: var(--purple);min-width:0;min-height:96px;display:grid;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:10px;padding:8px 11px;color:var(--ink);background:linear-gradient(90deg,var(--white) 12%,color-mix(in srgb,var(--playmap-party) 17%,var(--white)))}.playmap-candidate-option[data-party=DEM]{--playmap-party: var(--blue)}.playmap-candidate-option[data-party=REP]{--playmap-party: var(--rose)}.playmap-candidate-option:has(input:checked){color:var(--white);background:linear-gradient(90deg,color-mix(in srgb,var(--playmap-party) 72%,var(--white)),var(--playmap-party));box-shadow:inset 6px 0 0 var(--ink)}.playmap-candidates input{width:22px;height:22px;margin:0;accent-color:var(--ink)}.playmap-candidates input:disabled{opacity:.65}.playmap-candidate-profile{min-width:0;display:grid;gap:4px}.candidate-link-playmap{min-width:0;width:fit-content;max-width:100%;display:grid;grid-template-columns:60px minmax(0,1fr);align-items:center;gap:10px;color:inherit;text-decoration:none}.candidate-link-playmap:hover,.candidate-link-playmap:focus-visible{color:var(--cyan);text-decoration:underline;text-underline-offset:4px}.candidate-portrait-playmap{width:58px;height:58px;flex-basis:58px;border-width:2px}.candidate-portrait-playmap .candidate-initials{font-size:15px}.candidate-link-playmap .candidate-link-label,.playmap-candidate-profile>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.candidate-link-playmap .candidate-link-label{font:900 var(--playmap-race-name-size)/1 var(--label)}.playmap-candidate-profile>small{padding-left:70px;color:var(--soft-ink);font:900 var(--playmap-race-meta-size)/1 var(--label)}.playmap-candidate-option:has(input:checked) .playmap-candidate-profile>small{color:#ffffffd1}.playmap-candidate-flags{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:4px;padding-left:70px}.playmap-glance-flag{min-height:27px;display:inline-flex;align-items:center;justify-content:center;padding:0 7px;color:var(--ink);background:#ffffffeb;border:1px solid currentColor;font:900 9px/1 var(--label);letter-spacing:.025em;white-space:nowrap}button.playmap-glance-flag:hover,button.playmap-glance-flag:focus-visible{color:var(--white);background:var(--ink);border-color:var(--ink)}.playmap-glance-flag.is-incumbent{color:var(--white);background:var(--ink);border-color:var(--ink)}.playmap-glance-flag.is-elon{color:#654f00;background:#fff2a8}.playmap-glance-flag.is-elon.is-oppose{color:#722436;background:#ffe0e6}.playmap-glance-flag.is-pro-israel,.playmap-glance-flag.is-aipac{color:#0b568f;background:#dff3ff}.playmap-glance-flag.is-refusal{color:#26694a;background:#dff4e8}.playmap-glance-flag.is-udp.is-support{color:#513d67;background:#eee5f6}.playmap-glance-flag.is-udp.is-oppose{color:#7c2639;background:#ffe0e6}.playmap-candidate-option:has(input:checked) .playmap-glance-flag{box-shadow:0 0 0 1px #ffffff7a}.playmap-notes{display:grid;gap:12px;padding:18px;color:var(--ink);background:var(--white);border-top:5px solid var(--ink)}.playmap-notes>header{display:flex;align-items:end;justify-content:space-between;gap:15px}.playmap-notes>header>div{display:grid;gap:5px}.playmap-notes>header span{color:var(--soft-ink);font:900 11px/1 var(--label);letter-spacing:.06em}.playmap-notes>header strong{font:900 27px/.95 var(--heading);letter-spacing:.035em}.playmap-notes>header b{padding:7px 9px;color:var(--white);background:var(--gold);font:900 10px/1 var(--label)}.playmap-notes p{margin:0;font:700 15px/1.4 var(--body)}.playmap-notes ul{display:grid;gap:7px;margin:0;padding:0 0 0 21px;color:var(--soft-ink);font:650 13px/1.35 var(--body)}.playmap-method-note{display:grid;gap:5px;padding:11px 12px;background:var(--paper);border:1px solid var(--line-bright)}.playmap-method-note strong{font:900 11px/1 var(--label)}.playmap-method-note span{color:var(--soft-ink);font:650 12px/1.35 var(--body)}.playmap-notes>a{width:fit-content;min-height:36px;display:inline-flex;align-items:center;padding:0 10px;color:var(--blue);border:1px solid var(--blue);font:900 11px/1 var(--label);text-decoration:none}.playmap-notes>a:hover,.playmap-notes>a:focus-visible{color:var(--white);background:var(--blue)}.desk-footer{display:grid;grid-template-columns:150px 150px 230px 170px 1fr;border-top:1px solid var(--line-bright);background:var(--white)}.desk-footer button{border-right:1px solid var(--line);font-size:20px}.desk-footer #reset-my-picks{color:var(--rose);font-size:17px}.desk-footer #reset-my-picks:disabled{color:var(--soft-ink);opacity:.42}.desk-footer #ipad-access-button{color:var(--blue)}.desk-footer #status-line{display:grid;align-items:center;justify-content:end;padding:0 18px;color:var(--green);font:800 22px/1 var(--label)}dialog{color:var(--ink)}dialog::backdrop{background:#10203361;backdrop-filter:blur(3px)}.state-dialog{width:min(1840px,96vw);height:80dvh;max-width:none;max-height:none;padding:0;overflow:hidden;background:var(--white);border:2px solid var(--ink);box-shadow:0 22px 70px #10203338}#state-dialog-content{height:100%;display:grid;grid-template-rows:132px minmax(0,1fr)}.state-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 20px;border-bottom:1px solid var(--line-bright);background:var(--white)}.state-dialog-identity{min-width:0;display:flex;align-items:center;gap:17px}.state-dialog-identity .state-flag{width:124px;height:82px}.state-dialog-copy{min-width:0}.state-dialog-header h1{margin:7px 0 5px;font:800 56px/.82 var(--heading);letter-spacing:.025em}.state-balance-label{display:inline-block;padding-left:11px;border-left:10px solid var(--balance-color);color:var(--ink);font:800 22px/1 var(--label)}.dialog-actions{display:flex;gap:7px;align-self:stretch;padding:24px 0}.dialog-actions button{min-width:166px;padding:0 10px;color:var(--ink);background:var(--paper);border:1px solid var(--line-bright);font:800 22px/1 var(--label)}.dialog-actions button:disabled,.state-dialog-tabs button:disabled{cursor:not-allowed;opacity:.48}.dialog-actions [data-modal-close]{min-width:68px;font:400 40px/1 var(--body)}.state-dialog-body{min-width:0;min-height:0;display:grid;grid-template-columns:minmax(430px,38%) minmax(0,62%);overflow:hidden}.state-modal-insights{min-width:0;min-height:0;display:grid;grid-template-rows:minmax(290px,48%) minmax(0,52%);overflow:hidden;border-right:2px solid var(--ink);background:var(--paper)}.state-district-panel{min-width:0;min-height:0;display:grid;grid-template-rows:42px minmax(0,1fr) 46px;overflow:hidden;background:var(--white);border-bottom:2px solid var(--ink)}.state-district-panel>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 11px;border-bottom:1px solid var(--line)}.state-district-panel>header span,.state-district-panel>header strong{color:var(--soft-ink);font:800 13px/1 var(--label);letter-spacing:.035em}.state-district-panel>header strong{color:var(--ink);font-size:17px}#state-district-map-host{min-width:0;min-height:0;overflow:hidden;background:var(--paper)}.state-district-map{width:100%;height:100%;display:block}.state-district-shape{cursor:pointer;stroke:var(--white);stroke-width:1.5;vector-effect:non-scaling-stroke;transition:filter .1s ease,stroke-width .1s ease}.state-district-shape:hover,.state-district-shape:focus-visible{filter:brightness(1.14);outline:none;stroke:var(--ink);stroke-width:3}.state-district-shape.is-selected{stroke:var(--cyan);stroke-width:5}.state-district-label{fill:var(--white);paint-order:stroke;stroke:var(--ink);stroke-width:3px;stroke-linejoin:round;font:800 16px/1 var(--label)}.state-district-panel>footer{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:5px 9px;border-top:1px solid var(--line);background:var(--white)}.state-district-panel>footer a{color:var(--blue);font:800 11px/1 var(--label)}.state-district-panel>footer span{overflow:hidden;color:var(--soft-ink);font:700 10px/1.2 var(--label);text-overflow:ellipsis}.state-history-panel{min-width:0;min-height:0;overflow:hidden;background:var(--white)}.state-insight-loading{display:grid;place-items:center;color:var(--soft-ink);font:800 15px/1 var(--label);letter-spacing:.04em}.state-history-comparison{height:100%;min-height:0;display:grid;grid-template-rows:70px minmax(0,1fr);overflow:hidden}.state-history-summary{display:grid;grid-template-columns:.55fr 1.35fr 1.1fr;gap:1px;background:var(--line);border-bottom:1px solid var(--line-bright)}.state-history-summary>span{min-width:0;display:grid;align-content:center;gap:4px;padding:7px 9px;background:var(--white)}.state-history-summary small{color:var(--soft-ink);font:800 10px/1 var(--label)}.state-history-summary strong{overflow:hidden;color:var(--ink);font:800 16px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.state-history-table{min-height:0;overflow:auto}.state-history-row{min-width:580px;min-height:34px;display:grid;grid-template-columns:48px 92px 80px 94px minmax(150px,1fr);align-items:center;gap:6px;padding:4px 9px;border-bottom:1px solid var(--line);font:800 11px/1 var(--label)}.state-history-row>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.state-history-row.is-header{position:sticky;top:0;z-index:1;min-height:30px;color:var(--white);background:var(--ink);font-size:9px}.state-history-balance{height:8px;display:flex;background:var(--line)}.state-history-balance i{display:block;height:100%}.state-history-balance .is-dem{background:var(--blue)}.state-history-balance .is-rep{background:var(--rose)}.state-history-empty{margin:0;padding:24px;color:var(--soft-ink);font:800 14px/1 var(--label)}.state-modal-races{min-width:0;min-height:0;display:grid;grid-template-rows:70px minmax(0,1fr);overflow:hidden;background:var(--white)}.state-dialog-tabs{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid var(--line-bright);background:var(--paper)}.state-dialog-tabs button{position:relative;border:0;border-right:1px solid var(--line);color:var(--soft-ink);background:transparent;font:800 21px/1 var(--label)}.state-dialog-tabs button strong{margin-left:6px;color:var(--ink)}.state-dialog-tabs button.is-active{color:var(--ink);background:var(--white);box-shadow:inset 0 -5px 0 var(--blue)}.state-race-list{min-height:0;overflow:auto;padding:12px}.state-race-card{margin-bottom:10px;background:var(--white);border:1px solid var(--line-bright)}.state-race-card.is-selected{border-color:var(--blue);box-shadow:inset 6px 0 0 var(--blue)}.state-race-card>header{min-height:96px;display:grid;grid-template-columns:1fr auto;align-items:stretch;border-bottom:1px solid var(--line)}.state-race-card>.race-note-drawer{border-bottom:1px solid var(--line)}.race-select{display:grid;align-content:center;gap:5px;padding:8px 12px;text-align:left;color:var(--ink);background:transparent;border:0}.race-select span{color:var(--soft-ink);font:700 18px/1 var(--label)}.race-select strong{font:800 34px/.94 var(--heading)}.race-select .state-race-title{min-width:0;display:flex;align-items:baseline;gap:11px}.race-select .state-race-title>strong{flex:0 1 auto}.race-select .district-area-label{max-width:44ch;overflow:hidden;flex:0 1 auto;font:750 12px/1.05 var(--label);text-overflow:ellipsis;white-space:nowrap}.race-status{min-width:168px;display:grid;place-content:center end;gap:5px;padding:0 12px;text-align:right;border-left:1px solid var(--line)}.race-status span{color:var(--soft-ink);font:700 18px/1 var(--label)}.race-status strong{font:800 28px/1 var(--label)}.measure-subject{margin:0;padding:10px 12px 5px;color:var(--ink);font:800 27px/1.18 var(--heading)}.measure-description{margin:0;padding:5px 12px 10px;color:var(--soft-ink);font:500 23px/1.4 var(--body)}.modal-measure-question{display:grid;gap:7px;padding:12px;border-bottom:1px solid var(--line)}.modal-measure-question p{margin:0;color:var(--ink);font:600 23px/1.42 var(--body);overflow-wrap:anywhere}.state-race-polling{display:grid;gap:8px;padding:10px 12px 11px;background:var(--paper);border-bottom:1px solid var(--line)}.state-race-polling>header{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:12px}.state-race-polling>header span{color:var(--blue);font:900 14px/1 var(--label);letter-spacing:.045em}.state-race-polling>header strong{color:var(--soft-ink);font:850 11px/1 var(--label);letter-spacing:.035em;text-align:right}.state-race-polling>footer{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:3px}.state-race-polling>footer span{color:var(--soft-ink);font:850 11px/1.1 var(--label);letter-spacing:.025em}.state-race-polling>footer nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.state-race-polling>footer a{flex:0 0 auto;min-height:28px;display:inline-grid;place-items:center;padding:0 10px;color:var(--white);background:var(--ink);border:1px solid var(--ink);font:900 11px/1 var(--label);text-decoration:none}.state-race-poll-average{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:3px 12px;padding:7px 9px;border:1px solid var(--line)}.state-race-poll-average>span{grid-column:1 / -1;color:var(--blue);font:900 11px/1 var(--label);letter-spacing:.04em}.state-race-poll-average>b{min-width:0;font:900 20px/1.05 var(--heading);overflow-wrap:anywhere}.state-race-poll-average>small{color:var(--soft-ink);font:750 10px/1.1 var(--label);text-align:right}.state-race-models{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.state-race-models[data-model-agreement=true]{grid-template-columns:minmax(0,1fr)}.state-race-model{display:grid;gap:4px;min-width:0;padding:9px 10px;border:1px solid var(--line);background:var(--white)}.state-race-model--blue-wave{border-left:5px solid var(--blue)}.state-race-model--ddhq{border-left:5px solid var(--ink)}.state-race-model--agreement{border-left:5px solid var(--purple)}.state-race-model>span{color:var(--soft-ink);font:900 11px/1 var(--label);letter-spacing:.04em}.state-race-model>b{min-width:0;font:900 20px/1.05 var(--heading);overflow-wrap:anywhere}.state-race-model>small{color:var(--soft-ink);font:800 10px/1.15 var(--label);letter-spacing:.015em}.choice-list{display:grid}.choice-readout,.choice-editor{min-height:80px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:7px 12px;border-bottom:1px solid var(--line)}.choice-readout{gap:0;padding:0 0 0 12px;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--candidate-color) 80%,transparent) 100%)}.choice-identity,.choice-totals{min-width:0;display:grid;gap:4px}.choice-identity{align-content:center;padding:7px 10px 7px 0}.choice-totals{min-width:142px;align-self:stretch;place-content:center end;padding:8px 13px;color:var(--white);text-align:right;background:var(--candidate-color);text-shadow:-1px -1px 0 var(--black),1px -1px 0 var(--black),-1px 1px 0 var(--black),1px 1px 0 var(--black)}.choice-readout strong,.choice-editor strong{font:800 27px/.95 var(--heading)}.choice-readout span,.choice-editor small{color:var(--soft-ink);font:700 18px/1 var(--label)}.choice-totals strong,.choice-totals span{color:var(--white)}.choice-readout .candidate-initials,.choice-editor .candidate-initials{color:var(--white);font-size:28px}.candidate-readout-meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.candidate-readout-meta>span{margin-right:3px}.candidate-readout-meta>.candidate-factor-flags,.choice-editor-identity>.candidate-factor-flags{margin:2px 0 0}.choice-editor-identity>.candidate-factor-flags{display:flex}.candidate-incumbent-badge,.contest-circumstance{display:inline-flex;align-items:center;min-height:24px;padding:0 6px;color:var(--ink)!important;background:#ffffffe0;border:1px solid var(--line-bright);font:800 11px/1 var(--label)!important;letter-spacing:.025em}.contest-circumstances{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px;margin-left:8px}.contest-circumstance.is-special{color:var(--white)!important;background:var(--purple);border-color:var(--purple)}.contest-circumstance.is-open{color:var(--white)!important;background:var(--gold);border-color:var(--gold)}.contest-circumstance.is-incumbent{color:var(--white)!important;background:var(--ink);border-color:var(--ink)}.state-race-card>.open-seat-reason{margin:0;padding:10px 12px;border-bottom:1px solid var(--line)}.state-race-card>.open-seat-reason>span{font-size:12px}.state-race-card>.open-seat-reason>p{font-size:14px}.candidate-pick{min-height:28px;padding:0 7px;color:var(--ink);background:#ffffffe6;border:1px solid var(--ink);font:800 11px/1 var(--label)}.candidate-pick:hover,.candidate-pick:focus-visible{color:var(--blue);border-color:var(--blue)}.candidate-pick.is-picked{color:var(--white);background:var(--ink);border-color:var(--ink);box-shadow:inset 0 -3px 0 var(--cyan)}.candidate-link-readout,.candidate-link-editor{width:fit-content;max-width:100%;color:var(--ink);font:800 27px/.95 var(--heading)}.candidate-portrait-readout,.candidate-portrait-editor{width:108px;height:108px;flex-basis:108px}.choice-readout[data-party=DEM]{box-shadow:inset 6px 0 0 var(--blue)}.choice-readout[data-party=REP]{box-shadow:inset 6px 0 0 var(--rose)}.choice-editor{grid-template-columns:1fr 230px;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--candidate-color) 24%,transparent) 100%)}.choice-editor-identity{min-width:0;display:grid;gap:5px}.choice-editor input,.race-edit-meta input,.race-edit-meta select{width:100%;min-height:58px;padding:0 9px;color:var(--ink);background:var(--white);border:2px solid var(--line-bright);border-radius:0;font:800 25px/1 var(--label)}.race-edit-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 12px}.race-edit-meta label{display:grid;gap:5px}.race-edit-meta label>span{color:var(--soft-ink);font:700 18px/1 var(--label)}.state-personal-vote{padding:10px 12px;background:var(--paper);border-bottom:1px solid var(--line)}.modal-personal-vote{grid-template-columns:150px minmax(260px,1fr);grid-template-rows:auto auto;align-items:center}.modal-personal-vote>span{font-size:18px}.modal-personal-vote select{min-height:58px;font-size:20px}.modal-personal-vote .analyst-shorthand{grid-column:2}.state-race-card>footer{min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 12px;color:var(--soft-ink);background:var(--paper);font:700 17px/1 var(--label)}.state-race-card>footer a{color:var(--blue)}.state-race-footer-actions{display:flex;align-items:center;gap:9px}.state-race-footer-actions .watch-toggle{min-height:36px}.race-history-open{min-height:36px;padding:0 9px;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);font:800 12px/1 var(--label)}.race-history-open:hover,.race-history-open:focus-visible{color:var(--blue);border-color:var(--blue)}.state-race-footer-actions .race-directory-note{min-height:36px;background:var(--white)}.state-race-footer-actions .race-directory-note.is-saved{color:var(--white);background:var(--ink)}.modal-edit-actions{position:sticky;bottom:-12px;display:grid;grid-template-columns:1fr 1.6fr;gap:7px;margin:16px -12px -12px;padding:12px;background:#fffffff7;border-top:2px solid var(--line-bright)}.modal-edit-actions button{min-height:68px;color:var(--ink);background:var(--paper);border:1px solid var(--line-bright);font:800 22px/1 var(--label)}.modal-edit-actions .apply-results{color:var(--white);background:var(--green);border-color:var(--green)}.candidate-dialog{width:min(1480px,94vw);height:84dvh;max-width:none;max-height:none;padding:0;overflow:hidden;background:var(--white);border:2px solid var(--ink);box-shadow:0 22px 70px #1020334d}#candidate-dialog-content{height:100%;min-height:0}.external-link-dialog{width:min(1720px,96vw);height:90dvh;max-width:none;max-height:none;padding:0;overflow:hidden;background:var(--white);border:2px solid var(--ink);box-shadow:0 22px 70px #10203357}.external-link-viewer{height:100%;min-height:0;display:grid;grid-template-rows:104px minmax(0,1fr) 54px;background:var(--white)}.external-link-viewer>header{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 18px 0 24px;border-bottom:2px solid var(--ink)}.external-link-viewer>header>div{min-width:0;display:grid;gap:5px}.external-link-viewer>header span{color:var(--blue);font:900 15px/1 var(--label);letter-spacing:.05em}.external-link-viewer>header strong{overflow:hidden;font:800 31px/.95 var(--heading);letter-spacing:.025em;text-overflow:ellipsis;white-space:nowrap}.external-link-viewer>header small{overflow:hidden;color:var(--soft-ink);font:700 12px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.external-link-viewer>header nav{display:flex;align-self:stretch;align-items:center;gap:8px}.external-link-viewer>header a,.external-link-viewer>header button{min-height:62px;display:inline-flex;align-items:center;justify-content:center;padding:0 16px;color:var(--ink);background:var(--paper);border:1px solid var(--line-bright);font:900 16px/1 var(--label);text-decoration:none;white-space:nowrap}.external-link-viewer>header button{width:64px;padding:0;background:var(--white);font:400 40px/1 var(--body)}.external-link-viewer>header a:hover,.external-link-viewer>header a:focus-visible,.external-link-viewer>header button:hover,.external-link-viewer>header button:focus-visible{color:var(--blue);border-color:var(--blue)}.external-link-frame-shell{position:relative;min-width:0;min-height:0;overflow:hidden;background:var(--paper)}.external-link-frame-shell iframe{position:relative;z-index:1;width:100%;height:100%;display:block;background:var(--white);border:0}.external-link-loading{position:absolute;inset:0;z-index:2;display:none;place-items:center;color:var(--soft-ink);background:var(--paper);font:900 22px/1 var(--label);letter-spacing:.04em;pointer-events:none}.external-link-frame-shell.is-loading .external-link-loading{display:grid}.external-link-viewer>footer{display:flex;align-items:center;padding:0 20px;color:var(--soft-ink);background:var(--paper);border-top:1px solid var(--line-bright);font:800 12px/1.25 var(--label);letter-spacing:.02em}.race-history-dialog{width:min(1540px,94vw);height:86dvh;max-width:none;max-height:none;padding:0;overflow:hidden;background:var(--white);border:2px solid var(--ink);box-shadow:0 22px 70px #1020334d}#race-history-dialog-content{height:100%;min-height:0}.race-note-dialog{width:min(1120px,92vw);height:min(760px,80dvh);max-width:none;max-height:none;padding:0;overflow:hidden;background:var(--white);border:2px solid var(--ink);box-shadow:0 22px 70px #1020334d}#race-note-dialog-content{height:100%;min-height:0}.race-note-editor{height:100%;min-height:0;display:grid;grid-template-rows:112px minmax(0,1fr) 88px;background:var(--white)}.race-note-editor>header{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 18px 0 24px;border-bottom:2px solid var(--ink)}.race-note-editor>header>div{min-width:0;display:grid;gap:6px}.race-note-editor>header span{color:var(--gold);font:900 16px/1 var(--label);letter-spacing:.05em}.race-note-editor>header h2{margin:0;overflow:hidden;font:800 46px/.9 var(--heading);text-overflow:ellipsis;white-space:nowrap}.race-note-editor>header button{width:64px;min-height:62px;flex:0 0 auto;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);font:400 40px/1 var(--body)}.race-note-fields{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:18px;overflow:auto;padding:22px 24px}.race-note-fields label{min-width:0;min-height:0;display:grid;align-content:start;gap:7px}.race-note-fields label:last-child{grid-template-rows:auto auto minmax(180px,1fr)}.race-note-fields label>span{color:var(--ink);font:900 19px/1 var(--label);letter-spacing:.04em}.race-note-fields label>small{color:var(--soft-ink);font:800 12px/1.2 var(--label);letter-spacing:.025em}.race-note-fields input,.race-note-fields textarea{width:100%;color:var(--ink);background:var(--white);border:2px solid var(--line-bright);border-radius:0;font:600 22px/1.35 var(--body)}.race-note-fields input{min-height:58px;padding:0 12px}.race-note-fields textarea{min-height:180px;padding:12px;resize:vertical}.race-note-fields input:focus,.race-note-fields textarea:focus{outline:3px solid color-mix(in srgb,var(--blue) 28%,transparent);border-color:var(--blue)}.race-note-editor>footer{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 18px 12px 24px;color:var(--soft-ink);background:var(--paper);border-top:1px solid var(--line-bright);font:800 12px/1.2 var(--label)}.race-note-editor>footer>div{display:flex;align-self:stretch;gap:8px}.race-note-editor>footer button{min-width:150px;padding:0 14px;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);font:900 17px/1 var(--label)}.race-note-editor>footer .race-note-save{color:var(--white);background:var(--green);border-color:var(--green)}.race-note-editor button:hover,.race-note-editor button:focus-visible{color:var(--blue);border-color:var(--blue)}.race-note-editor>footer .race-note-save:hover,.race-note-editor>footer .race-note-save:focus-visible{color:var(--white);background:var(--blue)}.race-history-profile{height:100%;min-height:0;display:grid;grid-template-rows:116px 82px minmax(0,1fr) auto;overflow:hidden;background:var(--white)}.race-history-header{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 18px 0 24px;border-bottom:2px solid var(--ink)}.race-history-header>div{min-width:0;display:grid;gap:6px}.race-history-header>.race-history-identity,.race-history-unavailable header>.race-history-identity{display:flex;align-items:center;gap:16px}.race-history-identity{min-width:0}.race-history-identity .state-flag{width:112px;height:72px}.race-history-title{min-width:0;display:grid;gap:6px}.race-history-header span{color:var(--blue);font:800 17px/1 var(--label);letter-spacing:.035em}.race-history-header h2{margin:0;overflow:hidden;font:800 48px/.88 var(--heading);letter-spacing:.025em;text-overflow:ellipsis;white-space:nowrap}.race-history-header button,.race-history-unavailable header button{width:68px;min-height:66px;flex:0 0 auto;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);font:400 42px/1 var(--body)}.race-history-header button:hover,.race-history-header button:focus-visible,.race-history-unavailable header button:hover,.race-history-unavailable header button:focus-visible{color:var(--blue);border-color:var(--blue)}.race-history-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border-bottom:1px solid var(--line-bright)}.race-history-summary>span{min-width:0;display:grid;align-content:center;gap:5px;padding:8px 15px;background:var(--white)}.race-history-summary small{color:var(--soft-ink);font:800 12px/1 var(--label)}.race-history-summary strong{overflow:hidden;color:var(--ink);font:800 25px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.race-history-table{min-width:0;min-height:0;overflow:auto;background:var(--white)}.race-history-row{min-width:980px;min-height:72px;display:grid;grid-template-columns:78px minmax(260px,1fr) minmax(260px,1fr) 160px 150px;align-items:center;gap:10px;padding:7px 14px;border-bottom:1px solid var(--line)}.race-history-row>strong{font:800 24px/1 var(--label)}.race-history-row.is-header{position:sticky;top:0;z-index:2;min-height:42px;color:var(--white);background:var(--ink);font:800 12px/1 var(--label);letter-spacing:.035em}.race-history-row.is-missing{min-height:48px;color:var(--soft-ink);background:var(--paper)}.race-history-row.is-missing>span{grid-column:2 / -1;font:800 14px/1 var(--label);letter-spacing:.025em}.race-history-candidate{min-width:0;display:grid;gap:6px;padding-left:11px;border-left:7px solid var(--purple)}.race-history-candidate.is-dem{border-color:var(--blue)}.race-history-candidate.is-rep{border-color:var(--rose)}.race-history-candidate strong{overflow:hidden;font:800 22px/.95 var(--heading);text-overflow:ellipsis;white-space:nowrap}.race-history-candidate small,.race-history-number small{color:var(--soft-ink);font:800 12px/1 var(--label)}.race-history-number{min-width:0;display:grid;gap:6px}.race-history-number strong{font:800 20px/1 var(--label)}.race-history-footer{min-height:82px;display:flex;align-items:center;flex-wrap:wrap;gap:7px 18px;padding:10px 16px;color:var(--white);background:var(--ink);font:800 11px/1.25 var(--label);letter-spacing:.02em}.race-history-footer strong{color:#d8f2ff}.race-history-footer a{color:var(--white);text-underline-offset:3px}.race-history-loading{height:100%;display:grid;place-items:center;color:var(--soft-ink);background:var(--white);font:800 22px/1 var(--label)}.race-history-unavailable{height:100%;display:grid;grid-template-rows:116px minmax(0,1fr)}.race-history-unavailable header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 18px 0 24px;border-bottom:2px solid var(--ink)}.race-history-unavailable header>div{min-width:0;display:grid;gap:6px}.race-history-unavailable header span{color:var(--blue);font:800 17px/1 var(--label)}.race-history-unavailable h2{margin:0;font:800 48px/.9 var(--heading)}.race-history-unavailable>div{display:grid;place-content:center;gap:12px;text-align:center}.race-history-unavailable>div strong{font:800 48px/.9 var(--heading)}.race-history-unavailable>div span{color:var(--soft-ink);font:800 20px/1 var(--label)}.candidate-career-profile{height:100%;min-height:0;display:grid;grid-template-rows:122px 82px minmax(0,1fr) auto;overflow:hidden;background:var(--white)}.candidate-career-header{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 18px 0 24px;border-bottom:2px solid var(--ink)}.candidate-career-header>div{min-width:0;display:grid;gap:4px}.candidate-career-header span{color:var(--blue);font:900 15px/1 var(--label);letter-spacing:.04em}.candidate-career-header h2{margin:0;overflow:hidden;font:800 48px/.88 var(--heading);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap}.candidate-career-header p{margin:0;overflow:hidden;color:var(--soft-ink);font:800 13px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.candidate-career-header>button{width:68px;min-height:66px;flex:0 0 auto;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);font:400 42px/1 var(--body)}.candidate-career-header>button:hover,.candidate-career-header>button:focus-visible{color:var(--blue);border-color:var(--blue)}.candidate-career-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border-bottom:1px solid var(--line-bright)}.candidate-career-summary>span{min-width:0;display:grid;align-content:center;gap:5px;padding:8px 15px;background:var(--white)}.candidate-career-summary small{color:var(--soft-ink);font:800 12px/1 var(--label)}.candidate-career-summary strong{overflow:hidden;font:900 27px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.candidate-career-body{min-width:0;min-height:0;overflow:auto;background:var(--paper)}.candidate-fight-card{min-width:0;display:grid;gap:1px;color:var(--ink);background:var(--ink);border-bottom:4px solid var(--ink)}.candidate-fight-card>header{min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 16px;color:var(--white);background:var(--ink)}.candidate-fight-card>header>div{min-width:0;display:grid;gap:5px}.candidate-fight-card>header span{color:#d8f2ff;font:900 12px/1 var(--label);letter-spacing:.08em}.candidate-fight-card>header strong{font:900 21px/1 var(--heading);letter-spacing:.04em}.candidate-fight-card>header small{max-width:460px;color:var(--line-bright);font:800 9px/1.35 var(--label);text-align:right}.candidate-fight-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--ink)}.candidate-fight-metrics>span{min-height:72px;display:grid;align-content:center;gap:7px;padding:10px 15px;background:var(--white)}.candidate-fight-metrics small{color:var(--soft-ink);font:900 10px/1 var(--label);letter-spacing:.04em}.candidate-fight-metrics strong{font:900 27px/.9 var(--heading)}.candidate-fight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--ink)}.candidate-fight-grid>section{min-width:0;padding:15px;background:var(--white)}.candidate-fight-grid h3,.candidate-career-defeated h3{margin:0 0 10px;color:var(--blue);font:900 13px/1 var(--label);letter-spacing:.045em}.candidate-fight-grid ul{display:grid;gap:9px;margin:0;padding-left:20px}.candidate-fight-grid li{padding-left:2px;font:760 13px/1.32 var(--body)}.candidate-fight-grid li::marker{color:var(--cyan)}.candidate-career-defeated{min-width:0;padding:15px;background:var(--paper)}.candidate-career-opponents{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:7px}.candidate-career-opponents article{min-width:0;min-height:86px;display:grid;align-content:center;gap:6px;padding:11px 13px;background:var(--white);border-left:7px solid var(--green)}.candidate-career-opponents span{color:var(--soft-ink);font:900 9px/1 var(--label);letter-spacing:.045em}.candidate-career-opponents strong{overflow:hidden;font:900 18px/1 var(--heading);text-overflow:ellipsis;white-space:nowrap}.candidate-career-opponents small{color:var(--soft-ink);font:800 10px/1.2 var(--label)}.candidate-career-no-wins{padding:18px;color:var(--soft-ink);background:var(--white);font:900 14px/1 var(--label);text-align:center}.candidate-career-table{min-width:0;min-height:0;overflow-x:auto;background:var(--white)}.candidate-career-row{min-width:1120px;min-height:76px;display:grid;grid-template-columns:78px 190px minmax(270px,1fr) 105px minmax(280px,1fr);align-items:center;gap:12px;padding:8px 14px;border-bottom:1px solid var(--line)}.candidate-career-row:nth-child(odd):not(.is-header){background:var(--paper)}.candidate-career-row>strong{font:900 25px/1 var(--label)}.candidate-career-row>span{min-width:0;display:grid;gap:6px}.candidate-career-row b{overflow:hidden;font:900 19px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.candidate-career-row small{overflow:hidden;color:var(--soft-ink);font:800 11px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.candidate-career-row.is-header{position:sticky;top:0;z-index:2;min-height:42px;color:var(--white);background:var(--ink);font:900 12px/1 var(--label);letter-spacing:.035em}.candidate-career-outcome{min-height:38px;place-content:center;color:var(--white);background:var(--purple);font:900 13px/1 var(--label);text-align:center}.candidate-career-outcome.is-win{background:var(--green)}.candidate-career-outcome.is-loss{background:var(--rose)}.candidate-career-empty{min-height:0;display:grid;place-content:center;gap:12px;padding:30px;text-align:center}.candidate-career-empty strong{font:900 35px/.95 var(--heading)}.candidate-career-empty p{max-width:760px;margin:0;color:var(--soft-ink);font:650 19px/1.4 var(--body)}.candidate-career-footer{min-height:88px;display:flex;align-items:center;flex-wrap:wrap;gap:6px 18px;padding:10px 16px;color:var(--white);background:var(--ink);font:800 10.5px/1.25 var(--label);letter-spacing:.02em}.candidate-career-footer>strong{color:#d8f2ff}.candidate-career-sources{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px 12px}.candidate-career-sources a{color:var(--white);text-underline-offset:3px}.candidate-modal-profile{height:100%;min-height:0;display:grid;grid-template-rows:104px minmax(0,1fr);background:var(--white)}.candidate-modal-profile[data-party=DEM]{box-shadow:inset 9px 0 0 var(--blue)}.candidate-modal-profile[data-party=REP]{box-shadow:inset 9px 0 0 var(--rose)}.candidate-modal-header{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 18px 0 24px;border-bottom:2px solid var(--ink)}.candidate-modal-header>div{min-width:0;display:grid;gap:6px}.candidate-modal-header>.candidate-modal-identity{display:flex;align-items:center;gap:14px}.candidate-modal-identity .state-flag{width:94px;height:60px}.candidate-modal-heading{min-width:0;display:grid;gap:6px}.candidate-modal-header span{color:var(--blue);font:800 17px/1 var(--label);letter-spacing:.035em}.candidate-modal-header strong{font:800 37px/.9 var(--heading);letter-spacing:.035em}.candidate-modal-header nav{display:flex;align-self:stretch;align-items:center;gap:8px}.candidate-modal-header a,.candidate-modal-header button,.candidate-modal-unavailable button{min-height:60px;display:inline-flex;align-items:center;justify-content:center;padding:0 14px;color:var(--ink);background:var(--paper);border:1px solid var(--line-bright);font:800 17px/1 var(--label);text-decoration:none}.candidate-modal-header a:hover,.candidate-modal-header a:focus-visible,.candidate-modal-header button:hover,.candidate-modal-header button:focus-visible{color:var(--blue);border-color:var(--blue)}.candidate-modal-header button{width:62px;padding:0;background:var(--white);font:400 40px/1 var(--body)}.candidate-modal-scroll{min-height:0;overflow:auto}.candidate-modal-layout{min-height:100%;display:grid;grid-template-columns:minmax(330px,.72fr) minmax(0,1.28fr)}.candidate-modal-layout .candidate-profile-portrait-block{padding:clamp(22px,2.4vw,40px)}.candidate-modal-layout .candidate-profile-portrait{max-height:570px}.candidate-modal-layout .candidate-profile-main{padding:clamp(24px,3vw,46px)}.candidate-modal-layout .candidate-profile-main h1{font-size:clamp(52px,5vw,82px)}.candidate-modal-layout .candidate-resource-link{min-height:68px}.candidate-modal-loading,.candidate-modal-unavailable{height:100%;min-height:0;display:grid;place-content:center;gap:14px;padding:28px;text-align:center;color:var(--soft-ink);background:var(--white);font:800 24px/1 var(--label)}.candidate-modal-unavailable span{color:var(--rose)}.candidate-modal-unavailable h2{margin:0;color:var(--ink);font:800 58px/.9 var(--heading)}.candidate-modal-unavailable p{max-width:720px;margin:0;font:500 25px/1.4 var(--body)}.candidate-modal-unavailable button{justify-self:center}.info-dialog{width:min(980px,90vw);max-width:none;padding:38px;background:var(--white);border:2px solid var(--ink);box-shadow:0 22px 70px #10203340}.info-dialog>form{position:absolute;top:12px;right:12px}.dialog-close{width:58px;height:58px;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);font:400 36px/1 var(--body)}#info-dialog-content>span{color:var(--blue);font:800 21px/1 var(--label)}#info-dialog-content h2{margin:16px 60px 14px 0;font:800 48px/.95 var(--heading)}#info-dialog-content p{margin:0;color:var(--soft-ink);font:500 29px/1.5 var(--body)}.info-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:22px}.info-links a{min-height:48px;display:inline-flex;align-items:center;padding:0 10px;color:var(--blue);background:var(--paper);border:1px solid var(--line-bright);font:800 15px/1 var(--label);text-decoration:none}.info-links a:hover,.info-links a:focus-visible{color:var(--ink);border-color:var(--blue)}.ipad-access-dialog{width:min(980px,92vw);max-width:none;padding:38px;background:var(--white);border:2px solid var(--ink);box-shadow:0 22px 70px #10203340}.ipad-access-dialog>form{position:absolute;top:12px;right:12px}#ipad-access-content>span{color:var(--blue);font:800 21px/1 var(--label)}#ipad-access-content h2{margin:16px 60px 18px 0;font:800 48px/.95 var(--heading)}.ipad-access-layout{display:grid;grid-template-columns:minmax(260px,360px) minmax(0,1fr);align-items:center;gap:30px}.ipad-access-layout img{width:100%;height:auto;display:block;border:1px solid var(--line-bright);image-rendering:pixelated}.ipad-access-layout>div{min-width:0;display:grid;gap:14px}.ipad-access-layout small{color:var(--soft-ink);font:800 17px/1 var(--label)}.ipad-access-layout strong{overflow-wrap:anywhere;font:800 30px/1.15 var(--heading)}.ipad-access-layout p{margin:0;color:var(--soft-ink);font:700 17px/1.45 var(--label)}.ipad-access-loading,.ipad-access-error{min-height:330px;display:grid;place-content:center;gap:10px;text-align:center;background:var(--paper);border:1px solid var(--line-bright);font:800 24px/1 var(--label)}.ipad-access-error strong{color:var(--rose)}.ipad-access-error p{margin:0;color:var(--soft-ink);font:700 17px/1.4 var(--label)}.program-app{width:100vw;height:100vh;overflow:hidden;cursor:default;background:var(--white)}.program-shell{width:100vw;height:100vh;display:grid;grid-template-rows:clamp(112px,11.5vh,220px) minmax(0,1fr) clamp(104px,9.5vh,182px);background:var(--white)}.program-header{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"brand title" "clocks clocks";align-items:center;gap:6px 14px;padding:10px clamp(12px,2.2vw,24px);border-bottom:2px solid var(--ink);background:var(--white)}.program-brand{grid-area:brand;display:grid;gap:4px}.program-brand strong{font:800 clamp(20px,4.3vw,46px)/.88 var(--heading);letter-spacing:.035em}.program-brand small{color:var(--soft-ink);font:700 clamp(10px,1.9vw,21px)/1 var(--label)}.program-polls-clock{min-width:0;display:flex;align-items:baseline;gap:clamp(5px,1vw,11px);white-space:nowrap}.program-polls-clock span{overflow:hidden;color:var(--soft-ink);font:800 clamp(9px,1.35vw,15px)/1 var(--label);text-overflow:ellipsis}.program-polls-clock strong{flex:0 0 auto;font:800 clamp(13px,2.15vw,23px)/1 var(--label);letter-spacing:-.025em}.program-title{grid-area:title;text-align:right}.program-title span{color:var(--blue);font:800 clamp(11px,2vw,22px)/1 var(--label)}.program-title strong{display:block;margin-top:4px;font:800 clamp(20px,3.7vw,40px)/.9 var(--heading)}.program-clocks{grid-area:clocks;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;border:1px solid var(--line)}.program-clocks div{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:5px;padding:5px 8px;text-align:right;border-right:1px solid var(--line);background:var(--paper)}.program-clocks div:last-child{border-right:0}.program-clocks span{color:var(--soft-ink);font:700 clamp(10px,1.7vw,18px)/1 var(--label)}.program-clocks strong{font:800 clamp(13px,2.5vw,27px)/1 var(--label)}.program-body{position:relative;min-height:0;display:grid;grid-template-columns:1fr;grid-template-rows:minmax(0,70%) minmax(0,30%);overflow:hidden;background:var(--line)}.program-body.map-only{grid-template-rows:1fr}.program-map-host{min-width:0;min-height:0;overflow:hidden;border-bottom:2px solid var(--ink);background:var(--paper)}.program-race-card{min-height:0;display:grid;align-content:start;overflow:hidden;padding:clamp(12px,2.3vw,25px) clamp(14px,2.7vw,29px);background:var(--white)}.race-card-kicker{color:var(--blue);font:800 clamp(12px,2.2vw,24px)/1 var(--label)}.program-race-title{min-width:0;display:flex;align-items:baseline;gap:clamp(8px,1.4vw,16px)}.program-race-card h1{margin:8px 0 5px;font:800 clamp(26px,5.2vw,56px)/.9 var(--heading)}.program-race-title h1{flex:0 1 auto}.program-race-title small{max-width:37ch;overflow:hidden;color:var(--soft-ink);font:750 clamp(9px,1.25vw,15px)/1.1 var(--label);letter-spacing:.025em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.program-race-card>p{margin:0 0 11px;color:var(--soft-ink);font:700 clamp(12px,2.2vw,24px)/1.2 var(--label)}.program-candidate{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:clamp(6px,1vw,11px) 0;border-top:1px solid var(--line)}.program-candidate-identity{min-width:0}.program-candidate span{font:800 clamp(18px,3.1vw,34px)/.92 var(--heading)}.program-candidate small{display:block;margin-top:4px;color:var(--soft-ink);font:700 clamp(10px,1.8vw,20px)/1 var(--label)}.program-candidate strong{font:800 clamp(20px,3.4vw,37px)/1 var(--label)}.candidate-link-program,.candidate-identity-static{width:fit-content;max-width:100%;color:var(--ink)}.candidate-link-program .candidate-link-label,.candidate-identity-static .candidate-link-label{font:800 clamp(18px,3.1vw,34px)/.92 var(--heading)}.candidate-identity-static{min-width:0;display:inline-flex;align-items:center;gap:9px}.candidate-portrait-program{width:clamp(42px,7.4vw,80px);height:clamp(42px,7.4vw,80px);flex-basis:clamp(42px,7.4vw,80px);border-width:2px}.candidate-portrait-program .candidate-initials{font-size:clamp(13px,2vw,22px)}.program-race-card.is-dense{padding-top:10px;padding-bottom:10px}.program-race-card.is-dense h1{margin-top:5px;font-size:clamp(23px,4.2vw,45px)}.program-race-card.is-dense>p{margin-bottom:5px}.program-race-card.is-dense .program-candidate{padding:4px 0}.program-race-card.is-dense .candidate-link-program .candidate-link-label,.program-race-card.is-dense .candidate-identity-static .candidate-link-label{font-size:clamp(16px,2.5vw,27px)}.program-race-card.is-dense .candidate-portrait-program{width:clamp(34px,5vw,54px);height:clamp(34px,5vw,54px);flex-basis:clamp(34px,5vw,54px)}.program-race-card.is-dense .program-candidate small{margin-top:2px;font-size:clamp(9px,1.45vw,16px)}.program-race-card.is-dense .program-candidate>strong{font-size:clamp(17px,2.6vw,28px)}.program-race-card.is-ultra-dense{padding-top:7px;padding-bottom:7px}.program-race-card.is-ultra-dense h1{margin:3px 0 2px;font-size:clamp(20px,3.3vw,36px)}.program-race-card.is-ultra-dense>p{margin-bottom:3px;font-size:clamp(10px,1.45vw,16px)}.program-race-card.is-ultra-dense .program-candidate{padding:2px 0;gap:5px}.program-race-card.is-ultra-dense .candidate-link-program,.program-race-card.is-ultra-dense .candidate-identity-static{gap:5px}.program-race-card.is-ultra-dense .candidate-link-program .candidate-link-label,.program-race-card.is-ultra-dense .candidate-identity-static .candidate-link-label{font-size:clamp(14px,2.1vw,23px)}.program-race-card.is-ultra-dense .candidate-portrait-program{width:clamp(28px,3.8vw,41px);height:clamp(28px,3.8vw,41px);flex-basis:clamp(28px,3.8vw,41px)}.program-race-card.is-ultra-dense .program-candidate small{margin-top:1px;font-size:clamp(8px,1.15vw,13px)}.program-race-card.is-ultra-dense .program-candidate>strong{font-size:clamp(15px,2.2vw,24px)}.program-race-card.is-ultra-dense .program-progress{height:6px;margin-top:5px}.program-race-card.is-ultra-dense .program-card-meta{margin-top:5px}.program-race-card.is-ultra-dense .program-card-meta div{padding:5px}.program-race-card.is-ultra-dense .program-card-meta span{font-size:clamp(8px,1vw,11px)}.program-race-card.is-ultra-dense .program-card-meta strong{margin-top:2px;font-size:clamp(12px,1.6vw,18px)}.program-progress{height:9px;margin-top:12px;background:var(--line)}.program-progress i{display:block;width:var(--progress, 0%);height:100%;background:var(--green)}.program-card-meta{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:10px;background:var(--line);border:1px solid var(--line)}.program-card-meta div{padding:8px;background:var(--paper)}.program-card-meta span{color:var(--soft-ink);font:700 clamp(9px,1.45vw,16px)/1 var(--label)}.program-card-meta strong{display:block;margin-top:4px;font:800 clamp(15px,2.6vw,28px)/1 var(--label)}@media(max-aspect-ratio:4 / 3){.program-race-card{padding:clamp(10px,1.55vw,17px) clamp(14px,2.7vw,29px)}.race-card-kicker{font-size:clamp(11px,1.75vw,19px)}.program-race-card h1{margin:5px 0 3px;font-size:clamp(24px,4.1vw,44px)}.program-race-card>p{margin-bottom:6px;font-size:clamp(11px,1.75vw,19px)}.program-candidate{padding:clamp(4px,.65vw,7px) 0}.candidate-link-program .candidate-link-label,.candidate-identity-static .candidate-link-label{font-size:clamp(17px,2.55vw,28px)}.candidate-portrait-program{width:clamp(38px,5.4vw,58px);height:clamp(38px,5.4vw,58px);flex-basis:clamp(38px,5.4vw,58px)}.program-candidate small{margin-top:2px;font-size:clamp(9px,1.45vw,16px)}.program-candidate strong{font-size:clamp(18px,2.6vw,28px)}.program-progress{height:7px;margin-top:6px}.program-card-meta{margin-top:6px}.program-card-meta div{padding:5px 7px}.program-card-meta span{font-size:clamp(8px,1.2vw,13px)}.program-card-meta strong{margin-top:2px;font-size:clamp(13px,2vw,22px)}}.program-stylus-tools{position:absolute;z-index:10;top:14px;left:14px;display:flex;flex-direction:column;gap:1px;padding:3px;background:var(--white);border:2px solid var(--ink);box-shadow:0 5px 18px #10203329}.program-stylus-tools[hidden]{display:none}body:not([data-lane=program]) .program-stylus-tools{display:none}.program-stylus-tools button{width:clamp(42px,7vw,76px);min-height:clamp(42px,6.3vw,68px);padding:2px;color:var(--ink);background:var(--white);border:0;border-bottom:1px solid var(--line);font:800 clamp(10px,1.6vw,17px)/1 var(--label)}.program-stylus-tools button:last-child{border-bottom:0}.program-stylus-tools button:hover{background:var(--paper)}.program-stylus-tools button.is-active{color:var(--white);background:var(--blue)}.program-footer{display:grid;grid-template-columns:minmax(0,1fr) clamp(150px,27vw,292px);align-items:stretch;overflow:hidden;border-top:2px solid var(--ink);background:var(--white)}.program-control-summary{min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}.control-summary-item{min-width:0;display:grid;align-content:center;gap:5px;padding:0 10px;border-right:1px solid var(--line)}.control-summary-item span,.program-source span{color:var(--soft-ink);font:700 clamp(10px,1.7vw,18px)/1 var(--label)}.control-summary-item strong,.program-source strong{font:800 clamp(17px,2.8vw,30px)/1 var(--label)}.program-source{min-width:0;display:grid;align-content:center;gap:5px;padding:0 14px;text-align:right;border-left:1px solid var(--line)}.program-source strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.candidate-app{min-height:100%;overflow:auto;background:var(--paper)}.candidate-profile-shell{min-height:100vh}.candidate-profile-topbar{min-height:120px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;padding:0 26px;background:var(--white);border-bottom:2px solid var(--ink)}.candidate-profile-topbar a{color:var(--blue);font:800 24px/1 var(--label);text-decoration:none}.candidate-profile-topbar a:hover,.candidate-profile-topbar a:focus-visible{color:var(--ink);text-decoration:underline;text-underline-offset:5px}.candidate-profile-topbar>strong{font:800 38px/.9 var(--heading);letter-spacing:.035em}.candidate-profile-topbar>span{justify-self:end;color:var(--soft-ink);font:700 22px/1 var(--label)}.candidate-profile-content{width:min(1620px,calc(100% - 44px));margin:0 auto;padding:clamp(24px,5vh,54px) 0}.candidate-profile-card{display:grid;grid-template-columns:minmax(360px,.72fr) minmax(620px,1.28fr);background:var(--white);border:1px solid var(--line-bright);box-shadow:0 22px 60px #1020331f}.candidate-profile-card[data-party=DEM]{box-shadow:inset 9px 0 0 var(--blue),0 22px 60px #1020331f}.candidate-profile-card[data-party=REP]{box-shadow:inset 9px 0 0 var(--rose),0 22px 60px #1020331f}.candidate-profile-portrait-block{min-width:0;padding:clamp(22px,3.2vw,52px);background:var(--paper);border-right:1px solid var(--line)}.candidate-profile-portrait{width:100%;height:auto;aspect-ratio:4 / 5;border-radius:0;border-color:var(--line-bright)}.candidate-profile-portrait .candidate-initials{font-size:clamp(42px,7vw,92px)}.candidate-profile-portrait-block>p{margin:14px 0;color:var(--soft-ink);font:600 19px/1.5 var(--label)}.candidate-talking-links{margin:18px 0;padding:14px;background:var(--white);border:2px solid var(--ink)}.candidate-talking-links>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}.candidate-talking-links>header h2{margin:0;font:800 23px/1 var(--heading);letter-spacing:.03em}.candidate-talking-links>header span{color:var(--soft-ink);font:800 12px/1 var(--label)}.candidate-talking-link-list{display:grid;gap:6px;margin:10px 0 0;padding:0;list-style:none}.candidate-talking-link-list li{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 46px;gap:5px}.candidate-talking-link-list a{min-width:0;min-height:62px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:center;gap:5px 8px;padding:8px 10px;color:var(--ink);background:var(--paper);border:1px solid var(--line-bright);text-decoration:none}.candidate-talking-link-list a:hover,.candidate-talking-link-list a:focus-visible{border-color:var(--blue)}.candidate-talking-link-list a strong{overflow:hidden;font:800 18px/1 var(--label);text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.candidate-talking-link-list a small{grid-column:1;overflow:hidden;color:var(--soft-ink);font:600 12px/1.15 var(--label);text-overflow:ellipsis;white-space:nowrap}.candidate-talking-link-list a span{grid-column:2;grid-row:1 / span 2;align-self:center;color:var(--blue);font:800 23px/1 var(--label)}.candidate-talking-link-list li>button{width:46px;color:var(--soft-ink);background:var(--white);border:1px solid var(--line-bright);font:500 25px/1 var(--body)}.candidate-talking-link-list li>button:hover,.candidate-talking-link-list li>button:focus-visible{color:var(--rose);border-color:var(--rose)}.candidate-talking-links-empty{min-height:46px;display:grid;align-items:center;margin:9px 0 0!important;padding:0 9px;color:var(--soft-ink);background:var(--paper);border:1px dashed var(--line-bright);font:800 13px/1 var(--label)!important}.candidate-talking-links form{display:grid;gap:7px;margin-top:10px}.candidate-talking-links form label{min-width:0;display:grid;gap:4px}.candidate-talking-links form label>span{color:var(--soft-ink);font:800 12px/1 var(--label)}.candidate-talking-links form input{width:100%;min-height:48px;padding:0 10px;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);font:700 16px/1 var(--label)}.candidate-talking-links form input:focus{outline:3px solid rgba(0,103,192,.18);border-color:var(--blue)}.candidate-talking-links form>button{min-height:48px;color:var(--white);background:var(--ink);border:1px solid var(--ink);font:800 15px/1 var(--label)}.candidate-talking-links form>button:hover,.candidate-talking-links form>button:focus-visible{background:var(--blue);border-color:var(--blue)}.candidate-talking-links-status{margin:0!important;padding:7px 8px;color:var(--rose)!important;background:#fff3f5;border:1px solid var(--rose);font:800 12px/1.2 var(--label)!important}.candidate-profile-main{min-width:0;padding:clamp(24px,4vw,60px)}.candidate-profile-kicker{color:var(--blue);font:800 23px/1 var(--label)}.candidate-profile-main h1{margin:16px 0 9px;font:800 clamp(56px,5.6vw,96px)/.85 var(--heading)}.candidate-profile-name-row{min-width:0;display:flex;align-items:flex-end;gap:14px}.candidate-profile-name-row h1{min-width:0;flex:0 1 auto}.candidate-profile-name-row .candidate-career-button{min-width:96px;min-height:54px;margin-bottom:9px;font-size:15px}.candidate-profile-party{display:inline-block;margin-bottom:28px;padding:7px 9px;color:var(--ink);background:var(--paper);border:1px solid var(--line-bright);font:800 22px/1 var(--label)}.candidate-profile-race{margin:0 0 30px;border:1px solid var(--line)}.candidate-profile-race>div{display:grid;grid-template-columns:220px 1fr;gap:14px;padding:12px 14px;border-bottom:1px solid var(--line)}.candidate-profile-race>div:last-child{border-bottom:0}.candidate-profile-race dt{color:var(--soft-ink);font:700 20px/1 var(--label)}.candidate-profile-race dd{margin:0;color:var(--ink);font:800 24px/1.2 var(--label)}.candidate-profile-race .district-area-label{display:inline-block;max-width:42ch;margin-left:12px;overflow:hidden;vertical-align:baseline;font-size:12px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.candidate-finance-profile{margin:0 0 30px;background:var(--white);border:2px solid var(--ink)}.candidate-finance-profile>header{display:grid;grid-template-columns:1fr auto;gap:7px 16px;padding:16px 18px;color:var(--white);background:var(--ink)}.candidate-finance-profile>header span{grid-column:1;color:var(--gold);font:800 16px/1 var(--label);letter-spacing:.04em}.candidate-finance-profile>header h2{grid-column:1;margin:0;font:800 34px/.9 var(--heading)}.candidate-finance-profile>header>strong{grid-column:2;grid-row:1 / span 2;align-self:center;font:800 44px/.9 var(--heading)}.candidate-finance-profile>header>small{grid-column:1 / -1;color:#ffffffc2;font:700 14px/1.2 var(--label)}.candidate-finance-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border-bottom:1px solid var(--line)}.candidate-finance-metric{min-width:0;min-height:104px;display:grid;align-content:center;gap:6px;padding:13px 15px;background:var(--paper)}.candidate-finance-metric>span{color:var(--soft-ink);font:800 15px/1 var(--label)}.candidate-finance-metric>strong{overflow:hidden;font:800 30px/1 var(--heading);text-overflow:ellipsis;white-space:nowrap}.candidate-finance-metric>small{color:var(--soft-ink);font:700 12px/1.25 var(--label)}.candidate-finance-committees{padding:15px 18px;border-bottom:1px solid var(--line)}.candidate-finance-committees h3{margin:0 0 9px;color:var(--soft-ink);font:800 16px/1 var(--label)}.candidate-finance-committees>div{display:grid;gap:6px}.candidate-finance-committees span{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding-bottom:6px;border-bottom:1px solid var(--line)}.candidate-finance-committees span:last-child{padding-bottom:0;border-bottom:0}.candidate-finance-committees strong{font:800 17px/1.15 var(--label)}.candidate-finance-committees em{flex:0 0 auto;color:var(--blue);font:800 18px/1 var(--label);font-style:normal}.candidate-finance-caveat{margin:0;padding:14px 18px;color:var(--soft-ink);background:var(--paper);border-bottom:1px solid var(--line);font:600 16px/1.45 var(--body)}.candidate-finance-source-links{padding:9px 12px 12px}.candidate-finance-source-links .candidate-resource-link{min-height:60px}.candidate-finance-source-links .candidate-resource-link span{font-size:19px}.candidate-finance-source-links .candidate-resource-link small{font-size:14px}.candidate-finance-unavailable{padding:20px 18px;background:var(--paper)}.candidate-finance-unavailable strong{display:block;margin-bottom:7px;color:var(--rose);font:800 24px/1 var(--label)}.candidate-finance-unavailable p{margin:0;color:var(--soft-ink);font:600 18px/1.4 var(--body)}.candidate-finance-profile.is-incomplete{border-style:dashed}.candidate-finance-profile.is-unavailable>header{grid-template-columns:1fr}.candidate-finance-profile.is-unavailable>header h2{grid-column:1}.candidate-profile-resources{margin-top:24px}.candidate-profile-resources h2{margin:0 0 8px;color:var(--soft-ink);font:800 22px/1 var(--label)}.candidate-resource-link{min-height:78px;display:grid;grid-template-columns:1fr auto;align-content:center;gap:5px 10px;margin-top:6px;padding:10px 13px;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);text-decoration:none}.candidate-resource-link:hover,.candidate-resource-link:focus-visible{background:var(--paper);border-color:var(--blue)}.candidate-resource-link span{font:800 25px/1 var(--label);text-transform:uppercase}.candidate-resource-link small{color:var(--soft-ink);font:600 18px/1.2 var(--label)}.candidate-resource-link strong{grid-column:2;grid-row:1 / span 2;align-self:center;color:var(--blue);font:800 34px/1 var(--label)}.candidate-resource-link.is-youtube{border-left:8px solid #d50000}.candidate-resource-link.is-youtube strong{color:#d50000}.candidate-resource-missing{min-height:68px;display:grid;align-items:center;margin-top:6px;padding:0 13px;color:var(--soft-ink);background:var(--paper);border:1px dashed var(--line-bright);font:700 20px/1 var(--label)}.candidate-profile-loading,.candidate-profile-error{min-height:500px;display:grid;place-content:center;gap:16px;text-align:center;color:var(--soft-ink);background:var(--white);border:1px solid var(--line);font:800 25px/1 var(--label)}.candidate-profile-error span{color:var(--rose)}.candidate-profile-error h1{margin:0;color:var(--ink);font:800 64px/.9 var(--heading)}.candidate-profile-error p{max-width:760px;margin:0;font:500 28px/1.45 var(--body)}.candidate-profile-error a{color:var(--blue)}.input-test-app{width:100vw;height:100vh;overflow:hidden;background:var(--white);touch-action:none}.input-test-shell{width:100vw;height:100vh;display:grid;grid-template-rows:170px 300px minmax(0,1fr) 106px;background:var(--line)}.input-test-shell>header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 24px;background:var(--white);border-bottom:2px solid var(--ink)}.brand-lockup{display:flex;align-items:center;gap:16px}.brand-lockup>div{display:grid;gap:6px}.brand-mark{width:94px;height:94px;display:grid;place-items:center;color:var(--white);background:var(--ink);font:800 50px/1 var(--heading)}.brand-lockup strong{font:800 52px/.85 var(--heading)}.brand-lockup small{color:var(--soft-ink);font:700 22px/1 var(--label)}#input-clear{min-width:170px;min-height:84px;color:var(--ink);background:var(--paper);border:2px solid var(--ink);font:800 26px/1 var(--label)}.input-readout{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr);gap:1px;background:var(--line)}.input-readout>div{min-width:0;display:grid;align-content:center;gap:8px;padding:0 20px;background:var(--white)}.input-readout span{color:var(--soft-ink);font:700 22px/1 var(--label)}.input-readout strong{overflow:hidden;font:800 40px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}#input-canvas{width:100%;height:100%;display:block;background:var(--white);touch-action:none}.input-test-shell>footer{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-top:2px solid var(--ink)}.input-test-shell>footer span{display:grid;place-items:center;color:var(--soft-ink);background:var(--white);font:800 22px/1 var(--label)}@media(min-aspect-ratio:4 / 3){.program-shell{grid-template-rows:clamp(80px,11vh,122px) minmax(0,1fr) clamp(70px,9vh,100px)}.program-header{grid-template-columns:1fr 1.25fr 1.55fr;grid-template-areas:"brand title clocks";padding:7px 16px}.program-title{text-align:center}.program-clocks{border:0}.program-clocks div{grid-template-columns:1fr;gap:3px;padding:4px 7px}.program-body{grid-template-columns:minmax(0,2fr) minmax(310px,1fr);grid-template-rows:1fr}.program-body.map-only{grid-template-columns:1fr}.program-map-host{border-right:2px solid var(--ink);border-bottom:0}.program-race-card{padding:14px 16px}}@media(max-width:1500px){.seat-score-details{grid-template-columns:minmax(500px,1fr) auto}.seat-score-dots{grid-template-columns:repeat(var(--seat-columns),9px);grid-auto-rows:9px;gap:2px}.seat-dot{width:9px;height:9px}.analyst-outlook{grid-template-columns:minmax(280px,1.15fr) minmax(220px,.85fr)}.analyst-outlook-lead{grid-column:1 / -1;grid-row:1;grid-template-columns:minmax(190px,.72fr) minmax(0,1.28fr);grid-template-rows:auto auto;column-gap:10px}.analyst-outlook-lead>span{grid-column:1;grid-row:1}.analyst-outlook-lead>strong{grid-column:1;grid-row:2}.analyst-outlook-lead>p{grid-column:2;grid-row:1 / span 2;align-self:center}.analyst-outlook-metrics{grid-column:1;grid-row:2}.analyst-outlook-watch{grid-column:2;grid-row:2}.analyst-outlook-sources{grid-column:1 / -1;grid-row:3}#workspace[data-module=house] .seat-score-dots{--seat-columns: 29}#workspace[data-module=senate] .seat-score-dots{--seat-columns: 20}}@media(max-width:1200px){.control-shell{grid-template-rows:96px 68px minmax(0,1fr) 58px}.topbar{grid-template-columns:1fr 1.35fr}.title-block strong{font-size:34px}.title-block span{font-size:17px}.polls-clock #polls-clock-label{font-size:10px}.polls-clock #polls-clock-value{font-size:18px}.zone-clocks strong{font-size:24px}.zone-clocks span{font-size:17px}.module-tabs button{font-size:12px}.workspace{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:minmax(330px,44%) 68px minmax(0,1fr)}.state-drawer{width:248px}.map-workspace{grid-template-columns:72px minmax(0,1fr) 86px}.whiteboard-tools button,.map-controls button{font-size:16px}.map-header span,.panel-header span{font-size:17px}.map-header strong,.panel-header>div:first-child strong{font-size:31px}.map-legend{display:none}#workspace[data-module=playmap] .map-header{padding:0 10px;gap:7px}#workspace[data-module=playmap] .map-header>div:first-child{max-width:230px}#workspace[data-module=playmap] .map-header-actions{gap:5px}#workspace[data-module=playmap] .map-result-control button,#workspace[data-module=playmap] .map-size-control button,#workspace[data-module=playmap] .playmap-display-control button{min-width:44px;padding:0 4px}#workspace[data-module=playmap] .playmap-display-control button[data-playmap-display]{min-width:64px}#workspace[data-module=playmap] .map-result-control button[data-main-map-result=governor]{min-width:62px}.panel-actions>button{min-width:128px;font-size:15px}.search-field{min-width:210px}.state-card strong{font-size:21px}.race-directory-row{grid-template-columns:minmax(0,1fr) 122px minmax(180px,210px)}.seat-score-details{grid-template-columns:minmax(400px,1fr) auto}.analyst-outlook{grid-template-columns:minmax(220px,1.15fr) minmax(180px,.85fr)}#workspace[data-module=house] .seat-score-dots{--seat-columns: 22}#workspace[data-module=senate] .seat-score-dots{--seat-columns: 17}.history-race-row{grid-template-columns:84px minmax(160px,1.15fr) minmax(160px,1.15fr) 112px 112px}.module-tabs [data-module=elon],.module-tabs [data-module=aipac],.module-tabs [data-module=trump],.module-tabs [data-module=president]{font-size:13px}.president-scoreboard{grid-template-columns:120px repeat(3,minmax(160px,1fr)) 105px}.president-state-grid,.elon-primary-grid,.elon-factor-grid{grid-template-columns:1fr}.elon-factor-summary,.trump-factor-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.public-mood-headlines{grid-template-columns:repeat(2,minmax(0,1fr))}.trump-record-grid,.trump-record-method{grid-template-columns:1fr}.trump-record-method nav{justify-content:flex-start}.aipac-factor-grid{grid-template-columns:1fr}.aipac-factor-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){html,body{overflow:auto}.control-shell{height:auto;min-height:100vh;grid-template-rows:92px 72px auto 62px;overflow:visible}#workspace[data-module=playmap] .map-header>div:first-child{display:none}#workspace[data-module=playmap] .map-header-actions{width:100%;justify-content:center;gap:3px}#workspace[data-module=playmap] .map-header-actions>div>span{display:none}#workspace[data-module=playmap] .map-result-control button,#workspace[data-module=playmap] .map-size-control button,#workspace[data-module=playmap] .playmap-display-control button{min-width:0;padding:0 6px;font-size:8px}#workspace[data-module=playmap] .map-result-control button[data-main-map-result=governor]{min-width:0}#workspace[data-module=playmap] .playmap-display-control button[data-playmap-display]{min-width:58px}#workspace[data-module=early] .map-panel{grid-template-rows:124px minmax(0,1fr)}#workspace[data-module=early] .map-header{display:grid;grid-template-rows:77px 46px;align-items:stretch;padding:0 8px}#workspace[data-module=early] .map-header>div:first-child{align-content:center}#workspace[data-module=early] .map-header strong{font-size:29px}#workspace[data-module=early] .map-header-actions{width:100%;justify-content:stretch;gap:3px}#workspace[data-module=early] .map-header-actions>div{flex:1 1 0}#workspace[data-module=early] .map-header-actions>div>span{display:none}#workspace[data-module=early] .early-vote-display-control button,#workspace[data-module=early] .map-size-control button{min-width:0;padding:0 5px;font-size:8px}.playmap-watch-grid,.playmap-difference-grid,.playmap-breakdown-grid,.playmap-movement-strip{grid-template-columns:minmax(0,1fr)}.playmap-compare-result{min-height:86px}.playmap-difference-card{grid-template-columns:minmax(135px,.6fr) minmax(0,1.4fr)}.playmap-state-map-panel{grid-template-rows:66px minmax(300px,62vw) auto}.playmap-state-map-panel[data-map-size=compact]{grid-template-rows:66px minmax(240px,44vw) auto}.playmap-state-map-panel[data-map-size=large]{grid-template-rows:66px minmax(420px,80vw) auto}.playmap-state-map-header-actions{align-items:flex-end;flex-direction:column-reverse;gap:4px}.playmap-state-map-size button{min-width:48px}.playmap-state-map-panel>footer{grid-template-columns:minmax(0,1fr)}.playmap-statewide-context{grid-template-columns:minmax(0,1fr)}.playmap-state-map-panel>footer>small{grid-column:1}.topbar{grid-template-columns:1fr}.title-block{display:none}.workspace{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:520px 100px minmax(780px,auto);grid-template-areas:"map drawer" "dataset drawer" "data drawer";overflow:visible}.map-score-overlay{top:8px;right:8px;left:8px}.map-score-card{min-height:72px;padding:6px 8px}.map-score-values strong{font-size:clamp(26px,6vw,40px)}.workspace[data-module=map][data-map-size=compact]{grid-template-rows:390px 100px minmax(780px,auto)}.workspace[data-module=map][data-map-size=micro]{grid-template-rows:195px 100px minmax(780px,auto)}.workspace[data-module=map][data-map-size=large]{grid-template-rows:650px 100px minmax(780px,auto)}#workspace[data-module=playmap][data-map-size=compact]{grid-template-rows:390px minmax(780px,auto)}#workspace[data-module=playmap][data-map-size=micro]{grid-template-rows:195px minmax(780px,auto)}#workspace[data-module=playmap][data-map-size=large]{grid-template-rows:650px minmax(780px,auto)}.workspace.is-map-drawer-collapsed{grid-template-rows:78px 100px minmax(780px,auto)}.state-drawer{width:238px}.state-drawer:not(.is-open){width:50px}.data-panel{min-height:780px}.panel-header{align-items:stretch;flex-direction:column;padding:10px 12px}.data-panel>.panel-header{flex-basis:142px}.panel-actions{height:58px}.search-field{width:100%}.seat-score-header{align-items:stretch;flex-direction:column;padding:5px 0}.seat-score-header-actions{align-items:flex-start;justify-content:space-between}.seat-score-summary{justify-content:flex-start}.seat-score-details{grid-template-columns:1fr;grid-template-rows:auto auto}.analyst-outlook,.seat-score-dots{grid-column:1}.analyst-outlook{grid-row:1}.seat-score-dots{grid-row:2;width:100%}.analyst-outlook{grid-template-columns:1fr}.analyst-outlook-lead{grid-column:auto;grid-row:auto;grid-template-columns:1fr;grid-template-rows:auto}.analyst-outlook-lead>span,.analyst-outlook-lead>strong,.analyst-outlook-lead>p,.analyst-outlook-metrics,.analyst-outlook-watch,.analyst-outlook-sources{grid-column:auto;grid-row:auto}.race-directory-row{grid-template-columns:minmax(0,1fr)}.race-flag-filter{position:static}.race-flag-filter-button{flex:1 1 calc(50% - 6px);justify-content:space-between}.race-directory-heading{align-items:flex-start;flex-direction:column}.open-seat-reason{grid-template-columns:1fr auto}.open-seat-reason>p{grid-column:1 / -1;grid-row:2}.open-seat-reason>a{grid-column:2;grid-row:1}.race-directory-polling{grid-template-columns:1fr}.race-directory-polling>small{grid-column:auto;white-space:normal}.race-directory-result{grid-column:1 / -1;text-align:left}.race-directory-pick-column{grid-column:1 / -1}.modal-personal-vote{grid-template-columns:1fr;grid-template-rows:15px minmax(0,1fr) auto}.modal-personal-vote .analyst-shorthand{grid-column:auto}#history-view.is-active{grid-template-rows:auto auto 82px minmax(0,1fr) auto}.history-toolbar{align-items:stretch;flex-direction:column}.history-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.history-summary article{min-height:88px}.history-race-row{grid-template-columns:82px minmax(0,1fr)}.history-race-margin,.history-race-turnout{grid-column:auto}.history-source-note{min-height:48px;flex-wrap:wrap;white-space:normal}.elon-factor-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.elon-evidence{grid-template-columns:1fr}.elon-source-links{justify-content:flex-start}.trump-factor-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.public-mood-grid,.trump-record-identity,.trump-record-votes{grid-template-columns:1fr}.trump-record-filters{flex-wrap:wrap}.trump-record-filters button{min-height:48px;flex-basis:calc(50% - 1px)}.aipac-factor-summary{grid-template-columns:repeat(2,minmax(0,1fr))}#workspace[data-module=president]{grid-template-rows:520px minmax(900px,auto)}.president-scoreboard{position:static;grid-template-columns:1fr}.president-threshold,.president-unassigned{min-height:72px}.president-progress{position:static;top:auto}.president-state-header{align-items:flex-start;flex-direction:column}.president-state-header>div:last-child{text-align:left}.president-split-row{grid-template-columns:1fr}.aipac-factor-filters{flex-wrap:wrap}.aipac-factor-filters button{min-height:48px;flex-basis:calc(50% - 1px)}.aipac-card-identity,.aipac-cycle-position{grid-template-columns:1fr}.aipac-cycle-position nav{justify-content:flex-start}.aipac-card-actions{grid-template-columns:repeat(2,1fr)}.aipac-career-ledger>header{align-items:flex-start;flex-direction:column}.aipac-career-ledger>header small{max-width:none;text-align:left}.aipac-career-totals{grid-template-columns:1fr}.aipac-career-cycle{grid-template-columns:52px 1fr}.aipac-career-cycle span{grid-column:2}.aipac-activity{grid-template-columns:1fr}.aipac-finance{grid-template-columns:repeat(2,minmax(0,1fr))}.candidate-profile-topbar{grid-template-columns:1fr;gap:7px;padding:16px 18px}.candidate-profile-topbar>strong{grid-row:1}.candidate-profile-topbar>span{justify-self:start}.candidate-profile-card{grid-template-columns:1fr}.candidate-dialog{width:96vw;height:90dvh}.external-link-dialog{width:98vw;height:94dvh}.external-link-viewer{grid-template-rows:92px minmax(0,1fr) 64px}.external-link-viewer>header{padding-left:14px}.external-link-viewer>header strong{font-size:24px}.external-link-viewer>header small{display:none}.external-link-viewer>header a{padding:0 10px;font-size:13px}.race-history-dialog{width:96vw;height:90dvh}.state-dialog-identity .state-flag{width:82px;height:54px}.race-history-identity .state-flag{width:76px;height:50px}.race-history-header h2,.race-history-unavailable h2{font-size:31px}.race-history-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.race-history-profile{grid-template-rows:102px 126px minmax(0,1fr) auto}.candidate-career-profile{grid-template-rows:108px 126px minmax(0,1fr) auto}.candidate-career-header{padding-left:16px}.candidate-career-header h2{font-size:31px}.candidate-career-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.candidate-fight-card>header{align-items:flex-start;flex-direction:column}.candidate-fight-card>header small{max-width:none;text-align:left}.candidate-fight-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.candidate-fight-grid{grid-template-columns:1fr}.candidate-modal-profile{grid-template-rows:92px minmax(0,1fr)}.candidate-modal-header{padding-left:16px}.candidate-modal-identity .state-flag{width:68px;height:44px}.candidate-modal-header strong{font-size:28px}.candidate-modal-header a{display:none}.candidate-modal-layout{grid-template-columns:1fr}.candidate-profile-portrait-block{border-right:0;border-bottom:1px solid var(--line)}.candidate-profile-portrait{max-height:62vh}.candidate-profile-content{width:min(100% - 22px,720px);padding:16px 0}.desk-footer{grid-template-columns:repeat(4,minmax(0,1fr))}.desk-footer #status-line{display:none}.desk-footer button{font-size:14px}.desk-footer #reset-my-picks{font-size:12px}.ipad-access-dialog{padding:24px}.ipad-access-layout{grid-template-columns:1fr}.ipad-access-layout img{width:min(100%,360px);justify-self:center}}.module-tabs button[hidden]{display:none!important}body[data-desk-role=audience] .module-tabs{grid-template-columns:repeat(14,minmax(92px,1fr));overflow-x:auto}body[data-desk-role=producer] .module-tabs{grid-template-columns:repeat(8,minmax(92px,1fr));overflow-x:auto}body[data-desk-role=producer] .whiteboard-tools{display:none}body[data-desk-role=producer] .map-workspace{grid-template-columns:minmax(0,1fr) 104px}body[data-desk-role=audience] .whiteboard-tools>button[data-tool]{min-height:44px;font-size:14px}body[data-desk-role=audience] .whiteboard-tools .ink-color-controls button{min-height:31px;font-size:10px}body[data-desk-role=audience] .whiteboard-tools .whiteboard-command-controls button{min-height:38px;font-size:11px}.control-shell{grid-template-rows:104px 52px 70px minmax(0,1fr) 62px}.major-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:var(--ink);border-bottom:1px solid var(--ink)}.major-tabs button{min-width:0;padding:0 18px;color:#c8d0d7;background:var(--ink);border:0;border-right:1px solid #3d4b59;font:900 17px/1 var(--label);letter-spacing:.065em}.major-tabs button:last-child{border-right:0}.major-tabs button:hover,.major-tabs button:focus-visible{color:var(--white);background:#24384c}.major-tabs button.is-active{color:var(--ink);background:var(--white);box-shadow:inset 0 -6px 0 var(--blue)}.module-tabs{grid-template-columns:repeat(var(--module-count, 1),minmax(104px,1fr));overflow-x:auto}body[data-desk-role=audience] .module-tabs,body[data-desk-role=producer] .module-tabs{grid-template-columns:repeat(var(--module-count, 1),minmax(104px,1fr))}#workspace[data-module=government],#workspace[data-module=election2028]{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(410px,52%) minmax(0,1fr);grid-template-areas:"map" "data"}#workspace[data-module=government][data-map-size=compact],#workspace[data-module=election2028][data-map-size=compact]{grid-template-rows:minmax(300px,38%) minmax(0,1fr)}#workspace[data-module=government][data-map-size=micro],#workspace[data-module=election2028][data-map-size=micro]{grid-template-rows:minmax(150px,19%) minmax(0,1fr)}#workspace[data-module=government][data-map-size=large],#workspace[data-module=election2028][data-map-size=large]{grid-template-rows:minmax(520px,66%) minmax(0,1fr)}#workspace[data-module=government].is-map-drawer-collapsed,#workspace[data-module=election2028].is-map-drawer-collapsed{grid-template-rows:78px minmax(0,1fr)}#workspace[data-module=government] .dataset-strip,#workspace[data-module=government] .state-drawer,#workspace[data-module=government] .seat-score-view,#workspace[data-module=election2028] .dataset-strip,#workspace[data-module=election2028] .state-drawer,#workspace[data-module=election2028] .seat-score-view{display:none}#workspace[data-module=government] .data-panel,#workspace[data-module=election2028] .data-panel{overflow:hidden}#government-view.is-active,#election-2028-view.is-active{overflow:auto;background:var(--paper)}#workspace[data-module=primaries]{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);grid-template-areas:"data"}#workspace[data-module=primaries] .map-panel,#workspace[data-module=primaries] .dataset-strip,#workspace[data-module=primaries] .state-drawer,#workspace[data-module=primaries] .seat-score-view{display:none}#workspace[data-module=primaries] .data-panel{overflow:hidden}#primaries-view.is-active{overflow:auto;background:var(--paper)}.primaries-shell{min-height:100%;display:flex;flex-direction:column;gap:1px;background:var(--line)}.primaries-hero{display:grid;grid-template-columns:minmax(420px,1.1fr) minmax(580px,1fr);gap:1px;background:var(--line);border-bottom:4px solid var(--ink)}.primaries-hero>div:first-child{min-height:136px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:center;gap:7px;padding:18px 22px;background:var(--white)}.primaries-hero>div:first-child>span,.primaries-hero>div:first-child>h2{grid-column:1}.primaries-hero>div:first-child>.context-tip{grid-column:2;grid-row:1 / span 2;align-self:center}.primaries-hero span,.primary-presidential>header span,.primary-source-ledger>span{color:var(--soft-ink);font:900 11px/1 var(--label);letter-spacing:.07em}.primaries-hero h2{margin:0;font:900 38px/.9 var(--heading);letter-spacing:.04em}.primaries-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line)}.primaries-summary article{min-width:0;display:grid;align-content:center;gap:6px;padding:14px 16px;background:var(--white)}.primaries-summary span,.primaries-summary small{color:var(--soft-ink);font:900 10px/1.15 var(--label);letter-spacing:.05em}.primaries-summary strong{font:900 34px/.9 var(--heading)}.primary-calendar-warning{min-height:58px;display:grid;grid-template-columns:180px minmax(0,1fr) auto;align-items:center;gap:16px;padding:10px 18px;color:var(--ink);background:#fff5d7;border-bottom:1px solid var(--gold)}.primary-calendar-warning strong{font:900 13px/1 var(--label)}.primary-calendar-warning span{font:800 12px/1.3 var(--label)}.primary-presidential{display:grid;gap:1px;background:var(--line);border-bottom:4px solid var(--ink)}.primary-presidential>header{min-height:64px;display:flex;align-items:center;justify-content:space-between;padding:10px 18px;background:var(--ink);color:var(--white)}.primary-presidential>header>div{display:grid;gap:5px}.primary-presidential>header span{color:#c8d0d7}.primary-presidential>header strong{font:900 25px/.9 var(--heading)}.primary-presidential>header>button{min-height:40px;padding:0 14px;color:var(--ink);background:var(--white);border:1px solid var(--white);font:900 11px/1 var(--label)}.primary-presidential>header>button:hover,.primary-presidential>header>button:focus-visible{color:var(--white);background:var(--blue);border-color:var(--blue)}.primary-presidential>.primary-race>header{display:none}.primary-filters{position:sticky;top:0;z-index:5;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;min-height:52px;background:var(--line);border-bottom:3px solid var(--ink)}.primary-filters button{color:var(--soft-ink);background:var(--white);border:0;font:900 12px/1 var(--label)}.primary-filters button.is-active{color:var(--white);background:var(--ink);box-shadow:inset 0 -5px 0 var(--blue)}.primary-state-list{display:grid;gap:1px;background:var(--line)}.primary-state{background:var(--white)}.primary-state>summary{min-height:62px;display:grid;grid-template-columns:minmax(200px,1fr) 130px 160px minmax(240px,.8fr) 32px;align-items:center;gap:12px;padding:9px 14px 9px 18px;cursor:pointer;list-style:none;border-left:7px solid var(--line-bright)}.primary-state>summary::-webkit-details-marker{display:none}.primary-state>summary:after{content:"+";color:var(--soft-ink);font:900 24px/1 var(--label);text-align:center}.primary-state[open]>summary{border-left-color:var(--blue);border-bottom:1px solid var(--line)}.primary-state[open]>summary:after{content:"−"}.primary-state>summary strong{font:900 19px/1 var(--label)}.primary-state>summary span,.primary-state>summary b,.primary-state>summary em{color:var(--soft-ink);font:normal 900 10px/1.15 var(--label);letter-spacing:.035em}.primary-state>summary b{color:var(--blue)}.primary-state>summary em{text-align:right}.primary-state>div{display:grid;gap:1px;background:var(--line)}.primary-race{min-width:0;display:grid;background:var(--white)}.primary-race>header{min-height:78px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:10px 15px 10px 18px;background:var(--paper);border-bottom:1px solid var(--line-bright)}.primary-race>header>div{min-width:0;display:grid;gap:5px}.primary-race>header>div:last-child{grid-template-columns:minmax(220px,auto) 126px;align-items:center;gap:8px}.primary-race>header span,.primary-race>header small,.primary-race>header b{color:var(--soft-ink);font:900 10px/1.1 var(--label);letter-spacing:.04em}.primary-race>header strong{font:900 17px/1 var(--label)}.primary-race>header b{text-align:right}.primary-race button[data-primary-add],.primary-candidate>button{min-height:38px;padding:0 10px;color:var(--white);background:var(--ink);border:0;font:900 10px/1 var(--label)}.primary-race button[data-primary-add]:hover,.primary-race button[data-primary-add]:focus-visible,.primary-candidate>button:hover,.primary-candidate>button:focus-visible{background:var(--blue)}.primary-party-lanes{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line)}.primary-party-lane{min-width:0;display:grid;align-content:start;gap:1px;background:var(--paper)}.primary-party-lane>header{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 11px;background:var(--white);box-shadow:inset 5px 0 0 var(--purple)}.primary-party-lane.is-dem>header{box-shadow:inset 5px 0 0 var(--blue)}.primary-party-lane.is-rep>header{box-shadow:inset 5px 0 0 var(--rose)}.primary-party-lane>header strong,.primary-party-lane>header span{color:var(--soft-ink);font:900 10px/1 var(--label)}.primary-party-lane>p{margin:0;padding:16px 12px;color:var(--soft-ink);font:800 10px/1 var(--label)}.primary-candidate{position:relative;min-width:0;min-height:88px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 10px;padding:10px 64px 10px 13px;background:var(--white);border-left:5px solid var(--purple)}.primary-candidate.is-dem{border-left-color:var(--blue)}.primary-candidate.is-rep{border-left-color:var(--rose)}.primary-candidate>div{min-width:0;display:grid;gap:4px}.primary-candidate>div:nth-child(2){justify-items:end;text-align:right}.primary-candidate strong{overflow:hidden;font:900 15px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.primary-candidate span,.primary-candidate b,.primary-candidate a{color:var(--soft-ink);font:900 9px/1.15 var(--label);text-decoration:none}.primary-candidate a{color:var(--blue);text-decoration:underline}.primary-candidate p{grid-column:1 / -1;margin:0;color:var(--soft-ink);font:700 11px/1.3 var(--body)}.primary-candidate>button{position:absolute;top:0;right:0;bottom:0;width:54px}.primary-empty{padding:54px 20px;color:var(--soft-ink);background:var(--white);font:900 15px/1 var(--label);text-align:center}.primary-source-ledger{display:grid;grid-template-columns:180px repeat(4,minmax(0,1fr));gap:1px;min-height:58px;background:var(--line);border-top:4px solid var(--ink)}.primary-source-ledger>span,.primary-source-ledger>a{min-width:0;display:flex;align-items:center;padding:10px 12px;background:var(--white)}.primary-source-ledger>a{color:var(--blue);font:900 10px/1.2 var(--label);text-decoration:none}.primary-source-ledger>a:hover,.primary-source-ledger>a:focus-visible{color:var(--white);background:var(--blue)}.primary-candidate-dialog{width:min(920px,94vw);height:min(80vh,900px);max-width:none;max-height:none;padding:0;overflow:auto;color:var(--ink);background:var(--white);border:4px solid var(--ink)}.primary-candidate-dialog::backdrop{background:#102033b8}.primary-editor-shell{min-height:100%;display:grid;gap:1px;background:var(--line)}.primary-editor{min-height:100%;display:grid;grid-template-rows:auto auto auto auto minmax(150px,1fr) auto;gap:1px;background:var(--line)}.primary-editor>header{min-height:110px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 20px;color:var(--white);background:var(--ink)}.primary-editor>header>div{display:grid;gap:6px}.primary-editor>header span{margin:0;color:#c8d0d7;font:900 10px/1.1 var(--label);letter-spacing:.05em}.primary-editor>header h2{margin:0;font:900 32px/.9 var(--heading)}.primary-editor>header button{width:52px;height:52px;color:var(--white);background:transparent;border:1px solid #5d6c79;font:900 27px/1 var(--label)}.primary-editor>label,.primary-editor-grid>label{min-width:0;display:grid;gap:7px;padding:12px 16px;background:var(--white)}.primary-editor label>span{color:var(--soft-ink);font:900 10px/1 var(--label);letter-spacing:.05em}.primary-editor-field-label{display:flex;align-items:center;gap:7px}.primary-editor input,.primary-editor select,.primary-editor textarea{width:100%;min-width:0;padding:9px 10px;color:var(--ink);background:var(--paper);border:1px solid var(--line-bright);font:800 15px/1.2 var(--body)}.primary-editor input,.primary-editor select{min-height:44px}.primary-editor textarea{height:100%;resize:none}.primary-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px}.primary-editor>footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;background:var(--white)}.primary-editor>footer button{min-height:44px;padding:0 16px;color:var(--ink);background:var(--paper);border:1px solid var(--ink);font:900 11px/1 var(--label)}.primary-editor>footer button[type=submit]{color:var(--white);background:var(--blue);border-color:var(--blue)}.primary-editor>footer button[data-primary-delete]{margin-right:auto;color:var(--white);background:var(--rose);border-color:var(--rose)}.political-management-shell,.cycle-2028-shell{min-height:100%;display:flex;flex-direction:column;gap:1px;background:var(--line)}.main-season-hero,.cycle-2028-hero{display:grid;grid-template-columns:minmax(360px,.95fr) minmax(620px,1.35fr);gap:1px;background:var(--line);border-bottom:4px solid var(--ink)}.main-season-hero>div:first-child,.cycle-2028-hero>div:first-child{display:grid;align-content:center;gap:7px;min-height:132px;padding:18px 22px;background:var(--white)}.main-season-hero span,.cycle-2028-hero span,.political-leadership header span,.political-source-ledger>span,.cycle-2028-sources>span{color:var(--soft-ink);font:900 11px/1 var(--label);letter-spacing:.07em}.main-season-hero h2,.cycle-2028-hero h2{margin:0;font:900 36px/.92 var(--heading);letter-spacing:.035em}.main-season-hero>div:first-child,.cycle-2028-hero>div:first-child{grid-template-columns:minmax(0,1fr) auto}.main-season-hero>div:first-child>span,.main-season-hero>div:first-child>h2,.cycle-2028-hero>div:first-child>span,.cycle-2028-hero>div:first-child>h2{grid-column:1}.main-season-hero>div:first-child>.context-tip,.cycle-2028-hero>div:first-child>.context-tip{grid-column:2;grid-row:1 / span 2;align-self:center}.context-tip{position:relative;width:26px;height:26px;display:inline-grid;place-items:center;padding:0;color:var(--ink);background:var(--white);border:2px solid var(--ink);border-radius:50%;font:900 12px/1 var(--label);cursor:help}.context-tip>i{font:normal 900 12px/1 var(--label)}.context-tip.is-compact{width:19px;height:19px;border-width:1px}.context-tip.is-compact>i{font-size:9px}.context-tip>span{position:absolute;z-index:30;top:calc(100% + 8px);right:0;width:min(380px,74vw);display:none;padding:12px 14px;color:var(--white);background:var(--ink);border:1px solid var(--white);box-shadow:0 10px 30px #10203347;font:900 11px/1.35 var(--label);text-align:left}.context-tip:hover>span,.context-tip:focus>span,.context-tip:focus-within>span{display:block}.main-season-hero p,.cycle-2028-hero p{max-width:76ch;margin:0;color:var(--soft-ink);font:700 14px/1.3 var(--body)}.government-control-totals,.cycle-2028-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line)}.government-control-totals article,.cycle-2028-summary article{min-width:0;display:grid;align-content:center;gap:8px;padding:14px 16px;background:var(--white)}.government-control-totals article>span,.cycle-2028-summary article>span{color:var(--soft-ink);font:900 11px/1 var(--label);letter-spacing:.06em}.government-control-totals strong,.cycle-2028-summary strong{display:flex;flex-wrap:wrap;gap:7px 14px}.government-control-totals i,.cycle-2028-summary i{color:var(--ink);font:normal 900 25px/1 var(--label)}.government-control-totals i:first-child,.cycle-2028-summary i:first-child{color:var(--blue)}.government-control-totals i:nth-child(2),.cycle-2028-summary i:nth-child(2){color:var(--rose)}.cycle-2028-summary small{color:var(--soft-ink);font:800 10px/1 var(--label)}.branch-map{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line)}.branch-map article{min-height:116px;display:grid;align-content:center;gap:6px;padding:14px 18px;background:var(--white);border-top:6px solid var(--blue)}.branch-map article:nth-child(2){border-color:var(--rose)}.branch-map article:nth-child(3){border-color:var(--purple)}.branch-map article:nth-child(4){border-color:var(--green)}.branch-map span{color:var(--soft-ink);font:900 10px/1 var(--label);letter-spacing:.08em}.branch-map strong{font:900 27px/.95 var(--heading);letter-spacing:.045em}.branch-map small{color:var(--soft-ink);font:800 11px/1.15 var(--label)}.government-branch-list{display:grid;gap:1px;background:var(--line)}.government-branch-drawer{background:var(--white)}.government-branch-drawer>summary{min-height:86px;display:grid;grid-template-columns:180px minmax(0,1fr) 72px 32px;align-items:center;gap:14px;padding:0 20px;cursor:pointer;list-style:none;border-left:8px solid var(--blue)}.government-branch-drawer.is-executive>summary{border-left-color:var(--rose)}.government-branch-drawer.is-judiciary>summary{border-left-color:var(--purple)}.government-branch-drawer.is-military>summary{border-left-color:var(--green)}.government-branch-drawer.is-governors>summary{border-left-color:var(--gold)}.government-branch-drawer>summary::-webkit-details-marker{display:none}.government-branch-drawer>summary span{color:var(--soft-ink);font:900 11px/1 var(--label);letter-spacing:.07em}.government-branch-drawer>summary strong{font:900 27px/.95 var(--heading);letter-spacing:.04em}.government-branch-drawer>summary b{min-width:54px;padding:10px;color:var(--white);background:var(--ink);font:900 14px/1 var(--label);text-align:center}.government-branch-drawer>summary i:before{content:"+";color:var(--soft-ink);font:normal 900 26px/1 var(--label)}.government-branch-drawer[open]>summary{box-shadow:inset 0 -3px 0 var(--ink)}.government-branch-drawer[open]>summary i:before{content:"−"}.government-branch-content{display:grid;gap:1px;padding:1px;background:var(--line)}.government-branch-content>.political-person-grid{padding:1px}.political-leadership{padding:18px;background:var(--white)}.political-leadership header{display:grid;gap:5px;margin-bottom:13px}.political-leadership header strong{font:900 25px/1 var(--heading);letter-spacing:.04em}.political-person-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line)}.political-person-card{min-width:0;min-height:78px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px 12px;color:var(--ink);background:var(--white);border-left:6px solid var(--line-bright);text-decoration:none;text-align:left;border-top:0;border-right:0;border-bottom:0}.political-person-card.is-dem{border-left-color:var(--blue);background:linear-gradient(90deg,rgba(18,104,179,.11),var(--white) 66%)}.political-person-card.is-rep{border-left-color:var(--rose);background:linear-gradient(90deg,rgba(169,71,88,.12),var(--white) 66%)}.political-person-card.is-ind{border-left-color:var(--purple)}.political-person-card:hover,.political-person-card:focus-visible{position:relative;z-index:1;outline:4px solid var(--ink)}.political-person-avatar{width:46px;height:46px;display:grid;place-items:center;color:var(--white);background:var(--ink);border-radius:50%;font:900 14px/1 var(--label)}.political-person-copy{min-width:0;display:grid;gap:5px}.political-person-copy strong{overflow:hidden;font:900 16px/1.05 var(--label);text-overflow:ellipsis;white-space:nowrap}.political-person-copy small{overflow:hidden;color:var(--soft-ink);font:800 10px/1.15 var(--label);text-overflow:ellipsis}.political-person-copy em{color:var(--green);font:normal 900 9px/1 var(--label)}.political-person-card>b{color:var(--soft-ink);font:900 16px/1 var(--label)}.political-person-card.is-dem>b{color:var(--blue)}.political-person-card.is-rep>b{color:var(--rose)}.political-roster,.political-state-roster,.cycle-2028-state{background:var(--white)}.political-roster>summary,.political-state-roster>summary,.cycle-2028-state>summary{min-height:72px;display:grid;grid-template-columns:minmax(170px,.7fr) minmax(260px,1.3fr) auto;align-items:center;gap:12px;padding:0 20px;cursor:pointer;list-style:none;border-bottom:1px solid var(--line)}.political-roster>summary::-webkit-details-marker,.political-state-roster>summary::-webkit-details-marker,.cycle-2028-state>summary::-webkit-details-marker{display:none}.political-roster>summary span,.political-state-roster>summary span,.cycle-2028-state>summary span{color:var(--soft-ink);font:900 11px/1 var(--label);letter-spacing:.05em}.political-roster>summary strong,.political-state-roster>summary strong,.cycle-2028-state>summary strong{font:900 22px/1 var(--heading);letter-spacing:.035em}.political-roster>summary b,.cycle-2028-state>summary b{min-width:48px;padding:9px;color:var(--white);background:var(--ink);font:900 14px/1 var(--label);text-align:center}.political-roster[open]>summary,.cycle-2028-state[open]>summary{box-shadow:inset 7px 0 0 var(--blue)}.political-roster-note{margin:0;padding:13px 20px;color:var(--soft-ink);background:var(--paper);border-bottom:1px solid var(--line);font:700 12px/1.35 var(--body)}.political-roster>.political-person-grid{padding:1px}.political-state-groups{padding:1px;background:var(--line)}.political-state-roster{margin-bottom:1px}.political-state-roster>summary{min-height:58px;grid-template-columns:minmax(180px,1fr) auto;padding-left:30px}.political-state-roster>summary strong{font-size:19px}.political-state-roster>.political-person-grid{padding:1px}.political-source-ledger,.cycle-2028-sources{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;padding:1px;background:var(--ink)}.political-source-ledger>span,.cycle-2028-sources>span{display:grid;align-content:center;padding:14px;color:var(--white)}.political-source-ledger a,.cycle-2028-sources a{min-height:66px;display:grid;align-content:center;gap:4px;padding:11px 13px;color:var(--ink);background:var(--white);text-decoration:none}.political-source-ledger a:hover,.cycle-2028-sources a:hover{color:var(--white);background:var(--blue)}.political-source-ledger a strong,.cycle-2028-sources a{font:900 10px/1.15 var(--label)}.political-source-ledger a small{color:inherit;font:700 9px/1.2 var(--body)}.political-official-modal{height:100%;min-height:0;display:grid;grid-template-rows:112px minmax(0,1fr);background:var(--white)}.political-official-modal[data-party=DEM]{box-shadow:inset 9px 0 0 var(--blue)}.political-official-modal[data-party=REP]{box-shadow:inset 9px 0 0 var(--rose)}.political-official-modal>header{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 18px 14px 28px;border-bottom:3px solid var(--ink)}.political-official-modal>header>div{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;align-items:center}.political-official-modal>header span{grid-column:1 / -1;color:var(--blue);font:900 11px/1 var(--label);letter-spacing:.06em}.political-official-modal>header h1{min-width:0;margin:0;overflow:hidden;font:900 38px/.92 var(--heading);letter-spacing:.035em;text-overflow:ellipsis;white-space:nowrap}.political-official-modal>header b{padding:7px 9px;color:var(--white);background:var(--ink);font:900 10px/1 var(--label)}.political-official-modal>header>button{width:60px;height:60px;flex:0 0 auto;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);font:400 39px/1 var(--body)}.political-official-modal>header>button:hover,.political-official-modal>header>button:focus-visible{color:var(--blue);border-color:var(--blue)}.political-official-modal-body{min-height:0;display:grid;grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);overflow:auto}.political-official-modal-body>aside{min-width:0;display:grid;align-content:start;gap:14px;padding:24px;background:var(--paper);border-right:1px solid var(--line)}.political-official-portrait{width:min(100%,310px);height:auto;aspect-ratio:4 / 5;flex:none;justify-self:center;border:1px solid var(--line-bright);border-radius:0}.political-official-portrait .candidate-initials{font:900 clamp(54px,7vw,94px)/1 var(--heading)}.political-official-portrait-source{min-height:40px;display:grid;place-items:center;padding:8px 10px;color:var(--blue);background:var(--white);border:1px solid var(--line-bright);font:900 9px/1.15 var(--label);text-align:center;text-decoration:none}.political-official-portrait-source:hover,.political-official-portrait-source:focus-visible{color:var(--white);background:var(--blue);border-color:var(--blue)}.political-official-modal-body aside>section{display:grid;gap:1px;background:var(--line)}.political-official-modal-body aside>section>span{padding:9px 11px;color:var(--white);background:var(--ink);font:900 10px/1 var(--label)}.political-official-modal-body aside article{display:grid;gap:5px;padding:11px;background:var(--white)}.political-official-modal-body aside article strong{font:900 14px/1.1 var(--label)}.political-official-modal-body aside article small{color:var(--soft-ink);font:800 10px/1.2 var(--label)}.political-official-modal-body aside nav{display:grid;gap:5px}.political-official-modal-body aside nav a{min-height:56px;display:grid;align-content:center;gap:4px;padding:9px 11px;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);text-decoration:none}.political-official-modal-body aside nav a:hover,.political-official-modal-body aside nav a:focus-visible{color:var(--blue);border-color:var(--blue)}.political-official-modal-body aside nav strong{font:900 11px/1.15 var(--label)}.political-official-modal-body aside nav span{color:var(--blue);font:900 9px/1 var(--label)}.political-official-modal-body>main{min-width:0;padding:20px 26px}.political-official-modal-body>main .candidate-talking-links{margin:0}.political-official-actions{display:grid;gap:1px;margin-bottom:18px;background:var(--line);border:1px solid var(--line)}.political-official-actions>header{min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;color:var(--white);background:var(--ink)}.political-official-actions h2{margin:0;font:900 18px/1 var(--heading);letter-spacing:.035em}.political-official-actions>header span{color:#c8d0d7;font:900 10px/1 var(--label)}.political-official-actions nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px}.political-official-actions a,.political-official-actions button{min-width:0;min-height:76px;display:grid;align-content:center;gap:6px;padding:10px 12px;color:var(--ink);background:var(--white);border:0;text-align:left;text-decoration:none}.political-official-actions a:hover,.political-official-actions a:focus-visible,.political-official-actions button:hover,.political-official-actions button:focus-visible{color:var(--white);background:var(--blue)}.political-official-actions strong{font:900 11px/1.1 var(--label)}.political-official-actions span{color:inherit;font:800 8px/1.25 var(--label)}.political-record-highlights{display:grid;gap:1px;margin-bottom:18px;background:var(--line);border:1px solid var(--line)}.political-record-highlights>header{min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;color:var(--white);background:var(--blue)}.political-record-highlights h2{margin:0;font:900 18px/1 var(--heading);letter-spacing:.035em}.political-record-highlights>header span{color:#ffffffd1;font:900 10px/1 var(--label)}.political-record-highlights>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px}.political-record-highlights a{min-width:0;min-height:112px;display:grid;align-content:center;gap:7px;padding:13px 14px;color:var(--ink);background:var(--white);border-top:5px solid var(--blue);text-decoration:none}.political-record-highlights a:hover,.political-record-highlights a:focus-visible{color:var(--white);background:var(--blue)}.political-record-highlights a>span{color:var(--blue);font:900 9px/1 var(--label);letter-spacing:.04em}.political-record-highlights a:hover>span,.political-record-highlights a:focus-visible>span{color:var(--white)}.political-record-highlights a>strong{min-width:0;font:900 13px/1.12 var(--label)}.political-record-highlights a>small{min-width:0;color:var(--soft-ink);font:800 9px/1.25 var(--label)}.political-record-highlights a>b{color:inherit;font:900 8px/1 var(--label)}.political-record-highlights a:hover>small,.political-record-highlights a:focus-visible>small{color:#ffffffd1}.political-public-record{display:grid;gap:1px;margin-bottom:18px;background:var(--line);border:1px solid var(--line)}.political-public-record>header{min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;color:var(--white);background:var(--ink)}.political-public-record h2{margin:0;font:900 18px/1 var(--heading);letter-spacing:.035em}.political-public-record>header .context-tip{color:var(--ink);border-color:#ffffffb8}.political-public-record>header .context-tip>span{width:min(520px,72vw)}.political-public-record>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px}.political-public-record a{min-width:0;min-height:92px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:center;gap:5px 10px;padding:12px;color:var(--ink);background:var(--white);text-decoration:none}.political-public-record a:hover,.political-public-record a:focus-visible{color:var(--white);background:var(--blue)}.political-public-record a>span{grid-column:1 / -1;color:var(--blue);font:900 8px/1 var(--label);letter-spacing:.04em}.political-public-record a:hover>span,.political-public-record a:focus-visible>span{color:var(--white)}.political-public-record a>strong{min-width:0;font:900 11px/1.1 var(--label)}.political-public-record a>small{grid-column:1;min-width:0;color:var(--soft-ink);font:800 8px/1.25 var(--label)}.political-public-record a>b{grid-column:2;grid-row:2 / 4;align-self:center;color:inherit;font:900 8px/1 var(--label);white-space:nowrap}.political-public-record a:hover>small,.political-public-record a:focus-visible>small{color:#ffffffd1}.cycle-2028-controlbar{min-height:76px;display:grid;grid-template-columns:minmax(300px,1fr) auto auto;align-items:stretch;gap:1px;background:var(--line)}.cycle-2028-controlbar label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:10px 16px;background:var(--white)}.cycle-2028-controlbar label span{color:var(--soft-ink);font:900 10px/1 var(--label)}.cycle-2028-controlbar input{min-width:0;height:44px;padding:0 12px;color:var(--ink);background:var(--paper);border:2px solid var(--ink);font:900 15px/1 var(--label)}.cycle-2028-controlbar>b{display:grid;place-items:center;padding:0 18px;color:var(--white);background:var(--purple);font:900 11px/1.1 var(--label);text-align:center}.cycle-2028-controlbar>button,.cycle-2028-filters button,.cycle-2028-picks button{border:0;font:900 11px/1 var(--label)}.cycle-2028-controlbar>button{min-width:170px;color:var(--white);background:var(--ink)}.cycle-2028-controlbar>button:disabled{color:var(--soft-ink);background:var(--paper)}.cycle-2028-status-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line)}.cycle-2028-status-board article{min-height:118px;display:grid;align-content:center;gap:7px;padding:14px 17px;background:var(--white)}.cycle-2028-status-board span{color:var(--soft-ink);font:900 10px/1 var(--label);letter-spacing:.06em}.cycle-2028-status-board strong{font:900 17px/1 var(--heading)}.cycle-2028-status-board p{margin:0;color:var(--soft-ink);font:700 11px/1.3 var(--body)}.cycle-2028-filters{min-height:58px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;padding:1px;background:var(--line)}.cycle-2028-filters button{color:var(--soft-ink);background:var(--paper)}.cycle-2028-filters button.is-active{color:var(--white);background:var(--ink);box-shadow:inset 0 -5px 0 var(--blue)}.cycle-2028-state-list{display:grid;gap:1px;background:var(--line)}.cycle-2028-state>summary{grid-template-columns:minmax(240px,1fr) auto auto}.cycle-2028-state>div{display:grid;gap:1px;padding:1px;background:var(--line)}.cycle-2028-race{min-height:84px;display:grid;grid-template-columns:minmax(280px,1.4fr) minmax(210px,.8fr) 220px;align-items:stretch;gap:1px;background:var(--line);border-left:7px solid var(--line-bright)}.cycle-2028-race.is-changed{border-left-color:var(--purple)}.cycle-2028-race>div{min-width:0;display:grid;align-content:center;gap:5px;padding:10px 14px;background:var(--white)}.cycle-2028-race>div:first-child span{color:var(--soft-ink);font:900 10px/1 var(--label);letter-spacing:.06em}.cycle-2028-race>div:first-child strong{overflow:hidden;font:900 17px/1 var(--label);text-overflow:ellipsis;white-space:nowrap}.cycle-2028-race>div:first-child small{color:var(--soft-ink);font:800 9px/1.15 var(--label)}.cycle-2028-status b{width:fit-content;padding:6px 8px;color:var(--white);background:var(--ink);font:900 11px/1 var(--label)}.cycle-2028-status em{color:var(--soft-ink);font:normal 900 9px/1.15 var(--label)}.cycle-2028-picks{grid-template-columns:repeat(4,1fr);gap:1px!important;padding:1px!important;background:var(--line)!important}.cycle-2028-picks button{min-width:0;color:var(--ink);background:var(--paper)}.cycle-2028-picks button.is-dem.is-active{color:var(--white);background:var(--blue)}.cycle-2028-picks button.is-rep.is-active{color:var(--white);background:var(--rose)}.cycle-2028-picks button.is-other.is-active{color:var(--white);background:var(--purple)}.cycle-2028-picks button:disabled{color:var(--line-bright)}.cycle-2028-empty{padding:50px 20px;color:var(--soft-ink);background:var(--white);font:900 16px/1 var(--label);text-align:center}.cycle-2028-sources{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:1180px){.control-shell{grid-template-rows:96px 48px 64px minmax(0,1fr) 58px}.major-tabs button{font-size:13px}.main-season-hero,.cycle-2028-hero{grid-template-columns:1fr}.main-season-hero>div:first-child,.cycle-2028-hero>div:first-child{min-height:112px}.branch-map,.cycle-2028-status-board,.political-person-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cycle-2028-race{grid-template-columns:minmax(240px,1fr) minmax(180px,.7fr) 180px}.political-source-ledger{grid-template-columns:repeat(3,minmax(0,1fr))}.primaries-hero{grid-template-columns:1fr}.primaries-hero>div:first-child{min-height:112px}.primary-state>summary{grid-template-columns:minmax(160px,1fr) 100px 130px minmax(180px,.7fr) 28px}.primary-race>header{grid-template-columns:1fr}.primary-race>header>div:last-child{grid-template-columns:minmax(0,1fr) 126px}.primary-source-ledger{grid-template-columns:repeat(3,minmax(0,1fr))}.government-branch-drawer>summary{grid-template-columns:140px minmax(0,1fr) 58px 28px}}@media(max-width:760px){.major-tabs{overflow-x:auto;grid-template-columns:repeat(3,minmax(180px,1fr))}.government-control-totals,.cycle-2028-summary,.branch-map,.cycle-2028-status-board,.political-person-grid,.cycle-2028-controlbar{grid-template-columns:1fr}.cycle-2028-controlbar>b,.cycle-2028-controlbar>button{min-height:52px}.cycle-2028-race{grid-template-columns:1fr}.cycle-2028-picks{min-height:54px}.political-source-ledger,.cycle-2028-sources,.primaries-summary,.primary-party-lanes,.primary-editor-grid,.primary-calendar-warning{grid-template-columns:1fr}.primary-state>summary{grid-template-columns:minmax(0,1fr) auto 28px}.primary-state>summary b{display:none}.primary-state>summary em{grid-column:1 / 3;text-align:left}.primary-source-ledger{grid-template-columns:1fr}.government-branch-drawer>summary{grid-template-columns:minmax(0,1fr) 52px 28px}.government-branch-drawer>summary span{grid-column:1 / -1;padding-top:12px}.political-official-modal{grid-template-rows:100px minmax(0,1fr)}.political-official-modal>header h1{font-size:27px}.political-official-modal-body{grid-template-columns:1fr}.political-official-modal-body>aside{border-right:0;border-bottom:1px solid var(--line)}.political-official-portrait{max-width:220px}.political-official-actions nav{grid-template-columns:1fr}.political-record-highlights>div{grid-template-columns:1fr}.political-public-record>div{grid-template-columns:1fr}}#workspace[data-module=calls]{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(430px,54%) minmax(0,1fr);grid-template-areas:"map" "data"}#workspace[data-module=calls][data-map-size=compact]{grid-template-rows:minmax(300px,36%) minmax(0,1fr)}#workspace[data-module=calls][data-map-size=micro]{grid-template-rows:minmax(150px,18%) minmax(0,1fr)}#workspace[data-module=calls][data-map-size=large]{grid-template-rows:minmax(520px,68%) minmax(0,1fr)}#workspace[data-module=calls] .dataset-strip,#workspace[data-module=calls] .state-drawer,#workspace[data-module=calls] .data-panel>.panel-header,#workspace[data-module=calls] .seat-score-view{display:none}#workspace[data-module=calls] .data-panel{overflow:hidden}#workspace[data-module=calls] .map-legend .legend-even{color:#66727d}#calls-view.is-active{overflow:auto;background:var(--paper)}.calls-shell{min-height:100%;display:flex;flex-direction:column;gap:1px;background:var(--line)}.calls-live-status{min-height:68px;display:grid;grid-template-columns:minmax(270px,1.1fr) minmax(250px,.9fr) minmax(230px,.8fr) auto auto;align-items:stretch;gap:1px;color:var(--ink);background:var(--line);border-bottom:3px solid var(--ink)}.calls-live-status>div{min-width:0;display:grid;align-content:center;gap:4px;padding:8px 13px;background:var(--white)}.calls-live-status span{color:var(--soft-ink);font:900 9px/1 var(--label);letter-spacing:.055em}.calls-live-status strong,.calls-live-status time{overflow:hidden;font:900 15px/1.05 var(--label);text-overflow:ellipsis;white-space:nowrap}.calls-live-status>div:nth-child(2){grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:9px}.calls-live-status>div:nth-child(2) span{grid-column:1 / -1}.calls-live-status>div:nth-child(2) small{overflow:hidden;color:var(--soft-ink);font:800 9px/1.1 var(--label);text-overflow:ellipsis;white-space:nowrap}.calls-live-status.is-ready>div:nth-child(2) strong{color:var(--green)}.calls-live-status.is-loading>div:nth-child(2) strong{color:var(--blue)}.calls-live-status.is-stale>div:nth-child(2) strong,.calls-live-status.is-error>div:nth-child(2) strong{color:var(--rose)}.calls-live-status>a,.calls-live-status>button{min-width:112px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;color:var(--white);background:var(--ink);border:0;font:900 10px/1 var(--label);text-decoration:none}.calls-live-status>a:hover,.calls-live-status>a:focus-visible,.calls-live-status>button:hover:not(:disabled),.calls-live-status>button:focus-visible:not(:disabled){background:var(--blue)}.calls-live-status>button:disabled{color:var(--soft-ink);background:var(--paper)}.calls-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border-bottom:3px solid var(--ink)}.calls-summary-card{min-width:0;min-height:96px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto 1fr;align-items:center;gap:5px 12px;padding:11px 16px;background:var(--white)}.calls-summary-card>span{color:var(--soft-ink);font:900 12px/1 var(--label);letter-spacing:.06em}.calls-summary-card>strong{grid-row:1 / 3;grid-column:2;font:900 34px/.9 var(--heading);white-space:nowrap}.calls-summary-card>div{display:flex;align-items:center;gap:14px}.calls-summary-card b{font:900 18px/1 var(--label)}.calls-summary-card .is-dem{color:var(--blue)}.calls-summary-card .is-rep{color:var(--rose)}.calls-summary-card .is-uncalled{color:#66727d}.calls-toolbar{position:sticky;top:0;z-index:8;min-height:76px;display:grid;grid-template-columns:minmax(260px,1fr) auto auto;align-items:stretch;gap:1px;background:var(--line);border-bottom:2px solid var(--ink);box-shadow:0 8px 22px #1020331f}.calls-toolbar label{min-width:0;display:grid;grid-template-rows:18px 1fr;gap:5px;padding:8px 10px;background:var(--white)}.calls-toolbar label>span{color:var(--soft-ink);font:900 10px/1 var(--label);letter-spacing:.06em}.calls-toolbar input{width:100%;min-width:0;height:42px;padding:0 10px;color:var(--ink);background:var(--paper);border:1px solid var(--line-bright);border-radius:0;font:900 15px/1 var(--label);text-transform:uppercase}.calls-toolbar [role=group]{display:flex;align-items:stretch;gap:1px;background:var(--line)}.calls-toolbar button{min-width:82px;padding:0 10px;color:var(--soft-ink);background:var(--white);border:0;font:900 11px/1.15 var(--label);letter-spacing:.025em}.calls-toolbar button:hover,.calls-toolbar button:focus-visible{color:var(--blue)}.calls-toolbar button.is-active{color:var(--white);background:var(--ink)}.calls-state-list{display:grid;grid-template-columns:1fr;gap:1px;background:var(--line)}.calls-state-drawer{min-width:0;background:var(--white)}.calls-state-drawer>summary{min-height:66px;display:grid;grid-template-columns:minmax(0,1fr) auto 34px;align-items:center;gap:14px;padding:0 16px;cursor:pointer;list-style:none;border-left:8px solid #b9c2cb}.calls-state-drawer>summary::-webkit-details-marker{display:none}.calls-state-drawer>summary:hover,.calls-state-drawer>summary:focus-visible{color:var(--blue);background:var(--paper);border-left-color:var(--blue)}.calls-state-drawer>summary>span{font:900 24px/.95 var(--heading);letter-spacing:.035em}.calls-state-drawer>summary>small{color:var(--soft-ink);font:900 11px/1 var(--label);letter-spacing:.025em}.calls-state-drawer>summary>i{color:var(--soft-ink);font:normal 400 31px/1 var(--body);text-align:center}.calls-state-drawer[open]>summary{border-left-color:var(--purple);border-bottom:1px solid var(--line)}.calls-state-drawer[open]>summary>i{transform:rotate(45deg)}.calls-state-body,.calls-state-races{min-width:0;display:grid;gap:1px;background:var(--line)}.calls-state-viewbar{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 14px;background:var(--paper)}.calls-state-viewbar>div{display:grid;gap:5px}.calls-state-viewbar span{color:var(--soft-ink);font:900 10px/1 var(--label);letter-spacing:.055em}.calls-state-viewbar strong{font:900 14px/1 var(--label)}.calls-state-viewbar button{min-height:42px;padding:0 14px;color:var(--white);background:var(--ink);border:0;font:900 11px/1 var(--label)}.calls-state-viewbar button:hover,.calls-state-viewbar button:focus-visible{background:var(--blue)}.calls-race-card{min-width:0;background:var(--white);border-left:8px solid var(--line-bright)}.calls-race-card>header{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 14px;background:var(--white);border-bottom:1px solid var(--line)}.calls-race-card>header>div{min-width:0;display:grid;gap:5px}.calls-race-card>header span{color:var(--soft-ink);font:900 10px/1 var(--label);letter-spacing:.06em}.calls-race-card>header strong{font:900 22px/.95 var(--heading);letter-spacing:.02em}.calls-race-card>header>b{max-width:45%;padding:8px 10px;font:900 12px/1.15 var(--label);text-align:right}.calls-race-card>header>b.is-called{color:var(--white);background:var(--green)}.calls-race-card>header>b.is-uncalled{color:var(--ink);background:#dfe4e8}.calls-race-grid{min-width:0;display:grid;grid-template-columns:minmax(520px,1.55fr) minmax(270px,.72fr);gap:1px;background:var(--line)}.calls-candidate-ballot{min-width:0;display:grid;align-content:start;gap:1px;background:var(--line)}.calls-ballot-heading{min-height:38px;display:grid;grid-template-columns:82px minmax(0,1fr) 82px;align-items:center;gap:8px;padding:0 12px;color:var(--white);background:var(--ink);font:900 10px/1 var(--label);letter-spacing:.055em;text-align:center}.calls-ballot-heading span:nth-child(2){text-align:left}.calls-candidate-row{--calls-party: var(--purple);min-width:0;min-height:68px;display:grid;grid-template-columns:82px minmax(0,1fr) 44px 82px;align-items:center;gap:8px;padding:7px 12px;background:linear-gradient(90deg,var(--white),color-mix(in srgb,var(--calls-party) 10%,var(--white)))}.calls-candidate-row[data-party=DEM]{--calls-party: var(--blue)}.calls-candidate-row[data-party=REP]{--calls-party: var(--rose)}.calls-candidate-row input{width:28px;height:28px;margin:0 auto;accent-color:var(--calls-party);cursor:pointer}.calls-candidate-row>small{color:var(--white);background:var(--calls-party);padding:7px 5px;font:900 11px/1 var(--label);text-align:center}.calls-candidate-row .candidate-link-cluster{width:100%}.calls-candidate-row .candidate-link-label{font:900 21px/1 var(--label)}.calls-candidate-row .candidate-career-button{min-width:52px;min-height:38px;font-size:9px}.candidate-portrait-calls{width:48px;height:48px;flex-basis:48px;border-width:2px}.calls-ballot-actions{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px;background:var(--paper)}.calls-ballot-actions button{min-height:34px;padding:0 10px;color:var(--ink);background:var(--white);border:1px solid var(--line-bright);font:900 9px/1 var(--label)}.calls-ballot-actions button:hover:not(:disabled),.calls-ballot-actions button:focus-visible:not(:disabled){color:var(--white);background:var(--blue)}.calls-ballot-actions button:disabled{color:var(--line-bright)}.calls-projections{min-width:0;display:grid;align-content:start;gap:1px;background:var(--line)}.calls-projections>header{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 10px;color:var(--white);background:var(--purple)}.calls-projections>header span{font:900 10px/1 var(--label);letter-spacing:.055em}.calls-projections>header small{font:800 8px/1 var(--label)}.calls-projection-row{min-width:0;min-height:49px;display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:9px;padding:7px 10px;background:var(--white)}.calls-projection-row span{color:var(--soft-ink);font:900 9px/1 var(--label);letter-spacing:.04em}.calls-projection-row strong{overflow:hidden;font:900 15px/1.12 var(--label);text-overflow:ellipsis;white-space:nowrap}@media(max-width:900px){.calls-live-status{grid-template-columns:1fr 1fr}.calls-live-status>a,.calls-live-status>button{min-height:46px}.calls-toolbar{grid-template-columns:1fr}.calls-toolbar [role=group]{min-height:46px}.calls-toolbar button{flex:1 1 0}.calls-race-grid{grid-template-columns:1fr}.calls-projections{grid-template-columns:repeat(2,minmax(0,1fr))}.calls-projections>header{grid-column:1 / -1}}
