.chart-page{background:radial-gradient(ellipse at 80% 0,#39245244,transparent 45%),#090c12;color:#f2f3f7}.chart-hero{padding:65px 0 45px}.hero-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:50px;align-items:center}.chart-hero h1{font-size:clamp(3rem,7vw,6.8rem);line-height:1;letter-spacing:-.065em;margin:20px 0}.chart-hero em{font-style:normal;color:#bdff65}.chart-hero .lead{max-width:38ch}.chart-launch{border:1px solid #a395ff50;border-radius:24px;background:linear-gradient(145deg,#342744,#151922);padding:35px;box-shadow:0 20px 70px #0004}.chart-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#bdff65;margin-right:9px}.chart-launch strong{display:block;font-size:2.3rem;line-height:1.15;margin:25px 0 15px;letter-spacing:-.04em}.chart-launch p,.chart-launch small{color:#c0c4d1}.chart-rules{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:35px 0 50px;border-bottom:1px solid #ffffff20}.chart-rules article>span{font-size:.72rem;letter-spacing:.13em;color:#a395ff}.chart-rules h2{font-size:1.35rem;letter-spacing:-.03em}.chart-rules p,.chart-notes p{color:#b4bece;font-size:.95rem;line-height:1.7}.chart-results{padding:35px;border:1px solid #bdff6530;border-radius:20px;background:#bdff6505;margin:45px 0}.chart-results h2{font-size:clamp(1.5rem,3vw,2.3rem)}.chart-results li{padding:12px 0;border-bottom:1px solid #ffffff15}.chart-ballot{scroll-margin-top:25px}.ballot-heading{display:flex;align-items:center;justify-content:space-between}.ballot-heading h2{font-size:3rem;letter-spacing:-.05em;margin:12px 0}.ballot-heading p{color:#b4bece}.chart-pill{padding:10px 15px;border:1px solid #ffffff25;border-radius:30px;white-space:nowrap}.chart-controls{display:grid;grid-template-columns:2fr 1fr;gap:20px;margin:25px 0}.chart-controls label{display:grid;gap:8px;font-size:.85rem}.chart-controls input,.chart-controls select{font:inherit;color:#f2f3f7;background:#141a25;border:1px solid #ffffff30;padding:15px;border-radius:10px;width:100%;min-width:0}.chart-fair{font-size:.8rem;color:#a5afc0;max-width:90ch;line-height:1.6}#choices{padding:0;border:0;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:25px 0}.chart-choice{display:flex;align-items:center;gap:14px;min-width:0;padding:20px;background:#121923;border:1px solid #ffffff18;border-radius:12px;cursor:pointer}.chart-choice:hover{border-color:#a395ff}.chart-choice:has(input:checked){background:#bdff650b;border-color:#bdff65}.chart-choice input{accent-color:#bdff65;width:20px;height:20px;flex-shrink:0}.chart-choice div{min-width:0}.chart-choice strong,.chart-choice span,.chart-choice small{display:block;overflow-wrap:anywhere}.chart-choice strong{font-size:1.05rem}.chart-choice span{color:#bfc9d7;font-size:.9rem;margin-top:5px}.chart-choice small{color:#a395ff;font-size:.74rem;margin-top:8px}.vote-bar{position:sticky;bottom:16px;background:#202734f5;border:1px solid #a395ff70;border-radius:18px;padding:20px;display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:0 10px 50px #0009;backdrop-filter:blur(14px);z-index:4}.vote-bar span{display:block;color:#bfc9d7;font-size:.8rem;margin-top:5px}.vote-bar button:disabled{opacity:.55;cursor:default}.chart-notes{padding:55px 0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}#feedback{color:#bdff65;min-height:24px}#feedback.error{color:#ffb7aa}@media(max-width:700px){.hero-grid,.chart-rules,#choices{grid-template-columns:1fr}.hero-grid{gap:25px}.chart-hero{padding-top:30px}.chart-launch{padding:25px}.chart-rules{gap:16px}.chart-controls{grid-template-columns:1fr}.vote-bar{align-items:stretch;flex-direction:column;gap:12px;bottom:8px;padding:16px}.vote-bar button{width:100%}.chart-choice{padding:16px}.ballot-heading{align-items:flex-start;gap:10px}.chart-pill{font-size:.75rem}.chart-results{padding:22px}}

/* First edition ballot. */
.ballot-airtimes{padding:20px 22px;border:1px solid #bdff653b;border-radius:14px;background:#bdff6507;margin:22px 0}
.ballot-airtimes>strong{color:#d7ffad;font-size:1.1rem}
.ballot-airtimes p{color:#bfc9d7;font-size:.9rem;line-height:1.6;margin:10px 0}
.ballot-airtimes a{color:#d7ffad;font-weight:650}
.chart-choice .track-airtimes{margin-top:13px;padding-top:10px;border-top:1px solid #ffffff20}
.chart-choice .track-airtimes span{font-size:.76rem;color:#c2cbdb;margin-top:6px}
.chart-choice .track-airtimes strong{font-size:.86rem;color:#d7ffad;margin-top:3px;font-variant-numeric:tabular-nums}
.chart-page [hidden]{display:none!important}
.chart-page .chart-hero{padding:50px 0 45px;align-items:center}
.chart-page .hero-grid{grid-template-columns:1.15fr 1fr;gap:clamp(20px,5vw,64px)}
.chart-hero .button{margin:4px 0 0}
.chart-hero .eyebrow{margin:0}
.chart-hero h1{margin:16px 0}
.chart-hero .lead{max-width:33ch;margin:0 0 22px}
.chart-launch{background:radial-gradient(ellipse at 100% 0%,#59426b80,transparent 64%),#151821;padding:24px 28px}
.chart-clock{border-bottom:1px solid #ffffff29;padding-bottom:16px}
.chart-clock strong{font-size:clamp(29px,4vw,46px);margin:6px 0 0;font-variant-numeric:tabular-nums}
.chart-schedule{margin:12px 0}
.chart-schedule div{display:flex;align-items:baseline;gap:12px;justify-content:space-between;padding:6px 0}
.chart-schedule dt,.chart-launch small{color:#b8bec9;font-size:.85rem}
.chart-schedule dd{font-size:.92rem;margin:0;font-weight:700}
.chart-schedule .reveal-line dd{color:#c5ffa2}
.chart-rules{border-top:1px solid #ffffff24;grid-template-columns:1fr 2fr;gap:6px 32px;padding:24px 0}
.chart-rules h2{font-size:clamp(1.6rem,4vw,2.2rem);margin:0}
.chart-rules ol{margin:0;padding-left:25px}
.chart-rules li{margin:0 0 5px}
.chart-rules li::marker{color:#bdff65;font-weight:700}
.chart-rules>p{grid-column:2;margin:7px 0 0}
.chart-ballot{padding-top:38px}.chart-ballot>p{color:#bfc9d7}
.chart-pill{text-decoration:none;font-weight:650;color:#d3bfff}
.chart-pill:hover{text-decoration:underline}
.chart-ballot .button{margin:0;font:inherit;font-weight:700;border:0}
.chart-choice:has(input:focus-visible),.chart-page :is(select,input,button):focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.chart-notes h2{letter-spacing:-.04em;line-height:1.2}
/* Clear ballot controls and readable text against the station's dark background. */
.chart-page{--muted:#d1d9e6}
.chart-choice{background:#182231;border:2px solid #fff;box-shadow:0 4px 14px #0003}
.chart-choice:hover{background:#202d40;border-color:#d1c6ff}
.chart-choice strong{color:#fff;font-size:1.1rem}
.chart-choice span{color:#e2e9f3;font-size:.95rem}
.chart-choice small{color:#c9bcff;font-size:.82rem}
.chart-choice input{appearance:none;width:26px;height:26px;margin:0;border:2px solid #fff;border-radius:50%;background:#0b111b;display:grid;place-content:center}
.chart-choice input::before{content:"";width:12px;height:12px;border-radius:50%;background:#bdff65;transform:scale(0)}
.chart-choice input:checked{border-color:#bdff65}
.chart-choice input:checked::before{transform:scale(1)}
.chart-choice:has(input:checked){background:#263d24;border-color:#bdff65;box-shadow:inset 0 0 0 2px #bdff65}
.chart-choice:has(input:checked)>div>strong::after{content:"Selected ✓";display:block;margin-top:5px;color:#bdff65;font-size:.82rem;font-weight:750}
.chart-choice .track-airtimes{border-top-color:#8290a6}
.chart-choice .track-airtimes span{color:#d5dfed;font-size:.85rem}
.chart-choice .track-airtimes strong{color:#d7ffad;font-size:.95rem}
.chart-page .lead,.chart-rules p,.chart-notes p,.chart-ballot>p,.ballot-airtimes p{color:#d1d9e6}
.chart-schedule dt,.chart-launch small{color:#d1d9e6}
.chart-controls input,.chart-controls select{border-color:#8191aa;background:#182231}
.chart-controls input::placeholder{color:#bfcadb;opacity:1}
.chart-pill{background:#20283a;border-color:#a598c4;color:#e0d6ff}
.ballot-airtimes{background:#16251b;border-color:#759260}
.vote-bar{background:#1c293d;border-color:#b4a1ff}
.vote-bar span{color:#e0e7f1}
.vote-bar button:disabled{opacity:1;background:#35435b;color:#d6dfed}
@media(forced-colors:active){.chart-choice input{appearance:auto}.chart-choice input::before{display:none}.chart-choice:has(input:checked){outline:2px solid Highlight}}
@media(max-width:700px){
 .chart-page .hero-grid,.chart-rules{grid-template-columns:1fr}
 .chart-page .chart-hero{padding:28px 0;gap:26px}
 .chart-rules{gap:12px}
 .chart-rules>p{grid-column:1}
 .chart-launch{padding:19px}
 .ballot-heading{flex-wrap:wrap}
 .chart-ballot{padding-top:25px}
 .chart-controls{gap:12px}
 .chart-page header{flex-wrap:wrap;gap:5px}
 .chart-page header nav{gap:0}
 .chart-page header nav a{padding:8px 10px}
}
