/* modern.css */
:root{--bg:#07090c;--panel:#11151b;--panel2:#171c23;--line:#2a3039;--text:#f4f6f8;--muted:#a6afb9;--red:#dc2228;--red2:#ff4248;--green:#8aaa3a;--max:1440px;--radius:22px;--shadow:0 24px 70px rgba(0,0,0,.36)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at 15% 0,rgba(138,170,58,.09),transparent 28%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.65}
img{max-width:100%}
a{color:inherit}
button,input{font:inherit}
.site-header{position:sticky;top:0;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:min(var(--max),calc(100% - 40px));min-height:174px;margin:auto;padding:8px 0 12px;background:rgba(7,9,12,.9);backdrop-filter:blur(18px)}
.site-header:before{content:"";position:fixed;z-index:-1;left:0;right:0;top:0;height:174px;background:rgba(7,9,12,.9);border-bottom:1px solid var(--line)}
.brand{display:block;width:290px;height:122px}
.brand img{width:100%;height:100%;object-fit:contain}
.main-nav{display:flex;align-items:center;justify-content:center;gap:7px}
.main-nav a{padding:10px 13px;border-radius:10px;color:#c7cdd4;text-decoration:none;font-size:.9rem;font-weight:700}
.main-nav a:hover,.main-nav a.active{background:var(--panel2);color:#fff}
.main-nav .nav-cta{background:var(--red);color:#fff}
.main-nav .nav-cta:hover{background:var(--red2)}
.nav-toggle{display:none;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:#fff;padding:10px 14px}
main{width:min(var(--max),calc(100% - 40px));margin:auto}
.hero{min-height:620px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:50px;padding:70px clamp(26px,6vw,76px);border:1px solid var(--line);border-radius:30px;background:linear-gradient(115deg,rgba(13,16,21,.98),rgba(19,24,27,.9)),radial-gradient(circle at 80% 40%,rgba(220,34,40,.28),transparent 34%);box-shadow:var(--shadow);overflow:hidden}
.eyebrow{margin:0 0 10px;color:var(--red2);font-size:.76rem;font-weight:900;letter-spacing:.17em;text-transform:uppercase}
.hero h1,.team-intro h1{margin:0;font-size:clamp(3.6rem,8vw,7.4rem);line-height:.85;letter-spacing:-.06em;text-transform:uppercase}
.hero h1 span{color:transparent;-webkit-text-stroke:1px #c3cad2}
.hero-lead{max-width:650px;margin:27px 0 32px;color:var(--muted);font-size:1.08rem}
.listener-stats{display:flex;gap:12px;margin:-8px 0 27px}
.listener-stats>div{min-width:130px;padding:12px 15px;border:1px solid var(--line);border-radius:14px;background:rgba(7,9,12,.72);box-shadow:inset 0 1px rgba(255,255,255,.04)}
.listener-stats span{display:block;color:#fff;font-size:1.65rem;font-weight:950;line-height:1}
.listener-stats small{display:block;margin-top:6px;color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.radio-player{margin:25px 0 26px;padding:17px;border:1px solid rgba(255,66,72,.48);border-radius:18px;background:linear-gradient(135deg,rgba(220,34,40,.16),rgba(7,9,12,.92) 50%,rgba(138,170,58,.1));box-shadow:0 16px 34px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.05)}
.twitch-column>.radio-player{margin:0 0 20px}
.radio-player-topline{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:13px;color:var(--muted);font-size:.7rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.radio-live-badge{display:inline-flex;align-items:center;gap:8px;color:#fff}.radio-live-badge i{width:8px;height:8px;border-radius:50%;background:var(--red2);box-shadow:0 0 0 5px rgba(255,66,72,.14);animation:liveBlink 1.6s ease-in-out infinite}
.radio-player-main{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px}.radio-play{display:grid;place-items:center;width:58px;height:58px;border:0;border-radius:50%;background:linear-gradient(145deg,var(--red2),#9f1015);color:#fff;cursor:pointer;box-shadow:0 10px 25px rgba(220,34,40,.32)}.radio-play:hover{transform:scale(1.04)}.radio-play span{font-size:1.15rem;line-height:1;margin-left:3px}.radio-play.is-playing span{margin-left:0;font-size:1rem;font-weight:950}
.radio-player-copy{min-width:0}.radio-player-copy strong,.radio-player-copy span{display:block}.radio-player-copy strong{font-size:1.05rem;letter-spacing:.03em}.radio-player-copy span{color:var(--muted);font-size:.82rem}
.radio-volume{display:grid;gap:5px;width:115px;color:var(--muted);font-size:.65rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.radio-volume input{width:100%;accent-color:var(--red2);cursor:pointer}
.button-row,.contact-actions{display:flex;gap:12px;flex-wrap:wrap}
.button,.broadcast-form button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:0 20px;border:1px solid transparent;border-radius:12px;text-decoration:none;font-weight:850;cursor:pointer}
.button.primary,.broadcast-form button{background:var(--red);color:#fff}
.button.primary:hover,.broadcast-form button:hover{background:var(--red2)}
.button.secondary{border-color:var(--line);background:transparent;color:#fff}
.button.secondary:hover{background:var(--panel2)}
.hero-art{justify-self:center;width:min(340px,33vw);aspect-ratio:1;border:2px solid #343b44;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#202630 0 13%,#07090c 14% 20%,#1b2028 21% 23%,#050608 24% 100%);box-shadow:0 0 0 22px rgba(255,255,255,.025),0 35px 70px #000;animation:spin 15s linear infinite}
.hero-art span{font-size:clamp(1.5rem,4vw,3rem);font-weight:950;letter-spacing:.12em;color:var(--red2)}
.twitch-live-card{align-self:center;min-width:0;overflow:hidden;border:1px solid #6441a5;border-radius:20px;background:#050507;box-shadow:0 28px 60px rgba(0,0,0,.48),0 0 0 7px rgba(145,71,255,.08)}
.twitch-column{align-self:center;min-width:0}
.twitch-column .twitch-live-card{width:100%}
.twitch-ad-banner{margin-top:20px}
.twitch-live-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:0 16px;border-bottom:1px solid #3a285a;background:linear-gradient(90deg,rgba(145,71,255,.34),rgba(220,34,40,.12))}
.twitch-live-head span{display:flex;align-items:center;gap:9px;font-size:.76rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.twitch-live-head i{width:8px;height:8px;border-radius:50%;background:#bf94ff;box-shadow:0 0 0 5px rgba(145,71,255,.2);animation:liveBlink 1.6s ease-in-out infinite}
.twitch-live-head a{color:#e8dcff;text-decoration:none;font-size:.78rem;font-weight:750}
.twitch-live-head a:hover{color:#fff}
.twitch-feed{height:430px;background:#000}
.twitch-feed iframe{display:block;width:100%;height:100%;border:0}
@keyframes liveBlink{50%{opacity:.35;transform:scale(.82)}}
.section{padding:90px 0}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:22px;margin-bottom:28px}
.section h2,.team-intro h1{margin:0;font-size:clamp(2.3rem,5vw,4.8rem);line-height:.96;letter-spacing:-.045em;text-transform:uppercase}
.live-pill{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid rgba(220,34,40,.45);border-radius:999px;background:rgba(220,34,40,.1);font-size:.76rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}
.live-pill i{width:8px;height:8px;border-radius:50%;background:var(--red2);box-shadow:0 0 0 5px rgba(220,34,40,.14)}
.studio-box{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}
.studio-box>.section-heading{margin:0;padding:22px 24px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,#171c23,#0d1116)}
.broadcast-grid{display:grid;grid-template-columns:minmax(0,1fr) 350px;grid-template-areas:"youtube chat";gap:0}
.broadcast-grid .video-panel{grid-area:youtube}
.broadcast-grid .chat-panel{grid-area:chat}
.studio-box .panel{border:0;border-radius:0}
.studio-box .chat-panel{border-left:1px solid var(--line)}
.live-ad-banner{display:block;width:100%;margin:24px auto 0;overflow:hidden;border:1px solid #414955;border-radius:14px;background:#0b0e12;box-shadow:0 14px 34px rgba(0,0,0,.34);transition:transform .2s ease,border-color .2s ease}
.live-ad-banner:hover{transform:translateY(-3px);border-color:var(--red2)}
.live-ad-banner img{display:block;width:100%;height:auto;aspect-ratio:8/1;object-fit:cover}
.youtube-ad-banner{grid-area:banner;display:block;justify-self:stretch;align-self:stretch;width:100%;max-width:none;min-width:0;height:100px;margin:0;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none}
.youtube-ad-banner img{width:100%;height:100px;aspect-ratio:auto;object-fit:fill}
.rotating-ad-track{container-type:inline-size;width:100%;margin-top:24px;overflow:hidden}
.host-moving-track{container-type:inline-size;width:100%;margin-top:12px;overflow:hidden}
.host-moving-banner{display:block;width:min(800px,100%);max-width:800px;overflow:hidden;border:1px solid #414955;border-radius:14px;background:#0b0e12;animation:adBounce 16s ease-in-out infinite alternate}
.host-moving-banner img{display:block;width:100%;height:auto;aspect-ratio:2172/724;object-fit:contain}
.host-moving-banner:hover{animation-play-state:paused;border-color:var(--red2)}
.host-moving-banner:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.music-links+.rotating-ad-track{margin:4px 0 8px}
.rotating-ad-banner{width:min(800px,100%);height:auto;aspect-ratio:8/1;max-width:800px;margin:0;animation:adBounce 14s ease-in-out infinite alternate}
.rotating-ad-banner img{width:100%;height:100%;aspect-ratio:8/1;object-fit:cover;transition:opacity .35s ease}
.rotating-ad-banner.changing{opacity:0}
.rotating-ad-banner{transition:opacity .35s ease,border-color .2s ease}
.rotating-ad-banner:hover{transform:none;animation-play-state:paused}
@keyframes adBounce{from{transform:translateX(0)}to{transform:translateX(calc(100cqw - 100%))}}
.rotating-ad-banner .vision-innovation-ad{height:100%;min-height:0;aspect-ratio:auto}
.host-show-ad{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;padding:5px 18px;background:radial-gradient(circle at 8% 50%,#bd1b21,transparent 32%),linear-gradient(110deg,#090b0f 0%,#264006 45%,#970c13 100%);color:#fff;text-align:center}
.host-show-ad strong{font-size:clamp(1.1rem,3vw,2.1rem);font-weight:950;line-height:1;letter-spacing:.07em}
.host-show-ad .host-show-copy{margin-top:2px;color:#c9ff6f;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.host-show-ad .host-show-flags{display:block;max-width:100%;overflow:hidden;margin-top:1px;color:#fff;font-size:1rem;line-height:1.1;letter-spacing:.03em;white-space:nowrap}
.host-show-ad small{margin-top:3px;font-size:.85rem;font-weight:800}
.host-show-ad[hidden]{display:none}
@media(max-width:600px){.host-show-ad{padding:2px 6px}.host-show-ad strong{font-size:clamp(.65rem,3vw,1rem)}.host-show-ad .host-show-copy{display:none}.host-show-ad .host-show-flags{font-size:clamp(.55rem,2vw,.8rem)}.host-show-ad small{font-size:clamp(.5rem,2vw,.7rem)}.rotating-ad-banner .vision-innovation-ad{padding:3px 7px;gap:0}.rotating-ad-banner .vision-innovation-ad strong{font-size:clamp(.65rem,3vw,1rem)}.rotating-ad-banner .vis-services,.rotating-ad-banner .vis-cta{display:none}}
@media(prefers-reduced-motion:reduce){.rotating-ad-banner,.host-moving-banner{animation:none}}
.vision-innovation-ad{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(190px,.8fr) minmax(320px,2fr) auto;grid-template-areas:"kicker brand cta" "kicker services cta";align-items:center;column-gap:28px;width:100%;aspect-ratio:8/1;min-height:100px;padding:16px clamp(20px,3vw,48px);overflow:hidden;background:linear-gradient(115deg,#020813 0%,#071d38 48%,#020913 100%);color:#fff;text-align:left}
.vision-innovation-ad::before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,transparent 0 70%,rgba(17,128,220,.2)),linear-gradient(115deg,transparent 0 62%,rgba(229,24,55,.16) 62% 64%,transparent 64%)}
.vis-kicker{grid-area:kicker;align-self:stretch;display:grid;place-items:center;padding:8px 18px;border-left:5px solid #e51937;background:rgba(255,255,255,.06);font-size:clamp(.72rem,1.05vw,.95rem);font-weight:900;letter-spacing:.12em;line-height:1.25;text-transform:uppercase;color:#8fd0ff}
.vision-innovation-ad strong{grid-area:brand;font-size:clamp(1.15rem,2.35vw,2.2rem);font-weight:1000;letter-spacing:.035em;line-height:1;color:#fff;text-shadow:0 0 20px rgba(39,157,255,.24)}
.vis-services{grid-area:services;font-size:clamp(.68rem,1vw,.95rem);font-weight:700;letter-spacing:.04em;color:#c8d8e8;white-space:nowrap}
.vis-services i{margin:0 .45em;color:#e51937;font-style:normal}
.vis-cta{grid-area:cta;padding:12px 16px;border:1px solid rgba(143,208,255,.45);border-radius:999px;background:rgba(0,0,0,.3);font-size:clamp(.68rem,.9vw,.88rem);font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;color:#fff}
.vision-innovation-ad[hidden]{display:none}
@media(max-width:760px){.vision-innovation-ad{grid-template-columns:1fr auto;grid-template-areas:"brand cta" "services services";gap:8px 14px;min-height:92px;padding:13px 16px}.vis-kicker{display:none}.vision-innovation-ad strong{font-size:clamp(.95rem,4vw,1.45rem)}.vis-services{font-size:clamp(.55rem,2vw,.72rem);white-space:normal}.vis-cta{padding:9px 10px;font-size:.58rem}}
@media(max-width:720px){.youtube-ad-banner,.youtube-ad-banner img{height:auto}.youtube-ad-banner img{aspect-ratio:8/1;object-fit:cover}}
.panel{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}
.video-frame{aspect-ratio:16/9;display:grid;place-items:center;background:#020304}
.video-frame iframe,.chat-frame iframe{width:100%;height:100%;border:0}
.empty-state{text-align:center;padding:32px}
.empty-state .play{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 18px;border-radius:50%;background:var(--red);font-size:1.45rem}
.empty-state h3{margin:0 0 6px;font-size:1.4rem}
.empty-state p,.chat-frame p{margin:0;color:var(--muted)}
.player-info,.panel-title{display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:60px;padding:0 18px;border-top:1px solid var(--line)}
.player-info span,.panel-title span{color:var(--muted);font-size:.82rem}
.panel-title{border-top:0;border-bottom:1px solid var(--line)}
.chat-frame{height:calc(100% - 60px);min-height:390px;display:grid;place-items:center;padding:28px;text-align:center;background:#0a0d11}
.broadcast-form{margin-top:18px;padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}
.broadcast-form label{display:block;margin-bottom:9px;font-weight:800}
.broadcast-form>div{display:grid;grid-template-columns:1fr auto;gap:10px}
.broadcast-form input{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:#090c10;color:#fff;outline:none}
.broadcast-form input:focus{border-color:#707b88;box-shadow:0 0 0 3px rgba(138,170,58,.14)}
.broadcast-form p{min-height:22px;margin:7px 0 0;color:#ff8a8e;font-size:.85rem}
.schedule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.schedule-card{padding:26px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,var(--panel2),#0d1015)}
.schedule-card>span{color:var(--green);font-size:.76rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.schedule-card h3{margin:12px 0 7px;font-size:1.35rem}
.schedule-card p{margin:0 0 13px;color:var(--muted)}
.schedule-card strong{color:#fff}
.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.about-copy p{color:var(--muted);font-size:1.04rem}
.about-copy strong{display:inline-block;margin-top:8px;color:#fff}
.ad-zone{margin:18px 0 28px;padding:clamp(22px,4vw,42px);border:1px solid #3c434d;border-radius:24px;background:#10151b;box-shadow:var(--shadow)}
.ad-zone-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 auto 22px;max-width:850px}
.ad-zone-head h2{margin:0;font-size:clamp(2rem,4vw,3rem);line-height:1.1;letter-spacing:-.035em;text-transform:uppercase}
.sponsor-button{flex:none;background:var(--red);color:#fff}
.ad-zone-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.ad-zone-actions .button{white-space:nowrap}
.sponsor-button:hover{background:var(--red2)}
.sponsor-ticker{display:flex;flex-wrap:wrap;gap:8px;margin:0 auto 24px;max-width:850px}
.sponsor-ticker span{padding:8px 12px;border:1px solid #3d464f;border-radius:999px;background:#1a222a;color:#dce4e8;font-size:.75rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.promo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;width:100%;max-width:none;margin:0;align-items:stretch}
.promo-grid>.promo,.promo-grid>.donation-card{min-width:0;width:100%;height:100%}
.promo-grid>.promo{display:flex;flex-direction:column}
.promo-grid>.promo img,.promo-grid>.promo video{width:100%;height:100%;min-height:260px;object-fit:cover;flex:1}
.promo-grid>.promo-community-ad img{object-fit:contain}
.promo-grid>.donation-card{display:flex;flex-direction:column;justify-content:center}
.promo-grid>.promo-music{grid-column:1/-1}
@media(max-width:900px){.promo-grid{grid-template-columns:1fr}.promo-grid>.promo-music{grid-column:auto}.promo-grid>.promo img,.promo-grid>.promo video{min-height:0}}
.promo{display:block;min-width:0;overflow:hidden;border:1px solid #3d464f;border-radius:13px;background:#171e25;transition:border-color .2s ease,background-color .2s ease}
.promo:hover{border-color:var(--red2);background:#202a33}
.promo:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.promo-label{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;color:#e8edf0;font-size:.8rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.promo-label span{color:var(--green);font-size:1rem;line-height:1}
.promo img{display:block;width:100%;height:auto;aspect-ratio:8/1;object-fit:contain;background:#090c10}
.promo-host img{aspect-ratio:2170/725}
.promo-community-ad img{aspect-ratio:3/2;object-fit:contain;background:#090c10}
.contact-card{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:90px;padding:36px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(135deg,var(--panel2),#0d1115)}
.contact-card h2{font-size:clamp(2rem,4vw,3.5rem)}
.contact-card p:not(.eyebrow){color:var(--muted)}
footer{display:flex;align-items:center;justify-content:space-between;gap:18px;width:min(var(--max),calc(100% - 40px));margin:auto;padding:30px 0;border-top:1px solid var(--line);color:var(--muted);font-size:.88rem}
footer img{width:88px;height:48px;object-fit:contain}
footer a{color:#fff}
.team-intro{max-width:850px;padding:80px 0 50px}
.team-intro>p:last-child{max-width:680px;color:var(--muted);font-size:1.08rem}
.team-list{display:grid;gap:24px;padding-bottom:90px}
.profile-card{padding:clamp(24px,5vw,46px);border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,var(--panel2),#0d1015);box-shadow:var(--shadow)}
.profile-header{display:flex;align-items:center;gap:25px;margin-bottom:26px}
.profile-header h2{margin:0;font-size:clamp(2rem,5vw,4rem);line-height:1;letter-spacing:-.04em}
.profile-logo{display:grid;place-items:center;overflow:hidden;flex:0 0 auto;border:1px solid #3a424d;border-radius:16px;background:#fff}
.profile-logo img{width:100%;height:100%;object-fit:contain}
.plush-logo{width:210px;height:120px}
.inferno-logo{width:210px;height:120px;background:#000}
.influence{display:grid;grid-template-columns:190px 1fr;gap:20px;margin-bottom:25px;padding:18px;border-left:4px solid var(--red);background:rgba(255,255,255,.035)}
.influence span{color:var(--green);font-size:.76rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.influence p{margin:0}
.profile-bio{columns:2;column-gap:40px}
.profile-bio p{margin-top:0;color:#c2c9d0;break-inside:avoid}
@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:900px){.hero{grid-template-columns:1fr;min-height:auto}.twitch-live-card{width:100%;max-width:620px}.hero-copy{position:relative;z-index:1}.broadcast-grid,.about-grid{grid-template-columns:1fr}.chat-frame{min-height:360px}.schedule-grid{grid-template-columns:1fr}.about-grid{gap:20px}.profile-bio{columns:1}}
@media(max-width:900px){.broadcast-grid{grid-template-areas:"youtube" "chat"}.studio-box .chat-panel{border-left:0;border-top:1px solid var(--line)}}
@media(max-width:720px){.site-header{width:calc(100% - 28px);min-height:78px}.site-header:before{height:78px}.brand{width:125px;height:64px}.nav-toggle{display:block}.main-nav{display:none;position:absolute;top:79px;left:0;right:0;flex-direction:column;align-items:stretch;padding:12px;border:1px solid var(--line);border-radius:14px;background:#0b0e12;box-shadow:var(--shadow)}.main-nav.open{display:flex}.main-nav a{padding:12px 14px}main,footer{width:calc(100% - 28px)}.hero{padding:50px 24px;border-radius:22px}.hero h1{font-size:3.7rem}.section{padding:65px 0}.section-heading{align-items:flex-start;flex-direction:column}.broadcast-form>div{grid-template-columns:1fr}.contact-card{align-items:flex-start;flex-direction:column}.team-intro{padding-top:55px}.profile-header{align-items:flex-start;flex-direction:column}.plush-logo,.inferno-logo{width:190px;height:107px}.influence{grid-template-columns:1fr;gap:6px}footer{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-art,.promo-advertise,.twitch-live-head i{animation:none}.promo{transition:none}}
@media(max-width:560px){.radio-player-main{grid-template-columns:auto 1fr}.radio-volume{grid-column:1/-1;width:100%}.radio-player-topline{align-items:flex-start;flex-direction:column;gap:4px}}
@media(max-width:720px){.ad-zone{margin:18px 0 28px;padding:24px 18px}.ad-zone-head{align-items:flex-start;flex-direction:column;gap:16px}.sponsor-ticker{gap:7px}.sponsor-ticker span{font-size:.68rem;padding:7px 10px}.promo-label{padding:9px 12px}}
@media(max-width:720px){.site-header{min-height:88px}.site-header:before{height:88px}.brand{width:160px;height:76px}.main-nav{top:89px}}
@media(max-width:720px){.site-header{min-height:142px;padding:7px 0 10px}.site-header:before{height:142px}.brand{width:230px;height:96px}.nav-toggle{padding:7px 18px}.main-nav{top:143px}}
.portal-shell{max-width:none;min-height:calc(100vh - 108px);padding:70px 0 100px}.portal-intro h1{margin:0;font-size:clamp(2.8rem,7vw,5.8rem);line-height:.9;letter-spacing:-.055em;text-transform:uppercase}.portal-intro>p:last-child{color:var(--muted)}.portal-card{margin-top:34px;padding:clamp(24px,5vw,44px);border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,var(--panel2),#0d1015);box-shadow:var(--shadow)}.portal-card h2,.portal-card h3{margin-top:0}.portal-title{display:flex;align-items:center;justify-content:space-between;gap:20px}.portal-form{display:grid;gap:17px}.portal-form label{display:grid;gap:7px;color:#d9dee3;font-weight:800}.portal-form input,.portal-form select{width:100%;padding:14px;border:1px solid var(--line);border-radius:12px;background:#090c10;color:#fff}.portal-form .button{justify-self:start}.portal-sub{margin-top:34px;padding-top:30px;border-top:1px solid var(--line)}.form-error{color:#ff8a8e}.form-success{color:#b9da6b}@media(max-width:720px){.portal-shell{min-height:calc(100vh - 88px);padding-top:48px}.portal-title{align-items:flex-start;flex-direction:column}}

/* swap.css */
.hero-station-copy{max-width:760px;color:var(--muted);font-size:1.02rem}
.hero-station-copy p{margin:0 0 13px}
.hero-station-copy strong{display:block;margin-top:17px;color:#fff}
.hero .listener-stats{margin:22px 0 27px}

/* logo-size.css */
.site-header{min-height:275px}
.site-header::before{height:275px}
.brand{width:550px;height:220px}
@media(max-width:720px){
  .site-header{min-height:190px}
  .site-header::before{height:190px}
  .brand{width:min(310px,100%);height:122px}
  .main-nav{top:191px}
}

/* logo-grid.css */
.home-page,
body{
  background-color:#07090c;
  background-image:
    radial-gradient(circle at 12% 16%,rgba(138,170,58,.09),transparent 24%),
    radial-gradient(circle at 88% 42%,rgba(220,34,40,.1),transparent 28%),
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:auto,auto,40px 40px,40px 40px;
  background-attachment:fixed;
}
.site-header::before{
  background:
    radial-gradient(circle at 50% 45%,rgba(220,34,40,.24),transparent 36%),
    radial-gradient(circle at 18% 55%,rgba(138,170,58,.13),transparent 25%),
    radial-gradient(circle at 82% 55%,rgba(138,170,58,.13),transparent 25%),
    linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(180deg,#11161d 0%,#07090c 88%);
  background-size:auto,auto,auto,32px 32px,32px 32px,auto;
  box-shadow:inset 0 -1px rgba(255,66,72,.45),0 18px 50px rgba(0,0,0,.38);
}
.brand{
  position:relative;
  isolation:isolate;
  filter:drop-shadow(0 12px 24px rgba(0,0,0,.7));
}
.header-top .brand::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:12% 8%;
  border-radius:50%;
  background:radial-gradient(ellipse at 57% 45%,rgba(255,39,58,.38),transparent 58%),radial-gradient(ellipse at 34% 62%,rgba(151,224,48,.24),transparent 62%);
  filter:blur(22px);
  opacity:.8;
  pointer-events:none;
  animation:logo-neon-breathe 5s ease-in-out infinite;
}
.header-top .brand img{
  position:relative;
  filter:drop-shadow(0 0 6px rgba(255,54,68,.72)) drop-shadow(0 0 18px rgba(255,40,56,.36)) drop-shadow(0 0 7px rgba(174,227,76,.32));
}
.header-top .brand:hover img,
.header-top .brand:focus-visible img{
  filter:drop-shadow(0 0 8px rgba(255,70,82,.95)) drop-shadow(0 0 25px rgba(255,40,56,.58)) drop-shadow(0 0 10px rgba(174,227,76,.5));
}
@keyframes logo-neon-breathe{
  50%{opacity:1;transform:scale(1.04)}
}
@media(prefers-reduced-motion:reduce){
  .header-top .brand::before{animation:none}
}
.main-nav{
  padding:4px 9px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  background:rgba(5,7,10,.72);
  box-shadow:0 10px 30px rgba(0,0,0,.3);
  backdrop-filter:blur(10px);
}
@media(max-width:720px){
  .site-header::before{background-size:auto,auto,auto,24px 24px,24px 24px,auto}
  .main-nav{padding:12px}
}

/* usability.css */
/* Give the station artwork and the content room in the viewport. */
.site-header{position:relative}
.hero{min-height:0;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);grid-template-areas:"left sponsor" "onair tv" "feedback tv" "tagline tagline" "engagement engagement";align-items:start;gap:clamp(20px,2.5vw,32px);padding:clamp(26px,4vw,48px)}
.hero .twitch-column{display:contents}
.hero-left-stack{grid-area:left;display:flex;flex-direction:column;justify-content:space-between;align-self:stretch;gap:clamp(12px,1.5vw,18px);min-width:0}
.hero .radio-player{margin:0}
.hero .hero-copy{min-width:0;margin-top:auto}
.hero .hero-intro-card{margin-top:14px}
.hero .on-air-section{grid-area:onair;min-width:0;padding:0}
.hero .on-air-section .digital-live-heading{gap:10px;margin-bottom:12px}
.hero .on-air-section .on-air-live-button{min-height:70px;font-size:clamp(1.25rem,2.2vw,2rem)}
.hero .on-air-section .station-clock{min-width:155px}
.hero .on-air-section .station-clock span{font-size:1.3rem}
.hero .on-air-section .on-air-card{grid-template-columns:auto minmax(0,1fr);gap:12px;padding:18px}
.hero .on-air-section .on-air-actions{grid-column:1/-1;justify-content:flex-start;max-width:none}
.hero .on-air-section .on-air-progress{padding-top:11px}
.hero .twitch-ad-banner{grid-area:tagline;margin:0}
.hero-media-stack{display:contents}
.hero-video-panel{grid-area:tv;overflow:hidden;border-radius:18px;background:#0a0d12}
.hero-video-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;background:#161b23;color:#fff;font-size:.9rem;text-transform:uppercase;letter-spacing:.06em}
.hero-video-heading span{color:#aeb9c8;font-size:.7rem}
.hero-video-panel .empty-state{padding:18px}
.hero-video-panel .empty-state h3{font-size:1.1rem}
.hero-video-panel .player-info{padding:11px 14px}
.hero-sponsor-slot{grid-area:sponsor;position:relative;align-self:start;width:100%;aspect-ratio:2/3;overflow:hidden;border-radius:20px;background:#07101a}
.hero-sponsor-slot .hero-sponsor-ad{height:100%;aspect-ratio:auto}
.hero-sponsor-slot .hero-sponsor-ad[hidden],.hero-sponsor-video[hidden],.hero-sponsor-video-link[hidden]{display:none}
.hero-sponsor-video{display:block;width:100%;height:100%;object-fit:contain;background:#080a0d;border:1px solid #78343b;border-radius:20px}
.hero-sponsor-video-link{position:absolute;right:16px;top:16px;padding:8px 12px;border-radius:8px;background:rgba(8,10,13,.88);color:#fff;text-decoration:none;font-size:.78rem;font-weight:800}
.hero-sponsor-video-link:focus-visible{outline:3px solid #a8cc57;outline-offset:3px}
.hero-banner-controls{position:absolute;z-index:3;inset:0;display:flex;align-items:center;justify-content:space-between;padding:8px;pointer-events:none}
.hero-banner-controls button{pointer-events:auto;display:grid;place-items:center;width:44px;height:52px;border:1px solid rgba(255,255,255,.55);border-radius:12px;background:rgba(4,7,10,.78);color:#fff;font-family:inherit;font-size:2.25rem;font-weight:700;line-height:1;cursor:pointer;box-shadow:0 4px 16px rgba(0,0,0,.35)}
.hero-banner-controls button:hover{background:rgba(25,34,44,.95);border-color:#fff}
.hero-banner-controls button:focus-visible{outline:3px solid #a8cc57;outline-offset:3px}
.hero h1{font-size:clamp(2.9rem,5.3vw,5.4rem);line-height:.94}
.hero-station-copy{font-size:1rem}
.hero .listener-stats{grid-area:stats;justify-self:end;margin:0}
.section{padding:18px 0}
.team-intro{padding-top:54px}
.twitch-feed{height:auto;aspect-ratio:16/9}
.social-live-chat{margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:16px;background:#0d1118}
.social-live-chat-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}
.social-live-chat-heading strong{color:#fff;font-size:1rem}
.social-live-chat-heading span{color:var(--muted);font-size:.78rem}
.social-live-chat-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.social-chat-link{display:flex;align-items:center;gap:10px;min-width:0;min-height:64px;padding:9px 11px;border:1px solid #383e4a;border-radius:11px;background:#151923;color:#fff;text-decoration:none;transition:border-color .2s,background .2s}
.social-chat-link:hover,.social-chat-link:focus-visible{border-color:#abb4c5;background:#1b2330}
.social-chat-link>span:nth-child(2){display:flex;flex:1;flex-direction:column;min-width:0}
.social-chat-link strong{font-size:.88rem;line-height:1.2}
.social-chat-link small{overflow:hidden;color:#b7beca;font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}
.social-chat-link b{font-size:1.15rem;font-weight:500}
.social-chat-icon{display:grid;flex:0 0 34px;place-items:center;width:34px;height:34px;border-radius:9px;background:#ab437e;color:#fff;font-size:.9rem;font-weight:900}
.social-chat-facebook .social-chat-icon{background:#2854a5;font-size:1.35rem}
.social-chat-twitch .social-chat-icon{background:#7440b4}
.social-chat-youtube .social-chat-icon{background:#d52631;font-size:1rem}
.social-chat-link small{font-size:.76rem}
.hero-sponsor-ad{display:flex;flex-direction:column;justify-content:center;align-self:start;width:100%;height:auto;aspect-ratio:2/3;padding:26px clamp(20px,3vw,34px);overflow:hidden;border:1px solid #78343b;border-radius:20px;background:radial-gradient(circle at 100% 0%,rgba(230,46,55,.25),transparent 55%),linear-gradient(120deg,#11131a,#251317 80%,#15171c);color:#fff;text-decoration:none;box-shadow:0 18px 38px rgba(0,0,0,.28)}
.hero-sponsor-content{display:flex;flex-direction:column;justify-content:center}
.hero-sponsor-ad.is-flyer{padding:0;background:#071526;border-color:#c59739}
.hero-sponsor-ad img{display:block;width:100%;height:100%;object-fit:contain}
.hero-sponsor-ad img[hidden],.hero-sponsor-ad .hero-sponsor-content[hidden]{display:none}
.hero-sponsor-ad:hover,.hero-sponsor-ad:focus-visible{border-color:#e34a53}
.hero-sponsor-kicker{color:#f4aeb2;font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.hero-sponsor-content>strong{margin:13px 0 8px;font-size:clamp(2rem,4vw,3.5rem);font-weight:950;line-height:.94;letter-spacing:-.05em}
.hero-sponsor-detail{color:#d5c7ca;font-size:.82rem;line-height:1.5}
.hero-sponsor-detail i{color:#eb515a;font-style:normal}
.hero-sponsor-cta{align-self:flex-start;margin-top:18px;padding:9px 13px;border-radius:8px;background:#d52c36;font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.hero-sponsor-cta b{margin-left:8px}
.listener-stats>div{min-width:164px;padding:10px 16px 12px;border-color:#663238;background:linear-gradient(155deg,#140d10,#080b10);box-shadow:inset 0 0 16px rgba(240,49,57,.1),0 0 16px rgba(240,49,57,.08);text-align:right}
.listener-stats span{color:#ff4e56;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:2rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.12em;text-shadow:0 0 12px rgba(255,49,62,.72)}
.listener-stats span.count-flip{transform-origin:center;animation:visitorFlip .65s ease-out both}
@keyframes visitorFlip{0%{transform:rotateX(-90deg);opacity:.15}65%{transform:rotateX(18deg);opacity:1}100%{transform:rotateX(0)}}
@media(prefers-reduced-motion:reduce){.listener-stats span.count-flip{animation:none}}
.listener-stats small{color:#f0b0b4;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.72rem;letter-spacing:.13em}
.social-chat-link:focus-visible{outline:3px solid var(--green);outline-offset:2px}
.chat-only-grid{display:block}
.chat-only-grid .chat-panel{width:100%;border-left:0}
.twitch-ad-banner{position:relative;isolation:isolate;display:grid;place-items:center;height:100px;min-height:100px;padding:15px 18px;overflow:hidden;border:1px solid rgba(255,66,72,.7);border-radius:14px;background:radial-gradient(circle at 20% 50%,rgba(220,34,40,.35),transparent 44%),radial-gradient(circle at 85% 50%,rgba(138,170,58,.18),transparent 42%),linear-gradient(105deg,#080b10,#18202a 52%,#080b10);text-align:center;transform:none}
.twitch-ad-banner::before{content:"";position:absolute;z-index:-1;inset:0;opacity:.65;background:repeating-linear-gradient(120deg,transparent 0 35px,rgba(255,255,255,.035) 35px 37px);pointer-events:none}
.twitch-ad-banner::after{content:"";position:absolute;inset:auto 16px 12px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--red2),var(--green),var(--red2));box-shadow:0 0 15px rgba(255,66,72,.35);pointer-events:none}
.twitch-ad-banner strong{display:block;width:max-content;max-width:none;color:#fff;font-size:20px;font-weight:950;line-height:1.15;letter-spacing:-.015em;text-shadow:0 2px 12px #000;white-space:nowrap;text-transform:uppercase}
.twitch-ad-banner:hover{transform:none;border-color:rgba(255,66,72,.7)}
.hero .twitch-ad-banner{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:10px;width:100%;height:auto;min-height:0;margin:0;padding:0;overflow:visible;border:0;border-radius:0;background:none;box-shadow:none}
.hero .twitch-ad-banner::before,.hero .twitch-ad-banner::after{display:none}
.hero .twitch-ad-banner:hover{border:0;transform:none}
.hero .twitch-ad-banner strong{width:auto;max-width:100%;font-size:clamp(1.1rem,2.2vw,2rem);line-height:1.2;letter-spacing:.015em;white-space:normal;text-wrap:balance}
.hero-special-banner{display:block;width:100%;aspect-ratio:2048/682;overflow:hidden;border:1px solid rgba(255,187,78,.68);border-radius:8px;background:#050608;box-shadow:0 0 10px rgba(255,193,72,.54),0 0 28px rgba(233,54,57,.28),0 0 48px rgba(176,225,61,.15),inset 0 0 18px rgba(255,194,73,.22)}
.hero-special-banner img{display:block;width:100%;height:100%;object-fit:contain}
.hero-special-banner:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.rotating-ad-banner img[hidden]{display:none}
.radio-play:focus-visible,.nav-toggle:focus-visible,.main-nav a:focus-visible{outline:3px solid var(--green);outline-offset:3px}
@media(max-width:900px){
  .hero{grid-template-columns:minmax(0,1fr);grid-template-areas:"left" "sponsor" "tv" "onair" "feedback" "tagline" "engagement"}
  .hero-left-stack{justify-content:flex-start;align-self:start}
  .hero .hero-copy{margin-top:clamp(16px,2vw,26px)}
}
@media(max-width:720px){
  .site-header{min-height:190px}
  .site-header::before{height:190px}
  .brand{width:min(310px,100%);height:122px}
  .main-nav{top:191px}
  .hero{padding:24px 18px;gap:22px}
  .hero h1{font-size:clamp(2.55rem,11vw,3.8rem)}
  .social-live-chat-heading{display:block}
  .social-live-chat-heading span{display:block;margin-top:4px}
  .social-live-chat-links{grid-template-columns:1fr}
  .portal-shell{padding-top:42px}
}


/* DJ DIEGOTT – video fit only. DO NOT resize card/grid/frame. */
.artiste-watch-card #video-frame.artiste-watch-frame{
  position:relative !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
  background:#05070a;
}
.artiste-watch-card #video-frame.artiste-watch-frame > video{
  position:static !important;
  display:block !important;
  width:auto !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  margin:auto !important;
  padding:0 !important;
  inset:auto !important;
  transform:none !important;
  object-fit:contain !important;
  object-position:center center !important;
  aspect-ratio:9 / 16;
  box-sizing:border-box !important;
  background:#05070a;
}
.artiste-watch-card #video-frame.artiste-watch-frame > img{
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
}


/* DJ DIEGOTT – restore visible card/grid; video stays INSIDE it */
.artiste-watch-card{
  position:relative !important;
  display:grid !important;
  grid-template-rows:auto minmax(0,1fr) !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
  border:2px solid rgba(255,202,92,.95) !important;
  border-radius:14px !important;
  box-shadow:
    0 0 8px rgba(255,202,92,.82),
    0 0 20px rgba(255,82,82,.52),
    0 0 34px rgba(108,224,255,.30) !important;
  background:#05070a !important;
}
.artiste-watch-card .hero-video-heading{
  position:relative !important;
  z-index:2 !important;
  margin:0 !important;
  padding:10px 12px !important;
  box-sizing:border-box !important;
  background:rgba(3,6,12,.94) !important;
}
.artiste-watch-card #video-frame.artiste-watch-frame{
  position:relative !important;
  inset:auto !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  aspect-ratio:auto !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
  background:#05070a !important;
}
.artiste-watch-card #video-frame.artiste-watch-frame > video,
.artiste-watch-card #video-frame.artiste-watch-frame > img{
  position:static !important;
  inset:auto !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
  object-fit:contain !important;
  object-position:center center !important;
  box-sizing:border-box !important;
}


/* DJ DIEGOTT – VIDEO SIZE ONLY. Card/grid/frame/glow intentionally untouched. */
.artiste-watch-card #video-frame.artiste-watch-frame > video{
  width:auto !important;
  height:88% !important;
  max-width:88% !important;
  max-height:88% !important;
  aspect-ratio:9 / 16 !important;
  object-fit:contain !important;
  object-position:center center !important;
  margin:auto !important;
  align-self:center !important;
  justify-self:center !important;
}
@media(max-width:900px){
  .artiste-watch-card #video-frame.artiste-watch-frame > video{
    height:84% !important;
    max-width:84% !important;
    max-height:84% !important;
  }
}


/* DJ DIEGOTT – reduce CARD/GRID footprint only */
@media(min-width:901px){
  .artiste-watch-card{
    height:360px !important;
    min-height:0 !important;
    max-height:360px !important;
    align-self:start !important;
  }
}
@media(max-width:900px){
  .artiste-watch-card{
    height:300px !important;
    min-height:0 !important;
    max-height:300px !important;
  }
}


/* DJ DIEGOTT – extend card/grid/video together into the gap below */
@media(min-width:901px){
  .artiste-watch-card{
    height:510px !important;
    min-height:510px !important;
    max-height:510px !important;
    align-self:start !important;
  }
  .artiste-watch-card #video-frame.artiste-watch-frame{
    min-height:0 !important;
    height:100% !important;
  }
  .artiste-watch-card #video-frame.artiste-watch-frame > video{
    width:auto !important;
    height:94% !important;
    max-width:94% !important;
    max-height:94% !important;
    aspect-ratio:9 / 16 !important;
    object-fit:contain !important;
    object-position:center center !important;
    margin:auto !important;
  }
}
@media(max-width:900px){
  .artiste-watch-card{
    height:390px !important;
    min-height:390px !important;
    max-height:390px !important;
  }
  .artiste-watch-card #video-frame.artiste-watch-frame{
    min-height:0 !important;
    height:100% !important;
  }
  .artiste-watch-card #video-frame.artiste-watch-frame > video{
    width:auto !important;
    height:92% !important;
    max-width:92% !important;
    max-height:92% !important;
    aspect-ratio:9 / 16 !important;
    object-fit:contain !important;
    object-position:center center !important;
    margin:auto !important;
  }
}

/* station-chat.css */
.emoji-picker-toggle:focus-visible,.chat-send-row button:focus-visible{outline:2px solid #fff;outline-offset:-3px}
.live-chat-title{display:flex;align-items:center;gap:14px;margin:0;padding:18px 22px;border-bottom:1px solid #476472;background-color:#0c1720;background-image:linear-gradient(90deg,rgba(101,191,210,.07) 1px,transparent 1px),linear-gradient(rgba(101,191,210,.05) 1px,transparent 1px);background-size:24px 24px;color:#effcff;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:clamp(1.1rem,2.6vw,1.6rem);font-weight:900;line-height:1.2;letter-spacing:.1em;text-shadow:0 0 16px rgba(117,215,235,.48);box-shadow:inset 0 1px rgba(173,233,246,.16)}
.live-chat-title small{margin-left:auto;color:#a7c7cf;font-family:inherit;font-size:.66rem;font-weight:800;letter-spacing:.18em;text-shadow:none;white-space:nowrap}
.chat-live-light{flex:none;width:11px;height:11px;border-radius:50%;background:#ff5764;box-shadow:0 0 0 4px rgba(255,87,100,.12),0 0 13px #ff5764}
.station-chat-panel{position:relative;display:flex;flex-direction:column;height:680px;max-height:80vh;background:#0a0d12}
.station-chat-messages{flex:1;min-height:240px;overflow-y:auto;padding:22px;scrollbar-color:#555d6c #0a0d12;background-color:#0a0d12;background-image:linear-gradient(rgba(91,103,125,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(91,103,125,.08) 1px,transparent 1px),linear-gradient(rgba(10,13,18,.83),rgba(10,13,18,.83)),url("/images/logo.png");background-size:28px 28px,28px 28px,100% 100%,min(520px,76%) auto;background-position:0 0,0 0,center,center;background-repeat:repeat,repeat,no-repeat,no-repeat}
.chat-empty{margin:24px 0!important;color:#aeb9c8;text-align:center;font-size:.9rem}
.chat-message{margin-bottom:13px;padding:10px 12px;border:1px solid #292e38;border-radius:12px;background:#151a23;overflow-wrap:anywhere}
.chat-message-head{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}
.chat-message-head strong{max-width:58%;overflow:hidden;color:#ff666d;font-size:.85rem;text-overflow:ellipsis;white-space:nowrap}
.chat-message-head time{color:#98a4b3;font-size:.75rem}
.chat-message p{margin:0;color:#f0f2f6;font-size:.92rem;line-height:1.45;white-space:pre-wrap}
.chat-delete{margin-left:auto;padding:2px 5px;border:0;background:transparent;color:#c8d0dc;font-size:.72rem;cursor:pointer}
.chat-delete:hover{color:#ff7b84}
.station-chat-form{display:flex;flex-direction:column;gap:6px;padding:13px 14px 14px;border-top:1px solid #333a46;background:#10151d}
.station-chat-form label{color:#cdd5df;font-size:.77rem;font-weight:750}
.station-chat-form input,.station-chat-form textarea{width:100%;padding:9px 10px;border:1px solid #434c5b;border-radius:9px;background:#070a0f;color:#fff;font:inherit;font-size:.88rem;resize:vertical}
.station-chat-form input:focus,.station-chat-form textarea:focus{outline:2px solid #e44852;outline-offset:1px}
.chat-emoji-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:4px}
.chat-emoji-row button,.chat-emoji-row .chat-media-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:7px 12px;border:1px solid #59818b;border-radius:9px;background:linear-gradient(180deg,#213946,#12222f);color:#effcff;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.77rem;font-weight:900;letter-spacing:.025em;box-shadow:inset 0 1px #a6f2ff22,0 3px 9px #0005;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s}
.chat-emoji-row .chat-button-icon{color:#88edf0;font-size:1.12rem;line-height:1;text-shadow:0 0 11px #60e7f0a8}
.chat-emoji-row button:hover,.chat-emoji-row .chat-media-button:hover{border-color:#9ceaf0;background:linear-gradient(180deg,#2b5260,#183741);box-shadow:inset 0 1px #b8f9ff33,0 0 14px #55dce64d;transform:translateY(-1px)}
.chat-emoji-row button[aria-expanded="true"]{border-color:#d1f286;background:linear-gradient(180deg,#334a2c,#1b3128);box-shadow:0 0 14px #c6ec7855}
.chat-emoji-row button[aria-expanded="true"] .chat-button-icon{color:#d9f994;text-shadow:0 0 10px #cef47d}
.chat-emoji-row button:focus-visible,.chat-emoji-row .chat-media-button:focus-within{outline:3px solid #d1f286;outline-offset:2px}
.chat-media-preview{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid #424b59;border-radius:9px;background:#18212b;color:#fff;font-size:.8rem}
.chat-media-preview[hidden]{display:none}
.chat-media-preview img{max-width:160px;max-height:90px;border-radius:6px}
.chat-media-preview audio{max-width:min(320px,70vw)}
.chat-media-preview button{margin-left:auto;padding:6px 9px;border:0;border-radius:6px;background:#493239;color:#fff;cursor:pointer}
.chat-message img{display:block;max-width:min(320px,100%);max-height:240px;margin-top:8px;border-radius:9px;object-fit:contain}
.chat-message audio{display:block;max-width:100%;margin-top:8px}
.chat-emoji-row #voice-record[aria-pressed="true"]{border-color:#ff8190;background:linear-gradient(180deg,#a32636,#691824);color:#fff;box-shadow:0 0 17px #ff566a66}
.chat-emoji-row button[aria-controls="emoji-picker"]{flex:1;white-space:nowrap}
.emoji-picker{position:absolute;z-index:5;top:12px;right:9px;bottom:auto;left:9px;max-height:min(340px,60vh);padding:11px;border:1px solid #586273;border-radius:13px;background:#171d27;box-shadow:0 16px 32px rgba(0,0,0,.6)}
.emoji-picker[hidden]{display:none}
.emoji-picker-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;color:#fff;font-size:.9rem}
.emoji-picker-head button{border:0;background:transparent;color:#fff;font-size:1.4rem;line-height:1;cursor:pointer}
.emoji-picker input{margin-bottom:8px}
.emoji-picker-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;max-height:165px;overflow-y:auto}
.emoji-picker-grid button{min-height:36px;border:0;border-radius:6px;background:#252e3c;color:#fff;font-size:1.2rem;cursor:pointer}
.emoji-picker-grid button:hover,.emoji-picker-grid button:focus-visible{background:#4b586a;outline:2px solid #f46a71}
.emoji-picker-grid p{grid-column:1/-1;padding:10px;color:#d4dae4;font-size:.8rem}
.emoji-picker-grid.gif-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:220px}
.gif-picker-grid button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:5px;font-size:.72rem}
.gif-picker-grid img{width:100%;height:90px;object-fit:contain;border-radius:4px;background:#0a0d12}
@media(max-width:520px){.chat-emoji-row button[aria-controls="emoji-picker"]{flex:1 1 25%}.emoji-picker-grid.gif-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.chat-send-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:35px}
.chat-send-row span{color:#f7a5a9;font-size:.76rem;line-height:1.3}
.chat-send-row button{flex:none;padding:9px 14px;border:0;border-radius:8px;background:#d42d37;color:#fff;font:inherit;font-size:.83rem;font-weight:850;cursor:pointer}
.chat-send-row button:disabled{opacity:.55;cursor:wait}
@media(max-width:900px){.station-chat-panel{height:620px;max-height:none}}
@media(max-width:600px){.live-chat-title{gap:10px;padding:16px 14px;letter-spacing:.06em}.live-chat-title small{display:none}}
@media(prefers-reduced-motion:reduce){.chat-emoji-row button,.chat-emoji-row .chat-media-button{transition:none}.chat-emoji-row button:hover,.chat-emoji-row .chat-media-button:hover{transform:none}}

/* header-social.css */
.site-header{min-height:0;padding:8px 0 12px}
.site-header::before{height:100%}
.header-top{display:flex;align-items:center;justify-content:center;gap:clamp(20px,4vw,64px);width:100%}
.header-top .brand{flex:0 1 650px;max-width:650px;height:260px;min-width:0}
.header-social{display:grid;grid-template-columns:repeat(2,minmax(122px,1fr));gap:6px;width:min(300px,35%)}
.header-social-button{display:flex;align-items:center;justify-content:space-between;gap:5px;min-height:34px;padding:5px 8px;border:1px solid rgba(255,255,255,.21);border-radius:8px;background:#171b23;color:#fff;text-decoration:none;font-size:.72rem;font-weight:700;box-shadow:0 5px 18px rgba(0,0,0,.25);transition:background .15s,border-color .15s,transform .15s}
.header-social-button strong{font-size:.64rem;text-transform:uppercase;letter-spacing:.01em;white-space:nowrap}
.header-social-button.youtube{border-color:#ba3036}.header-social-button.youtube strong{color:#ff7076}
.header-social-button.facebook{border-color:#365ea5}.header-social-button.facebook strong{color:#8eb5ff}
.header-social-button.instagram{border-color:#ac518e}.header-social-button.instagram strong{color:#efa6d8}
.header-social-button.twitch{border-color:#7448ad}.header-social-button.twitch strong{color:#c7a4ff}
.header-social-button:hover{background:#252c39;transform:translateY(-2px)}
.header-social-button:focus-visible{outline:3px solid #a8cc57;outline-offset:3px}
@media(max-width:900px){.header-top .brand{flex-basis:480px;height:200px}.header-social{width:min(300px,43%);grid-template-columns:1fr 1fr}.header-social-button{flex-direction:column;justify-content:center;gap:1px;padding:5px 4px;font-size:.68rem}.header-social-button strong{font-size:.62rem}}
@media(max-width:720px){.site-header{padding:8px 0 12px}.header-top{flex-direction:column;gap:3px}.header-top .brand{flex:none;width:min(330px,100%);height:132px}.header-social{width:min(100%,390px);grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.header-social-button{min-height:38px;font-size:.62rem}.header-social-button strong{font-size:.56rem}.main-nav{top:100%}.nav-toggle{order:2;margin-top:5px}}

/* TikTok: same dimensions and hover behavior as the existing social icons. */
.header-social-button.tiktok{border-color:#59dce3;color:#fff}

/* site-like.css */
.hero .station-like-panel{grid-area:likes;display:flex;align-items:center;justify-content:space-between;gap:18px;min-width:0;padding:14px 18px;border:1px solid #48624b;border-radius:15px;background:linear-gradient(105deg,#15241e,#121a22 70%)}.station-like-panel>div{display:grid;gap:2px}.station-like-panel>div strong{color:#fff;font-size:1rem}.station-like-panel>div span{color:#b8c9c0;font-size:.82rem}
.station-like-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:8px 14px;border:1px solid #a7cf71;border-radius:9px;background:#294d34;color:#f2f8ec;font:inherit;font-size:.9rem;font-weight:850;cursor:pointer;white-space:nowrap}.station-like-button:hover{background:#376344}.station-like-button[aria-pressed=true]{border-color:#d5f0a2;background:#4b7139}.station-like-button b{display:inline-grid;place-items:center;min-width:2em;padding:2px 7px;border:1px solid #a9c591;border-radius:6px;background:#152b23;color:#fff;font-variant-numeric:tabular-nums}.station-like-button:focus-visible{outline:3px solid #a8cc57;outline-offset:3px}.station-like-button:disabled{opacity:.6;cursor:wait}
.station-like-compact{margin-left:auto}.station-like-compact .station-like-button{min-height:36px;padding:6px 10px;font-size:.76rem}.station-like-compact .station-like-button strong{font-size:inherit}
.audience-meter{display:flex;align-items:center;gap:9px;margin-top:13px;padding:10px 12px;border-top:1px solid #5a3b3f;color:#e3eee3}.audience-meter>span:nth-child(2){display:flex;align-items:baseline;gap:6px}.audience-meter strong{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:1.3rem;font-variant-numeric:tabular-nums;color:#d6ef9b}.audience-meter small{font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.audience-refresh{margin-left:auto;color:#aabdb5;font-size:.7rem}.audience-pulse{width:8px;height:8px;border-radius:50%;background:#a8d969;box-shadow:0 0 10px #b3eb82}.audience-bars{display:flex;align-items:end;gap:3px;height:18px;margin-left:4px}.audience-bars i{width:3px;height:5px;background:#8da575;border-radius:2px}.audience-meter.has-audience .audience-bars i:nth-child(2){height:10px}.audience-meter.has-audience .audience-bars i:nth-child(3){height:16px}.audience-meter.has-audience .audience-bars i:nth-child(4){height:12px}.audience-meter.has-audience .audience-bars i:nth-child(5){height:8px}
@media(max-width:700px){.hero .station-like-panel{align-items:stretch;flex-direction:column}.station-like-button{width:100%;white-space:normal}.station-like-compact{margin:8px 0 0}.station-like-compact .station-like-button{width:auto}.audience-refresh{font-size:.62rem}}
.stream-readout{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(0,1.3fr);gap:8px 14px;margin-top:15px;padding:14px;border:1px solid #44606b;border-radius:12px;background:linear-gradient(135deg,#09141b,#12222a 60%,#101720);box-shadow:inset 0 1px #d8f8ff17,0 0 18px #4dbcc518}
.stream-readout-count,.stream-readout-music{display:grid;align-content:start;min-width:0;gap:3px}
.stream-readout-count>span,.stream-readout-music>span{color:#9dbcc3;font:800 .68rem/1.3 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.1em}
.stream-readout-count strong{color:#d5f5a6;font:900 2rem/1 ui-monospace,SFMono-Regular,Consolas,monospace;font-variant-numeric:tabular-nums;text-shadow:0 0 15px #a5d87688}
.stream-readout-music strong{color:#f2f9fb;font-size:.9rem;line-height:1.35;white-space:normal;overflow-wrap:anywhere}
.stream-equalizer{grid-column:1/-1;display:flex;align-items:center;gap:4px;height:24px;padding-top:5px;border-top:1px solid #46606a99}
.stream-equalizer i{display:block;flex:1;height:4px;border-radius:2px;background:linear-gradient(0deg,#80d4d9,#cff18c);box-shadow:0 0 5px #73d5db55;transform-origin:bottom}
.radio-player.is-playing .stream-equalizer i{animation:streamBeat .9s ease-in-out infinite alternate}
.radio-player.is-playing .stream-equalizer i:nth-child(3n){animation-duration:.65s;animation-delay:-.3s}
.radio-player.is-playing .stream-equalizer i:nth-child(4n){animation-duration:1.2s;animation-delay:-.5s}
@keyframes streamBeat{0%{height:4px}45%{height:20px}100%{height:9px}}
.hero .listener-stats{display:flex;align-items:stretch;justify-self:end;gap:10px;flex-wrap:wrap}
.hero-engagement-row{grid-area:engagement;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr) minmax(0,1.15fr);align-items:stretch;gap:10px;min-width:0;margin-top:-8px}
.hero .hero-engagement-row .listener-stats{display:contents}
.hero .hero-engagement-row .visitor-total-card{grid-column:1;grid-row:1}
.hero .hero-engagement-row .listener-stats .audience-meter{grid-column:2;grid-row:1}
.hero .hero-engagement-row .listener-stats>div{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;min-height:76px;margin:0;padding:10px 14px;text-align:left}
.hero .hero-engagement-row .listener-stats small{margin:0 0 4px;font-size:.72rem;line-height:1.2;white-space:nowrap}
.hero .hero-engagement-row #total-listeners{font-size:clamp(1.4rem,2.2vw,1.8rem);letter-spacing:.02em;line-height:1.1;white-space:nowrap}
.hero .hero-engagement-row .listener-stats .audience-meter{flex-direction:row;justify-content:center;gap:9px}
.hero .hero-engagement-row .audience-eye{flex:none;width:25px;height:25px;color:#c9eaa4;filter:drop-shadow(0 0 8px rgba(143,202,108,.5))}
.hero .hero-engagement-row .audience-meter>span:nth-child(2){display:flex;flex-direction:column;align-items:flex-start;gap:0;margin:0}
.hero .hero-engagement-row .audience-meter strong{font-size:clamp(1.4rem,2.2vw,1.8rem);line-height:1.1}
.hero .hero-engagement-row .station-like-panel{grid-area:1/3/2/4;justify-content:center;min-width:0;min-height:76px;padding:10px 12px}
.hero .hero-engagement-row .station-like-button{width:100%;min-width:0;max-width:260px;min-height:42px;padding:6px 10px;white-space:nowrap;text-align:center}
@media(max-width:800px){.hero-engagement-row{margin-top:0}}
@media(max-width:520px){.hero-engagement-row{gap:6px}.hero .hero-engagement-row .listener-stats>div{min-height:68px;padding:7px}.hero .hero-engagement-row .listener-stats small{font-size:.7rem;line-height:1.2}.hero .hero-engagement-row #total-listeners,.hero .hero-engagement-row .audience-meter strong{font-size:1.18rem;letter-spacing:0}.hero .hero-engagement-row .listener-stats .audience-meter{padding:7px;gap:5px}.hero .hero-engagement-row .audience-eye{width:22px;height:22px}.hero .hero-engagement-row .station-like-panel{min-height:68px;padding:7px}.hero .hero-engagement-row .station-like-button{min-height:36px;padding:4px;gap:3px;font-size:.74rem}.hero .hero-engagement-row .station-like-button strong{font-size:inherit}.hero .hero-engagement-row .station-like-button b{padding:2px 4px}}
.listener-stats .audience-meter{display:flex;align-items:center;gap:10px;min-width:164px;margin:0;padding:10px 16px 12px;border:1px solid #44634e;border-radius:14px;background:linear-gradient(155deg,#0d1b18,#080b10);box-shadow:inset 0 0 16px #88cf7c15,0 0 16px #88cf7c13;text-align:right}
.listener-stats .audience-meter>span:nth-child(2){display:grid;justify-items:end;gap:0;margin-left:auto}
.listener-stats .audience-meter strong{color:#c9eaa4;font-size:2rem;line-height:1;text-shadow:0 0 12px #8fca6c77}
.listener-stats .audience-meter small{margin-top:6px;color:#b7d1b8;font-size:.72rem;letter-spacing:.13em}
@media(max-width:520px){.stream-readout{grid-template-columns:1fr 1.2fr;padding:11px}.stream-readout-count strong{font-size:1.7rem}.hero .listener-stats{justify-self:stretch}.listener-stats>div,.listener-stats .audience-meter{flex:1;min-width:130px}}
@media(prefers-reduced-motion:reduce){.radio-player.is-playing .stream-equalizer i{animation:none}}
/* Present the station activity as one centered line without individual cards. */
.hero .hero-engagement-row{display:flex;align-items:center;justify-content:center;gap:clamp(16px,4vw,54px);min-height:58px;margin-top:0}
.hero .hero-engagement-row .listener-stats>div,
.hero .hero-engagement-row .station-like-panel{min-width:0;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.hero .hero-engagement-row .listener-stats>div{align-items:center;text-align:center}
.hero .hero-engagement-row .visitor-total-card small{margin:0 0 3px}
.hero .hero-engagement-row .listener-stats .audience-meter{justify-content:center;gap:7px}
.hero .hero-engagement-row .station-like-panel{display:flex;justify-content:center}
.hero .hero-engagement-row .station-like-button{width:auto;min-height:38px}
@media(max-width:520px){.hero .hero-engagement-row{gap:clamp(8px,2.5vw,16px);min-height:56px}.hero .hero-engagement-row .listener-stats>div,.hero .hero-engagement-row .station-like-panel{min-height:0;padding:0}.hero .hero-engagement-row .station-like-button{min-height:34px}}

/* community.css */
.community-wire{padding:22px 26px!important;border:1px solid #333d4b;border-radius:22px;background:linear-gradient(130deg,#151b24,#10151c 65%,#21191d);box-shadow:0 14px 35px rgba(0,0,0,.18)}
.community-wire-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.community-wire-heading h2{margin:3px 0 8px;color:#fff;font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.08}.community-wire-heading p:last-child{margin:0;color:#b9c4cf;font-size:1rem}.community-chat-link{flex:none;padding:10px 15px;border:1px solid #de5156;border-radius:9px;color:#fff;text-decoration:none;font-size:.88rem;font-weight:800}.community-chat-link:hover{background:#42232a}
.community-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 10px}.community-tabs button{min-height:38px;padding:7px 13px;border:1px solid #4b5664;border-radius:999px;background:#202a36;color:#e2e8f0;font:inherit;font-size:.86rem;font-weight:700;cursor:pointer}.community-tabs button[aria-pressed="true"]{border-color:#f16b70;background:#b42f3b;color:#fff}.community-tabs button:hover{border-color:#fff}.community-tabs button:focus-visible,.community-story a:focus-visible,.community-chat-link:focus-visible{outline:3px solid #a8cc57;outline-offset:3px}
.community-preview-note{margin:0 0 12px;color:#aeb9c6;font-size:.8rem}.community-story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.community-story{display:flex;flex-direction:column;min-width:0;padding:19px;border:1px solid #3e4855;border-radius:14px;background:#1c2530}.community-story[hidden]{display:none}.community-story small{color:#f5a3a6;font-size:.76rem;font-weight:850;letter-spacing:.03em;text-transform:uppercase}.community-story h3{margin:9px 0 7px;color:#fff;font-size:1.13rem;line-height:1.25}.community-story p{margin:0 0 14px;color:#c6d0db;font-size:.92rem;line-height:1.45}.community-story a{margin-top:auto;color:#f6a0a4;text-decoration:none;font-size:.86rem;font-weight:800}.community-story a:hover{text-decoration:underline}
.community-story h3 a{color:#fff;font-size:inherit;line-height:inherit}.community-story h3 a:hover{color:#ffb7bb}.community-loading{grid-column:1/-1;margin:0;padding:20px;border:1px solid #3e4855;border-radius:12px;color:#c6d0db;background:#1c2530}
@media(max-width:720px){.community-wire{padding:18px!important}.community-wire-heading{display:block}.community-chat-link{display:inline-block;margin-top:14px}.community-story-grid{grid-template-columns:1fr}.community-tabs button{flex:1 1 auto}}
.community-home-link{display:flex;align-items:center;justify-content:space-between;gap:16px;width:min(100%,920px);margin:12px auto;padding:14px 18px;border:1px solid #705256;border-radius:12px;background:linear-gradient(110deg,#24202a,#14232b);box-shadow:inset 0 1px #ffffff14}
.community-home-link h2{margin:0 0 4px;font-size:clamp(1.35rem,2.5vw,1.7rem);line-height:1.14}
.community-home-link p:not(.eyebrow){max-width:700px;margin:0;color:#d1d9de}
.community-home-link .button{flex:none}
@media(max-width:680px){.community-home-link{align-items:flex-start;flex-direction:column;gap:12px;padding:14px 16px}.community-home-link .button{width:auto}}

/* feedback.css */
.feedback-section{padding:24px 26px!important;border:1px solid #424a59;border-radius:22px;background:radial-gradient(circle at 98% 0,#2d3e32 0,transparent 27%),linear-gradient(135deg,#151e28,#10161e 70%);box-shadow:0 14px 35px #0003}
.home-feedback{padding:18px 0!important;border:0;border-radius:0;background:none;box-shadow:none}
.home-feedback .feedback-layout{display:block}
.home-feedback .feedback-form{max-width:760px}
.hero .hero-feedback-wall{grid-area:feedback;align-self:start;min-height:0;padding:14px 17px;border-color:#4b6363;background:#14242c}
.hero .hero-feedback-wall h3{margin:0;font-size:1.02rem}
.hero .hero-feedback-wall .feedback-list{max-height:160px;margin-top:9px}
.hero .hero-feedback-wall .feedback-empty{padding:10px 0;border:0;border-radius:0}
.feedback-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.feedback-heading h2{margin:3px 0 7px;font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.1}.feedback-heading p:last-child{margin:0;color:#bdc9cf;font-size:1rem}.feedback-heading-icon{display:grid;place-items:center;flex:none;width:60px;height:60px;border:1px solid #94b569;border-radius:18px;background:#2e4b38;font-size:1.8rem}
.feedback-layout{display:grid;grid-template-columns:minmax(280px,.88fr) minmax(0,1.12fr);gap:16px;align-items:start}.feedback-form,.feedback-wall{min-width:0;padding:20px;border:1px solid #3d5055;border-radius:15px;background:#192630}.feedback-form h3,.feedback-wall h3{margin:0 0 16px;color:#fff;font-size:1.28rem}.feedback-form label{display:grid;gap:6px;margin-bottom:13px;color:#e2e9e7;font-size:.9rem;font-weight:750}.feedback-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.feedback-form input,.feedback-form select,.feedback-form textarea{width:100%;min-height:42px;box-sizing:border-box;padding:10px 12px;border:1px solid #657a7a;border-radius:8px;background:#0f1a22;color:#fff;font:inherit;font-size:1rem}.feedback-form textarea{resize:vertical;min-height:108px}.feedback-form input:focus-visible,.feedback-form select:focus-visible,.feedback-form textarea:focus-visible,.feedback-section button:focus-visible{outline:3px solid #b9df79;outline-offset:2px}.feedback-form .feedback-trap{position:absolute;left:-10000px;width:1px;height:1px}.feedback-form-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.feedback-form-actions .button{font-size:.86rem;white-space:nowrap}.feedback-recommend,.feedback-like{border:1px solid #70856b;border-radius:9px;background:#20352e;color:#d5e9ca;font:inherit;font-weight:800;cursor:pointer}.feedback-recommend{min-height:40px;padding:8px 12px;font-size:.86rem}.feedback-recommend[aria-pressed=true],.feedback-like[aria-pressed=true]{border-color:#b9e375;background:#3c6038;color:#fff}.feedback-helper{margin:14px 0 0;color:#b9c8c8;font-size:.79rem;line-height:1.4}.feedback-status{min-height:1.2em;margin:8px 0 0;color:#d9eab4;font-size:.85rem}
.feedback-wall-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.feedback-wall-head span{color:#b7c9c4;font-size:.78rem}.feedback-list{display:grid;gap:10px;max-height:520px;overflow:auto;scrollbar-color:#628267 #132027}.feedback-card{padding:15px;border:1px solid #485b60;border-radius:11px;background:#122029}.feedback-card-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.feedback-card-top strong{color:#fff;font-size:.98rem}.feedback-topic{display:inline-block;margin-right:8px;padding:3px 7px;border-radius:5px;background:#3a4e49;color:#d7edd0;font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.feedback-card time{color:#aebfbe;font-size:.74rem;white-space:nowrap}.feedback-card p{white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0;color:#dfebea;font-size:.94rem;line-height:1.52}.feedback-card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.feedback-card-actions .feedback-positive{color:#d0e9ad;font-size:.76rem;font-weight:800}.feedback-like{padding:5px 9px;font-size:.8rem;min-width:62px}.feedback-remove{border:0;background:transparent;color:#e9a7a9;text-decoration:underline;cursor:pointer;font:inherit;font-size:.75rem}.feedback-empty{margin:0;padding:24px;border:1px dashed #586866;border-radius:10px;color:#c7d6d5;line-height:1.5}
@media(max-width:850px){.feedback-layout{grid-template-columns:1fr}.feedback-list{max-height:410px}}@media(max-width:590px){.feedback-section{padding:18px!important}.feedback-heading-icon{width:46px;height:46px;font-size:1.3rem}.feedback-form,.feedback-wall{padding:16px}.feedback-fields{grid-template-columns:1fr;gap:0}}

/* Home comments + rotating DJs/Selectors card */
.home-feedback .feedback-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:stretch}
.home-feedback .feedback-form{max-width:none;height:340px;box-sizing:border-box}
.feedback-dj-card{position:relative;display:block;min-width:0;height:340px;overflow:hidden;border:1px solid #3d5055;border-radius:15px;background:#000;text-decoration:none}
.feedback-dj-card img,.feedback-dj-card video{display:block;width:100%;height:100%;object-fit:cover;background:#000}
.feedback-dj-card img[hidden],.feedback-dj-card video[hidden]{display:none}
@media(max-width:850px){.home-feedback .feedback-layout{grid-template-columns:1fr}.feedback-dj-card{height:auto;aspect-ratio:3/2;min-height:0}}

/* Staging fix: allow comments to grow instead of spilling under the moving ad.
   Keep the companion card level with the form on desktop. */
.home-feedback .feedback-form {
  height: auto;
  min-height: 340px;
}
@media (min-width: 851px) {
  .home-feedback .feedback-dj-card {
    height: auto;
    min-height: 340px;
  }
}

/* music.css */
.music-page{background:#080a0d;color:#f7f7f7;min-height:100vh}
.music-page main{width:min(var(--max),calc(100% - 40px));max-width:none;margin:0 auto;padding:3rem 0 5rem}
.music-page .page-intro{max-width:740px;margin-bottom:2rem}
.music-page .page-intro h1{font-size:clamp(2.3rem,6vw,4.5rem);line-height:1.05;margin:.3rem 0 1rem}
.music-page .page-intro p{color:#c7cbd2;font-size:1.05rem;line-height:1.55}
.music-page .eyebrow{color:#f4b94b;text-transform:uppercase;letter-spacing:.12em;font-weight:700}
.music-page .music-card,.music-links>div{background:#14191f;border:1px solid #343b43;border-radius:18px;padding:1.5rem}
.music-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.music-links.music-links-single{grid-template-columns:minmax(0,1fr)}
.music-links p{color:#c7cbd2}
.music-links .button{margin-top:.75rem}
.music-form{max-width:760px;display:grid;grid-template-columns:1fr 1fr;gap:1.15rem}
.music-form label{display:grid;gap:.45rem;font-weight:700}
.music-form .full{grid-column:1/-1}
.music-form input,.music-form select,.music-form textarea,.chart-editor input{width:100%;box-sizing:border-box;color:#fff;background:#090d12;border:1px solid #68737e;border-radius:9px;padding:.8rem;font:inherit}
.music-form input:focus,.music-form select:focus,.music-form textarea:focus,.chart-editor input:focus{outline:2px solid #f4b94b;outline-offset:2px}
.music-form input[type=file]{padding:.6rem}
.music-form .check{display:flex;align-items:flex-start;font-weight:400;gap:.7rem;line-height:1.5}
.music-form .check input{width:auto;margin-top:.3rem}
.music-form button{justify-self:start;cursor:pointer}
.music-form button:disabled{opacity:.55;cursor:not-allowed}
.form-note,.form-status{color:#c7cbd2;font-size:.95rem}
.form-status[role=alert]{color:#ffc27a}
.chart-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.5rem 0}
.chart-tabs button{border:1px solid #56616c;background:#171d24;color:#fff;border-radius:999px;padding:.7rem 1rem;font:inherit;cursor:pointer}
.chart-tabs button[aria-selected=true]{background:#f4b94b;color:#111;border-color:#f4b94b;font-weight:800}
.country-chart-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:1.5rem 0 2rem}
.country-chart-tabs button{display:flex;align-items:center;gap:.85rem;min-width:0;min-height:96px;padding:.85rem 1rem;border-radius:14px;text-align:left;font-weight:750;line-height:1.25}
.country-chart-tabs button img{display:block;flex:none;width:90px;height:60px;object-fit:contain;border:1px solid #bdc5c8;border-radius:5px;background:#0a1015;box-shadow:0 3px 10px #0007}
.country-chart-tabs button span{overflow-wrap:anywhere}
.country-chart-tabs button:hover{border-color:#f4b94b;background:#26303a}
.country-chart-tabs button[aria-selected=true]:hover{background:#f4b94b}
.country-chart-tabs button:focus-visible{outline:3px solid #f4b94b;outline-offset:3px}
.chart-list{list-style:none;padding:0;margin:0}
.chart-list li{display:grid;grid-template-columns:3rem 1fr;gap:1rem;padding:1rem .2rem;border-bottom:1px solid #343b43;align-items:center}
.chart-list .rank{font-size:1.4rem;font-weight:900;color:#f4b94b}
.chart-list strong{display:block;font-size:1.08rem}
.chart-list small{color:#b9c1ca;font-size:.9rem}
.chart-list a{color:#f4b94b}
.chart-editor{display:grid;gap:.65rem}
.chart-editor .track-row{display:grid;grid-template-columns:2rem 1fr 1fr 1.3fr;gap:.6rem;align-items:center}
.chart-editor .track-row span{color:#f4b94b;font-weight:800}
.chart-editor input{min-width:0}
.admin-actions{display:flex;gap:1rem;align-items:center;margin-top:1.2rem}
@media(max-width:700px){.music-links,.music-form{grid-template-columns:1fr}.chart-editor .track-row{grid-template-columns:2rem 1fr}.chart-editor .track-row input:last-child{grid-column:2}}
@media(max-width:1000px){.country-chart-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:740px){.country-chart-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.country-chart-tabs button{flex-direction:column;align-items:flex-start;min-height:130px}.country-chart-tabs button img{width:96px;height:64px}}
@media(max-width:390px){.country-chart-tabs{gap:.5rem}.country-chart-tabs button{padding:.65rem;font-size:.87rem}}

.chart-banner-admin{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.chart-banner-admin-row{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid #343b43;border-radius:12px;min-width:0}
.chart-banner-admin-preview{display:grid;place-items:center;min-height:140px;background:#0b0e11;border-radius:9px;color:#9ca5ad;overflow:hidden}
.chart-banner-admin-preview img{display:block;width:100%;max-height:340px;object-fit:contain}
.chart-banner-admin-row input[type=file]{max-width:100%}
@media(max-width:760px){.chart-banner-admin{grid-template-columns:1fr}}

/* Music Desk compact admin groups: collapsed until the admin expands them. */
.music-admin-groups{display:grid;gap:12px}.music-admin-group{margin:0!important;overflow:clip}.music-admin-group>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;font-weight:900;letter-spacing:.02em}.music-admin-group>summary::-webkit-details-marker{display:none}.music-admin-group>summary:before{content:"+";display:inline-grid;place-items:center;width:24px;height:24px;border:1px solid rgba(255,255,255,.25);border-radius:7px;margin-right:10px;float:left}.music-admin-group[open]>summary:before{content:"−"}.music-admin-group>summary small{font-size:.68rem;opacity:.72;margin-left:8px}.music-admin-group-body{padding:0 18px 18px}.music-admin-group-body>section+section{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.13)}.music-desk-new-badge{flex:0 0 auto;border-radius:999px;padding:5px 9px;background:#d71920;color:#fff;font-size:.72rem;font-weight:950;box-shadow:0 0 0 2px rgba(215,25,32,.18)}@media(max-width:600px){.music-admin-group>summary{padding:13px 12px}.music-admin-group-body{padding:0 12px 14px}}

/* music-history.css */
.broadcast-grid.chat-story-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(300px,.95fr);grid-template-areas:"chat story"}
.chat-story-grid .chat-panel{min-width:0}
.studio-box .music-history-panel{grid-area:story;min-width:0;padding:28px;border-left:1px solid var(--line);background:linear-gradient(160deg,#17212a,#0d1117 60%,#141218)}
.music-history-panel .eyebrow{margin:0 0 12px}
.music-history-panel h3{margin:0 0 23px;font-size:clamp(1.55rem,2.5vw,2.15rem);line-height:1.1}
.music-history-section{padding:18px 0;border-top:1px solid rgba(255,255,255,.12)}
.music-history-section h4{margin:0 0 9px;color:#ff747a;font-size:1.12rem}
.music-history-section p{margin:0 0 12px;color:#d0d6dd;font-size:.94rem;line-height:1.62}
.music-history-section p:last-child{margin-bottom:0}
.music-history-panel>a{display:inline-flex;margin-top:10px;color:#d3ec8b;font-weight:800;text-decoration:underline;text-underline-offset:4px}
@media(max-width:980px){.broadcast-grid.chat-story-grid{grid-template-columns:1fr;grid-template-areas:"chat" "story"}.studio-box .music-history-panel{border-left:0;border-top:1px solid var(--line)}}

/* music-roots.css */
.music-roots{padding-top:18px}
.music-roots-grid{display:grid;gap:12px;width:100%}
.music-root-entry{overflow:hidden;border:1px solid #46525c;border-radius:18px;background:#151d25}
.music-root-entry:has(.music-root-card[open]){border-color:#71803e;background:#19232b}
.music-root-card{border:0;background:transparent}
.music-root-card>summary{display:flex;align-items:center;gap:20px;min-height:108px;padding:16px 24px;cursor:pointer;list-style:none}
.music-root-card>summary::-webkit-details-marker{display:none}
.music-root-card>summary:focus-visible{outline:3px solid var(--green);outline-offset:-3px}
.music-root-flag{display:block;flex:0 0 96px;width:96px;height:64px;object-fit:contain;border:2px solid rgba(255,255,255,.78);border-radius:8px;background:#0e1318;box-shadow:0 7px 18px rgba(0,0,0,.3);transition:transform .2s ease}
.music-root-card>summary:hover .music-root-flag,.music-root-card>summary:focus-visible .music-root-flag{transform:scale(1.06)}
.music-root-label{flex:1;min-width:0}
.music-root-card>summary small{display:block;margin-bottom:6px;color:var(--green);font-size:.76rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.music-root-card>summary strong{display:block;color:#fff;font-size:clamp(1.25rem,2.5vw,1.85rem);line-height:1.18}
.music-roots-chevron{color:var(--green);font-size:2rem;line-height:1;transition:transform .2s ease}
.music-root-card[open] .music-roots-chevron{transform:rotate(180deg)}
.music-root-body{padding:22px 28px 28px;border-top:1px solid rgba(255,255,255,.12)}
.music-root-body h4{margin:16px 0 5px;color:#ff777c;font-size:1rem}
.music-root-body h4:first-child{margin-top:0}
.music-root-body p{margin:0 0 13px;color:#d4dce3;font-size:1rem;line-height:1.6}
.music-root-body a{display:inline-block;margin:8px 18px 0 0;color:#d3ec8b;font-weight:800;text-decoration:underline;text-underline-offset:4px}
.music-root-actions{display:flex;justify-content:flex-end;padding:0 24px 14px}
.music-root-like{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:5px 12px;border:1px solid #627580;border-radius:999px;background:#25333b;color:#f2f7fa;font:inherit;font-size:.9rem;font-weight:800;cursor:pointer}
.music-root-like:hover{border-color:#d3ec8b;background:#33424a}
.music-root-like[aria-pressed="true"]{border-color:#d3ec8b;background:#344522;color:#ecffbd}
.music-root-like:focus-visible{outline:3px solid #d3ec8b;outline-offset:3px}
.music-root-like:disabled{cursor:wait;opacity:.65}
.music-root-like strong{min-width:1.3em;font-variant-numeric:tabular-nums}
.music-root-status{min-height:1.3em;margin:0;color:#d3ec8b;font-size:.9rem}
@media(max-width:680px){.music-root-card>summary{gap:12px;min-height:88px;padding:13px}.music-root-flag{flex-basis:70px;width:70px;height:47px}.music-root-body{padding:18px}.music-root-actions{padding:0 13px 12px}}
@media(prefers-reduced-motion:reduce){.music-roots-chevron,.music-root-flag{transition:none}}
.music-roots-home-link{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:18px 0;padding:22px 26px;border:1px solid #50664e;border-radius:16px;background:linear-gradient(110deg,#142825,#16232c);box-shadow:inset 0 1px #ffffff14}
.music-roots-home-link h2{margin:0 0 6px;font-size:clamp(1.45rem,3vw,2rem);line-height:1.14}
.music-roots-home-link p:not(.eyebrow){margin:0;color:#cbdad8}
.music-roots-home-link .button{flex:none}
@media(max-width:680px){.music-roots-home-link{align-items:flex-start;flex-direction:column;padding:19px}.music-roots-home-link .button{width:100%}}

/* schedule.css */
.on-air-section{padding:18px 0}
.on-air-section>.section-heading{align-items:center}
.schedule-timezone{color:#aab7c5;font-size:.78rem;font-weight:800;letter-spacing:.04em}
.station-clock{display:grid;justify-items:end;padding:8px 14px;border:1px solid #42515d;border-radius:13px;background:#0c131a;box-shadow:inset 0 1px rgba(255,255,255,.06)}
.station-clock span{color:#eaf8ff;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:1.75rem;font-weight:900;line-height:1.15;font-variant-numeric:tabular-nums;letter-spacing:.06em;text-shadow:0 0 18px rgba(132,210,235,.28)}
.station-clock small{color:#8ea7b8;font-size:.6rem;font-weight:900;letter-spacing:.13em}
.digital-live-heading{display:flex;align-items:stretch;gap:16px;margin-bottom:20px;padding:0;background:transparent}
.digital-live-heading .station-clock{align-self:stretch;align-content:center;min-width:185px}
.on-air-live-button{display:block;flex:1;min-width:0;min-height:88px;padding:15px;border:1px solid #ff7077;border-radius:14px;background:linear-gradient(120deg,#9e1725,#d43341);color:#fff;font:900 clamp(1.55rem,4vw,2.7rem)/1.12 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.11em;text-align:center;text-shadow:0 0 18px rgba(255,210,214,.45);cursor:pointer;box-shadow:0 0 28px rgba(230,58,68,.3)}
.on-air-live-button[data-live="true"]{animation:onAirPulse 2s ease-in-out infinite}
.on-air-live-button[data-live="false"],.on-air-live-button:disabled{border-color:#65707c;background:#1d2731;color:#aeb9c5;text-shadow:none;box-shadow:none;cursor:default}
.on-air-live-button[data-live="true"]:hover{background:linear-gradient(120deg,#c12232,#ed4654)}
@keyframes onAirPulse{50%{box-shadow:0 0 38px rgba(255,65,80,.65)}}
.on-air-card{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;padding:26px;border:1px solid #6b3940;border-radius:22px;background:radial-gradient(circle at 0 0,rgba(255,72,83,.19),transparent 35%),linear-gradient(115deg,#251820,#131d26 60%,#0d131a);box-shadow:0 26px 60px rgba(0,0,0,.3),inset 0 1px rgba(255,255,255,.07);overflow:hidden}
.on-air-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(#ff5b64,#98bf55);box-shadow:0 0 18px rgba(255,79,89,.6)}
.hero .on-air-section .on-air-card.no-avatar{grid-template-columns:minmax(0,1fr)}
.on-air-card.no-avatar .on-air-actions{grid-column:1/-1;justify-content:flex-start}
.on-air-avatar{display:grid;place-items:center;width:72px;height:72px;border:1px solid #8a4048;border-radius:18px;background:linear-gradient(145deg,#76333b,#241e29);color:#fff;font-size:1.7rem;font-weight:900;box-shadow:0 12px 30px rgba(0,0,0,.27)}
.on-air-card .eyebrow{margin:0 0 7px}.on-air-card h3{margin:0 0 6px;font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.06;letter-spacing:-.03em}
.on-air-card p{margin:4px 0;color:#d6dce3}.on-air-host{font-weight:800;color:#fff!important}
.on-air-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:370px}
.on-air-actions button,.on-air-actions a{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:38px;padding:8px 12px;border:1px solid #4d5864;border-radius:9px;background:#1c2631;color:#fff;font:inherit;font-size:.84rem;font-weight:800;text-decoration:none;cursor:pointer;transition:background .18s,border-color .18s}
.on-air-actions button:hover,.on-air-actions a:hover{border-color:#a9b6c1;background:#2b3947}
.on-air-actions button[aria-pressed="true"]{border-color:#ff6970;background:#593037}.on-air-actions button:disabled{opacity:.6;cursor:wait}
.on-air-actions strong{font-variant-numeric:tabular-nums;color:#ffd8da}
.on-air-progress{grid-column:1/-1;padding-top:15px;border-top:1px solid rgba(255,255,255,.12)}
.on-air-progress-info{display:flex;justify-content:space-between;gap:15px;color:#b9c7d4;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.7rem;font-weight:850;letter-spacing:.08em}
.on-air-progress-track{height:6px;margin-top:10px;overflow:hidden;border-radius:100px;background:#303b47}
.on-air-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ff4f5d,#ebac63);box-shadow:0 0 13px rgba(255,83,92,.75);transition:width .4s ease}
.on-air-card .on-air-next{margin:11px 0 0;color:#d2e6b2;font-size:.78rem;font-weight:850;letter-spacing:.04em}
#schedule{padding-top:18px}
.schedule-board{position:relative;margin-top:0;padding:26px;border:1px solid #35414d;border-radius:20px;background:linear-gradient(150deg,#171f29,#0e141b);box-shadow:0 22px 55px rgba(0,0,0,.23),inset 0 1px rgba(255,255,255,.035)}
.schedule-board-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;padding-bottom:15px;border-bottom:1px solid #34404c}
.schedule-board h3{margin:0;font-size:clamp(1.3rem,2.4vw,1.85rem);line-height:1.12;letter-spacing:-.025em}
.schedule-board-heading>span{color:#badd82;font-size:.86rem;font-weight:850}
.schedule-kicker{margin:0 0 6px;color:#ff6c73;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.68rem;font-weight:900;letter-spacing:.16em}
.weekly-board{margin-top:19px}
.weekly-board .schedule-board-heading h3{font-size:clamp(2.2rem,4.5vw,3.9rem);line-height:1;letter-spacing:-.045em;text-transform:uppercase}
.schedule-tabs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;overflow-x:auto;padding:18px 1px 20px;scrollbar-color:#53606d transparent}
.schedule-tabs button{display:grid;justify-items:center;gap:2px;min-width:74px;padding:11px 6px;border:1px solid #3c4b59;border-radius:11px;background:#1b2631;color:#d8e0e6;font:inherit;cursor:pointer;transition:transform .18s,background .18s,border-color .18s}
.schedule-tabs button span{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.95rem;font-weight:900;letter-spacing:.12em}
.schedule-tabs button small{color:#91a2b2;font-size:.58rem;font-weight:850;letter-spacing:.12em}
.schedule-tabs button:hover{transform:translateY(-2px);border-color:#7d929f}
.schedule-tabs button[aria-selected="true"]{border-color:#ff6770;background:linear-gradient(145deg,#793138,#421d27);color:#fff;box-shadow:0 8px 24px rgba(224,52,66,.2)}
.schedule-tabs button[aria-selected="true"] small{color:#ffe1e3}
.show-list{position:relative;display:grid;gap:9px;padding-left:25px}
.show-list:before{content:"";position:absolute;top:9px;bottom:9px;left:8px;width:2px;background:linear-gradient(#5a6875,#35424e)}
.show-row{position:relative;display:grid;grid-template-columns:190px minmax(0,1fr) auto;align-items:center;gap:17px;min-height:76px;padding:14px 17px;border:1px solid #354350;border-radius:12px;background:linear-gradient(110deg,#1c2732,#17212a);transition:border-color .18s,transform .18s,background .18s}
.show-row:before{content:"";position:absolute;left:-23px;top:50%;width:12px;height:12px;border:2px solid #80909f;border-radius:50%;background:#18212a;transform:translateY(-50%);box-shadow:0 0 0 4px #111921}
.show-row:hover{transform:translateX(3px);border-color:#647585}
.show-row.is-open{background:#141d25;border-style:dashed;opacity:.88}
.show-row.is-current{border-color:#f36b74;background:linear-gradient(110deg,#3a252e,#202a34);box-shadow:inset 3px 0 #ff5862,0 9px 24px rgba(0,0,0,.19)}
.show-row.is-current:before{border-color:#ff6470;background:#ff6470;box-shadow:0 0 0 4px #362129,0 0 14px #f45a66}
.show-row.is-upcoming{border-color:#8eae62}.show-row.is-upcoming:before{border-color:#abd170;background:#abd170}
.show-time{color:#f0c6c9;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.79rem;font-weight:850;font-variant-numeric:tabular-nums;white-space:nowrap}
.show-details{min-width:0}.show-details strong{display:block;color:#fff;font-size:1.05rem;line-height:1.25}.show-details small{display:block;margin-top:5px;font-size:.63rem;font-weight:900;letter-spacing:.13em}
.show-details .show-host{color:#e4e9ee;font-size:.78rem;font-weight:700;letter-spacing:0}
.show-state{color:#a3b4c1}.is-current .show-state{color:#ff9da3}.is-upcoming .show-state{color:#b9d98b}
.show-genre{max-width:210px;padding:5px 8px;border:1px solid #45563e;border-radius:6px;color:#c8e599;font-size:.66rem;font-weight:900;letter-spacing:.04em;text-align:right;overflow-wrap:anywhere}
.show-empty{margin:0;padding:17px;border:1px dashed #38434e;border-radius:12px;color:var(--muted)}
@media(max-width:900px){.on-air-card{grid-template-columns:auto 1fr}.on-air-actions{grid-column:1/-1;justify-content:flex-start;max-width:none}.schedule-tabs{display:flex}.schedule-tabs button{flex:1 0 82px}}
@media(max-width:600px){.on-air-section>.section-heading{align-items:stretch;flex-direction:column}.station-clock{justify-items:start}.station-clock span{font-size:1.4rem}.digital-live-heading .station-clock{min-width:0}.on-air-card{padding:18px;gap:12px}.on-air-avatar{width:58px;height:58px}.schedule-board{padding:18px}.schedule-board-heading{align-items:start;flex-direction:column;gap:10px}.show-list{padding-left:21px}.show-list:before{left:6px}.show-row{grid-template-columns:minmax(0,1fr) auto;gap:6px;min-height:80px;padding:12px}.show-row:before{left:-19px}.show-time{grid-column:1/-1}.show-genre{max-width:130px;align-self:center}.on-air-progress-info{font-size:.62rem}}
@media(prefers-reduced-motion:reduce){.schedule-tabs button,.show-row,.on-air-progress-track span{transition:none}.on-air-live-button{animation:none!important}}

.show-host{display:flex!important;align-items:center;gap:8px;margin-top:6px}.show-host-logo{width:28px;height:28px;border-radius:50%;object-fit:cover;border:1px solid #647585}

/* Immediate OFF AIR status emphasis — preserves all existing schedule content. */
.on-air-card .eyebrow{font-weight:900;letter-spacing:.08em}
.on-air-card .eyebrow:first-child{min-height:1.2em}

/* ON AIR NOW: extra-large scheduled DJ logo for clear visibility */
.hero .on-air-section .on-air-avatar{width:190px;height:190px;padding:8px;border-radius:20px;overflow:hidden;background:rgba(7,10,15,.72)}
.hero .on-air-section .on-air-avatar .on-air-dj-logo{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
@media(max-width:600px){.hero .on-air-section .on-air-avatar{width:140px;height:140px;padding:6px}}

/* contact.css */
.hero-about{display:grid;gap:15px;margin-top:25px}
.hero-about>div{padding:18px 20px;border:1px solid #39434e;border-radius:14px;background:rgba(16,23,31,.84)}
.hero-about h2{margin:0 0 8px;color:#fff;font-size:1.25rem;line-height:1.2;letter-spacing:-.02em;text-transform:none}
.hero-about p{margin:0;color:#d1d9e1;font-size:1rem;line-height:1.65}
.hero-intro-card{margin-top:24px;padding:20px;border:1px solid #39434e;border-radius:14px;background:rgba(16,23,31,.84)}
.hero-intro-card p{color:#d1d9e1;line-height:1.65}
.hero-intro-card p:last-child{margin-bottom:0}
@media(max-width:600px){.hero-about{margin-top:20px}.hero-about>div,.hero-intro-card{padding:16px}}

.about-bottom-section{max-width:1200px;margin:24px auto 0;padding:0 18px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.about-bottom-section>div{height:100%}@media(max-width:760px){.about-bottom-section{grid-template-columns:1fr}}

/* donations.css */
.promo-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.promo-music{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;min-width:0;padding:20px 24px;border:1px solid #455760;border-radius:13px;background:linear-gradient(125deg,#182530,#121920)}
.promo-music .eyebrow{margin:0 0 4px;color:#e7c678}
.promo-music h2{margin:0;font-size:clamp(1.35rem,2.5vw,1.8rem);line-height:1.15;text-transform:uppercase}
.promo-music p:last-child{margin:7px 0 0;color:#cbd9dc}
.promo-music .button{flex:none;white-space:nowrap}
@media(max-width:760px){.promo-music{align-items:flex-start;flex-direction:column;padding:18px}.promo-music .button{white-space:normal}}
.promo-grid .promo-host,.promo-grid .promo-community-ad{display:flex;flex-direction:column;min-height:285px;background:linear-gradient(145deg,#14212a,#10151b)}
.promo-grid .promo-host img,.promo-grid .promo-community-ad img{flex:1;width:100%;min-height:0;height:100%;aspect-ratio:auto;object-fit:contain}
.donation-card{display:flex;flex-direction:column;min-width:0;min-height:285px;padding:22px;border:1px solid #537466;border-radius:13px;background:radial-gradient(circle at 100% 0,#26514688,transparent 48%),linear-gradient(140deg,#17212b,#111a20);box-shadow:inset 0 1px #ffffff1c}
.donation-card .eyebrow{margin:0 0 7px;color:#a9ddba}
.donation-card h3{margin:0;color:#fff;font-size:clamp(1.4rem,2.4vw,1.8rem);line-height:1.12}
.donation-card p:not(.eyebrow){margin:9px 0 16px;color:#d0dde0;font-size:.95rem;line-height:1.42}
.donation-amounts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:auto}
.donation-amounts button{min-height:43px;padding:7px 3px;border:1px solid #66817d;border-radius:8px;background:#192b32;color:#eaf6f3;font-family:inherit;font-size:.92rem;font-weight:850;line-height:1.1;cursor:pointer}
.donation-amounts button[aria-pressed="true"]{border-color:#c9e594;background:#34533d;color:#fff;box-shadow:0 0 12px #a5d97055}
.donation-amounts button:focus-visible,.donation-action:focus-visible{outline:3px solid #c9e594;outline-offset:2px}
.donation-action{display:inline-flex;align-items:center;justify-content:center;min-height:43px;margin-top:12px;border:1px solid #9ed2a7;background:#29643e;color:#fff;text-decoration:none;font-weight:850}
.donation-action:hover{background:#397e52;color:#fff}
.donation-card small{display:block;margin-top:8px;color:#afc4c4;font-size:.76rem;line-height:1.3}
@media(max-width:900px){.promo-grid{grid-template-columns:1fr}.promo-grid .promo-host{min-height:0}.promo-grid .promo-host img{height:auto;aspect-ratio:2170/725}.donation-card{min-height:0;padding:18px}.donation-amounts{margin-top:4px}}

/* digital-nav.css */
/* Compact digital navigation across the public pages and portal. */
.main-nav{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:4px;margin:5px auto 0;max-width:1280px}
.main-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:5px 8px;border:1px solid #35414d;border-radius:7px;background:linear-gradient(180deg,#172331,#101820);color:#e4ecf0;font-size:.78rem;line-height:1.15;letter-spacing:.015em;text-decoration:none;white-space:nowrap;box-shadow:inset 0 1px #ffffff13}
.main-nav a:hover,.main-nav a.active,.main-nav a[aria-current=page]{border-color:#9aca65;background:#233c31;color:#fff}
.main-nav a.join-link{border-color:#8fc996;background:linear-gradient(180deg,#254d3c,#193228);color:#fff}
.main-nav a.nav-live{gap:6px;border-color:#ff6363;background:linear-gradient(180deg,#9b292e,#64171d);color:#fff;font-weight:850;letter-spacing:.055em;box-shadow:0 0 0 1px #ff6c5540,0 0 14px #ed414054,inset 0 1px #ffffff38}
.main-nav a.nav-live::before{content:"";width:7px;height:7px;flex:none;border-radius:50%;background:#ffdad3;box-shadow:0 0 8px #fff,0 0 12px #ff6c55}
.main-nav a.nav-live:hover,.main-nav a.nav-live:focus-visible{background:linear-gradient(180deg,#bd383a,#7d1e25);box-shadow:0 0 0 1px #ff9a8c80,0 0 20px #ed414080}
.main-nav a:focus-visible,.button:focus-visible{outline:3px solid #b7db6e;outline-offset:2px}
.button,.music-page .button{min-height:36px;padding:6px 12px;border-radius:8px;font-size:.82rem;letter-spacing:.02em;background-image:linear-gradient(180deg,#ffffff10,#00000021)}
.home-page .community-chat-link,.home-page .sponsor-button,.join-page .button{min-height:36px;padding:6px 12px;border-radius:8px;font-size:.82rem}
.join-page .join-intro{max-width:980px;margin:0 auto;padding-bottom:6px}
.join-page .join-intro h1{margin-bottom:10px}
.join-page .join-intro p:not(.eyebrow){max-width:720px;color:#cbd5da}
.join-page .dj-entry{margin-top:16px}
@media(max-width:720px){.home-page .main-nav,.join-page .main-nav,body:not(.music-page):not(.home-page):not(.join-page) .main-nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:30;flex-direction:column;align-items:stretch;max-height:70vh;overflow:auto;padding:10px;background:#0b111a;border:1px solid #35414d;border-radius:12px;box-shadow:0 12px 30px #0009}.home-page .main-nav.open,.join-page .main-nav.open,body:not(.music-page):not(.home-page):not(.join-page) .main-nav.open{display:flex}.main-nav a{min-height:36px;justify-content:flex-start;padding:8px 11px}.music-page .main-nav{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;padding:7px 12px;scrollbar-width:thin}.music-page .main-nav a{flex:none}}

/* artists.css */
.artists-page{background:#080d12;color:#f4f6f2}.artists-shell{width:min(var(--max),calc(100% - 40px));max-width:none;margin:0 auto;padding:22px 0 70px}.artists-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,.6fr);align-items:center;gap:28px;min-height:320px;padding:clamp(24px,5vw,56px);border:1px solid #394951;border-radius:21px;background:radial-gradient(circle at 85% 35%,#244b3c 0,transparent 42%),linear-gradient(135deg,#152a2e,#101820 65%,#1d202c)}.artists-hero h1{margin:5px 0 12px;font-size:clamp(2.7rem,6.7vw,6rem);letter-spacing:-.055em;line-height:.97;text-transform:uppercase}.artists-hero h1 em{font-style:normal;color:#b8e26e}.artists-hero p:not(.eyebrow){max-width:700px;color:#d2dcda;font-size:1.04rem;line-height:1.55}.artist-total{display:inline-block;margin-top:12px;padding:8px 13px;border:1px solid #9cc56d;border-radius:6px;color:#d6ecbd;font-size:.76rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.artists-hero-mark{min-height:210px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:1px solid #7caa74;border-radius:50%;background:radial-gradient(circle,#244d3f,#10252a 65%);color:#d8edbc;box-shadow:0 0 50px #62ab5e22;transform:rotate(-8deg)}.artists-hero-mark span{font-size:.75rem;font-weight:900;letter-spacing:.22em}.artists-hero-mark strong{font-size:6rem;line-height:1;color:#b4df6e}.artists-browser{padding-top:30px}.artists-toolbar{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap}.artists-toolbar h2{margin:0;font-size:clamp(1.8rem,3.5vw,2.8rem);text-transform:uppercase}.artist-search{display:grid;gap:5px;min-width:min(100%,330px);font-size:.8rem;color:#c3d0d2}.artist-search input{min-height:42px;padding:10px 13px;border:1px solid #647b7c;border-radius:8px;background:#12212a;color:#fff;font:inherit}.artist-filters{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 8px}.artist-filters button{padding:8px 12px;min-height:37px;border:1px solid #45605d;border-radius:7px;background:#1a2b31;color:#e6edeb;font-size:.82rem;font-weight:700;cursor:pointer}.artist-filters button:hover,.artist-filters button[aria-pressed=true]{border-color:#b4de73;background:#31553b;color:#fff}.artists-count{margin:12px 0;color:#b6c9c5;font-size:.85rem}.artist-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.artist-card{min-width:0;overflow:hidden;border:1px solid #354d53;border-radius:14px;background:#15242a;box-shadow:0 12px 24px #0003}.artist-photo{height:225px;position:relative;background:linear-gradient(135deg,#324844,#181b2c);overflow:hidden}.artist-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;transition:transform .25s}.artist-card:hover .artist-photo img{transform:scale(1.04)}.artist-photo.no-photo:before{content:'♪';display:grid;place-items:center;height:100%;font-size:5rem;color:#86b978}.artist-tag{position:absolute;bottom:10px;left:10px;padding:6px 8px;border:1px solid #ffffff5e;border-radius:5px;background:#111a20d9;color:#f2f6e8;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.artist-info{padding:17px;display:flex;flex-direction:column;min-height:340px}.artist-place{color:#b6dba6;font-size:.74rem;font-weight:750;letter-spacing:.04em}.artist-info h3{margin:6px 0 2px;font-size:1.37rem;line-height:1.12}.artist-genre{color:#e2b96e;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.artist-info p{margin:12px 0 18px;color:#cbd6d6;font-size:.88rem;line-height:1.53}.artist-links{display:flex;flex-direction:column;gap:6px;margin-top:auto;padding-top:12px;border-top:1px solid #354d53;font-size:.78rem}.artist-links span{color:#e0e9d6}.artist-links a{color:#bbe984;text-decoration:none}.artist-links .artist-credit{color:#9db4b8;font-size:.72rem}.artist-links a:hover{text-decoration:underline}.artists-next{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:26px;padding:24px 28px;border:1px solid #3b5552;border-radius:14px;background:#162a2b}.artists-next h2{margin:3px 0 7px}.artists-next p:not(.eyebrow){max-width:730px;margin:0;color:#c3d2d1}.artists-next .button{flex:none}.artist-empty{grid-column:1/-1;padding:40px;text-align:center;border:1px dashed #506767;border-radius:12px;color:#c9d8d2}@media(max-width:1050px){.artist-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.artists-hero{grid-template-columns:1fr}.artists-hero-mark{display:none}.artist-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.artists-next{align-items:flex-start;flex-direction:column}}@media(max-width:550px){.artist-grid{grid-template-columns:1fr}.artist-photo{height:270px}.artist-info{min-height:0}.artist-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}.artist-filters button{flex:none}.artists-shell{padding-inline:0}}
.artists-home-link{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:none;margin:10px auto 22px;padding:15px 22px;border:1px solid #355247;border-radius:12px;background:#142a28;color:#deeddc}@media(max-width:600px){.artists-home-link{flex-direction:column;align-items:flex-start}}
.artist-style-filters{margin-top:8px;padding-top:13px;border-top:1px solid #355052}.artist-style-filters button{font-size:.78rem}.artist-image-note{position:absolute;top:10px;left:10px;right:10px;width:max-content;max-width:calc(100% - 20px);padding:5px 8px;border-radius:5px;background:#071117dc;color:#f5f0d1;font-size:.68rem;font-weight:800;line-height:1.25}
.artist-filter-flag{display:inline-block;margin-right:7px;font-size:1.25rem;vertical-align:-.1em}.artist-country-flag{display:inline-block;margin-right:7px;font-size:1.5rem;vertical-align:-.2em}.artist-media-flag{position:absolute;right:12px;top:8px;font-size:2.5rem;filter:drop-shadow(0 2px 4px #000a)}

/* Compact Caribbean Artists intro card only */
.artists-hero{min-height:0;gap:18px;padding:clamp(14px,2.2vw,22px)}
.artists-hero .eyebrow{margin-bottom:5px;font-size:.72rem}
.artists-hero h1{margin:3px 0 7px;font-size:clamp(1.85rem,4vw,3.35rem);line-height:1}
.artists-hero p:not(.eyebrow){margin:0;font-size:.96rem;line-height:1.4}
.artist-total{margin-top:9px;padding:6px 10px;font-size:.7rem}
.artists-hero-mark{min-height:135px}
.artists-hero-mark strong{font-size:4rem}
@media(max-width:760px){.artists-hero{padding:15px}.artists-hero h1{font-size:clamp(1.75rem,9vw,2.5rem)}}

/* player-digital.css */
/* Compact digital console for the main live audio player. */
.hero{column-gap:clamp(16px,2vw,25px);row-gap:clamp(16px,2vw,24px);padding:clamp(20px,3vw,38px)}
.hero .radio-player{position:relative;overflow:hidden;padding:12px 14px;border:1px solid #5c8790;border-radius:13px;background:linear-gradient(120deg,#101b25,#0b111a 60%,#132624);box-shadow:inset 0 1px #d4faff24,0 12px 25px #0006,0 0 16px #4bb7bd20}
.hero .radio-player::before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,#ed454e,#85d9df,#c5e988);opacity:.9;pointer-events:none}
.hero .radio-popout{display:block;margin:8px 0 0 auto;padding:7px 12px;border:1px solid #65c6d0;border-radius:7px;background:#12313b;color:#d6faff;font:850 .76rem/1.3 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.06em;box-shadow:0 0 12px #49c9d333;cursor:pointer}.hero .radio-popout:hover,.hero .radio-popout:focus-visible{background:#215363;color:#fff;box-shadow:0 0 17px #49c9d377}
.hero .radio-player-topline{margin-bottom:8px;color:#b2c6cd;font:850 .65rem/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.13em}
.hero .radio-live-badge{gap:8px;color:#e9f8fa}
.hero .radio-live-badge i{width:7px;height:7px;background:#ff5665;box-shadow:0 0 9px #ff5665}
.hero .radio-live-badge[data-live="false"]{color:#aeb9c5}
.hero .radio-live-badge[data-live="false"] i{background:#8c9aa6;box-shadow:none;animation:none}
.hero .radio-live-badge[data-live="checking"] i{background:#dfba72;box-shadow:0 0 7px #dfba72;animation:none}
.hero .radio-player-main{grid-template-columns:46px minmax(0,1fr) 128px;gap:10px;min-height:46px}
.hero .radio-play{width:46px;height:46px;border:1px solid #ff9da5;border-radius:11px;background:linear-gradient(145deg,#e43c48,#9e1727);box-shadow:inset 0 1px #ffffff4a,0 0 16px #e3404a55}
.hero .radio-play:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff55,0 0 22px #ff596677}
.hero .radio-player-copy strong{overflow:hidden;color:#fff;font:900 clamp(.83rem,1.6vw,1rem)/1.18 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.025em;text-overflow:ellipsis;white-space:nowrap}
.hero .radio-player-copy span{overflow:hidden;margin-top:3px;color:#b7cbd0;font-size:.76rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.hero .radio-player-copy{display:flex;align-items:center;gap:10px;min-width:0}
.hero .radio-player-details{min-width:0}
.hero .radio-host-logo{display:block;flex:none;width:58px;height:46px;padding:4px;object-fit:contain;border:1px solid #4d7479;border-radius:8px;background:#101820;box-shadow:0 0 12px #6bd7ca33}
.hero .radio-host-logo[hidden],.hero .radio-show[hidden]{display:none}
.hero .radio-player-copy .radio-show{color:#dbefb1;font-size:.71rem;font-weight:850;letter-spacing:.02em;text-transform:uppercase}
.hero .radio-volume{grid-column:auto;gap:1px;width:128px;color:#c0d5d9;font:800 .75rem/1.25 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.04em}
.hero .radio-volume-heading{display:flex;justify-content:space-between;gap:5px}.hero .radio-volume output{color:#aee8dc;font-variant-numeric:tabular-nums}
.hero .radio-volume input{width:100%;height:27px;margin:0;accent-color:#91e0dc;cursor:pointer;touch-action:none}
.hero .radio-volume input[hidden],.hero .radio-volume-note[hidden]{display:none}
.hero .radio-volume-note{color:#c9dee0;font-size:.72rem;line-height:1.2;letter-spacing:0;text-transform:none}
.hero .stream-readout{grid-template-columns:minmax(108px,.65fr) minmax(0,1.35fr);gap:6px 10px;margin-top:10px;padding:9px 11px;border-color:#365761;border-radius:8px;background:linear-gradient(90deg,#0a151e,#11262b);box-shadow:inset 0 1px #ffffff0b}
.hero .stream-readout-count,.hero .stream-readout-music{gap:2px}
.hero .stream-readout-count>span,.hero .stream-readout-music>span{font-size:.64rem;letter-spacing:.08em}
.hero .stream-readout-count strong{font-size:1.65rem;line-height:1.05}
.hero .stream-readout-music strong{font-size:.82rem}
.hero .stream-equalizer{height:16px;gap:3px;padding-top:3px}
.hero .stream-equalizer i{height:3px}
@keyframes compactStreamBeat{0%{height:3px}45%{height:12px}100%{height:6px}}
.hero .radio-player.is-playing .stream-equalizer i{animation-name:compactStreamBeat}
@media(max-width:560px){.hero .radio-player-main{grid-template-columns:44px minmax(0,1fr) 106px;gap:8px}.hero .radio-play{width:44px;height:44px}.hero .radio-volume{grid-column:auto;width:106px}.hero .radio-player-copy strong{font-size:.81rem}}
@media(max-width:560px){.hero .radio-host-logo{width:44px;height:40px}.hero .radio-player-copy{gap:6px}}
@media(max-width:390px){.hero .radio-player{padding:11px}.hero .radio-player-main{grid-template-columns:42px minmax(0,1fr) 94px;gap:7px}.hero .radio-play{width:42px;height:42px}.hero .radio-volume{width:94px}.hero .stream-readout{grid-template-columns:minmax(100px,.7fr) minmax(0,1.3fr);padding:8px}}
/* The red player control carries the listening action; the corner icon retains continuous listening. */
.hero .radio-player-main{grid-template-columns:116px minmax(0,1fr) 128px}
.hero .radio-play{display:flex;align-items:center;justify-content:center;gap:7px;width:116px;min-height:48px;padding:0 8px;border-radius:11px}
.hero .radio-play .radio-play-symbol,.hero .radio-play.is-playing .radio-play-symbol{margin:0;font-size:1rem;line-height:1}
.hero .radio-play .radio-play-label{font:850 .67rem/1.15 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.025em;white-space:nowrap}
.hero .radio-player-topline{align-items:center;flex-direction:row}
.hero .radio-popout{display:grid;place-items:center;width:30px;height:28px;margin:0;padding:0;font-size:1.1rem;line-height:1}
.hero .radio-player-copy #radio-status:empty{display:none}
@media(max-width:560px){.hero .radio-player-main{grid-template-columns:100px minmax(0,1fr) 106px}.hero .radio-play{width:100px;min-height:44px;gap:5px}.hero .radio-play .radio-play-label{font-size:.6rem}}
@media(max-width:390px){.hero .radio-player-main{grid-template-columns:94px minmax(0,1fr) 94px}.hero .radio-play{width:94px;min-height:42px;padding:0 4px}.hero .radio-play .radio-play-label{font-size:.57rem}}
@media(prefers-reduced-motion:reduce){.hero .radio-player.is-playing .stream-equalizer i{animation:none}}

/* header-refined.css */
/* A quieter station masthead: brand, social actions, then two balanced rows of links. */
.site-header{isolation:isolate;align-items:stretch;gap:0;min-height:0;padding:8px 0 12px;background:transparent}
.site-header::before{position:absolute;inset:0 auto 0 50%;width:100vw;height:auto;transform:translateX(-50%);background:linear-gradient(180deg,#101923f5,#090e15f5);border-bottom:1px solid #3d4c56;box-shadow:0 10px 28px #0006}
.site-header .header-top{display:grid;grid-template-columns:minmax(270px,390px) minmax(0,1fr);align-items:center;justify-content:space-between;gap:clamp(16px,4vw,50px);min-height:132px;padding:0 8px}
.site-header .header-top .brand{display:block;flex:none;width:100%;max-width:390px;height:128px;min-width:0}
.site-header>.brand{align-self:center;width:min(345px,100%);height:116px}
.site-header .header-social{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:4px;width:100%;max-width:510px;justify-self:end}
.site-header .header-social::before{display:none}
.site-header .header-social-button{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:3px;min-height:30px;padding:4px 5px;border:1px solid #3a4b56;border-radius:7px;background:#17232e;color:#eaf1f5;font-size:.66rem;line-height:1.1;white-space:nowrap;box-shadow:none;transition:background .15s,border-color .15s,transform .15s}
.site-header .header-social-button strong{font-size:.6rem;line-height:1.1;letter-spacing:.01em}
.site-header .header-social-button:hover{transform:translateY(-1px);background:#223341}
.site-header .main-nav{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:3px 5px;width:100%;max-width:none;margin:0;padding:8px 0 0;border:0;border-top:1px solid #34434d;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}
.site-header .main-nav::before{content:"EXPLORE";flex-basis:100%;padding:0 0 4px;color:#91adba;font-size:.69rem;font-weight:850;letter-spacing:.11em;line-height:1}
.site-header .main-nav a{min-height:34px;padding:7px 11px;border:1px solid transparent;border-radius:8px;background:transparent;color:#c9d4db;font-size:.8rem;font-weight:750;letter-spacing:.005em;box-shadow:none}
.site-header .main-nav a:hover,.site-header .main-nav a.active,.site-header .main-nav a[aria-current=page]{border-color:#52616a;background:#263440;color:#fff}
.site-header .main-nav a.join-link{border-color:#405e4b;background:#1c3429;color:#ddf1df}
.site-header .main-nav a.nav-live{border-color:#f3747e;background:linear-gradient(145deg,#aa2632,#781b25);color:#fff;letter-spacing:.06em;box-shadow:0 0 15px #df334844}
.site-header .main-nav a.nav-live:hover,.site-header .main-nav a.nav-live:focus-visible{background:linear-gradient(145deg,#cc3541,#98232d);box-shadow:0 0 19px #ed414080}
.site-header .main-nav .nav-row-break{flex-basis:100%;height:0}
@media(max-width:900px){
  .site-header .header-top{grid-template-columns:minmax(235px,305px) minmax(0,1fr);min-height:116px;gap:12px}
  .site-header .header-top .brand{height:110px}
  .site-header .header-social{max-width:500px}
  .site-header .header-social-button{padding:4px 3px;font-size:.61rem}
  .site-header .header-social-button strong{font-size:.56rem}
}
@media(max-width:720px){
  .site-header{min-height:0;padding:5px 0 10px}
  .site-header .header-top{grid-template-columns:1fr;gap:0;justify-items:center;padding:0 4px}
  .site-header .header-top .brand{height:110px;max-width:320px}
  .site-header>.brand{height:106px;width:min(310px,100%)}
  .site-header .header-social{grid-template-columns:repeat(2,minmax(0,1fr));max-width:330px}
  .site-header .header-social-button{min-height:30px;padding:4px 5px;font-size:.66rem;text-align:center}
  .site-header .header-social-button strong{font-size:.59rem}
  .site-header .nav-toggle{align-self:stretch;order:2;min-height:38px;margin:6px 0 0;padding:7px 12px;border-color:#50616b;background:#1a2935}
  .site-header .main-nav{display:none;top:100%;margin:0;padding:10px;border:1px solid #45535d;border-radius:0 0 12px 12px;background:#0b141e;box-shadow:0 18px 36px #0009}
  .site-header .main-nav.open{display:flex;flex-direction:column;align-items:stretch}
  .site-header .main-nav a{width:100%;justify-content:flex-start;min-height:38px;padding:8px 12px;font-size:.88rem}
  .site-header .main-nav .nav-row-break{display:none}
  .music-page .site-header .main-nav{display:flex;position:static;flex-direction:row;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding:8px 0 2px;border:0;border-top:1px solid #34434d;border-radius:0;background:transparent;box-shadow:none}
  .music-page .site-header .main-nav a{width:auto;flex:none;min-height:38px;padding:8px 10px;font-size:.8rem}
  .music-page .site-header .main-nav::before{display:none}
}
@media(max-width:420px){
  .site-header .header-social-button{font-size:.65rem}
  .site-header .header-social-button strong{font-size:.58rem}
}

/* digital-buttons.css */
/* Station controls: compact console keys with clear active and focus states. */
:root{--key-edge:#536c76;--key-face:#162932;--key-glow:#b8e77d}
body :is(.button,.broadcast-form button,.main-nav a,.header-social-button,.nav-toggle,.community-tabs button,.artist-filters button,.chart-tabs button,.schedule-tabs button,.library-tabs button,.team-like,.music-root-like,.feedback-recommend,.event-submit button,#event-submit,.chat-send-row button,.chat-emoji-row button,.chat-media-button){
  border-radius:6px;
  border:1px solid var(--key-edge);
  background-image:linear-gradient(180deg,#ffffff12 0%,transparent 42%,#00000033 100%);
  background-color:var(--key-face);
  box-shadow:inset 0 1px 0 #e6fbff24,inset 0 -2px 0 #06101688,0 2px 0 #05090d;
  color:#edf6f4;
  font-weight:800;
  letter-spacing:.045em;
  text-decoration:none;
  transition:border-color .16s,background-color .16s,box-shadow .16s,transform .16s;
}
body :is(.button,.broadcast-form button,.main-nav a,.header-social-button,.nav-toggle,.community-tabs button,.artist-filters button,.chart-tabs button,.schedule-tabs button,.library-tabs button,.team-like,.music-root-like,.feedback-recommend,.event-submit button,#event-submit,.chat-send-row button,.chat-emoji-row button,.chat-media-button):is(:hover,:focus-visible){
  border-color:var(--key-glow);
  background-color:#24443d;
  box-shadow:inset 0 1px 0 #f0ffe548,0 2px 0 #05090d,0 0 0 1px #a7e77635,0 0 14px #a7e77630;
}
body :is(.button,.broadcast-form button,.main-nav a,.header-social-button,.nav-toggle,.community-tabs button,.artist-filters button,.chart-tabs button,.schedule-tabs button,.library-tabs button,.team-like,.music-root-like,.feedback-recommend,.event-submit button,#event-submit,.chat-send-row button,.chat-emoji-row button,.chat-media-button):focus-visible{outline:2px solid #e4ffae;outline-offset:3px}
body :is(.button,.broadcast-form button,.main-nav a,.header-social-button,.nav-toggle,.community-tabs button,.artist-filters button,.chart-tabs button,.schedule-tabs button,.library-tabs button,.team-like,.music-root-like,.feedback-recommend,.event-submit button,#event-submit,.chat-send-row button,.chat-emoji-row button,.chat-media-button):active{transform:translateY(1px);box-shadow:inset 0 2px 5px #0008}
body :is(.button,.broadcast-form button,.main-nav a,.header-social-button,.nav-toggle,.community-tabs button,.artist-filters button,.chart-tabs button,.schedule-tabs button,.library-tabs button,.team-like,.music-root-like,.feedback-recommend,.event-submit button,#event-submit,.chat-send-row button,.chat-emoji-row button,.chat-media-button):disabled{opacity:.55;cursor:not-allowed;box-shadow:inset 0 1px #ffffff14}

/* The navigation is one consistent row of small, readable digital keys. */
body .site-header .main-nav a{min-height:36px;padding:7px 10px;border-color:#405762;background-color:#172a34;background-image:linear-gradient(180deg,#ffffff10,transparent 46%,#0004);box-shadow:inset 0 1px #def7ff1b,0 2px 0 #05090d;font-size:.8rem}
body .site-header .main-nav a:is(:hover,:focus-visible),body .site-header .main-nav a.active,body .site-header .main-nav a[aria-current=page]{border-color:#b8e77d;background-color:#294637;color:#f7ffe7;box-shadow:inset 0 1px #ffffff35,0 2px 0 #05090d,0 0 12px #a7e77635}
body .site-header .main-nav a.join-link{border-color:#87bb83;background-color:#235038;color:#f3ffe8}
body .site-header .main-nav a.nav-live{border-color:#ff6b70;background-color:#d51f32;background-image:linear-gradient(180deg,#ff5964,#bc1027 55%,#890d1e);color:#fff;box-shadow:inset 0 1px #ffd5d7a0,0 2px 0 #490813,0 0 17px #ff365080;font-weight:900;letter-spacing:.09em}
body .site-header .main-nav a.nav-live:is(:hover,:focus-visible){background-color:#ee3044;background-image:linear-gradient(180deg,#ff6673,#d81731);box-shadow:0 2px 0 #490813,0 0 22px #ff5368}
body .site-header .header-social-button{border-color:var(--social-border,#486776);background-color:var(--social-bg,#142832);box-shadow:inset 0 1px #ffffff20,0 2px 0 #05090d}
body .site-header .header-social-button strong{color:var(--social-ink,#c8efa4)}
body .site-header .header-social-button.youtube{--social-border:#bf454f;--social-bg:#35191d;--social-ink:#ff858d}
body .site-header .header-social-button.facebook{--social-border:#527ec2;--social-bg:#172b49;--social-ink:#9cc5ff}
body .site-header .header-social-button.instagram{--social-border:#ad538f;--social-bg:#3b1e36;--social-ink:#f3a4d9}
body .site-header .header-social-button.twitch{--social-border:#8254ba;--social-bg:#2d2045;--social-ink:#d0adff}
body .site-header .header-social-button:is(:hover,:focus-visible){border-color:var(--social-ink);background-color:var(--social-bg);box-shadow:inset 0 1px #ffffff35,0 2px 0 #05090d,0 0 12px var(--social-border)}
body .button.primary,body .broadcast-form button,body #event-submit,body .chat-send-row button{border-color:#ea777e;background-color:#9b2735;color:#fff;box-shadow:inset 0 1px #ffffff50,0 2px 0 #360b13,0 0 12px #c52e4050}
body .button.secondary{border-color:#7aa19e;background-color:#173139;color:#eaf6f1}
body :is(.community-tabs button,.artist-filters button,.schedule-tabs button,.library-tabs button)[aria-pressed=true],body :is(.chart-tabs button,.schedule-tabs button,.library-tabs button)[aria-selected=true]{border-color:#b8e77d;background-color:#31513b;color:#fff;box-shadow:inset 0 1px #ffffff3d,0 0 12px #b8e77d42}
@media(max-width:720px){body .site-header .main-nav a{min-height:42px;font-size:.88rem}body .site-header .header-social-button{min-height:30px}}
@media(prefers-reduced-motion:reduce){body :is(.button,.main-nav a,.header-social-button,.nav-toggle,.community-tabs button,.artist-filters button,.chart-tabs button){transition:none}}

/* caribbean-flags.css */
/* Smooth, single-line station ticker beneath the navigation. */
.station-message-strip{width:100%;max-width:none;margin:7px 0 10px;overflow:hidden;background:transparent;border:0;box-shadow:none}
.station-message-viewport{width:100%;overflow:hidden}
.station-message-reel{display:flex;flex-wrap:nowrap;width:max-content;white-space:nowrap;animation:station-message-left 34s linear infinite;will-change:transform;transform:translate3d(0,0,0);backface-visibility:hidden}
.station-message-list{display:flex;flex:none;flex-wrap:nowrap;align-items:center;gap:24px;min-height:38px;padding:4px 24px 4px 0;white-space:nowrap;font:900 1.1rem/1.3 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.055em;text-transform:uppercase;filter:saturate(1.25)}
.station-message-list>*{display:inline-block;flex:0 0 auto;white-space:nowrap}
.station-message-list strong,.station-message-slogan,.station-message-notice,.station-message-separator{animation:station-ticker-colors 12s linear infinite}
.station-message-slogan{animation-delay:-3s}.station-message-notice{animation-delay:-6s}.station-message-separator{animation-delay:-9s}
@keyframes station-message-left{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@keyframes station-ticker-colors{0%,100%{color:#38f8ff;text-shadow:0 0 1px rgba(56,248,255,.30)}20%{color:#fff34d;text-shadow:0 0 1px rgba(255,243,77,.28)}40%{color:#62ff72;text-shadow:0 0 1px rgba(98,255,114,.28)}60%{color:#ff5bd8;text-shadow:0 0 1px rgba(255,91,216,.28)}80%{color:#ff704d;text-shadow:0 0 1px rgba(255,112,77,.28)}}
@media(max-width:640px){.station-message-strip{width:100%;margin:5px 0 8px}.station-message-list{gap:20px;min-height:36px;padding:4px 20px 4px 0;font-size:1.1rem;letter-spacing:.035em}}
@media(prefers-reduced-motion:reduce){.station-message-reel,.station-message-list strong,.station-message-slogan,.station-message-notice,.station-message-separator{animation:none}.station-message-viewport{overflow-x:auto}.station-message-reel .station-message-list:last-child{display:none}}

/* banner-glow.css */
/* A consistent light treatment for the station's advertising banners. */
.hero-sponsor-slot,
.hero-special-banner,
.host-moving-banner,
.rotating-ad-banner,
.promo-host{
  border-color:rgba(255,188,91,.72);
  box-shadow:0 0 10px rgba(255,197,82,.43),0 0 26px rgba(235,68,76,.25),0 0 46px rgba(147,208,101,.12);
}
.hero-sponsor-slot{border:1px solid rgba(255,188,91,.72)}
.hero-sponsor-slot:hover,
.hero-special-banner:hover,
.host-moving-banner:hover,
.rotating-ad-banner:hover,
.promo-host:hover{
  border-color:rgba(255,214,130,.92);
  box-shadow:0 0 14px rgba(255,201,102,.61),0 0 34px rgba(235,68,76,.34),0 0 54px rgba(147,208,101,.18);
}

/* original-logo-banner.css */
/* Show the owner's original logo unchanged over both host-show banners. */
.hero-special-banner,.host-moving-banner{position:relative}
.original-logo-overlay{position:absolute;left:0;top:0;width:47.5%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(145deg,#101315 0%,#080b0c 72%);pointer-events:none}
.original-logo-overlay img{display:block;width:95%;height:94%;object-fit:contain}
@media(max-width:620px){.original-logo-overlay{width:47%}.original-logo-overlay img{width:98%;height:90%}}

/* header-flags.css */
/* Moving flags stay behind the logo and navigation while retaining their color. */
.home-page .site-header .header-flag-backdrop{position:absolute;inset:0;z-index:0;display:grid;grid-template-rows:repeat(2,minmax(0,1fr));overflow:hidden;pointer-events:none;opacity:.62;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.home-page .site-header .header-flag-row{display:flex;align-items:center;min-width:0;overflow:hidden}
.home-page .site-header .header-flag-reel{display:flex;width:max-content;animation:header-flags-left 42s linear infinite;will-change:transform}
.home-page .site-header .header-flag-row:nth-child(2) .header-flag-reel{animation-direction:reverse}
.home-page .site-header .header-flag-list{display:flex;flex:none;align-items:center;gap:12px;padding-right:12px}
.home-page .site-header .header-flag-item{display:grid;flex:none;place-items:center;width:70px;height:70px;filter:brightness(1.28) saturate(1.35) drop-shadow(0 0 11px #b4fff0b5)}
.home-page .site-header .header-flag-item img{display:block;width:70px;height:70px;object-fit:contain}
.home-page .site-header .header-flag-item.is-emoji{font:53px/1 system-ui,'Apple Color Emoji','Segoe UI Emoji',sans-serif}
.home-page .site-header .header-top,.home-page .site-header .nav-toggle,.home-page .site-header .main-nav{position:relative;z-index:1}
@keyframes header-flags-left{to{transform:translateX(-50%)}}
@media(max-width:720px){.home-page .site-header .header-flag-backdrop{opacity:.48}.home-page .site-header .header-flag-item,.home-page .site-header .header-flag-item img{width:56px;height:56px}.home-page .site-header .header-flag-item.is-emoji{font-size:43px}.home-page .site-header .header-flag-reel{animation-duration:38s}}
@media(prefers-reduced-motion:reduce){.home-page .site-header .header-flag-reel{animation:none}}

/* Mobile header cleanup — 2026-10-12.
   Hide ONLY the decorative flag reel on phones; preserve the Caribbean map,
   flag-colored country name, logo, social links, and desktop flags. */
@media (max-width: 760px) {
  html body.home-page .site-header .header-flag-backdrop {
    display: none !important;
    visibility: hidden !important;
  }
}

/* Disable background flag reels at every viewport size (2026-10-12). */
html body .site-header .header-flag-backdrop { display:none !important; }

/* home-accent.css */
/* Keep the main statement crisp over the dark player panel. */
.home-page .hero .hero-copy .home-headline {
  max-width: 12ch;
  color: #fff;
  font-size: clamp(2.8rem, 5.2vw, 5.2rem);
  font-weight: 950;
  line-height: 1.02;
  letter-spacing: -.055em;
  text-wrap: balance;
  text-shadow: 0 3px 18px rgba(0,0,0,.72);
}
.home-page .hero .hero-copy .home-headline .caribbean-word {
  display: inline-block;
  white-space: nowrap;
  color: #fff;
  -webkit-text-fill-color: currentColor;
  -webkit-text-stroke: 0;
  filter: drop-shadow(0 2px 5px rgba(0,0,0,.8));
}
.home-page .hero .hero-copy .home-headline .caribbean-word > span {display:inline;background:none;-webkit-text-fill-color:currentColor;-webkit-text-stroke:0;filter:none;text-shadow:0 0 3px rgba(255,255,255,.2)}
.home-page .hero .hero-copy .caribbean-word > span:nth-child(1) {color:#e96b7d}
.home-page .hero .hero-copy .caribbean-word > span:nth-child(2) {color:#eaa65c}
.home-page .hero .hero-copy .caribbean-word > span:nth-child(3) {color:#e6cb66}
.home-page .hero .hero-copy .caribbean-word > span:nth-child(4) {color:#8ed477}
.home-page .hero .hero-copy .caribbean-word > span:nth-child(5) {color:#64c9a0}
.home-page .hero .hero-copy .caribbean-word > span:nth-child(6) {color:#71c7d9}
.home-page .hero .hero-copy .caribbean-word > span:nth-child(7) {color:#83a9d6}
.home-page .hero .hero-copy .caribbean-word > span:nth-child(8) {color:#aa8fd2}
.home-page .hero .hero-copy .caribbean-word > span:nth-child(9) {color:#dc91bf}
@media (max-width: 720px) {
  .home-page .hero .hero-copy .home-headline {
    max-width: none;
    font-size: clamp(2.55rem, 10vw, 3.7rem);
  }
}

/* A soft signal glow frames the live audio controls without obscuring them. */
.home-page .hero .radio-player {
  border-color: #a4f2e5;
  box-shadow: inset 0 1px rgba(235,255,255,.22),
    0 12px 28px rgba(0,0,0,.52),
    0 0 0 1px rgba(161,241,223,.38),
    0 0 26px rgba(74,229,212,.59),
    0 0 52px rgba(235,77,93,.24);
}

/* seasonal-theme.css */
/* Editorial theme rotation retains the original logo, red LIVE status, and page layout. */
html[data-season]{--season-main:#f7a852;--season-secondary:#ad7ce0;--season-haze:rgba(242,127,39,.16);--season-card:#19141f;--season-label:"HALLOWEEN VIBES";--line:#493647}
html[data-season="miami"]{--line:#3a5966}
html[data-season="thanksgiving"]{--line:#544037}
html[data-season="carnival"]{--line:#34545a}
/* Subtle steel bars stay behind opaque content cards on all station pages. */
html[data-season] body{background-color:#080b10;background-image:radial-gradient(ellipse 60% 460px at 50% 0,var(--season-haze),transparent),linear-gradient(180deg,transparent 0 190px,rgba(112,136,147,.055) 190px 207px,transparent 207px),repeating-linear-gradient(90deg,transparent 0 38px,rgba(130,159,169,.065) 38px 40px,rgba(60,79,89,.11) 40px 56px,rgba(130,159,169,.055) 56px 59px,transparent 59px 96px);background-size:auto,100% 525px,auto;background-attachment:fixed}
html[data-season] .site-header::before{background:linear-gradient(135deg,rgba(25,17,30,.97),rgba(10,18,25,.97) 58%,rgba(25,15,28,.97));border-bottom-color:var(--season-main);box-shadow:0 10px 28px #0009,0 1px 18px var(--season-haze)}
html[data-season]:not([data-season="halloween"]) .site-header::before{background:linear-gradient(135deg,var(--season-card),#0b121b 65%,var(--season-card))}
html[data-season] .site-header .brand img{filter:drop-shadow(0 0 8px var(--season-haze)) drop-shadow(0 0 16px var(--season-haze))}
html[data-season] .site-header .main-nav{border-top-color:var(--line)}
html[data-season] .site-header .main-nav a:hover,html[data-season] .site-header .main-nav a[aria-current=page]{border-color:var(--season-main);background:var(--season-card)}
html[data-season] .site-header .main-nav a.nav-live{border-color:#f3747e;background:linear-gradient(145deg,#aa2632,#781b25)}
html[data-season] .hero{border-color:var(--line);background:radial-gradient(circle at 72% 11%,var(--season-haze),transparent 36%),linear-gradient(125deg,#11141c,var(--season-card) 60%,#0d141b);box-shadow:0 24px 70px #0008,0 0 28px var(--season-haze)}
html[data-season] .home-page .hero .radio-player{border-color:var(--season-main);box-shadow:inset 0 1px #ffffff2d,0 12px 28px #0009,0 0 22px var(--season-haze),0 0 38px color-mix(in srgb,var(--season-secondary) 26%,transparent)}
html[data-season] .home-page .hero .radio-player::before{background:linear-gradient(90deg,var(--season-secondary),var(--season-main),var(--season-secondary))}
html[data-season] .home-page .radio-player-topline{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
html[data-season] .home-page .radio-player-topline::after{content:var(--season-label);color:var(--season-main);font-size:.66rem;font-weight:900;letter-spacing:.1em;text-shadow:0 0 9px var(--season-haze)}
html[data-season] .home-page .stream-readout{border-color:var(--line);background:linear-gradient(90deg,#0a151e,var(--season-card))}
html[data-season] .panel,html[data-season] .music-card,html[data-season] .portal-card{border-color:var(--line)}
html[data-season] .section-heading .eyebrow,html[data-season] .team-intro .eyebrow{color:var(--season-main)}
html[data-season] .button.secondary:hover{border-color:var(--season-main);background:var(--season-card)}
html[data-season] .site-header .header-social-button:hover{border-color:var(--season-main)}
html[data-season="halloween"] .hero{background:radial-gradient(circle at 80% 12%,rgba(119,56,148,.22),transparent 30%),radial-gradient(circle at 12% 75%,rgba(244,123,42,.10),transparent 37%),linear-gradient(125deg,#10131b,#1a1420 58%,#0d141b)}
html[data-season="halloween"] .home-page .hero .hero-copy .home-headline{filter:drop-shadow(0 0 11px rgba(221,115,39,.24))}
html[data-season="miami"] .hero{background:radial-gradient(circle at 79% 14%,rgba(72,223,219,.19),transparent 35%),radial-gradient(circle at 17% 71%,rgba(231,87,160,.17),transparent 38%),linear-gradient(125deg,#101820,#171727 60%,#0c1c25)}
html[data-season="miami"] .site-header::before{background:linear-gradient(135deg,#131728f7,#101d28f7 60%,#211629f7)}
html[data-season="miami"] .home-page .hero .hero-copy .home-headline{filter:drop-shadow(0 0 11px rgba(72,223,219,.19))}
html[data-season="thanksgiving"] .hero{background:radial-gradient(circle at 75% 16%,rgba(237,189,115,.15),transparent 36%),linear-gradient(125deg,#13151a,#1b1618 59%,#181b1e)}
@media(max-width:720px){html[data-season] .home-page .radio-player-topline::after{font-size:.6rem}html[data-season] .site-header::before{box-shadow:0 5px 18px #0009}}
@media(prefers-reduced-motion:reduce){html[data-season] .site-header .brand img{transition:none}}

/* video-station-id.css */
.video-frame .video-id-gate{box-sizing:border-box;width:100%;min-height:100%;display:grid;place-items:center;background:radial-gradient(circle at center,#172b35 0,#080e16 62%,#020304 100%)}
.video-id-play{display:grid;place-items:center;width:88px;height:88px;padding:0 0 0 5px;border:2px solid #8debf5;border-radius:50%;background:#11bbce;color:#06141b;font-family:inherit;font-size:2.2rem;font-weight:700;line-height:1;cursor:pointer;box-shadow:0 0 25px #00bcdd88}
.video-id-play:hover,.video-id-play:focus-visible{background:#8df2fa;outline:2px solid #fff;outline-offset:4px}

/* chat-refined.css */
.live-chat-title{min-height:62px;padding:16px 20px;border-bottom:1px solid #28414c;background:#0c1720;color:#f5fbff;font-family:inherit;font-size:1.15rem;letter-spacing:.075em;text-shadow:none;box-shadow:none}
.live-chat-title small{font-family:inherit;color:#86aab7;font-size:.72rem;letter-spacing:.1em}
.chat-live-light{width:9px;height:9px;box-shadow:0 0 10px #ff576488}
.station-chat-panel{height:640px;max-height:80vh;background:#0b1118}
.station-chat-messages{padding:18px;background-color:#0b1118;background-image:linear-gradient(#0b1118db,#0b1118db),url("/images/logo.png");background-size:100% 100%,min(410px,65%) auto;background-position:center;background-repeat:no-repeat;scrollbar-color:#36505b #0b1118}
.chat-message{width:fit-content;max-width:min(94%,680px);margin-bottom:10px;padding:11px 14px;border:1px solid #263943;border-radius:10px;background:#14212b;box-shadow:none}
.chat-message-head{gap:10px;margin-bottom:5px}
.chat-message-head strong{color:#87e0e5;font-size:.9rem}
.chat-message-head time{color:#afbec8;font-size:.78rem}
.chat-message p{font-size:.96rem;line-height:1.5}
.chat-message .chat-inline-icon{display:inline-block;font-size:2.6rem;line-height:1.1;vertical-align:-.13em}
.chat-message .chat-inline-flag{font-size:3.2rem}
.station-chat-form{gap:7px;padding:15px 18px 16px;border-top:1px solid #28414c;background:#0e1820}
.station-chat-form label{font-size:.79rem;color:#bed1db}
.station-chat-form input,.station-chat-form textarea{padding:11px 12px;border:1px solid #3b5662;border-radius:8px;background:#081219;color:#fff;font-size:.95rem;line-height:1.4}
.station-chat-form textarea{min-height:64px;resize:vertical}
.station-chat-form input:focus,.station-chat-form textarea:focus{outline:2px solid #61d7df;outline-offset:1px}
.chat-emoji-row{gap:8px;margin:3px 0 0;flex-wrap:wrap}
.chat-emoji-row button,.chat-emoji-row .chat-media-button,.chat-emoji-row button[aria-controls="emoji-picker"]{flex:0 0 88px;width:88px;height:88px;min-height:88px;padding:0;border:1px solid #466674;border-radius:12px;background:#182d38;color:#dffbff;font-family:inherit;letter-spacing:0;box-shadow:none}
.chat-emoji-row .chat-button-icon{display:grid;place-items:center;width:100%;height:100%;font-size:2.7rem;color:#a3e9ef;text-shadow:none}
.chat-emoji-row .chat-gif-icon{font-size:1.5rem;font-weight:900;letter-spacing:.03em}
.chat-emoji-row button:hover,.chat-emoji-row button:focus-visible{border-color:#8be7ed;background:#244250;box-shadow:0 0 0 2px #6ddbe844;transform:none}
.chat-emoji-row button[aria-expanded="true"]{border-color:#79e2e7;background:#245060;box-shadow:0 0 0 2px #6ddbe844}
.chat-emoji-row button[aria-expanded="true"] .chat-button-icon{color:#fff;text-shadow:none}
.chat-emoji-row #voice-record[aria-pressed="true"]{border-color:#ff7986;background:#78303b;box-shadow:0 0 0 2px #ff798644}
.chat-send-row{min-height:42px;margin-top:2px}
.chat-send-row span{font-size:.8rem}
.chat-send-row button{min-width:88px;min-height:40px;padding:9px 16px;border-radius:8px;background:#da3545;font-size:.88rem}
.emoji-picker{top:12px;bottom:auto;left:14px;right:14px;max-height:min(350px,65vh);padding:12px;border-color:#42606b;border-radius:11px;background:#12212b;box-shadow:0 18px 35px #000a}
.emoji-picker-head{font-size:1rem}
.gif-upload-row{margin:0 0 9px}
.gif-upload-row[hidden]{display:none}
.gif-upload-row .chat-media-button{display:inline-flex;align-items:center;min-height:36px;padding:7px 12px;border:1px solid #4e7683;border-radius:7px;background:#1c3845;color:#eafaff;font-size:.84rem;cursor:pointer}
.gif-upload-row .chat-media-button:hover,.gif-upload-row .chat-media-button:focus-within{border-color:#82e4e9;background:#29505c}
.emoji-picker-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;max-height:250px}
.emoji-picker-grid button{min-height:72px;font-size:2.4rem}
.chat-media-preview{border-color:#3d5e6b;background:#172b36}
@media(max-width:600px){.live-chat-title{min-height:56px;padding:14px 16px;font-size:1.02rem}.station-chat-panel{height:600px;max-height:none}.station-chat-messages{padding:13px}.station-chat-form{padding:12px}.chat-message{max-width:100%}.emoji-picker{top:8px;bottom:auto;left:8px;right:8px}.emoji-picker-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.emoji-picker-grid.flag-picker-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;max-height:300px}
.flag-picker-grid button{display:flex;align-items:center;gap:12px;min-height:96px;padding:9px 12px;text-align:left;background:#1d303b;font-size:1rem}
.flag-picker-grid .flag-mark{flex:none;font-size:3.6rem;line-height:1}
.flag-picker-grid .flag-name{font-size:.92rem;font-weight:750;line-height:1.25;overflow-wrap:anywhere}
.emoji-picker-grid.gif-picker-grid button{font-size:.85rem}
@media(max-width:600px){.chat-emoji-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.chat-emoji-row button,.chat-emoji-row button[aria-controls="emoji-picker"]{width:100%;height:68px;min-height:68px}.emoji-picker-grid.flag-picker-grid{grid-template-columns:1fr}}

/* station-video-banners.css */
.hero-special-banner img[hidden],.host-moving-banner img[hidden],.promo-host img[hidden]{display:none}
.station-wide-video{display:block;width:100%;height:auto;aspect-ratio:3/1;object-fit:cover;background:#05090b}
.station-wide-video[hidden]{display:none}
.promo-host .station-wide-video{aspect-ratio:3/1}
.rotating-ad-banner .rotating-ad-video{display:block;width:100%;height:100%;aspect-ratio:8/1;object-fit:cover;background:#05090b}
.rotating-ad-banner .rotating-ad-video[hidden]{display:none}

/* home-directory.css */
.home-page .home-explore-link{display:inline-flex;align-items:center;gap:.6rem;margin-top:14px;padding:9px 14px;border:1px solid rgba(255,214,139,.44);border-radius:999px;background:rgba(18,24,30,.78);color:#ffe2a7;text-decoration:none;font-size:.88rem;font-weight:800;letter-spacing:.01em}
.home-page .home-explore-link:hover,.home-page .home-explore-link:focus-visible{background:#68451f;color:#fff}
.home-page .home-directory{scroll-margin-top:180px;padding:28px 0 38px}
.home-directory-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 17px}
.home-directory-heading h2{margin:0;color:#fff;font-size:clamp(1.65rem,3vw,2.5rem);line-height:1.12;letter-spacing:-.035em}
.home-directory-heading p:not(.eyebrow){margin:7px 0 0;color:#bfcbd0}
.home-directory-live{flex:none;display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 15px;border:1px solid #d94f4f;border-radius:10px;background:#9e1e29;color:#fff;text-decoration:none;font-size:.85rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.home-directory-live:hover,.home-directory-live:focus-visible{background:#cf2434}
.home-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.home-directory-card{min-width:0;padding:22px;border:1px solid #34404a;border-radius:17px;background:linear-gradient(150deg,#1a252b,#101720 75%);box-shadow:inset 0 1px rgba(255,255,255,.06),0 14px 28px rgba(0,0,0,.18)}
.home-directory-card:nth-child(2){border-color:#635443;background:linear-gradient(150deg,#24231e,#101720 75%)}
.home-directory-card:nth-child(3){border-color:#4c3b45;background:linear-gradient(150deg,#211d26,#101720 75%)}
.home-directory-number{color:#ffcb79;font-size:.7rem;font-weight:900;letter-spacing:.13em}
.home-directory-card h3{margin:8px 0 4px;font-size:1.33rem;line-height:1.2}
.home-directory-card p{min-height:3.3em;margin:0 0 14px;color:#bec8d0;font-size:.88rem;line-height:1.55}
.home-directory-links{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.home-directory-links a{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:44px;padding:9px 11px;border:1px solid #3e4c55;border-radius:9px;background:#111d26;color:#f3f6f5;text-decoration:none;font-size:.79rem;font-weight:800;line-height:1.28;overflow-wrap:anywhere}
.home-directory-links a span{flex:none;color:#ffcb79}
.home-directory-links a:hover,.home-directory-links a:focus-visible{border-color:#f5bd72;background:#28323b;color:#fff}
.home-directory-foot{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin:12px 2px 0;color:#aebac2;font-size:.82rem}
.home-directory-foot a{color:#ead4ad;text-underline-offset:3px}
@media(max-width:1050px){.home-directory-grid{grid-template-columns:1fr 1fr}.home-directory-card:last-child{grid-column:1/-1}.home-directory-card p{min-height:0}}
@media(max-width:680px){.home-page .home-directory{scroll-margin-top:100px}.home-directory-heading{align-items:start;flex-direction:column}.home-directory-grid{grid-template-columns:1fr}.home-directory-card:last-child{grid-column:auto}.home-directory-card{padding:19px}.home-directory-links{grid-template-columns:1fr 1fr}.home-directory-foot{justify-content:flex-start;flex-wrap:wrap}}
@media(max-width:380px){.home-directory-links{grid-template-columns:1fr}}

.home-page #live,.home-page .home-about-anchor{scroll-margin-top:260px}
.home-page .home-about-anchor{display:block;height:0}
@media(max-width:720px){.home-page #live,.home-page .home-about-anchor{scroll-margin-top:160px}}

/* app-install.css */
.app-install-launch{position:fixed;right:18px;bottom:18px;z-index:80;display:flex;align-items:center;gap:7px;min-height:42px;padding:8px 14px;border:1px solid #9bc858;border-radius:999px;background:#12201c;color:#f5f8f3;box-shadow:0 8px 30px #0009,0 0 16px #a8db5540;font:800 .85rem/1.2 system-ui,sans-serif;cursor:pointer}
.app-install-launch:hover,.app-install-launch:focus-visible{background:#233b2a;outline:2px solid #d0f49d;outline-offset:2px}
.app-install-dialog{width:min(520px,calc(100% - 28px));max-height:min(90vh,760px);padding:0;border:1px solid #62807d;border-radius:20px;background:#101923;color:#f4f7f8;box-shadow:0 25px 90px #000d;overflow:auto}
.app-install-dialog::backdrop{background:rgba(2,5,9,.78);backdrop-filter:blur(5px)}
.app-install-panel{padding:24px;display:grid;gap:14px;font:inherit}
.app-install-head{display:flex;align-items:start;justify-content:space-between;gap:12px}
.app-install-head h2{margin:2px 0 0;font:900 1.65rem/1.15 system-ui,sans-serif}
.app-install-eyebrow{margin:0;color:#c7e796;font:850 .72rem/1.2 system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.app-install-close{flex:none;width:36px;height:36px;border:1px solid #53636a;border-radius:9px;background:#1c2b33;color:#fff;font-size:1.35rem;cursor:pointer}
.app-install-panel>p{margin:0;color:#c7d3d8;line-height:1.5}
.app-install-qr-wrap{display:grid;justify-items:center;gap:8px;padding:16px;border:1px solid #3b535c;border-radius:13px;background:#16242c}
.app-install-qr{display:block;width:min(224px,100%);height:auto;padding:8px;border-radius:10px;background:#fff}
.app-install-qr-wrap span{color:#d9e6e8;font-size:.85rem;text-align:center}
.app-install-actions{display:flex;flex-wrap:wrap;gap:9px}
.app-install-actions button{min-height:42px;padding:9px 15px;border:1px solid #9ac36d;border-radius:8px;background:#344d2f;color:#fff;font:800 .88rem system-ui,sans-serif;cursor:pointer}
.app-install-actions .app-install-copy{border-color:#536875;background:#20313b}
.app-install-actions button[hidden]{display:none}
.app-install-help{margin:0;padding-left:19px;color:#b9cbd0;font-size:.88rem;line-height:1.5}
.app-install-help li+li{margin-top:5px}
.app-install-note{min-height:1.3em;color:#cfe69e;font-size:.82rem}
@media(max-width:600px){.app-install-launch{right:12px;bottom:12px;min-height:40px;padding:8px 12px}.app-install-panel{padding:19px}}

/* help-chat.css */

#station-help{padding:24px;display:flex;justify-content:center;font-family:Arial,sans-serif}#station-help .help-window{width:390px;max-width:100%;background:#111923;color:#f5f7fa;border:1px solid #394852;border-radius:18px;overflow:hidden;box-shadow:0 12px 36px #0003}#station-help .help-head{padding:18px 20px;border-bottom:1px solid #394852;background:#192630;display:flex;align-items:center;gap:12px}#station-help .help-mark{color:#ffd181;font-weight:800;font-size:20px}#station-help .help-title{font-size:17px;font-weight:700}#station-help .help-sub{color:#bacbd5;font-size:13px;margin-top:5px}#station-help button,#station-help input,#station-help textarea{font:inherit}#station-help .help-body{padding:18px}#station-help .help-tabs{display:flex;gap:8px;margin-bottom:20px}#station-help button{border:1px solid #516777;background:#172632;color:#eff5fa;border-radius:9px;padding:10px 12px;cursor:pointer;min-height:44px}#station-help .help-tabs button{flex:1;font-size:14px;font-weight:700}#station-help .help-tabs button[aria-selected=true]{background:#efbe70;color:#141b21;border-color:#efbe70}#station-help .help-bubble{padding:14px;background:#21313e;border-radius:12px;line-height:1.6;font-size:15px;margin-bottom:14px}#station-help .help-questions{display:grid;gap:8px}#station-help .help-questions button{text-align:left;font-size:14px}#station-help .help-answer{margin-top:16px;color:#e0edf4;font-size:15px;line-height:1.6;border-left:3px solid #efbe70;padding-left:12px}#station-help .help-form{display:grid;gap:14px}#station-help label{display:grid;gap:6px;font-size:14px;color:#c8d5df}#station-help input,#station-help textarea{box-sizing:border-box;width:100%;padding:12px;border:1px solid #536a79;border-radius:8px;background:#090f16;color:#fff;font-size:16px}#station-help textarea{min-height:110px;resize:vertical}#station-help .help-send{background:#b32838;border-color:#e2707b;font-weight:700;color:#fff}#station-help .help-note{color:#b7c8d3;font-size:13px;line-height:1.6;margin:0}#station-help .help-footer{border-top:1px solid #394852;padding:12px 20px;font-size:12px;color:#b8c7d0}#station-help [hidden]{display:none!important}#station-help button:focus-visible{outline:3px solid #f6d49e;outline-offset:2px}@media(max-width:400px){#station-help{padding:12px}.help-body{padding:14px}}

#station-help{position:fixed;z-index:2000;bottom:18px;right:18px;padding:0;display:block;max-width:calc(100vw - 36px);pointer-events:none}#station-help .help-window{pointer-events:auto;max-height:calc(100dvh - 104px);overflow-y:auto;margin-bottom:12px}#station-help .help-launch{pointer-events:auto;display:flex;align-items:center;gap:8px;margin-left:auto;background:#a32235;border:1px solid #e87882;color:#fff;font-weight:700;box-shadow:0 4px 18px #0005}#station-help .help-close{margin-left:auto;padding:8px;min-width:44px;background:transparent}#station-help .help-answer a{display:inline-block;margin-top:10px;color:#ffdc95;text-underline-offset:3px}#station-help .help-footer{font-size:13px}#station-help button:disabled{opacity:.6;cursor:wait}@media(max-width:440px){#station-help{bottom:12px;right:12px;max-width:calc(100vw - 24px)}#station-help .help-window{width:calc(100vw - 24px)}}

#station-help .help-email{color:#ffdc95;text-underline-offset:3px;font-size:14px;align-self:start}

/* Keep Help Chat clear of the existing Get the app control. */
#station-help{bottom:76px;right:18px}
#station-help .help-launch{min-height:40px;padding:8px 11px;gap:6px;border-radius:999px;font-size:14px;line-height:1.2}
#station-help .help-window{max-height:calc(100dvh - 150px)}
@media(max-width:600px){#station-help{bottom:66px;right:12px;max-width:calc(100vw - 24px)}#station-help .help-window{max-height:calc(100dvh - 130px)}}

/* 2026-10-04: floating-control lane — Help sits above Get the app, never under Back to Top. */
#station-help{right:18px!important;bottom:72px!important}
@media(max-width:640px){#station-help{right:12px!important;bottom:66px!important}}

/* visitor-flags.css */
.visitor-country-counter{width:184px;max-width:100%;box-sizing:border-box;padding:10px 12px;background:#111f2a;border:1px solid #40535c;border-radius:9px;color:#eef4f7;font-family:Arial,sans-serif;text-align:left;align-self:start;justify-self:start;margin-right:auto}
.visitor-country-counter h3{font:500 11px/1.3 Arial,sans-serif;letter-spacing:.09em;margin:0 0 9px;color:#c7d8df;text-transform:uppercase}
.visitor-country-flags{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px}
.visitor-country-flag{display:flex;align-items:center;gap:5px;min-width:0;color:#eef4f7;font:500 12px/1.3 Arial,sans-serif;font-variant-numeric:tabular-nums}
.visitor-country-flag .country-emoji{font-size:21px;line-height:1;flex:none}
.visitor-country-flag .country-count{overflow-wrap:anywhere}
.visitor-country-counter .visitor-country-total{font:400 11px/1.4 Arial,sans-serif;color:#a9bcc7;margin:9px 0 0}
.visitor-country-counter details{margin-top:8px;font-size:12px}.visitor-country-counter summary{cursor:pointer;color:#c7d8df;padding:4px 0}
.visitor-country-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #263a46;font-size:14px;color:#eef4f7}
.visitor-country-row:last-child{border-bottom:0}.visitor-country-row .country-emoji{font-size:23px;line-height:1;flex:none}.visitor-country-row .country-count{margin-left:auto;font-variant-numeric:tabular-nums}
.visitor-country-counter .visitor-country-row{font-size:12px;gap:6px}.visitor-country-counter .visitor-country-row .country-emoji{font-size:18px}
.visitor-country-note{color:#bdcbd3;font-size:14px;line-height:1.5}.visitor-country-counter p{max-width:none}

/* Public visitor country statistics are dashboard-only (2026-10-12). */
html body footer .visitor-country-counter { display:none !important; }

/* back-to-top.css */
/* ASYLUM RADIO LIVE — independent viewport-fixed Back to Top */
.back-to-top-wrap{display:none!important}
#asylum-back-to-top.back-to-top{
  position:fixed!important;
  right:18px!important;
  bottom:126px!important;
  left:auto!important;
  top:auto!important;
  z-index:2147483646!important;
  display:flex!important;
  width:max-content!important;
  max-width:calc(100vw - 36px)!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-height:42px!important;
  margin:0!important;
  padding:9px 13px!important;
  border:1px solid #e87882!important;
  border-radius:999px!important;
  background:#a32235!important;
  color:#fff!important;
  box-shadow:0 4px 18px #0008!important;
  font:700 14px/1.2 Arial,sans-serif!important;
  text-decoration:none!important;
  cursor:pointer!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:none!important;
}
#asylum-back-to-top.back-to-top:hover,#asylum-back-to-top.back-to-top:focus-visible{background:#b92a3f!important;outline:2px solid #f6d49e;outline-offset:2px}
@media(max-width:640px){#asylum-back-to-top.back-to-top{right:12px!important;bottom:116px!important;min-height:40px!important;padding:8px 11px!important;font-size:13px!important}}
html{scroll-behavior:smooth}

/* header-tight.css */
/* ASYLUM RADIO LIVE — extra-wide MAIN PUBLIC GRID pages + compact brand-color social icons */
:root{--main-grid-max:2560px}

/* Only the main public pages that contain content grids are widened.
   Admin/portal, schedule, forms, join and other non-grid pages keep their existing width. */
body:has(.home-directory-grid) main,
body:has(.artist-grid) .artists-shell,
body:has(.community-story-grid) .community-shell,
body:has(.carnival-worldwide-grid) main,
body:has(.music-news-grid) main,
body:has(.music-roots-grid) .roots-shell{
  width:calc(100% - 16px)!important;
  max-width:var(--main-grid-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Widen only the principal public content grids. */
.home-directory-grid,.artist-grid,.community-story-grid,.community-carnival-grid,
.regional-sports-grid,.carnival-worldwide-grid,.music-news-grid,.music-roots-grid,
.broadcast-grid,.promo-grid{
  width:100%!important;
  max-width:none!important;
}

@media(min-width:1500px){
  .artist-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
  .home-directory-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .community-carnival-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media(max-width:900px){
body:has(.home-directory-grid) main,body:has(.artist-grid) .artists-shell,body:has(.community-story-grid) .community-shell,body:has(.carnival-worldwide-grid) main,body:has(.music-news-grid) main,body:has(.music-roots-grid) .roots-shell{width:calc(100% - 16px)!important}
}
@media(max-width:720px){
body:has(.home-directory-grid) main,body:has(.artist-grid) .artists-shell,body:has(.community-story-grid) .community-shell,body:has(.carnival-worldwide-grid) main,body:has(.music-news-grid) main,body:has(.music-roots-grid) .roots-shell{width:calc(100% - 14px)!important}
}

/* mobile-social-under-logo.css */
/* Mobile only: keep the four existing social buttons centered, clean and evenly spaced under the station logo. */
@media (max-width: 720px) {
  .site-header .header-top {
    align-items: center !important;
  }

  .site-header .header-social,
  header .social-links,
  header .social-icons,
  header .social-media {
    width: min(92vw, 340px) !important;
    max-width: 340px !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    justify-content: center !important;
    align-items: stretch !important;
    justify-items: stretch !important;
    gap: 8px !important;
    margin: 6px auto 8px !important;
    padding: 0 4px !important;
    box-sizing: border-box !important;
    justify-self: center !important;
    text-align: center !important;
  }

  .site-header .header-social-button {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 42px !important;
    padding: 6px 8px !important;
    box-sizing: border-box !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 2px !important;
    text-align: center !important;
    line-height: 1.1 !important;
  }

  .site-header .header-social-button strong {
    white-space: nowrap !important;
  }
}

/* player-sticky.css */
/* ASYLUM RADIO LIVE: keep the live player visible while the listener scrolls. */
@media (min-width: 721px){
  body.arl-radio-playing .radio-player{
    position:sticky;
    top:12px;
    z-index:80;
    box-shadow:0 16px 40px rgba(0,0,0,.45);
  }
}
@media (max-width:720px){
  body.arl-radio-playing .radio-player{
    position:sticky;
    top:6px;
    z-index:80;
    max-height:46vh;
    overflow:auto;
    box-shadow:0 12px 32px rgba(0,0,0,.5);
  }
}

/* mobile-alignment-fix.css */
/* ASYLUM RADIO LIVE — final mobile alignment layer.
   Loaded last so legacy responsive rules cannot push public pages off-screen. */
*,*::before,*::after{box-sizing:border-box}
html,body{max-width:100%;overflow-x:hidden}
img,video,iframe,svg,canvas{max-width:100%}

@media (max-width:720px){
  html{-webkit-text-size-adjust:100%}
  body{width:100%;margin:0}

  /* Keep the site frame centered and inside the phone viewport. */
  .site-header,main,footer{
    width:calc(100% - 20px)!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .site-header{min-height:0!important;padding:5px 0 10px!important}
  .site-header::before{height:auto!important}
  .site-header .header-top{width:100%;grid-template-columns:minmax(0,1fr)!important;padding:0!important}
  .site-header .header-top .brand,.site-header>.brand{
    width:min(100%,320px)!important;
    max-width:320px!important;
    height:104px!important;
    margin:0 auto!important;
  }
  .site-header .brand img{width:100%!important;max-width:100%!important;height:100%!important;object-fit:contain!important}
  .site-header .header-social{width:min(100%,340px)!important;max-width:340px!important;margin:4px auto 8px!important}
  .site-header .nav-toggle{width:100%;margin:5px 0 0!important}
  .site-header .main-nav{left:0!important;right:0!important;top:100%!important;width:100%!important;max-width:100%!important}

  /* Homepage: one clean column, consistent gutters. */
  .hero{
    width:100%!important;
    max-width:100%!important;
    grid-template-columns:minmax(0,1fr)!important;
    padding:22px 14px!important;
    gap:20px!important;
    border-radius:18px!important;
  }
  .hero-left-stack,.twitch-column,.hero-media-stack,.hero-copy,.radio-player,
  .hero-sponsor-slot,.hero-video-panel,.on-air-section,.feedback-card{
    min-width:0!important;width:100%!important;max-width:100%!important;
  }
  .hero h1,.home-headline{font-size:clamp(2rem,10vw,3rem)!important;line-height:.98!important;overflow-wrap:anywhere}
  .hero-station-copy,.hero-intro-card{max-width:100%!important}

  /* Player stays usable without widening the page. */
  .radio-player{padding-left:12px!important;padding-right:12px!important}
  .radio-player-main{grid-template-columns:auto minmax(0,1fr)!important;gap:10px!important}
  .radio-player-copy,.radio-player-details,.stream-readout,.stream-readout-music{min-width:0!important}
  .radio-player-details strong,.radio-player-details span,.stream-readout strong{overflow-wrap:anywhere}
  .radio-volume{grid-column:1/-1!important;width:100%!important;max-width:none!important}
  .radio-volume input{width:100%!important;max-width:100%!important}
  body.arl-radio-playing .radio-player{max-height:52vh!important}

  /* Generic public sections/cards should never exceed the viewport. */
  .section,.panel,.promo-grid,.promo,.home-directory-grid,.home-directory-card,
  .artists-shell,.artist-grid,.artist-card,.community-shell,.community-story-grid,
  .community-carnival-grid,.regional-sports-grid,.carnival-worldwide-grid,
  .music-news-grid,.music-roots-grid,.roots-shell,.event-ad-shell,.twitch-live-main,
  .broadcast-grid,.about-grid,.schedule-grid,.contact-card,.donation-card{
    min-width:0!important;max-width:100%!important;
  }
  .artists-shell,.community-shell,.roots-shell,.event-ad-shell,.twitch-live-main{
    width:100%!important;margin-left:auto!important;margin-right:auto!important;
  }
  .artist-grid,.home-directory-grid,.community-story-grid,.community-carnival-grid,
  .regional-sports-grid,.carnival-worldwide-grid,.music-news-grid,.music-roots-grid,
  .broadcast-grid,.promo-grid{grid-template-columns:minmax(0,1fr)!important}

  /* Media, banners and controls scale to the available card width. */
  .hero-sponsor-ad,.hero-sponsor-ad img,.hero-special-banner,.hero-special-banner img,
  .promo img,.promo video,.video-frame,.video-frame iframe,.twitch-stage,
  .twitch-video,.twitch-chat,.twitch-ad-rotator{width:100%!important;max-width:100%!important}
  input,select,textarea,button{max-width:100%}
  table{max-width:100%}

  /* Long text/links must wrap instead of creating horizontal scroll. */
  p,h1,h2,h3,h4,a,span,strong,small,label,td,th{overflow-wrap:anywhere}
  footer{padding-left:4px!important;padding-right:4px!important}
}

@media (max-width:420px){
  .site-header,main,footer{width:calc(100% - 14px)!important}
  .hero{padding:18px 10px!important}
  .site-header .header-top .brand,.site-header>.brand{height:96px!important;max-width:300px!important}
  .site-header .header-social{gap:6px!important}
  .site-header .header-social-button{padding:5px 4px!important;font-size:.62rem!important}
  .site-header .header-social-button strong{font-size:.56rem!important}
  .radio-player{padding-left:9px!important;padding-right:9px!important}
}

/* asylum-sticky-player-preview.css */
/* Electric cyan bottom player — no additional player, no live text */
#asylum-sticky-player{position:fixed;left:50%;bottom:12px;transform:translateX(-50%);z-index:99999;box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:15px;max-width:calc(100vw - 24px);min-height:62px;padding:10px 20px;border:1px solid #00e5ff;border-radius:999px;background:rgba(7,22,29,.96);box-shadow:0 0 15px rgba(0,229,255,.38),0 0 37px rgba(0,229,255,.22);backdrop-filter:blur(12px);color:#00e5ff}
#asylum-sticky-player .asp-dot{display:block;flex:0 0 11px;width:11px;height:11px;border-radius:50%;background:#00e5ff;box-shadow:0 0 12px rgba(0,229,255,.9)}
#asylum-sticky-player.is-playing .asp-dot{animation:aspCyanDot 1.5s ease-in-out infinite}
#asylum-sticky-player .asp-bars{height:32px;display:flex;align-items:center;gap:4px}
#asylum-sticky-player .asp-bars i{width:4px;height:9px;background:#00e5ff;border-radius:5px}
#asylum-sticky-player.is-playing .asp-bars i{animation:aspCyanWave .75s ease-in-out infinite alternate}
#asylum-sticky-player .asp-bars i:nth-child(2){animation-delay:.1s}#asylum-sticky-player .asp-bars i:nth-child(3){animation-delay:.2s}#asylum-sticky-player .asp-bars i:nth-child(4){animation-delay:.3s}#asylum-sticky-player .asp-bars i:nth-child(5){animation-delay:.4s}#asylum-sticky-player .asp-bars i:nth-child(6){animation-delay:.5s}#asylum-sticky-player .asp-bars i:nth-child(7){animation-delay:.6s}
#asylum-sticky-player .asp-play{width:38px;height:38px;flex:0 0 38px;border:1px solid #00e5ff;border-radius:50%;background:rgba(0,229,255,.13);color:#00e5ff;font-size:18px;cursor:pointer}
#asylum-sticky-player .asp-volume{display:flex;align-items:center}#asylum-sticky-player .asp-volume input{width:90px;accent-color:#00e5ff;cursor:pointer}
#asylum-sticky-player .asp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@keyframes aspCyanWave{from{height:7px}to{height:30px}}@keyframes aspCyanDot{50%{opacity:.4;box-shadow:0 0 19px #00e5ff}}
body{padding-bottom:95px!important}
@media(max-width:640px){#asylum-sticky-player{bottom:8px;gap:10px;min-height:55px;padding:8px 14px}#asylum-sticky-player .asp-volume input{width:65px}body{padding-bottom:80px!important}}
@media(prefers-reduced-motion:reduce){#asylum-sticky-player *{animation:none!important}}

/* electric-cyan-glow.css */
/* Asylum Radio Live — cyan neon glow on cards ONLY. */
:root { --asylum-neon-cyan: #00e5ff; }
/* Apply only to card elements, never to page, grids, player or layout wrappers. */
:is(.music-root-card,.music-card,.regional-sport-card,.carnival-card,.portal-card,.community-carnival-card,.listen-card,.hero-intro-card,.artiste-watch-card,.on-air-card,.visitor-total-card,.feedback-dj-card,.donation-card,.chat-agreement-card,.card,.grid-card,.feature-card,.dj-card,.team-card,.ad-card,.sponsor-card,.banner-card,.video-card,.content-card,.schedule-card,.artist-card,.stat-card,.info-card,.promo-card,.glass-card,[class$="-card"]):not(.radio-player):not(.main-player):not(.player-shell):not(.sticky-player):not(.visitor-total-card) {
  box-shadow: 0 0 0 1px rgba(0,229,255,.8), 0 0 11px rgba(0,229,255,.43), 0 0 21px rgba(0,229,255,.18) !important;
}

/* header-position-swap.css */
/* Exact position swap: original social slot -> menu; original menu row -> social. */
@media (min-width: 901px) {
  .site-header:has(> .header-top > .header-social):has(> .main-nav) {
    display:grid !important;
    grid-template-columns:minmax(280px, 42%) minmax(0,1fr);
    grid-template-rows:auto auto;
    align-items:center;
    column-gap:14px;
  }
  .site-header > .header-top {display:contents !important;}
  .site-header > .header-top > .brand {grid-column:1;grid-row:1;justify-self:center;}
  .site-header > .main-nav {grid-column:2;grid-row:1;display:flex !important;flex-wrap:wrap;align-content:center;justify-content:flex-end;gap:5px;min-width:0;width:100%;margin:0;padding:8px;position:relative;top:auto;}
  .site-header > .main-nav a {font-size:clamp(9px,.72vw,12px) !important;padding:5px 7px !important;letter-spacing:.025em;border:1px solid rgba(0,240,255,.4);border-radius:6px;box-shadow:inset 0 0 7px rgba(0,240,255,.08);}
  .site-header > .main-nav .nav-row-break {display:none !important;}
  .site-header > .header-top > .header-social {grid-column:1/-1;grid-row:2;justify-self:center;width:min(100%,650px) !important;display:flex !important;flex-wrap:wrap;justify-content:center;gap:8px;}
  .site-header > .header-top > .header-social .header-social-button {min-width:115px;}
  .site-header > .nav-toggle {display:none !important;}
}
/* Keep the existing mobile navigation behavior. */

/* Menu cleanup: remove the decorative EXPLORE heading, keep all links. */
.site-header .main-nav::before { content:none !important; display:none !important; }
@media (min-width:901px) {
  .site-header > .main-nav {
    align-items:center !important;
    align-content:center !important;
    justify-content:flex-end !important;
    gap:6px !important;
    padding:6px 8px !important;
  }
  .site-header > .main-nav a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    margin:0 !important;
    white-space:nowrap;
  }
}

/* neo-borderless-menu.css */
/* Compact borderless neo-digital navigation; no layout changes. */
.site-header .main-nav a,
.site-header .main-nav a.join-link,
.site-header .main-nav a.nav-live {
  border: 0 !important;
  outline-offset: 3px;
  border-radius: 3px !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 4px 6px !important;
  min-height: 25px !important;
  font-size: 10px !important;
  font-weight: 650;
  line-height: 1.2;
  letter-spacing: .075em !important;
  text-transform: uppercase;
  color: #c9faff !important;
  text-shadow: 0 0 5px rgba(0,235,255,.25);
  transition: color .15s ease,text-shadow .15s ease;
}
.site-header .main-nav {gap: 3px !important;}
.site-header .main-nav a:hover,
.site-header .main-nav a.active,
.site-header .main-nav a[aria-current="page"] {
  color: #ffffff !important;
  text-shadow: 0 0 7px rgba(0,240,255,.75) !important;
}
.site-header .main-nav a.nav-live {color:#ff8f96 !important;}
.site-header .main-nav a.nav-live::before {width:5px;height:5px;}
@media(max-width:900px){
  .site-header .main-nav a {font-size:11px !important;min-height:32px !important;padding:7px 9px !important;}
}
