/* city.css */
/* Real photographs follow the selected city; lighting follows listener time. */
.advertise{background-image:linear-gradient(110deg,#102453cc,#20103677),var(--city-image)}
footer.glass{background-image:linear-gradient(90deg,#03081bf2,#11234f99),var(--city-image)!important}
.preview>span{font-size:11px}
.preview>div{flex-wrap:wrap;justify-content:center}
.location-note{max-width:1100px;margin:0 auto;padding:9px 20px;background:#090e1c;color:#cdd7e8;font-size:12px;line-height:1.5}
#useLocation:disabled{opacity:.65;cursor:wait}
.player .record{min-width:0}
.player .record>img{width:240px;height:240px;aspect-ratio:1;object-fit:contain;flex-shrink:0;background:#111827}
.player .track{min-width:0;flex:1}
.player .track h2{overflow-wrap:anywhere}
@media(max-width:1000px){.player .record>img{width:190px;height:190px}}
@media(max-width:760px){.player{grid-template-columns:minmax(0,1fr) 155px;gap:14px;padding:14px}.player .record>img{width:min(100%,220px);height:auto;aspect-ratio:1}.player .record{align-items:center}}
@media(max-width:420px){.player{grid-template-columns:minmax(0,1fr)}.player .record>img{width:230px;max-width:100%}.player .record{width:100%}.player .eq{width:100%;box-sizing:border-box}}
.skyline{object-position:center}
.welcome h2{text-transform:uppercase}
@media(max-width:760px){.welcome h2{font-size:clamp(20px,6vw,29px);letter-spacing:.16em}}

/* houston.css */
/* Dark navy surfaces with gold, blue, and violet accents. */
body[data-theme=morning]{--accent:#ffcf54;--glow:#ff9d16;--pane:rgba(9,24,43,.97);--edge:#ffffff22;--page:#101c30;--heroink:#fff;background:#060d1a}
body[data-theme=afternoon]{--accent:#30c4ff;--glow:#008cff;--pane:rgba(0,36,72,.95);--edge:#299ee0;--page:#169ee8;--heroink:#061b37;background:#82d7fc}
body[data-theme=night]{--accent:#bf64f5;--glow:#891cff;--pane:rgba(10,3,29,.96);--edge:#7833a8;--page:#100520;--heroink:#fff;background:#06021a}
.station{background:linear-gradient(135deg,transparent,var(--page)),var(--page)}
.gold{background:linear-gradient(#ffdf6a,#f6bb2e 60%,#d99a17);border-color:#ffda69;color:#071429}
.hero,body:not([data-page=home]) .hero{height:380px;overflow:visible}
.skyline,.skywash{border-radius:0;pointer-events:none}
.skyline{object-position:center 58%;filter:saturate(1.3)}
[data-theme=morning] .skywash{background:linear-gradient(#07132688 0%,#07132622 50%,#07132688)}
[data-theme=afternoon] .skywash{background:linear-gradient(#71d6ffb0,#00a4ed12 65%,#087bbb20)}
[data-theme=night] .skyline{filter:brightness(.46) saturate(1.5)}
[data-theme=night] .skywash{background:linear-gradient(#060224ed,#17084c55 65%,#43125a44)}
header{z-index:5;gap:14px;padding:22px}
header nav{gap:14px;font-size:14px}
.brand b{font-size:43px}
.main-menu{position:relative;font:600 14px 'Barlow Condensed',sans-serif}
.main-menu summary{cursor:pointer;list-style:none;padding:10px 4px;white-space:nowrap}
.main-menu summary::-webkit-details-marker{display:none}
.main-menu[open] summary{color:var(--accent);background:#091329;border-radius:5px}
.sitepages{position:absolute;right:0;top:34px;display:grid;grid-template-columns:1fr 1fr;width:330px;padding:10px;color:#fff;background:#090f24;box-shadow:0 12px 35px #0008;z-index:20}
.sitepages a{font:500 14px 'DM Sans',sans-serif;padding:12px}
.welcome,body:not([data-page=home]) .welcome{padding-top:12px}
.welcome h1,body:not([data-page=home]) .welcome h1{font-size:84px}
.welcome h2,body:not([data-page=home]) .welcome h2{font-size:32px;letter-spacing:.22em}
.welcome p,body:not([data-page=home]) .welcome p{display:block;font-size:12px}
#listenerNote{display:none!important}
.content{margin-top:-22px}
.preview{padding:5px 22px;font-size:9px;letter-spacing:.12em}
.preview>div{display:none}
.glass{border-radius:7px}
.rotation{margin-top:12px}
body[data-page=home] .djteam{display:none}
footer .cursive{color:var(--accent)}
.station,.preview{max-width:680px}
.content{padding:0 14px 14px;margin-top:-14px}
.hero,body:not([data-page=home]) .hero{height:340px}
header{display:grid;grid-template-columns:180px 1fr auto;gap:8px;padding:18px 16px;align-items:start}
header .brand{grid-row:1 / 3}
header nav{gap:11px;font-size:12px;justify-content:flex-end;padding-top:4px}
header #listen{grid-column:2;justify-self:end;font-size:13px;padding:8px 15px}
header .main-menu{grid-column:3;grid-row:1 / 3;font-size:12px}
.brand b{font-size:40px}.brand small{font-size:10px}.brand em{font-size:10px}.sax{font-size:35px}
.welcome h1,body:not([data-page=home]) .welcome h1{font-size:66px}
.welcome h2,body:not([data-page=home]) .welcome h2{font-size:29px;margin-top:5px}
.player{grid-template-columns:minmax(0,1fr) 210px;padding:12px;gap:14px}
.player .record{gap:14px;align-items:center}
.player .record>img{width:145px;height:145px}
.track h2{font-size:24px}.track>p{font-size:12px}.transport{gap:10px}.transport strong{font-size:11px}.transport small{display:none}
.play{width:52px;height:52px;font-size:22px}.volume{gap:5px;margin-top:12px}.volume input{width:80px}
.equalizer{padding:9px}.bands input{height:105px}.eqnote{font-size:9px}
.airrow{grid-template-columns:minmax(0,1fr) 165px;gap:9px;margin-top:10px}.onair{gap:13px;min-height:135px}.onair>img{width:125px}.onair>div{padding:12px 7px 10px 0}.onair h2{font-size:23px}.onair p{font-size:12px}
.clockcard{padding:12px;gap:8px}.clockcard strong{font-size:27px}.clockcard>span{font-size:27px}
.promos{gap:8px;margin-top:9px}.promo{padding:12px;min-height:145px}.promo h3{font-size:21px}.promo p{font-size:11px}.promo .cursive{font-size:30px}
.schedulecards{gap:8px}.schedulecards strong{font-size:15px}.schedulecards small,.schedulecards time{font-size:10px}.schedulecards img{width:40px;height:53px}
.rotation{padding:12px}.rotationcard{padding:8px;gap:9px}.rotationcard img{width:62px;height:62px}.rotationcard h3{font-size:18px}
footer{padding:15px 20px}footer .cursive{font-size:35px}
@media(max-width:760px){header{padding:16px 12px;gap:9px;flex-wrap:wrap}header .brand{margin-right:auto}header nav{display:flex;order:4;width:100%;justify-content:center;gap:22px;font-size:13px}.main-menu{font-size:13px}.brand b{font-size:33px}.brand small{font-size:9px}.brand em{font-size:9px}.sax{font-size:30px}header .gold{font-size:12px;padding:9px 12px}.hero,body:not([data-page=home]) .hero{height:335px}.welcome h1,body:not([data-page=home]) .welcome h1{font-size:64px}.welcome h2,body:not([data-page=home]) .welcome h2{font-size:28px}.sitepages{width:min(330px,calc(100vw - 24px))}.player .record>img{object-fit:contain}.promos{gap:6px}.preview{align-items:flex-start}}
@media(max-width:600px){header{display:flex;flex-wrap:wrap;align-items:center}header nav{order:4;width:100%;justify-content:center;padding:0;gap:20px}.hero,body:not([data-page=home]) .hero{height:315px}.welcome h1,body:not([data-page=home]) .welcome h1{font-size:58px}.player{grid-template-columns:minmax(0,1fr) 145px;gap:10px;padding:10px}.player .record{flex-direction:column;align-items:flex-start;gap:8px}.player .record>img{width:145px;height:145px;max-width:100%}.track h2{font-size:21px}.airrow{grid-template-columns:1fr}.clockcard{display:none}.schedulecards{grid-template-columns:1fr}.promos .small{font-size:10px;padding:6px}.promo{padding:9px}.promo h3{font-size:18px}.promo .cursive{font-size:26px}.sitepages{font-size:13px}.equalizer .bands input{height:130px}.eqnote{font-size:9px}}

/* player-polish.css */
/* Keep controls compact even when the artwork and track column grow. */
.player .equalizer{align-self:center;min-height:0;height:auto;display:block;padding:10px 9px;background:linear-gradient(145deg,#071423ee,#090716ed)}
.equalizer .bands{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:8px 0}
.equalizer .bands label{gap:5px;min-width:0}
.equalizer .bands input{height:94px;width:24px;margin:0;flex:none;accent-color:var(--accent)}
.equalizer .eqhead{font-size:12px;color:#fff;gap:5px}
.equalizer .bands b{font-size:12px;color:#fff}
.equalizer .bands small{font-size:10px;color:#e5eaf3}
.equalizer .eqnote{font-size:9px;line-height:1.3;color:#e5eaf3}
header nav[aria-label="Main navigation"]{background:#071426ef;color:#fff;border:1px solid #ffffff50;border-radius:6px;padding:8px 10px;gap:13px}
header nav[aria-label="Main navigation"] a{color:#fff}
.main-menu summary{background:#071426;color:#fff;border:1px solid #ffffff70;border-radius:6px;padding:8px 10px}
.main-menu[open] summary{color:#ffdc73}
.sitepages a{color:#fff}
.sitepages a:hover,.sitepages a[aria-current]{color:#071426;background:#ffdc73}
.pagepanel{scroll-margin-top:16px}
body[data-page=djs] .pagepanel,body[data-page=schedule] .pagepanel{min-height:0;padding:18px}
.pagepanel>h2:focus{outline:none}
.hero .skyline{object-position:center 62%;filter:saturate(1.08)}
body[data-theme=night] .hero .skyline{filter:saturate(1.12) brightness(.95)}
body[data-theme=night] .hero .skywash{background:linear-gradient(#08042370,transparent 65%)}
body[data-theme=morning] .hero .skywash{background:linear-gradient(#fff0cb99,#ffca4d22 58%,transparent)}
body[data-theme=afternoon] .hero .skywash{background:linear-gradient(#c4edff99,#18a6ee18 58%,transparent)}
.hero .welcome{text-shadow:0 1px 5px #ffffff80}
body[data-theme=night] .hero .welcome{text-shadow:0 2px 8px #000}
@media(max-width:600px){header nav[aria-label="Main navigation"]{gap:18px}.player .equalizer{align-self:start;margin-top:0}.equalizer .bands input{height:94px}.equalizer .eqnote{max-width:125px;margin:auto}}

/* expanded-eq.css */
.presets{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:12px}.presets button,#expandEQ{min-height:36px;border:1px solid #ffffff60;border-radius:6px;background:#10192e;color:#fff;font:600 12px 'DM Sans',sans-serif;padding:7px;cursor:pointer}.presets button[aria-pressed=true]{background:var(--accent);color:#081221;border-color:var(--accent);box-shadow:0 0 9px var(--glow)}.presets button:last-child{grid-column:1/-1}#presetStatus{font-size:11px;color:#ffda72;margin:9px 0}#expandEQ{width:100%;margin-bottom:9px}.frequency-panel{padding:16px;margin-top:8px}.frequency-panel .bands{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:8px;margin:16px 0 0}.frequency-panel .bands input{height:110px;width:32px;touch-action:none}.frequency-panel .bands output{font-size:11px}.frequency-panel .eqhead{font-size:13px}.volume input{min-height:44px;touch-action:pan-y;flex:1;min-width:70px}.volume{flex-wrap:wrap}.player .equalizer{width:100%}@media(max-width:600px){.frequency-panel .bands{grid-template-columns:repeat(5,minmax(0,1fr));row-gap:18px}.presets{grid-template-columns:1fr}.presets button:last-child{grid-column:auto}.frequency-panel .bands input{height:95px}.player .equalizer{align-self:center}}

/* hero-weather.css */
body[data-theme=evening]{--accent:#ffb779;--glow:#ec7952;--pane:rgba(41,17,39,.96);--edge:#bc725d;--page:#59304f;--heroink:#fff;background:#24162e}
body[data-theme=evening] .hero .skywash{background:linear-gradient(#35153250,#f3924f25,transparent)}
.hero .welcome,body:not([data-page=home]) .hero .welcome{position:absolute;left:16px;bottom:28px;text-align:left;padding:12px 16px;background:#081326e8;border:1px solid var(--accent);border-radius:9px;color:#fff;text-shadow:none;max-width:calc(100% - 32px);box-shadow:0 4px 20px #0005}
.hero .welcome h1,body:not([data-page=home]) .hero .welcome h1{font-size:43px;line-height:1.05;color:var(--accent);margin:0}
.hero .welcome h2,body:not([data-page=home]) .hero .welcome h2{font-size:19px;letter-spacing:.2em;margin:4px 0;color:#fff}
.hero .welcome p,body:not([data-page=home]) .hero .welcome p{display:block;font-size:9px;letter-spacing:.07em;line-height:1.5;margin:4px 0;color:#f2f4fb}
.houston-weather{display:flex;align-items:center;gap:8px;border-top:1px solid #ffffff35;margin-top:9px;padding-top:8px;color:#fff;font-size:11px;max-width:275px}
.houston-weather .weather-icon{font-size:26px;line-height:1;flex-shrink:0}.houston-weather a{display:block;font-size:9px;color:#d6deed;text-decoration:underline;margin-top:3px}
@media(max-width:600px){.hero .welcome,body:not([data-page=home]) .hero .welcome{left:12px;bottom:24px;padding:10px 13px}.hero .welcome h1,body:not([data-page=home]) .hero .welcome h1{font-size:35px}.hero .welcome h2,body:not([data-page=home]) .hero .welcome h2{font-size:17px}.houston-weather{font-size:10px}}
/* Compact greeting mockup, shared by desktop and phone layouts. */
.hero .welcome,body:not([data-page=home]) .hero .welcome{width:200px;padding:9px 11px;border-radius:7px}
.hero .welcome h1,body:not([data-page=home]) .hero .welcome h1{font-size:28px;line-height:1.1;white-space:nowrap}
.hero .welcome h2,body:not([data-page=home]) .hero .welcome h2{font-size:13px;margin:3px 0;letter-spacing:.18em}
.hero .welcome #tagline{display:none}
.houston-weather{gap:5px;margin-top:5px;padding-top:5px;font-size:10px}
.houston-weather .weather-icon{font-size:18px}
.houston-weather>div{min-width:0}
.houston-weather .weather-text{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.houston-weather a{font-size:8px;margin-top:2px}

/* community.css */
.community-row{display:grid;grid-template-columns:210px minmax(0,1fr);gap:10px;margin:0 0 12px}
.community-row .welcome{position:static;width:auto;max-width:none;text-align:left;padding:12px;color:#fff;background:var(--pane);text-shadow:none}
.community-row .welcome h1{font:400 29px/1.1 'Allura',cursive;color:var(--accent);margin:0}
.community-row .welcome h2{font-size:13px;letter-spacing:.18em;margin:4px 0;color:#fff}
.community-row #tagline{display:none!important}
.community-row .houston-weather{font-size:10px}
.news-ticker{min-width:0;overflow:hidden;padding:12px;display:flex;flex-direction:column;justify-content:center}
.news-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--accent);font:600 14px 'Barlow Condensed',sans-serif}
.news-heading button{background:#10192e;color:#fff;border:1px solid #ffffff70;border-radius:5px;padding:6px 10px;min-height:32px;font-size:11px}
.news-window{overflow:hidden;margin:12px 0}
.news-track{display:flex;width:max-content;gap:40px;animation:news-scroll var(--news-duration,70s) linear infinite}
.news-track a,.news-track span{font-size:13px;color:#fff;white-space:nowrap}.news-track a{text-decoration:underline;text-underline-offset:3px}
.news-status{font-size:9px;color:#dae0ed}
.news-ticker:hover .news-track,.news-ticker:focus-within .news-track,.news-ticker.paused .news-track{animation-play-state:paused}
.news-ticker:focus-within .news-window,.news-ticker.paused .news-window{overflow-x:auto}.news-ticker:focus-within .news-track,.news-ticker.paused .news-track{animation:none}
@keyframes news-scroll{from{transform:translateX(0)}to{transform:translateX(-100%)}}
@media(max-width:600px){.community-row{grid-template-columns:1fr}.community-row .welcome{display:grid;grid-template-columns:1fr 1fr;column-gap:12px;align-items:center}.community-row .welcome h2{grid-column:1}.community-row .houston-weather{grid-column:2;grid-row:1/3;border:0;margin:0;padding:0}.news-ticker{padding:10px 12px}}
@media(prefers-reduced-motion:reduce){.news-track{animation:none}.news-window{overflow-x:auto}}

.news-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}
.news-categories button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:66px;padding:8px 4px;border:1px solid var(--edge);border-radius:6px;background:#10192e;color:#fff;font:600 12px 'DM Sans',sans-serif}
.news-categories button>span:first-child{font-size:23px}
.news-categories button[aria-pressed=true]{border-color:var(--accent);background:#25354c;color:var(--accent)}
.news-categories button:focus-visible{outline:2px solid #fff;outline-offset:3px}
.news-status{line-height:1.5}
@media(max-width:420px){.news-categories{gap:4px}.news-categories button{font-size:10px}}

.ticker-label{margin-top:12px;font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--accent)}
.has-breaking .ticker-label{color:#ffb4b4}
.news-track .breaking-badge{display:inline-block;margin-right:8px;padding:3px 6px;border-radius:3px;background:#a71f2d;color:#fff;font-size:10px;font-weight:800;letter-spacing:.05em;text-decoration:none}

/* song-controls.css */
.player{grid-template-columns:minmax(0,1fr)}
.player .record{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:center;gap:18px}
.player .record>img{width:220px;height:220px;max-width:100%;object-fit:contain}
.sound-drawer{border-top:1px solid var(--edge);padding-top:8px}
.sound-drawer>summary{cursor:pointer;padding:10px;color:var(--accent);font:600 14px 'Barlow Condensed',sans-serif;min-height:40px}
.sound-drawer .equalizer{margin-top:8px}.sound-drawer .presets{grid-template-columns:repeat(5,1fr)}.sound-drawer .presets button:last-child{grid-column:auto}
.song-feedback{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}
.song-feedback button{min-width:44px;min-height:44px;border:1px solid var(--edge);border-radius:8px;background:#091426;color:#fff;font-size:22px;cursor:pointer}
.song-feedback button[aria-pressed=true]{background:var(--accent);color:#061426}.song-feedback button:disabled{opacity:.4;cursor:default}
.song-feedback small{flex-basis:100%;font-size:10px;color:#d8dfeb;line-height:1.4}
@media(max-width:600px){.player .record{grid-template-columns:minmax(0,1fr);gap:12px}.player .record>img{width:min(100%,280px);height:auto;aspect-ratio:1;justify-self:center}.player .track{width:100%}.sound-drawer .presets{grid-template-columns:1fr 1fr}}

/* header-greeting.css */
header .header-listen-stack{grid-column:2;grid-row:2;justify-self:end;display:flex;flex-direction:column;align-items:stretch;width:200px;gap:7px}
header .header-listen-stack #listen{align-self:flex-end}
.hero header .welcome,body:not([data-page=home]) .hero header .welcome{position:static;width:100%;max-width:none;padding:8px 10px;margin:0;text-align:left;box-sizing:border-box;background:#081326ed;box-shadow:0 3px 12px #0003}
.hero header .welcome h1,body:not([data-page=home]) .hero header .welcome h1{font-size:25px;line-height:1.1;white-space:nowrap}
.hero header .welcome h2,body:not([data-page=home]) .hero header .welcome h2{font-size:11px;margin:3px 0;letter-spacing:.15em}
.hero header .welcome .houston-weather{font-size:9px;gap:5px;margin-top:4px;padding-top:4px;max-width:100%}
.hero header .welcome .weather-icon{font-size:17px}
.hero header .welcome .houston-weather a{font-size:8px}
.community-row{grid-template-columns:minmax(0,1fr)}
@media(max-width:600px){header{display:grid;grid-template-columns:minmax(0,1fr) 170px;align-items:start;gap:8px;padding:14px 12px}header .brand{grid-column:1;grid-row:1;margin:0}header .main-menu{grid-column:1;grid-row:2;justify-self:start}header .header-listen-stack{grid-column:2;grid-row:1/3;width:170px;justify-self:end}header nav[aria-label="Main navigation"]{grid-column:1/-1;grid-row:3;width:100%;gap:18px;margin-top:2px}.hero header .welcome h1,body:not([data-page=home]) .hero header .welcome h1{font-size:23px}.hero header .welcome,body:not([data-page=home]) .hero header .welcome{padding:7px 8px}.community-row{grid-template-columns:1fr}}
@media(max-width:360px){header{grid-template-columns:minmax(0,1fr) 150px;gap:6px}header .header-listen-stack{width:150px}header .brand b{font-size:28px}header .sax{font-size:23px}.hero header .welcome h1,body:not([data-page=home]) .hero header .welcome h1{font-size:21px}header nav[aria-label="Main navigation"]{gap:13px}}
/* Minimal text over the skyline, without an enclosing card. */
.hero header .welcome,body:not([data-page=home]) .hero header .welcome{background:none;border:0;box-shadow:none;padding:2px 0;text-align:right;color:#fff;text-shadow:0 1px 3px #000,0 0 5px #000}
.hero header .welcome h1,body:not([data-page=home]) .hero header .welcome h1{font:600 17px/1.2 'DM Sans',sans-serif;color:#fff;white-space:normal}
.hero header .welcome h2,body:not([data-page=home]) .hero header .welcome h2{display:none}
.hero header .welcome .houston-weather{justify-content:flex-end;border:0;margin-top:4px;padding:0;font-size:10px;gap:4px}
.hero header .welcome .weather-icon{font-size:14px}
.hero header .welcome .weather-text{white-space:normal;overflow:visible}
.hero header .welcome .houston-weather a{display:none}
header nav[aria-label="Main navigation"]{display:none!important}
.hero,body:not([data-page=home]) .hero{height:240px}
@media(max-width:600px){.hero,body:not([data-page=home]) .hero{height:210px}}

/* player-queue.css */
.player-queue{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:10px;align-items:start}
.player-queue .player{min-width:0;padding:12px;gap:10px}
.player-queue .player .record{display:flex;flex-direction:column;align-items:stretch;gap:12px}
.player-queue .player .record>img{width:min(100%,240px);height:auto;aspect-ratio:1;align-self:center}
.player-queue .track h2{font-size:25px}.player-queue .track>p{font-size:12px}
.player-queue .rotation{margin:0;min-width:0;padding:12px;overflow:hidden}
.player-queue .rotation h2{font-size:16px;letter-spacing:.07em}
.queue-scroll-hint{font-size:10px;color:var(--accent);margin:5px 0}
.player-queue .rotation .page-note{font-size:10px;line-height:1.4;margin:6px 0}
.player-queue .rotationgrid{display:flex;flex-direction:column;gap:8px;max-height:405px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--accent) transparent;padding-right:5px;margin-top:10px}
.player-queue .rotationgrid:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.player-queue .rotationcard{min-width:0;flex-shrink:0;padding:8px;gap:8px;align-items:center}
.player-queue .rotationcard img{width:54px;height:54px;flex-shrink:0}
.player-queue .rotationcard>div{min-width:0}.player-queue .rotationcard h3{font-size:18px;overflow-wrap:anywhere}.player-queue .rotationcard p{font-size:11px;overflow-wrap:anywhere}
.player-queue .sound-drawer .presets{grid-template-columns:1fr 1fr}
@media(max-width:600px){.player-queue{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:7px}.player-queue .player,.player-queue .rotation{padding:9px}.player-queue .track h2{font-size:22px}.player-queue .rotationcard{flex-direction:column;align-items:flex-start}.player-queue .rotationcard img{width:65px;height:65px}.player-queue .rotationgrid{max-height:410px}.player-queue .song-feedback{gap:4px}.player-queue .song-feedback button{min-width:40px}.player-queue .volume{gap:4px}.player-queue .volume input{width:100%;flex-basis:100%}}
@media(max-width:380px){.player-queue{grid-template-columns:minmax(0,1fr)}.player-queue .rotationgrid{flex-direction:row;overflow-x:auto;overflow-y:hidden;max-height:none;scroll-snap-type:x proximity;padding-bottom:8px}.player-queue .rotationcard{flex:0 0 150px;scroll-snap-align:start}.player-queue .rotationcard img{width:64px;height:64px}.queue-scroll-hint{font-size:0}.queue-scroll-hint::after{content:'Swipe for more →';font-size:10px}}

/* balanced-player.css */
.player-queue{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch}
.player-queue .player,.player-queue .rotation{height:100%;padding:12px;min-width:0}
.player-queue .rotation{display:flex;flex-direction:column}
.player-queue .rotationgrid{display:flex;flex-direction:row;gap:10px;max-height:none;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;padding:0 0 10px;margin-top:12px;scrollbar-width:thin}
.player-queue .rotationcard{flex:0 0 100%;width:100%;box-sizing:border-box;flex-direction:column;align-items:stretch;scroll-snap-align:start;padding:8px;gap:12px}
.player-queue .rotationcard img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;max-width:240px;align-self:center}
.player-queue .rotationcard h3{font-size:24px;line-height:1.1;margin:6px 0}.player-queue .rotationcard p{font-size:12px;line-height:1.4}
.queue-controls{display:flex;gap:8px;margin-top:6px}.queue-controls button{min-width:44px;min-height:40px;border:1px solid var(--edge);border-radius:7px;background:#091426;color:#fff;font-size:22px;cursor:pointer}
.queue-scroll-hint{font-size:10px}.queue-scroll-hint::after{content:none}
@media(max-width:600px){.player-queue{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.player-queue .player,.player-queue .rotation{padding:9px}.player-queue .rotationcard{padding:5px}.player-queue .rotationcard h3{font-size:21px}.player-queue .rotationcard img{width:100%;height:auto}.player-queue .rotationgrid{max-height:none}.player-queue .song-feedback button{min-width:36px}.player-queue .track h2{font-size:21px}}

/* player-refinement.css */
.player-queue{gap:10px}
.player-queue .player,.player-queue .rotation{padding:10px;border:1px solid #ffffff26;border-radius:6px;box-shadow:none}
.player-queue .player{display:flex;flex-direction:column;gap:0}
.player-queue .player>.kicker,.player-queue .rotation>h2{font:600 13px/18px 'Barlow Condensed',sans-serif;letter-spacing:.06em;margin:0 0 10px;color:#ffda72;min-height:18px}
.player-queue .player .record{gap:12px}
.player-queue .player .record>img,.player-queue .rotationcard img{width:100%;max-width:none;height:auto;aspect-ratio:1;object-fit:contain;border-radius:4px;box-shadow:none}
.player-queue .rotation>.page-note{order:5;font-size:9px;opacity:.75;margin:8px 0 0}
.player-queue .rotationgrid{margin:0;padding:0 0 5px;gap:10px}
.player-queue .rotationcard{border:0;background:none;box-shadow:none;border-radius:0;padding:0;gap:12px}
.player-queue .rotationcard h3,.player-queue .track h2{font-size:22px;line-height:1.15;margin:5px 0}
.player-queue .queue-controls{margin-top:8px;gap:6px}
.player-queue .queue-controls button{min-width:32px;min-height:30px;padding:0 8px;font-size:17px;border:1px solid #ffffff35;border-radius:5px}
.player-queue .queue-scroll-hint{margin:6px 0 0;font-size:9px;opacity:.8}
.player-queue .song-feedback button{border:1px solid #ffffff35;box-shadow:none;border-radius:5px}
.player-queue .sound-drawer{border-top:1px solid #ffffff26;margin-top:auto}
.glass{border-width:1px;box-shadow:0 2px 8px #0002}
@media(max-width:600px){.player-queue{gap:8px}.player-queue .player,.player-queue .rotation{padding:8px}.player-queue .rotationcard h3,.player-queue .track h2{font-size:20px}}

/* thin-borders.css */
/* One CSS pixel is the standard thin panel outline. */
.glass,.player-queue .player,.player-queue .rotation,.equalizer,.promo,.clockcard,.djcards article,.musiccard,.eventcard{border:1px solid rgba(255,255,255,.16);box-shadow:none;border-radius:5px}
.player-queue .rotationcard{border:0;box-shadow:none}
.player-queue .song-feedback button,.player-queue .queue-controls button,.presets button,#expandEQ,.news-heading button,.main-menu summary{border-width:1px;border-color:rgba(255,255,255,.25);box-shadow:none}
.player-queue .sound-drawer,.sound-drawer{border-top:1px solid rgba(255,255,255,.16)}
.actions>*{border-right-color:rgba(255,255,255,.14)}

/* A consistent outer frame on all four sides, on desktop and mobile. */
body{--site-frame:8px;padding:var(--site-frame);box-sizing:border-box}
.station,.preview{width:100%;max-width:none;margin-inline:auto;box-sizing:border-box}
.station{box-shadow:none;border:1px solid rgba(255,255,255,.16)}
.station .content{display:flex;flex-direction:column;gap:var(--site-frame);padding:0;margin-top:var(--site-frame)}
.station .content>*{margin-top:0;margin-bottom:0}
.station .content :is(.player-queue,.airrow,.promos,.community-row){gap:var(--site-frame)}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;border-bottom:1px solid rgba(255,255,255,.16);z-index:2;pointer-events:none}

/* cover-preview-layout.css */
.player-queue{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch}
.player-queue .player,.player-queue .rotation{min-width:0}
.player-queue .rotationgrid{position:relative;align-items:flex-start}
.player-queue .rotationcard{gap:8px}
.player-queue .rotationcard .queue-controls{display:flex;justify-content:center;width:100%;margin:0;gap:12px}
.player-queue .queue-controls button{min-width:44px;min-height:44px}
.player-queue .queue-controls button:disabled{opacity:.3;cursor:default}
.player-queue .rotationcard>div:not(.queue-controls){width:100%}

/* Preserve the original artwork size; fit each box to its own contents. */
.player-queue{align-items:start}
.player-queue .player,.player-queue .rotation{height:auto;min-height:0;padding-top:4px;padding-bottom:4px}
.player-queue .sound-drawer{margin-top:0}

.player-queue .song-feedback button:is([data-choice="up"],[data-choice="down"]){
 background:transparent;color:inherit;border-color:transparent;box-shadow:none;
}
.player-queue .song-feedback button:is([data-choice="up"],[data-choice="down"]):disabled{
 opacity:.8;
}
.player-queue .song-feedback button:is([data-choice="up"],[data-choice="down"]):enabled:hover{
 background:transparent;
}
.player-queue .song-feedback button:is([data-choice="up"],[data-choice="down"])[aria-pressed="true"]{
 background:transparent;color:var(--accent);border-color:transparent;
 text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:5px;
}

.player-queue{align-items:stretch}
.upcoming-column{display:flex;flex-direction:column;gap:8px;min-width:0}
.upcoming-column .rotation{flex:0 0 auto}
.monthly-artist{flex:1;min-width:0;padding:10px;display:flex;flex-direction:column;justify-content:flex-start}
.monthly-artist>h2{font:600 13px/18px 'Barlow Condensed',sans-serif;letter-spacing:.06em;color:#ffda72;margin:0 0 10px}
.monthly-artist-body{display:flex;flex-direction:column;gap:12px;align-items:stretch;min-width:0}
.monthly-artist-body>img{display:block;width:100%;max-width:none;height:auto;aspect-ratio:1;flex-shrink:0;object-fit:contain;border-radius:4px}
.monthly-artist-body>div{min-width:0}
.monthly-artist h3{font:600 22px/1.15 'Barlow Condensed',sans-serif;margin:5px 0;overflow-wrap:anywhere}
.monthly-artist p{font-size:12px;margin:4px 0 12px;overflow-wrap:anywhere}
.monthly-artist small{font-size:10px;color:#d8dfeb}
.monthly-artist a{display:inline-block}
@media(max-width:600px){
 .monthly-artist-body{flex-direction:column;align-items:flex-start;gap:8px}
 .monthly-artist{padding:8px}
 .monthly-artist h3{font-size:20px}
}

/* bean-allure.css */
.promos .bean-allure {
  background: radial-gradient(circle at 72% 20%, #8b6335 0, transparent 38%), linear-gradient(145deg, #28150e, #0b1526);
  border-color: #b9894b;
}

.promos .bean-allure h3 { color: #f1c878; }
.promos .bean-allure-logo { display: block; width: min(100%, 220px); max-height: 78px; object-fit: contain; object-position: left center; margin: 0 0 12px; }
.promo-rotator { grid-column: 1 / -1; position: relative; width: 100%; min-width: 0; }
.promo-rotator .promo-banner { display: flex; width: 100%; min-height: 190px; padding: 20px 28px 32px; flex-direction: column; justify-content: center; align-items: center; text-align: center; transition: opacity .25s ease; }
.promo-rotator .promo-banner.bean-allure { padding: 12px 12px 32px; }
.promo-rotator .bean-allure-logo { width: 100%; height: auto; max-width: none; max-height: none; object-position: center; margin: 0; }
.promo-rotator .bean-allure > .kicker,
.promo-rotator .bean-allure > p,
.promo-rotator .bean-allure > .gold { display: none; }
.promo-rotator .promo-banner p { margin: 5px 0 10px; }
.promo-dots { display: flex; position: absolute; right: 16px; bottom: 16px; gap: 6px; z-index: 2; }
.promo-dots button { width: 9px; height: 9px; padding: 0; border: 1px solid #fff9; border-radius: 50%; background: #fff6; }
.promo-dots button[aria-pressed="true"] { background: var(--accent); border-color: var(--accent); }
@media(max-width:600px) {
  .promo-rotator .promo-banner { min-height: 180px; padding: 16px 16px 32px; }
}

/* new-on-winr.css */
.new-on-winr{margin-top:12px;padding:14px 14px 12px}
.new-on-winr .sectionhead{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.new-on-winr h2{margin:0;font:600 17px 'Barlow Condensed',sans-serif;letter-spacing:.12em}
.new-on-winr .sectionhead p{margin:0;font-size:11px;opacity:.75}
.new-on-winr-grid{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:12px 0 5px;scrollbar-width:thin}
.new-on-winr-card{flex:0 0 165px;scroll-snap-align:start;color:inherit;text-decoration:none}
.new-on-winr-card img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:4px;background:#091426}
.new-on-winr-card b,.new-on-winr-card span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.new-on-winr-card b{font:600 15px/1.15 'Barlow Condensed',sans-serif;margin-top:7px}
.new-on-winr-card span{font-size:11px;opacity:.78;margin-top:3px}
.new-on-winr-status{margin:12px 0 2px;font-size:12px;opacity:.75}
@media(max-width:600px){.new-on-winr{padding:11px 10px}.new-on-winr .sectionhead{display:block}.new-on-winr .sectionhead p{margin-top:3px}.new-on-winr-card{flex-basis:132px}}

/* winr-wow.css */
body{background:#060d1a;--pane:rgba(9,24,43,.97);--edge:#ffffff22}
.station,.preview{max-width:1180px}.station{background:linear-gradient(180deg,var(--page),#080f20 850px);box-shadow:none}
.content{padding:0 28px 24px;margin-top:-18px}.glass{border:1px solid #ffffff20;border-radius:12px;box-shadow:none}
.hero{height:280px!important}.hero .skyline{object-position:center 48%;filter:saturate(.9)}
.hero .skywash{background:linear-gradient(180deg,#071326aa,transparent 55%,#071326aa)!important}
header{padding:24px 28px;color:#fff!important}.brand{color:#fff}.brand b{font-size:52px}.brand em{color:#f6d17f}
.header-greeting,.header-stack{color:#fff}.gold{border:0;background:linear-gradient(135deg,#ffe3a1,#d8a94e);box-shadow:none;color:#111b29}
.main-menu summary{background:#071326d9!important;color:#fff!important;border:1px solid #ffffff38;border-radius:7px;min-height:44px}
.player-queue{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:16px;align-items:stretch}
.player-queue .player,.player-queue .rotation{height:100%;padding:22px;min-height:0;border-radius:12px;background:linear-gradient(140deg,var(--pane),#071322)}
.player-queue .player>.kicker,.player-queue .rotation>h2{font-size:13px;letter-spacing:.14em;color:#f5d593;margin:0 0 18px}
.player-queue .player .record{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:center}
.player-queue .player .record>img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:7px;box-shadow:0 12px 28px #0005}
.player-queue .track{min-width:0}.player-queue .track h2{font-size:32px;line-height:1.08;overflow-wrap:anywhere;margin:0 0 8px}
.player-queue .track>p{font-size:15px;color:#cbd5e3}.player-queue .transport{margin-top:18px;gap:12px}
.player-queue .play{width:44px;height:44px;font-size:19px;flex-shrink:0;box-shadow:0 0 14px #d8a94e22;border:1px solid #e6c074;background:#152237}
.song-feedback{gap:6px}.song-feedback button{min-width:44px;min-height:44px}.song-feedback small{font-size:10px}
.volume{gap:8px}.volume input{width:100%;min-width:0;accent-color:#e4bc6e}.player-queue .sound-drawer{margin-top:20px;border-top:1px solid #ffffff1a;padding-top:9px}
.sound-drawer summary{font-size:12px;letter-spacing:.08em;min-height:44px;align-content:center}
.player-queue .rotationcard img{max-width:190px;width:100%;height:auto;aspect-ratio:1;object-fit:contain;align-self:center;border-radius:7px}
.player-queue .rotationcard h3{font-size:24px}.player-queue .rotationcard p{color:#cbd5e3}.player-queue .queue-controls button{border:1px solid #ffffff28;min-height:44px;min-width:44px;border-radius:7px;background:#152237}
.upcoming-column{height:100%}.monthly-artist{padding:22px;margin-top:16px}.monthly-artist-body{flex-direction:row;align-items:center;gap:24px}.monthly-artist-body>img{width:120px;max-width:30%;border-radius:7px}.monthly-artist h3{font-size:28px}
.community-row{margin:16px 0}.news-ticker{padding:16px}.actions{margin-top:16px;padding:12px}.actions>*{min-height:44px}
.new-on-winr{padding:22px;margin-top:16px}.new-on-winr-card{flex:0 0 170px;width:170px;min-width:0}.new-on-winr-grid{gap:16px;padding-top:18px}.new-on-winr-card b{font-size:18px}.new-on-winr-card img{width:170px;height:170px;object-fit:cover;border-radius:7px}.new-on-winr h2{color:#f5d593}
.preview{font-size:10px;letter-spacing:.13em;color:#c0cada;padding:8px 28px}
@media(max-width:760px){
 .hero{height:220px!important}.content{padding:0 14px 18px}header{padding:18px 14px}.brand b{font-size:38px}
 .player-queue{grid-template-columns:1fr;gap:12px}.player-queue .player,.player-queue .rotation{padding:18px}
 .player-queue .player .record{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:16px}
 .player-queue .track h2{font-size:26px}.player-queue .track>p{font-size:13px}.transport>div{display:none}
 .player-queue .rotationcard{flex-basis:100%;display:grid;grid-template-columns:100px minmax(0,1fr);gap:14px;align-items:center}
 .player-queue .rotationcard img{width:100px;grid-column:1;grid-row:1/3}.player-queue .rotationcard>div:not(.queue-controls){grid-column:2;grid-row:1}.player-queue .rotationcard .queue-controls{grid-column:2;grid-row:2;justify-content:flex-start}
 .player-queue .rotationcard h3{font-size:22px}.player-queue .rotation>.page-note{font-size:10px}
 .monthly-artist{padding:18px}.monthly-artist-body{flex-direction:row}.monthly-artist h3{font-size:24px}.new-on-winr{padding:18px}.new-on-winr-card{flex-basis:145px;width:145px}.new-on-winr-card img{width:145px;height:145px}
}
@media(max-width:380px){.player-queue .player .record{grid-template-columns:1fr}.player-queue .player .record>img{max-width:210px;justify-self:center}.player-queue .track h2{font-size:28px}.volume{flex-wrap:nowrap}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.actions{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;margin-bottom:12px}.actions>*{min-width:0}.actions small{white-space:normal}
#listenerSound{border:1px solid #ffffff20;margin:0 0 16px;padding:0 18px;background:var(--pane)}
#listenerSound:not([open]){display:none}
#listenerSound>.equalizer{margin:4px 0 14px;width:100%;padding:16px}
#listenerSound .presets{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
#listenerSound .frequency-panel{margin:0 0 18px;padding:16px}
#listenerSound .frequency-panel[hidden]{display:none!important}
#listenerSound .bands{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:8px}
#listenerSound .bands label{min-width:0}
@media(max-width:600px){.actions{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:10px}.actions small{font-size:11px}#listenerSound .presets{grid-template-columns:repeat(2,minmax(0,1fr))}#listenerSound .bands{grid-template-columns:repeat(5,minmax(0,1fr));row-gap:18px}}
.recent-preview{padding:22px;margin:16px 0}.recent-preview h2{font:600 17px 'Barlow Condensed',sans-serif;color:#f5d593;letter-spacing:.12em;margin:0}.recent-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:18px 0 12px}.recent-preview-grid a{min-width:0}.recent-preview-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:7px}.recent-preview-grid h3{font:600 20px/1.2 'Barlow Condensed',sans-serif;margin:8px 0 4px}.recent-preview-grid p{font-size:12px;color:#cbd5e3;margin:0}.recent-preview>small{font-size:11px;color:#aebbd0}
@media(max-width:600px){.recent-preview{padding:18px}.recent-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
.onair-strip{display:flex;align-items:center;gap:18px;min-height:0;padding:14px 18px;margin:0 0 16px}.onair-strip>img{width:76px;height:76px;object-fit:cover;border-radius:8px}.onair-strip>div{flex:1;padding:0}.onair-strip h2{font-size:25px;margin:4px 0}.onair-strip p{font-size:13px}.onair-strip .airtime{margin-bottom:7px}.airrow:has(>.clockcard):not(:has(>.onair)){display:none}
@media(max-width:600px){.onair-strip{gap:12px;padding:14px;flex-wrap:wrap}.onair-strip>img{width:64px;height:64px}.onair-strip>div{min-width:180px}.onair-strip>a{margin-left:76px}.onair-strip h2{font-size:23px}}
.onair-strip[hidden],.monthly-artist[hidden]{display:none!important}
body[data-page="home"] .schedule{display:none}
.onair-now{display:flex;align-items:center;gap:9px;color:#fff;font:700 13px 'DM Sans',sans-serif;letter-spacing:.12em;margin-bottom:7px}
.onair-light{display:inline-block;width:11px;height:11px;flex:0 0 11px;border-radius:50%;background:#ff4057;box-shadow:0 0 7px #ff4057,0 0 15px #ff4057aa;animation:onair-pulse 1.8s ease-in-out infinite}
@keyframes onair-pulse{0%,100%{opacity:1;box-shadow:0 0 7px #ff4057,0 0 18px #ff4057bb}50%{opacity:.4;box-shadow:0 0 3px #ff4057}}
@media(prefers-reduced-motion:reduce){.onair-light{animation:none}}
.hero header{display:flex!important;align-items:flex-start;gap:18px}
.header-brand-group{display:flex;align-items:center;gap:24px;flex:1;min-width:0}
.header-brand-group #listen{padding:7px 12px;font-size:12px;line-height:1.1;align-self:flex-start;margin-top:3px;min-height:32px;border-radius:18px}
.hero header .header-listen-stack{width:auto;max-width:200px;gap:0;flex:0 1 auto;margin-top:3px}
.hero header .welcome h1,body:not([data-page=home]) .hero header .welcome h1{font:600 13px/1.2 'DM Sans',sans-serif!important;margin:0}
.hero header .welcome .houston-weather{font-size:9px!important;margin-top:3px}
.hero header .welcome .weather-icon{font-size:11px!important}
.hero header .main-menu{position:static!important;margin:0}
.player-queue .rotationgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;overflow:visible;max-height:none;scroll-snap-type:none;padding:0}
.player-queue .rotationcard{display:flex;flex-direction:column;align-items:stretch;gap:8px;width:auto;min-width:0;padding:0;flex:auto}
.player-queue .rotationcard img{width:100%;max-width:none;height:auto;aspect-ratio:1;object-fit:contain;align-self:stretch}
.player-queue .rotationcard h3{font-size:19px;line-height:1.15;margin:5px 0}.player-queue .rotationcard p{font-size:11px}
.player-queue .rotationcard .queue-controls,.player-queue .rotation>.queue-controls,.player-queue .queue-scroll-hint{display:none!important}
@media(max-width:760px){.player-queue .rotationgrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.player-queue .rotationcard{display:flex}.player-queue .rotationcard img{width:100%}.player-queue .rotationcard h3{font-size:17px}}
@media(max-width:600px){.hero header{gap:10px;padding:16px 12px}.header-brand-group{flex-direction:column;align-items:flex-start;gap:9px}.header-brand-group #listen{align-self:flex-start;margin-top:0;padding:7px 10px;font-size:11px;min-height:32px}.hero header .header-listen-stack{max-width:130px}.hero header .welcome h1{font-size:12px!important}.hero header .welcome .houston-weather{font-size:8px!important}.hero header .main-menu summary{padding:8px;min-height:36px}}
.hero{overflow:visible}.main-menu .sitepages{max-height:min(520px,70vh);overflow-y:auto;overscroll-behavior:contain}

/* artist-profile.css */
.artist-intro{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;max-width:680px;line-height:1.55!important;font-size:14px!important;color:#ccd6e5}
.artist-profile{max-width:1040px;margin:0 auto;padding:28px;color:#fff;background:#09172a;min-height:100vh;font-family:'DM Sans',sans-serif}
.artist-profile header{padding:0 0 24px}.artist-profile h1{font:600 48px/1.1 'Barlow Condensed',sans-serif;margin:8px 0 14px}.artist-profile h2{font:600 26px 'Barlow Condensed',sans-serif;color:#f2d298}
.artist-profile p{font-size:16px;line-height:1.75;color:#d5deeb}.artist-profile .profile-lede{display:grid;grid-template-columns:240px minmax(0,1fr);gap:30px;align-items:center}
.profile-lede img{width:100%;aspect-ratio:1;border-radius:9px}.artist-release-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.artist-release-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:7px}.artist-release-grid h3{font-size:20px;margin:10px 0 5px}.artist-release-grid small{color:#bbc8db}
.artist-contact-links{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.artist-profile .sources{border-top:1px solid #ffffff25;margin-top:28px;padding-top:18px;font-size:12px}.artist-profile .sources a{text-decoration:underline}.artist-profile section{margin:28px 0}
@media(max-width:600px){.artist-profile{padding:20px}.artist-profile .profile-lede{grid-template-columns:1fr}.profile-lede img{max-width:240px}.artist-profile h1{font-size:38px}.artist-release-grid{gap:12px}.artist-release-grid h3{font-size:16px}}

/* cover-sizes.css */
/* Shared album-art size. Now Playing keeps its larger player treatment. */
:root{--winr-cover-size:100px}
.player-queue .rotationgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
.player-queue .rotationcard img{width:var(--winr-cover-size);height:var(--winr-cover-size);max-width:100%;object-fit:contain;align-self:center}
.new-on-winr-card{flex:0 0 var(--winr-cover-size);width:var(--winr-cover-size)}
.new-on-winr-card img,.recent-preview-grid img,.history-grid img,.artist-release-grid img,.profile-lede img,.monthly-artist-body>img{width:var(--winr-cover-size);height:var(--winr-cover-size);max-width:100%;object-fit:contain;aspect-ratio:1}
.recent-preview-grid{grid-template-columns:repeat(4,minmax(0,var(--winr-cover-size)));justify-content:space-between}
.history-grid{grid-template-columns:repeat(4,minmax(0,1fr));justify-content:space-between}
.artist-release-grid{grid-template-columns:repeat(3,minmax(0,var(--winr-cover-size)));justify-content:start;gap:24px}
.artist-profile .profile-lede{grid-template-columns:var(--winr-cover-size) minmax(0,1fr)}
.monthly-artist-body>img{flex:0 0 var(--winr-cover-size);max-width:var(--winr-cover-size)}
.musiccard>img{width:var(--winr-cover-size);height:var(--winr-cover-size);object-fit:contain}
@media(max-width:760px){:root{--winr-cover-size:110px}.new-on-winr-grid{gap:14px}.history-grid{gap:20px}.artist-release-grid{gap:14px}.recent-preview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}}
@media(max-width:480px){:root{--winr-cover-size:88px}.recent-preview-grid{grid-template-columns:repeat(2,minmax(0,var(--winr-cover-size)));justify-content:space-around}.artist-release-grid{gap:12px}.monthly-artist-body>img{flex-basis:var(--winr-cover-size)}.artist-profile .profile-lede{gap:20px}}
@media(max-width:600px){.history-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}}
/* Home music rails share a compact card rhythm rather than stretching across gaps. */
.new-on-winr,.recent-preview{padding:22px;margin-top:16px}
.new-on-winr-grid,.recent-preview-grid{display:flex;justify-content:flex-start;align-items:flex-start;gap:20px;margin:0;padding:18px 0 8px;overflow-x:auto;scrollbar-width:thin}
.new-on-winr-card,.recent-preview-grid>a{flex:0 0 var(--winr-cover-size);width:var(--winr-cover-size);min-width:0;margin:0}
.new-on-winr-card b,.recent-preview-grid h3{display:block;font:600 18px/1.2 'Barlow Condensed',sans-serif;margin:8px 0 4px;white-space:normal;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;min-height:43px}
.new-on-winr-card span,.recent-preview-grid p{font-size:11px;line-height:1.4;margin:0;color:#cbd5e3;white-space:normal;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;min-height:31px}
.new-on-winr .sectionhead,.recent-preview .sectionhead{min-height:44px;align-items:center}
@media(max-width:600px){.new-on-winr,.recent-preview{padding:18px}.new-on-winr-grid,.recent-preview-grid{gap:16px}.new-on-winr .sectionhead{display:flex}.recent-preview-grid{flex-wrap:nowrap}}
.home-music-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.home-music-pair>.glass{margin:0;padding:18px;min-width:0}
.home-music-pair .new-on-winr-grid,.home-music-pair .recent-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;overflow:visible}
.home-music-pair .new-on-winr-card,.home-music-pair .recent-preview-grid>a{width:100%;min-width:0}
.home-music-pair img{max-width:100%}
@media(max-width:1000px){.home-music-pair{grid-template-columns:1fr}.home-music-pair .new-on-winr-grid,.home-music-pair .recent-preview-grid{display:flex;gap:20px}.home-music-pair .new-on-winr-card,.home-music-pair .recent-preview-grid>a{width:var(--winr-cover-size)}}

/* favorite-alerts.css */
.favorite-alert-dialog{position:fixed;width:min(500px,calc(100vw - 32px));max-height:85vh;overflow:auto;padding:26px;border:1px solid #ffffff30;border-radius:12px;background:#10213a;color:#fff;font-family:'DM Sans',sans-serif}.favorite-alert-dialog::backdrop{background:#020817bb}.favorite-alert-dialog h2{margin:0 36px 12px 0;font-size:24px}.favorite-alert-close{position:absolute;right:12px;top:12px;width:40px;height:40px;background:#ffffff12;border:0;border-radius:6px;font-size:25px}.favorite-alert-song{color:#f5d593;font-size:14px}.favorite-alert-form{max-width:500px;margin-top:20px;padding-top:18px;border-top:1px solid #ffffff20}.favorite-alert-form h3{font-size:18px;margin:0 0 8px}.favorite-alert-form p{font-size:13px;line-height:1.6;color:#cbd5e3}.favorite-alert-form label{display:block;font-size:13px;margin:16px 0 12px}.favorite-alert-form input{display:block;width:100%;margin-top:8px;padding:12px;background:#091427;color:#fff;border:1px solid #ffffff40;border-radius:6px;font:inherit}.favorite-alert-form>small{display:block;font-size:11px;line-height:1.5;margin-top:12px;color:#bcc8db}.favorite-alert-form button:disabled{opacity:.5;cursor:not-allowed}

/* mobile-layout.css */
/* Keep mobile content within the viewport; show 3 recent songs on home and 12 on the full history page. */
@media(max-width:760px){
 html,body{max-width:100%;overflow-x:clip}
 .station,.content,.artist-profile,.player-queue,.upcoming-column,.home-music-pair,.recent-preview,.new-on-winr,.rotation,.track{min-width:0;max-width:100%}
 .home-music-pair{grid-template-columns:minmax(0,1fr)}
 .home-music-pair>*{min-width:0}
 .home-music-pair .recent-preview-grid,.recent-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;overflow:visible;max-width:100%}
 .home-music-pair .recent-preview-grid>a,.recent-preview-grid>a{width:auto;min-width:0;max-width:100%}
 .home-music-pair .recent-preview-grid img,.recent-preview-grid img{width:100%;height:auto;max-width:100%;aspect-ratio:1}
 .new-on-winr-grid>.new-on-winr-card:nth-child(n+4),.rotationgrid>.rotationcard:nth-child(n+4){display:none}
 .recent-preview-grid>a:nth-child(n+4){display:none}
 .player-queue .rotationgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;overflow:visible;width:100%;max-width:100%}
 .player-queue .rotationcard{min-width:0;width:auto;max-width:100%}
 .player-queue .rotationcard>div{min-width:0}
 .home-music-pair .new-on-winr-grid,.new-on-winr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;overflow:visible;max-width:100%}
 .home-music-pair .new-on-winr-card,.new-on-winr-card{width:auto;min-width:0;max-width:100%;flex:none}
 .new-on-winr-card img{width:100%;height:auto;max-width:100%;aspect-ratio:1}
 .new-on-winr .queue-controls{display:none}
 .new-on-winr-card b,.new-on-winr-card span{overflow-wrap:anywhere}
 .history-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
 .history-grid h2,.history-grid p,.recent-preview-grid h3,.recent-preview-grid p,.rotationcard h3,.rotationcard p{overflow-wrap:anywhere}
 .hero header{flex-wrap:wrap;min-width:0}
 .sectionhead{flex-wrap:wrap}
 .main-menu .sitepages,.shared-page-menu{max-width:calc(100vw - 24px)}
}

/* about-page.css */
.winr-about{max-width:1080px;margin:32px auto 64px;padding:0 24px;color:var(--ink,#fff)}.winr-about-intro{padding:24px 0 40px}.winr-about h1{font-size:clamp(36px,6vw,66px);line-height:1.08;max-width:850px;margin:16px 0 24px}.winr-about p{line-height:1.75;max-width:760px;color:#d7e1ec}.winr-about .about-lead{font-size:clamp(18px,2vw,23px);max-width:700px}.about-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:28px}.about-text-link{color:#ffd984;text-decoration:none;font-weight:700}.about-text-link:hover{text-decoration:underline}.about-story,.about-close{padding:32px}.winr-about h2{font-size:clamp(23px,3vw,32px);line-height:1.2;margin:14px 0}.about-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}.about-grid>section{padding:26px}.about-grid h2{font-size:25px}.about-signoff{font-size:14px;margin-top:24px}.winr-about .kicker{color:#ffd984;font-size:12px;letter-spacing:.12em}@media(max-width:760px){.winr-about{padding:0 18px;margin-top:18px}.about-grid{grid-template-columns:1fr}.about-story,.about-close,.about-grid>section{padding:24px}.winr-about-intro{padding-top:12px}}

/* winr-controls-v5.css */
.player .volume{display:grid;grid-template-columns:auto minmax(70px,1fr) auto;gap:8px}.player #volume{width:100%;min-width:0;min-height:44px;writing-mode:horizontal-tb;direction:ltr;cursor:pointer;touch-action:pan-y}.song-feedback button{min-width:44px;min-height:44px;position:relative;z-index:1;touch-action:manipulation}#eqPower{min-height:44px}#eqPower[aria-checked="true"]{border-color:#d9b76a}.equalizer button:disabled,.frequency-panel input:disabled{opacity:.45}

/* Match the current host portrait to the shared Coming Up album-cover size. */
.onair.onair-strip #djPhoto{width:var(--winr-cover-size,100px)!important;height:var(--winr-cover-size,100px)!important;min-width:0;max-width:100%;flex:0 0 var(--winr-cover-size,100px);aspect-ratio:1;object-fit:cover;object-position:center 24%;border-radius:5px}
.onair.onair-strip{align-items:center;min-height:0}
.onair.onair-strip>div{min-width:0}
@media(max-width:480px){.onair.onair-strip{flex-wrap:wrap}.onair.onair-strip>div{flex:1 1 140px}}

/* Broad, touch-friendly tone controls. */
.sound-drawer .equalizer{display:block}
.sound-drawer .frequency-panel{margin:16px 0;padding:16px 12px;box-shadow:none;width:100%;box-sizing:border-box}
.sound-drawer #frequencyPanel .bands{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:center}
.sound-drawer #frequencyPanel .bands label{display:flex;flex-direction:column;align-items:center;gap:12px;min-width:0}
.sound-drawer #frequencyPanel .bands input{writing-mode:vertical-lr;direction:rtl;appearance:auto;-webkit-appearance:slider-vertical;width:44px;height:160px;margin:0;accent-color:var(--accent,#d9b76a);touch-action:pan-x}
.sound-drawer #frequencyPanel .bands b{font-size:13px;text-transform:uppercase}
.sound-drawer .eqhead{flex-wrap:wrap;gap:10px}.sound-drawer #eqPower{margin-left:auto}
.sound-drawer #expandEQ{display:none}
.sound-drawer .frequency-panel .eqhead span{font-size:12px;opacity:.7}

/* Desktop and mobile volume: neutralize inherited vertical range styling. */
.player #volume{appearance:auto;-webkit-appearance:auto;writing-mode:horizontal-tb!important;direction:ltr!important;height:44px;min-width:100px;pointer-events:auto;position:relative;z-index:2}
.player .volume{grid-template-columns:auto minmax(100px,1fr) auto;align-items:center}
#winrMute{grid-column:2 / -1;justify-self:end;min-height:36px;padding:6px 12px;background:transparent;color:inherit;border:1px solid currentColor;border-radius:6px;cursor:pointer}

/* Visible on/off state, with text retained for accessibility. */
.sound-drawer #eqPower[aria-checked="true"],#eqPower[aria-checked="true"]{background:#166534;color:#fff;border:2px solid #4ade80;box-shadow:0 0 0 2px #16653433;font-weight:700}
.sound-drawer #eqPower[aria-checked="false"],#eqPower[aria-checked="false"]{background:#991b1b;color:#fff;border:2px solid #f87171;box-shadow:none;font-weight:700}
#eqPower:focus-visible{outline:3px solid #fff;outline-offset:3px}

/* banner-compact-desktop.css */
/* A quieter desktop promotional banner. Mobile retains its existing layout. */
@media (min-width: 761px) {
  .promos .promo-rotator {
    max-width: 900px;
    justify-self: center;
    margin-inline: auto;
  }
  .promos .promo-rotator .promo-banner,
  .promos .promo-rotator .promo-banner.bean-allure {
    box-sizing: border-box;
    height: 160px;
    min-height: 160px;
    padding: 12px 24px 28px;
  }
  .promos .promo-rotator .bean-allure-logo {
    width: auto;
    height: auto;
    max-width: min(100%, 680px);
    max-height: 116px;
    object-fit: contain;
    object-position: center;
    margin: 0 auto;
  }
  .promos .promo-rotator .promo-banner h3 {
    font-size: 24px;
    line-height: 1.05;
    margin: 2px 0;
  }
  .promos .promo-rotator .promo-banner p {
    font-size: 12px;
    line-height: 1.3;
    margin: 2px 0 6px;
  }
  .promos .promo-rotator .promo-banner .gold {
    font-size: 12px;
    line-height: 1.25;
    padding: 6px 12px;
  }
  .promos .promo-rotator .promo-dots {
    bottom: 10px;
    right: 12px;
  }
}
