.fcc-control{display:grid;grid-template-columns:var(--xpc-label-w) minmax(0,1fr);column-gap:14px;align-items:start;min-width:0}.fcc-label{padding-top:6px;color:var(--text-secondary);font-size:13px;font-weight:var(--weight-medium);line-height:1.2}.fcc-body{display:flex;flex-direction:column;gap:5px;min-width:0}.fcc-selected{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;color:var(--text-primary);font:var(--weight-semibold) 12.5px/1.2 var(--font-sans)}.fcc-selected span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fcc-selected button,.fcc-search-error button{flex:0 0 auto;padding:0;border:0;border-bottom:1px solid currentColor;border-radius:0;background:transparent;color:var(--purple-500);font:var(--weight-semibold) 11px/1.25 var(--font-sans);cursor:pointer}.fcc-combobox-wrap{position:relative;min-width:0}.fcc-input{width:100%;min-height:29px;padding:5px 7px;border:1px solid var(--xpc-hair);border-radius:0;background:var(--bg-primary);color:var(--text-primary);font:var(--weight-medium) 12.5px/1.2 var(--font-sans)}.fcc-input:focus-visible,.fcc-selected button:focus-visible,.fcc-search-error button:focus-visible{outline:2px solid var(--xpc-sel);outline-offset:2px}.fcc-list{position:absolute;z-index:30;top:calc(100% + 4px);right:0;left:0;max-height:176px;overflow-y:auto;border:1px solid var(--xpc-hair);background:var(--bg-primary);box-shadow:0 12px 28px color-mix(in srgb,var(--text-primary) 16%,transparent)}.fcc-option{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:34px;padding:6px 8px;border-bottom:1px solid var(--xpc-hair);color:var(--text-primary);font:var(--weight-semibold) 12px/1.2 var(--font-sans);cursor:pointer}.fcc-option:last-child{border-bottom:0}.fcc-option[data-active=true]{background:color-mix(in srgb,var(--purple-500) 10%,transparent)}.fcc-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fcc-option small{flex:0 0 auto;color:var(--text-muted);font-size:10px;font-weight:var(--weight-medium)}.fcc-list-note{padding:8px;color:var(--text-secondary);font:var(--weight-medium) 11.5px/1.35 var(--font-sans)}.fcc-search-error{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--color-rep);font:var(--weight-medium) 11.5px/1.35 var(--font-sans)}.fcc-status{min-height:14px;color:var(--text-muted);font:var(--weight-medium) 10.5px/1.3 var(--font-sans)}.fcc-status [role=alert]{color:var(--color-rep)}@media(prefers-reduced-motion:reduce){.fcc-input,.fcc-option,.fcc-selected button,.fcc-search-error button{transition:none}}.compare-recovery{display:flex;align-items:center;gap:16px;justify-content:space-between;border-top:1px solid var(--xpc-hair,#dedbe5);padding:16px 0;font:13px/1.5 var(--font-sans,Inter,system-ui,sans-serif);color:var(--text-secondary,#514c5b)}.compare-recovery p{margin:0;min-width:0;overflow-wrap:anywhere}.compare-recovery button{min-height:44px;flex-shrink:0;padding:9px 12px;border:1px solid var(--purple-500,#7c3aed);background:transparent;color:var(--purple-500,#7c3aed);font:inherit;font-weight:600;cursor:pointer;transition:background .15s ease}.compare-recovery button:hover:not([aria-disabled=true]){background:color-mix(in srgb,var(--purple-500,#7c3aed) 9%,transparent)}.compare-recovery button[aria-disabled=true]{color:var(--text-muted,#706978);border-color:var(--xpc-hair,#dedbe5);cursor:default}.compare-recovery button:focus-visible{outline:3px solid var(--purple-500,#7c3aed);outline-offset:3px}@media(max-width:420px){.compare-recovery{align-items:stretch;flex-direction:column;gap:8px}}@media(prefers-reduced-motion:reduce){.compare-recovery button{transition:none}}.race-three-way-disclaimer-note{background:color-mix(in srgb,var(--purple-500) 6%,transparent);border:1px solid color-mix(in srgb,var(--purple-500) 28%,var(--border-primary))}[data-theme=dark] .race-three-way-disclaimer-note{background:color-mix(in srgb,var(--purple-500) 8%,transparent);border:1px solid color-mix(in srgb,var(--purple-500) 22%,var(--border-primary))}.race-forecast-stack{max-width:var(--content-max);margin-top:var(--section-gap-sm)}.race-hero-panel{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:clamp(var(--space-lg),5vw,calc(var(--space-xl) * 1.35));align-items:center;font-family:var(--font-sans)}.race-hero-verdict,.race-hero-support{min-width:0}.race-probability-hero{display:flex;flex-direction:column;align-items:flex-start;font-family:var(--font-sans)}.race-probability-main{display:flex;align-items:flex-end;gap:clamp(var(--space-md),3vw,var(--space-xl));font-variant-numeric:tabular-nums;flex-wrap:wrap}.race-probability-favored{position:relative;display:inline-block;line-height:.85}.race-probability-number{font-family:var(--font-display);font-size:8.5rem;font-weight:var(--weight-display-number);line-height:.85;opacity:.88}.race-probability-percent{font-size:.45em;font-weight:var(--weight-extrabold);margin-left:-.05em;vertical-align:.55em}.race-probability-party{font-family:var(--font-display);font-size:calc(var(--sp-party-ratio) * 8.5rem);font-weight:var(--weight-black);line-height:1;margin-left:.06em;opacity:.82}.race-probability-underdog{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding-bottom:1.4rem;opacity:.8}.race-probability-underdog-number{font-family:var(--font-display);font-size:calc(var(--sp-trail-ratio, .5) * 8.5rem);font-weight:var(--weight-extrabold);line-height:1}.race-probability-underdog-party{font-family:var(--font-display);font-size:calc(var(--sp-party-ratio) * var(--sp-trail-ratio) * 8.5rem);font-weight:var(--weight-extrabold);margin-top:-.15em}.race-rating-badge-slot{display:block;margin-top:var(--space-md)}.race-hero-support{padding-left:clamp(var(--space-md),3vw,var(--space-xl));border-left:1px solid var(--border-primary)}.race-hold-panel{font-family:var(--font-sans);max-width:var(--content-max)}.race-hold-hero{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-md)}.race-hold-headline{font-family:var(--font-display);font-size:clamp(2.6rem,6vw,4.2rem);font-weight:var(--weight-black);line-height:.95;letter-spacing:-.02em}.race-hold-sub{margin:0;max-width:52ch;font-size:15px;line-height:1.5;color:var(--text-secondary)}.race-hold-candidates{display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-lg);margin-top:var(--space-xs)}.race-hold-candidate{display:inline-flex;align-items:center;gap:8px;font-size:1.15rem;font-weight:var(--weight-semibold);color:var(--text-primary)}.race-hold-dot{width:11px;height:11px;border-radius:50%;flex-shrink:0}.race-hold-dot.rc-dem{background:var(--dem-blue)}.race-hold-dot.rc-rep{background:var(--rep-red)}.race-hold-dot.rc-ind{background:var(--color-ind)}.race-hold-inc{font-size:.72em;font-weight:var(--weight-medium);letter-spacing:.04em;color:var(--text-muted);border:1px solid var(--border-primary);border-radius:3px;padding:1px 5px}.race-hold-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-sm)}.race-hold-meta .race-rating-badge-slot{display:flex;align-items:center;margin-top:0}.race-hold-margin{display:inline-flex;align-items:baseline;gap:8px;padding:5px 9px;border:1px solid var(--border-primary);background:var(--bg-elevated);font-variant-numeric:tabular-nums}.race-hold-margin-label{font-size:12px;font-weight:var(--weight-semibold);color:var(--text-muted)}.race-hold-margin-value{font-size:15px;font-weight:var(--weight-bold)}.race-page-section{max-width:var(--content-max)}.race-page-section--polls .race-module-title{display:none!important}.race-page-section--decomposition [role=img]{width:100%}.race-page-section--decomposition .section-header--ruled{margin-bottom:6px}.forecast-history-chart-shell astro-island>div>div:first-child{justify-content:flex-end!important}.forecast-history-chart-shell astro-island>div>div:first-child>div:first-child{display:none!important}.race-title-row[data-astro-cid-rwngip6y]{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md)}.race-title-row[data-astro-cid-rwngip6y] h1[data-astro-cid-rwngip6y]{min-width:0}.race-title-actions[data-astro-cid-rwngip6y]{display:flex;align-items:center;gap:12px;flex:0 0 auto;margin-top:2px}.race-title-row[data-astro-cid-rwngip6y] .sp-share{flex:0 0 auto}.race-module-empty{margin:0;font-size:14px;line-height:1.5;color:var(--text-secondary)}.race-page-section--polls table{min-width:620px}@media(max-width:1023px){.race-probability-number{font-size:6rem}.race-probability-party{font-size:calc(var(--sp-party-ratio) * 6rem)}.race-probability-underdog{padding-bottom:.9rem}.race-probability-underdog-number{font-size:calc(var(--sp-trail-ratio, .5) * 6rem)}.race-probability-underdog-party{font-size:calc(var(--sp-party-ratio) * var(--sp-trail-ratio) * 6rem)}}@media(max-width:767px){.race-header-zone[data-astro-cid-rwngip6y]{padding-top:26px;padding-bottom:24px;margin-bottom:0}.race-title-row[data-astro-cid-rwngip6y]{flex-direction:column;gap:10px}.race-title-row[data-astro-cid-rwngip6y] h1[data-astro-cid-rwngip6y]{font-size:var(--hero-billboard-size)!important;line-height:.9!important;letter-spacing:-.045em}.race-title-row[data-astro-cid-rwngip6y] h1[data-astro-cid-rwngip6y].race-title--long{font-size:calc(var(--hero-long-ratio) * var(--hero-billboard-size))!important;letter-spacing:-.035em}.race-forecast-stack{margin-top:0;padding-top:28px}#main-content .race-probability-hero .race-probability-main{flex-wrap:nowrap;gap:clamp(10px,3vw,14px)}#main-content .race-probability-hero .race-probability-number{font-size:var(--sp-lead-figure)!important}#main-content .race-probability-hero .race-probability-party{font-size:calc(var(--sp-party-ratio) * var(--sp-lead-figure))!important}#main-content .race-probability-hero .race-probability-underdog{padding-bottom:1.05rem!important}#main-content .race-probability-hero .race-probability-underdog-number{font-size:calc(var(--sp-trail-ratio, .5) * var(--sp-lead-figure))!important}#main-content .race-probability-hero .race-probability-underdog-party{font-size:calc(var(--sp-party-ratio) * var(--sp-trail-ratio) * var(--sp-lead-figure))!important}.race-title-actions[data-astro-cid-rwngip6y]{margin-top:0}}@media(min-width:768px)and (max-width:1023px){.race-title-row[data-astro-cid-rwngip6y]{flex-direction:column;gap:12px}.race-title-actions[data-astro-cid-rwngip6y]{margin-top:0}.race-title-row[data-astro-cid-rwngip6y] h1[data-astro-cid-rwngip6y].race-title--long{font-size:calc(var(--hero-long-ratio) * var(--hero-billboard-size))!important;line-height:.95!important;letter-spacing:-.035em}}@media(max-width:430px){.race-title-row[data-astro-cid-rwngip6y] .race-title-actions[data-astro-cid-rwngip6y]{grid-column:1 / -1}.race-hero-panel{grid-template-columns:1fr;gap:28px}.race-hero-support{padding-left:0;border-left:0;padding-top:22px;border-top:1px solid var(--border-primary)}.race-probability-main{flex-wrap:nowrap;gap:clamp(10px,3vw,14px)}#main-content .race-probability-hero .race-probability-number{font-size:var(--sp-lead-figure)!important}#main-content .race-probability-hero .race-probability-party{font-size:calc(var(--sp-party-ratio) * var(--sp-lead-figure))!important}#main-content .race-probability-hero .race-probability-underdog{padding-bottom:.85rem}#main-content .race-probability-hero .race-probability-underdog-number{font-size:calc(var(--sp-trail-ratio, .5) * var(--sp-lead-figure))!important}#main-content .race-probability-hero .race-probability-underdog-party{font-size:calc(var(--sp-party-ratio) * var(--sp-trail-ratio) * var(--sp-lead-figure))!important}.race-rating-badge-slot{margin-top:20px}.race-page-section--polls table{min-width:0}.race-poll-table{table-layout:auto!important}.race-poll-table col:nth-child(4),.race-poll-table col:nth-child(5),.race-poll-table thead th:nth-child(4),.race-poll-table thead th:nth-child(5),.race-poll-table tbody td:nth-child(4),.race-poll-table tbody td:nth-child(5){display:none}}.related-races-list{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.related-race-link{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--border-primary);text-decoration:none;color:var(--text-primary);font-size:13px;font-family:var(--font-sans);transition:border-color var(--transition-fast),background var(--transition-fast)}.related-race-link:hover{border-color:var(--text-primary);background:var(--bg-secondary);text-decoration:none}.related-race-name{font-weight:var(--weight-semibold)}.related-race-prob{font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;font-size:12px}.related-race-rating{font-weight:var(--weight-bold);font-size:12px}.related-nowcast-marker{display:inline-block;margin-left:12px;vertical-align:middle;padding:3px 10px;width:fit-content;background:color-mix(in srgb,var(--purple-500) 12%,transparent);font-size:11px;line-height:1.3;color:var(--purple-500);font-family:var(--font-sans);font-weight:var(--weight-medium);letter-spacing:normal;word-spacing:normal}@media(max-width:767px){.related-nowcast-marker{display:block;margin-left:0;margin-top:4px}}
