@font-face{font-family:__DM_Sans_0d7163;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__DM_Sans_0d7163;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__DM_Sans_Fallback_0d7163;src:local("Arial");ascent-override:94.90%;descent-override:29.66%;line-gap-override:0.00%;size-adjust:104.53%}.__className_0d7163{font-family:__DM_Sans_0d7163,__DM_Sans_Fallback_0d7163;font-style:normal}.__variable_0d7163{--font-sans:"__DM_Sans_0d7163","__DM_Sans_Fallback_0d7163"}@font-face{font-family:__DM_Mono_9ef920;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/64418ffc17e50301-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__DM_Mono_9ef920;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/0e96d314a90a6138-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__DM_Mono_9ef920;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ba43ea3467e29870-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__DM_Mono_9ef920;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b7ea2ab4a8ad1f81-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__DM_Mono_Fallback_9ef920;src:local("Arial");ascent-override:73.71%;descent-override:23.03%;line-gap-override:0.00%;size-adjust:134.59%}.__className_9ef920{font-family:__DM_Mono_9ef920,__DM_Mono_Fallback_9ef920;font-style:normal}.__variable_9ef920{--font-mono:"__DM_Mono_9ef920","__DM_Mono_Fallback_9ef920"}*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#fff;--bg2:#f5f7fa;--bg3:#eef1f6;--border:#dde3ed;--border2:#c8d2e0;--text:#2a3344;--muted:#7a8fa8;--dim:#4a6080;--accent:#1a6fdb;--accent2:#0052b4;--white:#0f1f35;--green:#0a8f5c;--font-sans:"DM Sans",system-ui,sans-serif;--font-mono:"DM Mono",monospace;--sidebar-w:240px;--player-h:80px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px}body,html{height:100%;overflow:hidden}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{cursor:pointer}button,input{font-family:inherit;border:none;background:none;color:inherit}input{outline:none}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--muted)}.app-shell{display:grid;grid-template-columns:var(--sidebar-w) 1fr;grid-template-rows:1fr var(--player-h);height:100vh;overflow:hidden}.sidebar{grid-row:1/2;grid-column:1/2;background:var(--bg2);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.main-content{grid-row:1/2;grid-column:2/3;overflow-y:auto;padding:32px 36px 48px}.player-bar{grid-row:2/3;grid-column:1/3;background:var(--bg);border-top:1px solid var(--border)}.text-muted{color:var(--muted)}.text-dim{color:var(--dim)}.text-accent{color:var(--accent)}.text-white{color:var(--white)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-row{display:grid;align-items:center;padding:8px 12px;border-radius:var(--radius-sm);cursor:pointer;transition:background .12s ease;grid-gap:12px;gap:12px}.track-row.active,.track-row:hover{background:var(--bg3)}.track-row.active .track-title{color:var(--accent)}.track-row .queue-btn{opacity:0;transition:opacity .12s ease}.track-row:hover .queue-btn{opacity:1}.album-card{cursor:pointer;border-radius:var(--radius-md);padding:12px;transition:background .12s ease}.album-card:hover{background:var(--bg3)}.album-art{object-fit:cover;display:block}.album-art,.album-art-placeholder{width:100%;aspect-ratio:1;border-radius:var(--radius-sm);background:var(--bg3)}.album-art-placeholder{display:flex;align-items:center;justify-content:center;color:var(--border2)}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;border-radius:2px;background:var(--border);cursor:pointer}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:var(--white);-webkit-transition:transform .1s ease;transition:transform .1s ease}input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.2)}input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:2px}.nav-item{display:flex;align-items:center;gap:10px;padding:9px 16px;border-radius:var(--radius-sm);margin:1px 8px;color:var(--dim);font-size:14px;font-weight:500;cursor:pointer;transition:background .12s ease,color .12s ease}.nav-item:hover{background:var(--bg3);color:var(--white)}.nav-item.active{background:var(--bg3);color:var(--accent)}.search-bar{display:flex;align-items:center;gap:8px;background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 12px;margin:12px 12px 8px}.search-bar input{flex:1 1;font-size:13px}.search-bar input::placeholder{color:var(--muted)}.icon-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;color:var(--dim);transition:background .12s ease,color .12s ease;flex-shrink:0}.icon-btn:hover{background:var(--bg3);color:var(--white)}.icon-btn.active{color:var(--accent)}.play-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--white);color:var(--bg);transition:transform .1s ease,background .12s ease;flex-shrink:0}.play-btn:hover{transform:scale(1.05);background:var(--accent)}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:99px;font-size:11px;font-weight:500;background:var(--bg3);color:var(--muted)}.albums-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:8px;gap:8px}.footer{text-align:center;padding:16px;font-size:12px;color:var(--muted);flex-shrink:0}.footer a{color:var(--accent)}.footer a:hover{color:var(--accent2)}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .2s ease both}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg2)}.login-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:40px 36px;width:360px}.login-card h1{font-size:22px;font-weight:700;color:var(--white);margin-bottom:4px}.login-card p{font-size:13px;color:var(--muted);margin-bottom:28px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:12px;font-weight:600;color:var(--dim);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.form-input{width:100%;padding:10px 14px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;color:var(--text);transition:border-color .12s ease}.form-input:focus{border-color:var(--accent);outline:none}.submit-btn{width:100%;padding:11px;background:var(--accent);color:#fff;border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer;transition:background .12s ease;margin-top:8px}.submit-btn:hover{background:var(--accent2)}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.error-msg{color:#d94f4f;font-size:13px;margin-top:12px;text-align:center}@keyframes bar1{0%,to{height:4px}50%{height:14px}}@keyframes bar2{0%,to{height:12px}50%{height:4px}}@keyframes bar3{0%,to{height:8px}50%{height:16px}}.playing-bars{display:flex;align-items:flex-end;gap:2px;height:16px;padding-bottom:1px}.playing-bars span{display:block;width:3px;background:var(--accent);border-radius:1px}.playing-bars span:first-child{animation:bar1 .8s ease-in-out infinite}.playing-bars span:nth-child(2){animation:bar2 .8s ease-in-out .2s infinite}.playing-bars span:nth-child(3){animation:bar3 .8s ease-in-out .4s infinite}