/* Isolated QILING music player. The cover is static artwork, not a live waveform. */
.audio-player{min-width:0;padding:25px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);display:flex;flex-direction:column;gap:0}
.audio-player .music-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--dim);font-size:10px;letter-spacing:1.8px}
.audio-player .music-duration-tag{letter-spacing:.4px;color:var(--muted)}
.audio-player .music-art{height:148px;display:flex;align-items:center;justify-content:center;position:relative;margin-block:20px 22px;overflow:hidden;background:var(--surface2);border:1px solid var(--line);border-radius:8px}
.audio-player .music-art:before,.audio-player .music-art:after{content:"";position:absolute;width:250px;height:250px;border:1px solid var(--line);border-radius:50%;top:-85px;right:-80px;pointer-events:none}
.audio-player .music-art:after{width:275px;height:275px;top:25px;right:auto;left:-125px}
.audio-player .music-disc{width:108px;height:108px;border:1px solid var(--muted);border-radius:50%;display:grid;place-items:center;background:var(--surface);position:relative}
.audio-player .music-disc:before,.audio-player .music-disc:after{content:"";position:absolute;inset:8px;border:1px solid var(--line);border-radius:50%}
.audio-player .music-disc:after{inset:15px}
.audio-player .music-disc span{font-size:33px;font-weight:500;letter-spacing:-2px;line-height:1}
.audio-player .music-art-label{position:absolute;bottom:10px;left:12px;font-size:7px;letter-spacing:1.6px;color:var(--dim)}
.audio-player .music-title h3{font-size:18px;letter-spacing:-.5px;font-weight:500;line-height:1.5;margin:0}
.audio-player .music-title p{font-size:11px;color:var(--muted);margin:5px 0 0;line-height:1.6}
.audio-player .music-transport{display:grid;grid-template-columns:minmax(0,1fr) 47px 47px;gap:8px;margin-top:22px}
.audio-player button{border:1px solid var(--line);border-radius:7px;min-width:0;min-height:44px;padding:7px;line-height:1.2;transition:background 160ms,color 160ms,border-color 160ms;color:var(--muted);background:transparent;font:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}
.audio-player button:hover{background:var(--surface2);border-color:var(--dim);color:var(--ink)}
.audio-player button:disabled{opacity:.5;cursor:default}
.audio-player button:disabled:hover{background:transparent;border-color:var(--line);color:var(--muted)}
.audio-player button:focus-visible,.audio-player input:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.audio-player svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.audio-player .music-play{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-size:12px;font-weight:600;white-space:nowrap}
.audio-player .music-play:hover{background:var(--accent);color:var(--accent-ink);filter:brightness(.94);border-color:var(--accent)}
.audio-player .music-square{flex-direction:column;gap:4px;font-size:9px}
.audio-player .music-square svg{width:15px;height:15px}
.audio-player .music-loop[aria-pressed=true]{background:var(--surface2);color:var(--ink);border-color:var(--muted)}
.audio-player .music-timeline{margin-top:16px}
.audio-player .music-range{--music-progress:0%;appearance:none;-webkit-appearance:none;display:block;width:100%;min-width:0;height:24px;padding:0;margin:0;cursor:pointer;background:transparent;accent-color:var(--accent);border-radius:3px}
.audio-player .music-range::-webkit-slider-runnable-track{height:3px;background:linear-gradient(to right,var(--ink) 0,var(--ink) var(--music-progress),var(--line) var(--music-progress),var(--line) 100%);border-radius:10px}
.audio-player .music-range::-moz-range-track{height:3px;background:var(--line);border-radius:10px}
.audio-player .music-range::-moz-range-progress{height:3px;background:var(--ink);border-radius:10px}
.audio-player .music-range::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:11px;height:11px;margin-top:-4px;border-radius:50%;background:var(--ink);border:0}
.audio-player .music-range::-moz-range-thumb{width:11px;height:11px;border-radius:50%;background:var(--ink);border:0}
.audio-player .music-range:disabled{opacity:.45;cursor:default}
.audio-player .music-time{display:flex;justify-content:space-between;gap:12px;font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums;margin-top:-1px;line-height:1.5}
.audio-player .music-volume-row{display:grid;grid-template-columns:32px auto minmax(36px,1fr) 31px;gap:9px;align-items:center;padding-top:15px;margin-top:15px;border-top:1px solid var(--line)}
.audio-player .music-volume-row label{font-size:10px;color:var(--muted)}
.audio-player .music-volume-value{font-size:10px;line-height:1.5;text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}
.audio-player .music-mute{min-height:32px;min-width:32px;width:32px;border-color:transparent;padding:5px}
.audio-player .music-mute svg{width:17px;height:17px}
.audio-player .music-status{font-size:11px;line-height:1.7;min-height:1.7em;margin:14px 0 0;color:var(--muted)}
.audio-player .music-note{font-size:10px;line-height:1.7;margin:5px 0 0;color:var(--dim)}
.audio-player .music-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:600px){.audio-player{padding:21px}.audio-player .music-art{height:130px}.audio-player .music-title h3{font-size:17px}}
@media(prefers-reduced-motion:reduce){.audio-player *,.audio-player *:before,.audio-player *:after{animation:none!important;transition:none!important}}
html[data-motion=off] .audio-player *,html[data-motion=off] .audio-player *:before,html[data-motion=off] .audio-player *:after{animation:none!important;transition:none!important}
