/* Sprint 4ac: one Song-modal player at all widths; audio remains the playback source. */
.song-sheet audio.player{display:none!important}
.song-sheet .rp{margin:18px 0 6px;padding:18px 20px 14px;border-radius:18px;background:linear-gradient(180deg,#101a2e,#0b1323);border:1px solid rgba(160,185,220,.22);color:#fff}
.song-sheet .rp-main{display:flex;align-items:center;gap:18px;min-width:0}
.song-sheet .rp-play{flex:none;width:56px;height:56px;border-radius:999px;border:0;background:linear-gradient(90deg,#E63E94,#8A4FF0);display:grid;place-items:center;box-shadow:0 8px 24px rgba(230,62,148,.3);cursor:pointer;color:#fff}
.song-sheet .rp-play svg{width:22px;height:22px;fill:currentColor}
.song-sheet .rp-track{flex:1;min-width:0}
.song-sheet .rp-rail{position:relative;height:6px;border-radius:999px;background:rgba(160,185,220,.2);margin:10px 0 12px;touch-action:none;cursor:pointer}
.song-sheet .rp-rail::before{content:'';position:absolute;inset:-19px 0}
.song-sheet .rp-buf,.song-sheet .rp-prog{position:absolute;left:0;top:0;bottom:0;border-radius:999px;pointer-events:none}
.song-sheet .rp-buf{background:rgba(160,185,220,.38)}
.song-sheet .rp-prog{background:linear-gradient(90deg,#E63E94,#8A4FF0)}
.song-sheet .rp-thumb{position:absolute;top:50%;width:16px;height:16px;transform:translate(-50%,-50%);border-radius:999px;background:#fff;box-shadow:0 0 0 3px rgba(138,79,240,.45),0 2px 8px rgba(0,0,0,.5);pointer-events:none}
.song-sheet .rp-times{display:flex;justify-content:space-between;font-size:13px;color:#C9D1EA;font-variant-numeric:tabular-nums;letter-spacing:.02em}
.song-sheet .rp-times b{font-weight:600;color:#fff}
.song-sheet .rp-tools{display:flex;align-items:center;gap:10px;margin-left:6px;flex:none}
.song-sheet .rp-vol{display:flex;align-items:center;gap:4px;min-height:44px;padding:0 9px 0 2px;border-radius:999px;border:1px solid rgba(160,185,220,.3);background:#101d32}
.song-sheet .rp-mute{min-width:44px;min-height:44px;border:0;background:transparent;color:#fff;display:grid;place-items:center;cursor:pointer}
.song-sheet .rp-mute svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.song-sheet .rp-volume{--rp-volume-fill:100%;width:72px;height:44px;margin:0;appearance:none;-webkit-appearance:none;background:transparent;cursor:pointer;outline-offset:3px}
.song-sheet .rp-volume::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:linear-gradient(to right,#fff 0%,#fff var(--rp-volume-fill),rgba(160,185,220,.28) var(--rp-volume-fill),rgba(160,185,220,.28) 100%)}
.song-sheet .rp-volume::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:10px;height:10px;margin-top:-3px;border:0;border-radius:50%;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.15)}
.song-sheet .rp-volume::-moz-range-track{height:4px;border-radius:999px;background:rgba(160,185,220,.28)}
.song-sheet .rp-volume::-moz-range-progress{height:4px;border-radius:999px;background:#fff}
.song-sheet .rp-volume::-moz-range-thumb{width:10px;height:10px;border:0;border-radius:50%;background:#fff}
.song-sheet .rp button:focus-visible,.song-sheet .rp input:focus-visible,.song-sheet .rp-rail:focus-visible{outline:3px solid #C9B5FF;outline-offset:3px}
.song-sheet .rp.err .rp-play{background:rgba(160,185,220,.22);box-shadow:none;cursor:default}
.song-sheet .rp.err .rp-rail{opacity:.4;cursor:default}
.song-sheet .rp button:disabled{opacity:.55;cursor:default}
@media (min-width:801px) and (max-width:1000px){.song-sheet .rp{padding:14px 12px}.song-sheet .rp-main{gap:10px}.song-sheet .rp-tools{gap:5px}.song-sheet .rp-volume{width:72px}}
@media (prefers-reduced-motion:reduce){.song-sheet .rp *{transition:none!important;animation:none!important}}

@media (max-width:800px){
.song-sheet .rp{margin:14px 0 10px;padding:16px 14px 12px;border-radius:18px}
.song-sheet .rp-main{gap:12px;align-items:center;min-width:0}
.song-sheet .rp-play{width:42px;height:42px;min-width:42px;min-height:42px;position:relative;box-shadow:0 6px 18px rgba(230,62,148,.28)}
.song-sheet .rp-play::after{content:'';position:absolute;inset:-1px;border-radius:999px}
.song-sheet .rp-play svg{width:17px;height:17px}
.song-sheet .rp-track{flex:1;min-width:0}
.song-sheet .rp-rail{height:6px;margin:9px 0 13px;touch-action:none}
.song-sheet .rp-rail::before{inset:-20px 0}
.song-sheet .rp-thumb{width:20px;height:20px}
.song-sheet .rp-times{font-size:13px}
.song-sheet .rp-tools{display:none}
}
