:root{--bg:#17151a;--bg-elev:#1e1b22;--bg-elev-2:#26222a;--bg-elev-3:#2e2933;--bg-sunken:#100e12;--border:rgba(255,247,240,0.07);--border-strong:rgba(255,247,240,0.14);--border-accent:rgba(255,91,46,0.4);--fg:#f6f1ea;--fg-muted:#b8b0a6;--fg-dim:#857d72;--fg-on-accent:#1a0f08;--accent:#ff5b2e;--accent-hover:#ff7548;--accent-press:#e64a20;--accent-ink:#1a0f08;--accent-glow:rgba(255,91,46,0.35);--accent-soft:rgba(255,91,46,0.12);--accent-subtle:rgba(255,91,46,0.05);--overlay-chip-bg:rgba(0,0,0,0.55);--overlay-podium-bg:rgba(10,8,12,0.38);--overlay-podium-border:rgba(255,255,255,0.06);--overlay-podium-blur:blur(10px) saturate(120%);--success:#4ade80;--success-soft:rgba(74,222,128,0.12);--warn:#fbbf24;--warn-soft:rgba(251,191,36,0.12);--danger:#f87171;--danger-soft:rgba(248,113,113,0.12);--info:#60a5fa;--info-soft:rgba(96,165,250,0.12);--tier-listener:#9ca3af;--tier-tastemaker:#fbbf24;--tier-amplifier:#60a5fa;--tier-kingmaker:#c084fc;--tier-legend:#ff5b2e;--font-display:"Syne","Inter Tight",system-ui,sans-serif;--font-ui:"Inter Tight","Inter",system-ui,-apple-system,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace;--font-deva:"Tiro Devanagari Hindi","Noto Serif Devanagari",serif;--t-display-xl:clamp(32px,5vw + 14px,64px);--t-display-lg:clamp(28px,3.5vw + 12px,52px);--t-display:clamp(22px,2vw + 14px,40px);--t-h1:clamp(22px,1.5vw + 14px,32px);--t-h2:clamp(18px,0.8vw + 14px,22px);--t-h3:16px;--t-body:15px;--t-body-sm:13px;--t-label:12px;--t-micro:11px;--t-mono-caps:10px;--t-mono-num:11px;--t-nano:8px;--w-regular:400;--w-medium:500;--w-semibold:600;--w-bold:700;--w-heavy:800;--lh-none:1;--lh-tight:1.1;--lh-snug:1.3;--lh-cozy:1.4;--lh-normal:1.5;--track-tightest:-0.035em;--track-tight:-0.03em;--track-snug:-0.025em;--track-normal:-0.02em;--track-body:-0.005em;--track-flat:0;--track-wide:0.04em;--track-wider:0.1em;--track-widest:0.16em;--track-rank:-0.05em;--t-display-1:var(--t-display-xl);--t-display-2:var(--t-display-lg);--radius-xs:4px;--radius-sm:8px;--radius:12px;--radius-lg:18px;--radius-xl:24px;--radius-pill:999px;--shadow-sm:0 1px 3px rgba(0,0,0,0.4);--shadow:0 8px 24px rgba(0,0,0,0.3),0 2px 6px rgba(0,0,0,0.2);--shadow-lg:0 24px 64px rgba(0,0,0,0.5),0 4px 16px rgba(0,0,0,0.3);--shadow-accent:0 0 0 1px var(--accent-soft),0 16px 48px -12px var(--accent-glow);--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--s-16:64px;--touch:44px;--touch-lg:48px;--ease-out:cubic-bezier(.2,.7,.3,1);--ease-spring:cubic-bezier(.2,.9,.3,1.2);--dur-fast:.15s;--dur:.25s;--dur-slow:.4s}@media (prefers-reduced-motion:reduce){:root{--dur-fast:0s;--dur:0s;--dur-slow:0s}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:var(--font-ui);font-size:var(--t-body);line-height:var(--lh-normal);letter-spacing:var(--track-body);font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:none;background:none;padding:0}button,input,select,textarea{font-family:inherit;color:inherit}a{color:inherit;text-decoration:none}::-moz-selection{background:var(--accent);color:var(--accent-ink)}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.display{font-family:var(--font-display);font-weight:var(--w-bold);letter-spacing:var(--track-tight);line-height:var(--lh-none)}.mono{font-family:var(--font-mono);font-feature-settings:"tnum";letter-spacing:var(--track-flat)}.deva{font-family:var(--font-deva);font-weight:var(--w-regular)}.t-display-xl{font-size:var(--t-display-xl)}.t-display-lg,.t-display-xl{font-family:var(--font-display);font-weight:var(--w-bold);line-height:.95;letter-spacing:var(--track-tightest)}.t-display-lg{font-size:var(--t-display-lg)}.t-display{font-size:var(--t-display);line-height:var(--lh-none)}.t-display,.t-h1{font-family:var(--font-display);font-weight:var(--w-bold);letter-spacing:var(--track-tight)}.t-h1{font-size:var(--t-h1)}.t-h1,.t-h2{line-height:var(--lh-tight)}.t-h2{font-weight:var(--w-bold);font-size:var(--t-h2);letter-spacing:var(--track-snug)}.t-h2,.t-h3{font-family:var(--font-display)}.t-h3{font-weight:var(--w-semibold);font-size:var(--t-h3);line-height:var(--lh-snug);letter-spacing:var(--track-normal)}.t-body{font-size:var(--t-body);line-height:var(--lh-normal)}.t-body,.t-body-sm{font-family:var(--font-ui);font-weight:var(--w-regular);letter-spacing:var(--track-body)}.t-body-sm{font-size:var(--t-body-sm);line-height:var(--lh-cozy)}.t-body-sm-strong{font-weight:var(--w-semibold);font-size:var(--t-body-sm);letter-spacing:var(--track-body)}.t-body-sm-strong,.t-label{font-family:var(--font-ui);line-height:var(--lh-snug)}.t-label{font-size:var(--t-label)}.t-label,.t-micro{font-weight:var(--w-medium);letter-spacing:var(--track-flat)}.t-micro{font-family:var(--font-ui);font-size:var(--t-micro);line-height:var(--lh-snug)}.t-mono-caps{font-size:var(--t-mono-caps);letter-spacing:var(--track-widest);text-transform:uppercase;font-feature-settings:"tnum"}.t-mono-caps,.t-mono-num{font-family:var(--font-mono);font-weight:var(--w-medium);line-height:var(--lh-none)}.t-mono-num{font-size:var(--t-mono-num);letter-spacing:var(--track-flat);font-feature-settings:"tnum"}.t-nano{font-weight:var(--w-semibold);font-size:var(--t-nano);line-height:var(--lh-none);letter-spacing:var(--track-wider)}.t-nano,.t-nav-section{font-family:var(--font-mono);text-transform:uppercase}.t-nav-section{font-weight:var(--w-medium);font-size:var(--t-mono-caps);line-height:var(--lh-snug);letter-spacing:.18em;color:var(--fg-dim)}.t-strong{font-weight:var(--w-semibold)}.t-muted{color:var(--fg-muted)}.t-dim{color:var(--fg-dim)}.label-micro{font-family:var(--font-mono);font-size:var(--t-mono-caps);font-weight:var(--w-medium);letter-spacing:var(--track-widest);line-height:var(--lh-snug);text-transform:uppercase;color:var(--fg-muted)}.dn-app{min-height:100vh;background:var(--bg);display:grid;grid-template-rows:auto 1fr auto}.dn-mheader{position:sticky;top:0;z-index:40;gap:10px;padding:10px 16px;background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border-bottom:1px solid var(--border);min-height:52px}.dn-mheader,.dn-mheader .brand{display:flex;align-items:center}.dn-mheader .brand{gap:8px;font-family:var(--font-display);font-weight:var(--w-bold);font-size:18px;letter-spacing:var(--track-snug)}.dn-mheader .logo-mark{width:26px;height:26px;border-radius:var(--radius-sm);background:var(--accent);display:grid;place-items:center;color:var(--accent-ink);font-family:var(--font-display);font-weight:var(--w-heavy);font-size:14px;box-shadow:0 0 14px var(--accent-glow)}.dn-tabbar{position:sticky;bottom:0;z-index:40;display:grid;grid-template-columns:repeat(5,1fr);background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom,0)}.dn-tab{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px 8px;min-height:var(--touch);color:var(--fg-muted);font-family:var(--font-ui);font-size:var(--t-mono-caps);font-weight:var(--w-medium);letter-spacing:.02em;transition:color var(--dur-fast);position:relative}.dn-tab[aria-current=page]{color:var(--fg)}.dn-tab[aria-current=page]:before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:28px;height:2.5px;background:var(--accent);border-radius:0 0 3px 3px}.dn-tab svg{width:22px;height:22px;stroke-width:1.8}.dn-tab.fab{color:var(--accent-ink)}.dn-tab.fab .fab-inner{width:44px;height:36px;border-radius:var(--radius);background:var(--accent);display:grid;place-items:center;margin-bottom:2px;box-shadow:0 6px 18px var(--accent-glow)}.dn-tab.fab .fab-inner svg{stroke:currentColor}.dn-sidebar{position:sticky;top:0;height:100vh;padding:22px 14px;display:flex;flex-direction:column;gap:4px;background:var(--bg);border-right:1px solid var(--border);min-width:76px}.dn-sidebar--collapsible{width:76px;padding:22px 12px;overflow:hidden;z-index:20;transition:width var(--dur-med,.24s) var(--ease-out,cubic-bezier(.2,.8,.2,1)),box-shadow var(--dur-med,.24s) var(--ease-out,cubic-bezier(.2,.8,.2,1))}.dn-sidebar--collapsible:focus-within,.dn-sidebar--collapsible:hover{width:240px;box-shadow:8px 0 32px rgba(0,0,0,.1)}.dn-sidebar--collapsible .brand{padding:6px 0 20px;justify-content:flex-start;overflow:hidden}.dn-sidebar--collapsible .dn-navitem{justify-content:flex-start;padding:10px 0 10px 16px;overflow:hidden}.dn-sidebar--collapsible .dn-usercard{padding-left:8px!important}.dn-sidebar--collapsible .brand .logo-mark,.dn-sidebar--collapsible .dn-navitem svg,.dn-sidebar--collapsible .dn-usercard .avatar{flex-shrink:0}.dn-sidebar--collapsible .dn-reveal{opacity:0!important;visibility:hidden;white-space:nowrap;transition:opacity var(--dur-fast,.16s) ease,visibility var(--dur-fast,.16s) ease;pointer-events:none}.dn-sidebar--collapsible:focus-within .dn-reveal,.dn-sidebar--collapsible:hover .dn-reveal{opacity:1!important;visibility:visible;pointer-events:auto;transition-delay:80ms}.dn-sidebar--collapsible .dn-navsection.dn-reveal{max-height:0;margin:0;padding:0;overflow:hidden;transition:max-height var(--dur-med,.24s) var(--ease-out,ease),padding var(--dur-med,.24s) var(--ease-out,ease),margin var(--dur-med,.24s) var(--ease-out,ease),opacity var(--dur-fast,.16s) ease}.dn-sidebar--collapsible:focus-within .dn-navsection.dn-reveal,.dn-sidebar--collapsible:hover .dn-navsection.dn-reveal{max-height:32px}.dn-sidebar--collapsible .dn-search-trigger{margin-bottom:8px}.dn-sidebar--collapsible .dn-usercard{overflow:hidden}.dn-sidebar .brand{display:flex;align-items:center;gap:10px;padding:6px 10px 20px;font-family:var(--font-display);font-weight:var(--w-bold);font-size:20px;letter-spacing:var(--track-snug)}.dn-sidebar .brand .logo-mark{width:30px;height:30px;border-radius:var(--radius-sm);background:var(--accent);display:grid;place-items:center;color:var(--accent-ink);font-family:var(--font-display);font-weight:var(--w-heavy);font-size:15px;box-shadow:0 0 18px var(--accent-glow);flex-shrink:0}.dn-navitem{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-sm);color:var(--fg-muted);font-family:var(--font-ui);font-size:var(--t-body-sm);font-weight:var(--w-medium);letter-spacing:var(--track-body);width:100%;text-align:left;min-height:40px;transition:background var(--dur-fast),color var(--dur-fast);position:relative}.dn-navitem:hover,.dn-navitem[aria-current=page]{background:var(--bg-elev);color:var(--fg)}.dn-navitem[aria-current=page]:before{content:"";position:absolute;left:-14px;top:50%;transform:translateY(-50%);width:3px;height:18px;background:var(--accent);border-radius:0 3px 3px 0}.dn-navitem svg{width:18px;height:18px;flex-shrink:0}.dn-navsection{font-family:var(--font-mono);font-size:var(--t-mono-caps);font-weight:var(--w-medium);letter-spacing:.18em;line-height:var(--lh-snug);text-transform:uppercase;color:var(--fg-dim);padding:16px 12px 6px}.dn-rail{position:sticky;top:0;height:100vh;padding:18px 8px;display:flex;flex-direction:column;gap:4px;background:var(--bg);border-right:1px solid var(--border);width:68px;align-items:center;overflow-y:auto;overflow-x:hidden;scrollbar-width:none}.dn-rail::-webkit-scrollbar{display:none}.dn-rail .brand{padding:6px 0 16px}.dn-rail .logo-mark{width:36px;height:36px;background:var(--accent);place-items:center;color:var(--accent-ink);font-family:var(--font-display);font-weight:var(--w-heavy);font-size:16px;box-shadow:0 0 18px var(--accent-glow)}.dn-rail .logo-mark,.dn-railitem{border-radius:var(--radius);display:grid}.dn-railitem{width:52px;height:52px;place-items:center;color:var(--fg-muted);position:relative;transition:background var(--dur-fast),color var(--dur-fast)}.dn-railitem:hover,.dn-railitem[aria-current=page]{background:var(--bg-elev);color:var(--fg)}.dn-railitem[aria-current=page]:after{content:"";position:absolute;left:-8px;top:50%;transform:translateY(-50%);width:3px;height:20px;background:var(--accent);border-radius:0 3px 3px 0}.dn-railitem svg{width:22px;height:22px}.dn-railitem .railname{position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);background:var(--bg-elev-3);color:var(--fg);padding:4px 8px;border-radius:var(--radius-xs);font-family:var(--font-ui);font-size:var(--t-label);font-weight:var(--w-medium);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--dur-fast);z-index:5}.dn-railitem:hover .railname{opacity:1}.dn-rail-expand{width:52px;height:40px;border-radius:var(--radius);background:var(--bg-elev);color:var(--fg);display:grid;place-items:center;border:1px solid var(--border-strong);cursor:pointer;margin-top:6px;transition:background var(--dur-fast),color var(--dur-fast),border-color var(--dur-fast)}.dn-rail-expand:hover{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.dn-rail-backdrop{position:absolute;inset:0 0 0 68px;background:rgba(0,0,0,.32);opacity:0;pointer-events:none;transition:opacity var(--dur-med,.24s) ease;z-index:40}.dn-rail-backdrop[data-open=true]{opacity:1;pointer-events:auto}.dn-rail-drawer{position:absolute;top:0;bottom:0;left:68px;width:240px;padding:22px 14px;display:flex;flex-direction:column;gap:4px;background:var(--bg);border-right:1px solid var(--border);box-shadow:8px 0 32px rgba(0,0,0,.12);transform:translateX(calc(-100% - 68px));transition:transform var(--dur-med,.24s) var(--ease-out,cubic-bezier(.2,.8,.2,1));z-index:45;overflow-y:auto;pointer-events:none}.dn-rail-drawer[data-open=true]{transform:translateX(0);pointer-events:auto}.dn-rail-drawer .dn-navitem svg{width:18px;height:18px;flex-shrink:0}.dn-rail-drawer .logo-mark{width:30px;height:30px;border-radius:var(--radius-sm);background:var(--accent);display:grid;place-items:center;color:var(--accent-ink);font-family:var(--font-display);font-weight:800;font-size:15px;box-shadow:0 0 18px var(--accent-glow);flex-shrink:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 18px;height:var(--touch);border-radius:var(--radius-pill);background:var(--bg-elev);border:1px solid var(--border-strong);color:var(--fg);font-family:var(--font-ui);font-size:14px;font-weight:var(--w-medium);letter-spacing:var(--track-body);transition:background var(--dur-fast),border-color var(--dur-fast),transform var(--dur-fast);white-space:nowrap}.btn:hover{background:var(--bg-elev-2);border-color:var(--fg-muted)}.btn:active{transform:scale(.97)}.btn-primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:var(--w-semibold)}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-primary:active{background:var(--accent-press);border-color:var(--accent-press)}.btn-ghost{background:transparent;border-color:var(--border)}.btn-lg{height:54px;padding:0 24px;font-size:var(--t-body)}.btn-sm{height:36px;padding:0 14px;font-size:var(--t-body-sm)}.btn-icon{width:var(--touch);height:var(--touch);padding:0;border-radius:var(--radius-pill);display:grid;place-items:center}.btn-block{width:100%}.card{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.card,.input,.textarea{background:var(--bg-elev)}.input,.textarea{width:100%;padding:0 14px;height:var(--touch-lg);border-radius:var(--radius);border:1px solid var(--border-strong);color:var(--fg);font-family:var(--font-ui);font-size:var(--t-body);line-height:var(--lh-normal);letter-spacing:var(--track-body);outline:none;transition:border-color var(--dur-fast),background var(--dur-fast)}.input::-moz-placeholder,.textarea::-moz-placeholder{color:var(--fg-dim)}.input::placeholder,.textarea::placeholder{color:var(--fg-dim)}.input:focus,.textarea:focus{border-color:var(--accent);background:var(--bg-elev-2)}.textarea{padding:12px 14px;min-height:100px;resize:vertical}.chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:var(--radius-pill);background:transparent;border:1px solid var(--border-strong);color:var(--fg-muted);font-family:var(--font-ui);font-size:var(--t-label);font-weight:var(--w-medium);letter-spacing:var(--track-flat);transition:background var(--dur-fast),color var(--dur-fast),border-color var(--dur-fast);white-space:nowrap}.chip:hover{color:var(--fg);border-color:var(--fg-muted)}.chip.on,.chip[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 50%,transparent);font-weight:var(--w-semibold)}.tier{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 8px;border-radius:var(--radius-pill);background:var(--bg-elev-2);border:1px solid var(--border);font-family:var(--font-mono);font-size:var(--t-mono-caps);font-weight:var(--w-medium);letter-spacing:var(--track-wider);text-transform:uppercase;color:var(--fg)}.tier-gem{width:9px;height:9px;background:var(--tier-tastemaker);transform:rotate(45deg);border-radius:1.5px;box-shadow:0 0 6px currentColor}.avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#3a3438,#1f1c22);display:grid;place-items:center;font-family:var(--font-ui);font-size:var(--t-label);font-weight:var(--w-semibold);color:var(--fg);flex-shrink:0;border:1px solid var(--border-strong);overflow:hidden}.wave{display:flex;align-items:center;gap:2px;height:36px;position:relative}.wave-bar{flex:1;background:var(--fg-dim);border-radius:1px;min-width:2px;transition:background var(--dur-fast)}.wave-bar.played{background:var(--accent)}.wave-bar.preview{background:var(--fg)}.artwork{position:relative;overflow:hidden;display:grid;place-items:center;isolation:isolate;border-radius:inherit}.artwork:not(.has-img):after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 12px,rgba(255,255,255,.04) 0,rgba(255,255,255,.04) 24px);pointer-events:none}.artwork.has-img:after{display:none}.dn-toast{display:flex;align-items:center;gap:12px;padding:10px 16px 10px 10px;background:var(--bg-elev-3);border:1px solid var(--border-strong);border-radius:var(--radius-pill);box-shadow:var(--shadow)}.dn-toast .badge{width:32px;height:32px;background:var(--accent);color:var(--accent-ink);border-radius:50%;display:grid;place-items:center;font-family:var(--font-mono);font-size:var(--t-label);font-weight:var(--w-bold)}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes marquee{0%{transform:translateZ(0)}to{transform:translate3d(-33.3333%,0,0)}}.noscroll::-webkit-scrollbar{display:none}.noscroll{scrollbar-width:none}.dn-artist-dash>*{flex-shrink:0}.dn-artist-dash svg{display:block}