:root{font-family:SF Pro Display,SF Pro Text,Inter,Helvetica Neue,Arial,system-ui,sans-serif;line-height:1.5;font-weight:400;color:#fff;background-color:#05060c;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}html{height:100%}body{margin:0;min-height:100svh;height:100%;min-height:100dvh;background-color:#05060c;overflow:hidden}#root{min-height:100svh;min-height:100dvh;height:100%}a,a:hover{color:inherit}@font-face{font-family:SF Pro Display;src:local("SF Pro Display"),url(/fonts/SF-Pro-Display-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:SF Pro Display;src:local("SF Pro Display"),url(/fonts/SF-Pro-Display-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--layout-top-baseline: 96px;--layout-horizontal-padding: clamp(2.2rem, 4.8vw, 3.4rem);--space-stack-xs: clamp(.35rem, .9vw, .55rem);--space-stack-sm: clamp(.6rem, 1.4vw, .9rem);--space-stack-md: clamp(.95rem, 1.9vw, 1.3rem);--space-stack-lg: clamp(1.2rem, 2.4vw, 1.6rem);--search-bar-height: 340px}.app{position:relative;min-height:100vh;min-height:100svh;min-height:100dvh;height:100%;width:100%;overflow:hidden;display:flex;flex-direction:column;color:#fff;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;font-feature-settings:"liga","kern";background-color:#05060c;background-image:radial-gradient(140% 140% at 50% 32%,var(--bg-color-1, rgba(118, 96, 255, .7)) 0%,rgba(74,56,144,.52) 36%,rgba(24,18,52,.88) 72%,rgba(6,7,18,.98) 100%),radial-gradient(160% 150% at 18% 18%,var(--bg-color-3, rgba(255, 132, 168, .32)),transparent 70%);background-attachment:fixed;background-position:center;background-size:cover;background-repeat:no-repeat;transition:color .6s ease,background 1.4s ease;letter-spacing:-.01em;isolation:isolate;--bg-color-1: rgba(118, 96, 255, .72);--bg-color-2: rgba(12, 9, 32, .88);--bg-color-3: rgba(255, 132, 168, .5);--accent-color: #ff6d9b;--accent-strong: #ff8bb3;--accent-soft: rgba(255, 109, 155, .45);--panel-bg: rgba(14, 12, 34, .72);--panel-border: rgba(255, 255, 255, .08);--text-muted: rgba(255, 255, 255, .72);--divider-color: rgba(255, 255, 255, .08)}.app:after{content:"";position:fixed;inset:0;pointer-events:none;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8z/D/PwAHygNcxECOwQAAAABJRU5ErkJggg==);background-repeat:repeat;background-size:220px 220px;mix-blend-mode:soft-light;opacity:.055;z-index:1;transform:translateZ(0)}.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}.app-backdrop{position:absolute;inset:-12%;--dynamic-backdrop: none;background-image:var(--dynamic-backdrop),radial-gradient(160% 145% at 24% 18%,var(--bg-color-1, rgba(124, 102, 255, .75)) 0%,rgba(48,32,96,.82) 38%,rgba(16,12,40,.94) 72%,rgba(6,7,18,1) 100%),radial-gradient(120% 150% at 78% 16%,var(--bg-color-3, rgba(255, 132, 168, .34)) 0%,transparent 70%),linear-gradient(140deg,#0a0b1aeb,#050612fa);background-position:center,50% 38%,80% 12%,50% 100%;background-size:cover,160% 160%,140% 140%,200% 200%;background-repeat:no-repeat;background-blend-mode:soft-light,screen,normal,normal;transform:scale(1.18) translateZ(0);opacity:.8;transition:opacity .6s ease-in-out;will-change:opacity,transform;filter:saturate(112%) brightness(1.02);pointer-events:none;z-index:0}.app-overlay{position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,#030612d6,#100a20ad 58%,#280e2c8c);-webkit-backdrop-filter:saturate(140%);backdrop-filter:saturate(140%);mix-blend-mode:normal;z-index:2;transition:background 1.2s ease}.app-layout{position:relative;z-index:3;display:grid;grid-template-columns:1fr 1fr;column-gap:3vw;row-gap:clamp(2rem,4vw,3.4rem);align-items:start;justify-items:stretch;--layout-padding: var(--layout-horizontal-padding);padding:var(--layout-top-baseline) var(--layout-horizontal-padding) var(--layout-padding);min-height:100vh;min-height:100svh;min-height:100dvh;width:100%;box-sizing:border-box;overflow:hidden;--panel-padding: clamp(2rem, 4vw, 3rem)}.panel{display:flex;flex-direction:column;min-height:0;min-width:0;position:relative;overflow:visible;padding:var(--panel-padding);flex:1 1 0;max-height:calc(100vh - var(--layout-top-baseline) - var(--layout-padding));max-height:calc(100dvh - var(--layout-top-baseline) - var(--layout-padding))}.playback-panel{align-items:stretch;gap:clamp(2rem,4vh,3rem);justify-content:center}.list-panel{align-items:stretch;justify-content:flex-start;min-width:0;width:100%;box-sizing:border-box}.player-stage{flex:1;display:grid;grid-template-columns:[gutter] minmax(16px,1fr) [content-start] minmax(420px,560px) [content-end] minmax(16px,1fr);grid-auto-rows:auto;row-gap:0;align-items:start;align-content:start;width:100%;margin:0;padding-block:clamp(1.8rem,4vh,3rem);box-sizing:border-box;overflow-x:hidden}.left-pane{overflow-x:hidden;margin-top:80px}.player-header{position:absolute;top:24px;left:32px;text-align:left;z-index:100;pointer-events:none;display:flex;flex-direction:column;gap:.35rem}.player-header .eyebrow{margin:0;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;font-size:.95rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:#ffffffbf}.player-heading{margin:0;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;font-weight:700;font-size:clamp(1.8rem,3vw,2.4rem);letter-spacing:-.02em;color:#fffffff2;text-shadow:0 2px 4px rgba(0,0,0,.35)}.player-subheading{margin:0;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;font-size:clamp(1rem,2vw,1.2rem);font-weight:400;letter-spacing:-.01em;color:#ffffffbf}.player-cover{position:relative;grid-column:content-start / content-end;justify-self:start;align-self:start;display:flex;align-items:center;justify-content:center;height:auto;min-height:320px;padding:0;margin-top:24px;margin-bottom:24px}.player-cover:before{content:"";position:absolute;inset:clamp(.4rem,1.8vw,1rem);border-radius:24px;background:#ffffff14;-webkit-backdrop-filter:blur(40px) saturate(140%);backdrop-filter:blur(40px) saturate(140%);z-index:0;pointer-events:none}.album-art{position:relative;z-index:1;width:min(38vw,360px);max-width:100%;height:auto;aspect-ratio:1 / 1;border-radius:20px;--album-art-image: none;background-image:linear-gradient(180deg,#ffffff14,#fff0),var(--album-art-image);background-color:#ffffff14;background-size:cover;background-position:center;overflow:hidden;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.08);box-shadow:0 12px 40px #0006;transition:width .3s ease,height .3s ease,box-shadow .8s ease,background-image 1s ease;transform:none;animation:none;object-fit:cover}.album-art.playing{width:min(var(--search-bar-height, 340px),38vw,360px);height:min(var(--search-bar-height, 340px),38vw,360px);box-shadow:0 18px 56px #0000007a}.album-art.empty{background:#ffffff08;color:#ffffff80;text-align:center}.album-art:before{content:"";position:absolute;inset:-12%;background:radial-gradient(circle,var(--accent-soft) 0%,transparent 68%);opacity:.35;mix-blend-mode:screen;animation:glowPulse 7s ease-in-out infinite}.album-art.loaded:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#ffffff14,#fff0),radial-gradient(circle at 15% 15%,rgba(255,255,255,.28),transparent 60%);mix-blend-mode:screen;pointer-events:none}.artwork-placeholder{display:flex;align-items:center;justify-content:center;text-align:center;padding:2.2rem;color:#ffffffb3;font-size:1.05rem;width:100%;height:100%}.icon-btn{display:inline-flex;align-items:center;justify-content:center}.icon-btn img{width:22px;height:22px;filter:drop-shadow(0 1px 1px rgba(0,0,0,.35))}.play-toggle.icon-btn img{width:28px;height:28px}.icon-with-badge{position:relative;display:inline-flex;align-items:center;justify-content:center}.icon-badge{position:absolute;bottom:-4px;right:-4px;min-width:16px;height:16px;border-radius:999px;background:#0c0920d9;color:#fff;font-size:.6rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;padding:0 3px;line-height:1}.player-track-meta{margin:clamp(1.6rem,3vw,2.2rem) 0 0;text-align:left;display:grid;row-gap:4px;grid-column:content-start / content-end}.player-title{margin:0;font-size:clamp(1.5rem,3.1vw,2rem);font-weight:600;text-align:left;text-shadow:0 18px 32px rgba(0,0,0,.4)}.player-artist{margin:0;font-size:1rem;color:#fffc;text-align:left}.eyebrow{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:#ffffff9e}.player-progress{grid-column:content-start / content-end;display:grid;row-gap:clamp(.35rem,.8vw,.55rem);margin-top:14px}.player-progress .progress{width:100%;display:block}.time-row{display:grid;grid-template-columns:1fr 1fr;align-items:center;font-size:.88rem;font-variant-numeric:tabular-nums;color:#ffffffc7;margin-top:calc(var(--space-stack-xs) * -.35)}.time-row span{min-width:3.2ch}.time-row .time-start{justify-self:start}.time-row .time-end{justify-self:end}.player-controls{grid-column:content-start / content-end;display:grid;grid-template-columns:minmax(0,auto) 1fr minmax(0,auto);align-items:center;column-gap:clamp(.8rem,1.6vw,1.1rem);margin-top:20px}.player-controls .shuffle{justify-self:start}.player-controls .repeat{justify-self:end}.main-controls{justify-self:center;display:inline-grid;grid-auto-flow:column;column-gap:var(--space-stack-sm);align-items:center;transform:translateY(1px)}.control-button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;border:none;background:#ffffff14;color:#fff;cursor:pointer;transition:transform .25s ease,background .25s ease,box-shadow .25s ease;box-shadow:inset 0 0 0 .5px #ffffff40,0 4px 12px #00000059;overflow:hidden;-webkit-backdrop-filter:blur(14px) saturate(135%);backdrop-filter:blur(14px) saturate(135%)}.control-button:before{content:"";position:absolute;inset:-14px;border-radius:inherit;background:radial-gradient(circle,var(--accent-soft) 0%,transparent 70%);opacity:0;transition:opacity .3s ease;z-index:-1}.control-button img,.control-button .icon-with-badge{width:22px;height:22px}.control-button:hover{transform:translateY(-3px) scale(1.02);background:#ffffff2e;box-shadow:inset 0 0 0 .5px #ffffff73,0 14px 32px #0006}.control-button:hover:before{opacity:1}.control-button.active{color:var(--accent-color);background:#ffffff38;box-shadow:inset 0 0 0 .5px #ffffff80,0 16px 36px #00000073}.control-button .icon-with-badge img{width:100%;height:100%}.control-button:disabled{cursor:not-allowed;opacity:.45;transform:none;box-shadow:inset 0 0 0 .5px #ffffff1f,0 4px 10px #00000040}.play-toggle{width:68px;height:68px;background:linear-gradient(135deg,var(--accent-color),var(--accent-strong));color:#0c0918;border:none;box-shadow:0 28px 52px var(--accent-soft)}.play-toggle:before{content:"";position:absolute;inset:-16px;border-radius:inherit;background:radial-gradient(circle,var(--accent-soft) 0%,transparent 70%);opacity:.55;filter:blur(12px);z-index:-1;animation:glowPulse 6s ease-in-out infinite}.play-toggle:hover{background:linear-gradient(135deg,var(--accent-strong),var(--accent-color));box-shadow:0 34px 64px var(--accent-soft)}.play-toggle.buffering:after{content:"";position:absolute;width:32px;height:32px;border-radius:50%;border:3px solid rgba(255,255,255,.45);border-top-color:#fff;animation:spin .8s linear infinite}.bottom-right{position:fixed;bottom:32px;right:40px;display:flex;gap:12px;z-index:20}.bottom-right button{width:36px;height:36px;border-radius:50%;border:none;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:inline-flex;align-items:center;justify-content:center;color:#fffc;cursor:pointer;transition:transform .3s ease,background .3s ease,color .3s ease,box-shadow .3s ease,opacity .3s ease;opacity:.92}.bottom-right button:hover{transform:translateY(-2px) scale(1.05);background:#ffffff2e;color:#fff;opacity:1}.bottom-right button.active{color:#fff;background:#ffffff40;box-shadow:0 0 10px #fff6}.bottom-right button:focus-visible{outline:2px solid rgba(255,255,255,.65);outline-offset:3px}.player-volume{grid-column:content-start / content-end;display:grid;grid-template-columns:minmax(0,auto) 1fr minmax(0,auto);align-items:center;column-gap:clamp(.8rem,1.6vw,1.1rem);color:#ffffffb3;padding-bottom:clamp(.6rem,2vh,1rem);margin-top:20px}.volume-slider{width:100%}.vol-min,.vol-max{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px}.vol-min svg,.vol-max svg{width:22px;height:22px}.player-controls svg,.player-volume svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.25))}.progress,.volume-slider{-webkit-appearance:none;appearance:none;height:6px;border-radius:999px;background:#ffffff2e;position:relative}.progress::-webkit-slider-runnable-track,.volume-slider::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:transparent}.progress::-webkit-slider-thumb,.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 0 0 5px #ffffff26;border:none;margin-top:-5px}.progress::-moz-range-track,.volume-slider::-moz-range-track{height:6px;border-radius:999px;background:transparent}.progress::-moz-range-thumb,.volume-slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#fff;border:none;box-shadow:0 0 0 5px #ffffff26}.progress:focus-visible,.volume-slider:focus-visible{outline:none;box-shadow:0 0 0 4px #ffffff2e}.empty-state-card{grid-column:content-start / content-end;margin:clamp(1.6rem,3vw,2.4rem) 0 0;padding:clamp(2rem,4vw,2.8rem);border-radius:20px;background:#ffffff0a;-webkit-backdrop-filter:blur(20px) saturate(120%);backdrop-filter:blur(20px) saturate(120%);display:grid;place-items:center;color:#ffffffb3;text-align:center;min-height:min(28vw,260px)}.empty-state-card p{margin:0;font-size:1.05rem;letter-spacing:.02em}.lyrics-placeholder{text-align:center;color:#ffffffb3}.list-stack{display:flex;flex-direction:column;gap:clamp(1.8rem,3vw,2.4rem);min-height:0;flex:1;height:100%;max-height:100%;align-items:stretch;width:100%}.list-header{display:flex;flex-direction:column;gap:1.4rem;flex-shrink:0;position:relative;align-items:flex-start}.search-area{position:relative;width:100%;align-self:flex-start;margin-top:24px}.search-bar{display:flex;align-items:center;gap:.9rem;padding:.95rem 1.2rem;border-radius:22px;background:#ffffff14;border:1px solid rgba(255,255,255,.08);transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;box-shadow:inset 0 0 0 1px #ffffff0a;width:100%;max-width:none;align-self:stretch;margin:0}.search-bar svg{width:20px;height:20px;opacity:.7}.search-bar input{flex:1;background:transparent;border:none;outline:none;color:#fff;font-size:1rem;font-weight:500;margin:0;line-height:normal;vertical-align:middle}.search-bar input::placeholder{color:#ffffff73}.search-bar:focus-within{border-color:#ffffff4d;background:#ffffff1f;box-shadow:0 18px 32px #04061273}.search-bar.searching{border-color:#ffffff47}.search-dropdown{position:absolute;top:calc(100% + .6rem);left:0;right:0;display:flex;flex-direction:column;gap:.2rem;padding:.4rem 0;border-radius:22px;background:#0e0c22e6;border:1px solid rgba(255,255,255,.12);box-shadow:0 32px 64px #06081a73;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);max-height:clamp(240px,45vh,420px);overflow-y:auto;z-index:20}.search-result{display:flex;align-items:center;gap:.9rem;padding:.65rem 1.2rem;width:100%;background:transparent;border:none;color:inherit;text-align:left;cursor:pointer;transition:background .2s ease,transform .2s ease}.search-result:hover,.search-result:focus-visible{background:#ffffff1a;outline:none;transform:translateY(-1px)}.search-result-thumb{width:48px;height:48px;border-radius:14px;overflow:hidden;flex-shrink:0;box-shadow:inset 0 0 0 1px #ffffff14;display:flex;align-items:center;justify-content:center}.cover-image{width:48px;height:48px;border-radius:12px;object-fit:cover;display:block}.cover-fallback{width:48px;height:48px;border-radius:12px;background:linear-gradient(145deg,#6e6aff,#2a265e);display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;font-weight:600;text-transform:uppercase;box-shadow:inset 0 0 6px #ffffff26,0 2px 6px #00000040;-webkit-user-select:none;user-select:none}.search-result-meta{display:flex;flex-direction:column;gap:.2rem;min-width:0}.search-result-title{font-weight:600;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-artist{font-size:.9rem;color:#ffffffb8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-status{padding:.8rem 1.2rem;font-size:.95rem;color:#ffffffbf}.search-status.empty{color:#fff9}.spinner{width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.25);border-top-color:#ffffffd9;animation:spin .8s linear infinite}.segmented-control{display:inline-flex;gap:.35rem;padding:.3rem;border-radius:999px;background:#ffffff14;align-self:flex-start;border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px #ffffff0a}.segment{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1.35rem;border-radius:999px;background:transparent;border:none;color:#ffffffa6;font-size:.9rem;cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.segment svg{width:18px;height:18px;opacity:.75}.segment:hover{color:#fff;background:#ffffff29}.segment.active{color:#fff;background:linear-gradient(125deg,#ff5f6d66,#ffc37152);box-shadow:0 16px 26px #ff5f6d38}.error-banner{padding:.85rem 1.1rem;border-radius:18px;background:#ff4b5f2e;border:1px solid rgba(255,75,95,.45);font-size:.9rem}.list-scroll{flex:1;display:flex;flex-direction:column;gap:.6rem;min-height:0;width:100%;box-sizing:border-box;padding-right:clamp(.45rem,1vw,.9rem)}.playlist-scroll{overflow-y:auto;scrollbar-width:none}.list-scroll.is-lyrics{overflow:hidden;padding-right:0}.playlist-scroll::-webkit-scrollbar{display:none}.results-meta{display:flex;justify-content:space-between;align-items:center;text-transform:uppercase;font-size:.78rem;letter-spacing:.16em;color:#ffffff94;padding:.15rem 0 .4rem}.result-count{color:#ffffffc7;font-weight:600}.track-item{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:clamp(.75rem,1.8vw,1.2rem);align-items:center;height:64px;padding:0 1.2rem;border-radius:16px;background:#ffffff0f;border:1px solid rgba(255,255,255,.06);color:inherit;cursor:pointer;transition:transform .25s ease,background .25s ease,box-shadow .25s ease,border-color .25s ease;text-align:left;position:relative;z-index:0;overflow:visible}.track-item:before{content:"";position:absolute;inset:-6px;border-radius:inherit;background:radial-gradient(circle,#fff3,#fff0);filter:blur(14px);opacity:.4;pointer-events:none;transition:opacity .3s ease;z-index:-1}.track-item>*{position:relative;z-index:1}.track-item:hover{transform:translateY(-2px);background:#ffffff1f;border-color:#ffffff2e;box-shadow:0 18px 32px #04061273}.track-item:hover:before{opacity:.6}.track-item.active{background:linear-gradient(135deg,var(--accent-color) 0%,rgba(255,255,255,.12) 120%);border-color:#ffffff47;transform:translateY(-2px)}.track-item.active:before{opacity:.75}.track-thumb{position:relative;width:48px;height:48px;border-radius:14px;background:#ffffff1f;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:600;color:#ffffffd9;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff14}.track-thumb img{width:100%;height:100%;object-fit:cover;display:block}.track-letter{z-index:1}.track-item.active .track-letter{opacity:.4}.equalizer{position:absolute;left:50%;bottom:8px;transform:translate(-50%);width:24px;height:16px;display:flex;justify-content:space-between;align-items:flex-end}.equalizer:before,.equalizer:after,.equalizer span{display:block;width:4px;border-radius:999px;background:#fff;animation:equalize .8s ease-in-out infinite}.equalizer:before,.equalizer:after{content:""}.equalizer span{animation-delay:.2s}.equalizer:before{animation-delay:.05s}.equalizer:after{animation-delay:.35s}.track-meta{display:flex;flex-direction:column;gap:.25rem;min-width:0}.track-title{font-weight:600;font-size:1rem;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track__title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-artist{font-size:.9rem;color:#ffffffb8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-duration{font-size:.9rem;color:#ffffffb3;margin-left:clamp(.5rem,1vw,1.1rem);min-width:4ch;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-state{padding:2rem 1rem;text-align:center;color:#ffffff9e}.lyrics-panel{display:flex;flex-direction:column;justify-content:center;gap:1.6rem;flex:1;min-height:0;white-space:normal;word-wrap:break-word;width:100%;height:100%;padding:0 2rem 2rem;box-sizing:border-box}.lyrics-view{position:relative;flex:1;min-height:0;width:100%;height:100%;overflow-y:auto;overflow-x:hidden;padding:24px 16px;box-sizing:border-box;scrollbar-width:none;-ms-overflow-style:none;display:flex;flex-direction:column;align-items:center;scroll-behavior:smooth}.lyrics-view:before,.lyrics-view:after{content:"";display:block;flex:0 0 auto;height:20vh;width:100%}.lyrics-view::-webkit-scrollbar{display:none}.lyrics-header{display:flex;flex-direction:column;gap:.35rem}.lyrics-header h2{margin:.2rem 0 0;font-size:1.6rem}.lyrics-header p{margin:0;color:#ffffffb8}.lyrics-content{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:1.2rem;padding:0 0 2rem;width:100%;box-sizing:border-box}@media (max-height: 860px){.app-layout{--layout-padding: clamp(1.8rem, 4vh, 2.6rem);padding:var(--layout-padding);gap:clamp(1.8rem,4vw,2.6rem);--panel-padding: clamp(1.6rem, 3.6vw, 2.4rem)}.player-grid{gap:clamp(1.1rem,2.4vh,1.8rem);padding-block:clamp(1.2rem,2.6vh,2.2rem)}.album-art{width:clamp(220px,36vh,360px)}.album-art.playing{width:min(var(--search-bar-height, 340px),clamp(260px,42vh,360px));height:min(var(--search-bar-height, 340px),clamp(260px,42vh,360px))}.play-toggle{width:64px;height:64px}}@media (max-height: 720px){.app-layout{--layout-padding: clamp(1.4rem, 3.6vh, 2.2rem);padding:var(--layout-padding);gap:clamp(1.4rem,4vw,2rem);--panel-padding: clamp(1.2rem, 3.2vw, 2rem)}.player-grid{gap:clamp(.9rem,2vh,1.3rem);padding-block:clamp(1rem,2vh,1.6rem)}.album-art{width:clamp(200px,34vh,320px)}.album-art.playing{width:min(var(--search-bar-height, 320px),clamp(240px,38vh,320px));height:min(var(--search-bar-height, 320px),clamp(240px,38vh,320px))}.player-title{font-size:clamp(1.4rem,3vw,1.8rem)}.control-button{width:50px;height:50px}.play-toggle{width:60px;height:60px}.time-row{font-size:.8rem;margin-top:calc(var(--space-stack-xs) * -.25)}.player-volume{column-gap:.8rem}}.lyrics-line{display:block;text-align:center;font-size:18px;line-height:1.9;color:#ffffff8c;transition:color .25s ease,transform .25s ease;transform-origin:center;padding:4px 0;white-space:normal;word-break:break-word}.lyrics-line.current{color:#fff;font-weight:600;font-size:22px;transform:scale(1.05)}.lyrics-text{display:block}.lyrics-translation{display:block;margin-top:.35rem;font-size:16px;line-height:1.6;color:#ffffff8c}input[type=range]{-webkit-appearance:none;appearance:none;height:3px;border-radius:999px;background:#ffffff38;outline:none;transition:background .3s ease}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#fff;border:none;box-shadow:0 0 0 4px #ffffff2e;transition:transform .2s ease,box-shadow .2s ease}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.05);box-shadow:0 0 0 6px #fff3}input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#fff;border:none;box-shadow:0 0 0 4px #ffffff2e;transition:transform .2s ease,box-shadow .2s ease}input[type=range]::-moz-range-thumb:hover{transform:scale(1.05);box-shadow:0 0 0 6px #fff3}input[type=range]::-moz-range-track{height:3px;border-radius:999px;background:transparent}@keyframes spin{to{transform:rotate(360deg)}}@keyframes equalize{0%,to{height:6px}50%{height:18px}}@keyframes gradientDrift{0%{transform:translate3d(-6%,-4%,0) scale(1)}50%{transform:translate3d(6%,8%,0) scale(1.05)}to{transform:translate3d(-6%,-4%,0) scale(1)}}@keyframes gradientDriftReverse{0%{transform:translate3d(4%,6%,0) scale(1.05)}50%{transform:translate3d(-6%,-8%,0) scale(1)}to{transform:translate3d(4%,6%,0) scale(1.05)}}@keyframes artworkPan{0%{transform:scale(1.12) translate3d(-2%,-1%,0)}50%{transform:scale(1.18) translate3d(2%,1%,0)}to{transform:scale(1.12) translate3d(-2%,-1%,0)}}@keyframes ambientPulse{0%{transform:scale(1) rotate(0);opacity:.36}50%{transform:scale(1.12) rotate(12deg);opacity:.5}to{transform:scale(1) rotate(0);opacity:.36}}@keyframes ambientPulseReverse{0%{transform:scale(1.05) rotate(0);opacity:.38}50%{transform:scale(1.16) rotate(-14deg);opacity:.52}to{transform:scale(1.05) rotate(0);opacity:.38}}@keyframes overlayPulse{0%{opacity:.88}50%{opacity:.95}to{opacity:.88}}@keyframes glowPulse{0%,to{opacity:.32}50%{opacity:.55}}@keyframes artworkFloat{0%{transform:translateZ(0) scale(1.01)}50%{transform:translate3d(0,-6px,0) scale(1.03)}to{transform:translateZ(0) scale(1.01)}}@keyframes lyricGlow{0%{text-shadow:0 0 0 rgba(255,255,255,0)}50%{text-shadow:0 0 22px var(--accent-soft)}to{text-shadow:0 0 0 rgba(255,255,255,0)}}@media (max-width: 1366px){.player-stage{grid-template-columns:[gutter] minmax(12px,1fr) [content-start] minmax(380px,520px) [content-end] minmax(12px,1fr)}}@media (max-width: 1100px){.app-layout{column-gap:clamp(2rem,4vw,3rem);--layout-horizontal-padding: clamp(2.5rem, 5vw, 3.25rem);--layout-top-baseline: clamp(2.6rem, 5.5vw, 3.2rem)}}@media (max-width: 860px){.app-layout{grid-template-columns:1fr;row-gap:clamp(1.6rem,5vh,2.4rem);min-height:auto;--layout-top-baseline: clamp(2.2rem, 6vw, 2.8rem)}.panel{max-height:none}.playback-panel,.list-panel{padding:clamp(2rem,5vw,2.5rem)}.playback-panel{justify-content:flex-start}.player-stage{grid-template-columns:[gutter] minmax(8px,1fr) [content-start] minmax(0,1fr) [content-end] minmax(8px,1fr)}.album-art{max-width:clamp(200px,60vw,420px)}.bottom-right{bottom:24px;right:24px}}@media (max-width: 620px){.player-stage{row-gap:var(--space-stack-md)}.player-controls{column-gap:clamp(.6rem,4vw,1rem)}.segment{padding:.5rem 1.1rem}.bottom-right{bottom:16px;right:16px;gap:12px}.bottom-right button{width:34px;height:34px}.player-controls .control-button{width:52px;height:52px}.player-controls .play-toggle{width:64px;height:64px}}
