/* Red, white and blue election desk. Map colors describe selection, not party. */
:root {
  --ink:#0c234a; --muted:#64728a; --paper:#f2f4f8; --line:#dce2ec;
  --orange:#cc1828; --red:#cc1828; --green:#2055af; --blue:#2353a0;
  --serif:'Segoe UI',Arial,sans-serif;
}
body { color:var(--ink); background:var(--paper); }
.sidebar { background:#091d41; border-top:5px solid var(--red); }
.brand { gap:0; min-height:49px; margin-bottom:43px; }
.brand-wordmark { display:inline-flex; align-items:baseline; flex-shrink:0; white-space:nowrap; color:#fff; font-size:27px; line-height:1.14; }
.brand-wordmark .brand-word { font-family:'Segoe UI',Arial,sans-serif; font-weight:650; letter-spacing:-.045em; }
.brand-wordmark .brand-360 { color:#ff6a75; font-family:'Segoe UI',Arial,sans-serif; font-size:.43em; font-weight:500; letter-spacing:-.02em; margin-left:.22em; align-self:flex-start; padding-top:.19em; }
.side-label,.side-note .tiny-label { color:#93a9ce; }
.sidebar nav a { color:#bdcbe0; font-size:12px; }
.sidebar nav a.active { background:#193563; border-radius:2px; }
.sidebar nav a.active:before { background:var(--red); }
.sidebar nav a.active .nav-icon,.sidebar nav .arrow { color:#fff; }
.side-note { margin-top:43px; }
.side-note p { font-size:24px; line-height:1.15; letter-spacing:-.6px; font-weight:750; }
.side-rule { background:#536b94; }
.side-note>span:not(.tiny-label) { color:#aebed7; }
.text-button.light { color:#fff; }
.side-footer { color:#bdcbe0; }
.side-indent { color:#91a7cc; }
.topbar { height:57px; background:#fff; border-top:5px solid var(--red); color:#344b70; font-size:10px; }
.election-date { color:#63718b; }
.election-date b { color:var(--red); }
main { padding-top:27px; }
.page-heading { align-items:center; padding-bottom:22px; }
.page-heading h1 { font-family:Arial,sans-serif; font-size:43px; line-height:.99; font-weight:900; letter-spacing:-1.9px; margin:15px 0 13px; }
.page-heading h1 span { color:var(--red); }
.page-heading p { font-size:12px; color:#53647d; }
.eyebrow { font-size:9px; color:#3a5275; }
.eyebrow.muted { color:#64738a; font-size:9px; }
.heading-tools { gap:20px; }
.edition { font-family:Arial,sans-serif; font-weight:900; font-size:42px; color:#c9d3e4; }
.edition span { color:#697d9d; font-size:9px; }
.outline-button { border-color:#c2cddd; background:white; font-size:11px; border-radius:3px; color:#1a3a72; min-height:35px; }
.outline-button:hover { background:#edf2fb; border-color:#799acb; }
.solid-button { background:#163a75; min-height:37px; }
.solid-button:hover { background:#234f98; }
.notice { margin-bottom:21px; padding:11px 14px; background:#eaf0fa; border:1px solid #d5deef; border-left:3px solid var(--blue); }
.notice-symbol { color:#365e9a; }
.notice strong { font-size:11px; color:#193d75; }
.notice span:not(.notice-symbol) { color:#536987; font-size:10px; }
.notice .text-button { font-size:10px; }
.notice { align-items:flex-start; }
.notice>div { flex:1; min-width:0; gap:4px; }
.notice .source-headline { font-size:13px; font-weight:750; color:#123569; }
.notice .source-policy { font-size:10px; color:#536987; }
.notice .source-status-line { display:flex; align-items:center; flex-wrap:wrap; gap:5px 10px; margin-top:2px; }
.notice #mode-label { font-size:10px; font-weight:600; }
.notice .certification-summary { display:inline-block; background:#fff; border:1px solid #c9d7ec; border-radius:3px; color:#405e8b; font-size:9px; padding:2px 7px; }
.content-heading { margin-bottom:20px; border-color:#c8d2e1; }
.tabs { gap:29px; }
.tabs button { color:#62718b; font-size:12px; }
.tabs button[aria-selected=true] { color:var(--ink); border-bottom-color:var(--red); }
.content-heading>.small-label { color:#6b7d98; font-size:8px; }
.race-overview { grid-template-columns:minmax(0,1fr) 278px; gap:20px; align-items:start; }
.panel { border-radius:3px; border-color:#d6deea; box-shadow:0 2px 5px #10254a03; }
.panel h2 { font-weight:750; font-size:25px; letter-spacing:-.75px; }
.panel-intro { color:#68778e; font-size:11px; }
.race-map-panel { padding:22px 22px 0; overflow:hidden; }
.race-map-panel>.panel-header .outline-button { font-size:11px; padding:7px 10px; white-space:nowrap; }
.race-map-panel>.panel-intro { margin-top:9px; }
.map-modes { display:flex; flex-wrap:wrap; gap:4px; padding:5px; margin:18px 0 13px; border:1px solid #dce3ee; border-radius:4px; background:#f3f6fb; }
.map-modes button { border:0; border-radius:3px; background:transparent; font-size:11px; font-weight:650; padding:9px 12px; color:#546984; flex:1; white-space:nowrap; min-height:35px; }
.map-modes button[aria-pressed=true] { background:#12356e; color:#fff; box-shadow:0 1px 3px #0d2a5820; }
.map-modes button:hover:not([aria-pressed=true]) { background:#e2eaf7; }
#my-races-count { font-size:9px; padding:1px 4px; margin-left:3px; border-radius:9px; background:#d6e2f4; color:#1f4e91; }
.map-modes button[aria-pressed=true] #my-races-count { color:#fff; background:#325788; }
.map-toolbar { display:flex; align-items:center; gap:12px; min-height:32px; flex-wrap:wrap; }
.priority-toggle { display:flex; flex-direction:row; align-items:center; gap:6px; white-space:nowrap; color:#435775; font-size:10px; }
.priority-toggle input { accent-color:var(--red); min-height:0; min-width:0; width:13px; height:13px; margin:0; }
.map-race-count { color:#7a889e; font:9px var(--mono); letter-spacing:0; margin-left:auto; }
.state-jump select { font-size:10px; min-height:30px; padding:5px 22px 5px 7px; width:138px; color:#2d4e7f; background:#fff; }
.geographic-map { width:100%; margin:7px 0 0; background:radial-gradient(ellipse at center,#f6f8fc 0,#fff 72%); position:relative; }
.geographic-map svg { display:block; width:100%; height:auto; overflow:visible; }
.nation-outline { fill:#e3e9f2; stroke:#8fa2c0; stroke-width:4; stroke-linejoin:round; }
.geo-state { cursor:pointer; outline:none; }
.geo-state .state-shape { fill:#edf0f6; stroke:white; stroke-width:1.8; stroke-linejoin:round; transition:fill .15s; }
.geo-state.has-races .state-shape { fill:#bdcfea; }
.geo-state.has-priority .state-shape { fill:#355c9b; }
.geo-state.is-selected .state-shape { fill:#173a73; stroke:#d31e2f; stroke-width:3.4; }
.geo-state:hover .state-shape,.geo-state:focus-visible .state-shape { fill:#6587bb; stroke:#cc1828; stroke-width:3; }
.geo-state:focus-visible .state-shape { stroke-width:5; }
.geo-label { font-family:Arial,sans-serif; font-size:12px; fill:#687b9b; font-weight:750; pointer-events:none; }
.geo-state.has-races .geo-label { fill:#1a416d; }
.geo-state.has-priority .geo-label,.geo-state.is-selected .geo-label { fill:white; }
.label-leader { fill:none; stroke:#9dafcb; stroke-width:1.3; pointer-events:none; }
.label-box { fill:#edf0f6; stroke:#d1dbea; stroke-width:1; }
.has-races .label-box { fill:#bdcfea; }
.has-priority .label-box,.is-selected .label-box { fill:#234a88; }
.is-selected .label-box { stroke:var(--red); stroke-width:2; }
.geo-state:hover .label-box,.geo-state:focus-visible .label-box { stroke:var(--red); stroke-width:2; }
.inset-rule { fill:none; stroke:#d8e0ec; stroke-width:1; }
.inset-label { font:10px var(--mono); fill:#7b8da8; letter-spacing:2px; }
.map-legend { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:19px; margin-top:2px; font-size:10px; color:#5c6f8b; }
.map-legend>span { display:flex; align-items:center; gap:5px; }
.map-legend i { width:8px; height:8px; border-radius:1px; border:1px solid #d3dce9; }
.legend-priority { background:#355c9b; }
.legend-race { background:#bdcfea; }
.legend-neutral { background:#edf0f6; }
.map-caption { font-size:9px; color:#7787a0; line-height:1.7; margin:12px 0 18px; }
.map-loading,.map-error { text-align:center; padding:150px 25px; color:#647a9e; font-size:13px; }
.map-error { padding:70px 25px; }
.map-status { background:#f0f4fb; border-left:3px solid var(--blue); padding:12px; margin:15px 0; font-size:11px; color:#405e8b; }
.race-state-detail { padding:20px 22px; margin:0 -22px; border-top:1px solid #dbe2ef; background:#fbfcfe; }
.race-state-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.race-state-heading h3 { font-size:21px; font-weight:750; letter-spacing:-.5px; line-height:1.2; margin:5px 0 0; }
.race-state-heading .eyebrow { font-size:8px; }
.chip { font-size:8px; color:#486494; border-color:#d6e0ef; background:#f7f9fd; }
.race-state-detail>p { font-size:10px; color:#6d7e97; margin:10px 0 14px; line-height:1.8; }
.state-race-list { max-height:235px; overflow:auto; }
.state-detail-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:14px; }
.state-detail-actions .text-button { font-size:10px; }
.race-row { display:flex; align-items:center; gap:8px; border-bottom:1px solid #e5eaf3; min-height:72px; }
.race-row:last-child { border-bottom:0; }
.race-inspect { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:3px 9px; padding:13px 0; flex:1; min-width:0; color:#193867; text-align:left; border:0; background:transparent; }
.race-inspect>strong { font-family:Arial,sans-serif; font-size:13px; font-weight:750; letter-spacing:-.2px; }
.race-office { display:inline-block; align-self:center; font:7px var(--mono); letter-spacing:.6px; background:#e8effc; color:#315a9d; padding:3px 5px; border-radius:2px; }
.race-office.senate { background:#fcebed; color:#ae2634; }
.race-row-detail { color:#72839e; font-size:10px; grid-column:2; }
.race-feed { color:#8190a6; font-size:9px; grid-column:2; }
.race-row-selected .race-inspect>strong { color:#c31627; }
.save-race { display:grid; place-items:center; width:32px; height:32px; background:transparent; border:1px solid transparent; border-radius:3px; color:#7c91b2; padding:0; flex-shrink:0; }
.save-race:hover { background:#f2f5fb; border-color:#d7e0ef; }
.save-race.saved { color:var(--blue); }
.bookmark-icon { display:block; width:16px; height:18px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linejoin:round; }
.save-race.saved .bookmark-icon { fill:currentColor; }
.priority-panel { padding:21px; border-top:3px solid var(--red); }
.priority-panel h2 { font-size:23px; }
.priority-panel .eyebrow { font-size:8px; }
.priority-explainer { font-size:10px; line-height:1.8; color:#7887a0; margin:11px 0 14px; }
.priority-chambers { display:flex; border-bottom:1px solid #dce4ef; gap:20px; }
.priority-chambers button { border:0; border-bottom:2px solid transparent; color:#6b7e9b; background:none; padding:0 0 9px; font-size:11px; }
.priority-chambers button[aria-pressed=true] { color:#153b79; border-bottom-color:#204f9c; font-weight:700; }
#priority-races { max-height:415px; overflow:auto; margin:3px 0 14px; }
.priority-panel>.text-button { display:flex; align-items:center; justify-content:space-between; width:100%; padding-top:5px; font-size:11px; }
.no-races { padding:18px 2px; font-size:11px; color:#71829d; line-height:1.8; }
.context-card { background:#122e5d; color:white; padding:23px; border:0; border-radius:3px; }
.context-card>.tiny-label { font-size:8px; color:#b8c9e4; }
.context-card h3 { font-size:23px; font-weight:750; line-height:1.15; color:#fff; letter-spacing:-.6px; }
.context-card p { color:#b4c5e0; font-size:11px; line-height:1.8; }
.context-card button { color:#fff; font-size:10px; }
.stats { background:white; margin:24px 0 0; grid-template-columns:1.3fr 1fr 1fr 1fr; border-top:3px solid #183a72; }
.stat-label { color:#6a7b95; font-size:8px; }
.stat-value { font-family:Arial,sans-serif; font-weight:800; font-size:31px; letter-spacing:-1.1px; }
.stat-value>span { color:#8b9cb7; font-weight:500; font-size:20px; }
.stat p { color:#72829b; font-size:9px; }
.stat-value:empty { min-height:37px; }
.panel-intro,.table-foot,.result-sub,.pagination { color:#6d7e96; }
label,.search-label { color:#4e6382; }
input,select { border-color:#cdd8e9; color:#193d72; }
th { background:#f1f4fa; color:#607592; }
td { color:#526987; border-color:#e7edf6; }
.data-note { color:#49668e; background:#edf2fb; border-color:#7494c5; }
.mix-early { background:#2859a7; }
.mix-mail { background:#c82334; }
.mix-bar { background:#e9edf5; }
.source-card p,.source-card dt,.source-card .tiny-label { color:#7184a0; }
.source-card dd,.source-card h3 { color:#284b7c; }
.source-card h3 { font-weight:750; font-size:21px; }
.pulse-row p { color:#70849d; }
.pulse-row .good { color:#245aa5; }
.pulse-row .pending { color:#8a6371; }
.pulse-abbr { background:#f0f4fb; border-color:#d9e2ef; color:#5777a3; }
.pulse-mark { color:#7191c1; }
.page-footer { color:#6c7e99; border-color:#d5deeb; }
dialog { border-top:4px solid var(--red); color:#193a6a; }
dialog h2 { font-weight:750; letter-spacing:-.8px; }
.methodology h3 { font-weight:700; }
.methodology p { color:#5d7291; }
.evidence-grid dt { color:#7387a6; }
.hash { background:#f0f4fc; color:#35598f; }
.close-button { color:#6c82a2; }
#race-picker { width:min(780px,calc(100vw - 32px)); padding:26px 28px; }
#race-picker>h2 { font-size:29px; margin:14px 0 10px; }
.picker-intro { font-size:12px; color:#6d7e99; line-height:1.8; }
.picker-controls { display:grid; grid-template-columns:1.7fr 1fr 1fr; gap:13px; margin:22px 0 16px; }
.picker-controls input,.picker-controls select { min-width:0; width:100%; font-size:12px; }
.picker-controls label { font-size:10px; }
.picker-summary { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:10px; color:#6f83a3; margin-bottom:9px; }
.picker-summary .text-button { font-size:10px; }
.race-picker-list { max-height:350px; overflow:auto; border-top:1px solid #dce4f0; border-bottom:1px solid #dce4f0; padding:0 12px 0 2px; }
.race-picker-list .race-row { min-height:67px; }
.race-picker-list .race-row-detail { font-size:11px; }
.race-picker-list .race-inspect { grid-template-columns:65px 1fr; }
.race-picker-list .race-office { justify-self:start; }
.race-picker-list .race-inspect>strong { font-size:14px; }
.picker-footer { display:flex; gap:17px; justify-content:space-between; align-items:center; padding-top:21px; }
.picker-footer p { color:#7184a1; font-size:10px; line-height:1.8; max-width:250px; }
#more-races { margin-top:12px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.page-heading { display:grid; grid-template-columns:minmax(280px,1fr) minmax(400px,500px); gap:30px; align-items:center; }
.hero-copy { min-width:0; }
.page-heading h1 { font-size:clamp(44px,3.5vw,56px); }
.hero-copy-footer p { max-width:330px; line-height:1.8; }
.hero-copy-footer .outline-button { margin-top:15px; }
.congress-board { min-width:0; border-left:1px solid #d5deeb; padding-left:26px; }
.congress-topline,.congress-options { display:flex; align-items:center; justify-content:space-between; gap:14px; }
.congress-topline .eyebrow { font-size:8px; letter-spacing:1.3px; }
.chamber-tabs { display:flex; gap:3px; border:1px solid #d5deeb; padding:3px; border-radius:4px; background:#fff; }
.chamber-tabs button { border:0; background:none; color:#5c6c88; font-size:10px; font-weight:650; padding:4px 11px; border-radius:2px; min-height:27px; }
.chamber-tabs button[aria-pressed=true] { background:#153971; color:white; }
.congress-options { margin:7px 0 0; }
.congress-options select { max-width:190px; font-size:10px; font-weight:650; color:#234572; padding:4px 20px 4px 0; border:0; border-radius:0; background:transparent; min-height:28px; }
.congress-options .text-button { font-size:9px; color:#5e7393; }
.chamber-visual { min-height:203px; }
.chamber-svg { display:block; width:100%; max-height:183px; overflow:visible; }
.chamber-seat { fill:#dfe4ec; }
.chamber-seat.party-D { fill:#235caa; }
.chamber-seat.party-R { fill:#cf1d32; }
.chamber-seat.party-I,.chamber-seat.party-O { fill:#7a6b9a; }
.chamber-seat.party-V { fill:white; stroke:#9aa7bc; stroke-width:1.6; }
.chamber-seat.party-U { fill:#dce2ec; }
.chamber-seat.party-D.status-not_up { fill:#b3c9e8; }
.chamber-seat.party-R.status-not_up { fill:#efb6be; }
.chamber-seat.party-I.status-not_up,.chamber-seat.party-O.status-not_up { fill:#cfc5e0; }
.majority-guide { fill:none; stroke:#aab6ca; stroke-width:1.3; stroke-dasharray:3 3; }
.majority-number { fill:var(--ink); font:bold 32px Arial,sans-serif; letter-spacing:-1px; }
.majority-label { fill:#6e7e98; font:8.5px Arial,sans-serif; letter-spacing:.6px; }
.chamber-counts { display:flex; align-items:baseline; justify-content:space-between; gap:10px; margin-top:-2px; font-size:10px; white-space:nowrap; }
.chamber-counts strong { font-size:25px; font-weight:800; letter-spacing:-1px; margin:0 4px; }
.dem-count { color:#235caa; }
.rep-count { color:#b71a30; }
.other-count { font-size:8px; color:#657691; text-align:center; white-space:normal; }
.chamber-status { color:#6d7d96; font-size:8px!important; line-height:1.7; min-height:14px; margin:6px 0 0; text-align:center; }
.chamber-status.update-failed { color:#a14e26; }
.chamber-placeholder { min-height:203px; display:flex; align-items:center; justify-content:center; color:#7283a0; font-size:11px!important; }
.chamber-legend { display:flex; justify-content:center; gap:15px; color:#6a7b97; font-size:8px; margin-top:3px; }
.chamber-legend span { display:flex; align-items:center; gap:5px; }
.chamber-legend i { width:6px; height:6px; border-radius:50%; display:inline-block; }
.legend-declared { background:#12376f; }
.legend-holdover { background:#b3c9e8; }
.legend-unresolved { background:#dce2ec; }
.chamber-source { margin-top:24px; padding:17px; border:1px solid #d9e2ee; border-radius:4px; }
.chamber-source h3 { margin:0 0 8px; font-size:14px; color:#173c76; }
.chamber-source a { font-size:11px; color:#2353a0; }
.chamber-source dl { display:grid; grid-template-columns:90px 1fr; gap:7px; font-size:10px; color:#5f7393; }
.chamber-source dd { margin:0; min-width:0; }
@media(max-width:1080px) {
  .page-heading { display:block; }
  .congress-board { display:none; }
  .hero-copy-footer { display:flex; justify-content:space-between; align-items:flex-end; gap:20px; }
  .hero-copy-footer .outline-button { margin:0; flex-shrink:0; }
  .desktop-break { display:none; }
}
@media(min-width:1500px) {
  .race-overview { grid-template-columns:minmax(0,1fr) 310px; }
}
@media(max-width:1200px) {
  main { padding-left:27px; padding-right:27px; }
  .race-overview { grid-template-columns:minmax(0,1fr) 245px; gap:16px; }
  .race-map-panel { padding:19px 17px 0; }
  .race-state-detail { margin:0 -17px; padding:18px 17px; }
  .map-modes button { padding:8px 7px; font-size:10px; }
  .map-toolbar { gap:8px; }
  .map-race-count { font-size:8px; }
  .state-jump { margin-left:auto; }
  .priority-panel { padding:18px; }
  .priority-panel h2 { font-size:22px; }
  .race-map-panel>.panel-header h2 { font-size:23px; }
}
@media(max-width:1020px) {
  .race-overview { grid-template-columns:minmax(0,1fr); }
  .race-overview>.right-stack { display:grid; grid-template-columns:1.15fr 1fr; gap:17px; }
  #priority-races { max-height:290px; }
  .stats { grid-template-columns:1fr 1fr; }
  .stats .stat:nth-child(2) { border-right:0; }
  .stats .stat:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .state-jump { margin-left:0; }
  .map-race-count { margin-left:auto; }
}
@media(max-width:760px) {
  .sidebar { border-top:0; background:#091d41; padding:14px 18px; min-height:66px; }
  .brand { margin:0; min-height:36px; }
  .brand-wordmark { font-size:26px; }
  .sidebar nav { gap:18px; }
  .sidebar nav a { font-size:0; padding:0; gap:0; }
  .sidebar nav a .nav-icon { color:#a9bedf; }
  .sidebar nav a.active .nav-icon { color:white; }
  .topbar { border-top:3px solid var(--red); height:44px; padding:0 18px; font-size:8px; }
  .election-date { font-size:7px; }
  .election-date b { font-size:9px; }
  main { padding:23px 15px 0; }
  .page-heading { padding-bottom:20px; }
  .page-heading h1 { font-size:39px; margin:13px 0; }
  .page-heading p { font-size:10px; line-height:1.8; max-width:215px; }
  .page-heading .eyebrow { font-size:7px; letter-spacing:1.1px; }
  .heading-tools .outline-button { font-size:9px; min-height:31px; padding:6px 9px; }
  .notice { margin-bottom:22px; padding:10px 11px; }
  .notice strong { font-size:10px; }
  .notice .source-headline { font-size:11px; line-height:1.6; }
  .notice .source-policy { font-size:9px; }
  .notice #mode-label { font-size:9px; }
  .notice .certification-summary { font-size:8px; padding:2px 5px; }
  .notice span:not(.notice-symbol) { font-size:9px; line-height:1.8; }
  .notice-symbol { font-size:22px; }
  .tabs { gap:17px; }
  .tabs button { font-size:10px; padding-bottom:11px; }
  .race-map-panel { padding:18px 13px 0; }
  .race-map-panel>.panel-header { align-items:center; gap:7px; }
  .race-map-panel>.panel-header h2 { font-size:21px; }
  .race-map-panel>.panel-header .eyebrow { font-size:7px; letter-spacing:.8px; }
  .race-map-panel>.panel-header .outline-button { font-size:9px; padding:5px 7px; min-height:31px; }
  .race-map-panel .panel-intro { font-size:10px; }
  .map-modes { margin-top:15px; padding:4px; gap:3px; }
  .map-modes button { flex:1 1 27%; font-size:10px; padding:8px 6px; min-height:33px; }
  .map-toolbar { gap:10px; align-items:center; }
  .priority-toggle { font-size:9px; }
  .map-race-count { font-size:8px; }
  .state-jump { width:100%; }
  .state-jump select { width:100%; min-height:33px; font-size:11px; }
  .geographic-map { margin:12px -6px 7px; width:calc(100% + 12px); }
  .geo-label { font-size:19px; }
  .label-box { width:42px; height:30px; transform:translate(-4px,-3px); }
  .geo-state .state-shape { stroke-width:2.5; }
  .nation-outline { stroke-width:5; }
  .map-legend { gap:12px; font-size:8px; }
  .map-legend i { width:7px; height:7px; }
  .map-caption { font-size:8px; margin:12px 0 15px; }
  .race-state-detail { margin:0 -13px; padding:17px 13px; }
  .race-state-heading h3 { font-size:21px; }
  .race-state-heading .chip { font-size:7px; padding:5px 7px; }
  .race-state-heading .eyebrow { font-size:7px; }
  .race-state-detail>p { font-size:10px; }
  .race-row { min-height:73px; }
  .race-inspect { padding:13px 0; }
  .race-inspect>strong { font-size:13px; }
  .race-feed { font-size:9px; }
  .race-state-detail .state-detail-actions { flex-wrap:wrap; gap:12px; }
  .state-detail-actions .text-button { font-size:9px; }
  .race-overview>.right-stack { grid-template-columns:1fr; }
  .priority-panel { padding:20px; }
  .priority-panel h2 { font-size:24px; }
  #priority-races { max-height:345px; }
  .context-card h3 { font-size:24px; }
  .context-card p { font-size:11px; }
  .stats { margin-top:22px; }
  .stat { padding:16px 13px; }
  .stat-label { font-size:7px; }
  .stat-value { font-size:28px; }
  .stat p { font-size:9px; }
  #race-picker { padding:21px 18px; }
  #race-picker>h2 { font-size:25px; line-height:1.2; }
  .picker-intro { font-size:11px; }
  .picker-controls { grid-template-columns:1fr 1fr; gap:11px; margin-top:17px; }
  .picker-controls>label:first-child { grid-column:1/-1; }
  .picker-summary { align-items:flex-start; font-size:9px; }
  .picker-summary .text-button { font-size:9px; white-space:nowrap; }
  .race-picker-list { max-height:260px; padding-right:5px; }
  .race-picker-list .race-inspect { grid-template-columns:47px 1fr; }
  .race-picker-list .race-row-detail { font-size:10px; }
  .picker-footer { flex-direction:column; align-items:stretch; gap:12px; padding-top:15px; }
  .picker-footer p { font-size:9px; max-width:none; }
  .picker-footer .solid-button { font-size:10px; }
  body.embed .page-heading h1 { font-size:35px; }
}
