/* Language, discovery, art and persistent radio share the same responsive shell. */
[hidden]{display:none!important}
select,input{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:6px;min-height:44px;padding:10px 12px;max-width:100%;min-width:0}
select:focus-visible,input:focus-visible,button:focus-visible{outline:3px solid var(--purple);outline-offset:3px}
.utility{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:12px}
.utility-motto{font-size:11px;font-weight:600;letter-spacing:1.5px;color:var(--purple)}
.utility-controls,.language-label{display:flex;align-items:center;gap:12px;min-width:0}
.language-label>span{font-size:12px;color:var(--muted)}
#language{font-size:14px;padding-block:8px;width:240px}
.eyebrow{padding-top:17px}.nav-tab b{font-weight:600}.nav-note .nav-copy{font-size:14px;color:var(--ink)}
.intro-sign>span:first-child{font-size:14px;color:var(--ink)}
.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 264px;gap:30px;align-items:start}
#content{min-width:0}.radio-column{min-width:0;position:sticky;top:16px;margin-top:36px}
#feed{grid-template-columns:repeat(2,minmax(0,1fr))}
.video-player{min-height:200px}
.featured{grid-column:1/-1}.featured .cover-wrap{min-height:350px}.featured h3{font-size:clamp(1.15rem,1.6vw,1.45rem)}
.search-tools{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px;margin-top:20px}
.search-tools label{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:12px;color:var(--muted)}
.search-tools input,.search-tools select{width:100%;font-size:14px}
.filters{padding-block:14px 24px}.filter{font-size:13px}
#radio-toggle,#radio-close,.radio-controls button,#art-close{min-height:44px;min-width:44px;border:1px solid var(--line);border-radius:6px;background:var(--paper);font:inherit;cursor:pointer}
#radio-toggle{display:none;align-items:center;gap:8px;padding:0 12px;font-size:14px}
#radio-panel{padding:18px 15px;border:1px solid var(--ink);background:var(--panel);box-shadow:4px 4px 0 var(--panel-shadow)}
.radio-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.radio-heading .small-title{font-size:10px;letter-spacing:1.4px;color:var(--purple)}
#radio-title{font:600 23px 'Unbounded',sans-serif;margin:8px 0;display:flex;gap:12px;align-items:center}
#radio-close{display:none;font-size:24px}
.radio-intro{font-size:13px;line-height:1.5;margin:8px 0 16px}.radio-screen{width:100%;height:200px;background:#241d2a;min-width:200px}
#radio-player{display:block;width:100%;height:200px;border:0}
#radio-track{font-size:13px;line-height:1.45;font-weight:600;margin-bottom:8px;overflow-wrap:anywhere}
#radio-status{font-size:12px;color:var(--purple);line-height:1.5;margin:8px 0}
.radio-controls{display:flex;gap:7px;flex-wrap:wrap}.radio-controls button{font-size:12px;padding:8px 11px;flex-grow:1}
.radio-controls button:first-child{background:var(--ink);color:var(--paper)}.radio-controls button:disabled{opacity:.5;cursor:default}
.radio-hint{font-size:11px;line-height:1.5;color:var(--muted);margin:15px 0 7px}
#radio-youtube{font-size:12px;display:inline-flex;align-items:center;min-height:44px;text-underline-offset:3px}
.equalizer{height:20px;display:inline-flex;align-items:center;gap:3px;color:var(--orange)}
.equalizer i{display:block;width:3px;height:5px;background:currentColor;border-radius:2px;transform-origin:center}
.equalizer i:nth-child(2){height:15px}.equalizer i:nth-child(3){height:10px}.equalizer i:nth-child(4){height:18px}
.radio-playing .equalizer i{animation:frequency .75s ease-in-out infinite alternate}.radio-playing .equalizer i:nth-child(2){animation-delay:-.35s}.radio-playing .equalizer i:nth-child(3){animation-delay:-.55s}.radio-playing .equalizer i:nth-child(4){animation-delay:-.15s}
@keyframes frequency{from{transform:scaleY(.25)}to{transform:scaleY(1)}}
#feed.art-grid{display:block;columns:2;column-gap:20px;margin-top:28px}
.art-grid .art-card{break-inside:avoid;margin-bottom:20px}
.art-card{min-width:0;border:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column}
.art-image{display:block;padding:0;width:100%;border:0;background:#201b25;position:relative;cursor:pointer}
.art-image img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.art-image>span{position:absolute;right:12px;bottom:12px;background:var(--paper);border-radius:50%;width:32px;height:32px;display:grid;place-items:center}
.art-card h3{font:600 18px/1.5 'Unbounded',sans-serif;margin:0 0 10px;overflow-wrap:anywhere}
.art-credit{font-size:13px;line-height:1.9;margin:0;color:var(--muted)}.art-credit a{display:inline-flex;align-items:center;min-height:44px;font-size:13px}
.art-changes{font-size:11px;color:var(--muted);line-height:1.5;margin:0 0 15px}
#art-dialog{width:min(1000px,calc(100% - 24px));max-height:92dvh;padding:20px;border:1px solid var(--ink);background:var(--paper);color:var(--ink);overflow:auto}
#art-dialog::backdrop{background:#211725dc}#art-close{display:block;margin:0 0 14px auto;padding:8px 18px;position:sticky;top:0;z-index:1}
#art-detail>img{display:block;width:100%;height:auto;max-height:60dvh;object-fit:contain;background:#201b25}
#art-title{font:600 clamp(18px,3vw,25px)/1.4 'Unbounded',sans-serif;overflow-wrap:anywhere}
@media(min-width:1101px) and (max-width:1280px){.content-layout{gap:22px;grid-template-columns:minmax(0,1fr) 252px}.featured{display:flex;grid-column:auto}.featured .cover-wrap{height:auto;min-height:0;aspect-ratio:1.65}.search-tools{grid-template-columns:1fr 1fr}.search-tools label:first-child{grid-column:1/-1}#feed.video-grid{grid-template-columns:1fr!important}}
@media(max-width:1100px){
 .content-layout{grid-template-columns:minmax(0,1fr);gap:0}.radio-column{position:static;margin:0}
 #radio-toggle{display:inline-flex}#radio-panel{display:none;position:fixed;top:72px;right:24px;width:320px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 88px);overflow:auto;z-index:30;box-shadow:6px 6px 0 #34291f25}
 #radio-panel.is-open{display:block}#radio-close{display:block}.radio-screen{height:200px}.utility{position:sticky;top:0;background:var(--paper);z-index:25;padding-block:8px;border-bottom:1px solid var(--line)}
 .featured{display:flex;grid-column:auto}.featured .cover-wrap{height:auto;min-height:0;aspect-ratio:1.65}.nav-note .nav-copy{display:none}
}
@media(max-width:650px){
 .utility{gap:8px}.utility-motto{display:none}.utility-controls{justify-content:space-between;width:100%;gap:8px}.language-label>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .language-label{flex:1;justify-content:flex-end}#language{width:240px;min-width:0}.tabs{gap:20px}.nav-tab{font-size:15px;gap:6px}.nav-tab span{font-size:10px}.nav-note{display:none}.intro h1{font-size:clamp(24px,6.4vw,36px);line-height:1.4}
 .search-tools{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 8px}.search-tools label:first-child{grid-column:1/-1}
 .search-tools select{padding-inline:8px;font-size:13px}.filter{font-size:12px;padding-inline:12px}
 #radio-panel{right:16px;top:68px;max-height:calc(100dvh - 80px)}.radio-hint{margin-top:10px}.section-top h2{font-size:20px}
 #art-dialog{padding:14px}#feed.art-grid{columns:1}
}
@media(prefers-reduced-motion:reduce){.radio-playing .equalizer i{animation:none}.radio-playing .equalizer{color:#38714b}}

#radio-video-toggle{display:flex;align-items:center;justify-content:center;min-height:44px;width:100%;padding:8px 12px;margin:0 0 12px;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink);font:inherit;font-size:13px;cursor:pointer}
#radio-consent{height:auto;min-height:0;margin-bottom:14px}

/* A small portable poster at the right edge of navigation. */
.nav{flex-wrap:wrap;gap:8px 20px}
#share-banner{width:220px;flex:0 0 auto;margin:7px 0 7px auto;border:0;border-radius:8px;background:#281735;overflow:hidden}
#share-banner img{height:auto;aspect-ratio:440/112;object-fit:contain}
@media(max-width:650px){.nav{padding-block:0 6px;gap:0 12px}.nav .tabs{flex-basis:100%;min-height:58px}#share-banner{width:174px;margin:3px 0 3px auto}}

#radio-source{font-size:11px;line-height:1.5;color:var(--muted);margin:4px 0 8px;overflow-wrap:anywhere}

/* Audio mode stays small; expanding the video restores the full panel. */
#radio-panel:not([data-video-expanded=true]){padding:12px}
#radio-panel:not([data-video-expanded=true]) .small-title,
#radio-panel:not([data-video-expanded=true]) .radio-intro,
#radio-panel:not([data-video-expanded=true]) .radio-hint{display:none}
#radio-panel:not([data-video-expanded=true]) #radio-title{font-size:18px;line-height:1.4;margin:0;gap:8px}
#radio-panel:not([data-video-expanded=true]) .radio-heading{margin-bottom:8px;min-height:32px}
#radio-panel:not([data-video-expanded=true]) #radio-video-toggle{margin-bottom:8px;padding:6px;font-size:14px}
#radio-panel:not([data-video-expanded=true]) #radio-track{font-size:14px;line-height:1.4;margin:8px 0 4px}
#radio-panel:not([data-video-expanded=true]) #radio-source{font-size:12px;margin:4px 0}
#radio-panel:not([data-video-expanded=true]) #radio-status{font-size:14px;line-height:1.4;margin:6px 0}
#radio-panel:not([data-video-expanded=true]) .radio-controls{gap:4px}
#radio-panel:not([data-video-expanded=true]) .radio-controls button{font-size:14px;padding:6px;min-height:44px}
#radio-panel:not([data-video-expanded=true]) #radio-youtube{font-size:12px;line-height:1.4;margin-top:4px;overflow-wrap:anywhere}
@media(min-width:1101px){.content-layout:has(#radio-panel:not([data-video-expanded=true])){grid-template-columns:minmax(0,1fr) 224px}}
@media(max-width:1100px){#radio-panel:not([data-video-expanded=true]){width:224px}}

.art-source-caption{font-size:11px;line-height:1.5;color:var(--art-source-gray,#686868);margin:0 0 8px}
.art-source-caption a{display:inline-flex;align-items:center;min-height:44px;color:inherit;font-size:inherit;text-underline-offset:3px}
.art-source-caption span{display:block;margin-top:-4px;margin-bottom:12px}

:root[data-theme=dark]{--art-source-gray:#b9b9b9}
@media(prefers-color-scheme:dark){:root:not([data-theme]){--art-source-gray:#b9b9b9}}
