/* 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}}
