/* Lyrics: an open, readable stage with distinct voices. */
.player-view-tabs{display:flex;justify-content:center;gap:6px;margin:-4px 0 12px;flex-shrink:0}
.player-view-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;min-width:100px;border:1px solid transparent;border-radius:24px;background:transparent;color:var(--muted,#b4afc3);font-family:var(--font-ui,system-ui);font-size:13px;font-weight:650;cursor:pointer;padding:9px 18px}
.player-view-tabs button[aria-selected=true]{color:#f3eaff;background:#c8b2ff18;border-color:#c8b2ff32}
.player-view-tabs svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.now-art[hidden],.lyrics-panel[hidden]{display:none!important}
.lyrics-panel{--lyric-lead:#f3edff;--lyric-quote:#ffb59f;--lyric-reply:#ffda9a;--lyric-hook:#ccb5ff;--lyric-call:#9ee9f2;--lyric-service:#e2b1ff;height:min(430px,47dvh);min-height:220px;position:relative;display:flex;flex-direction:column;margin-bottom:16px;overflow:hidden;border-radius:16px;background:linear-gradient(150deg,#25203966,#11142044);border:1px solid #c8b2ff16}
.lyrics-toolbar{flex-shrink:0;display:flex;min-height:44px;align-items:center;justify-content:space-between;padding:0 16px;gap:8px;color:#bfb3d1;font-size:9px;letter-spacing:1.3px;font-weight:650}
#lyrics-follow{background:#c8b2ff18;border:0;border-radius:22px;color:#deceff;font-family:inherit;font-size:11px;font-weight:650;min-height:44px;padding:6px 10px;cursor:pointer;letter-spacing:0;white-space:nowrap}
#lyrics-follow[hidden]{display:none}
.lyrics-queue{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0;color:#bcb1d0;border-radius:50%;margin-right:-8px}
.lyrics-queue svg{width:19px;height:19px}
.lyrics-toolbar:has(#lyrics-follow:not([hidden])) #lyrics-label{font-size:8px;letter-spacing:.6px}
.lyrics-key{display:none;align-items:center;gap:15px;padding:0 18px 10px;color:#bcb4cd;font-size:10px;line-height:1.4;flex-shrink:0}
.has-lyrics .lyrics-key{display:flex}
.lyrics-key span{display:flex;gap:5px;align-items:center}
.lyrics-key span::before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}
.key-lead{color:var(--lyric-lead)}.key-quote{color:var(--lyric-quote)}.key-reply{color:var(--lyric-reply)}
.lyrics-scroll{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#807097 transparent;padding:8px 18px 55%;flex:1;position:relative;min-height:0;scroll-padding:20px;mask-image:linear-gradient(to bottom,transparent,#000 12px,#000 calc(100% - 24px),transparent)}
.lyric-line{--voice-color:var(--lyric-lead);display:block;width:96%;text-align:left;padding:14px 0;border:0;background:transparent;color:color-mix(in srgb,var(--voice-color) 60%,#736982);font-family:var(--font-ui,system-ui);font-size:clamp(23px,6.4vw,29px);font-weight:650;line-height:1.35;letter-spacing:-.65px;margin:0;overflow-wrap:break-word;transform:scale(1);transform-origin:left center;transition:color .22s ease,transform .32s cubic-bezier(.2,.7,.2,1),text-shadow .3s ease}
.lyric-text{display:block}
.lyric-voice-label{display:block;margin:0 0 7px;font-size:9px;line-height:1.4;font-weight:750;letter-spacing:1.7px;text-transform:uppercase;color:var(--voice-color);opacity:.85}
.lyric-line[data-voice=hook]{--voice-color:var(--lyric-hook)}
.lyric-line[data-voice=call]{--voice-color:var(--lyric-call)}
.lyric-line[data-voice=reply]{--voice-color:var(--lyric-reply)}
.lyric-line[data-voice=service]{--voice-color:var(--lyric-service)}
.lyric-line[data-voice=aside]{--voice-color:var(--lyric-call)}
.lyric-quote{color:color-mix(in srgb,var(--lyric-quote) 76%,#938496);font-style:italic}
.lyric-line[data-voice=call] .lyric-quote,.lyric-line[data-voice=reply] .lyric-quote,.lyric-line[data-voice=service] .lyric-quote,.lyric-line[data-voice=aside] .lyric-quote{color:inherit;font-style:normal}
button.lyric-line{min-height:48px;cursor:pointer}
button.lyric-line:hover{color:var(--voice-color);filter:none!important}
.lyric-line.is-next{color:color-mix(in srgb,var(--voice-color) 80%,#736982)}
.lyric-line.is-past{color:color-mix(in srgb,var(--voice-color) 47%,#736982)}
.lyric-line[aria-current=true]{color:var(--voice-color);text-shadow:0 0 22px color-mix(in srgb,var(--voice-color) 16%,transparent);transform:scale(1.035);animation:lyric-arrive .38s cubic-bezier(.18,.76,.23,1) both}
.lyric-line[aria-current=true] .lyric-quote{color:var(--lyric-quote)}
.lyric-line[aria-current=true][data-voice=call] .lyric-quote,.lyric-line[aria-current=true][data-voice=reply] .lyric-quote,.lyric-line[aria-current=true][data-voice=service] .lyric-quote,.lyric-line[aria-current=true][data-voice=aside] .lyric-quote{color:inherit}
.lyric-instrumental{font-size:26px;padding:10px 0;letter-spacing:6px;color:#a192b9}
@keyframes lyric-arrive{from{transform:scale(1)}to{transform:scale(1.035)}}
.lyrics-empty{height:100%;min-height:140px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:10px 12px}
.lyrics-scroll:has(.lyrics-empty){padding-bottom:22px;mask-image:none}
.lyrics-empty-mark{font-size:44px;font-weight:750;letter-spacing:-3px;color:#c8b2ff;margin-bottom:10px}
.lyrics-empty h3{font-size:20px;color:#f3edff;margin:0 0 9px;letter-spacing:-.5px}
.lyrics-empty p{font-size:13px;line-height:1.6;color:#bcb4cb;max-width:240px;margin:0}
.lyrics-retry{min-height:44px;margin-top:12px;padding:6px 18px;background:var(--accent,#a8eced);border:0;border-radius:22px;color:#151326;font-weight:700;cursor:pointer}
@media(min-width:760px){.lyrics-panel{height:410px}.lyrics-scroll{padding-left:24px;padding-right:24px}}
@media(max-width:600px){
 .now-playing-dialog[data-view=lyrics] .now-playing-inner{height:100dvh;min-height:100%;max-height:100dvh;padding:calc(10px + env(safe-area-inset-top)) 18px calc(12px + env(safe-area-inset-bottom));justify-content:flex-start}
 .now-playing-dialog[data-view=lyrics] .dialog-top{min-height:44px;flex-shrink:0;margin:0 -4px 2px}
 .now-playing-dialog[data-view=lyrics] .player-view-tabs{margin:0 0 8px}
 .now-playing-dialog[data-view=lyrics] .lyrics-panel{flex:1;height:auto;min-height:150px;margin:0 -3px;border:0;border-radius:12px;background:linear-gradient(155deg,#3225474d,#10202b33)}
 .now-playing-dialog[data-view=lyrics] .now-track-meta{flex-shrink:0;min-height:44px;margin:10px 0 0;gap:8px}
 .now-playing-dialog[data-view=lyrics] .now-track-meta h2{font-size:19px;line-height:1.2;font-weight:750;letter-spacing:-.55px}
 .now-playing-dialog[data-view=lyrics] .now-track-meta p{font-size:11px;margin:3px 0 0}
 .now-playing-dialog[data-view=lyrics] .seek-wrap{flex-shrink:0}
 .now-playing-dialog[data-view=lyrics] .seek-times{font-size:10px}
 .now-playing-dialog[data-view=lyrics] .now-controls{flex-shrink:0;margin:5px 0 0;min-height:62px}
 .now-playing-dialog[data-view=lyrics] .play-button.large{width:62px;height:62px}
 .now-playing-dialog[data-view=lyrics] .playback-status:empty{display:none}
 .now-playing-dialog[data-view=lyrics] .playback-status:not(:empty){margin:5px 0 0;min-height:14px;flex-shrink:0}
 .now-playing-dialog[data-view=lyrics] .now-bottom{display:none}
 .lyric-line{font-size:clamp(23px,6.4vw,28px);padding:13px 0;letter-spacing:-.6px;line-height:1.34}
 .lyrics-scroll{padding-left:15px;padding-right:15px}
 .lyrics-toolbar{padding-left:15px;padding-right:15px}
 .lyrics-key{padding-left:15px;padding-right:15px}
}
@media(max-height:660px) and (max-width:600px){.now-playing-dialog[data-view=lyrics] .player-view-tabs{margin-bottom:3px}.lyrics-key{display:none!important}.lyric-line{font-size:23px;padding-top:10px;padding-bottom:10px}.lyric-voice-label{font-size:8px;margin-bottom:5px}.now-playing-dialog[data-view=lyrics] .now-track-meta{margin-top:6px}.now-playing-dialog[data-view=lyrics] .play-button.large{width:56px;height:56px}.now-playing-dialog[data-view=lyrics] .now-controls{min-height:56px}}
@media(prefers-reduced-motion:reduce){.lyric-line,.lyric-line[aria-current=true]{transition:none;animation:none;transform:none}}
