/* The shared radio is available to guests and all trainer accounts. */
#music-dialog.is-radio{box-sizing:border-box;width:min(570px,calc(100vw - 24px));max-width:570px;padding:23px 24px 18px;overflow:auto;max-height:calc(100dvh - 32px);border:2px solid #a08bc3;border-radius:30px;background:linear-gradient(145deg,#39304c,#201b30 65%);box-shadow:inset 0 2px #e9d9ff45,inset 0 -7px #100d1e,0 22px 80px #0009;color:#f4f1ff}
.radio-topline{display:flex;align-items:center;gap:8px;margin:0 32px 15px 0;font-size:10px;font-weight:850;letter-spacing:2px}.radio-ball{display:block;flex:none;width:22px;height:22px;overflow:visible}
.radio-receiver{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;gap:12px;align-items:center;padding:16px 10px;border:1px solid #ffffff12;border-radius:20px;background:#120f2080;box-shadow:inset 0 2px 7px #0007}
.radio-speaker{height:100px;border:2px solid #0e0b16;border-radius:18px;background:repeating-linear-gradient(0deg,#110e1b 0 3px,#514360 3px 5px);box-shadow:inset 0 0 0 4px #292135,0 1px #b09bc533}
.radio-screen{position:relative;min-width:0;min-height:125px;padding:12px 14px;border:4px solid #171522;border-radius:9px;background:#bcdec4;color:#203f3e;font-family:ui-monospace,SFMono-Regular,monospace;box-shadow:inset 0 2px 8px #14392c55,0 1px #b5a5c455;overflow:hidden}.radio-screen:after{content:"";pointer-events:none;position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 3px,#2347380a 3px 4px)}
.radio-screen-top{display:flex;justify-content:space-between;gap:6px;font-size:9px;letter-spacing:1px;font-weight:800}.radio-track-title{font-size:17px;font-weight:800;line-height:1.3;margin:12px 0 5px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.radio-game-title{font-size:9px;line-height:1.4;margin:0;min-height:25px;overflow-wrap:anywhere}.radio-screen-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;font-size:10px;margin-top:6px}.radio-equalizer{display:flex;align-items:flex-end;gap:3px;height:20px}.radio-equalizer i{display:block;width:4px;height:4px;background:#315c4c}.is-playing .radio-equalizer i{animation:radio-bars .8s steps(4,end) infinite alternate}.radio-equalizer i:nth-child(2n){animation-delay:-.3s}.radio-equalizer i:nth-child(3n){animation-delay:-.6s}
.radio-tuner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;margin:15px 0 7px}.radio-tuner label{font-size:9px;letter-spacing:1.5px;font-weight:850;color:#c5b5d9}.radio-tuner span{font:9px ui-monospace,monospace;color:#9c8ba9}.radio-category{box-sizing:border-box;width:100%;min-width:0;padding:10px 12px;background:#171321;border:1px solid #8a719d80;border-radius:10px;color:#f4eaff;font:inherit;font-size:12px;font-weight:700}
.radio-track-list{display:grid;gap:3px;max-height:170px;overflow:auto;overscroll-behavior:contain;margin:9px 0 15px;padding:5px;border:1px solid #ffffff0c;border-radius:12px;background:#15111f80}.radio-track-list .music-track-option{display:flex;align-items:center;gap:10px;width:100%;min-height:35px;padding:8px 10px;border:1px solid transparent;border-radius:7px;text-align:left;background:transparent;color:#cfc1de;font:inherit;font-size:12px;line-height:1.35;cursor:pointer}.radio-track-list .music-track-option:hover{background:#b6a0d312}.radio-track-list .music-track-option.is-selected{border-color:#c5a5e14d;background:#b79cd324;color:#fff1fb}.radio-track-number{flex:none;font:9px ui-monospace,monospace;color:#9e8aaf}.radio-track-name{min-width:0;overflow-wrap:anywhere}
.radio-transport{display:flex;align-items:center;justify-content:center;gap:13px}.radio-transport button,.radio-mode{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #88719e;border-radius:11px;background:linear-gradient(#4e405e,#30273e);color:#e9def6;font:inherit;font-size:11px;font-weight:750;cursor:pointer;box-shadow:inset 0 1px #e9d7ff22,0 3px #110d1d;min-height:42px;padding:8px 12px}.radio-transport button:disabled{opacity:.4;cursor:default}.radio-transport .radio-play{min-width:110px;min-height:49px;border-color:#dfb2d7;background:linear-gradient(#d6b3d9,#a482ba);color:#24192f}.radio-transport svg,.radio-mode svg{width:17px;height:17px;fill:currentColor;flex:none}.radio-mode svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.radio-mode-row{display:flex;justify-content:center;gap:8px;margin:14px 0 9px}.radio-mode{min-height:35px;border-color:#7d668b66;box-shadow:inset 0 1px #ffffff0a;background:#1c1728;color:#a99ab9;font-size:10px}.radio-mode[aria-pressed="true"]{color:#c6f2d6;border-color:#9dc6b180;background:#36514655}.radio-status{display:block;min-height:27px;font-size:10px;line-height:1.4;color:#c1b0cf;text-align:center;margin:8px 0}.is-radio .help-contact-note{margin:4px 0 0;padding:13px 10px 0;border-top:1px solid #b29fc427;font-size:10px;line-height:1.6;text-align:center;color:#a997ba}.is-radio .help-contact-note a{color:#e6bfdf}.is-radio button:focus-visible,.is-radio select:focus-visible{outline:2px solid #d9b8ef;outline-offset:3px}
@keyframes radio-bars{0%{height:4px}50%{height:13px}100%{height:20px}}
@media(max-width:560px){#music-dialog.dialog.is-radio[open]{width:calc(100vw - 24px)!important;max-width:570px!important;padding:20px 15px 16px!important;max-height:calc(100dvh - 32px)!important;border-radius:25px!important}.radio-receiver{grid-template-columns:22px minmax(0,1fr) 22px;gap:7px;padding:11px 7px}.radio-speaker{height:80px;border-radius:10px}.radio-screen{padding:10px;min-height:120px}.radio-track-title{font-size:15px}.radio-track-list{max-height:150px}.radio-transport{gap:8px}.radio-transport button{padding:8px 10px}.radio-topline{letter-spacing:1.2px;font-size:9px}.radio-topline small{font-size:7px}.radio-transport .radio-play{min-width:98px}}
@media(prefers-reduced-motion:reduce){.is-playing .radio-equalizer i{animation:none;height:10px}}

#music-dialog.is-radio #site-music-status{position:static!important;width:auto!important;height:auto!important;clip:auto!important;clip-path:none!important;white-space:normal!important;overflow:visible!important}
#music-dialog.is-radio #site-music-status:empty{display:none}
