:root{--bg:#141019;--nav-accent:#c3a0f5;--nav-active:#49305f;--floating-height:73px;--floating-gap:10px;--floating-edge:16px;--floating-width:min(620px, calc(100% - 32px));--bottom-clearance:calc(120px + env(safe-area-inset-bottom,0px));--surface:#ffffff0b;--surface-hover:#ffffff13;--border:#ffffff17;--border-strong:#ffffff29;--text:#f4f4f6;--text-dim:#b5adbf;--text-faint:#a49aae;--accent:#e4572e;--accent-contrast:#fff;--radius-lg:22px;--radius-md:14px;--radius-sm:10px;--radius-pill:999px;--shadow-card:0 20px 40px -24px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,Helvetica,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}input{font:inherit}img{max-width:100%;display:block}::selection{background:color-mix(in srgb, var(--accent) 40%, transparent)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.glass{isolation:isolate;-webkit-backdrop-filter:blur(24px)saturate(180%);background:#ffffff14;border:1px solid #ffffff29;position:relative;box-shadow:inset 0 1px 1px #ffffff52,inset 0 -1px 1px #ffffff0f,0 12px 32px -12px #000000bf}.glass:after{content:"";z-index:-1;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#ffffff29,#ffffff08 35%,#0000 60%);position:absolute;inset:0}.glass-tint{background:color-mix(in srgb, var(--accent) 64%, #ffffff1a);border-color:color-mix(in srgb, var(--accent) 35%, #ffffff8c);color:#fff;box-shadow:inset 0 1px 1px #fff6, inset 0 -1px 1px #0000001f, 0 6px 16px -8px color-mix(in srgb, var(--accent) 55%, transparent)}@media (prefers-reduced-transparency:reduce){.glass{-webkit-backdrop-filter:none;background:#18181beb}}.icon-btn{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);cursor:pointer;place-items:center;width:40px;height:40px;transition:background .15s,transform .1s;display:inline-grid}.icon-btn:hover{background:var(--surface-hover)}.progress-track{border-radius:var(--radius-pill);background:#ffffff1a;height:4px;position:relative;overflow:hidden}.progress-fill{background:var(--accent);border-radius:var(--radius-pill);position:absolute;inset:0 auto 0 0}.badge{border-radius:var(--radius-pill);border:1px solid var(--border-strong);color:var(--text-dim);white-space:nowrap;align-items:center;padding:3px 10px;font-size:12px;font-weight:500;display:inline-flex}.skeleton{border-radius:var(--radius-md);background:linear-gradient(100deg,#ffffff0d 30%,#ffffff1a 50%,#ffffff0d 70%) 0 0/200% 100%;animation:1.4s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.eq{align-items:flex-end;gap:2px;height:12px;display:inline-flex}.eq span{background:currentColor;border-radius:2px;width:2.5px;animation:.9s ease-in-out infinite eq}.eq span:first-child{animation-delay:-.6s}.eq span:nth-child(2){animation-delay:-.3s}.eq span:nth-child(3){animation-delay:-.9s}@keyframes eq{0%,to{height:3px}50%{height:12px}}@media (prefers-reduced-motion:reduce){.eq span,.skeleton{animation:none}}body:has(.bar-link){--bottom-clearance:calc(208px + env(safe-area-inset-bottom,0px))}:where(a,button,input,select,summary):focus-visible{outline:2px solid var(--nav-accent);outline-offset:4px}input::placeholder{color:var(--text-dim);opacity:1}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.library-page{max-width:1160px;padding:24px 32px var(--bottom-clearance);margin:auto}.page-intro{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:38px;display:flex}.page-intro h1{letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:40px;font-weight:650;line-height:1.15}.page-intro p{color:var(--text-dim);margin:14px 0 0;font-size:14px;line-height:1.6}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.section-heading h2{letter-spacing:-.025em;margin:0;font-size:22px;font-weight:600}.section-heading>a{color:var(--nav-accent);align-items:center;gap:6px;min-height:44px;font-size:12px;display:flex}.empty-state{text-align:center;color:var(--text-dim);padding:65px 20px}.empty-state h2{color:var(--text);letter-spacing:-.02em;margin:18px 0 12px;font-size:24px;font-weight:600}.empty-state p{max-width:420px;margin:0 auto 24px;font-size:14px;line-height:1.6}.primary-button{background:var(--nav-accent);color:#20122f;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:46px;padding:12px 22px;font-size:13px;font-weight:600;display:inline-flex}.primary-button:hover{background:#d3b8fa}.text-link{font:inherit;min-height:44px;color:var(--nav-accent);cursor:pointer;background:0 0;border:0;padding:10px 0;font-size:12px}.active-filters{flex-wrap:wrap;align-items:center;gap:9px;margin:18px 0 25px;display:flex}.active-filters:empty{display:none}.filter-pill{background:var(--nav-active);color:var(--nav-accent);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:9px;min-height:44px;padding:10px 14px;font-size:12px;display:inline-flex}.inline-error{color:#f3acb6;font-size:13px}@media (width<=650px){.library-page{padding:20px 20px var(--bottom-clearance)}.page-intro{margin-bottom:28px}.page-intro h1{font-size:32px}.page-intro p{margin-top:11px;font-size:13px}.section-heading h2{font-size:20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (width>=751px){.library-page{padding-top:12px}.page-intro{margin-bottom:24px}.page-intro h1{font-size:36px}.page-intro p{margin-top:9px}.section-heading{margin-bottom:14px}.section-heading>a{min-height:32px}}body:has(.player-screen){height:100dvh;overflow:hidden}@media (width<=420px){:root{--floating-height:64px;--floating-gap:8px;--floating-edge:12px;--floating-width:calc(100% - 24px)}}@media (width<=360px){:root{--floating-height:62px;--floating-gap:6px}}.install-dialog.svelte-wh6tnt{width:min(440px,100% - 32px);max-height:calc(100dvh - 40px - env(safe-area-inset-top) - env(safe-area-inset-bottom));border:1px solid var(--border-strong);color:var(--text);background:#211a29;border-radius:16px;margin:auto;padding:32px;position:fixed;inset:0;overflow:auto}.install-dialog.svelte-wh6tnt::backdrop{background:#08050cb8}.close-install.svelte-wh6tnt{width:44px;height:44px;color:var(--text-dim);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:12px;right:12px}.close-install.svelte-wh6tnt:hover,.install-later.svelte-wh6tnt:hover{background:var(--surface-hover);color:var(--text)}.app-icon.svelte-wh6tnt{border-radius:14px;margin-bottom:24px;display:block}h2.svelte-wh6tnt{letter-spacing:-.025em;text-wrap:balance;margin:0 0 12px;font-size:26px;font-weight:650;line-height:1.2}p.svelte-wh6tnt{color:var(--text-dim);margin:0;font-size:16px;line-height:1.55}.install-steps.svelte-wh6tnt{gap:18px;margin:24px 0;padding:0;list-style:none;display:grid}.install-steps.svelte-wh6tnt li:where(.svelte-wh6tnt){color:var(--text-dim);align-items:flex-start;gap:14px;font-size:16px;line-height:1.5;display:flex}.install-steps.svelte-wh6tnt svg{color:var(--nav-accent);flex:none;margin-top:2px}strong.svelte-wh6tnt{color:var(--text);font-weight:600}.manual-guide.svelte-wh6tnt{margin-top:24px}.install-actions.svelte-wh6tnt{gap:8px;margin-top:28px;display:grid}.install-primary.svelte-wh6tnt,.install-later.svelte-wh6tnt{border-radius:var(--radius-pill);min-height:48px;font:inherit;cursor:pointer;border:0;justify-content:center;align-items:center;gap:10px;padding:12px 18px;font-size:15px;font-weight:600;display:flex}.install-primary.svelte-wh6tnt{background:var(--nav-accent);color:#20122f}.install-primary.svelte-wh6tnt:hover{background:#d3b8fa}.install-primary.svelte-wh6tnt:disabled{opacity:.6;cursor:wait}.install-later.svelte-wh6tnt{color:var(--text-dim);background:0 0}.install-note.svelte-wh6tnt{margin-top:16px;font-size:13px;line-height:1.5}.install-error.svelte-wh6tnt{color:var(--error);margin-top:16px}@media (width<=480px){.install-dialog.svelte-wh6tnt{padding:28px 24px}h2.svelte-wh6tnt{font-size:24px}}.floating-navigation.svelte-1st790j{z-index:40;bottom:calc(var(--floating-edge) + env(safe-area-inset-bottom,0px));width:var(--floating-width);height:var(--floating-height);gap:var(--floating-gap);align-items:stretch;display:flex;position:fixed;left:50%;transform:translate(-50%)}.dock.svelte-1st790j{background:#272030f0;border-radius:999px;flex:1;min-width:0;padding:6px;display:flex}.dock.svelte-1st790j a:where(.svelte-1st790j){z-index:1;min-width:0;height:100%;color:var(--text-dim);border-radius:999px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:5px;font-size:11px;font-weight:550;transition:background .18s,color .18s;display:flex;position:relative}.dock.svelte-1st790j a:where(.svelte-1st790j):hover{color:var(--text);background:#ffffff0f}.dock.svelte-1st790j a.active:where(.svelte-1st790j){background:var(--nav-active);color:var(--nav-accent)}.search-orb.svelte-1st790j{width:var(--floating-height);height:var(--floating-height);color:var(--text-dim);background:#272030f0;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.search-orb.svelte-1st790j:hover,.search-orb.active.svelte-1st790j{color:var(--nav-accent);background:#372445}.dock-indicator.svelte-1st790j{pointer-events:none;background:var(--nav-active);opacity:0;border-radius:999px;position:absolute;left:0}.dock.svelte-1st790j[data-motion-ready=true] a.active:where(.svelte-1st790j){background:0 0}.short-label.svelte-1st790j{display:none}@media (width<=420px){.dock.svelte-1st790j{padding:4px}.dock.svelte-1st790j a:where(.svelte-1st790j){gap:3px}}@media (width<=360px){.dock.svelte-1st790j{padding:3px}.long-label.svelte-1st790j{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.short-label.svelte-1st790j{display:inline}}.bar.svelte-kbbpe6{width:var(--floating-width);height:var(--floating-height);left:50%;bottom:calc(var(--floating-edge) + var(--floating-height) + var(--floating-gap) + env(safe-area-inset-bottom,0px));z-index:39;border-radius:var(--radius-pill);background:#1f1827f7;align-items:center;gap:12px;padding:8px;display:flex;position:fixed;transform:translate(-50%)}.bar.svelte-kbbpe6 .cover.sm{aspect-ratio:1;border-radius:999px;width:44px}.bar-link.svelte-kbbpe6{flex:1;align-items:center;gap:14px;min-width:0;display:flex}.bar-link.svelte-kbbpe6:focus-visible,.play.svelte-kbbpe6:focus-visible{outline:2px solid var(--text);outline-offset:2px}.meta.svelte-kbbpe6{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.title.svelte-kbbpe6{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.track.svelte-kbbpe6{text-overflow:ellipsis;white-space:nowrap;color:var(--text-faint);font-size:11px;overflow:hidden}.progress-fill.svelte-kbbpe6{background:var(--accent)}.play.svelte-kbbpe6{background:var(--accent);color:#fff;border:0;flex-shrink:0;width:44px;height:44px}.play.svelte-kbbpe6:hover{background:color-mix(in srgb, var(--accent) 85%, #fff)}.offline.svelte-12qhfyh{top:calc(env(safe-area-inset-top,0px) + 10px);right:calc(env(safe-area-inset-right,0px) + 12px);z-index:45;border-radius:var(--radius-pill);border:1px solid var(--border);background:color-mix(in srgb, var(--bg) 85%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-dim);letter-spacing:.01em;pointer-events:none;padding:5px 10px;font-size:12px;position:fixed}.update.svelte-12qhfyh{left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 178px);z-index:45;border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-card);color:var(--text-dim);white-space:nowrap;align-items:center;gap:12px;padding:8px 8px 8px 14px;font-size:13px;display:flex;position:fixed;transform:translate(-50%)}.update.svelte-12qhfyh button:where(.svelte-12qhfyh){border-radius:var(--radius-pill);background:var(--text);color:var(--bg);cursor:pointer;border:0;padding:6px 12px;font-size:13px;font-weight:600}
