.radio-header-visual[hidden]{display:none!important}.radio-header-visual{min-width:0;flex:1 1 420px;max-width:60%;padding:14px 20px;box-sizing:border-box;align-self:center;overflow:hidden;border-radius:16px;background:linear-gradient(180deg,#06152b55,#06152b99)}.rhv-equalizer{display:flex;align-items:flex-end;justify-content:center;gap:5px;height:120px;overflow:hidden;filter:drop-shadow(0 0 7px #20dcf655)}.rhv-equalizer i{display:block;flex:1;max-width:16px;min-width:2px;height:var(--bar-height);background:linear-gradient(0deg,#14a8e8 0%,#27f5b7 48%,#d9fd69 76%,#ffba60 100%);border-radius:3px 3px 0 0;transform-origin:bottom;animation:rhv-bars var(--bar-speed) ease-in-out var(--bar-delay) infinite alternate;mask-image:repeating-linear-gradient(to top,#000 0 5px,transparent 5px 7px)}.rhv-title-viewport{overflow:hidden;margin-top:12px;white-space:nowrap;color:#f1f7ff;font:600 14px/1.5 system-ui;text-shadow:0 1px 5px #000}.rhv-title-track{display:flex;width:max-content;animation:rhv-title 22s linear infinite}.rhv-title-track span{display:block;flex:none;padding-right:70px}.rhv-live-line{height:3px;overflow:hidden;margin-top:9px;background:#c6e8ff22;border-radius:3px}.rhv-live-line i{display:block;width:25%;height:100%;background:linear-gradient(90deg,transparent,#28dbff,#52ffb7,transparent);animation:rhv-line 2.8s linear infinite}@keyframes rhv-bars{0%{transform:scaleY(.16)}45%{transform:scaleY(.78)}100%{transform:scaleY(1)}}@keyframes rhv-title{to{transform:translateX(-50%)}}@keyframes rhv-line{from{transform:translateX(-100%)}to{transform:translateX(400%)}}
@media(min-width:1000px){html body .radio-top.radio-header-has-visual .radio-brand-logo{flex:0 1 40%!important;min-width:0!important}.radio-header-visual{flex:1 1 50%;max-width:60%}}
@media(max-width:999px){.radio-header-visual{width:100%;flex-basis:100%;max-width:100%;padding:12px 14px}.rhv-equalizer{height:80px;gap:3px}.rhv-title-viewport{font-size:12px}}
@media(prefers-reduced-motion:reduce){.rhv-equalizer i,.rhv-title-track,.rhv-live-line i{animation:none!important}.rhv-equalizer i{transform:scaleY(.65)}.rhv-title-track span[aria-hidden]{display:none}.rhv-title-viewport{white-space:normal}.rhv-title-track{width:auto}}

.radio-header-visual{--rhv-color:var(--accent,#30bfff);background:none!important;box-shadow:none!important;border:0!important;border-radius:0!important}
.rhv-equalizer{height:170px;filter:none!important}.rhv-equalizer i{background:linear-gradient(to top,color-mix(in srgb,var(--rhv-color) 55%,#000),var(--rhv-color) 65%,color-mix(in srgb,var(--rhv-color) 70%,#fff))!important}
.rhv-time{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px;color:#edf4ff;font:600 12px/1.4 system-ui;font-variant-numeric:tabular-nums}
.rhv-progress{appearance:none;display:block;width:100%;height:4px;margin-top:6px;border:0;border-radius:4px;overflow:hidden;background:#ffffff25;accent-color:var(--rhv-color)}.rhv-progress::-webkit-progress-bar{background:#ffffff25}.rhv-progress::-webkit-progress-value{background:var(--rhv-color)}.rhv-progress::-moz-progress-bar{background:var(--rhv-color)}.rhv-progress[hidden]{display:none!important}
@media(max-width:999px){.rhv-equalizer{height:130px}.rhv-time{font-size:11px}}

/* Mirrored luminous waveform, centered on the horizontal axis. */
.rhv-equalizer{position:relative;align-items:center!important;justify-content:space-between!important;gap:2px!important;overflow:hidden;isolation:isolate}
.rhv-equalizer::before{content:'';position:absolute;left:0;right:0;top:50%;height:1px;background:var(--rhv-color);opacity:.42;box-shadow:0 0 8px var(--rhv-color),0 0 22px var(--rhv-color);pointer-events:none}
.rhv-equalizer i{position:relative;flex:1 1 0!important;min-width:1px!important;max-width:5px!important;border-radius:50%!important;transform-origin:center!important;mask-image:none!important;background:linear-gradient(to bottom,transparent 0%,color-mix(in srgb,var(--rhv-color) 72%,transparent) 15%,var(--rhv-color) 42%,#ffffff 50%,var(--rhv-color) 58%,color-mix(in srgb,var(--rhv-color) 72%,transparent) 85%,transparent 100%)!important;box-shadow:0 0 5px var(--rhv-color),0 0 13px color-mix(in srgb,var(--rhv-color) 55%,transparent);animation:rhv-wave var(--bar-speed) ease-in-out var(--bar-delay) infinite alternate!important}
@keyframes rhv-wave{0%{transform:scaleY(.14);opacity:.6}35%{transform:scaleY(.58);opacity:.82}70%{transform:scaleY(.3);opacity:.75}100%{transform:scaleY(1);opacity:1}}
@media(max-width:600px){.rhv-equalizer{gap:1px!important}.rhv-equalizer i{max-width:3px!important}}
@media(prefers-reduced-motion:reduce){.rhv-equalizer i{animation:none!important;transform:scaleY(.6)!important}}

/* The waveform itself fills with the verified track elapsed time. */
.rhv-equalizer::before{background:linear-gradient(to right,var(--rhv-color) 0 var(--rhv-played,0%),rgba(0,0,0,.3) var(--rhv-played,0%) 100%)!important;box-shadow:none!important;opacity:1!important}
.rhv-equalizer i::after{content:'';position:absolute;inset:0 0 0 var(--rhv-bar-fill,0%);background:rgba(0,0,0,.3);border-radius:inherit;pointer-events:none}
.rhv-equalizer i.rhv-bar-pending{background:color-mix(in srgb,var(--rhv-color) 70%,#000)!important;box-shadow:none!important;opacity:.3!important}
.radio-header-visual .rhv-progress{display:none!important}
