:root{--bg-darker:#040407;--bg-dark:#07080d;--bg-panel:#080a10f5;--bg-hover:#ffffff0d;--bg-active:#ffffff1a;--primary:#00e5ff;--primary-hover:#33ebff;--primary-glow:#00e5ff33;--text-main:#f8fafc;--text-muted:#94a3b8;--text-dimmed:#64748b;--border-color:#ffffff0d;--glass-blur:0px;--font-sans:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display:"Space Grotesk", "Outfit", sans-serif;--font-heading:"Outfit", "Plus Jakarta Sans", sans-serif;--font-serif:"EB Garamond", serif;--font-mono:"JetBrains Mono", monospace;--sidebar-width:260px;--player-height:90px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-darker);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;width:100vw;height:100dvh;overflow:hidden}h1,h2,h3,h4,.font-display{font-family:var(--font-display);letter-spacing:-.02em}.time-display,.time-stamp,.font-mono,.quality-badge{font-family:var(--font-mono);font-feature-settings:"tnum"}#root{background:radial-gradient(circle at 50% -20%,#00e5ff26 0%,#0000 60%),radial-gradient(circle at 10% 40%,#0d94880d 0%,#0000 40%),#060609;flex-direction:column;width:100vw;height:100dvh;display:flex;position:relative;overflow:hidden}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff0d;border-radius:10px;transition:background .3s}::-webkit-scrollbar-thumb:hover{background:var(--primary)}h1,h2{font-family:var(--font-serif);letter-spacing:-.01em;font-weight:600}h3,h4{font-family:var(--font-display);letter-spacing:-.02em;font-weight:700}a{color:inherit;text-decoration:none}button{color:inherit;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-family:inherit;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}button:active{transform:scale(.95)}input[type=range]{-webkit-appearance:none;cursor:pointer;background:0 0;width:100%}input[type=range]:focus{outline:none}input[type=range]::-webkit-slider-runnable-track{background:#ffffff26;border-radius:2px;width:100%;height:4px;transition:background .15s}input[type=range]:hover::-webkit-slider-runnable-track{background:#ffffff40}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;opacity:1;background:#fff;border-radius:50%;width:14px;height:14px;margin-top:-5px;transition:transform .1s,background-color .1s;box-shadow:0 2px 6px #0006}input[type=range]:hover::-webkit-slider-thumb{background:var(--primary);transform:scale(1.25)}input[type=range]:active::-webkit-slider-thumb{background:var(--primary);transform:scale(1.25)}input[type=range]::-moz-range-track{background:#ffffff26;border-radius:2px;width:100%;height:4px}input[type=range]::-moz-range-thumb{opacity:1;background:#fff;border:none;border-radius:50%;width:14px;height:14px;transition:transform .1s,background-color .1s;box-shadow:0 2px 6px #0006}input[type=range]:hover::-moz-range-thumb{background:var(--primary);transform:scale(1.25)}input[type=range]:active::-moz-range-thumb{background:var(--primary);transform:scale(1.25)}@keyframes wave-bounce{0%,to{height:4px}50%{height:18px}}.app-container{height:calc(100vh - var(--player-height));height:calc(100dvh - var(--player-height));flex:1;width:100vw;display:flex;position:relative;overflow:hidden}.glass-panel{background:var(--bg-panel);border:1px solid var(--border-color)}.sidebar-backdrop{display:none}@media (width<=768px){.app-container{position:fixed;inset:0;flex-direction:row!important;width:100%!important;max-width:100%!important;height:100%!important;display:flex!important;overflow:hidden!important}.main-content{flex-direction:column!important;flex:1!important;min-width:0!important;height:100%!important;display:flex!important;overflow:hidden!important}.content-scroll{overscroll-behavior-y:contain!important;-webkit-overflow-scrolling:touch!important;flex:1!important;overflow:hidden scroll!important}.sidebar-backdrop{-webkit-backdrop-filter:blur(4px);z-index:999;background:#0000008c;display:block;position:fixed;inset:0}.content-scroll,.playlists-container,.lyrics-content-container,.queue-content{-webkit-overflow-scrolling:touch}button:active,.song-row:active,.playlist-item:active,.shortcut-card:active{background:#ffffff1f!important;transition:transform 80ms cubic-bezier(.2,.8,.2,1)!important;transform:scale(.97)translate(0,0)!important}}.spotify-premium-pill-btn{color:#000;cursor:pointer;letter-spacing:.04em;background:#1db954;border:none;border-radius:20px;padding:5px 12px;font-size:11px;font-weight:800;transition:transform .2s,background-color .2s;box-shadow:0 2px 8px #1db95466}.spotify-premium-pill-btn:active{background:#1aa34a;transform:scale(.95)}.featured-section-header.clickable{cursor:pointer;justify-content:space-between;align-items:center;padding-right:4px;display:flex}.featured-section-header .section-chevron{color:var(--text-dimmed);transition:transform .2s,color .2s}.featured-section-header.clickable:hover .section-chevron{color:var(--text-main);transform:translate(3px)}.spotify-browse-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;margin-top:14px;display:grid}@media (width<=768px){.spotify-browse-grid{grid-template-columns:1fr 1fr;gap:12px}}.spotify-genre-card{cursor:pointer;border-radius:10px;height:104px;padding:12px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden;box-shadow:0 4px 14px #00000059}.spotify-genre-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000080}.spotify-genre-card:active{transform:scale(.97)}.genre-card-title{color:#fff;z-index:2;font-size:16px;font-weight:800;font-family:var(--font-display);letter-spacing:-.01em;position:relative}.genre-card-img{object-fit:cover;pointer-events:none;border-radius:6px;width:68px;height:68px;position:absolute;bottom:-6px;right:-8px;transform:rotate(22deg);box-shadow:0 6px 16px #0009}.liked-songs-gradient-art{color:#fff!important;background:linear-gradient(135deg,#450af5,#8e8e8e)!important;border-radius:8px!important;justify-content:center!important;align-items:center!important;display:flex!important;box-shadow:0 4px 14px #450af566!important}.mobile-tab-bar{display:none}@media (width<=768px){.mobile-tab-bar{height:calc(56px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);border-top:1px solid var(--border-color);z-index:300;background:#080a12fa;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.tab-item{color:var(--text-dimmed);letter-spacing:.02em;border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:8px 20px;font-size:10px;font-weight:600;transition:color .2s;display:flex}.tab-item.active{color:var(--primary)}.tab-item.active svg{filter:drop-shadow(0 0 6px var(--primary-glow))}.account-menu-drawer{border-right:1px solid var(--border-color);z-index:1500;background:#0c0e16fa;flex-direction:column;width:80vw;max-width:320px;height:100dvh;transition:transform .32s cubic-bezier(.25,1,.5,1);display:flex;position:fixed;top:0;left:0;overflow:hidden;transform:translate(-105%)}.account-menu-drawer.open{transform:translate(0);box-shadow:6px 0 40px #000000b3}.drawer-backdrop{-webkit-backdrop-filter:blur(3px);z-index:1490;background:#0009;position:fixed;inset:0}.drawer-header{padding:calc(20px + env(safe-area-inset-top,0px)) 20px 20px;border-bottom:1px solid var(--border-color);background:#00e5ff0a;align-items:center;gap:14px;display:flex}.profile-badge-large{color:#fff;width:52px;height:52px;font-size:22px;font-weight:800;font-family:var(--font-display);background:linear-gradient(135deg,#e53935,#c62828);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:0 4px 16px #e539354d}.profile-details-large{flex-direction:column;flex:1;gap:2px;display:flex}.profile-details-large h3{color:var(--text-main);font-size:17px;font-weight:700}.view-profile-link{color:var(--primary);font-size:12px;font-weight:500}.close-drawer-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:background-color .2s,color .2s;display:flex}.close-drawer-btn:hover{background-color:var(--bg-hover);color:var(--text-main)}.drawer-divider{background:var(--border-color);height:1px;margin:0}.drawer-content{flex:1;padding:12px 0;overflow-y:auto}.drawer-item{cursor:pointer;color:var(--text-main);align-items:center;gap:16px;padding:14px 24px;font-size:14px;font-weight:500;transition:background .15s;display:flex}.drawer-item:active{background:#ffffff0f}.drawer-item-highlight{color:var(--primary);background:#00e5ff0f;border-radius:10px;margin:0 12px;padding:14px 12px;font-weight:600}.drawer-item-highlight:active{background:#00e5ff24}.drawer-item-danger{color:#ff6b6b}.drawer-item-danger:active{background:#ff6b6b14}.drawer-footer{padding:16px 24px calc(16px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border-color)}.app-version{color:var(--text-dimmed);font-size:11px}}.splash-screen{z-index:9999;will-change:opacity, transform;background:#040508 radial-gradient(circle,#00e5ff26 0%,#040508 70%);flex-direction:column;justify-content:center;align-items:center;transition:opacity .6s cubic-bezier(.25,1,.5,1),transform .6s cubic-bezier(.25,1,.5,1);display:flex;position:fixed;inset:0;transform:translate(0,0)}.splash-screen.fade-out{opacity:0;pointer-events:none;transform:translate(0,0)scale(1.05)}.splash-logo-container{flex-direction:column;align-items:center;gap:16px;display:flex}.splash-logo-circle{background:#090d16b3;border:2px solid #00e5ff4d;border-radius:50%;justify-content:center;align-items:center;width:96px;height:96px;animation:2s ease-in-out infinite splash-pulse;display:flex;position:relative;box-shadow:0 0 25px #00e5ff40}.splash-music-icon{color:var(--primary);filter:drop-shadow(0 0 8px #00e5ffcc);z-index:10;animation:3s ease-in-out infinite splash-icon-float}.splash-logo-circle:before,.splash-logo-circle:after{content:"";opacity:0;border:1px solid #00e5ff66;border-radius:50%;animation:2s cubic-bezier(.1,.8,.3,1) infinite splash-wave;position:absolute;inset:-2px}.splash-logo-circle:after{animation-delay:1s}.splash-logo-disc{pointer-events:none;border:1px dashed #00e5ff40;border-radius:50%;animation:12s linear infinite splash-spin;position:absolute;inset:-8px}.splash-title{letter-spacing:-.03em;color:#fff;font-size:32px;font-weight:800;font-family:var(--font-display);margin-top:12px}.splash-tagline{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:500}.splash-loader-bar{background:#ffffff14;border-radius:1.5px;width:180px;height:3px;margin-top:16px;position:relative;overflow:hidden}.splash-loader-progress{background:linear-gradient(90deg,#00e5ff,#0084ff);width:0%;height:100%;animation:1.5s cubic-bezier(.25,1,.5,1) forwards splash-loading-progress;box-shadow:0 0 8px #00e5ffb3}.splash-footer{bottom:calc(32px + env(safe-area-inset-bottom,0px));color:var(--text-dimmed);letter-spacing:.08em;text-transform:uppercase;font-size:11px;animation:2s ease-in-out infinite alternate splash-footer-fade;position:absolute}.splash-footer .splash-dev-name{color:var(--primary);text-shadow:0 0 10px var(--primary-glow);font-weight:700}@keyframes splash-spin{to{transform:rotate(360deg)}}@keyframes splash-pulse{0%,to{border-color:#00e5ff4d;box-shadow:0 0 25px #00e5ff33}50%{border-color:var(--primary);box-shadow:0 0 40px #00e5ff66}}@keyframes splash-wave{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}@keyframes splash-icon-float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-3px)rotate(4deg)}}@keyframes splash-loading-progress{to{width:100%}}@keyframes splash-footer-fade{0%{opacity:.4}to{opacity:.8}}.app-container,.sidebar,.main-content,.content-scroll,.player-bar,.player-fullscreen,.account-menu-drawer,.lyrics-content-container,.queue-content,.song-row,.shortcut-card,.category-card,.featured-card{will-change:transform, opacity;backface-visibility:hidden}.content-scroll{scroll-behavior:smooth;will-change:scroll-position}body.theme-cyberpunk{--bg-darker:#06030c;--bg-dark:#0b0615;--bg-panel:#120a20a6;--primary:#ff007f;--primary-hover:#f39;--primary-glow:#ff007f59;--border-color:#ff007f2e}body.theme-cyberpunk #root{background:radial-gradient(circle at 50% -20%,#ff007f40 0%,#0000 65%),radial-gradient(circle at 85% 75%,#9d4edd2e 0%,#0000 55%),radial-gradient(circle at 10% 40%,#00f0ff1f 0%,#0000 45%),#06030c}body.theme-nordic{--bg-darker:#030806;--bg-dark:#060d0a;--bg-panel:#0a140fa6;--primary:#00e676;--primary-hover:#3f9;--primary-glow:#00e67652;--border-color:#00e6762e}body.theme-nordic #root{background:radial-gradient(circle at 50% -20%,#00e67638 0%,#0000 65%),radial-gradient(circle at 85% 75%,#14b8a629 0%,#0000 55%),radial-gradient(circle at 10% 40%,#10b9811f 0%,#0000 45%),#030806}body.theme-rose{--bg-darker:#080405;--bg-dark:#0d0708;--bg-panel:#160b0da6;--primary:#ff4d6d;--primary-hover:#ff758f;--primary-glow:#ff4d6d52;--border-color:#ff4d6d2e}body.theme-rose #root{background:radial-gradient(circle at 50% -20%,#ff4d6d3d 0%,#0000 65%),radial-gradient(circle at 85% 75%,#ffb70326 0%,#0000 55%),radial-gradient(circle at 10% 40%,#f7258524 0%,#0000 45%),#080405}body.theme-solar{--bg-darker:#060503;--bg-dark:#0b0906;--bg-panel:#14100aa6;--primary:#ffa000;--primary-hover:#ffb300;--primary-glow:#ffa00052;--border-color:#ffa0002e}body.theme-solar #root{background:radial-gradient(circle at 50% -20%,#ffa0003d 0%,#0000 65%),radial-gradient(circle at 85% 75%,#ff572229 0%,#0000 55%),radial-gradient(circle at 10% 40%,#d977061f 0%,#0000 45%),#060503}body.theme-amethyst{--bg-darker:#08030f;--bg-dark:#0f061d;--bg-panel:#160a26a6;--primary:#a855f7;--primary-hover:#c084fc;--primary-glow:#a855f759;--border-color:#a855f733}body.theme-amethyst #root{background:radial-gradient(circle at 50% -20%,#a855f740 0%,#0000 65%),radial-gradient(circle at 85% 75%,#6366f12e 0%,#0000 55%),radial-gradient(circle at 10% 40%,#d946ef24 0%,#0000 45%),#08030f}body.theme-amoled{--bg-darker:#000;--bg-dark:#050505;--bg-panel:#121212bf;--primary:#10b981;--primary-hover:#34d399;--primary-glow:#10b9814d;--border-color:#ffffff1f}body.theme-amoled #root{background:radial-gradient(circle at 50% -20%,#10b9812e 0%,#0000 60%),radial-gradient(circle at 85% 75%,#3b82f61f 0%,#0000 50%),#000}body.theme-vaporwave{--bg-darker:#09040e;--bg-dark:#12081c;--bg-panel:#1a0c26a6;--primary:#f43f5e;--primary-hover:#fb7185;--primary-glow:#f43f5e59;--border-color:#f43f5e33}body.theme-vaporwave #root{background:radial-gradient(circle at 50% -20%,#f43f5e40 0%,#0000 65%),radial-gradient(circle at 85% 75%,#8b5cf62e 0%,#0000 55%),radial-gradient(circle at 10% 40%,#0ea5e924 0%,#0000 45%),#09040e}body.theme-abyss{--bg-darker:#020712;--bg-dark:#040e21;--bg-panel:#06122aa6;--primary:#0284c7;--primary-hover:#38bdf8;--primary-glow:#0284c759;--border-color:#0284c733}body.theme-abyss #root{background:radial-gradient(circle at 50% -20%,#0284c740 0%,#0000 65%),radial-gradient(circle at 85% 75%,#06b6d42e 0%,#0000 55%),radial-gradient(circle at 10% 40%,#4338ca24 0%,#0000 45%),#020712}body.theme-gold{--bg-darker:#0a0803;--bg-dark:#120f06;--bg-panel:#181308a6;--primary:#eab308;--primary-hover:#fde047;--primary-glow:#eab30859;--border-color:#eab30833}body.theme-gold #root{background:radial-gradient(circle at 50% -20%,#eab30840 0%,#0000 65%),radial-gradient(circle at 85% 75%,#f59e0b2e 0%,#0000 55%),radial-gradient(circle at 10% 40%,#ea580c1f 0%,#0000 45%),#0a0803}.theme-modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:1000;background-color:#030407b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.theme-modal-container{border:1px solid var(--border-color);width:min(90vw,420px);-webkit-backdrop-filter:blur(var(--glass-blur));background:#0f121cbf;border-radius:20px;flex-direction:column;gap:20px;padding:24px;display:flex;box-shadow:0 20px 40px #00000080,inset 0 0 0 1px #ffffff08}.theme-modal-header{justify-content:space-between;align-items:center;display:flex}.theme-modal-header h2{font-family:var(--font-display);color:var(--text-main);background:linear-gradient(135deg, #fff 30%, var(--primary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:22px;font-weight:700}.theme-modal-close-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.theme-modal-close-btn:hover{color:var(--text-main);background:#ffffff0d}.theme-list{flex-direction:column;gap:12px;display:flex}.theme-option-card{cursor:pointer;will-change:transform, border-color, background;background:#ffffff05;border:1px solid #ffffff0d;border-radius:12px;justify-content:space-between;align-items:center;padding:14px 18px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.theme-option-card:hover{background:#ffffff0d;border-color:#ffffff1f;transform:translateY(-2px)}.theme-option-card.active{border-color:var(--primary);box-shadow:0 0 15px var(--primary-glow);background:#ffffff14}.theme-info-wrapper{align-items:center;gap:14px;display:flex}.theme-color-preview{border:1.5px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex;position:relative;overflow:hidden}.theme-color-preview:after{content:"";background:var(--theme-preview-accent);position:absolute;inset:0 0 0 50%}.theme-name{font-family:var(--font-sans);color:var(--text-main);font-size:15px;font-weight:500}.theme-option-card.active .theme-name{font-weight:600}.theme-active-dot{background:var(--primary);width:8px;height:8px;box-shadow:0 0 8px var(--primary);border-radius:50%}@keyframes viewFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.view-animate-in{animation:.35s cubic-bezier(.34,1.56,.64,1) forwards viewFadeIn}.app-brand-logo{object-fit:contain;filter:drop-shadow(0 0 10px #00e5ff73);width:32px;height:32px}.auth-brand-logo{object-fit:contain;filter:drop-shadow(0 0 16px #00e5ff8c);width:56px;height:56px;margin-bottom:8px}.splash-brand-logo{object-fit:contain;filter:drop-shadow(0 0 24px #00e5ffa6);width:84px;height:84px}.recently-liked-card:hover{transform:translateY(-3px);background:#ffffff0f!important;border-color:#ef444466!important}
