/* Minimalist fixed radio player. */
.mzs-radio-player{
  position:fixed;left:50%;bottom:10px;z-index:55;width:min(calc(100% - 28px),860px);height:var(--mzs-radio-player-height);
  transform:translateX(-50%);color:var(--mzs-text);pointer-events:none;
}
.mzs-radio-player-inner{
  height:100%;display:grid;grid-template-columns:42px minmax(150px,1fr) auto minmax(120px,190px);align-items:center;gap:14px;padding:7px 12px;
  border:1px solid color-mix(in srgb,var(--mzs-aqua) 24%,transparent);border-radius:22px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--mzs-nav) 91%,transparent),color-mix(in srgb,var(--mzs-bg-bottom) 88%,transparent));
  box-shadow:0 18px 48px rgba(0,10,12,.34),inset 0 1px rgba(255,255,255,.025);backdrop-filter:blur(22px) saturate(120%);pointer-events:auto;
}
.mzs-radio-player,.mzs-radio-player-inner{transition:width .32s var(--mzs-ease),left .32s var(--mzs-ease),right .32s var(--mzs-ease),transform .32s var(--mzs-ease),bottom .32s var(--mzs-ease),padding .32s var(--mzs-ease),border-radius .32s var(--mzs-ease),box-shadow .32s var(--mzs-ease)}
.mzs-radio-expand{position:absolute;right:7px;top:50%;translate:0 -50%;z-index:4;width:34px;height:34px;display:grid;place-items:center;padding:0;border:1px solid color-mix(in srgb,var(--mzs-aqua) 22%,transparent);border-radius:11px;background:color-mix(in srgb,var(--mzs-nav) 94%,transparent);color:var(--mzs-aqua);box-shadow:none;font:inherit;line-height:1;cursor:pointer;transition:border-color .2s,background .2s,color .2s}
.mzs-radio-expand:hover,.mzs-radio-expand:focus-visible{border-color:color-mix(in srgb,var(--mzs-aqua) 52%,transparent);background:color-mix(in srgb,var(--mzs-hover-surface) 58%,transparent)}
.mzs-radio-expand i{position:relative;display:block;width:10px;height:10px;font-size:0;line-height:0}.mzs-radio-expand i::before{content:"";position:absolute;inset:2px;width:6px;height:6px;border-top:1.5px solid currentColor;border-left:1.5px solid currentColor;transform:rotate(45deg);transform-origin:center}.mzs-radio-player.is-expanded .mzs-radio-expand i::before{transform:rotate(225deg)}
.mzs-radio-player.is-collapsed{left:auto;right:22px;width:96px;height:56px;transform:none}.mzs-radio-player.is-collapsed .mzs-radio-player-inner{width:96px;height:56px;grid-template-columns:40px 28px;justify-content:center;gap:8px;padding:8px 10px;border-radius:22px;overflow:visible}.mzs-radio-player.is-collapsed .mzs-radio-current,.mzs-radio-player.is-collapsed .mzs-radio-stations,.mzs-radio-player.is-collapsed .mzs-radio-volume{display:none}.mzs-radio-player.is-collapsed .mzs-radio-play{width:40px;height:40px;justify-self:center;align-self:end;transform:translateY(2px)}.mzs-radio-player.is-collapsed .mzs-radio-expand{position:relative;left:auto;right:auto;top:auto;bottom:auto;translate:none;width:28px;height:28px;justify-self:center;align-self:start;background:color-mix(in srgb,var(--mzs-nav) 96%,transparent);box-shadow:0 8px 18px rgba(0,8,10,.2)}
.mzs-radio-player.is-expanded{left:50%;right:auto;width:min(calc(100% - 28px),860px);transform:translateX(-50%)}.mzs-radio-player.is-expanded .mzs-radio-player-inner{padding-right:50px}.mzs-radio-player.is-expanded .mzs-radio-stations{gap:7px;padding:0;border:0;background:transparent}.mzs-radio-player.is-expanded .mzs-radio-station{min-height:34px;padding:0 14px;border:1px solid color-mix(in srgb,var(--mzs-line) 30%,transparent);background:color-mix(in srgb,var(--mzs-bg-bottom) 34%,transparent);color:var(--mzs-text-soft);box-shadow:none}.mzs-radio-player.is-expanded .mzs-radio-station:hover,.mzs-radio-player.is-expanded .mzs-radio-station:focus-visible{border-color:color-mix(in srgb,var(--mzs-aqua) 44%,transparent);background:color-mix(in srgb,var(--mzs-hover-surface) 48%,transparent);color:var(--mzs-text)}.mzs-radio-player.is-expanded .mzs-radio-station.is-active{border-color:color-mix(in srgb,var(--mzs-aqua) 54%,transparent);background:linear-gradient(145deg,color-mix(in srgb,var(--mzs-aqua) 12%,var(--mzs-bg-bottom)),color-mix(in srgb,var(--mzs-gold) 5%,var(--mzs-bg-bottom)));color:var(--mzs-aqua);box-shadow:0 7px 20px rgba(0,12,14,.16),inset 0 0 0 1px color-mix(in srgb,var(--mzs-aqua) 7%,transparent)}
.mzs-radio-player.is-loading .mzs-radio-player-inner{border-color:color-mix(in srgb,var(--mzs-gold) 38%,transparent)}
.mzs-radio-player.is-error .mzs-radio-player-inner{border-color:color-mix(in srgb,var(--mzs-danger) 46%,transparent)}
.mzs-radio-play{
  position:relative;width:38px;height:38px;display:grid;place-items:center;padding:0;border:1px solid color-mix(in srgb,var(--mzs-aqua) 38%,transparent);border-radius:50%;
  background:radial-gradient(circle at 42% 35%,color-mix(in srgb,var(--mzs-aqua) 14%,transparent),color-mix(in srgb,var(--mzs-surface) 64%,transparent));color:var(--mzs-aqua);cursor:pointer;
  box-shadow:0 8px 22px rgba(0,12,14,.18);transition:transform .24s var(--mzs-ease),border-color .24s,background .24s,box-shadow .24s;
}
.mzs-radio-play:hover,.mzs-radio-play:focus-visible{transform:translateY(-1px);border-color:var(--mzs-aqua);background:color-mix(in srgb,var(--mzs-hover-surface) 78%,var(--mzs-surface));box-shadow:0 10px 28px rgba(0,12,14,.24),0 0 18px color-mix(in srgb,var(--mzs-aqua) 10%,transparent)}
.mzs-radio-play:focus-visible,.mzs-radio-station:focus-visible,.mzs-radio-volume input:focus-visible{outline:2px solid color-mix(in srgb,var(--mzs-aqua) 68%,transparent);outline-offset:3px}
.mzs-radio-play span{position:relative;display:block;width:13px;height:14px}
.mzs-radio-play span::before{content:"";position:absolute;left:3px;top:1px;border-left:10px solid currentColor;border-top:6px solid transparent;border-bottom:6px solid transparent;transition:opacity .2s}
.mzs-radio-player.is-playing .mzs-radio-play span::before{left:2px;top:1px;width:10px;height:12px;border:0;background:linear-gradient(90deg,currentColor 0 3px,transparent 3px 7px,currentColor 7px 10px)}
.mzs-radio-player.is-loading .mzs-radio-play span::before{left:1px;top:1px;width:12px;height:12px;border:1px solid color-mix(in srgb,currentColor 35%,transparent);border-top-color:currentColor;border-radius:50%;animation:mzsRadioSpin .8s linear infinite}
.mzs-radio-current{min-width:0;display:grid;gap:1px;line-height:1.05}
.mzs-radio-current small{color:var(--mzs-gold);font-size:var(--mzs-micro-compact);font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.mzs-radio-current strong{min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--mzs-text);font-size:13px;font-weight:760;white-space:nowrap}
.mzs-radio-stations{display:flex;align-items:center;gap:4px;padding:3px;border:1px solid color-mix(in srgb,var(--mzs-line) 30%,transparent);border-radius:var(--mzs-radius-pill,999px);background:color-mix(in srgb,var(--mzs-bg-bottom) 30%,transparent)}
.mzs-radio-station{min-height:30px;padding:0 11px;border:0;border-radius:var(--mzs-radius-pill,999px);background:transparent;color:var(--mzs-text-soft);font:inherit;font-size:var(--mzs-micro);font-weight:760;cursor:pointer;transition:background .2s,color .2s,transform .2s}
.mzs-radio-station:hover{color:var(--mzs-text)}
.mzs-radio-station.is-active{background:color-mix(in srgb,var(--mzs-aqua) 12%,transparent);color:var(--mzs-aqua);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--mzs-aqua) 20%,transparent)}
.mzs-radio-volume{min-width:0;display:grid;grid-template-columns:auto minmax(72px,1fr);align-items:center;gap:10px}
.mzs-radio-volume>span{color:var(--mzs-text-soft);font-size:var(--mzs-micro-compact);font-weight:720}
.mzs-radio-volume input{--mzs-volume-progress:72%;width:100%;height:20px;margin:0;padding:0;border:0;background:transparent;cursor:pointer;appearance:none;-webkit-appearance:none}
.mzs-radio-volume input::-webkit-slider-runnable-track{height:4px;border:0;border-radius:var(--mzs-radius-pill,999px);background:linear-gradient(90deg,var(--mzs-aqua) 0 var(--mzs-volume-progress),color-mix(in srgb,var(--mzs-line) 28%,transparent) var(--mzs-volume-progress) 100%);box-shadow:inset 0 1px 2px rgba(0,12,14,.28)}
.mzs-radio-volume input::-webkit-slider-thumb{width:15px;height:15px;margin-top:-5.5px;border:2px solid color-mix(in srgb,var(--mzs-bg-bottom) 72%,transparent);border-radius:50%;background:var(--mzs-aqua);box-shadow:0 0 0 4px color-mix(in srgb,var(--mzs-aqua) 9%,transparent),0 4px 13px rgba(0,12,14,.32);appearance:none;-webkit-appearance:none;transition:transform .18s,box-shadow .18s}
.mzs-radio-volume input::-moz-range-track{height:4px;border:0;border-radius:var(--mzs-radius-pill,999px);background:color-mix(in srgb,var(--mzs-line) 28%,transparent);box-shadow:inset 0 1px 2px rgba(0,12,14,.28)}
.mzs-radio-volume input::-moz-range-progress{height:4px;border-radius:var(--mzs-radius-pill,999px);background:var(--mzs-aqua)}
.mzs-radio-volume input::-moz-range-thumb{width:13px;height:13px;border:2px solid color-mix(in srgb,var(--mzs-bg-bottom) 72%,transparent);border-radius:50%;background:var(--mzs-aqua);box-shadow:0 0 0 4px color-mix(in srgb,var(--mzs-aqua) 9%,transparent),0 4px 13px rgba(0,12,14,.32)}
.mzs-radio-volume input:hover::-webkit-slider-thumb,.mzs-radio-volume input:focus-visible::-webkit-slider-thumb{transform:scale(1.08);box-shadow:0 0 0 6px color-mix(in srgb,var(--mzs-aqua) 12%,transparent),0 5px 15px rgba(0,12,14,.38)}
.mzs-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@keyframes mzsRadioSpin{to{transform:rotate(360deg)}}

@media(max-width:960px){
  .mzs-experience{--mzs-radio-player-height:64px;padding-bottom:calc(174px + env(safe-area-inset-bottom))}
  .mzs-radio-player{bottom:calc(84px + env(safe-area-inset-bottom));z-index:53}
  .mzs-radio-player.is-collapsed{left:auto;right:16px;width:94px;height:56px;transform:none}
  .mzs-radio-player.is-collapsed .mzs-radio-player-inner{width:94px;height:56px;grid-template-columns:40px 26px;gap:7px;padding:8px 9px;border-radius:22px}
  .mzs-radio-player.is-collapsed .mzs-radio-expand{width:26px;height:26px}
  .mzs-radio-player.is-expanded{left:50%;right:auto;bottom:calc(84px + env(safe-area-inset-bottom));width:min(calc(100% - 20px),420px);height:auto;transform:translateX(-50%)}
  .mzs-radio-player.is-expanded .mzs-radio-player-inner{height:auto;min-height:62px;grid-template-columns:42px minmax(0,1fr);gap:9px;padding:9px 50px 10px 12px;border-radius:22px}
  .mzs-radio-play{width:40px;height:40px}
  .mzs-radio-player.is-expanded .mzs-radio-current{grid-column:2}.mzs-radio-player.is-expanded .mzs-radio-stations{grid-column:1/-1;justify-self:center;margin-top:1px}
  .mzs-radio-current small{display:block;font-size:11px;letter-spacing:.09em}
  .mzs-radio-current strong{font-size:15px}
  .mzs-radio-stations{gap:3px;padding:2px}
  .mzs-radio-station{min-height:36px;padding:0 9px;font-size:14px}
  .mzs-radio-volume{display:none}
}
@media(max-width:370px){
  .mzs-radio-player.is-expanded .mzs-radio-player-inner{grid-template-columns:40px minmax(0,1fr);gap:7px}
  .mzs-radio-current small{display:none}
  .mzs-radio-current strong{font-size:14px}
  .mzs-radio-station{padding-inline:6px;font-size:14px}
}
@media(max-width:900px) and (max-height:520px){
  .mzs-experience{padding-bottom:68px}
  .mzs-radio-player{bottom:8px;z-index:55}
  .mzs-radio-player.is-expanded{width:min(calc(100% - 20px),620px)}
}
@media(prefers-reduced-motion:reduce){
  .mzs-radio-player,.mzs-radio-player-inner,.mzs-radio-expand,.mzs-radio-play,.mzs-radio-station{transition:none}
  .mzs-radio-player.is-loading .mzs-radio-play span::before{animation:none}
}
