/* Two complete palettes; light is the first-visit default. */
.header-actions .theme-toggle{display:inline-flex;width:auto;min-width:42px;padding:0 12px;gap:7px;white-space:nowrap;font-size:12px;font-weight:600;border:1px solid #42483a}
.theme-toggle svg{width:19px;height:19px}
@media(max-width:1150px){.header-actions .theme-toggle{width:33px;min-width:33px;padding:0}.theme-toggle span{display:none}}
@media(max-width:640px){.header-actions .theme-toggle{width:35px;min-width:35px}.header-actions{gap:7px}}
html[data-theme=light]{color-scheme:light;--paper:#f7f7ef;--ink:#20271d;--muted:#4e5943;--line:#cbd1bf;--orange:#dfee56;--dark:#dfee56;--olive:#e9eddb}
html[data-theme=light] body{background:#f7f7ef;color:#20271d}
html[data-theme=light] .header{border-color:#c7cfb9}
html[data-theme=light] .brand-wave,html[data-theme=light] .footer .brand-wave{color:#64761c}
html[data-theme=light] .brand small,html[data-theme=light] .region{color:#4d5841}
html[data-theme=light] .nav a{color:#46533a}
html[data-theme=light] .nav a:hover{color:#172010}
html[data-theme=light] .nav a.active{color:#253215;border-color:#768c27}
html[data-theme=light] .header-actions .icon-button{background:#e8eddd;color:#2f3c21}
html[data-theme=light] .header-actions .icon-button:hover{background:#d9e3c7}
html[data-theme=light] .header-actions .theme-toggle{border-color:#a5b38f}
html[data-theme=light] .intro .eyebrow{color:#4e5a41}
html[data-theme=light] .intro h1 .orange{color:#20271d}
html[data-theme=light] .night-tagline{color:#46533a}
html[data-theme=light] .intro-aside>small{color:#4d5940}
html[data-theme=light] .random-button{color:#2a381c;border-color:#8e9f75;background:#fcfdf7}
html[data-theme=light] .random-button svg{color:#566d1f}
html[data-theme=light] .random-button:hover{background:#e4eccf;border-color:#607b27}
html[data-theme=light] .console{background:#eef1e5;border-bottom-color:#b6c49e}
html[data-theme=light] .console:before{background:linear-gradient(0deg,#f0f3e5aa,#f0f3e5cc 45%,#f0f3e5 95%),var(--mood-image) center 67%/cover no-repeat;opacity:.65;filter:grayscale(1)}
html[data-theme=light] .console-step{color:#445537}
html[data-theme=light] .day-tabs button{background:#fbfcf5;border-color:#b7c6a2;color:#2f3c21}
html[data-theme=light] .day-tabs [data-day] svg{color:#3d5229}
html[data-theme=light] .day-tabs button:hover{background:#e2eccf;border-color:#7e963e}
html[data-theme=light] .day-tabs button.selected{background:#dfee56;color:#19210c;border-color:#829634}
html[data-theme=light] .day-tabs [data-day].selected svg{color:#19210c}
html[data-theme=light] .console-guide h2{color:#202c17;text-shadow:none}
html[data-theme=light] .console-guide>p{color:#3f5130;text-shadow:none}
html[data-theme=light] .console-guide .console-note{color:#3e502f;background:#f6f9efdb}
html[data-theme=light] .now-card{background:linear-gradient(0deg,#f2f6e9bb,transparent 65%)}
html[data-theme=light] .now-card:before{border-color:#94a65d;box-shadow:0 0 0 15px #eef1e5,0 0 0 16px #bdca9b}
html[data-theme=light] .night-dial{border-color:#7e954b;background:repeating-conic-gradient(from 0deg,#70892c88 0deg 1deg,transparent 1deg 6deg)}
html[data-theme=light] .night-signal{filter:brightness(.44) saturate(.7);opacity:.85}
html[data-theme=light] .hero-art{border-color:#bac7a6}
html[data-theme=light] .now-info .micro{color:#405330}
html[data-theme=light] .now-info h2{color:#1e2a14}
html[data-theme=light] .now-info>p:not(.micro){color:#465b35}
html[data-theme=light] .hero-heart{color:#485e35}
html[data-theme=light] .hero-heart:hover{background:#dce8cb}
html[data-theme=light] .play-button{background:#dfee56;color:#1b240c;border:1px solid #80942d}
html[data-theme=light] .play-button:hover{background:#d3e747;border-color:#5d7821}
html[data-theme=light] .preset-heading>.micro{color:#26331b}
html[data-theme=light] .preset-heading .text-button{color:#40562d}
html[data-theme=light] .preset{background:#fcfdf7;border-color:#bbc8a7;color:#27361c}
html[data-theme=light] .preset strong{color:#26341b}
html[data-theme=light] .preset small,html[data-theme=light] .preset-number{color:#4c6039}
html[data-theme=light] .preset:hover{background:#e7efd8;border-color:#859e4d}
html[data-theme=light] .preset.selected{background:#dfee56;border-color:#8a9f35}
html[data-theme=light] .preset.selected strong,html[data-theme=light] .preset.selected small,html[data-theme=light] .preset.selected .preset-number{color:#1b240c}
html[data-theme=light] .discover{border-top-color:#c2ceb0}
html[data-theme=light] .section-heading .eyebrow{color:#4c6039}
html[data-theme=light] .section-heading h2{color:#26331b}
html[data-theme=light] .section-heading>.text-button{color:#435c2e}
html[data-theme=light] .genre-feature{border-color:#7e8d6b}
html[data-theme=light] .genre-feature:hover{border-color:#556f27}
html[data-theme=light] .genre-feature-play{color:#dfee56}
html[data-theme=light] .station-count{color:#465d31}
html[data-theme=light] .search-field{background:#fffef8;border-color:#98ac7a}
html[data-theme=light] .search-field input{color:#26351a}
html[data-theme=light] .search-field input::placeholder{color:#526a3c}
html[data-theme=light] .search-field svg,html[data-theme=light] .search-field kbd{color:#526a3c}
html[data-theme=light] .search-field kbd{border-color:#b9cba1}
html[data-theme=light] .search-field:focus-within{border-color:#617f25;box-shadow:0 0 0 2px #dfee5666}
html[data-theme=light] .filter-favorite{background:#edf3e1;border-color:#9eb580;color:#354e21}
html[data-theme=light] .filter-favorite[aria-pressed=true]{background:#dfee56;color:#19220b}
html[data-theme=light] .genre-filters button{background:#f7fbf0;border-color:#b2c59a;color:#3e5828}
html[data-theme=light] .genre-filters button:hover{background:#e6f0d4}
html[data-theme=light] .genre-filters button.selected{background:#dfee56;border-color:#7f9a2c;color:#19220b}
html[data-theme=light] .station-card{background:#fcfef7;border-color:#b3c79b}
html[data-theme=light] .station-card:hover{background:#f0f7e5;border-color:#7e9c4a}
html[data-theme=light] .station-card.current{background:#edf4da;border-color:#819c32;box-shadow:inset 3px 0 #819c32}
html[data-theme=light] .station-copy strong{color:#283c19}
html[data-theme=light] .station-copy small,html[data-theme=light] .station-card .card-favorite{color:#4b6836}
html[data-theme=light] .station-card .card-play{background:#dfee56;color:#1b250c;border:1px solid #8ba23c}
html[data-theme=light] .station-art.has-logo{border-color:#b9cba5}
html[data-theme=light] .collection-banner{background:#e5efcf;color:#304c1c}
html[data-theme=light] .outline-button{border-color:#8fa971;color:#2d491a}
html[data-theme=light] .empty-state p,html[data-theme=light] .catalog-error{color:#4a6536}
html[data-theme=light] .manifesto{border-color:#b8cda0}
html[data-theme=light] .manifesto-wave{color:#718a28}
html[data-theme=light] .manifesto h2{color:#293c1a}
html[data-theme=light] .manifesto p,html[data-theme=light] .footer p,html[data-theme=light] .footer>small{color:#4b6537}
html[data-theme=light] .footer .text-button{color:#3e5928}
html[data-theme=light] .player{background:#f9fcf1;border-color:#8fa975;color:#263f16;box-shadow:0 6px 25px #263b1522}
html[data-theme=light] .player-info .micro{color:#4d6a35}
html[data-theme=light] .is-playing .player-info .micro{color:#7a3d1c}
html[data-theme=light] .player-info strong{color:#213a12}
html[data-theme=light] .player-info>span:last-child{color:#476431}
html[data-theme=light] .player .icon-button:hover{background:#e0edcc}
html[data-theme=light] .next-station{background:#edf4df;border-color:#9fb986;color:#324f1d}
html[data-theme=light] .next-station:hover{background:#dfedc8}
html[data-theme=light] .player input[type=range]{background:#a2b785}
html[data-theme=light] .player input[type=range]::-webkit-slider-thumb{background:#627e24}
html[data-theme=light] .player .timer-button{color:#4b6732}
html[data-theme=light] .timer-button.active{color:#6d4d17}
html[data-theme=light] .player-error{color:#9a3c1c}
html[data-theme=light] .toast{background:#dfee56;color:#22310e;border-color:#97af3b}
html[data-theme=light] dialog{background:#f7fbef;border-color:#91ad73;color:#2a411c}
html[data-theme=light] dialog::backdrop{background:#17290dbb}
html[data-theme=light] .dialog-heading .eyebrow,html[data-theme=light] .dialog-subtitle,html[data-theme=light] .about-copy,html[data-theme=light] .about-copy .muted,html[data-theme=light] #preset-selects label{color:#486532}
html[data-theme=light] .dialog-heading h2,html[data-theme=light] .about-copy h3{color:#2d451b}
html[data-theme=light] .dialog-heading .icon-button{background:#e4efcf;color:#3a5a23}
html[data-theme=light] #preset-selects select{background:#fcfff6;border-color:#a3bf83;color:#2c4718}
html[data-theme=light] .primary-button{background:#dfee56;color:#20300c;border:1px solid #8aa536}
html[data-theme=light] .timer-options button{background:#e7f0d6;border-color:#a3bd82;color:#385725}
html[data-theme=light] .timer-options button:hover{background:#d7e9ba}
.header-actions .theme-toggle{border-radius:8px}
@media(max-width:1150px){.header-actions .theme-toggle{border-radius:50%}}
.manifesto>.micro{color:#bac6ab}
html[data-theme=light] .manifesto>.micro{color:#4b6537}
/* Contain the hero artwork and let station details determine their own height. */
.console{padding:24px;gap:28px;border:1px solid #34382e;border-radius:18px;min-height:0;align-items:start}
.console:before{inset:0;border-radius:inherit}
.console-left{padding:3px 0 0}
.console-step{margin-left:4px}
.console-guide{padding:24px 4px 0;min-height:0}
.console-guide .console-note{margin-left:0;padding:8px 10px}
.now-card{display:grid;grid-template-columns:minmax(0,1fr) 62px;grid-template-rows:250px auto;gap:12px;min-height:0;padding:0 6px 4px;align-items:center;align-content:start;overflow:visible}
.now-card .now-info{position:static;grid-column:1;grid-row:2;min-width:0}
.now-card .hero-play{position:static;grid-column:2;grid-row:2;justify-self:end;margin:0}
.night-dial,.now-card:before{top:18px}
.hero-art{top:94px}
.night-signal{top:73px}
.hero-heart{top:14px;right:7px}
html[data-theme=light] .console{background:#eef1e5;border-color:#c2ccb2}
html[data-theme=light] .console-guide .console-note{margin-left:0}
@media(max-width:900px){.console{padding:22px;gap:22px}.now-card{grid-template-columns:minmax(0,1fr) 50px;grid-template-rows:220px auto;gap:12px}.night-dial,.now-card:before{top:18px}.hero-art{top:81px}.night-signal{top:61px}.now-card .hero-play{width:50px;height:50px}.hero-heart{right:4px;top:12px}}
@media(max-width:640px){.console{padding:18px 14px;border-radius:15px;gap:17px}.console-left{padding:0}.console-step{margin-left:1px}.console-guide{padding:20px 1px 0;min-height:0}.console-guide .console-note{margin-left:0;padding:7px 8px;max-width:none}.now-card{display:grid;grid-template-columns:minmax(0,1fr) 124px;grid-template-rows:minmax(100px,auto) 44px;gap:12px;min-height:172px;height:auto;margin-top:0;padding:0;overflow:visible}.now-card .now-info{grid-row:1;grid-column:1;position:static;align-self:center}.now-card .hero-play{grid-row:2;grid-column:1;justify-self:start;position:static;width:44px;height:44px}.night-dial,.now-card:before{width:112px;height:112px;top:20px;left:auto;right:4px;transform:none}.hero-art{width:44px;height:44px;top:54px;left:auto;right:38px;transform:none}.night-signal{top:36px;left:auto;right:0;width:120px;height:80px;transform:none}.hero-heart{top:auto;bottom:5px;left:58px;right:auto;width:29px;height:29px}.now-card .now-info h2{font-size:21px}.now-card .now-info .micro{font-size:10px}}
@media(max-width:640px){.now-card{grid-template-columns:minmax(0,1fr) 136px}.night-dial,.now-card:before{right:12px}.hero-art{right:46px}.night-signal{right:8px}}
.now-card,html[data-theme=light] .now-card{background:none}
/* Separate the persistent player from the scrolling page in both themes. */
.player{background:#272b21;border:1px solid #798163;border-top:2px solid #dfee56;box-shadow:0 -8px 28px #0007,0 10px 34px #0008}
html[data-theme=light] .player{background:#ffffff;border:1px solid #7e8b6d;border-top:3px solid #657b2b;box-shadow:0 -7px 24px #26381826,0 9px 30px #26381824}
html[data-theme=light] .player-info strong{color:#1a2810}
html[data-theme=light] .player-info .micro,html[data-theme=light] .player-info>span:last-child{color:#425833}
html[data-theme=light] .player .next-station{background:#edf2e3;border-color:#7c9261}
html[data-theme=light] .player .icon-button:hover{background:#e2ebd4}
/* Presets use the same card scale and responsive columns as the catalog. */
.presets{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.preset{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;row-gap:0;align-content:center;justify-items:stretch;min-height:108px;padding:17px 14px;border-radius:12px;text-align:left}
.preset .preset-art{grid-column:1;grid-row:1/3;width:56px;height:62px;border-radius:8px;margin:0;align-self:center}
.preset strong{grid-column:2;grid-row:1;align-self:end;font-size:16px;font-weight:650;line-height:1.3;letter-spacing:-.2px;padding-right:36px;max-width:none}
.preset small{grid-column:2;grid-row:2;align-self:start;font-size:13px;line-height:1.5;margin-top:7px;padding-right:25px}
.preset-number{display:none}.preset .bars{display:none!important}
.preset-action{position:absolute;top:11px;right:10px;display:grid;place-items:center;width:34px;height:34px;margin:0;border-radius:50%;background:#dfef56;color:#11160a;font-size:0;line-height:0}
.preset-action svg{display:block;width:20px;height:20px;margin:0}
.preset.selected .preset-action{background:#1e2811;color:#dfef56}
html[data-theme=light] .preset-action{border:1px solid #8ba23c;background:#dfee56;color:#1b250c}
html[data-theme=light] .preset.selected .preset-action{background:#2a3a16;color:#dfee56;border-color:#2a3a16}
@media(max-width:1200px){.presets{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.presets{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.presets{gap:9px}.preset{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:0;min-height:125px;padding:12px 33px 12px 9px}.preset .preset-art{width:42px;height:42px;margin:0 0 8px;align-self:flex-start}.preset strong{font-size:14px;line-height:1.3;letter-spacing:-.15px;padding:0;align-self:stretch;overflow-wrap:normal;word-break:normal}.preset small{font-size:12px;margin-top:5px;padding:0;align-self:flex-start}.preset-action{width:30px;height:30px;right:7px;top:11px}.preset-action svg{width:18px;height:18px}}
