/* Radio interface: keep the original marks and give controls their own row. */
.radio-home { border:1px solid #393044; border-radius:20px; box-shadow:0 12px 32px #0003; background:linear-gradient(115deg,#191226,#111421); gap:20px; padding:22px; }
.radio-home-art { width:112px; height:112px; object-fit:contain; border-radius:12px; }
.radio-home-copy span { font-size:11px; letter-spacing:.12em; text-transform:uppercase; }
.radio-home-copy h2 { font-size:24px; max-width:340px; }
.radio-home-shuffle { border-color:#61566d; background:transparent; color:#fff; }
.radio-home-shuffle[aria-pressed="true"] { background:#332242; color:#FFD32A; border-color:#FFD32A; }
.music-player { padding:0; background:#111421; border:1px solid #393044; box-shadow:0 16px 36px #0003; }
.music-preview,.music-preview.is-loaded { min-height:280px; aspect-ratio:auto; border:0; border-radius:19px; background:#111421; }
.music-now-playing { background:linear-gradient(125deg,#1c142c,#111421 65%); }
.music-preview-art,.music-now-art,.music-now-playing.is-vinheta .music-now-art { inset:28px auto auto 24px; width:120px; height:120px; max-height:none; object-fit:contain; object-position:center; filter:none; opacity:1; border-radius:12px; transform:none; }
.music-preview-overlay,.music-now-overlay,.music-now-playing.is-vinheta .music-now-overlay { background:none; pointer-events:none; }
.music-preview-copy,.music-now-copy,.music-now-playing.is-vinheta .music-now-copy { left:168px; right:24px; top:28px; bottom:auto; min-height:120px; gap:7px; }
.music-preview-label,.music-now-kicker { color:#FFD32A; font-size:10px; letter-spacing:.13em; }
.music-preview-copy strong,.music-now-title,.music-now-playing.is-vinheta .music-now-title { font-size:clamp(20px,3vw,27px); line-height:1.2; letter-spacing:-.025em; margin:0; overflow-wrap:anywhere; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.music-now-artist,.music-preview-copy span:last-child { color:#A9AFBF; font-size:13px; line-height:1.4; }
.music-now-status { margin-top:0; font-size:11px; color:#A9AFBF; }
.music-now-controls { top:auto; bottom:52px; left:168px; right:auto; gap:12px; transform:none; }
.music-now-nav,.music-now-shuffle { width:44px; height:44px; border:1px solid #484052; background:#ffffff06; }
.music-now-toggle,.music-play { width:52px; height:52px; border:0; color:#090A11; background:#FFD32A; box-shadow:none; }
.music-now-toggle .music-control-icon { width:22px; height:22px; }
.music-now-nav .music-control-icon,.music-now-shuffle .music-control-icon { width:18px; height:18px; }
.music-play { top:auto; bottom:52px; left:168px; right:auto; transform:none; }
.music-open,.music-now-youtube { left:24px; bottom:20px; font-size:11px; color:#A9AFBF; }
.music-now-controls button:focus-visible,.music-play:focus-visible,.mini-player button:focus-visible { outline:2px solid #FFD32A; outline-offset:4px; }
.mini-player { bottom:max(12px,env(safe-area-inset-bottom)); padding:8px; gap:4px; border-color:#494052; background:#111421f5; }
.mini-player-control { width:36px; height:36px; flex-basis:36px; border-color:transparent; background:transparent; }
#mini-player-toggle { background:#FFD32A; color:#090A11; font-size:15px; }
.mini-player-expand small { font-size:11px; }
@media(max-width:700px) {
  .radio-home { grid-template-columns:88px minmax(0,1fr); gap:14px; padding:18px; }
  .radio-home-art { grid-row:1; width:88px; height:88px; }
  .radio-home-copy h2 { font-size:20px; }
  .radio-home-play,.radio-home-shuffle { grid-column:auto; width:100%; padding:10px; font-size:13px; min-height:44px; }
  .radio-home-play { grid-column:1 / -1; }
  .radio-home-shuffle { grid-column:1 / -1; }
}
@media(max-width:480px) {
  .music-preview,.music-preview.is-loaded { min-height:270px; }
  .music-preview-art,.music-now-art,.music-now-playing.is-vinheta .music-now-art { left:20px; top:24px; width:80px; height:96px; }
  .music-preview-copy,.music-now-copy,.music-now-playing.is-vinheta .music-now-copy { left:118px; right:20px; top:24px; min-height:96px; }
  .music-now-controls { left:20px; right:20px; bottom:58px; justify-content:center; gap:18px; }
  .music-play { left:calc(50% - 26px); bottom:58px; }
  .music-now-title,.music-now-playing.is-vinheta .music-now-title,.music-preview-copy strong { font-size:21px; }
  .music-now-artist { font-size:12px; }
  .music-open,.music-now-youtube { left:20px; bottom:20px; }
  .mini-player { width:calc(100% - 24px); box-sizing:border-box; }
  #mini-vinheta-logo { width:40px; flex-basis:40px; }
}
