:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#09090b;--surface:#101014;--sidebar-bg:#0c0c10;--card:#131318;--card-hover:#1c1c24;--player-bg:#111115;--hover:#ffffff0f;--text:#f4f4f7;--secondary:#a1a1aa;--muted:#71717a;--accent:#a78bfa;--accent-light:#c4b5fd;--accent-glow:#a78bfa40;--cyan:#67e8f9;--border:#ffffff14;--border-subtle:#ffffff0a;--border-strong:#ffffff24;--sidebar-w:240px;--player-h:78px;--header-h:60px;--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);--sar:env(safe-area-inset-right,0px);font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:DM Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}*,:before,:after{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;touch-action:manipulation;height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;min-width:320px;min-height:100%;margin:0;padding:0;overflow-x:hidden}h1,h2,h3,h4,.brand-name,.eyebrow{letter-spacing:-.02em;font-family:Manrope,DM Sans,system-ui,sans-serif}button,input{font:inherit;color:inherit;touch-action:manipulation;background:0 0;border:0;margin:0;padding:0}button,input,select,textarea,a,.filter-chip,.track-row,.card,.icon-btn,.pill{touch-action:manipulation}@media screen and (width<=768px){input,select,textarea,.big-search input,.auth-form input,.dialog input{font-size:16px!important}}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#23232b;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#353540}.icon-btn{width:34px;height:34px;color:var(--secondary);border-radius:50%;flex-shrink:0;place-items:center;transition:all .16s;display:inline-grid}.icon-btn:hover{background:var(--hover);color:var(--text)}.icon-btn.active{color:var(--accent)}.primary-btn{color:#111116;background:#fff;border-radius:99px;justify-content:center;align-items:center;gap:7px;height:38px;padding:0 16px;font-size:13px;font-weight:700;transition:all .16s;display:inline-flex;box-shadow:0 3px 12px #ffffff26}.primary-btn:hover{background:#f4f0ff;transform:translateY(-1px);box-shadow:0 5px 16px #a78bfa40}.primary-btn.small{border-radius:9px;height:34px;padding:0 13px;font-size:12px}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:800;display:block}.cover{background-color:#17171d;background-image:url(/assets/album-atlas.png);background-repeat:no-repeat;background-size:400% 200%;flex-shrink:0;position:relative;overflow:hidden}.cover-0{background-position:0 0}.cover-1{background-position:33.333% 0}.cover-2{background-position:66.666% 0}.cover-3{background-position:100% 0}.cover-4{background-position:0 100%}.cover-5{background-position:33.333% 100%}.cover-6{background-position:66.666% 100%}.cover-7{background-position:100% 100%}.youtube-cover{background-position:50%;background-repeat:no-repeat;background-size:cover}.app-shell{background:var(--bg);width:100%;min-height:100vh;display:flex;position:relative}.sidebar{width:var(--sidebar-w);height:calc(100vh - var(--player-h));background:var(--sidebar-bg);border-right:1px solid var(--border);z-index:30;flex-direction:column;flex-shrink:0;padding:22px 14px 14px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;padding:0 8px 20px;display:flex}.brand-mark{color:#100b1d;width:30px;height:30px;box-shadow:0 3px 10px var(--accent-glow);background:linear-gradient(135deg,#c4b5fd,#8b5cf6);border-radius:8px;place-items:center;display:grid}.brand-name{letter-spacing:-.03em;color:var(--text);font-size:18px;font-weight:800}.primary-nav,.minor-nav{flex-direction:column;gap:3px;display:flex}.primary-nav button,.minor-nav button{color:var(--secondary);text-align:left;border-radius:8px;align-items:center;gap:12px;padding:9px 12px;font-size:13.5px;font-weight:600;transition:all .15s;display:flex;position:relative}.primary-nav button:hover,.minor-nav button:hover{background:var(--hover);color:var(--text)}.primary-nav button.selected{color:var(--accent-light);background:#a78bfa1f;font-weight:700}.primary-nav button.selected:before{content:"";background:var(--accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:7px;bottom:7px;left:0}.nav-divider{background:var(--border-subtle);height:1px;margin:14px 8px}.nav-label{letter-spacing:.1em;color:var(--muted);text-transform:uppercase;margin:12px 10px 6px;font-size:10px;font-weight:800}.nav-label.row{justify-content:space-between;align-items:center;display:flex}.mini-add-pl{width:20px;height:20px;color:var(--muted);border-radius:4px;place-items:center;transition:all .15s;display:grid}.mini-add-pl:hover{color:var(--text);background:var(--hover)}.sidebar-playlists-wrap{flex-direction:column;flex:1;min-height:0;display:flex}.sidebar-playlists{margin-top:4px;padding-right:4px;overflow-y:auto}.sidebar-playlists>button{text-align:left;color:#888894;white-space:nowrap;text-overflow:ellipsis;border-radius:6px;width:100%;padding:6px 10px;font-size:12.5px;transition:color .15s;display:block;overflow:hidden}.sidebar-playlists>button:hover{color:var(--text);background:var(--hover)}.profile-card{border-top:1px solid var(--border-subtle);text-align:left;border-radius:8px;align-items:center;gap:10px;width:100%;margin-top:auto;padding:12px 6px 0;transition:background .15s;display:flex}.profile-card:hover{background:var(--hover)}.avatar{color:#110d18;background:linear-gradient(135deg,#c4b5fd,#7c3aed);border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:12.5px;font-weight:800;display:grid}.profile-info{flex:1;min-width:0}.profile-info strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:700;display:block;overflow:hidden}.profile-info span{color:var(--muted);margin-top:1px;font-size:10px;display:block}.profile-more{color:var(--muted);flex-shrink:0}.content-shell{min-width:0;padding-bottom:calc(var(--player-h) + 64px);flex-direction:column;flex:1;display:flex}.page{width:100%;max-width:1480px;margin:0 auto;padding:0 clamp(20px,3.5vw,44px) 36px}.topbar{height:var(--header-h);z-index:25;-webkit-backdrop-filter:blur(20px)saturate(180%);border-bottom:1px solid var(--border-subtle);background:#09090bc7;justify-content:space-between;align-items:center;gap:16px;margin:0 calc(-1*clamp(20px,3.5vw,44px)) 20px;padding:0 clamp(20px,3.5vw,44px);display:flex;position:sticky;top:0}.topbar-left{flex:1;min-width:0}.topbar-left .eyebrow{margin-bottom:2px}.topbar-left h1{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:clamp(18px,1.8vw,24px);font-weight:700;overflow:hidden}.top-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.search-shortcut{border:1px solid var(--border);width:230px;height:36px;color:var(--secondary);background:#ffffff0d;border-radius:99px;align-items:center;gap:8px;padding:0 12px;font-size:12.5px;transition:all .16s;display:flex}.search-shortcut:hover{border-color:var(--border-strong);color:var(--text);background:#ffffff14}.search-shortcut span{text-align:left;white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.search-shortcut kbd{border:1px solid var(--border);color:var(--muted);background:#ffffff14;border-radius:4px;padding:2px 5px;font-size:10px;font-weight:600}.top-actions>.icon-btn{border:1px solid var(--border)}.top-avatar{color:#fff;background:linear-gradient(135deg,#a78bfa,#6366f1);border:1px solid #ffffff1f;border-radius:50%;place-items:center;width:34px;height:34px;font-size:11.5px;font-weight:700;transition:transform .15s;display:grid}.top-avatar:hover{transform:scale(1.05)}.mood-filter-bar{scrollbar-width:none;align-items:center;gap:8px;margin:10px 0 20px;padding-bottom:4px;display:flex;overflow-x:auto}.mood-filter-bar::-webkit-scrollbar{display:none}.mood-pill{color:var(--secondary);white-space:nowrap;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff12;border-radius:99px;padding:6px 14px;font-size:12px;font-weight:600;transition:all .16s}.mood-pill:hover{color:var(--text);background:#ffffff17}.mood-pill.active{color:#0c0c10;background:#fff;border-color:#fff;font-weight:700;box-shadow:0 2px 10px #00000059}.content-section{margin:30px 0}.section-heading{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.section-heading h2{margin:0;font-size:19px;font-weight:700}.section-action{color:var(--muted);cursor:default;font-size:12px;font-weight:600}.card-scroller{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;display:grid}.album-card{background:var(--card);border:1px solid var(--border-subtle);scroll-snap-align:start;cursor:pointer;border-radius:12px;flex-direction:column;padding:12px;transition:all .2s cubic-bezier(.2,.8,.2,1);display:flex}.album-card:hover{background:var(--card-hover);border-color:#ffffff17;transform:translateY(-4px);box-shadow:0 10px 24px #00000073}.album-art-wrap{aspect-ratio:1;background:#17171d;border-radius:8px;width:100%;position:relative;overflow:hidden;box-shadow:0 4px 14px #0000004d}.album-art{width:100%;height:100%;transition:transform .28s}.album-card:hover .album-art{transform:scale(1.05)}.floating-play{color:#100b16;opacity:0;z-index:2;background:#fff;border-radius:50%;place-items:center;width:38px;height:38px;transition:all .2s cubic-bezier(.2,.8,.2,1);display:grid;position:absolute;bottom:8px;right:8px;transform:translateY(6px);box-shadow:0 6px 16px #00000080}.album-card:hover .floating-play,.library-card:hover .floating-play{opacity:1;transform:translateY(0)}.floating-play:hover{background:#f4f0ff;transform:scale(1.08)!important}.album-card h3{white-space:nowrap;text-overflow:ellipsis;color:var(--text);margin:10px 0 2px;font-size:13.5px;font-weight:700;overflow:hidden}.album-card p{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:11.5px;line-height:1.4;overflow:hidden}.split-section{grid-template-columns:minmax(0,1.2fr) minmax(380px,.95fr);align-items:stretch;gap:22px;margin:10px 0 20px;display:grid}.split-left,.split-right{flex-direction:column;min-width:0;display:flex}.split-section .content-section{flex-direction:column;height:100%;margin:0;display:flex}.tracks-twin-grid{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.mood-card{border:1px solid var(--border);background:#14141a;border-radius:16px;height:100%;min-height:270px;position:relative;overflow:hidden;box-shadow:0 10px 30px #00000059}.mood-card-bg{filter:brightness(.4)saturate(1.2);width:100%;height:100%;transition:transform .4s;position:absolute;inset:0}.mood-card:hover .mood-card-bg{transform:scale(1.05)}.mood-card-overlay{pointer-events:none;background:linear-gradient(#09090c26 0%,#09090ce0 85%);position:absolute;inset:0}.mood-card-inner{z-index:2;flex-direction:column;align-items:flex-start;display:flex;position:absolute;bottom:24px;left:24px;right:24px}.mood-badge{color:#c4b5fd;letter-spacing:.08em;background:#a78bfa29;border:1px solid #a78bfa4d;border-radius:99px;align-items:center;gap:5px;margin-bottom:8px;padding:4px 10px;font-size:10px;font-weight:800;display:inline-flex}.mood-card-inner h3{color:#fff;margin:0 0 6px;font-size:24px;font-weight:800;line-height:1.15}.mood-card-inner p{color:#b8b8c4;max-width:320px;margin:0 0 16px;font-size:12.5px;line-height:1.45}.mood-play-btn{color:#100b18;background:#fff;border-radius:99px;align-items:center;gap:8px;height:40px;padding:0 18px;font-size:12.5px;font-weight:800;transition:all .18s;display:inline-flex;box-shadow:0 4px 16px #00000073}.mood-play-btn:hover{background:#f4f0ff;transform:scale(1.05)}.track-list{flex-direction:column;gap:2px;display:flex}.track-row{cursor:pointer;border-radius:8px;grid-template-columns:32px 42px minmax(140px,1.6fr) minmax(110px,1fr) 34px 44px 34px;align-items:center;gap:12px;height:52px;padding:0 10px;transition:background .14s;display:grid;position:relative}.track-row:hover{background:var(--hover)}.track-row.is-active{background:#a78bfa14}.track-index{width:30px;height:30px;color:var(--muted);font-variant-numeric:tabular-nums;place-items:center;font-size:12px;font-weight:600;display:grid}.track-play-icon{color:var(--text);display:none}.track-row:hover .track-number{display:none}.track-row:hover .track-play-icon{display:block}.track-row.is-active .track-play-icon{color:var(--accent-light);display:block}.track-row.is-active .track-number{display:none}.track-cover{border-radius:6px;width:40px;height:40px;box-shadow:0 2px 8px #00000040}.track-meta{flex-direction:column;justify-content:center;min-width:0;display:flex}.track-meta strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.track-meta strong.playing-title{color:var(--accent-light)}.track-meta span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:11.5px;overflow:hidden}.track-row:hover .track-meta span{color:var(--secondary)}.track-album{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.track-row:hover .track-album{color:var(--secondary)}.tiny-like{width:32px;height:32px;color:var(--muted);border-radius:50%;place-items:center;transition:all .14s;display:grid}.tiny-like:hover{color:var(--text)}.tiny-like.liked{color:var(--accent)}.track-time{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;font-size:11.5px}.track-more-btn{width:30px;height:30px;color:var(--muted)}.track-more-btn:hover{color:var(--text)}.track-list.compact .track-row{grid-template-columns:22px 36px minmax(0,1fr) 26px 36px 26px;gap:7px;height:50px;padding:0 6px}.track-list.compact .track-cover{width:36px;height:36px}.track-list.compact .track-album{display:none!important}.track-list.compact .track-meta strong{font-size:13px}.track-list.compact .track-meta span{font-size:11px}.player-bar{z-index:50;height:var(--player-h);background:var(--player-bg);border-top:1px solid var(--border);grid-template-columns:280px 1fr 280px;align-items:center;padding:0 20px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #0000008c}.player-left{min-width:0}.now-mini{cursor:pointer;align-items:center;gap:11px;min-width:0;display:flex}.now-mini-cover{border-radius:7px;width:48px;height:48px;box-shadow:0 3px 10px #0006}.now-mini-meta{flex:1;min-width:0}.now-mini-meta strong{white-space:nowrap;text-overflow:ellipsis;color:var(--text);font-size:13px;font-weight:600;display:block;overflow:hidden}.now-mini-meta span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:11px;display:block;overflow:hidden}.player-like-btn{width:32px;height:32px;color:var(--muted);border-radius:50%;flex-shrink:0;place-items:center;transition:all .15s;display:grid}.player-like-btn:hover{color:var(--text)}.player-like-btn.liked{color:var(--accent)}.player-center{flex-direction:column;align-items:center;gap:3px;padding:0 8px;display:flex}.core-controls{align-items:center;gap:8px;display:flex}.play-main{color:#111116;background:#fff;border-radius:50%;place-items:center;width:36px;height:36px;margin:0 4px;transition:all .16s;display:grid;box-shadow:0 2px 8px #0000004d}.play-main:hover{background:#f4f0ff;transform:scale(1.08)}.play-main:active{transform:scale(.96)}.spinner{border:2px solid #222;border-top-color:#0000;border-radius:50%;width:15px;height:15px;animation:.7s linear infinite spin}.progress-wrap{align-items:center;gap:9px;width:min(100%,520px);display:flex}.progress-wrap span{font-variant-numeric:tabular-nums;color:var(--muted);width:32px;font-size:10.5px}.progress-wrap .time-cur{text-align:right}.progress-wrap .time-total{text-align:left}.progress-bar-container{flex:1;align-items:center;display:flex}.progress-wrap input,.volume{appearance:none;background:linear-gradient(90deg, #f4f4f7 var(--value,0%), #2c2c34 var(--value,0%));cursor:pointer;border-radius:4px;flex:1;height:4px;transition:height .15s}.progress-wrap:hover input{background:linear-gradient(90deg, var(--accent) var(--value,0%), #353540 var(--value,0%));height:5px}.progress-wrap input::-webkit-slider-thumb{appearance:none;opacity:0;background:#fff;border-radius:50%;width:11px;height:11px;transition:opacity .15s,transform .15s;box-shadow:0 1px 4px #00000080}.volume::-webkit-slider-thumb{appearance:none;opacity:0;background:#fff;border-radius:50%;width:11px;height:11px;transition:opacity .15s,transform .15s;box-shadow:0 1px 4px #00000080}.progress-wrap:hover input::-webkit-slider-thumb{opacity:1}.volume:hover::-webkit-slider-thumb{opacity:1}.player-right{justify-content:flex-end;align-items:center;gap:6px;display:flex}.volume-control{align-items:center;gap:3px;display:flex}.volume{background:linear-gradient(90deg, #f4f4f7 var(--value,72%), #2c2c34 var(--value,72%));flex:none;width:84px}.volume:hover{background:linear-gradient(90deg, var(--accent) var(--value,72%), #353540 var(--value,72%))}.queue-trigger-btn{position:relative}.queue-badge{background:var(--accent);color:#100b1a;border-radius:50%;place-items:center;width:14px;height:14px;font-size:8.5px;font-weight:800;display:grid;position:absolute;top:3px;right:3px}.search-header{max-width:800px;padding:6px 0 24px}.search-header h1{margin:4px 0 20px;font-size:clamp(26px,3.4vw,40px);font-weight:800}.big-search{border:1px solid var(--border-strong);background:#ffffff0d;border-radius:12px;align-items:center;gap:10px;height:48px;padding:0 16px;transition:all .2s;display:flex}.big-search:focus-within{background:#ffffff14;border-color:#a78bfa99;box-shadow:0 0 0 3px #a78bfa1f}.big-search input{color:#fff;background:0 0;border:0;outline:0;flex:1;font-size:14.5px}.big-search input::placeholder{color:var(--muted)}.big-search kbd{border:1px solid var(--border);color:var(--muted);background:#ffffff14;border-radius:4px;padding:2px 6px;font-size:10.5px}.genre-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;display:grid}.genre{border:1px solid var(--border-subtle);text-align:left;cursor:pointer;border-radius:12px;height:100px;padding:14px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.genre:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0006}.genre span{z-index:2;color:#fff;font-size:16px;font-weight:800;position:relative}.genre .cover{border-radius:7px;width:80px;height:80px;position:absolute;bottom:-12px;right:-8px;transform:rotate(20deg);box-shadow:0 6px 18px #0000008c}.empty-state{border:1px dashed var(--border-strong);text-align:center;color:var(--muted);border-radius:14px;padding:48px 20px}.empty-state h3{color:#e4e4e7;margin:12px 0 5px;font-size:16px}.empty-state p{margin:0;font-size:12.5px}.empty-state.large{margin-top:36px}.library-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin:6px 0 20px;display:flex}.segmented{border:1px solid var(--border);background:#111116;border-radius:10px;gap:3px;padding:3px;display:flex}.segmented button{color:var(--secondary);border-radius:7px;padding:6px 14px;font-size:12px;font-weight:700;transition:all .15s}.segmented button:hover{color:var(--text)}.segmented button.active{color:#fff;background:#23232c;box-shadow:0 2px 6px #00000059}.library-actions{align-items:center;gap:8px;display:flex}.select-btn{border:1px solid var(--border);height:34px;color:var(--secondary);background:#ffffff08;border-radius:8px;align-items:center;gap:6px;padding:0 12px;font-size:11.5px;display:flex}.select-btn:hover{background:var(--hover);color:var(--text)}.library-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px;display:grid}.library-card,.create-card{background:var(--card);border:1px solid var(--border-subtle);text-align:left;border-radius:12px;flex-direction:column;padding:12px;transition:all .2s;display:flex;position:relative}.library-card:hover{background:var(--card-hover);border-color:var(--border);transform:translateY(-3px);box-shadow:0 8px 22px #0006}.library-cover-wrap{aspect-ratio:1;background:#17171d;border-radius:8px;width:100%;position:relative;overflow:hidden}.library-cover{width:100%;height:100%}.library-meta{min-width:0;margin-top:9px}.library-meta h3{white-space:nowrap;text-overflow:ellipsis;margin:0 0 2px;font-size:13.5px;font-weight:700;overflow:hidden}.library-meta p{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:11px;overflow:hidden}.delete-pl{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:28px;height:28px;color:var(--secondary);opacity:0;z-index:3;background:#09090ccc;border-radius:50%;place-items:center;transition:all .16s;display:grid;position:absolute;top:16px;right:16px}.delete-pl:hover{color:#fff;background:#ef4444d9}.library-card:hover .delete-pl{opacity:1}.create-card{text-align:center;border:1px dashed var(--border-strong);cursor:pointer;justify-content:center;align-items:center;min-height:200px}.create-card:hover{border-color:var(--accent);background:#ffffff0a}.create-icon{border:1px solid var(--border);width:44px;height:44px;color:var(--text);background:#ffffff0a;border-radius:50%;place-items:center;margin-bottom:10px;display:grid}.create-card strong{color:#e4e4e7;font-size:13.5px}.create-card small{color:var(--muted);margin-top:3px;font-size:11px}.liked-hero{background:linear-gradient(135deg,#4c1d95,#1e1136);border-radius:16px;align-items:flex-end;gap:18px;height:160px;margin-bottom:22px;padding:22px;display:flex;box-shadow:0 10px 30px #4c1d9559}.liked-hero-icon{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#c4b5fd;background:#ffffff1a;border-radius:14px;flex-shrink:0;place-items:center;width:58px;height:58px;display:grid}.liked-hero-info{flex:1;min-width:0}.liked-hero-info h2{margin:3px 0 1px;font-size:clamp(22px,3vw,32px);font-weight:800}.liked-hero-info p{color:#d8b4fe;margin:0;font-size:12px}.liked-play-btn{color:#1a102f;background:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:46px;height:46px;transition:transform .16s;display:grid;box-shadow:0 6px 20px #0006}.liked-play-btn:hover{transform:scale(1.08)}.scrim{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000000a6;animation:.2s fadeIn;position:fixed;inset:0}.queue-drawer{z-index:110;border-left:1px solid var(--border);background:#101015;flex-direction:column;width:min(400px,92vw);padding:22px;animation:.25s cubic-bezier(.2,.8,.2,1) slideInRight;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-10px 0 35px #00000080}.queue-drawer header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.queue-drawer h2{margin:2px 0 0;font-size:21px}.drawer-close-btn{width:32px;height:32px;color:var(--secondary);background:#ffffff0f;border-radius:50%;place-items:center;transition:all .15s;display:grid}.drawer-close-btn:hover{color:#fff;background:#ffffff1f}.queue-now{border:1px solid var(--border);background:#ffffff0d;border-radius:10px;align-items:center;gap:11px;margin-bottom:14px;padding:10px;display:flex}.queue-now-cover{border-radius:7px;width:48px;height:48px}.queue-now-meta{flex:1;min-width:0}.queue-now-meta span{letter-spacing:.1em;color:var(--accent);font-size:8.5px;font-weight:800;display:block}.queue-now-meta strong{white-space:nowrap;text-overflow:ellipsis;margin:2px 0 1px;font-size:13px;display:block;overflow:hidden}.queue-now-meta small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;display:block;overflow:hidden}.queue-label{letter-spacing:.08em;color:var(--muted);justify-content:space-between;align-items:center;margin:10px 2px 6px;font-size:10px;font-weight:800;display:flex}.queue-label button{color:var(--secondary);font-size:10.5px}.queue-label button:hover{color:#fff}.queue-source{letter-spacing:.1em;color:var(--accent);padding:10px 4px 5px;font-size:8.5px;font-weight:800}.queue-source.auto{color:var(--cyan);border-top:1px solid var(--border-subtle);margin-top:8px}.queue-list{flex:1;padding-right:4px;overflow-y:auto}.queue-item{border-radius:8px;align-items:center;gap:9px;padding:6px 8px;transition:background .14s;display:flex}.queue-item:hover{background:#ffffff0d}.queue-item.is-dragging{box-shadow:inset 2px 0 var(--accent);background:#a78bfa26}.queue-item .drag{color:#484852;cursor:grab;touch-action:none;place-items:center;display:grid}.queue-cover{border-radius:6px;width:36px;height:36px}.queue-meta{text-align:left;flex:1;min-width:0}.queue-meta strong{white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.queue-meta span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:10.5px;display:block;overflow:hidden}.queue-remove{color:#555562;border-radius:4px;place-items:center;width:26px;height:26px;display:grid}.queue-remove:hover{color:#fff}.queue-empty{text-align:center;color:var(--muted);padding:28px 12px;font-size:11.5px}.eq-panel{z-index:110;border-left:1px solid var(--border);background:#101015;width:min(420px,94vw);padding:24px;animation:.25s cubic-bezier(.2,.8,.2,1) slideInRight;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-10px 0 35px #00000080}.eq-panel header{justify-content:space-between;align-items:center;display:flex}.eq-panel h2{margin:2px 0 0;font-size:21px}.eq-desc{color:var(--secondary);margin:12px 0 16px;font-size:11.5px;line-height:1.5}.eq-dropdown-container{flex-direction:column;gap:6px;margin:14px 0 10px;display:flex;position:relative}.eq-dropdown-label{color:var(--muted);letter-spacing:.6px;text-transform:uppercase;font-size:11px;font-weight:700}.eq-dropdown-trigger{border:1px solid var(--border-strong);color:#fff;cursor:pointer;background:#141419;border-radius:9px;justify-content:space-between;align-items:center;width:100%;padding:10px 14px;font-size:14px;font-weight:600;transition:all .15s;display:flex}.eq-dropdown-trigger:hover,.eq-dropdown-trigger.is-open{background:#1a1a22;border-color:#556}.eq-dropdown-trigger .eq-arrow{color:var(--secondary);transition:transform .2s}.eq-dropdown-trigger .eq-arrow.rotate{transform:rotate(180deg)}.eq-dropdown-menu{z-index:60;background:#141419;border:1px solid #2e2e38;border-radius:9px;flex-direction:column;gap:1px;max-height:270px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 16px 36px #000000b3}.eq-dropdown-menu::-webkit-scrollbar{width:7px}.eq-dropdown-menu::-webkit-scrollbar-track{background:#141419}.eq-dropdown-menu::-webkit-scrollbar-thumb{background:#3e3e4a;border-radius:999px}.eq-dropdown-menu::-webkit-scrollbar-thumb:hover{background:#556}.eq-dropdown-item{color:#e4e4e7;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:space-between;align-items:center;width:100%;padding:8px 12px;font-size:13.5px;transition:background .1s,color .1s;display:flex}.eq-dropdown-item:hover:not(.selected){color:#fff;background:#ffffff12}.eq-dropdown-item.selected{color:#0b1329;background:#90caf9;font-weight:700}.eq-reset-row{justify-content:flex-end;margin:4px 0 16px;display:flex}.eq-reset-btn{border:1px solid var(--border-subtle);color:var(--secondary);cursor:pointer;background:#ffffff0f;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:600;transition:all .15s}.eq-reset-btn:hover{color:var(--text);background:#ffffff1f}.eq-sliders{justify-content:space-around;align-items:center;height:230px;margin:24px 0 16px;display:flex}.eq-sliders label{color:var(--secondary);flex-direction:column;align-items:center;gap:10px;font-size:9.5px;display:flex}.eq-gain-val{font-variant-numeric:tabular-nums;color:var(--text);min-height:14px;font-weight:700}.eq-sliders input{appearance:none;writing-mode:vertical-lr;cursor:pointer;direction:rtl;background:#2b2b33;border-radius:4px;width:4px;height:150px}.eq-sliders input::-webkit-slider-thumb{appearance:none;border:3px solid var(--accent);background:#fff;border-radius:50%;width:15px;height:15px}.eq-sliders small{color:var(--muted);font-size:9px}.crossfade-setting{border-top:1px solid var(--border);padding:16px 0 12px}.crossfade-title{justify-content:space-between;align-items:center;gap:14px;display:flex}.crossfade-title strong{font-size:12.5px;display:block}.crossfade-title span{color:var(--muted);margin-top:2px;font-size:10.5px;display:block}.crossfade-title b{color:var(--accent-light);white-space:nowrap;font-size:12.5px}.crossfade-setting input{appearance:none;background:linear-gradient(90deg, var(--accent) var(--crossfade,0%), #2b2b33 0);cursor:pointer;border-radius:4px;width:100%;height:4px;margin:14px 0 8px}.crossfade-setting input::-webkit-slider-thumb{appearance:none;border:3px solid var(--accent);background:#fff;border-radius:50%;width:15px;height:15px}.crossfade-scale{color:var(--muted);justify-content:space-between;font-size:9.5px;display:flex}.eq-tip{color:#8cdce8;background:#67e8f90f;border:1px solid #67e8f91f;border-radius:10px;gap:9px;margin-top:12px;padding:11px 13px;display:flex}.eq-tip strong{font-size:11.5px;display:block}.eq-tip span{color:#72b2bd;margin-top:1px;font-size:10.5px;line-height:1.4;display:block}.modal-panel{z-index:120;border:1px solid var(--border-strong);background:#121217;border-radius:18px;width:min(400px,100vw - 32px);max-height:min(680px,100vh - 32px);padding:26px;animation:.2s cubic-bezier(.2,.8,.2,1) scaleIn;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 20px 70px #000000a6}.modal-close{width:32px;height:32px;color:var(--secondary);background:#ffffff0f;border-radius:50%;place-items:center;display:grid;position:absolute;top:16px;right:16px}.modal-close:hover{color:#fff;background:#ffffff1f}.auth-brand{align-items:center;gap:10px;margin-bottom:20px;display:flex}.auth-brand strong{font-size:17px;font-weight:800;display:block}.auth-brand span{color:var(--muted);margin-top:1px;font-size:11px;display:block}.account-modal h2{margin:0 0 5px;font-size:21px}.modal-sub{color:var(--secondary);margin:0 0 18px;font-size:12px;line-height:1.45}.auth-form{flex-direction:column;gap:12px;display:flex}.auth-form label{color:var(--secondary);font-size:11px;font-weight:600}.auth-form input{border:1px solid var(--border);color:#fff;background:#0a0a0e;border-radius:9px;width:100%;height:42px;margin-top:5px;padding:0 12px;font-size:13px;display:block}.auth-form input:focus{border-color:#a78bfa99;box-shadow:0 0 0 3px #a78bfa1a}.auth-submit{width:100%;margin-top:4px}.switch-auth{text-align:center;width:100%;color:var(--accent-light);margin-top:16px;font-size:11.5px;font-weight:600}.form-error{color:#fca5a5;background:#f871711a;border:1px solid #f8717133;border-radius:7px;padding:8px 11px;font-size:11.5px}.account-view{text-align:center}.account-avatar{color:#110d18;background:linear-gradient(135deg,#c4b5fd,#7c3aed);border-radius:50%;place-items:center;width:68px;height:68px;margin:2px auto 12px;font-size:24px;font-weight:800;display:grid}.account-view h2{margin:5px 0 2px;font-size:21px}.account-view>p{color:var(--muted);margin:0;font-size:12px}.account-stats{grid-template-columns:repeat(3,1fr);gap:7px;margin:18px 0;display:grid}.account-stats div{border:1px solid var(--border);background:#ffffff08;border-radius:9px;padding:10px 4px}.account-stats strong{font-size:17px;display:block}.account-stats span{color:var(--muted);margin-top:2px;font-size:9px;display:block}.sync-note{color:#8cdce8;background:#67e8f90f;border-radius:9px;justify-content:center;align-items:center;gap:6px;margin:0;padding:9px;font-size:11px;display:flex}.danger-btn{color:#fca5a5;background:#f871710f;border:1px solid #f8717140;border-radius:9px;justify-content:center;align-items:center;gap:7px;width:100%;height:38px;margin-top:14px;font-size:12px;font-weight:600;display:flex}.context-menu{z-index:150;border:1px solid var(--border-strong);background:#14141a;border-radius:12px;width:240px;padding:5px;animation:.14s cubic-bezier(.2,.8,.2,1) contextIn;position:fixed;box-shadow:0 14px 44px #000000a6}.context-head{border-bottom:1px solid var(--border-subtle);align-items:center;gap:9px;margin-bottom:3px;padding:6px 8px 8px;display:flex}.context-cover{border-radius:6px;width:36px;height:36px}.context-info{flex:1;min-width:0}.context-info strong{white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.context-info span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:10px;display:block;overflow:hidden}.context-menu>button{width:100%;height:32px;color:var(--secondary);text-align:left;border-radius:6px;align-items:center;gap:8px;padding:0 9px;font-size:11.5px;display:flex}.context-menu>button:hover{background:var(--hover);color:#fff}.context-sep{background:var(--border-subtle);height:1px;margin:3px}.context-label{letter-spacing:.08em;color:var(--muted);padding:4px 9px 2px;font-size:8.5px;font-weight:800;display:block}.toast{z-index:200;right:20px;bottom:calc(var(--player-h) + 16px);border:1px solid var(--border-strong);width:min(360px,100vw - 32px);color:var(--secondary);text-align:left;background:#181820;border-radius:10px;padding:10px 34px 10px 14px;font-size:11.5px;animation:.22s slideInUp;position:fixed;box-shadow:0 10px 28px #00000080}.toast-text span{color:#fff;margin-bottom:1px;font-weight:700;display:block}.toast-text p{margin:0;line-height:1.35}.toast-close{color:var(--muted);position:absolute;top:12px;right:10px}.now-playing{z-index:100;background:#09090b;flex-direction:column;animation:.28s cubic-bezier(.2,.8,.2,1) revealUp;display:flex;position:fixed;inset:0;overflow-y:auto}.now-playing>.ambient{opacity:.35;filter:blur(80px)saturate(160%)brightness(.65);pointer-events:none;position:fixed;inset:-20%;transform:scale(1.15)}.now-playing:after{content:"";pointer-events:none;background:#070709a6;position:fixed;inset:0}.now-playing header{z-index:2;height:60px;padding:0 20px;padding-top:var(--sat);grid-template-columns:44px 1fr 44px;align-items:center;display:grid;position:relative}.now-close-btn,.now-queue-btn{width:38px;height:38px;color:var(--text);background:#ffffff12;border-radius:50%;place-items:center;display:grid}.now-close-btn:hover,.now-queue-btn:hover{background:#ffffff24}.now-queue-btn{justify-self:end}.now-header-title{text-align:center}.now-header-title span{letter-spacing:.1em;color:var(--muted);font-size:9px;font-weight:800;display:block}.now-header-title strong{white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:12px;display:block;overflow:hidden}.now-content{z-index:2;width:min(90vw,420px);padding:12px 0 calc(28px + var(--sab));flex-direction:column;margin:auto;display:flex;position:relative}.now-art-box{justify-content:center;width:100%;margin-bottom:20px;display:flex}.now-art{aspect-ratio:1;border-radius:14px;width:min(68vw,32vh,290px);box-shadow:0 20px 50px #000000a6}.now-lyrics-box{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);text-align:center;background:#ffffff0a;border:1px solid #ffffff14;border-radius:16px;justify-content:center;align-items:center;width:100%;height:min(68vw,32vh,290px);margin-bottom:20px;padding:24px;display:flex}.lyrics-empty{flex-direction:column;align-items:center;gap:8px;display:flex}.lyrics-icon{color:var(--accent);opacity:.85;margin-bottom:4px}.lyrics-empty h3{color:var(--text);margin:0;font-size:16px;font-weight:700}.lyrics-empty p{color:var(--secondary);margin:0;font-size:12.5px}.lyrics-empty span{color:var(--muted);font-size:11px}.now-details{justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.now-text{flex:1;min-width:0}.now-text h2{white-space:nowrap;text-overflow:ellipsis;margin:0 0 3px;font-size:clamp(19px,3vw,25px);font-weight:800;overflow:hidden}.now-text p{color:var(--secondary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:13px;overflow:hidden}.now-like-btn{width:40px;height:40px}.now-content .progress-wrap.wide{width:100%;margin-bottom:14px}.now-content .core-controls.large{justify-content:space-between;width:100%;margin-bottom:20px}.now-content .core-controls.large .play-main{width:56px;height:56px}.now-extras{border-top:1px solid var(--border-subtle);justify-content:space-around;padding-top:16px;display:flex}.now-extras button{color:var(--secondary);border-radius:7px;align-items:center;gap:5px;padding:5px 10px;font-size:11px;display:flex}.now-extras button:hover,.now-extras button.active{color:#fff;background:var(--hover)}.mobile-mini,.bottom-nav{display:none}@media (width<=1100px) and (width>=769px){.card-scroller{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.split-section{grid-template-columns:1fr;gap:20px}.tracks-twin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.mood-card{min-height:200px}}@media (width<=960px) and (width>=769px){.track-album{display:none!important}.track-row{grid-template-columns:28px 38px minmax(0,1fr) 30px 40px 30px;gap:8px}.track-list.compact .track-row{grid-template-columns:24px 36px minmax(0,1fr) 28px 38px 28px;gap:8px}}@media (width<=768px){:root{--sidebar-w:0px;--player-h:0px;--header-h:54px}.sidebar,.player-bar{display:none!important}.content-shell{padding-bottom:calc(136px + var(--sab))}.page{padding:0 16px 28px}.topbar{height:calc(var(--header-h) + var(--sat));padding-top:var(--sat);margin:0 -16px 16px;padding-left:16px;padding-right:16px}.topbar-left .eyebrow{display:none}.topbar-left h1{font-size:19px}.search-shortcut span,.search-shortcut kbd{display:none}.search-shortcut{justify-content:center;width:34px;height:34px;padding:0}.card-scroller{scroll-snap-type:x mandatory;grid-template-columns:none;grid-auto-columns:140px;grid-auto-flow:column;gap:12px;margin:0 -16px;padding:0 16px 6px;display:grid;overflow-x:auto}.album-card{border-radius:11px;padding:9px}.floating-play{opacity:1;width:32px;height:32px;bottom:6px;right:6px;transform:none}.split-section{grid-template-columns:1fr;gap:18px}.tracks-twin-grid{grid-template-columns:1fr;gap:2px}.mood-card{min-height:190px}.mood-card-inner h3{font-size:19px}.mood-card-inner p{margin-bottom:12px;font-size:11px}.mood-play-btn{height:36px;padding:0 14px;font-size:11.5px}.track-row{grid-template-columns:42px minmax(0,1fr) 32px 32px;gap:9px;height:52px;padding:0 4px}.track-index,.track-album,.track-time{display:none!important}.track-cover{width:42px;height:42px}.track-meta strong{font-size:12.5px}.track-meta span{font-size:10.5px}.track-list.compact .track-row{grid-template-columns:42px minmax(0,1fr) 32px 32px;height:52px;padding:0 4px}.search-header h1{margin-bottom:14px;font-size:24px}.big-search{height:44px}.big-search kbd{display:none}.genre-grid{grid-template-columns:repeat(2,1fr);gap:10px}.genre{height:88px;padding:10px}.genre span{font-size:14px}.genre .cover{width:68px;height:68px}.library-tools{flex-direction:column;align-items:stretch;gap:8px;margin:4px 0 12px}.segmented{scrollbar-width:none;-webkit-overflow-scrolling:touch;background:0 0;border:none;gap:6px;padding:2px 0 6px;display:flex;overflow-x:auto}.segmented::-webkit-scrollbar{display:none}.segmented button{border:1px solid var(--border);color:var(--secondary);background:#ffffff0d;border-radius:99px;flex:none;padding:6px 14px;font-size:11.5px;font-weight:600}.segmented button.active{color:#09090b;background:#fff;border-color:#fff;font-weight:700}.library-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.library-actions .select-btn{border-radius:7px;height:30px;padding:0 10px;font-size:11px}.library-actions .primary-btn.small{border-radius:7px;height:30px;padding:0 12px;font-size:11px}.library-grid{flex-direction:column!important;gap:4px!important;display:flex!important}.create-card{text-align:left!important;aspect-ratio:auto!important;background:#a78bfa0a!important;border:1px dashed #a78bfa59!important;border-radius:10px!important;flex-direction:row!important;align-items:center!important;gap:12px!important;height:52px!important;min-height:52px!important;margin-bottom:2px!important;padding:6px 10px!important;display:flex!important}.create-icon{width:38px!important;min-width:38px!important;height:38px!important;color:var(--accent)!important;background:#a78bfa1f!important;border-radius:8px!important;margin:0!important}.create-card strong{font-size:13px!important;font-weight:700!important;display:block!important}.create-card small{color:var(--secondary)!important;margin:0!important;font-size:10.5px!important;display:block!important}.library-card{height:54px!important;min-height:54px!important;box-shadow:none!important;background:0 0!important;border:none!important;border-bottom:1px solid #ffffff0a!important;border-radius:10px!important;flex-direction:row!important;align-items:center!important;gap:12px!important;padding:6px 8px!important;display:flex!important;transform:none!important}.library-card:active{background:#ffffff0f!important}.library-cover-wrap{aspect-ratio:1!important;border-radius:6px!important;width:44px!important;min-width:44px!important;height:44px!important}.library-meta{flex:1!important;min-width:0!important;margin:0!important}.library-meta h3{margin:0 0 2px!important;font-size:13.5px!important;font-weight:600!important}.library-meta p{color:var(--secondary)!important;margin:0!important;font-size:11px!important}.floating-play{opacity:1!important;background:#ffffff14!important;border-radius:50%!important;place-items:center!important;width:32px!important;min-width:32px!important;height:32px!important;display:grid!important;position:static!important;transform:none!important}.floating-play svg{width:14px!important;height:14px!important}.delete-pl{opacity:1!important;width:30px!important;min-width:30px!important;height:30px!important;color:var(--muted)!important;background:0 0!important;place-items:center!important;display:grid!important;position:static!important}.liked-hero{border-radius:12px;gap:10px;height:84px;margin-bottom:12px;padding:12px}.liked-hero-icon{border-radius:10px;width:40px;height:40px}.liked-hero-icon svg{width:20px;height:20px}.liked-hero-info h2{margin:0;font-size:16px}.liked-hero-info .eyebrow{font-size:9px}.liked-hero-info p{margin-top:1px;font-size:10px}.liked-play-btn{width:34px;height:34px}.liked-play-btn svg{width:15px;height:15px}.artist-grid{grid-template-columns:repeat(3,1fr)!important;gap:8px!important}.artist-card{padding:4px 2px!important}.artist-meta h3{font-size:11px!important}.artist-meta p{font-size:9px!important}.mobile-mini{z-index:50;left:8px;right:8px;bottom:calc(56px + var(--sab) + 6px);border:1px solid var(--border-strong);cursor:pointer;background:#14141a;border-radius:13px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:9px;height:56px;padding:6px 9px;display:grid;position:fixed;overflow:hidden;box-shadow:0 10px 30px #000000a6}.mini-cover{border-radius:7px;width:42px;height:42px}.mini-meta{min-width:0}.mini-meta strong{white-space:nowrap;text-overflow:ellipsis;color:var(--text);font-size:12px;font-weight:600;display:block;overflow:hidden}.mini-meta span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:10px;display:block;overflow:hidden}.mini-actions{flex-shrink:0;align-items:center;gap:3px;display:flex}.mini-heart-btn{width:30px;height:30px}.mini-play{color:#100b1a;background:#fff;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.mini-progress{background:linear-gradient(90deg, var(--accent), var(--accent-light));height:2px;bottom:0;left:0;position:absolute!important}.bottom-nav{z-index:45;height:calc(54px + var(--sab));padding:3px 8px var(--sab);border-top:1px solid var(--border-subtle);background:#0d0d11;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav button{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:56px;height:46px;font-size:9.5px;font-weight:600;display:flex}.bottom-nav button.active{color:var(--accent-light)}.queue-drawer,.eq-panel{width:100%;height:min(84dvh,620px);padding:18px 14px calc(18px + var(--sab));border-width:1px 0 0;border-radius:18px 18px 0 0;animation:.26s cubic-bezier(.2,.8,.2,1) sheetUp;top:auto}.preset-grid{grid-template-columns:repeat(2,1fr)}.context-menu{border-radius:16px;padding:8px;animation:.2s cubic-bezier(.2,.8,.2,1) sheetUp;width:calc(100vw - 16px)!important;top:auto!important;left:8px!important;bottom:calc(8px + var(--sab))!important}.context-menu>button{height:40px;font-size:12.5px}.now-content{padding-bottom:calc(18px + var(--sab));margin:auto 14px}.now-art{width:min(65vw,28vh,250px)}.now-details h2{font-size:20px}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:translate(-50%,-50%)scale(.95)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes revealUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes contextIn{0%{opacity:0;transform:scale(.95)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}.playlist-page{flex-direction:column;gap:20px;padding-bottom:60px;display:flex}.playlist-back-btn{border:1px solid var(--border-subtle);color:var(--text);cursor:pointer;background:#ffffff0f;border-radius:999px;align-items:center;gap:8px;width:fit-content;padding:8px 16px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.playlist-back-btn:hover{background:#ffffff1f;transform:translate(-2px)}.playlist-hero{border-bottom:1px solid var(--border-subtle);background:linear-gradient(#a855f724 0%,#14141966 100%);border-radius:20px;align-items:flex-end;gap:28px;margin:-10px -28px 12px;padding:24px 28px 30px;display:flex}.playlist-hero-cover{background:#18181f;border-radius:16px;flex-shrink:0;width:190px;height:190px;overflow:hidden;box-shadow:0 16px 40px #00000080}.playlist-hero-cover .hero-cover-img{object-fit:cover;width:100%;height:100%}.playlist-hero-info{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.playlist-tag{letter-spacing:1px;color:var(--accent);text-transform:uppercase;font-size:11px;font-weight:800}.playlist-hero-info h1{color:var(--text);margin:0;font-size:clamp(24px,3.6vw,38px);font-weight:800;line-height:1.15}.playlist-desc{color:var(--secondary);margin:0;font-size:13.5px;line-height:1.45}.playlist-meta{color:var(--muted);align-items:center;gap:8px;margin-top:2px;font-size:12.5px;font-weight:500;display:flex}.playlist-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;display:flex}.playlist-play-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#a855f7,#6366f1);border:none;border-radius:999px;align-items:center;gap:8px;padding:10px 22px;font-size:13.5px;font-weight:700;transition:all .15s;display:inline-flex;box-shadow:0 8px 24px #a855f759}.playlist-play-btn:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 10px 28px #a855f773}.playlist-play-btn:disabled{opacity:.5;cursor:not-allowed}.playlist-btn-sec{border:1px solid var(--border-subtle);color:var(--text);cursor:pointer;background:#ffffff14;border-radius:999px;align-items:center;gap:7px;padding:9px 18px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.playlist-btn-sec:hover:not(:disabled){background:#ffffff24}.playlist-btn-sec:disabled{opacity:.5;cursor:not-allowed}.playlist-btn-danger{color:#f87171;border-color:#f8717140}.playlist-btn-danger:hover:not(:disabled){color:#ef4444;background:#f8717126}.playlist-empty-state{text-align:center;color:var(--secondary);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:60px 20px;display:flex}.playlist-empty-state h3{color:var(--text);margin:6px 0 0;font-size:18px;font-weight:700}.playlist-empty-state p{max-width:420px;color:var(--muted);margin:0;font-size:13.5px}.playlist-track-table{flex-direction:column;display:flex}.playlist-table-head{color:var(--muted);letter-spacing:.8px;border-bottom:1px solid var(--border-subtle);grid-template-columns:44px minmax(200px,3fr) minmax(140px,2fr) 90px 76px;margin-bottom:6px;padding:8px 16px;font-size:11px;font-weight:700;display:grid}.playlist-tracks-body{flex-direction:column;gap:2px;display:flex}.playlist-track-row{-webkit-user-select:none;user-select:none;border-radius:10px;grid-template-columns:44px minmax(200px,3fr) minmax(140px,2fr) 90px 76px;align-items:center;padding:8px 16px;transition:background .15s;display:grid}.playlist-track-row:hover{background:#ffffff0d}.playlist-track-row.is-active{background:#a855f71f}.playlist-track-row .track-meta{cursor:pointer;align-items:center;gap:12px;min-width:0;display:flex}.playlist-track-row .track-cover{border-radius:8px;flex-shrink:0;width:42px;height:42px}.playlist-track-row .track-info{flex-direction:column;min-width:0;display:flex}.playlist-track-row .track-info strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.playlist-track-row .track-info strong.playing-title{color:var(--accent)}.playlist-track-row .track-info span{color:var(--secondary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.track-album-name{color:var(--secondary);white-space:nowrap;text-overflow:ellipsis;padding-right:12px;font-size:13px;overflow:hidden}.track-duration-text{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12.5px}.playlist-row-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.track-action-icon{width:32px;height:32px;color:var(--secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;place-items:center;transition:all .15s;display:grid}.track-action-icon:hover{color:var(--text);background:#ffffff14}.track-remove-btn:hover{color:#f87171;background:#f8717126}.custom-modal{border:1px solid var(--border-strong);background:#141419;border-radius:20px;flex-direction:column;gap:16px;width:min(440px,100vw - 32px);padding:24px;display:flex;box-shadow:0 24px 70px #000000b3}.custom-modal.delete-modal{width:min(390px,100vw - 32px)}.custom-modal-header{padding-right:32px}.custom-modal-header h3{color:var(--text);margin:0;font-size:18px;font-weight:700}.custom-modal-body{flex-direction:column;gap:14px;display:flex}.modal-field{flex-direction:column;gap:6px;display:flex}.modal-field label{color:var(--muted);text-transform:uppercase;letter-spacing:.6px;font-size:11.5px;font-weight:700}.modal-field input,.modal-field textarea{border:1px solid var(--border-subtle);color:var(--text);resize:none;background:#ffffff0f;border-radius:10px;outline:none;padding:10px 14px;font-family:inherit;font-size:14px;transition:border-color .15s,background .15s}.modal-field input:focus,.modal-field textarea:focus{border-color:var(--accent);background:#ffffff17}.palette-selector{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:2px;display:grid}.palette-chip{aspect-ratio:1;cursor:pointer;background:0 0;border:2px solid #0000;border-radius:10px;padding:0;transition:all .15s;overflow:hidden}.palette-chip.active{border-color:#fff;transform:scale(1.05);box-shadow:0 4px 14px #a855f766}.palette-cover{border-radius:8px;width:100%;height:100%}.modal-actions{justify-content:flex-end;gap:10px;margin-top:6px;display:flex}.modal-cancel-btn{color:var(--text);cursor:pointer;background:#ffffff14;border:none;border-radius:999px;padding:9px 18px;font-size:13px;font-weight:600;transition:background .15s}.modal-cancel-btn:hover{background:#ffffff24}.modal-submit-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#a855f7,#6366f1);border:none;border-radius:999px;padding:9px 20px;font-size:13px;font-weight:700;transition:all .15s;box-shadow:0 4px 16px #a855f74d}.modal-submit-btn:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px)}.modal-submit-btn:disabled{opacity:.5;cursor:not-allowed}.modal-danger-btn{background:#ef4444;box-shadow:0 4px 16px #ef444459}.modal-danger-btn:hover{background:#dc2626}@media (width<=768px){.playlist-hero{text-align:center;flex-direction:column;align-items:center;margin:0 0 12px;padding:16px 16px 22px}.playlist-hero-cover{width:140px;height:140px}.playlist-hero-info{align-items:center}.playlist-actions{justify-content:center}.playlist-table-head{display:none}.playlist-track-row{grid-template-columns:36px 1fr 40px;gap:10px;padding:8px}.track-album-name,.track-duration-text{display:none}}.history-hero{background:linear-gradient(135deg,#38bdf82e 0%,#14141980 100%)!important;border-color:#38bdf840!important}.history-hero-icon{background:linear-gradient(135deg,#0284c7,#38bdf8)!important}.artist-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important;gap:20px!important}.artist-card{text-align:center;cursor:pointer;align-items:center}.artist-cover-wrap{aspect-ratio:1;width:100%;overflow:hidden;box-shadow:0 8px 24px #00000073;border-radius:50%!important}.artist-cover-wrap .round-avatar{width:100%;height:100%;border-radius:50%!important}.artist-meta{text-align:center;flex-direction:column;align-items:center;width:100%;display:flex}.artist-meta h3{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
