:root{--field:#0a0c11;--field-raised:#10131b;--surface:#161a24;--surface-hover:#1c212d;--surface-active:#222839;--surface-inset:#0d1017;--wash-subtle:#ffffff08;--wash:#ffffff0d;--wash-strong:#ffffff14;--border-subtle:#ffffff0f;--border:#ffffff1a;--border-strong:#ffffff29;--text:#f2f4f8;--text-secondary:#a8b0c0;--text-muted:#6f7788;--text-disabled:#4a5162;--text-on-accent:#06080d;--blue-100:#d6e4ff;--blue-300:#8ab4ff;--blue:#2f7cff;--blue-600:#1964e3;--blue-700:#1450bc;--blue-wash:#2f7cff14;--blue-wash-strong:#2f7cff29;--blue-border:#2f7cff52;--blue-glow:#2f7cff38;--yellow-300:#ffdc7a;--yellow:#ffc93c;--yellow-600:#f0a81e;--orange:#fe8d09;--yellow-wash:#ffc93c1f;--yellow-glow:#ffc93c4d;--success:#3dd68c;--success-wash:#3dd68c1f;--warning:#ffb020;--warning-wash:#ffb0201f;--danger:#ff6b6b;--danger-wash:#ff6b6b1f;--danger-border:#ff6b6b52;--font-display:"Bricolage Grotesque", "Geist", system-ui, -apple-system, sans-serif;--font-ui:"Geist", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--text-3xs:11px;--text-2xs:12px;--text-xs:13px;--text-sm:14px;--text-base:15px;--text-md:17px;--text-lg:20px;--text-xl:26px;--text-2xl:34px;--text-3xl:44px;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-black:800;--leading-none:1;--leading-tight:1.15;--leading-snug:1.35;--leading-normal:1.55;--tracking-tighter:-.03em;--tracking-tight:-.015em;--tracking-normal:0;--tracking-wide:.04em;--tracking-caps:.1em;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:22px;--radius-pill:999px;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 8px 24px #0000005c;--shadow-lg:0 16px 40px #00000070;--shadow-xl:0 24px 64px #00000085;--shadow-focus:0 0 0 3px var(--blue-glow);--shadow-glow-blue:0 8px 28px #2f7cff38;--duration-fast:.12s;--duration:.18s;--duration-slow:.28s;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--transition-colors:color var(--duration) var(--ease-out), background-color var(--duration) var(--ease-out), border-color var(--duration) var(--ease-out);--transition-transform:transform var(--duration) var(--ease-out);--z-base:1;--z-sticky:100;--z-dropdown:200;--z-player:300;--z-overlay:400;--z-modal:500;--z-toast:600;--sidebar-width:248px;--queue-width:320px;--player-height:88px;--content-max:1400px;--art-1:linear-gradient(140deg, #1b4fd8, #2f7cff);--art-2:linear-gradient(140deg, #2560e8, #4e8cff);--art-3:linear-gradient(140deg, #3b4bc8, #6e7bff);--art-4:linear-gradient(140deg, #4f3fbe, #8a6bff);--art-5:linear-gradient(140deg, #6a3bae, #a76bf0);--art-6:linear-gradient(140deg, #8b3a86, #c86bc0);--art-7:linear-gradient(140deg, #a63c63, #e0748f);--art-8:linear-gradient(140deg, #b85338, #f0916b);--art-9:linear-gradient(140deg, #b5761f, #ffc93c);--art-10:linear-gradient(140deg, #8a6b22, #d6b24a)}:root[data-theme=ultraviolet]{--blue-100:#e6deff;--blue-300:#b9a6ff;--blue:#8a6bff;--blue-600:#6f4fe6;--blue-700:#593cc0;--blue-wash:#8a6bff14;--blue-wash-strong:#8a6bff29;--blue-border:#8a6bff52;--blue-glow:#8a6bff38;--shadow-glow-blue:0 8px 28px #8a6bff38;--field:#0b0a12;--field-raised:#11101b;--surface:#171525;--surface-hover:#1d1b30;--surface-active:#23213a;--surface-inset:#0e0d16;--art-1:linear-gradient(140deg, #3b4bc8, #6e7bff);--art-2:linear-gradient(140deg, #4f3fbe, #8a6bff);--art-3:linear-gradient(140deg, #6a3bae, #a76bf0);--art-4:linear-gradient(140deg, #7f3fa8, #b97bf5);--art-5:linear-gradient(140deg, #8b3a86, #c86bc0);--art-6:linear-gradient(140deg, #9b3c78, #d97ab0);--art-7:linear-gradient(140deg, #a63c63, #e0748f);--art-8:linear-gradient(140deg, #8a3a6b, #c070a8);--art-9:linear-gradient(140deg, #5a3fb0, #9a80ff);--art-10:linear-gradient(140deg, #4a4ac8, #8090ff)}:root[data-theme=rosewood]{--blue-100:#ffdce6;--blue-300:#ff9db8;--blue:#ff5c8a;--blue-600:#e6406e;--blue-700:#bf3058;--blue-wash:#ff5c8a14;--blue-wash-strong:#ff5c8a29;--blue-border:#ff5c8a52;--blue-glow:#ff5c8a38;--shadow-glow-blue:0 8px 28px #ff5c8a38;--field:#120a0d;--field-raised:#1b1014;--surface:#24161c;--surface-hover:#2d1c23;--surface-active:#35222b;--surface-inset:#150c10;--art-1:linear-gradient(140deg, #a63c63, #e0748f);--art-2:linear-gradient(140deg, #b8405a, #f07c96);--art-3:linear-gradient(140deg, #8b3a86, #c86bc0);--art-4:linear-gradient(140deg, #7a3a70, #b46ab0);--art-5:linear-gradient(140deg, #b85338, #f0916b);--art-6:linear-gradient(140deg, #c2485c, #ff8aa0);--art-7:linear-gradient(140deg, #6a3bae, #a76bf0);--art-8:linear-gradient(140deg, #9a2f55, #d06084);--art-9:linear-gradient(140deg, #b5761f, #ffc93c);--art-10:linear-gradient(140deg, #a04050, #e07a8a)}:root[data-theme=ember]{--blue-100:#ffe0d1;--blue-300:#ffb08a;--blue:#ff7a45;--blue-600:#e85f2c;--blue-700:#c04a1e;--blue-wash:#ff7a4514;--blue-wash-strong:#ff7a4529;--blue-border:#ff7a4552;--blue-glow:#ff7a4538;--shadow-glow-blue:0 8px 28px #ff7a4538;--field:#120d0a;--field-raised:#1b1410;--surface:#241a15;--surface-hover:#2d211b;--surface-active:#352821;--surface-inset:#150f0c;--art-1:linear-gradient(140deg, #b85338, #f0916b);--art-2:linear-gradient(140deg, #c4602e, #ff9a5c);--art-3:linear-gradient(140deg, #b5761f, #ffc93c);--art-4:linear-gradient(140deg, #a64a3a, #e8826a);--art-5:linear-gradient(140deg, #8a6b22, #d6b24a);--art-6:linear-gradient(140deg, #a63c63, #e0748f);--art-7:linear-gradient(140deg, #b04a2a, #f08a60);--art-8:linear-gradient(140deg, #8b3a86, #c86bc0);--art-9:linear-gradient(140deg, #9c5a20, #e8a040);--art-10:linear-gradient(140deg, #7a3a70, #b46ab0)}:root[data-theme=graphite]{--blue-100:#fff;--blue-300:#f2f4f8;--blue:#e8ecf5;--blue-600:#c9cfdb;--blue-700:#a8b0c0;--blue-wash:#e8ecf512;--blue-wash-strong:#e8ecf524;--blue-border:#e8ecf54d;--blue-glow:#e8ecf529;--shadow-glow-blue:0 8px 28px #e8ecf524;--field:#0a0b0e;--field-raised:#101217;--surface:#161920;--surface-hover:#1c2028;--surface-active:#222731;--surface-inset:#0d0f13;--art-1:linear-gradient(140deg, #3a4254, #6b7590);--art-2:linear-gradient(140deg, #2f3a52, #5c6e95);--art-3:linear-gradient(140deg, #4a4660, #7f7aa0);--art-4:linear-gradient(140deg, #3e4a5e, #6e809a);--art-5:linear-gradient(140deg, #55495a, #8a7e90);--art-6:linear-gradient(140deg, #4b5068, #7d84a5);--art-7:linear-gradient(140deg, #5a4a52, #8e7a86);--art-8:linear-gradient(140deg, #4c5560, #7f8a98);--art-9:linear-gradient(140deg, #5c5440, #9a8e6e);--art-10:linear-gradient(140deg, #3c3e58, #6c6e95)}:root[data-theme=spring]{--blue-100:#ffe0ec;--blue-300:#ffb3cc;--blue:#f07cb0;--blue-600:#d9609a;--blue-700:#b84a80;--blue-wash:#f07cb014;--blue-wash-strong:#f07cb029;--blue-border:#f07cb052;--blue-glow:#f07cb038;--shadow-glow-blue:0 8px 28px #f07cb038;--field:#0e0a12;--field-raised:#161020;--surface:#1e1628;--surface-hover:#261e32;--surface-active:#2e253c;--surface-inset:#110d16;--art-1:linear-gradient(140deg, #c86bc0, #f0a0e0);--art-2:linear-gradient(140deg, #a76bf0, #d0b0ff);--art-3:linear-gradient(140deg, #6e7bff, #a0c8ff);--art-4:linear-gradient(140deg, #4e8cff, #8ed0ff);--art-5:linear-gradient(140deg, #e0748f, #ffb0c0);--art-6:linear-gradient(140deg, #b97bf5, #e0c0ff);--art-7:linear-gradient(140deg, #d6b24a, #ffe08a);--art-8:linear-gradient(140deg, #8a6bff, #c8b0ff);--art-9:linear-gradient(140deg, #2f7cff, #7fb4ff);--art-10:linear-gradient(140deg, #f0916b, #ffc0a0)}:root[data-theme=summer]{--blue-100:#dcefff;--blue-300:#8fcbff;--blue:#3fa7ff;--blue-600:#2688e0;--blue-700:#1c6db8;--blue-wash:#3fa7ff14;--blue-wash-strong:#3fa7ff29;--blue-border:#3fa7ff52;--blue-glow:#3fa7ff38;--shadow-glow-blue:0 8px 28px #3fa7ff38;--field:#0a0d14;--field-raised:#10141d;--surface:#161b26;--surface-hover:#1c2230;--surface-active:#222939;--surface-inset:#0d1018;--art-1:linear-gradient(140deg, #f0916b, #ffb080);--art-2:linear-gradient(140deg, #e8b43c, #ffe08a);--art-3:linear-gradient(140deg, #2f7cff, #3fa7ff);--art-4:linear-gradient(140deg, #4e8cff, #7fc8ff);--art-5:linear-gradient(140deg, #e0748f, #ff9aa8);--art-6:linear-gradient(140deg, #b5761f, #ffd166);--art-7:linear-gradient(140deg, #1b4fd8, #2f9cff);--art-8:linear-gradient(140deg, #a63c63, #e08090);--art-9:linear-gradient(140deg, #f08a60, #ffb890);--art-10:linear-gradient(140deg, #3b4bc8, #6fa0ff)}:root[data-theme=autumn]{--blue-100:#ffe2cc;--blue-300:#ffb07a;--blue:#e8742e;--blue-600:#cc5f1f;--blue-700:#a84c17;--blue-wash:#e8742e14;--blue-wash-strong:#e8742e29;--blue-border:#e8742e52;--blue-glow:#e8742e38;--shadow-glow-blue:0 8px 28px #e8742e38;--field:#110c09;--field-raised:#1a1410;--surface:#231a14;--surface-hover:#2c2119;--surface-active:#34281f;--surface-inset:#140e0a;--art-1:linear-gradient(140deg, #b85338, #f0916b);--art-2:linear-gradient(140deg, #b04a2a, #e8824a);--art-3:linear-gradient(140deg, #b5761f, #ffc93c);--art-4:linear-gradient(140deg, #9c5a20, #e8a040);--art-5:linear-gradient(140deg, #8b3a86, #c86bc0);--art-6:linear-gradient(140deg, #a63c63, #e0748f);--art-7:linear-gradient(140deg, #8a6b22, #d6b24a);--art-8:linear-gradient(140deg, #7a3a70, #b46ab0);--art-9:linear-gradient(140deg, #a64a3a, #e8826a);--art-10:linear-gradient(140deg, #6a3bae, #a76bf0)}:root[data-theme=halloween]{--blue-100:#ffe0c8;--blue-300:#ffae70;--blue:#ff7a1a;--blue-600:#e06410;--blue-700:#b84f0c;--blue-wash:#ff7a1a14;--blue-wash-strong:#ff7a1a29;--blue-border:#ff7a1a52;--blue-glow:#ff7a1a3d;--shadow-glow-blue:0 8px 28px #ff7a1a3d;--field:#0c0813;--field-raised:#140f1e;--surface:#1b1528;--surface-hover:#241c34;--surface-active:#2c233f;--surface-inset:#0f0b17;--art-1:linear-gradient(140deg, #4f3fbe, #8a6bff);--art-2:linear-gradient(140deg, #6a3bae, #a76bf0);--art-3:linear-gradient(140deg, #3b2a6a, #6e55b0);--art-4:linear-gradient(140deg, #b85338, #ff7a1a);--art-5:linear-gradient(140deg, #c4602e, #ff9a3c);--art-6:linear-gradient(140deg, #8b3a86, #c86bc0);--art-7:linear-gradient(140deg, #7a1f3a, #b8405a);--art-8:linear-gradient(140deg, #2a1f4a, #5a4a90);--art-9:linear-gradient(140deg, #a63c63, #e0748f);--art-10:linear-gradient(140deg, #5a3a20, #a06a20)}:root[data-theme=winter]{--blue-100:#e6f0ff;--blue-300:#b6d2ff;--blue:#7fb4ff;--blue-600:#5a96f0;--blue-700:#3f7ad0;--blue-wash:#7fb4ff14;--blue-wash-strong:#7fb4ff29;--blue-border:#7fb4ff52;--blue-glow:#7fb4ff33;--shadow-glow-blue:0 8px 28px #7fb4ff33;--field:#090c12;--field-raised:#0f131b;--surface:#151a25;--surface-hover:#1b2130;--surface-active:#21283a;--surface-inset:#0c1017;--art-1:linear-gradient(140deg, #1b4fd8, #5a96f0);--art-2:linear-gradient(140deg, #2f6bc8, #7fb4ff);--art-3:linear-gradient(140deg, #3b4bc8, #6e7bff);--art-4:linear-gradient(140deg, #4f5a88, #8fa0c8);--art-5:linear-gradient(140deg, #556070, #9aa8be);--art-6:linear-gradient(140deg, #4f3fbe, #8a6bff);--art-7:linear-gradient(140deg, #2f4f7f, #6f9ac8);--art-8:linear-gradient(140deg, #6a6e90, #a8b0d0);--art-9:linear-gradient(140deg, #3a5a9a, #7fa8e0);--art-10:linear-gradient(140deg, #46507a, #8890b8)}:root[data-theme=festive]{--blue-100:#ffdce1;--blue-300:#ff8fa0;--blue:#e8415a;--blue-600:#c92f46;--blue-700:#a32438;--blue-wash:#e8415a14;--blue-wash-strong:#e8415a29;--blue-border:#e8415a52;--blue-glow:#e8415a38;--shadow-glow-blue:0 8px 28px #e8415a38;--field:#120a0c;--field-raised:#1b1013;--surface:#24161a;--surface-hover:#2d1c21;--surface-active:#352229;--surface-inset:#150c0f;--art-1:linear-gradient(140deg, #9a1f33, #e8415a);--art-2:linear-gradient(140deg, #b5761f, #ffc93c);--art-3:linear-gradient(140deg, #8a6b22, #d6b24a);--art-4:linear-gradient(140deg, #7a1f3a, #b8405a);--art-5:linear-gradient(140deg, #8b3a86, #c86bc0);--art-6:linear-gradient(140deg, #a63c63, #e0748f);--art-7:linear-gradient(140deg, #b85338, #f0916b);--art-8:linear-gradient(140deg, #6a3bae, #a76bf0);--art-9:linear-gradient(140deg, #9c5a20, #e8a040);--art-10:linear-gradient(140deg, #5a3a50, #9a7a90)}:root[data-theme=newyear]{--blue-100:#fff1c8;--blue-300:#ffe08a;--blue:#ffd166;--blue-600:#e8b43c;--blue-700:#c8962a;--blue-wash:#ffd16614;--blue-wash-strong:#ffd16629;--blue-border:#ffd16652;--blue-glow:#ffd16638;--shadow-glow-blue:0 8px 28px #ffd16638;--field:#080a14;--field-raised:#0e111e;--surface:#141828;--surface-hover:#1a1f33;--surface-active:#20263e;--surface-inset:#0a0d18;--art-1:linear-gradient(140deg, #1b2f6a, #3b5bc8);--art-2:linear-gradient(140deg, #b5761f, #ffd166);--art-3:linear-gradient(140deg, #4f5a88, #8fa0c8);--art-4:linear-gradient(140deg, #3b4bc8, #6e7bff);--art-5:linear-gradient(140deg, #8a6b22, #d6b24a);--art-6:linear-gradient(140deg, #4f3fbe, #8a6bff);--art-7:linear-gradient(140deg, #2a2f5a, #5a6ab0);--art-8:linear-gradient(140deg, #b85338, #f0916b);--art-9:linear-gradient(140deg, #6a6e90, #a8b0d0);--art-10:linear-gradient(140deg, #6a3bae, #a76bf0)}:root[data-theme=valentine]{--blue-100:#ffdce4;--blue-300:#ff9ab4;--blue:#ff4f79;--blue-600:#e63a64;--blue-700:#bf2c50;--blue-wash:#ff4f7914;--blue-wash-strong:#ff4f7929;--blue-border:#ff4f7952;--blue-glow:#ff4f7938;--shadow-glow-blue:0 8px 28px #ff4f7938;--field:#120a0e;--field-raised:#1b1016;--surface:#24161e;--surface-hover:#2d1c26;--surface-active:#35222e;--surface-inset:#150c11;--art-1:linear-gradient(140deg, #a63c63, #e0748f);--art-2:linear-gradient(140deg, #c2485c, #ff8aa0);--art-3:linear-gradient(140deg, #b8405a, #f07c96);--art-4:linear-gradient(140deg, #8b3a86, #c86bc0);--art-5:linear-gradient(140deg, #9a2f55, #d06084);--art-6:linear-gradient(140deg, #7a3a70, #b46ab0);--art-7:linear-gradient(140deg, #d05a6a, #ffa0a8);--art-8:linear-gradient(140deg, #6a3bae, #a76bf0);--art-9:linear-gradient(140deg, #b04050, #e87a8a);--art-10:linear-gradient(140deg, #a04a78, #d890c0)}:root[data-theme-fading] body,:root[data-theme-fading] body *{transition:background-color .35s,border-color .35s,color .35s,box-shadow .35s}@media (prefers-reduced-motion:reduce){:root[data-theme-fading] body,:root[data-theme-fading] body *{transition:none}}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--field);color:var(--text);font-family:var(--font-ui);font-size:var(--text-base);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight);line-height:var(--leading-tight);text-wrap:balance;margin:0}p{margin:0}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}input,select,textarea{font:inherit;color:inherit}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.link{color:var(--blue-300);text-underline-offset:2px;text-decoration:underline}.tabular{font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:var(--radius-xs)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--wash-strong);border-radius:var(--radius-pill);background-clip:content-box;border:2px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--border-strong);background-clip:content-box}*{scrollbar-width:thin;scrollbar-color:var(--wash-strong) transparent}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:0 var(--space-4);border-radius:var(--radius-pill);background:var(--wash);border:1px solid var(--border);height:38px;color:var(--text);font-size:var(--text-sm);font-weight:var(--weight-semibold);white-space:nowrap;transition:var(--transition-colors), var(--transition-transform);display:inline-flex}.btn:hover:not(:disabled){background:var(--wash-strong);border-color:var(--border-strong)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--primary{background:var(--blue);color:#fff;border-color:#0000}.btn--primary:hover:not(:disabled){background:var(--blue-600);border-color:#0000}.btn--accent{background:var(--text);color:var(--text-on-accent);border-color:#0000}.btn--accent:hover:not(:disabled){background:#fff;border-color:#0000}.btn--danger{background:var(--danger-wash);border-color:var(--danger-border);color:var(--danger)}.btn--danger:hover:not(:disabled){background:var(--danger);color:var(--text-on-accent);border-color:#0000}.btn--ghost{color:var(--text-secondary);background:0 0;border-color:#0000}.btn--ghost:hover:not(:disabled){background:var(--wash);color:var(--text);border-color:#0000}.btn--sm{height:30px;padding:0 var(--space-3);font-size:var(--text-xs)}.btn--lg{height:46px;padding:0 var(--space-6);font-size:var(--text-md)}.btn--block{width:100%}.btn--icon{flex:none;width:38px;padding:0}.btn--icon.btn--sm{width:30px}.btn--icon.btn--lg{width:46px}.pill{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--wash);border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:var(--text-2xs);font-weight:var(--weight-medium);white-space:nowrap;display:inline-flex}.pill--accent{background:var(--blue-wash);border-color:var(--blue-border);color:var(--blue-300)}.pill--live{background:var(--yellow-wash);color:var(--yellow);border-color:#ffc93c52}.pill--success{background:var(--success-wash);color:var(--success);border-color:#0000}.pill--warning{background:var(--warning-wash);color:var(--warning);border-color:#0000}.pill--danger{background:var(--danger-wash);color:var(--danger);border-color:#0000}button.pill{cursor:pointer;transition:var(--transition-colors)}button.pill:hover{background:var(--wash-strong);color:var(--text)}.input{width:100%;height:40px;padding:0 var(--space-4);border-radius:var(--radius-md);background:var(--surface-inset);border:1px solid var(--border);color:var(--text);font-size:var(--text-sm);transition:var(--transition-colors), box-shadow var(--duration) var(--ease-out)}.input::placeholder{color:var(--text-muted)}.input:hover:not(:focus){border-color:var(--border-strong)}.input:focus{border-color:var(--blue);box-shadow:var(--shadow-focus);outline:none}.input--pill{border-radius:var(--radius-pill)}textarea.input{height:auto;padding:var(--space-3) var(--space-4);line-height:var(--leading-normal);resize:vertical}.field{gap:var(--space-2);flex-direction:column;display:flex}.field__label{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-secondary)}.field__hint{font-size:var(--text-2xs);color:var(--text-muted);line-height:var(--leading-normal)}.field--inline{align-items:center;gap:var(--space-3);flex-direction:row}.field--inline input[type=checkbox]{width:16px;height:16px;accent-color:var(--blue);cursor:pointer;flex:none}.card{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-5)}.card--interactive{cursor:pointer;transition:var(--transition-colors), var(--transition-transform), box-shadow var(--duration) var(--ease-out)}.card--interactive:hover{background:var(--surface-hover);border-color:var(--border);box-shadow:var(--shadow-md);transform:translateY(-2px)}.card--flush{padding:0;overflow:hidden}.card--danger{border-color:var(--danger-border);background:linear-gradient(180deg, var(--danger-wash), transparent 60%), var(--surface)}.eyebrow{font-family:var(--font-mono);font-size:var(--text-3xs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--blue-300)}.section-head{justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.section-head__title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight)}.section-head__link{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);transition:var(--transition-colors);background:0 0}.section-head__link:hover{color:var(--text)}.state{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-12) var(--space-6);border-radius:var(--radius-lg);background:var(--wash-subtle);border:1px dashed var(--border);text-align:center;flex-direction:column;display:flex}.state__icon{border-radius:var(--radius-pill);background:var(--wash);width:44px;height:44px;color:var(--text-muted);place-items:center;display:grid}.state__title{font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--text)}.state__text{font-size:var(--text-sm);color:var(--text-muted);max-width:42ch}.state--error{border-color:var(--danger-border);background:var(--danger-wash)}.state--error .state__title{color:var(--danger)}.state--inline{padding:var(--space-6);border-style:solid;border-color:var(--border-subtle)}.skeleton{background:var(--wash);border-radius:var(--radius-sm);position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffff0f,#0000);animation:1.4s ease-in-out infinite skeleton-sweep;position:absolute;inset:0;transform:translate(-100%)}@keyframes skeleton-sweep{to{transform:translate(100%)}}.skeleton--text{border-radius:var(--radius-xs);height:12px}.skeleton--title{border-radius:var(--radius-xs);width:60%;height:16px}.art{border-radius:var(--radius-md);background:var(--surface-hover);flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.art__initials{z-index:1;font-family:var(--font-display);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight);color:#fffffff0;text-shadow:0 1px 10px #00000047;font-size:.34em;position:relative}.art--generated:after{content:"";pointer-events:none;background:radial-gradient(circle at 24% 76%,#ffffff2e 0 6%,#0000 6.5%),radial-gradient(circle at 76% 24%,#ffffff1a 0 26%,#0000 26.5%);position:absolute;inset:0}.art img{object-fit:cover;width:100%;height:100%}.art--1{background:var(--art-1)}.art--2{background:var(--art-2)}.art--3{background:var(--art-3)}.art--4{background:var(--art-4)}.art--5{background:var(--art-5)}.art--6{background:var(--art-6)}.art--7{background:var(--art-7)}.art--8{background:var(--art-8)}.art--9{background:var(--art-9)}.art--10{background:var(--art-10)}.eq{flex:none;align-items:flex-end;gap:2px;height:14px;display:inline-flex}.eq span{background:var(--yellow);width:3px;animation:eq-bounce 1.1s var(--ease-in-out) infinite;border-radius:1px}.eq span:first-child{height:40%;animation-delay:0s}.eq span:nth-child(2){height:95%;animation-delay:.18s}.eq span:nth-child(3){height:60%;animation-delay:.36s}.eq span:nth-child(4){height:80%;animation-delay:.54s}@keyframes eq-bounce{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}.eq--paused span{opacity:.5;animation-play-state:paused}.truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.scroll-x{scrollbar-width:none;overflow:auto hidden}.scroll-x::-webkit-scrollbar{display:none}.toast-region{left:50%;bottom:calc(var(--player-height) + var(--space-4));z-index:var(--z-toast);pointer-events:none;width:min(92vw,480px);position:fixed;transform:translate(-50%)}.toast{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--blue-wash);border:1px solid var(--blue-border);color:var(--blue-100);font-size:var(--text-sm);pointer-events:auto;animation:.16s ease-out toast-in;display:flex;box-shadow:0 8px 24px #00000059}.toast__text{flex:1;min-width:0}.toast__close{flex:none}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}.app-layout{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);height:100dvh;display:grid;overflow:hidden}.sidebar{gap:var(--space-6);padding:var(--space-5) var(--space-3);padding-bottom:calc(var(--player-height) + var(--space-6));background:var(--field-raised);border-right:1px solid var(--border-subtle);flex-direction:column;display:flex;overflow-y:auto}.sidebar__header{align-items:center;gap:var(--space-3);padding:var(--space-1) var(--space-2);display:flex}.sidebar__mark{flex:none;width:32px;height:32px}.sidebar__brand{font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--weight-black);letter-spacing:var(--tracking-tight)}.sidebar>*{flex:none}.sidebar__nav{flex-direction:column;gap:2px;display:flex}.sidebar__section{gap:var(--space-1);flex-direction:column;min-height:0;display:flex}.sidebar__section-header{justify-content:space-between;align-items:center;gap:var(--space-2);padding:0 var(--space-2);margin-bottom:var(--space-1);display:flex}.sidebar__section-title{font-family:var(--font-mono);font-size:var(--text-3xs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted)}.sidebar__section-action{border-radius:var(--radius-xs);width:24px;height:24px;color:var(--text-muted);font-size:var(--text-md);transition:var(--transition-colors);place-items:center;line-height:1;display:grid}.sidebar__section-action:hover{background:var(--wash);color:var(--text)}.sidebar__stat{padding:0 var(--space-2);font-size:var(--text-2xs);color:var(--text-muted);justify-content:space-between;align-items:center;display:flex}.sidebar__stat b{color:var(--text-secondary);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}.nav-item{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--weight-medium);text-align:left;transition:var(--transition-colors);display:flex;position:relative}.nav-item:hover{background:var(--wash);color:var(--text)}.nav-item--active{background:var(--blue-wash);color:var(--text);font-weight:var(--weight-semibold)}.nav-item--active:before{content:"";border-radius:var(--radius-pill);background:var(--blue);width:3px;height:18px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.nav-item__icon{color:currentColor;flex:none;width:18px;height:18px}.nav-item--active .nav-item__icon{color:var(--blue-300)}.nav-item__label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.playlist-item{align-items:center;gap:var(--space-1);grid-template-columns:minmax(0,1fr) auto;display:grid;position:relative}.playlist-item__main{align-items:center;gap:var(--space-3);width:100%;min-width:0;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);transition:var(--transition-colors);display:flex}.playlist-item__main:hover{background:var(--wash)}.playlist-item--active .playlist-item__main{background:var(--blue-wash)}.playlist-item__art{border-radius:var(--radius-xs);cursor:pointer;width:36px;height:36px;font-size:36px;position:relative}.playlist-item__art>.art{border-radius:inherit;width:100%;height:100%;font-size:inherit}.playlist-item__art-overlay{border-radius:inherit;color:#fff;opacity:0;transition:opacity var(--duration) var(--ease-out);background:#0000008c;place-items:center;display:grid;position:absolute;inset:0}.playlist-item__art:hover .playlist-item__art-overlay,.playlist-item__art:focus-visible .playlist-item__art-overlay{opacity:1}.playlist-item__name{text-align:left;min-width:0;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;transition:var(--transition-colors);flex:1;overflow:hidden}.playlist-item__main:hover .playlist-item__name,.playlist-item--active .playlist-item__name{color:var(--text)}.playlist-item__menu-button{border-radius:var(--radius-xs);width:26px;height:26px;color:var(--text-muted);opacity:0;transition:var(--transition-colors), opacity var(--duration) var(--ease-out);place-items:center;display:grid}.playlist-item:hover .playlist-item__menu-button,.playlist-item__menu-button:focus-visible,.playlist-item__menu-button[aria-expanded=true]{opacity:1}.playlist-item__menu-button:hover{background:var(--wash-strong);color:var(--text)}.playlist-create{gap:var(--space-2);padding:var(--space-1) var(--space-2);display:flex}.main-content{flex-direction:column;min-width:0;display:flex;overflow:hidden}.content-layout{flex:1;grid-template-columns:minmax(0,1fr);min-height:0;display:grid}.content-layout--queue-open{grid-template-columns:minmax(0, 1fr) var(--queue-width)}.content-layout__main{min-width:0;padding-bottom:calc(var(--player-height) + var(--space-8));flex-direction:column;display:flex;overflow-y:auto}.main-content__body{padding:0 var(--space-8) var(--space-8);max-width:var(--content-max);flex:1 0 auto;width:100%}.page-header{padding:var(--space-8) var(--space-8) var(--space-6);max-width:var(--content-max);position:relative}.page-header__eyebrow{margin-bottom:var(--space-2)}.page-header__title{font-size:var(--text-2xl);font-weight:var(--weight-black);letter-spacing:var(--tracking-tighter);margin-bottom:var(--space-2)}.page-header__lede{font-size:var(--text-sm);color:var(--text-secondary);max-width:62ch}.page-header__row{justify-content:space-between;align-items:flex-end;gap:var(--space-6);flex-wrap:wrap;display:flex}.page-header__meta{align-items:center;gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.page-header__count{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.page-header__album-art{border-radius:var(--radius-sm);width:72px;height:72px;box-shadow:var(--shadow-sm);font-size:72px}.page-header__badges{gap:var(--space-2);flex-wrap:wrap;display:flex}.page-header__stat{text-align:right;flex:none}.page-header__stat-value{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-black);letter-spacing:var(--tracking-tighter);font-variant-numeric:tabular-nums;line-height:var(--leading-none);display:block}.page-header__stat-label{margin-top:var(--space-1);font-size:var(--text-2xs);color:var(--text-muted);display:block}.page-header--hero{padding-top:var(--space-16)}.page-header__backdrop{z-index:0;border-radius:0 0 var(--radius-xl) var(--radius-xl);position:absolute;inset:0;overflow:hidden}.page-header__backdrop img{object-fit:cover;filter:saturate(.9);width:100%;height:100%}.page-header__backdrop:after{content:"";background:linear-gradient(180deg, #0a0c1159 0%, #0a0c11d1 60%, var(--field) 100%);position:absolute;inset:0}.page-header--hero .page-header__row,.page-header--hero .page-header__eyebrow{z-index:1;position:relative}.page-actions{position:relative}.search-bar{padding:0 var(--space-8) var(--space-5);max-width:var(--content-max)}.search-bar .input{max-width:420px}.menu{z-index:var(--z-dropdown);min-width:200px;padding:var(--space-1);border-radius:var(--radius-md);background:var(--surface-active);border:1px solid var(--border);box-shadow:var(--shadow-lg);position:absolute}.menu--right{right:0}.menu--down{top:calc(100% + var(--space-1))}.menu--up{bottom:calc(100% + var(--space-1))}.menu__item{width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-xs);color:var(--text-secondary);font-size:var(--text-sm);text-align:left;transition:var(--transition-colors);display:block}.menu__item:hover{background:var(--wash-strong);color:var(--text)}.menu__item--danger:hover{background:var(--danger-wash);color:var(--danger)}.menu__label{padding:var(--space-2) var(--space-3) var(--space-1);font-family:var(--font-mono);font-size:var(--text-3xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted)}.menu__divider{height:1px;margin:var(--space-1) 0;background:var(--border-subtle)}.menu__scroll{max-height:220px;overflow-y:auto}.sidebar__scrim{display:none}@media (width<=1100px){.content-layout--queue-open{grid-template-columns:minmax(0,1fr)}.queue-panel{top:0;right:0;bottom:var(--player-height);width:min(var(--queue-width), 88vw);z-index:var(--z-overlay);box-shadow:var(--shadow-xl);position:fixed}}@media (width<=860px){.app-layout{grid-template-columns:minmax(0,1fr)}.sidebar{width:min(var(--sidebar-width), 84vw);z-index:var(--z-modal);transition:transform var(--duration-slow) var(--ease-out);box-shadow:var(--shadow-xl);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.app-layout--drawer-open .sidebar{transform:translate(0)}.app-layout--drawer-open .sidebar__scrim{z-index:var(--z-overlay);background:#0009;display:block;position:fixed;inset:0}.main-content__body,.page-header,.search-bar{padding-left:var(--space-4);padding-right:var(--space-4)}.page-header{padding-top:var(--space-6)}.page-header__title{font-size:var(--text-xl)}}.drawer-toggle{display:none}@media (width<=860px){.drawer-toggle{top:var(--space-3);left:var(--space-3);z-index:var(--z-sticky);border-radius:var(--radius-pill);background:var(--surface-active);border:1px solid var(--border);width:38px;height:38px;color:var(--text);box-shadow:var(--shadow-md);place-items:center;display:grid;position:fixed}.page-header{padding-left:calc(var(--space-4) + 46px)}.home__greeting{padding-left:46px}}.player-bar{z-index:var(--z-player);align-items:center;gap:var(--space-4);height:var(--player-height);padding:0 var(--space-5);background:var(--field-raised);border-top:1px solid var(--border-subtle);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.player-bar__left{align-items:center;gap:var(--space-3);min-width:0;display:flex}.player-bar__art{border-radius:var(--radius-sm);width:52px;height:52px;box-shadow:var(--shadow-sm);font-size:52px}.player-bar__track-info{flex-direction:column;gap:2px;min-width:0;display:flex}.player-bar__title-row{align-items:center;gap:var(--space-2);min-width:0;display:flex}.player-bar__title{font-size:var(--text-sm);font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.player-bar__meta{font-size:var(--text-2xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.player-bar__meta-link{transition:var(--transition-colors)}.player-bar__meta-link:hover,.player-bar__meta-link:focus-visible{color:var(--text);text-decoration:underline}.player-bar__empty{font-size:var(--text-xs);color:var(--text-muted)}.player-bar__center{align-items:center;gap:var(--space-2);flex-direction:column;width:min(560px,100%);min-width:0;display:flex}.player-bar__transport-row{align-items:center;gap:var(--space-2);display:flex}.player-bar__icon-button{border-radius:var(--radius-pill);width:32px;height:32px;color:var(--text-secondary);transition:var(--transition-colors), var(--transition-transform);place-items:center;display:grid}.player-bar__icon-button:hover:not(:disabled){color:var(--text);background:var(--wash)}.player-bar__icon-button:disabled{opacity:.35;cursor:not-allowed}.player-bar__icon-button--active{color:var(--blue-300)}.player-bar__icon-button--active:hover{color:var(--blue-100)}.player-bar__like-button.player-bar__icon-button--active{color:var(--yellow)}.player-bar__like-button.player-bar__icon-button--active svg{filter:drop-shadow(0 0 3px var(--yellow-glow)) drop-shadow(0 0 7px var(--yellow-glow))}.player-bar__like-button.player-bar__icon-button--active:hover{color:var(--yellow-300)}.player-bar__play-button{border-radius:var(--radius-pill);background:var(--text);width:40px;height:40px;color:var(--text-on-accent);transition:var(--transition-transform), var(--transition-colors);place-items:center;display:grid}.player-bar__play-button:hover:not(:disabled){background:#fff;transform:scale(1.06)}.player-bar__play-button:disabled{opacity:.4;cursor:not-allowed}.player-bar__progress-row{align-items:center;gap:var(--space-3);width:100%;display:flex}.player-bar__time{font-family:var(--font-mono);font-size:var(--text-3xs);color:var(--text-muted);font-variant-numeric:tabular-nums;text-align:center;flex:none;min-width:34px}.player-bar__progress-track{cursor:pointer;flex:1;align-items:center;min-width:0;height:14px;display:flex;position:relative}.player-bar__progress-track:before{content:"";border-radius:var(--radius-pill);background:var(--wash-strong);height:4px;position:absolute;left:0;right:0}.player-bar__progress-fill{border-radius:var(--radius-pill);background:var(--text-secondary);height:4px;transition:background-color var(--duration) var(--ease-out);pointer-events:none;position:relative}.player-bar__progress-track:hover .player-bar__progress-fill,.player-bar__progress-track:focus-visible .player-bar__progress-fill{background:var(--blue)}.player-bar__progress-thumb{border-radius:var(--radius-pill);background:var(--text);opacity:0;width:10px;height:10px;transition:opacity var(--duration) var(--ease-out);position:absolute;top:50%;right:0;transform:translate(50%,-50%)}.player-bar__progress-track:hover .player-bar__progress-thumb,.player-bar__progress-track:focus-visible .player-bar__progress-thumb{opacity:1}.player-bar__right{justify-content:flex-end;align-items:center;gap:var(--space-2);min-width:0;display:flex}.player-bar__volume-slider{width:90px;height:4px;accent-color:var(--blue);cursor:pointer;flex:none}@media (width<=860px){.player-bar{gap:var(--space-3);padding:0 var(--space-3);grid-template-columns:minmax(0,1fr) auto}.player-bar__center{grid-area:2/1/auto/-1;width:100%}.player-bar{height:auto;padding-top:var(--space-2);padding-bottom:var(--space-2)}.player-bar__right{gap:var(--space-1)}.player-bar__volume-slider{display:none}}.queue-panel{background:var(--field-raised);border-left:1px solid var(--border-subtle);min-height:0;padding:var(--space-5) var(--space-4);padding-bottom:calc(var(--player-height) + var(--space-5));flex-direction:column;display:flex}.queue-panel__header{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.queue-panel__header h2{font-size:var(--text-md);font-weight:var(--weight-bold)}.queue-panel__header p{font-family:var(--font-mono);font-size:var(--text-3xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.queue-panel__section{gap:var(--space-2);flex-direction:column;min-height:0;display:flex}.queue-panel__section--next{margin-top:var(--space-5);flex:1}.queue-panel__section-title{font-family:var(--font-mono);font-size:var(--text-3xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted)}.queue-panel__list{flex:1;min-height:0}.queue-panel__item{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);text-align:left;transition:var(--transition-colors);display:flex}.queue-panel__item:hover{background:var(--wash)}.queue-panel__item--active{background:var(--blue-wash)}.queue-panel__item-main{text-align:left;flex:1;min-width:0}.queue-panel__item-title{font-size:var(--text-xs);font-weight:var(--weight-medium);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.queue-panel__item-meta{font-size:var(--text-3xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.queue-panel__item--row{height:56px}.queue-panel__remove-button{border-radius:var(--radius-xs);width:24px;height:24px;color:var(--text-muted);opacity:0;transition:var(--transition-colors), opacity var(--duration) var(--ease-out);flex:none;place-items:center;display:grid}.queue-panel__item:hover .queue-panel__remove-button,.queue-panel__remove-button:focus-visible{opacity:1}.queue-panel__remove-button:hover{background:var(--wash-strong);color:var(--text)}.queue-panel__list>div{overflow-x:hidden!important}.player-bar__handoff{display:inline-flex;position:relative}.player-bar__icon-button--remote,.player-bar__icon-button--remote:hover,.player-bar__meta--remote{color:var(--blue-300)}.player-bar__play-button--attention{box-shadow:0 0 0 0 var(--blue-300);animation:1.6s ease-out infinite player-bar-attention}@keyframes player-bar-attention{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--blue-300) 70%, transparent)}to{box-shadow:0 0 0 10px color-mix(in srgb, var(--blue-300) 0%, transparent)}}@media (prefers-reduced-motion:reduce){.player-bar__play-button--attention{box-shadow:0 0 0 3px var(--blue-300);animation:none}}.handoff-menu{min-width:240px}.handoff-menu__empty{padding:var(--space-2) var(--space-3);color:var(--text-muted);font-size:var(--text-sm)}.handoff-menu__item{align-items:center;gap:var(--space-3);display:flex}.handoff-menu__item:disabled,.handoff-menu__item[aria-disabled=true]{opacity:.5;cursor:default}.handoff-menu__item--active,.handoff-menu__item--active .handoff-menu__name{color:var(--blue-300)}.handoff-menu__text{flex-direction:column;flex:1;min-width:0;display:flex}.handoff-menu__name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.handoff-menu__status{color:var(--text-muted);font-size:var(--text-xs)}.player-bar__station{border-radius:var(--radius-pill,999px);background:var(--wash-strong,#ffffff14);color:var(--yellow,#ffc93c);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;flex:none;align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.player-bar__station-group{flex:0 auto;align-items:center;gap:4px;min-width:0;display:inline-flex}.player-bar__station{min-width:0;max-width:320px}.player-bar__station-name{flex:none}.player-bar__station-reason{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-secondary);text-transform:none;letter-spacing:0;font-family:inherit;font-size:var(--text-2xs);overflow:hidden}.player-bar__station-reason:before{content:"·";color:var(--text-muted);margin:0 4px 0 2px}.station-say--bar{width:22px;height:22px}.track-list{flex-direction:column;gap:2px;display:flex}.track-row{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);transition:var(--transition-colors);grid-template-columns:minmax(0,1fr) auto;display:grid;position:relative}.track-row__main{align-items:center;gap:var(--space-3);text-align:left;grid-template-columns:28px 40px minmax(0,1fr);min-width:0;display:grid}.track-row:hover{background:var(--wash)}.track-row--active{background:var(--blue-wash)}.track-row__index{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-muted);font-variant-numeric:tabular-nums;text-align:right;place-items:center;display:grid}.track-row--active .track-row__index{color:var(--yellow)}.track-row__art{border-radius:var(--radius-xs);width:40px;height:40px;font-size:40px}.track-row__content{flex-direction:column;min-width:0;display:flex}.track-row__title{font-size:var(--text-sm);font-weight:var(--weight-medium);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.track-row--active .track-row__title{color:var(--yellow);display:block}.track-row__meta{font-size:var(--text-2xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.track-row__reason{font-size:var(--text-3xs);color:var(--blue-300);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;display:block;overflow:hidden}.track-row__actions{align-items:center;gap:var(--space-2);flex:none;display:flex;position:relative}.track-row__count{font-family:var(--font-mono);font-size:var(--text-3xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.track-row__menu-button{border-radius:var(--radius-xs);width:28px;height:28px;color:var(--text-muted);opacity:0;transition:var(--transition-colors), opacity var(--duration) var(--ease-out);place-items:center;display:grid}.track-row:hover .track-row__menu-button,.track-row__menu-button:focus-visible,.track-row__menu-button[aria-expanded=true]{opacity:1}.track-row__menu-button:hover{background:var(--wash-strong);color:var(--text)}.entity-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(160px,1fr));display:grid}.entity-grid--wide{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.entity-card{gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);text-align:left;transition:var(--transition-colors);flex-direction:column;display:flex;position:relative}.entity-card:hover{background:var(--wash)}.entity-card__art{aspect-ratio:1;border-radius:var(--radius-sm);width:100%;box-shadow:var(--shadow-sm);font-size:min(100px,14vw)}.entity-card__art--round{border-radius:var(--radius-pill)}.entity-card__body{flex-direction:column;gap:2px;min-width:0;display:flex}.entity-card__name{font-size:var(--text-sm);font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.entity-card__meta{font-size:var(--text-2xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.entity-card__menu-button{top:var(--space-4);right:var(--space-4);border-radius:var(--radius-pill);color:#fff;opacity:0;width:30px;height:30px;transition:opacity var(--duration) var(--ease-out);background:#0009;place-items:center;display:grid;position:absolute}.entity-card:hover .entity-card__menu-button,.entity-card__menu-button:focus-visible{opacity:1}.entity-list{flex-direction:column;gap:2px;display:flex}.entity-row{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);text-align:left;transition:var(--transition-colors);grid-template-columns:44px minmax(0,1fr) auto;display:grid}.entity-row:hover{background:var(--wash)}.entity-row__art{border-radius:var(--radius-xs);width:44px;height:44px;font-size:44px}.entity-row__art--round{border-radius:var(--radius-pill)}.entity-row__name{font-size:var(--text-sm);font-weight:var(--weight-medium);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.entity-row__meta{font-size:var(--text-2xs);color:var(--text-muted);display:block}.entity-row__chevron{color:var(--text-disabled);flex:none}.genre-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(190px,1fr));display:grid}.genre-card{gap:var(--space-1);padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border-subtle);text-align:left;min-height:104px;transition:var(--transition-colors), var(--transition-transform);flex-direction:column;display:flex;position:relative;overflow:hidden}.genre-card:before{content:"";opacity:.5;transition:opacity var(--duration) var(--ease-out);position:absolute;inset:0}.genre-card:hover{border-color:var(--border);transform:translateY(-2px)}.genre-card:hover:before{opacity:.8}.genre-card__rank{font-family:var(--font-mono);font-size:var(--text-3xs);color:var(--text-muted);font-variant-numeric:tabular-nums;position:relative}.genre-card__title{font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight);margin-top:auto;position:relative}.genre-card__meta{font-size:var(--text-2xs);color:var(--text-secondary);font-variant-numeric:tabular-nums;position:relative}.genre-card--1:before{background:var(--art-1)}.genre-card--2:before{background:var(--art-2)}.genre-card--3:before{background:var(--art-3)}.genre-card--4:before{background:var(--art-4)}.genre-card--5:before{background:var(--art-5)}.genre-card--6:before{background:var(--art-6)}.genre-card--7:before{background:var(--art-7)}.genre-card--8:before{background:var(--art-8)}.genre-card--9:before{background:var(--art-9)}.genre-card--10:before{background:var(--art-10)}.rail{margin-bottom:var(--space-8)}.rail__scroller{gap:var(--space-4);padding-bottom:var(--space-2);grid-auto-columns:168px;grid-auto-flow:column;display:grid}.rail__scroller--wide{grid-auto-columns:200px}.rail__scroller--refreshing{opacity:.45;pointer-events:none;transition:opacity .16s}.rail__empty{color:var(--text-muted);font-size:var(--text-sm);padding:var(--space-3) 0}.icon--spin{animation:.9s linear infinite icon-spin}@keyframes icon-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.icon--spin{animation:none}}.filter-row{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.view-toggle{border-radius:var(--radius-pill);background:var(--wash);gap:2px;padding:2px;display:inline-flex}.view-toggle__button{padding:var(--space-1) var(--space-4);border-radius:var(--radius-pill);font-size:var(--text-2xs);font-weight:var(--weight-medium);color:var(--text-muted);transition:var(--transition-colors)}.view-toggle__button:hover{color:var(--text)}.view-toggle__button--active{background:var(--surface-active);color:var(--text)}.load-more{align-items:center;gap:var(--space-3);padding:var(--space-8) 0 var(--space-4);flex-direction:column;display:flex}.load-more__status{font-family:var(--font-mono);font-size:var(--text-3xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.similar-section{margin-top:var(--space-10);padding-top:var(--space-6);border-top:1px solid var(--border-subtle)}.similar-section__header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.similar-section__list{flex-direction:column;gap:2px;display:flex}.track-skeleton{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);grid-template-columns:28px 40px minmax(0,1fr);display:grid}.track-skeleton__art{border-radius:var(--radius-xs);width:40px;height:40px}.track-skeleton__lines{gap:var(--space-2);flex-direction:column;display:flex}.track-row__reason--wide{color:var(--text-muted);font-style:italic}.home{padding-top:var(--space-8);flex-direction:column;display:flex}.home__greeting{align-items:center;gap:var(--space-4);margin-bottom:var(--space-8);display:flex}.home__greeting-mark{flex:none;width:44px;height:44px}.home__greeting-text h1{font-size:var(--text-2xl);font-weight:var(--weight-black);letter-spacing:var(--tracking-tighter)}.home__greeting-text p{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--text-muted)}.home__quick{gap:var(--space-3);margin-bottom:var(--space-10);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.quick-tile{align-items:center;gap:var(--space-3);padding:var(--space-2);padding-right:var(--space-4);border-radius:var(--radius-sm);background:var(--wash);text-align:left;transition:var(--transition-colors);display:flex;overflow:hidden}.quick-tile:hover{background:var(--wash-strong)}.quick-tile__body{flex-direction:column;gap:2px;min-width:0;display:flex}.quick-tile__name,.quick-tile__meta{display:block}.quick-tile__art{border-radius:var(--radius-xs);flex:none;width:52px;height:52px;font-size:52px}.quick-tile__name{font-size:var(--text-sm);font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.quick-tile__meta{font-size:var(--text-2xs);color:var(--text-muted)}.home__library-strip{gap:var(--space-3);margin-bottom:var(--space-10);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.home__library-stat{padding:var(--space-4);border-radius:var(--radius-md);background:var(--wash-subtle);border:1px solid var(--border-subtle)}.home__library-stat-value{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-black);letter-spacing:var(--tracking-tighter);font-variant-numeric:tabular-nums;display:block}.home__library-stat-label{margin-top:var(--space-1);font-size:var(--text-2xs);color:var(--text-muted);display:block}.insights{gap:var(--space-8);flex-direction:column;display:flex}.insights__summary{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=760px){.insights__summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1280px){.insights__summary{grid-template-columns:repeat(6,minmax(0,1fr))}}.stat-tile{padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border-subtle)}.stat-tile__label{align-items:center;gap:var(--space-2);font-size:var(--text-2xs);color:var(--text-muted);margin-bottom:var(--space-2);display:flex}.stat-tile__value{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-black);letter-spacing:var(--tracking-tighter);font-variant-numeric:tabular-nums;line-height:var(--leading-none)}.stat-tile__unit{font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-muted);margin-left:2px}.stat-tile__note{margin-top:var(--space-2);font-size:var(--text-3xs);color:var(--text-muted)}.insights__grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=820px){.insights__grid--quad{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1180px){.insights__grid--trio{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=820px) and (width<=1179.98px){.insights__grid--trio{grid-template-columns:repeat(2,minmax(0,1fr))}.insights__grid--trio>:last-child:nth-child(odd){grid-column:1/-1}}.insights__panel{padding:var(--space-5);border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border-subtle)}.insights__panel--full{grid-column:1/-1}.chart{height:140px;margin-top:var(--space-4);align-items:flex-end;gap:2px;display:flex}.chart__bar{background:var(--blue);opacity:.75;min-width:3px;transition:opacity var(--duration) var(--ease-out);border-radius:2px 2px 0 0;flex:1;min-height:2px;position:relative}.chart__bar:hover{opacity:1}.chart__bar--empty{background:var(--wash);opacity:1}.chart__axis{margin-top:var(--space-2);font-family:var(--font-mono);font-size:var(--text-3xs);color:var(--text-muted);justify-content:space-between;display:flex}.bar-list{gap:var(--space-3);margin-top:var(--space-4);flex-direction:column;display:flex}.bar-row{gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.bar-row--link{appearance:none;width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:var(--radius-sm,6px);background:0 0;border:0;margin:0;padding:0}.bar-row--link:hover .bar-row__label,.bar-row--link:focus-visible .bar-row__label{color:var(--blue-300)}.bar-row--link:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.bar-row__label{font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bar-row__value{font-family:var(--font-mono);font-size:var(--text-3xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.bar-row__track{border-radius:var(--radius-pill);background:var(--wash);grid-column:1/-1;height:6px;display:block;overflow:hidden}.bar-row__fill{border-radius:var(--radius-pill);background:var(--blue);height:100%;transition:width var(--duration-slow) var(--ease-out);display:block}.bar-row:first-child .bar-row__fill{background:var(--art-1)}.bar-row:nth-child(2) .bar-row__fill{background:var(--art-3)}.bar-row:nth-child(3) .bar-row__fill{background:var(--art-5)}.bar-row:nth-child(4) .bar-row__fill{background:var(--art-7)}.bar-row:nth-child(5) .bar-row__fill{background:var(--art-9)}.hour-grid{margin-top:var(--space-4);grid-template-columns:repeat(24,1fr);gap:2px;display:grid}.hour-cell{aspect-ratio:1;background:var(--wash);border-radius:2px}.hour-grid__axis{margin-top:var(--space-2);font-family:var(--font-mono);font-size:var(--text-3xs);color:var(--text-muted);justify-content:space-between;display:flex}.settings-page{gap:var(--space-10);flex-direction:column;display:flex}.settings-section{gap:var(--space-4);flex-direction:column;display:flex}.settings-section__header h2{font-size:var(--text-lg);font-weight:var(--weight-bold)}.settings-section__header p{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--text-muted)}.settings-grid{gap:var(--space-4);display:grid}.settings-grid--two{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.settings-card{gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border-subtle);flex-direction:column;display:flex}.settings-card--danger{border-color:var(--danger-border)}.settings-card__title{font-size:var(--text-md);font-weight:var(--weight-semibold)}.settings-card__text{font-size:var(--text-sm);color:var(--text-muted);line-height:var(--leading-normal)}.settings-card__actions{gap:var(--space-2);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.settings-card__actions--footer{padding-bottom:var(--space-8);justify-content:flex-end}.server-card__title-row{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.switch{border-radius:var(--radius-pill);background:var(--surface-hover);border:1px solid var(--border);width:40px;height:22px;transition:var(--transition-colors);flex:none;position:relative}.switch__knob{background:var(--text-muted);width:16px;height:16px;transition:var(--transition-transform), var(--transition-colors);border-radius:50%;position:absolute;top:2px;left:2px}.switch--on{background:var(--blue-600);border-color:var(--blue-600)}.switch--on .switch__knob{background:#fff;transform:translate(18px)}.server-chip{align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);padding:2px var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-semibold);display:inline-flex}.server-chip--ok{background:var(--success-wash);color:var(--success)}.server-chip--err{background:var(--danger-wash);color:var(--danger)}.server-chip--busy{background:var(--blue-wash);color:var(--blue-300)}.server-form-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(170px,1fr));display:grid}.server-engine-line code,.settings-card__text code{font-size:var(--text-xs);background:var(--wash);border:1px solid var(--border-subtle);border-radius:var(--radius-xs);padding:1px var(--space-1)}.server-help-line{color:var(--text-muted);font-size:var(--text-xs)}.server-banner{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--yellow-wash);border:1px solid var(--yellow-glow);color:var(--yellow);font-size:var(--text-sm);font-weight:var(--weight-semibold);margin-bottom:var(--space-3)}.server-steps{gap:var(--space-1);font-size:var(--text-sm);flex-direction:column;list-style:none;display:flex}.server-step{gap:var(--space-3);color:var(--text-secondary);align-items:baseline;display:flex}.server-step__status{font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:.08em;flex:none;width:56px}.server-step--done .server-step__status{color:var(--success)}.server-step--run .server-step__status{color:var(--blue-300)}.server-step--wait{color:var(--text-muted)}.server-progress__label{font-size:var(--text-xs);color:var(--text-secondary);margin-bottom:var(--space-1);justify-content:space-between;display:flex}.server-progress__bar{border-radius:var(--radius-pill);background:var(--surface-hover);height:6px;overflow:hidden}.server-progress__fill{border-radius:var(--radius-pill);background:var(--blue);height:100%;transition:width var(--duration-slow) var(--ease-out)}.server-modal-list{margin:var(--space-2) 0;padding-left:var(--space-5);font-size:var(--text-sm);color:var(--text-secondary);gap:var(--space-2);flex-direction:column;display:flex}.server-modal-warning{color:var(--yellow)}.server-wipe-toggle{color:var(--yellow);font-size:var(--text-sm);line-height:var(--leading-normal);align-items:flex-start}.server-wipe-toggle input{margin-top:.2em}.server-chip--admin{background:var(--yellow-wash);color:var(--yellow)}.table-scroll{overflow-x:auto}.users-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.users-table th{text-align:left;font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);padding:var(--space-2) var(--space-3)}.users-table td{padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-subtle);vertical-align:middle}.users-self,.users-created{color:var(--text-muted)}.users-actions{gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.users-reveal{border-color:var(--yellow-glow)}.users-temp-password{align-items:center;gap:var(--space-2);background:var(--surface-inset,var(--wash));border:1px dashed var(--border-strong);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-family:var(--font-mono,monospace);font-size:var(--text-sm);letter-spacing:.04em;display:inline-flex}.users-add-form{gap:var(--space-3);border-top:1px solid var(--border-subtle);padding-top:var(--space-4);grid-template-columns:minmax(180px,1fr) 160px;align-items:end;display:grid}.users-add-form .settings-card__actions{grid-column:1/-1}@media (width<=640px){.users-add-form{grid-template-columns:1fr}}.settings-notice{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--blue-wash);border:1px solid var(--blue-border);color:var(--blue-100);font-size:var(--text-sm)}.settings-error{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--danger-wash);border:1px solid var(--danger-border);color:var(--danger);font-size:var(--text-sm)}.settings-success{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--success-wash);color:var(--success);font-size:var(--text-sm);border:1px solid #0000}.account-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.recovery-codes{gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface-inset);border:1px solid var(--border-subtle);grid-template-columns:repeat(auto-fill,minmax(120px,1fr));display:grid}.recovery-code{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text);text-align:center;padding:var(--space-2);border-radius:var(--radius-xs);background:var(--wash)}.progress-card{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background:var(--wash-subtle);border:1px solid var(--border-subtle);flex-direction:column;display:flex}.progress-card__header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.progress-card__title{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.progress-card__text{font-size:var(--text-xs);color:var(--text-muted)}.progress-bar{border-radius:var(--radius-pill);background:var(--wash);height:6px;overflow:hidden}.progress-bar__fill{border-radius:var(--radius-pill);background:var(--blue);height:100%;transition:width var(--duration-slow) var(--ease-out)}.progress-stats{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(80px,1fr));display:grid}.progress-stat__label{font-size:var(--text-3xs);color:var(--text-muted);display:block}.progress-stat__value{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums;margin-top:2px;display:block}.modal-overlay{z-index:var(--z-modal);padding:var(--space-6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#06080db8;place-items:center;display:grid;position:fixed;inset:0}.modal{width:100%;max-width:540px;max-height:calc(100vh - var(--space-12));border-radius:var(--radius-xl);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-xl);flex-direction:column;display:flex;overflow:hidden}.modal__header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-3);display:flex}.modal__header h2{font-size:var(--text-md);font-weight:var(--weight-bold)}.modal__close{border-radius:var(--radius-pill);width:30px;height:30px;color:var(--text-muted);transition:var(--transition-colors);place-items:center;display:grid}.modal__close:hover{background:var(--wash);color:var(--text)}.modal__body{gap:var(--space-4);padding:0 var(--space-5) var(--space-5);flex-direction:column;display:flex;overflow-y:auto}.modal__actions{justify-content:flex-end;gap:var(--space-2);padding:var(--space-4) var(--space-5);border-top:1px solid var(--border-subtle);background:var(--surface-inset);display:flex}.modal__raw-metadata{gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface-inset);border:1px solid var(--border-subtle);flex-direction:column;display:flex}.modal__raw-metadata-title{font-family:var(--font-mono);font-size:var(--text-3xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted)}.modal__raw-metadata-row{gap:var(--space-3);font-size:var(--text-xs);display:flex}.modal__raw-metadata-label{color:var(--text-muted);flex:none;min-width:76px}.modal__raw-metadata-value{color:var(--text-secondary);text-overflow:ellipsis;overflow:hidden}.modal__warning{padding:var(--space-2) var(--space-3);border-radius:var(--radius-xs);background:var(--warning-wash);color:var(--warning);font-size:var(--text-xs)}.modal__select-row{gap:var(--space-2);display:flex}.modal__select{height:40px;padding:0 var(--space-4);border-radius:var(--radius-md);background:var(--surface-inset);border:1px solid var(--border);color:var(--text);font-size:var(--text-sm);text-align:left;text-overflow:ellipsis;white-space:nowrap;transition:var(--transition-colors);flex:1;overflow:hidden}.modal__select:hover{border-color:var(--border-strong)}.modal__dropdown{max-height:220px;margin-top:var(--space-2);padding:var(--space-1);border-radius:var(--radius-md);background:var(--surface-active);border:1px solid var(--border);box-shadow:var(--shadow-md);overflow-y:auto}.modal__dropdown-item{width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-xs);color:var(--text-secondary);font-size:var(--text-sm);text-align:left;transition:var(--transition-colors);display:block}.modal__dropdown-item:hover{background:var(--wash-strong);color:var(--text)}.modal__dropdown-empty{padding:var(--space-3);font-size:var(--text-xs);color:var(--text-muted);text-align:center}.modal__inline-create{gap:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.modal__inline-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.modal__file-row{align-items:center;gap:var(--space-3);display:flex}.modal__file-button{height:38px;padding:0 var(--space-4);border-radius:var(--radius-pill);background:var(--wash);border:1px solid var(--border);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;transition:var(--transition-colors);flex:none;align-items:center;display:inline-flex}.modal__file-button:hover{background:var(--wash-strong)}.modal__file-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.modal__file-name{font-size:var(--text-xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.artwork-preview{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-md);background:var(--surface-inset);width:100%;max-width:220px}.artwork-preview--empty{border:1px dashed var(--border);color:var(--text-muted);font-size:var(--text-xs);text-align:center;padding:var(--space-4);place-items:center;display:grid}.artwork-preview--banner{aspect-ratio:16/6;max-width:100%}.auth-page{min-height:100dvh;padding:var(--space-6);background:radial-gradient(circle at 30% 20%, var(--blue-glow), transparent 42%), radial-gradient(circle at 70% 80%, var(--yellow-wash), transparent 46%), var(--field);place-items:center;display:grid}.auth-card{align-items:center;gap:var(--space-3);width:100%;max-width:400px;padding:var(--space-8);border-radius:var(--radius-xl);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-xl);flex-direction:column;display:flex}.auth-mark{width:56px;height:56px}.auth-brand{font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--weight-black);letter-spacing:var(--tracking-tight)}.auth-title{font-size:var(--text-xl);font-weight:var(--weight-black);letter-spacing:var(--tracking-tighter);text-align:center}.auth-subtitle{font-size:var(--text-sm);color:var(--text-muted);text-align:center;text-wrap:pretty}.auth-form{gap:var(--space-4);width:100%;margin-top:var(--space-3);flex-direction:column;display:flex}.auth-error{width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--danger-wash);border:1px solid var(--danger-border);color:var(--danger);font-size:var(--text-xs);text-align:center}.auth-link-button{font-size:var(--text-xs);color:var(--text-muted);transition:var(--transition-colors)}.auth-link-button:hover{color:var(--text)}.station-card__art{display:block;position:relative}.station-card__badge{background:var(--field,#0a0c11);border:1px solid var(--border,#ffffff1a);width:28px;height:28px;color:var(--yellow,#ffc93c);border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;bottom:10px;right:10px}.menu__item--radio{color:var(--blue-300,#8ab4ff);align-items:center;gap:8px;display:flex}.station-page{padding:var(--space-6) var(--space-8) var(--space-8);max-width:var(--content-max)}.station-page__back{align-items:center;gap:var(--space-1);margin-bottom:var(--space-4);color:var(--blue-300,#8ab4ff);font:inherit;font-weight:var(--weight-semibold);cursor:pointer;background:0 0;border:0;padding:0;display:inline-flex}.station-page__back:focus-visible{outline:2px solid var(--yellow,#ffc93c);outline-offset:3px;border-radius:var(--radius-sm)}.station-page__banner{border-radius:var(--radius-xl);background:var(--surface);border:1px solid var(--border,#ffffff1a);height:220px;margin-bottom:var(--space-5);position:relative;overflow:hidden}.station-page__banner-art{border-radius:0;width:100%;height:100%;font-size:220px}.station-page__banner-art img{object-fit:cover;width:100%;height:100%}.station-page__chip{left:var(--space-4);bottom:var(--space-4);align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill,999px);color:var(--yellow,#ffc93c);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.12em;text-transform:uppercase;background:#0a0c11b8;display:inline-flex;position:absolute}.station-page__line{color:var(--text-secondary);font-size:var(--text-sm);margin:0 0 var(--space-4)}.station-page__controls{gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.station-page__section{margin-bottom:var(--space-3)}.station-card__wrap{flex:none;position:relative}.station-card__remove{border:1px solid var(--border,#ffffff1a);width:24px;height:24px;color:var(--text-secondary);cursor:pointer;opacity:0;background:#0a0c11c7;border-radius:50%;justify-content:center;align-items:center;transition:opacity .12s;display:inline-flex;position:absolute;top:8px;right:8px}.station-card__wrap:hover .station-card__remove,.station-card__wrap:focus-within .station-card__remove{opacity:1}.station-card__remove:hover{color:var(--text-primary,#fff)}.station-card--busy{opacity:.7}.station-row{align-items:center;gap:var(--space-2);display:flex}.station-row .track-row__main{flex:auto;min-width:0}.station-row__say{flex:none;align-items:center;gap:4px;display:inline-flex}.station-say{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;transition:color .12s,background .12s;display:inline-flex}.station-say:hover:not(:disabled){color:var(--text-primary,#fff);background:var(--wash-strong,#ffffff14)}.station-say:focus-visible{outline:2px solid var(--yellow,#ffc93c);outline-offset:2px}.station-say--on{color:var(--yellow,#ffc93c);border-color:currentColor}.station-say:disabled{opacity:.5;cursor:default}.station-page__confirm{align-items:center;gap:var(--space-2);display:inline-flex}.station-page__played{align-items:center;gap:var(--space-1);margin:0 0 var(--space-3);color:var(--text-secondary);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;padding:0;display:inline-flex}.station-page__played:hover{color:var(--text-primary,#fff)}.station-page__history{margin-bottom:var(--space-5);opacity:.8}.stations-page .page-header__title{align-items:center;gap:var(--space-2);display:flex}.theme-group{margin-top:var(--space-4)}.theme-group__label{font-family:var(--font-mono);font-size:var(--text-3xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-2);display:block}.theme-swatches{gap:var(--space-3);flex-wrap:wrap;display:flex}.theme-swatch{width:84px;padding:var(--space-2) var(--space-1);border-radius:var(--radius-md);color:var(--text-secondary);font:inherit;cursor:pointer;transition:var(--transition-colors);background:0 0;border:1px solid #0000;flex-direction:column;align-items:center;gap:6px;display:flex}.theme-swatch:hover:not(:disabled){background:var(--wash);color:var(--text)}.theme-swatch:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}.theme-swatch--on{border-color:var(--border-strong);background:var(--wash);color:var(--text)}.theme-swatch__dot{border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:flex;position:relative}.theme-swatch--on .theme-swatch__dot:after{content:"";border:2px solid var(--text);border-radius:50%;position:absolute;inset:-7px}.theme-swatch__duck{width:24px;height:24px;display:block}.theme-swatch__name{font-size:var(--text-xs);font-weight:var(--weight-semibold)}.theme-swatch__when{font-family:var(--font-mono);letter-spacing:.04em;color:var(--text-muted);white-space:nowrap;font-size:10px}.theme-row{align-items:flex-start;gap:var(--space-3);margin-top:var(--space-5);display:flex}.theme-row .switch{flex:none;margin-top:2px}.theme-row__title{font-weight:var(--weight-semibold);font-size:var(--text-sm)}.theme-row__text{color:var(--text-secondary);font-size:var(--text-xs);line-height:var(--leading-normal);max-width:60ch}.theme-wearing{margin-top:var(--space-5);padding-top:var(--space-3);border-top:1px solid var(--border-subtle);color:var(--text-muted);font-size:var(--text-xs)}.home__day-line{color:var(--blue-300)}
