:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--palette-transition:0s;--font-family:"Bricolage Grotesque", "Inter", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, sans-serif;--font-size-scale:100%;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.125rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:1.875rem;--text-3xl:2.25rem;--text-4xl:3rem;--text-5xl:3.75rem;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--leading-none:1;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--spacing-xs:var(--space-1);--spacing-sm:var(--space-2);--spacing-md:var(--space-4);--spacing-lg:var(--space-6);--spacing-xl:var(--space-8);--spacing-2xl:var(--space-12);--spacing-3xl:var(--space-16);--radius-none:0;--radius-xs:2px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:24px;--radius-full:9999px;--radius:var(--radius-md);--player-bar-height-desktop:90px;--player-bar-height-mobile:130px;--sidebar-width:240px;--sidebar-collapsed-width:70px;--active-side-panel-width:0px;--duration-instant:0s;--duration-fast:.15s;--duration-normal:.3s;--duration-slow:.5s;--ease-linear:linear;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-out-back:cubic-bezier(.34, 1.56, .64, 1);--ease-elastic:cubic-bezier(.68, -.55, .265, 1.55);--ease-spring:cubic-bezier(.175, .885, .32, 1.275);--transition-fast:var(--duration-fast) var(--ease-in-out);--transition-normal:var(--duration-normal) var(--ease-in-out);--transition-slow:var(--duration-slow) var(--ease-in-out);--transition:var(--transition-normal);--shadow-none:none;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--shadow-inner:inset 0 2px 4px 0 #0000000d;--shadow-glow:0 0 20px rgb(var(--highlight-rgb) / .5);--z-hide:-1;--z-base:0;--z-docked:10;--z-dropdown:1000;--z-sticky:1100;--z-banner:1200;--z-overlay:1300;--z-modal:1400;--z-popover:1500;--z-tooltip:1600;--z-toast:1700;--btn-height-sm:32px;--btn-height-md:40px;--btn-height-lg:48px;--btn-padding-sm:var(--space-2) var(--space-3);--btn-padding-md:var(--space-3) var(--space-4);--btn-padding-lg:var(--space-4) var(--space-6);--input-height:40px;--input-padding:var(--space-3) var(--space-4);--card-padding:var(--space-4);--card-gap:var(--space-4);--card-radius:var(--radius-lg);--modal-padding:var(--space-6);--modal-radius:var(--radius-xl);--modal-max-width-sm:400px;--modal-max-width-md:500px;--modal-max-width-lg:600px;--modal-max-width-xl:800px;--cover-blur-radius:50px;--cover-filter:blur(var(--ultra-cover-blur-radius,var(--cover-blur-radius,50px))) brightness(.4);--cover-radius:var(--radius-md);--viewport-width:100vw;--viewport-height:100vh;--container-padding:clamp(.75rem, 2vw, 2rem);--text-base-fluid:clamp(.875rem, .8rem + .25vw, 1rem);--text-lg-fluid:clamp(1rem, .9rem + .35vw, 1.25rem);--text-xl-fluid:clamp(1.25rem, 1rem + .75vw, 1.5rem);--text-2xl-fluid:clamp(1.5rem, 1.25rem + 1vw, 1.875rem);--text-3xl-fluid:clamp(1.75rem, 1.5rem + 1.25vw, 2.25rem);--text-4xl-fluid:clamp(2rem, 1.5rem + 2vw, 3rem);--space-fluid-sm:clamp(.5rem, .25rem + 1vw, 1rem);--space-fluid-md:clamp(1rem, .5rem + 2vw, 2rem);--space-fluid-lg:clamp(1.5rem, .75rem + 3vw, 3rem);--sidebar-width-fluid:clamp(180px, 15vw, 240px);--sidebar-collapsed-width-fluid:clamp(60px, 5vw, 70px);--player-bar-height-fluid:clamp(80px, 10vh, 90px);--player-bar-height-mobile-fluid:clamp(120px, 15vh, 140px);--card-min-width:clamp(140px, 15vw, 200px);--card-max-width:clamp(180px, 20vw, 250px);--card-gap-fluid:clamp(.75rem, 1.5vw, 1.5rem);--touch-target-min:44px;--touch-target-comfortable:48px;--animation-multiplier:1;--background-blur:12px;--surface-blur:var(--background-blur);--dynamic-gradient-duration:15s;--motion-wave-amplitude:4px;--motion-wave-duration:6s;--color-danger:#ef4444;--color-danger-hover:#dc2626;--color-success:#10b981;--color-success-hover:#059669;--color-warning:#f59e0b;--color-warning-hover:#d97706;--color-info:#3b82f6;--color-info-hover:#2563eb}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}.recently-played{background:var(--background);border-radius:28px;margin:28px 0;padding:28px;position:relative;overflow:hidden;box-shadow:0 20px 40px #0006}.recently-played-header{border-bottom:1px solid color-mix(in srgb, var(--border) 60%, transparent);justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;padding-bottom:14px;display:flex}.recently-played-label{text-transform:uppercase;letter-spacing:.14em;color:color-mix(in srgb, var(--foreground) 70%, white);font-size:.8rem}.recently-played-title{color:#fff;font-size:clamp(2.8rem,5vw + 1rem,5.5rem);font-weight:700;line-height:1.05}.recently-played-sub{color:color-mix(in srgb, var(--foreground) 60%, #999);font-size:1rem}.clear-btn{border:1px solid color-mix(in srgb, var(--border) 70%, transparent);background:color-mix(in srgb, var(--card) 82%, transparent);color:var(--foreground);cursor:pointer;border-radius:999px;align-items:center;gap:.5rem;padding:.5rem 1rem;display:inline-flex}.recently-played-cards{gap:1rem;padding-top:6px;padding-bottom:6px;display:flex;overflow-x:auto}.recently-played-cards .card{background:#1a1a1a;border-radius:26px;flex-direction:column;width:260px;min-width:260px;height:320px;display:flex}.recently-played-cards .card-image-wrapper{border-radius:26px 26px 0 0}.recently-played-cards .card-image-wrapper img{object-fit:cover;height:200px}.recently-played-cards .card-content{padding:12px 14px 14px}.recently-played-cards .card-title{color:#fff;font-size:1rem;font-weight:700}.recently-played-cards .card-subtitle{color:#d0d0d0;font-size:.9rem}.recently-played-cards .badge{position:absolute;top:10px;left:10px}.btn-primary,.progress-fill,.seek-thumb,.volume-fill,.quality-hires,.fullscreen-controls .progress-fill,.fullscreen-buttons button.active,.card:hover,.nav-item.active a,#fs-play-pause-btn{transition-property:background-color,color,border-color,box-shadow;transition-duration:var(--palette-transition);transition-timing-function:ease}:root,:root[data-theme=monochrome]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#0a0a0a;--foreground:#f5f5f5;--card:#141414;--card-foreground:#f5f5f5;--primary:#f5f5f5;--primary-foreground:#0a0a0a;--secondary:#1f1f1f;--secondary-foreground:#e0e0e0;--muted:#1f1f1f;--muted-foreground:#a0a0a0;--border:#2a2a2a;--input:#1f1f1f;--ring:#f5f5f5;--highlight:#f5f5f5;--highlight-rgb:245, 245, 245;--active-highlight:var(--highlight);--explicit-badge:#f5f5f5}:root[data-theme=dynamic]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#0a0a0a;--foreground:#f5f5f5;--card:#141414cc;--card-foreground:#f5f5f5;--primary:#f5f5f5;--primary-foreground:#0a0a0a;--secondary:#1e1e1ecc;--secondary-foreground:#e0e0e0;--muted:#1e1e1ecc;--muted-foreground:#a0a0a0;--border:#32323299;--input:#1e1e1ecc;--ring:#f5f5f5;--highlight:#f5f5f5;--highlight-rgb:245, 245, 245;--active-highlight:var(--highlight);--explicit-badge:#f5f5f5}[data-theme=dynamic] .app-container{position:relative;background:var(--background)!important}[data-theme=dynamic] .app-container:before{display:none!important}@keyframes dynamic-gradient-shift{0%{background-position:0%}25%{background-position:100% 0}50%{background-position:100%}75%{background-position:0 100%}to{background-position:0%}}:root.animations-ultra[data-theme=dynamic] .app-container:before{animation:dynamic-gradient-pan var(--dynamic-gradient-duration,18s) linear infinite;will-change:transform;background-size:130% 130%;inset:-12%;transform:translate(0,0)}@keyframes dynamic-gradient-pan{0%{transform:translate(-4%,-4%)scale(1.03)}50%{transform:translate(4%,4%)scale(1.07)}to{transform:translate(-4%,-4%)scale(1.03)}}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0;font-family:var(--font-family,"Bricolage Grotesque", "Inter", sans-serif)!important}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%;font-size:var(--font-size-scale,100%);overflow:hidden}body{background-color:var(--background);color:var(--foreground);width:100%;height:100%;transition:background-color .3s,color .3s;position:fixed;overflow:hidden;font-family:var(--font-family,"Bricolage Grotesque", "Inter", sans-serif)!important}img{background-color:var(--muted);border:none;max-width:100%;display:block}a{color:inherit;text-decoration:none}.text-link{color:var(--primary);cursor:pointer;text-decoration:underline}.text-link:hover{color:var(--highlight)}kbd{background-color:var(--secondary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);font-size:var(--text-sm);box-shadow:var(--shadow-sm);font-family:inherit}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-md{font-size:var(--text-md)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.text-3xl{font-size:var(--text-3xl)}.text-4xl{font-size:var(--text-4xl)}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.leading-none{line-height:var(--leading-none)}.leading-tight{line-height:var(--leading-tight)}.leading-snug{line-height:var(--leading-snug)}.leading-normal{line-height:var(--leading-normal)}.leading-relaxed{line-height:var(--leading-relaxed)}.m-0{margin:var(--space-0)}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-3{margin:var(--space-3)}.m-4{margin:var(--space-4)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.mt-0{margin-top:var(--space-0)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mb-0{margin-bottom:var(--space-0)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.ml-0{margin-left:var(--space-0)}.ml-2{margin-left:var(--space-2)}.ml-4{margin-left:var(--space-4)}.mr-0{margin-right:var(--space-0)}.mr-2{margin-right:var(--space-2)}.mr-4{margin-right:var(--space-4)}.mx-0{margin-left:var(--space-0);margin-right:var(--space-0)}.mx-2{margin-left:var(--space-2);margin-right:var(--space-2)}.mx-4{margin-left:var(--space-4);margin-right:var(--space-4)}.my-0{margin-top:var(--space-0);margin-bottom:var(--space-0)}.my-2{margin-top:var(--space-2);margin-bottom:var(--space-2)}.my-4{margin-top:var(--space-4);margin-bottom:var(--space-4)}.p-0{padding:var(--space-0)}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.px-0{padding-left:var(--space-0);padding-right:var(--space-0)}.px-2{padding-left:var(--space-2);padding-right:var(--space-2)}.px-3{padding-left:var(--space-3);padding-right:var(--space-3)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.py-0{padding-top:var(--space-0);padding-bottom:var(--space-0)}.py-1{padding-top:var(--space-1);padding-bottom:var(--space-1)}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.py-3{padding-top:var(--space-3);padding-bottom:var(--space-3)}.gap-0{gap:var(--space-0)}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.rounded-none{border-radius:var(--radius-none)}.rounded-xs{border-radius:var(--radius-xs)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-none{box-shadow:var(--shadow-none)}.shadow-xs{box-shadow:var(--shadow-xs)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.flex-1{flex:1}.flex-auto{flex:auto}.flex-none{flex:none}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.text-muted{color:var(--muted-foreground)}.text-highlight{color:var(--highlight)}.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}.transition-fast{transition:all var(--duration-fast) var(--ease-in-out)}.transition-normal{transition:all var(--duration-normal) var(--ease-in-out)}.transition-slow{transition:all var(--duration-slow) var(--ease-in-out)}.app-container{grid-template:"sidebar main"1fr"player player"/228px 1fr;height:100dvh;display:grid}.sidebar{background:var(--card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-right:1px solid color-mix(in srgb, var(--border) 88%, transparent);box-shadow:inset -1px 0 0 color-mix(in srgb, var(--foreground) 6%, transparent), 10px 0 30px #0000003d;z-index:100;flex-direction:column;grid-area:sidebar;gap:.85rem;width:100%;min-height:0;padding:1.1rem .85rem 1rem;transition:width .3s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.sidebar.sidebar-account-open{overflow:visible}.sidebar-content{flex-direction:column;gap:.75rem;height:100%;min-height:0;display:flex}.sidebar-nav.main{scrollbar-width:thin;flex:auto;min-height:0;padding-right:.125rem;overflow-y:auto}.sidebar-bottom-container{flex-direction:column;flex:1;min-height:0;margin-top:auto;display:flex}.sidebar-nav-bottom{border-top:1px solid color-mix(in srgb, var(--border) 82%, transparent);background:0 0;flex:none;margin-top:auto;padding-top:.85rem;position:relative}.sidebar-nav-bottom:before{content:"";height:.5rem;margin-top:-.5rem;display:block}.sidebar-nav.bottom{margin:0;padding:0}.sidebar-nav.bottom .nav-item a{gap:.6rem;padding:.55rem .72rem;font-size:.8rem;font-weight:500}.sidebar-nav.bottom .nav-item a svg{width:17px;height:17px}.main-content{min-width:0;padding:var(--spacing-xl);scroll-behavior:smooth;grid-area:main;position:relative;overflow:hidden auto;padding-bottom:160px!important}#page-background,#wave-bg{display:none!important}body,.app-container,.main-content,.page{background-color:var(--background)!important;background:var(--background)!important;background-image:none!important}#page-background .page-background-video{object-fit:cover;object-position:center 20%;pointer-events:none;width:100%;height:100%}:root[data-theme=white] #page-background{-webkit-mask-image:none;mask-image:none}.now-playing-bar{padding:var(--spacing-sm) var(--spacing-md);align-items:center;gap:var(--spacing-sm);z-index:2100;border-radius:var(--radius);background-color:color-mix(in srgb, var(--card) 85%, transparent);-webkit-backdrop-filter:blur(var(--surface-blur,var(--background-blur,20px)));border:1px solid var(--border);box-shadow:var(--shadow-2xl);transition:all var(--transition-normal) var(--ease-out-back);height:var(--player-bar-height-desktop);animation:slide-up var(--transition-slow) var(--ease-out-back);grid-area:player;grid-template-columns:1fr .9fr 1fr;display:grid;left:calc(212px + 2%);width:calc(96% - 212px)!important;position:fixed!important;bottom:15px!important}.tabler-filled-icon{fill:currentColor;stroke:none;vertical-align:middle}:root[data-theme=white] .now-playing-bar{background-color:color-mix(in srgb, var(--card) 80%, transparent);border-color:#0000001a}.sidebar-logo{letter-spacing:-.02em;align-items:center;gap:.6rem;margin-bottom:.55rem;padding:0 .5rem;font-size:1.25rem;font-weight:700;display:flex}.sidebar-logo-link{color:var(--foreground);align-items:center;gap:10px;min-width:0;text-decoration:none;display:flex}.sidebar-logo .app-logo{width:20px;height:20px;color:var(--primary);flex-shrink:0}.sidebar-logo span{white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.01em;min-width:0;font-size:1rem;overflow:hidden}#sidebar-toggle{border-radius:var(--radius-full);width:30px;height:30px;color:var(--muted-foreground);background:color-mix(in srgb, var(--card) 60%, transparent);border:1px solid color-mix(in srgb, var(--border) 85%, transparent);flex-shrink:0;padding:0}#sidebar-toggle:hover{color:var(--foreground);background:color-mix(in srgb, var(--secondary) 80%, transparent)}.sidebar-nav ul{list-style:none}.sidebar-nav .nav-item{margin-bottom:2px;position:relative}.sidebar-nav .nav-item a{color:var(--muted-foreground);transition:color var(--transition-fast), transform var(--transition-fast), background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);cursor:pointer;text-shadow:0 0 #0000;border:1px solid #0000;border-radius:.88rem;align-items:center;gap:.82rem;padding:.6rem .78rem;font-weight:550;line-height:1.2;display:flex;position:relative}.search-bar svg.search-icon{width:20px;height:20px}.sidebar-nav .nav-item a:hover{color:var(--foreground);background-color:color-mix(in srgb, var(--secondary) 72%, transparent);border-color:color-mix(in srgb, var(--border) 70%, transparent);transform:translate(2px)}.sidebar-nav .nav-item a.active{background:var(--background);color:var(--primary);border-color:color-mix(in srgb, var(--primary) 35%, var(--border));box-shadow:0 0 0 1px color-mix(in srgb, var(--primary) 15%, transparent), inset 0 0 0 .5px color-mix(in srgb, var(--foreground) 5%, transparent)}.sidebar-nav .nav-item a.active:before{display:none}.sidebar-nav .nav-item a svg{opacity:.9;flex-shrink:0;width:19px;height:19px}.sidebar-account-item{border-top:1px solid color-mix(in srgb, var(--border) 78%, transparent);margin-top:.5rem;padding-top:.55rem}.header-account-control{width:100%;position:relative}.nav-btn-account{border:1px solid color-mix(in srgb, var(--border) 88%, transparent);background:var(--card);width:100%;color:var(--foreground);text-align:left;cursor:pointer;transition:transform var(--transition-fast), border-color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast);border-radius:.9rem;align-items:center;gap:.68rem;padding:.56rem .66rem;display:flex}.nav-btn-account:hover{border-color:color-mix(in srgb, var(--primary) 34%, var(--border));background:var(--card);box-shadow:0 8px 18px #00000029, inset 0 0 0 1px color-mix(in srgb, var(--foreground) 6%, transparent);transform:translateY(-1px)}.nav-btn-account:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb, var(--primary) 35%, transparent), 0 0 0 4px color-mix(in srgb, var(--primary) 18%, transparent);outline:none}.nav-account-avatar{border:1px solid color-mix(in srgb, var(--border) 88%, transparent);background:color-mix(in srgb, var(--secondary) 72%, transparent);width:30px;height:30px;color:var(--muted-foreground);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:hidden}#header-account-img{object-fit:cover;width:100%;height:100%;display:none}.nav-account-status-dot,.nav-btn-account.is-authenticated .nav-account-status-dot{display:none}.nav-account-meta{flex-direction:column;flex:1;gap:.05rem;min-width:0;display:flex}#sidebar-account-name{white-space:nowrap;text-overflow:ellipsis;font-size:.87rem;font-weight:620;overflow:hidden}#sidebar-account-subtitle{color:color-mix(in srgb, var(--muted-foreground) 90%, transparent);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.nav-account-chevron{width:14px;height:14px;color:var(--muted-foreground);transition:transform var(--transition-fast);flex-shrink:0}.nav-btn-account.is-open .nav-account-chevron{transform:rotate(180deg)}.pinned-items-header{text-transform:uppercase;color:var(--muted-foreground);letter-spacing:.05em;margin-bottom:.5rem;padding:0 .75rem;font-size:.75rem;font-weight:600}#pinned-items-nav{flex:auto;min-height:0;margin-top:auto;margin-bottom:0;padding-bottom:0;overflow:visible}#pinned-items-list .nav-item a{gap:.75rem;padding:.5rem .75rem;font-size:.9rem}#pinned-items-list .nav-item a .pinned-item-cover{border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;width:24px;height:24px}#pinned-items-list .nav-item a .pinned-item-cover.artist{border-radius:var(--radius-full)}#pinned-items-list .nav-item a .pinned-item-name{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.pinned-item-collage{border-radius:var(--radius-sm);flex-shrink:0;grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;width:24px;height:24px;display:grid;overflow:hidden}.pinned-item-collage img{object-fit:cover;background-color:var(--muted);width:100%;height:100%}#sidebar-overlay{z-index:2150;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0404088f;display:none;position:fixed;inset:0}.main-header{justify-content:space-between;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);background:color-mix(in srgb, var(--card) 75%, transparent);border:1px solid color-mix(in srgb, var(--border) 85%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;border-radius:1.05rem;padding:.55rem;display:flex;position:sticky;top:.5rem;box-shadow:0 10px 28px #00000042}.navigation-controls{border-right:1px solid color-mix(in srgb, var(--border) 85%, transparent);flex:none;align-items:center;gap:.5rem;padding-left:.15rem;padding-right:.25rem;display:flex}.nav-btn{border-radius:var(--radius-full);background-color:color-mix(in srgb, var(--card) 82%, transparent);border:1px solid color-mix(in srgb, var(--border) 85%, transparent);width:34px;height:34px;color:var(--foreground);cursor:pointer;transition:transform var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast);justify-content:center;align-items:center;display:flex;box-shadow:0 4px 14px #0000002e}.nav-btn:hover{background-color:color-mix(in srgb, var(--secondary) 82%, transparent);transform:translateY(-1px);box-shadow:0 8px 18px #0003}.nav-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.hamburger-menu{background:color-mix(in srgb, var(--card) 82%, transparent);border:1px solid color-mix(in srgb, var(--border) 85%, transparent);color:var(--foreground);cursor:pointer;border-radius:var(--radius-full);width:34px;height:34px;transition:background-color var(--transition), transform var(--transition-fast);justify-content:center;align-items:center;padding:0;display:none}.hamburger-menu:hover{background-color:color-mix(in srgb, var(--secondary) 82%, transparent);transform:translateY(-1px)}.search-bar{flex:auto;width:auto;min-width:0;max-width:none}.search-bar input{transition:box-shadow var(--transition-fast), border-color var(--transition-fast), background-color var(--transition-fast);font-size:1rem}.search-bar,.track-list-search-container{align-items:center;display:flex;position:relative}.search-bar svg.search-icon,.track-list-search-container svg.search-icon{color:var(--muted-foreground);pointer-events:none;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.search-bar input,.track-list-search-input{background-color:color-mix(in srgb, var(--input) 78%, transparent);border:1px solid color-mix(in srgb, var(--border) 88%, transparent);width:100%;color:var(--foreground);transition:box-shadow var(--transition-fast), border-color var(--transition-fast);border-radius:.88rem;padding:.75rem 2.5rem}.search-bar input:focus,.track-list-search-input:focus{outline:none}.recommended-search{margin-bottom:var(--spacing-md);max-width:560px}#search-form{align-items:center;gap:.5rem;width:100%;min-width:0;display:flex}.search-nav-controls{border:1px solid color-mix(in srgb, var(--border) 86%, transparent);background:color-mix(in srgb, var(--card) 64%, transparent);border-radius:.95rem;flex-shrink:0;align-items:center;gap:.2rem;min-width:0;padding:.22rem;display:flex}.search-nav-controls .nav-btn{width:32px;height:32px}.search-nav-controls .hamburger-menu{background:color-mix(in srgb, var(--card) 82%, transparent);border:1px solid color-mix(in srgb, var(--border) 85%, transparent);border-radius:var(--radius-full);width:32px;height:32px;color:var(--foreground);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;padding:0;display:none}.search-nav-controls .hamburger-menu:hover{background-color:color-mix(in srgb, var(--secondary) 82%, transparent);transform:translateY(-1px)}.quick-nav-buttons{border-left:1px solid color-mix(in srgb, var(--border) 85%, transparent);scrollbar-width:none;align-items:center;gap:.24rem;max-width:min(44vw,320px);margin-left:.08rem;padding-left:.2rem;display:inline-flex;overflow-x:auto}.quick-nav-buttons::-webkit-scrollbar{display:none}.quick-nav-btn{border-radius:var(--radius-full);border:1px solid color-mix(in srgb, var(--border) 84%, transparent);background:color-mix(in srgb, var(--card) 82%, transparent);width:30px;height:30px;color:var(--muted-foreground);cursor:pointer;transition:color var(--transition-fast), border-color var(--transition-fast), background-color var(--transition-fast), transform var(--transition-fast);justify-content:center;align-items:center;display:inline-flex}.quick-nav-btn:hover{color:var(--foreground);background:color-mix(in srgb, var(--secondary) 84%, transparent);border-color:color-mix(in srgb, var(--border) 68%, transparent);transform:none}.search-nav-controls .nav-btn:hover,.search-nav-controls .quick-nav-btn:hover,.search-nav-controls .nav-btn-account--compact:hover,.search-nav-controls .hamburger-menu:hover{box-shadow:none;transform:none!important}.quick-nav-btn.active{color:var(--primary);background:color-mix(in srgb, var(--primary) 14%, transparent);border-color:color-mix(in srgb, var(--primary) 34%, var(--border))}.header-account-control--search{width:auto;margin-left:.25rem}.search-nav-controls .nav-btn-account--compact{border-radius:var(--radius-full);justify-content:center;gap:0;width:34px;height:34px;padding:0}.search-nav-controls .nav-btn-account--compact .nav-account-meta,.search-nav-controls .nav-btn-account--compact .nav-account-chevron{display:none}.search-account-dropdown{min-width:220px;inset:calc(100% + .5rem) auto auto 0}.search-input-wrapper{flex:1;min-width:0;position:relative}@media (width<=1320px){#search-form{flex-wrap:wrap}.search-nav-controls{order:1;width:100%}.search-input-wrapper{flex:1 0 100%;order:2;margin-top:.45rem}.quick-nav-buttons{max-width:min(100vw - 180px,100%)}}.search-input-wrapper input{width:100%;padding-right:.75rem}body.has-page-background .search-bar input{background-color:var(--background)}body.navbar-removed .app-container{grid-template:"main"1fr"player"/1fr}body.navbar-removed .sidebar,body.navbar-removed #sidebar-overlay{display:none!important}body.navbar-removed .now-playing-bar{width:96%!important;left:2%!important}body.has-page-background .track-item:hover{background-color:var(--track-hover-bg,var(--secondary));transform:scale(1.005)}.search-input-wrapper .search-icon{pointer-events:none}.search-input-wrapper input{border-radius:var(--radius-full);background:color-mix(in srgb, var(--card) 88%, transparent);border:1px solid color-mix(in srgb, var(--border) 60%, transparent);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);padding:.7rem 2.7rem .7rem 2.9rem;font-size:.95rem}.search-input-wrapper input:focus{outline:none}.search-input-wrapper:has(input:focus){outline:none}.search-clear-btn{width:1.7rem;height:1.7rem;color:var(--muted-foreground);background:color-mix(in srgb, var(--secondary) 82%, transparent);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;right:.55rem;transform:translateY(-50%)}.search-clear-btn:hover{color:var(--foreground);background:var(--secondary)}.search-clear-btn[hidden]{display:none}.search-input-wrapper .search-history{background:color-mix(in srgb, var(--card) 96%, transparent);-webkit-backdrop-filter:blur(20px)saturate(150%);border:1px solid color-mix(in srgb, var(--border) 60%, transparent);border-radius:var(--radius-lg);max-height:340px;z-index:var(--z-dropdown,1000);animation:fade-in-slide-up .22s var(--ease-out);transform-origin:top;padding:.4rem;position:absolute;top:calc(100% + .45rem);left:0;right:0;overflow-y:auto;box-shadow:0 18px 44px #00000038}.search-input-wrapper .search-dropdown-head{letter-spacing:.14em;text-transform:uppercase;color:var(--muted-foreground);opacity:.85;padding:.45rem .8rem .35rem;font-size:.66rem;font-weight:700}.search-input-wrapper .search-history-item{border-radius:var(--radius-md);width:100%;color:var(--foreground);font:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;align-items:center;gap:.7rem;padding:.5rem .7rem;font-size:.9rem;text-decoration:none;display:flex}.search-input-wrapper .search-history-item:hover,.search-input-wrapper .search-history-item:focus-visible{background:color-mix(in srgb, var(--secondary) 72%, transparent);outline:none}.search-input-wrapper .search-history-item .history-icon{color:var(--muted-foreground);opacity:.7;flex-shrink:0;display:flex}.search-input-wrapper .search-history-item .query-text{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.search-input-wrapper .search-history-meta{flex-direction:column;flex:1;gap:.05rem;min-width:0;display:flex}.search-input-wrapper .search-history-sub{color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.search-input-wrapper .search-history-track .search-row-art{flex-shrink:0;width:34px}.search-input-wrapper .delete-history-btn{color:var(--muted-foreground);opacity:.55;transition:opacity var(--transition-fast), color var(--transition-fast);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:.3rem;display:flex}.search-input-wrapper .delete-history-btn:hover{opacity:1;color:#ef4444}.search-input-wrapper .search-history-clear-all{width:100%;font:inherit;color:var(--primary);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;padding:.55rem;font-size:.82rem;font-weight:600}.search-input-wrapper .search-history-clear-all:hover{background:var(--secondary)}.search-input-wrapper .search-dropdown-empty{color:var(--muted-foreground);margin:0;padding:.8rem .9rem;font-size:.85rem}@media (prefers-reduced-motion:reduce){.search-input-wrapper .search-history{-webkit-backdrop-filter:none;animation:none}}input[type=search]::-webkit-search-cancel-button{appearance:none;display:none}.page{z-index:1;display:none;position:relative}.page.active{animation:fade-in-slide-up var(--transition-normal) var(--ease-out-back);display:block}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in-slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translate(0,0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pop-in{0%{opacity:0;transform:scale(.9)}70%{transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes slide-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0,0)}}@keyframes slide-out{0%{opacity:1;transform:translate(0,0)}to{opacity:0;transform:translate(20px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes text-reveal{0%{opacity:0;filter:blur(4px);transform:translateY(100%)}to{opacity:1;filter:blur();transform:translate(0,0)}}@keyframes heading-reveal{0%{opacity:0;letter-spacing:.2em;transform:translate(-20px)}to{opacity:1;letter-spacing:normal;transform:translate(0,0)}}@keyframes card-enter{0%{opacity:0;transform:translateY(30px)scale(.95)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes glow-pulse{0%,to{box-shadow:0 0 20px rgb(var(--accent-rgb,255, 255, 255), .3)}50%{box-shadow:0 0 40px rgb(var(--accent-rgb,255, 255, 255), .5)}}@keyframes float{0%,to{transform:translate(0,0)}50%{transform:translateY(-10px)}}@keyframes gradient-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes typewriter{0%{width:0}to{width:100%}}@keyframes blink-caret{0%,to{border-color:#0000}50%{border-color:var(--primary)}}.animate-text-reveal{animation:text-reveal .6s var(--ease-out-back) forwards}.animate-heading-reveal{animation:heading-reveal .8s var(--ease-out-back) forwards}.animate-card-enter{animation:card-enter .5s var(--ease-out-back) forwards}.animate-shimmer{isolation:isolate;position:relative;overflow:hidden}.animate-glow-pulse{animation:2s ease-in-out infinite glow-pulse}.animate-float{animation:3s ease-in-out infinite float}.animate-gradient{background-size:200% 200%;animation:8s infinite gradient-shift}.stagger-1{animation-delay:50ms}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.stagger-6{animation-delay:.3s}.stagger-7{animation-delay:.35s}.stagger-8{animation-delay:.4s}.stagger-9{animation-delay:.45s}.stagger-10{animation-delay:.5s}.animate-on-load{opacity:0}.animate-on-load.animated{opacity:1}:root{--carousel-bleed:var(--spacing-xl)}@media (width<=1024px){:root{--carousel-bleed:var(--spacing-lg)}}@media (width<=768px){:root{--carousel-bleed:var(--spacing-sm)}}@media (hover:none) and (pointer:coarse){:root{--carousel-bleed:var(--spacing-sm)}}.carousel-container{width:auto;margin:0 calc(-1 * var(--carousel-bleed));padding:var(--space-fluid-sm) var(--carousel-bleed);position:relative;overflow:hidden}.carousel-header{padding:0 var(--carousel-bleed);justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.carousel-title{font-size:var(--text-xl-fluid);color:var(--text-primary);font-weight:600}.carousel-nav{gap:.5rem;display:flex}.carousel-nav-btn{border:1px solid var(--border-color);background:var(--card);width:40px;height:40px;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;display:flex}.carousel-nav-btn:hover{background:var(--card-hover);transform:scale(1.05)}.carousel-nav-btn:disabled{opacity:.3;cursor:not-allowed;transform:none}.carousel-track{gap:var(--card-gap-fluid);scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:x mandatory;display:flex;overflow-x:auto}.carousel-track::-webkit-scrollbar{display:none}.carousel-item{scroll-snap-align:start;animation:card-enter .5s var(--ease-out-back) forwards;opacity:0;flex-shrink:0}.carousel-item-large{width:clamp(280px,40vw,400px)}.carousel-item-large .card-image{aspect-ratio:16/9;border-radius:var(--radius-lg);overflow:hidden}.carousel-item-artist{text-align:center;width:clamp(140px,15vw,180px)}.carousel-item-artist .card-image{aspect-ratio:1;border-radius:50%;margin-bottom:.75rem;overflow:hidden}.carousel-item-artist .card-image img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-normal)}.carousel-item-artist:hover .card-image img{transform:scale(1.1)}.carousel-item-album{width:var(--card-min-width);max-width:var(--card-max-width)}.carousel-item-album .card-image{aspect-ratio:1;border-radius:var(--radius-md);margin-bottom:.5rem;overflow:hidden}.carousel-progress{justify-content:center;gap:.5rem;margin-top:1rem;display:flex}.carousel-progress-dot{background:var(--border-color);width:6px;height:6px;transition:all var(--transition-fast);border-radius:50%}.carousel-progress-dot.active{background:var(--primary);border-radius:3px;width:24px}.carousel-container:before,.carousel-container:after{content:"";pointer-events:none;z-index:10;width:60px;position:absolute;top:0;bottom:0}.carousel-container:before{background:0 0;left:0}.carousel-container:after{background:0 0;right:0}@media (width<=768px){.carousel-container:before,.carousel-container:after{display:none}}.card-grid{display:grid}html.carousel-mode .card-grid,.carousel-mode .card-grid{scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:x mandatory;gap:var(--card-gap-fluid);padding-top:var(--space-2);padding-bottom:var(--space-2);margin-top:calc(-1 * var(--space-2));margin-bottom:0;margin-left:calc(-1 * var(--carousel-bleed));margin-right:calc(-1 * var(--carousel-bleed));padding-left:var(--carousel-bleed);-webkit-overflow-scrolling:touch;padding-right:0;flex-wrap:nowrap!important;display:flex!important;overflow:auto visible!important}html.carousel-mode .card-grid::-webkit-scrollbar{display:none}.carousel-mode .card-grid::-webkit-scrollbar{display:none}html.carousel-mode .card-grid>.card,.carousel-mode .card-grid>.card{scroll-snap-align:start;width:var(--card-min-width);min-width:var(--card-min-width);max-width:var(--card-max-width);flex-shrink:0}html.carousel-mode .card-grid>*,.carousel-mode .card-grid>*{scroll-snap-align:start;flex-shrink:0}.carousel-wrapper,:not(.carousel-mode) .carousel-container{display:none}.carousel-loading-indicator{z-index:20;pointer-events:none;justify-content:center;align-items:center;width:60px;height:100%;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel-loading-indicator.left{background:0 0;left:0}.carousel-loading-indicator.right{background:0 0;right:0}.carousel-loading-indicator .loading-spinner{border:2px solid var(--border-color);border-top-color:var(--primary);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}.carousel-track.dragging{cursor:grabbing!important}.carousel-track *{pointer-events:none}.carousel-track:not(.dragging) *{pointer-events:auto}@keyframes heart-beat{0%{transform:scale(1)}25%{transform:scale(1.2)}50%{transform:scale(.95)}to{transform:scale(1)}}@keyframes skeleton-breathe{0%,to{opacity:1}50%{opacity:.78}}@keyframes skeleton-sheen{0%{transform:translate(-135%)}to{transform:translate(135%)}}:root:not(.disable-gpu-acceleration) .card,:root:not(.disable-gpu-acceleration) .card-image-wrapper,:root:not(.disable-gpu-acceleration) .modal,:root:not(.disable-gpu-acceleration) .modal-content,:root:not(.disable-gpu-acceleration) .sidebar,:root:not(.disable-gpu-acceleration) .now-playing-bar,:root:not(.disable-gpu-acceleration) .track-item,:root:not(.disable-gpu-acceleration) .btn-icon,:root:not(.disable-gpu-acceleration) .page,:root:not(.disable-gpu-acceleration) .slide-panel,:root:not(.disable-gpu-acceleration) .dropdown-menu,:root:not(.disable-gpu-acceleration) .toast{backface-visibility:hidden;perspective:1000px;transform:translateZ(0)}.modal.active{will-change:opacity, transform}.animation-complete{will-change:auto}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.card:hover,.card:hover .card-image{transform:none}.sidebar{transition:none}.page.active{animation:none}.modal.active .modal-content{opacity:1;transform:none}}@media (prefers-reduced-motion:no-preference){.card:hover{transform:translateY(-6px)scale(1.01)}}.animations-none *,.animations-none :before,.animations-none :after{transition-duration:0s!important;animation-duration:0s!important}.animations-reduced *,.animations-reduced :before,.animations-reduced :after{animation-duration:calc(var(--duration-normal) * .5)!important;transition-duration:calc(var(--duration-normal) * .5)!important}.animations-enhanced .card:hover{transform:translateY(-10px)scale(1.02)}.animations-ultra .card,.animations-ultra .now-playing-bar .cover-shell,.animations-ultra #vinyl-disc-container.rotating-disc{backface-visibility:hidden;transform:translateZ(0)}.disable-gpu-acceleration.animations-ultra .card,.disable-gpu-acceleration.animations-ultra .now-playing-bar .cover-shell,.disable-gpu-acceleration.animations-ultra #vinyl-disc-container.rotating-disc{backface-visibility:visible;transform:none}.animations-ultra .card:hover{transform:translateY(-12px)scale(1.025)}.disable-gpu-acceleration.animations-ultra .card:hover{transform:translateY(-12px)scale(1.025)}.animate-spin{animation:1s linear infinite spin}.content-section{margin-bottom:var(--spacing-2xl)}.section-title{margin-bottom:var(--spacing-lg);font-size:clamp(1.5rem,4vw,2.25rem);font-weight:700}.search-tabs{gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);border-bottom:1px solid var(--border);display:flex}.search-tab{color:var(--muted-foreground);padding:var(--spacing-sm) var(--spacing-lg);cursor:pointer;border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:color var(--transition-fast), background-color var(--transition-fast), transform var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;font-size:1rem;font-weight:500;position:relative}.search-tab:hover{color:var(--foreground);background-color:rgb(var(--highlight-rgb), .05)}.search-tab:active{transform:translateY(1px)}.search-tab.active{color:var(--foreground);border-bottom-color:var(--highlight)}.search-tab-content{display:none}.search-tab-content.active{animation:fade-in-slide-up .4s var(--ease-out-back);display:block}#search-tab-all.active{gap:var(--spacing-lg);display:grid}#search-tab-all .search-all-section{gap:var(--spacing-sm);padding-bottom:var(--spacing-md);border-bottom:1px solid color-mix(in srgb, var(--border) 86%, transparent);display:grid}#search-tab-all .search-all-section:last-child{border-bottom:none;padding-bottom:0}.search-all-section-title,.search-all-title{align-items:center;gap:var(--spacing-sm);letter-spacing:.09em;text-transform:uppercase;color:color-mix(in srgb, var(--muted-foreground) 92%, transparent);margin:0;font-size:.84rem;font-weight:700;display:flex}.search-all-section-title:after,.search-all-title:after{content:"";background:0 0;flex:1;min-width:1rem;height:1px}#search-artists-container .card.search-artist-card,#search-all-artists-container .card.search-artist-card{min-height:0}#search-artists-container .card.search-artist-card .card-image,#search-all-artists-container .card.search-artist-card .card-image{aspect-ratio:1;object-fit:cover}.settings-tabs{gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.settings-tab{color:var(--muted-foreground);padding:var(--spacing-sm) var(--spacing-lg);cursor:pointer;border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:color var(--transition-fast), background-color var(--transition-fast), transform var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;font-size:1rem;font-weight:500;position:relative}.settings-tab:hover{color:var(--foreground);background-color:rgb(var(--highlight-rgb), .05)}.settings-tab:active{transform:translateY(1px)}.settings-tab.active{color:var(--foreground);border-bottom-color:var(--highlight)}.settings-tab-content{display:none}.settings-tab-content.active{animation:fade-in-slide-up .4s var(--ease-out-back);display:block}.main-content,.page,.card-grid,.track-list,.content-section{container:content/inline-size}@container content (width>=600px){.card-grid{grid-template-columns:repeat(auto-fill, minmax(var(--card-min-width), 1fr))}}@container content (width<=400px){.card{padding:var(--space-2)}.card-title{font-size:var(--text-sm)}.card-subtitle{font-size:var(--text-xs)}}@container content (width<=500px){.track-item{gap:var(--space-2)}.track-item-actions{display:none}.track-item-duration{font-size:var(--text-xs)}}@container content (width<=600px){.detail-header{flex-direction:column;align-items:flex-start}.detail-header .cover-container{margin-bottom:var(--space-4)}}.card-grid{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.card{border-radius:var(--radius-xl);transition:transform var(--transition-normal), box-shadow var(--transition-normal);cursor:pointer;background-color:#0000;border:none;padding:0;display:block;position:relative;overflow:hidden}.card:hover{transform:translateY(-8px);box-shadow:0 20px 40px -12px #0006}.card-content{z-index:5;background:0 0;padding:1.5rem;position:absolute;bottom:0;left:0;right:0}.card-image-wrapper{border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);transition:box-shadow var(--transition-normal);aspect-ratio:1;width:100%;position:relative;overflow:hidden}.card:hover .card-image-wrapper{box-shadow:var(--shadow-xl)}.card-image{object-fit:cover;border-radius:var(--radius);width:100%;height:100%;transition:transform var(--transition-slow)}.card-like-btn{position:absolute;top:2%;right:2%}.card-actions{z-index:10;gap:8px;display:flex;position:absolute;top:12px;right:12px}.card-action-btn,.card-menu-btn,.edit-playlist-btn{cursor:pointer;width:36px;height:36px;transition:all var(--transition-fast);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;opacity:0;background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;transform:scale(.9)}.card:hover .card-action-btn,.card:hover .card-menu-btn,.card:hover .edit-playlist-btn{opacity:1;transform:scale(1)}.card-action-btn:hover,.card-menu-btn:hover,.edit-playlist-btn:hover{background:#000c;transform:scale(1.1)}.card-play-btn{opacity:0;width:48px;height:48px;transform:scale(.9);box-shadow:0 4px 16px #0006;background:var(--primary)!important;color:var(--primary-foreground)!important}.card-play-btn:hover{filter:brightness(1.15);transform:scale(1.1);box-shadow:0 6px 20px #00000080;background:var(--primary)!important}.card-play-btn svg{width:20px;height:20px;margin-left:2px}.card-like-btn{cursor:pointer;width:36px;height:36px;transition:all var(--transition-fast);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;opacity:0;z-index:10;background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:12px;left:12px}.card:hover .card-like-btn{opacity:1}.card-like-btn:hover{background:#000c;transform:scale(1.1)}.card-like-btn.active{opacity:1;color:#ef4444!important}.delete-playlist-btn{display:none}.card-collage{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;padding:0;display:grid;overflow:hidden}.card-collage img{object-fit:cover;border-radius:0;width:100%;height:100%;margin:0}.card-collage.items-3 img:first-child{grid-row:span 2;height:100%}.card-collage.items-2{grid-template-rows:1fr;grid-template-columns:1fr 1fr}.card.artist .card-image{border-radius:var(--radius-md)}.card-image-wrapper .explicit-badge{position:absolute;top:.5rem;right:.5rem}.card-title{color:#fff;letter-spacing:-.01em;text-overflow:ellipsis;-webkit-line-clamp:2;line-clamp:2;text-shadow:0 2px 4px #00000080;-webkit-box-orient:vertical;margin:0 0 .25rem;font-size:1.1rem;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.card-subtitle{color:#fffc;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 2px #00000080;margin:0;font-size:.9rem;line-height:1.4;overflow:hidden}.heart-icon{transition:transform .2s,color .2s}.like-btn,.like-btn:hover .heart-icon{color:#fff}.heart-icon.filled{color:#fff;fill:#fff;stroke:#fff;animation:heart-beat .4s var(--ease-elastic)}.track-item:hover .like-btn{opacity:1}.like-btn.active .heart-icon{color:#fff;fill:#fff;stroke:#fff}.explicit-badge{border:1px solid var(--secondary);border-radius:var(--radius-xs);min-width:1.1em;color:var(--muted-foreground);background-color:rgb(var(--highlight-rgb), .08);vertical-align:middle;letter-spacing:.02em;justify-content:center;align-items:center;margin-left:.35rem;padding:.15rem .3rem;font-size:.6rem;font-weight:700;line-height:1;display:inline-flex}.quality-hires{border:1px solid var(--secondary);color:var(--muted-foreground);border-radius:var(--radius-xs);vertical-align:middle;margin-left:.5rem;padding:.15rem .3rem;font-size:.6rem;font-weight:700;line-height:1}.quality-lossless{border:1px solid var(--secondary);color:var(--muted-foreground);background-color:rgb(var(--highlight-rgb), .1);border-radius:var(--radius-xs);vertical-align:middle;margin-left:.5rem;padding:.15rem .3rem;font-size:.6rem;font-weight:700;line-height:1}.quality-atmos{border:1px solid var(--secondary);color:var(--muted-foreground);background-color:rgb(var(--highlight-rgb), .1);border-radius:var(--radius-xs);vertical-align:middle;align-items:center;gap:.2rem;margin-left:.5rem;padding:.15rem .3rem;font-size:.6rem;font-weight:700;line-height:1;display:inline-flex}.quality-atmos svg{width:12px;height:auto;display:block}.quality-warning{color:#ef4444;border-radius:var(--radius-xs);vertical-align:middle;background-color:#ef44441a;border:1px solid #ef4444;margin-left:.5rem;padding:.15rem .3rem;font-size:.6rem;font-weight:700;line-height:1}.track-list{flex-direction:column;gap:2px;display:flex}#home-recommended-songs,#artist-detail-tracks,#playlist-detail-recommended{gap:2px var(--spacing-xl);grid-template-columns:repeat(auto-fill,minmax(480px,1fr));display:grid}#playlist-detail-recommended .track-item{grid-template-columns:40px 1fr 32px 64px}@media (width<=1100px){#home-recommended-songs,#artist-detail-tracks,#playlist-detail-recommended{grid-template-columns:1fr}}.album-content-layout{display:block}.album-content-layout:after{content:"";clear:both;display:table}@media (width>=1200px){#album-detail-tracklist{float:left;width:55%;margin-right:var(--spacing-2xl);margin-bottom:var(--spacing-2xl)}.album-content-layout .content-section{margin-bottom:var(--spacing-2xl);margin-top:0!important}.album-content-layout .content-section .card-grid{gap:0;display:block}.album-content-layout .content-section .card-grid .card{vertical-align:top;width:155px;margin:0 var(--spacing-md) var(--spacing-md) 0;white-space:normal;display:inline-block}.album-content-layout .content-section .card-grid .card.compact{vertical-align:top;width:220px;margin-right:var(--spacing-sm);display:inline-flex}.album-content-layout .section-title{margin-bottom:var(--spacing-md);clear:none;font-size:1.4rem}}.track-list-header{align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm);color:var(--muted-foreground);border-bottom:1px solid var(--border);margin-bottom:var(--spacing-xs);grid-template-columns:40px 1fr 80px 48px;font-size:.9rem;display:grid}.track-list-header .duration-header{justify-self:flex-end}.is-editable .track-list-header .duration-header{padding-right:1.5rem}.track-item{gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);transition:background-color var(--transition-fast), transform var(--transition-fast);cursor:pointer;border:1px solid #0000;grid-template-columns:40px 1fr 60px 40px;align-items:center;display:grid}.track-item:hover{background-color:color-mix(in srgb, var(--secondary) 30%, transparent);transform:scale(1.005)}.track-item.playing{background-color:rgb(var(--highlight-rgb), .15);border-left:3px solid var(--highlight);padding-left:calc(var(--spacing-sm) - 3px)}.track-item.playing .track-item-details .title{color:var(--highlight)}.track-item.unavailable{opacity:.5;cursor:not-allowed;filter:grayscale()}.track-item.unavailable .title,.track-item.unavailable .artist,.track-item.unavailable .track-item-duration{color:var(--muted-foreground)}.track-item.dragging{opacity:.5;z-index:2000;pointer-events:auto}.track-number{color:var(--muted-foreground);text-align:center;justify-content:center;align-items:center;font-size:.9rem;display:flex}.billboard-chart-list .track-item{grid-template-columns:40px 1fr 96px 24px}.billboard-chart-list .track-number.rank-gold{color:#f5c518;font-weight:700}.billboard-chart-list .track-number.rank-silver{color:silver;font-weight:700}.billboard-chart-list .track-number.rank-bronze{color:#cd7f32;font-weight:700}.billboard-chart-list .track-item-actions{pointer-events:none;visibility:hidden}.billboard-chart-list .track-item.billboard-resolving .track-item-info{opacity:.55}.track-item-info{align-items:center;gap:var(--spacing-md);min-width:0;display:flex}.track-item-cover{background-color:var(--muted);border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;width:40px;height:40px}.track-item-details{min-width:0}.track-item-details .title{white-space:nowrap;text-overflow:ellipsis;align-items:center;font-weight:500;display:flex;overflow:hidden}.track-item-details .artist{color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;overflow:hidden}.track-collab-meta{color:color-mix(in srgb, var(--muted-foreground) 90%, transparent)}.track-item-duration{color:var(--muted-foreground);font-variant-numeric:tabular-nums;justify-self:flex-end}.track-item-actions{justify-content:flex-end;justify-self:flex-end;align-items:center;min-width:40px;display:flex}.track-menu-btn{color:var(--muted-foreground);cursor:pointer;border-radius:var(--radius);transition:all var(--transition);opacity:0;z-index:10;background:0 0;border:none;justify-content:center;align-items:center;padding:.5rem;display:flex}.track-item:hover .track-menu-btn{opacity:1;margin:0;padding:.5rem}.track-menu-btn:hover{background-color:rgb(var(--highlight-rgb), .2);color:var(--foreground)}.track-action-btn.active{opacity:1}.track-action-btn{color:var(--muted-foreground);cursor:pointer;border-radius:var(--radius);transition:all var(--transition);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:.5rem;display:flex}.track-action-btn:hover{background-color:rgb(var(--highlight-rgb), .2);color:var(--foreground)}.is-editable .track-list-header,.is-editable .track-item{grid-template-columns:40px 1fr 80px 90px}.detail-header{align-items:flex-start;gap:var(--spacing-xl);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);display:flex}.detail-header-image{background-color:var(--muted);border-radius:var(--radius);object-fit:cover;width:200px;height:200px;box-shadow:var(--shadow-lg);flex-shrink:0;transition:opacity .3s ease-in-out}.detail-header-cover-container{flex-shrink:0;position:relative}.detail-header-collage{background-color:var(--muted);border-radius:var(--radius);width:200px;height:200px;box-shadow:var(--shadow-lg);flex-shrink:0;grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.detail-header-collage img{object-fit:cover;background-color:var(--muted);border-radius:0;width:100%;height:100%;margin:0}.detail-header-image.loading{opacity:.3}.detail-header-image.artist{border-radius:var(--radius-full)}.detail-header-info .type{margin-bottom:.5rem;font-weight:600}.detail-header-info .title{overflow-wrap:break-word;flex-wrap:wrap;align-items:center;gap:1rem;font-size:4rem;font-weight:800;line-height:1.1;display:flex}.detail-header-info .title.long-title{font-size:2.5rem}.detail-header-info .title.very-long-title{font-size:1.75rem}.artist-tags{flex-wrap:wrap;gap:.5rem;margin-left:1rem;display:flex}.artist-tag{background-color:var(--secondary);color:var(--muted-foreground);border-radius:var(--radius-full);text-transform:capitalize;padding:.15rem .6rem;font-size:.75rem;font-weight:500}.detail-header-info .meta{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1rem;display:flex}.detail-header-info .meta a{color:var(--foreground);transition:color var(--transition);text-decoration:none}.detail-header-info .meta a:hover{color:var(--highlight)}.artist-bio{color:var(--muted-foreground);max-width:600px;transition:color var(--transition);margin-top:1rem;font-size:.95rem;line-height:1.5;display:block;overflow:hidden}.artist-bio:hover{color:var(--foreground)}.bio-link{color:var(--highlight)!important;cursor:pointer!important;pointer-events:auto!important;font-weight:500!important;text-decoration:underline!important}.bio-link:hover{color:var(--primary)!important;text-decoration:none!important}.bio-read-more{color:var(--highlight);cursor:pointer;margin-top:.5rem;font-size:.95rem;font-weight:700;text-decoration:underline;display:block}.bio-read-more:hover{color:var(--primary)}.description-read-more{color:var(--highlight);cursor:pointer;margin-left:.25rem;font-size:.9rem;font-weight:600;text-decoration:underline;display:inline}.description-read-more:hover{color:var(--primary)}#playlist-detail-description{max-width:600px;line-height:1.5;position:relative}#playlist-detail-description.truncated{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}#playlist-detail-description.expanded{-webkit-line-clamp:unset;line-clamp:unset;display:block}.playlist-mobile-menu{display:none;position:relative}.playlist-mobile-menu-btn{background:color-mix(in srgb, var(--card) 82%, transparent);border:1px solid color-mix(in srgb, var(--border) 85%, transparent);width:40px;height:40px;color:var(--foreground);cursor:pointer;border-radius:var(--radius-full);transition:background-color var(--transition), transform var(--transition-fast);justify-content:center;align-items:center;display:flex}.playlist-mobile-menu-btn:hover{background-color:color-mix(in srgb, var(--secondary) 82%, transparent);transform:translateY(-1px)}.playlist-mobile-menu-dropdown{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:180px;box-shadow:var(--shadow-lg);z-index:100;padding:.5rem;display:none;position:absolute;top:calc(100% + .5rem);right:0}.playlist-mobile-menu-dropdown.active{display:block}.playlist-mobile-menu-dropdown button{width:100%;color:var(--foreground);cursor:pointer;border-radius:var(--radius-md);transition:background-color var(--transition-fast);background:0 0;border:none;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.9rem;display:flex}.playlist-mobile-menu-dropdown button:hover{background:var(--secondary)}.bio-source{opacity:.6;border-top:1px solid var(--border);margin-top:1.5rem;padding-top:1rem;font-size:.9rem;font-style:italic;display:block}.detail-header-actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1.5rem;display:flex}.detail-header-actions .btn-primary,.detail-header-actions .btn-secondary{border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:flex}.detail-header-actions .btn-primary span,.detail-header-actions .btn-secondary span{display:none}.album-hero{text-align:center;flex-direction:column;align-items:center;gap:1.5rem;padding:2rem 1rem;display:flex}.album-hero-cover{aspect-ratio:1;border-radius:var(--radius-lg);width:100%;max-width:320px;box-shadow:var(--shadow-xl);position:relative;overflow:hidden}.album-hero-image{object-fit:cover;width:100%;height:100%;display:block}.album-hero-content{flex-direction:column;align-items:center;gap:.75rem;max-width:800px;display:flex}.album-hero-label{text-transform:uppercase;letter-spacing:.1em;color:var(--muted-foreground);font-size:.8rem;font-weight:600}.album-hero-title{color:var(--foreground);margin:0;font-size:clamp(1.75rem,4vw,3rem);font-weight:800;line-height:1.1}.album-hero-meta{color:var(--muted-foreground);flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;font-size:1rem;display:flex}.album-hero-description{color:var(--muted-foreground);max-width:600px;margin-top:.5rem;font-size:.95rem;line-height:1.6}.album-hero-actions{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:1rem;display:flex}.album-hero-actions .btn-group{display:inline-flex}@media (width>=769px){.album-hero{text-align:left;flex-direction:row;align-items:flex-end;gap:2.5rem;padding:2.5rem}.album-hero-cover{flex-shrink:0;width:232px;max-width:none}.album-hero-content{flex:1;align-items:flex-start}.album-hero-actions{justify-content:flex-start}}@media (width<=768px){.album-hero{padding:1.5rem 1rem}.album-hero-cover{max-width:280px}.album-hero-actions{gap:.35rem}.album-hero-actions .btn-group-item{min-width:40px;min-height:36px;padding:.5rem .75rem}.album-hero-actions .btn-group-item svg{width:16px;height:16px}}.playlist-hero{text-align:center;background:var(--card);border-radius:var(--radius-xl);flex-direction:column;align-items:center;gap:1.5rem;margin-bottom:1.5rem;padding:2rem 1rem;display:flex}.playlist-hero-cover{aspect-ratio:1;border-radius:var(--radius-lg);width:100%;max-width:320px;box-shadow:var(--shadow-2xl);position:relative;overflow:hidden}.playlist-hero-image{object-fit:cover;border-radius:var(--radius-lg);width:100%;height:100%}.playlist-hero-collage{border-radius:var(--radius-lg);grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:4px;width:100%;height:100%;display:grid;overflow:hidden}.playlist-hero-collage img{object-fit:cover;width:100%;height:100%}.playlist-hero-content{flex-direction:column;align-items:center;gap:.75rem;max-width:600px;display:flex}.playlist-hero-label{text-transform:uppercase;letter-spacing:.1em;color:var(--muted-foreground);opacity:.8;font-size:.875rem;font-weight:600}.playlist-hero-title{color:var(--foreground);overflow-wrap:break-word;word-break:break-word;margin:0;font-size:clamp(2rem,8vw,3.5rem);font-weight:800;line-height:1.1}.playlist-hero-title.long-title{font-size:clamp(1.5rem,6vw,2.5rem)}.playlist-hero-title.very-long-title{font-size:clamp(1.25rem,5vw,2rem)}.playlist-hero-meta{color:var(--muted-foreground);font-size:1rem;font-weight:500}.playlist-hero-description{color:var(--muted-foreground);max-width:500px;margin-top:.5rem;font-size:1rem;line-height:1.6}.playlist-hero-description.truncated{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.playlist-hero-actions{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:1rem;display:flex}.btn-group{border-radius:var(--radius-lg);background:color-mix(in srgb, var(--card) 60%, transparent);border:1px solid var(--border);box-shadow:var(--shadow-sm);display:inline-flex;overflow:hidden}.btn-group-primary{background:var(--primary);border-color:#0000}.btn-group-secondary{background:color-mix(in srgb, var(--card) 50%, transparent);border-color:color-mix(in srgb, var(--border) 50%, transparent)}.btn-group-item{color:var(--foreground);border:none;border-right:1px solid color-mix(in srgb, var(--border) 30%, transparent);cursor:pointer;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;gap:.5rem;min-width:44px;min-height:40px;padding:.625rem 1rem;font-size:.9rem;font-weight:600;display:inline-flex}.btn-group-item:last-child{border-right:none}.btn-group-primary .btn-group-item{color:var(--primary-foreground);border-right-color:color-mix(in srgb, var(--primary-foreground) 20%, transparent)}.btn-group-primary .btn-group-item:hover{background:color-mix(in srgb, var(--primary-foreground) 15%, transparent)}.btn-group-secondary .btn-group-item:hover{background:color-mix(in srgb, var(--foreground) 8%, transparent)}.btn-group-item svg{width:18px;height:18px}.btn-group-item-play{background:color-mix(in srgb, var(--primary-foreground) 10%, transparent)}.btn-group-item-play:hover{background:color-mix(in srgb, var(--primary-foreground) 20%, transparent)!important}.btn-group-item.like-btn.active{color:#fff}.btn-group-item.like-btn.active svg{fill:#fff;stroke:#fff}@media (width>=769px){.playlist-hero{text-align:left;flex-direction:row;align-items:flex-end;gap:2.5rem;padding:2.5rem}.playlist-hero-cover{flex-shrink:0;width:232px;max-width:none}.playlist-hero-content{flex:1;align-items:flex-start}.playlist-hero-actions{justify-content:flex-start}}@media (width<=768px){.playlist-hero{padding:1.5rem 1rem}.playlist-hero-cover{max-width:280px}.playlist-hero-actions{gap:.5rem}.btn-group-item{min-width:40px;min-height:36px;padding:.5rem .75rem}.btn-group-item svg{width:16px;height:16px}}.btn-primary{background-color:var(--primary);color:var(--primary-foreground);border-radius:var(--radius-full);cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-fast), filter var(--transition-fast);box-shadow:var(--shadow-sm);-webkit-tap-highlight-color:transparent;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn-primary:active{transform:scale(.96)translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.btn-primary svg{transition:transform var(--transition-fast);flex-shrink:0}.btn-primary:hover svg{transform:scale(1.1)}.btn-secondary{background-color:var(--secondary);color:var(--foreground);border-radius:var(--radius);cursor:pointer;transition:all var(--transition);border:none;padding:.5rem 1rem;font-weight:500}.btn-secondary:hover{background-color:var(--muted);filter:brightness(1.1)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-link{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);color:var(--muted-foreground);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:color var(--duration-fast) var(--ease-in-out), background-color var(--duration-fast) var(--ease-in-out);background:0 0;border:none;display:inline-flex}.btn-link:hover{color:var(--highlight);background-color:color-mix(in srgb, var(--highlight) 10%, transparent)}.btn-link:active{transform:scale(.97)}.input{width:100%;padding:var(--space-3) var(--space-4);background-color:var(--secondary);color:var(--foreground);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-base);transition:border-color var(--duration-fast) var(--ease-in-out), box-shadow var(--duration-fast) var(--ease-in-out);outline:none;font-family:inherit}.input:focus{border-color:var(--highlight);box-shadow:0 0 0 2px rgb(var(--highlight-rgb) / .2)}.input:disabled{opacity:.5;cursor:not-allowed}select.input{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%239ca3af' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right var(--space-3) center;padding-right:var(--space-10);background-repeat:no-repeat;background-size:1.25rem}.label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--foreground);margin-bottom:var(--space-2);display:block}.btn-secondary.danger{color:#fff;background:#ef4444}.btn-secondary.danger:hover{background:#dc2626}.modal-actions .btn-secondary{border-radius:var(--radius-full);padding:.875rem 1.75rem;font-size:.95rem;font-weight:600}.settings-list{max-width:800px}.settings-group{border-bottom:1px solid var(--border);padding:var(--spacing-lg) 0;gap:var(--spacing-md);flex-direction:column;display:flex}.settings-group .setting-item{border-bottom:none;padding:0}.sidebar-settings-section{flex-direction:column;gap:0;display:flex}.sidebar-settings-section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted-foreground);margin-bottom:0;font-size:.75rem;font-weight:600}.sidebar-settings-section .sidebar-settings-section-label+.setting-item{margin-top:var(--spacing-sm)}.sidebar-settings-section .setting-item+.setting-item{margin-top:var(--spacing-md)}.setting-item{padding:var(--spacing-lg) 0;border-bottom:1px solid var(--border);justify-content:space-between;gap:var(--spacing-lg);display:flex}.setting-item.sidebar-setting-item{align-items:center;gap:var(--spacing-md);cursor:grab}.setting-item.sidebar-setting-item:before{content:"";border-radius:var(--radius-sm);background:var(--background);width:14px;height:16px;color:var(--muted-foreground);background-position:50%;background-repeat:repeat;background-size:6px 6px;flex-shrink:0;display:inline-block}.setting-item.sidebar-setting-item .info{flex:1;min-width:0}.setting-item.sidebar-setting-item .toggle-switch{flex-shrink:0}.setting-item.sidebar-setting-item.dragging{opacity:.6;cursor:grabbing}.setting-item .info{flex-direction:column;display:flex}.setting-item .label{font-weight:500}.setting-item .description{color:var(--muted-foreground);font-size:.9rem}.setting-item select,.setting-item input[type=number]{background-color:var(--input);color:var(--foreground);border:1px solid var(--border);border-radius:var(--radius);appearance:auto;padding:.5rem}.setting-item input[type=number]{width:100px}.template-input{background-color:var(--input);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:400px;color:var(--foreground);padding:.5rem;font-size:.9rem}.template-input:focus{border-color:var(--ring);outline:none}.font-settings-container{flex-direction:column;align-items:flex-start;gap:1rem}.font-settings-container .info{width:100%}.font-input-group{flex-direction:column;gap:.75rem;width:100%;max-width:500px;display:flex}.font-type-select{background-color:var(--input);width:100%;color:var(--foreground);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem;font-size:.9rem}.font-section{flex-direction:column;gap:.5rem;display:flex}.font-section select,.font-input{background-color:var(--input);width:100%;color:var(--foreground);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem;font-size:.9rem}.font-name-input{margin-top:.25rem}.font-file-input{background-color:var(--input);color:var(--foreground);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;padding:.5rem;font-size:.9rem}.font-file-input::file-selector-button{background-color:var(--secondary);color:var(--secondary-foreground);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast);border:none;margin-right:.75rem;padding:.4rem .8rem;font-size:.85rem}.font-file-input::file-selector-button:hover{background-color:var(--secondary-hover)}.uploaded-fonts-list{flex-direction:column;gap:.5rem;margin-top:.5rem;display:flex}.uploaded-font-item{background-color:var(--card);border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:center;padding:.5rem .75rem;font-size:.9rem;display:flex}.uploaded-font-item .font-name{color:var(--foreground);flex:1}.uploaded-font-item .font-actions{gap:.5rem;display:flex}.font-size-control{align-items:center;gap:var(--spacing-md);display:flex}.font-size-slider{appearance:none;background:var(--border);border-radius:var(--radius-full);outline:none;width:150px;height:6px}.font-size-slider::-webkit-slider-thumb{appearance:none;background:var(--primary);border-radius:var(--radius-full);cursor:pointer;width:18px;height:18px;transition:background-color var(--transition-fast)}.font-size-slider::-webkit-slider-thumb:hover{background:var(--highlight)}.font-size-slider::-moz-range-thumb{background:var(--primary);border-radius:var(--radius-full);cursor:pointer;width:18px;height:18px;transition:background-color var(--transition-fast);border:none}.font-size-slider::-moz-range-thumb:hover{background:var(--highlight)}.font-size-number-input{background:var(--input);border:1px solid var(--border);border-radius:var(--radius);width:60px;color:var(--foreground);text-align:center;transition:border-color var(--transition-fast);padding:.4rem .5rem;font-size:.9rem}.font-size-number-input:hover{border-color:var(--primary)}.font-size-number-input:focus{border-color:var(--ring);box-shadow:0 0 0 3px rgb(var(--highlight-rgb), .2);outline:none}.font-size-number-input::-webkit-outer-spin-button{appearance:none;margin:0}.font-size-number-input::-webkit-inner-spin-button{appearance:none;margin:0}.font-size-number-input[type=number]{appearance:textfield}.font-size-unit{color:var(--muted-foreground);margin-left:-.25rem;font-size:.9rem}#font-size-reset{padding:.4rem .75rem;font-size:.85rem}.uploaded-font-item .btn-icon{background-color:var(--secondary);color:var(--secondary-foreground);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast);border:none;padding:.25rem .5rem;font-size:.75rem}.uploaded-font-item .btn-icon:hover{background-color:var(--secondary-hover)}.uploaded-font-item .btn-delete{background-color:var(--destructive);color:var(--destructive-foreground)}.uploaded-font-item .btn-delete:hover{background-color:var(--destructive-hover)}.toggle-switch{width:40px;height:24px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background-color:var(--secondary);transition:background-color var(--transition-normal);border-radius:var(--radius-2xl);position:absolute;inset:0;box-shadow:inset 0 2px 4px #0000001a}.slider:before{content:"";background-color:var(--foreground);width:16px;height:16px;transition:transform var(--transition-spring,.4s cubic-bezier(.175, .885, .32, 1.275));border-radius:var(--radius-full);position:absolute;bottom:4px;left:4px;box-shadow:0 2px 4px #0003}input:checked+.slider{background-color:var(--primary)}input:checked+.slider:before{background-color:var(--primary-foreground);transform:translate(16px);box-shadow:-2px 2px 4px #0000001a}.toggle-switch:hover .slider:before{transform:scale(1.1)}.toggle-switch:hover input:checked+.slider:before{transform:translate(16px)scale(1.1)}.toggle-switch input:disabled+.slider{opacity:.5;cursor:not-allowed}.toggle-switch input:disabled+.slider:before{box-shadow:none;transform:translate(0)}.toggle-switch input:disabled:checked+.slider:before{transform:translate(16px)}.toggle-switch:hover input:disabled+.slider:before{transform:translate(0)}.toggle-switch:hover input:disabled:checked+.slider:before{transform:translate(16px)}.track-info{align-items:center;gap:1rem;min-width:0;display:flex}.track-info .cover-shell{border-radius:var(--radius-sm);background-color:var(--muted);flex-shrink:0;width:60px;height:60px}.track-info .cover-shell .cover{border-radius:inherit;object-fit:cover;width:100%;height:100%}.track-info .details{min-width:0}.track-info .details .title{white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:color var(--transition);font-weight:500;overflow:hidden}.track-info .details .title .title-marquee-content{white-space:nowrap;will-change:transform;align-items:center;gap:.25rem;width:max-content;max-width:none;display:inline-flex}.track-info .details .title.marquee-active{text-overflow:clip}.track-info .details .title.marquee-active .title-marquee-content{padding-right:1.75rem;animation:none}.track-info .details .title .title-marquee-tag{white-space:nowrap;width:100%;line-height:inherit;display:block}@keyframes now-playing-title-marquee{0%,12%{transform:translate(0)}88%,to{transform:translateX(calc(-1 * var(--marquee-distance,0px)))}}.track-info .details .title:hover{color:var(--highlight)}.track-info .details .album{color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:color var(--transition);font-size:.8rem;overflow:hidden}.track-info .details .album:hover{color:var(--highlight)}.track-info .details .artist{color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:color var(--transition-fast), transform var(--transition-fast);max-width:100%;font-size:.8rem;display:block;overflow:hidden}.track-info .details .artist:hover{color:var(--highlight);transform:translate(2px)}.player-controls{align-items:center;gap:var(--spacing-sm);flex-direction:column;display:flex}.player-controls.waveform-loaded{gap:.1rem;margin-bottom:.3rem}.player-controls .buttons{align-items:center;gap:var(--spacing-md);display:flex}.player-controls .buttons button{color:var(--muted-foreground);cursor:pointer;transition:transform var(--transition-fast), color var(--transition-fast), background-color var(--transition-fast);border-radius:var(--radius-full);-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:relative}.player-controls .buttons button:hover{transform:scale(1.1)}.player-controls .buttons button:active{color:var(--foreground);background-color:var(--secondary);transform:scale(.9)}@media (hover:hover){.player-controls .buttons button:hover{color:var(--foreground);background-color:var(--secondary)}}.player-controls .buttons button.active{color:var(--active-highlight)}.player-controls .buttons button#repeat-btn.repeat-one:after{content:"1";font-size:.5rem;font-weight:700;position:absolute}.player-controls .buttons .play-pause-btn{background-color:var(--primary);color:var(--primary-foreground);width:36px;height:36px}@media (hover:hover){.player-controls .buttons .play-pause-btn:hover{background-color:var(--primary);color:var(--primary-foreground);transform:scale(1.05)}}.player-controls .buttons .play-pause-btn:active{background-color:var(--primary);color:var(--primary-foreground);transform:scale(.95)}.player-controls .buttons .play-pause-btn.buffering svg,.fullscreen-buttons #fs-play-pause-btn.buffering svg{display:none}.player-controls .buttons .play-pause-btn.buffering:after{content:"";border:2px solid;border-top-color:#0000;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}.fullscreen-buttons #fs-play-pause-btn.buffering:after{content:"";border:3px solid;border-top-color:#0000;border-radius:50%;width:26px;height:26px;animation:.7s linear infinite spin}.player-controls .progress-container{width:100%;max-width:500px;color:var(--muted-foreground);order:-1;align-items:center;gap:.75rem;font-size:.8rem;display:flex}.player-controls .progress-container span{font-variant-numeric:tabular-nums;flex-shrink:0;min-width:40px}#current-time{text-align:right}.progress-bar,.volume-bar{cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none;position:relative}.progress-bar{background-color:var(--secondary);border-radius:var(--radius-xs);flex-grow:1;height:6px;box-shadow:inset 0 1px 2px #0000002e}.progress-bar:hover{height:8px}.progress-bar .progress-fill{background-color:var(--highlight);border-radius:var(--radius-xs);pointer-events:none;width:0;height:100%;transition:background-color .2s;position:relative}.progress-bar .progress-fill:after{content:"";border-radius:var(--radius-full);background-color:var(--highlight);width:10px;height:10px;box-shadow:inset 0 0 0 2px var(--background), 0 1px 3px #0006;pointer-events:none;transition:width .15s,height .15s,box-shadow .15s;position:absolute;top:50%;right:-5px;transform:translateY(-50%)}.progress-bar:hover .progress-fill:after,.progress-bar:active .progress-fill:after{width:14px;height:14px;box-shadow:inset 0 0 0 2px var(--background), 0 0 0 4px color-mix(in srgb, var(--highlight) 16%, transparent), 0 2px 8px #00000073}.progress-bar.has-waveform.waveform-loaded{height:28px}.progress-bar.has-waveform.waveform-loaded .progress-fill{background-color:var(--primary)}.progress-bar.has-waveform.waveform-loaded .progress-fill:after{display:none}@supports ((-webkit-mask-image:url('')) or (mask-image:url(''))){.now-playing-bar #progress-bar{background-color:color-mix(in srgb, var(--muted-foreground) 45%, transparent);border-radius:0;height:16px;overflow:visible;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 72 16' preserveAspectRatio='none'%3E%3Cpath d='M0 8 C 6 2 12 2 18 8 S 30 14 36 8 S 48 2 54 8 S 66 14 72 8' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 72 16' preserveAspectRatio='none'%3E%3Cpath d='M0 8 C 6 2 12 2 18 8 S 30 14 36 8 S 48 2 54 8 S 66 14 72 8' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");-webkit-mask-position:0 0;mask-position:0 0;-webkit-mask-size:72px 16px;mask-size:72px 16px;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}.now-playing-bar #progress-bar:hover{height:16px}.now-playing-bar #progress-bar:before,.now-playing-bar #progress-bar:after{content:"";border-radius:var(--radius-full);background:color-mix(in srgb, var(--foreground) 96%, transparent);width:12px;height:12px;box-shadow:0 0 0 2px color-mix(in srgb, var(--background) 58%, transparent), 0 2px 8px #00000059;pointer-events:none;z-index:3;position:absolute;top:50%;transform:translateY(-50%)}.now-playing-bar #progress-bar:before{left:-3px}.now-playing-bar #progress-bar:after{right:-3px}.now-playing-bar #progress-bar .progress-fill{background-color:var(--highlight);border-radius:0;height:100%;transition:width .36s cubic-bezier(.25,.46,.45,.94),background-color .2s;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 72 16' preserveAspectRatio='none'%3E%3Cpath d='M0 8 C 6 2 12 2 18 8 S 30 14 36 8 S 48 2 54 8 S 66 14 72 8' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 72 16' preserveAspectRatio='none'%3E%3Cpath d='M0 8 C 6 2 12 2 18 8 S 30 14 36 8 S 48 2 54 8 S 66 14 72 8' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");-webkit-mask-position:0 0;mask-position:0 0;-webkit-mask-size:72px 16px;mask-size:72px 16px;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}.now-playing-bar #progress-bar .progress-fill:after{content:"";border-radius:var(--radius-xs);background:var(--highlight);width:4px;height:20px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--background) 30%, transparent), 0 0 0 1px color-mix(in srgb, var(--background) 55%, transparent), 0 2px 6px color-mix(in srgb, var(--highlight) 40%, transparent);pointer-events:none;z-index:4;transition:height .2s cubic-bezier(.25,.46,.45,.94),transform .36s cubic-bezier(.25,.46,.45,.94),background-color .2s;position:absolute;top:50%;right:-2px;transform:translateY(-50%)}.now-playing-bar #progress-bar:hover .progress-fill:after{height:24px}#fs-progress-bar{background-color:#ffffff4d;border-radius:0;height:16px;overflow:visible;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 72 16' preserveAspectRatio='none'%3E%3Cpath d='M0 8 C 6 2 12 2 18 8 S 30 14 36 8 S 48 2 54 8 S 66 14 72 8' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 72 16' preserveAspectRatio='none'%3E%3Cpath d='M0 8 C 6 2 12 2 18 8 S 30 14 36 8 S 48 2 54 8 S 66 14 72 8' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");-webkit-mask-position:0 0;mask-position:0 0;-webkit-mask-size:72px 16px;mask-size:72px 16px;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}#fs-progress-bar:hover{height:16px}#fs-progress-bar:before,#fs-progress-bar:after{content:"";border-radius:var(--radius-full);pointer-events:none;z-index:3;background:#fff;width:12px;height:12px;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 0 0 2px #00000061,0 2px 8px #00000047}#fs-progress-bar:before{left:-3px}#fs-progress-bar:after{right:-3px}#fs-progress-fill{background:var(--highlight);border-radius:0;height:100%;transition:width .38s cubic-bezier(.25,.46,.45,.94),background-color .2s;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 72 16' preserveAspectRatio='none'%3E%3Cpath d='M0 8 C 6 2 12 2 18 8 S 30 14 36 8 S 48 2 54 8 S 66 14 72 8' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 72 16' preserveAspectRatio='none'%3E%3Cpath d='M0 8 C 6 2 12 2 18 8 S 30 14 36 8 S 48 2 54 8 S 66 14 72 8' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");-webkit-mask-position:0 0;mask-position:0 0;-webkit-mask-size:72px 16px;mask-size:72px 16px;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}#fs-progress-fill:after{content:"";border-radius:var(--radius-xs);pointer-events:none;z-index:4;background:#fff;width:4px;height:22px;transition:height .2s cubic-bezier(.25,.46,.45,.94),transform .38s cubic-bezier(.25,.46,.45,.94),background-color .2s;position:absolute;top:50%;right:-2px;transform:translateY(-50%);box-shadow:inset 0 0 0 1px #00000059,0 0 0 1px #0006,0 2px 8px #ffffff4d}#fs-progress-bar:hover #fs-progress-fill:after,#fs-progress-bar:active #fs-progress-fill:after{height:24px}}#waveform-canvas{display:none}.volume-controls{display:flex;overflow:hidden;flex-direction:column!important;justify-content:center!important;align-items:flex-end!important;gap:.5rem!important}.volume-controls button{color:var(--muted-foreground);cursor:pointer;transition:all var(--transition);border-radius:var(--radius);background:0 0;border:none;justify-content:center;align-items:center;width:28px;height:28px;padding:.25rem;display:flex}@media (hover:hover){.volume-controls button:hover{color:var(--foreground);background-color:var(--secondary)}}.volume-controls button:active{color:var(--foreground);background-color:var(--secondary)}.volume-controls .volume-bar{background-color:var(--secondary);border-radius:var(--radius-xs);width:100px;height:4px}.volume-controls .volume-bar:hover{height:6px}.volume-controls .volume-bar .volume-fill{width:var(--volume-level,70%);background-color:var(--muted-foreground);border-radius:var(--radius-xs);pointer-events:none;height:100%;transition:background-color .2s;position:relative}.volume-controls .volume-bar:hover .volume-fill{background-color:var(--highlight)}.volume-controls .volume-bar:hover .volume-fill:after,.volume-controls .volume-bar:active .volume-fill:after{content:"";background-color:var(--highlight);border-radius:var(--radius-full);width:12px;height:12px;position:absolute;top:50%;right:-6px;transform:translateY(-50%);box-shadow:0 2px 4px #0000004d}.linear-volume-controls{vertical-align:middle;align-items:center;gap:8px;margin-left:6px;display:inline-flex;position:relative}.linear-volume-controls .volume-icon-btn,.volume-icon-btn{color:var(--muted-foreground);cursor:pointer;border-radius:var(--radius);background:0 0;border:none;justify-content:center;align-items:center;width:28px;height:28px;padding:4px;transition:color .15s;display:flex}.linear-volume-controls .volume-icon-btn:hover,.volume-icon-btn:hover{color:var(--foreground)}.linear-volume-controls .volume-bar{background-color:var(--secondary);cursor:pointer;border-radius:9999px;width:90px;height:4px;transition:height .15s;position:relative}.linear-volume-controls .volume-bar:hover{height:6px}.linear-volume-controls .volume-bar .volume-fill{width:var(--volume-level,70%);background-color:var(--foreground);pointer-events:none;border-radius:9999px;height:100%;transition:background-color .15s;position:relative}.linear-volume-controls .volume-bar:hover .volume-fill{background-color:var(--highlight)}.linear-volume-controls .volume-bar:hover .volume-fill:after,.linear-volume-controls .volume-bar:active .volume-fill:after{content:"";background-color:var(--highlight);border-radius:var(--radius-full);width:10px;height:10px;position:absolute;top:50%;right:-5px;transform:translateY(-50%)}.circular-volume,#circular-volume,#fs-circular-volume{display:none!important}#sleep-timer-btn{transition:all var(--transition);font-size:.8rem;font-weight:700;position:relative}#sleep-timer-btn:hover{color:var(--highlight)}#sleep-timer-btn.active{color:var(--primary);text-shadow:0 0 8px rgb(var(--highlight-rgb), .5)}#sleep-timer-btn svg{width:20px;height:20px}#sleep-timer-btn span{pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#context-menu,#sort-menu{background-color:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:3000;transform-origin:0 0;min-width:160px;animation:scale-in var(--transition-fast) var(--ease-out-back);padding:.5rem;display:none;position:fixed}#context-menu ul,#sort-menu ul{list-style:none}#context-menu li,#sort-menu li{cursor:pointer;border-radius:var(--radius-sm);transition:background-color var(--transition-fast), transform var(--transition-fast);align-items:center;margin-right:8px;padding:.5rem .75rem;font-size:.9rem;display:flex}#context-menu li[data-action]>.context-menu-icon{opacity:.9;flex:0 0 1rem;justify-content:center;align-items:center;width:1rem;height:1rem;margin-right:.55rem;display:inline-flex}#sort-menu li.sort-active{font-weight:700}#context-menu li:hover,#sort-menu li:hover{background-color:var(--secondary);color:var(--foreground);transform:translate(4px)}#context-menu li.separator{background-color:var(--border);cursor:default;pointer-events:none;height:1px;margin:.5rem 0;padding:0}#context-menu li.separator:hover{background-color:var(--border);transform:none}.blocked-items-list{max-height:300px;list-style:none;overflow-y:auto}.blocked-items-list li{background:var(--accent);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;margin-bottom:.25rem;padding:.5rem .75rem;display:flex}.blocked-items-list li:hover{background:var(--secondary)}.blocked-items-list .item-info{flex:1;min-width:0}.blocked-items-list .item-name{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:500;overflow:hidden}.blocked-items-list .item-meta{color:var(--muted-foreground);font-size:.75rem}.blocked-items-list .unblock-btn{color:var(--primary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:.25rem .5rem;font-size:.8rem}.blocked-items-list .unblock-btn:hover{background:var(--secondary)}.track-item.blocked{opacity:.4;pointer-events:none;filter:grayscale()}.track-item.blocked .track-item-info{text-decoration:line-through}.track-item.blocked .track-menu-btn{pointer-events:auto;opacity:1}.card.blocked{opacity:.4;pointer-events:none;filter:grayscale()}.card.blocked .card-menu-btn{pointer-events:auto;opacity:1}.card.blocked .card-title,.card.blocked .card-subtitle{text-decoration:line-through}.queue-track-item.blocked{opacity:.4;filter:grayscale()}.queue-track-item.blocked .track-item-details{text-decoration:line-through}#queue-modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:3000;background-color:#000000b3;justify-content:center;align-items:center;animation:.2s cubic-bezier(.4,0,.2,1) fade-in;display:none;position:fixed;inset:0}#fullscreen-cover-overlay{z-index:2000;background-color:var(--background);--bg-image:none;flex-direction:column;justify-content:center;align-items:center;padding-bottom:0;animation:.42s cubic-bezier(.22,.61,.36,1) both fs-slide-up;display:flex;position:fixed;inset:0;overflow:hidden}@keyframes fs-slide-up{0%{opacity:0;transform:translateY(4vh)}to{opacity:1;transform:translateY(0)}}#fullscreen-cover-overlay:before{content:"";background-image:var(--bg-image);filter:blur(96px)saturate(1.18)brightness(.56);transform-origin:var(--fs-bg-origin-x,50%) var(--fs-bg-origin-y,50%);z-index:-2;will-change:transform, background-position, filter;animation:fs-bg-pan var(--fs-bg-pan-duration,22s) ease-in-out infinite alternate, fs-bg-rotate var(--fs-bg-rotate-duration,72s) linear infinite;background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:-28%;transform:scale(1.08)rotate(0)}@keyframes fs-bg-pan{0%{background-position:var(--fs-bg-pos-1,46% 48%);filter:blur(90px)saturate(1.14)brightness(.53)}50%{background-position:var(--fs-bg-pos-2,54% 52%);filter:blur(104px)saturate(1.24)brightness(.6)}to{background-position:var(--fs-bg-pos-3,50% 56%);filter:blur(96px)saturate(1.2)brightness(.57)}}@keyframes fs-bg-rotate{0%{transform:scale(1.08)rotate(0)}to{transform:scale(1.12) rotate(calc(var(--fs-bg-rotate-direction,1) * 360deg))}}#fullscreen-cover-overlay:after{content:"";z-index:-1;pointer-events:none;background:0 0;position:absolute;inset:0}#visualizer-canvas{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.fullscreen-video-visualizer{object-fit:cover;z-index:0;opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity .2s;position:absolute;inset:0}#fullscreen-cover-overlay.video-visualizer-active .fullscreen-video-visualizer{opacity:1}#fullscreen-cover-overlay.video-visualizer-active #visualizer-canvas{display:none!important}.fs-video-bg{z-index:0;opacity:0;pointer-events:none;background:#000;transition:opacity .3s;position:absolute;inset:0;overflow:hidden}#fullscreen-cover-overlay.video-bg-active .fs-video-bg{opacity:1}#fs-video-player-wrap{position:absolute;inset:0}.fs-video-bg iframe{border:none;width:max(100vw,177.78vh);height:max(100vh,56.25vw);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#fullscreen-cover-overlay.video-bg-active .fullscreen-main-view{z-index:1;position:relative}#fullscreen-cover-overlay.video-bg-active #vinyl-disc-container{display:none}#fullscreen-cover-overlay.video-bg-active #visualizer-canvas{display:none!important}.fullscreen-cover-content{flex-direction:row;justify-content:center;align-items:center;width:100%;height:100%;padding:1rem;display:flex;position:relative}#close-fullscreen-cover-btn{color:#fff;border-radius:var(--radius-full);cursor:pointer;z-index:10;opacity:.6;background:0 0;border:none;justify-content:center;align-items:center;width:36px;height:36px;transition:opacity .2s,right .3s;display:flex;position:absolute;top:1rem;right:1rem}#close-fullscreen-cover-btn:hover{opacity:1}#fullscreen-cover-image{--art-outline-width:clamp(1px, .18vmin, 2px);border-radius:var(--radius);max-width:min(48vw,620px);max-height:min(38vh,520px);box-shadow:0 0 0 var(--art-outline-width) #969ca3, 0 24px 48px #00000080;outline:var(--art-outline-width) solid #ffffff14;outline-offset:calc(var(--art-outline-width) * .8);object-fit:contain;z-index:1;margin-bottom:1rem;transition:border-radius .3s,outline-width .3s,outline-offset .3s}#vinyl-disc-container{z-index:1;margin-bottom:var(--space-4);transition:width var(--duration-normal) var(--ease-in-out), height var(--duration-normal) var(--ease-in-out), margin var(--duration-normal) var(--ease-in-out);justify-content:center;align-items:center;display:flex;position:relative;container-type:inline-size}#vinyl-disc-container.disc-scrub-enabled{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none}#vinyl-disc-container.disc-scrub-enabled.disc-scrubbing{cursor:grabbing;transition:none}#vinyl-disc-container.disc-scrub-enabled #fullscreen-cover-image{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}#vinyl-disc-container.disc-scrubbing,#vinyl-disc-container.disc-scrubbing:before,#vinyl-disc-container.disc-scrubbing:after{animation-play-state:paused!important}#fullscreen-cover-overlay:has(#vinyl-disc-container.disc-scrubbing):before{animation-play-state:paused!important}#vinyl-disc-container.rotating-disc{--vinyl-rotation-duration:4s;width:var(--vinyl-disc-size,clamp(220px, 28vmin, 340px));height:var(--vinyl-disc-size,clamp(220px, 28vmin, 340px));aspect-ratio:1;border-radius:var(--radius-full);will-change:transform;backface-visibility:hidden;transform-style:preserve-3d;contain:layout style;background:var(--background);justify-content:center;align-items:center;transition:none;display:flex;position:relative;transform:translate(0,0);box-shadow:inset 0 0 0 2px #191919,inset 0 0 10px 4px #000000e6,0 20px 50px #000000b3,0 8px 24px #0006}#vinyl-disc-container.rotating-disc.spin-reverse{filter:saturate(.95)brightness(.97)}#vinyl-disc-container.rotating-disc:before{content:"";background:var(--background);mix-blend-mode:screen;filter:blur(1.5px);pointer-events:none;z-index:2;will-change:transform, opacity;backface-visibility:hidden;aspect-ratio:1;border-radius:50%;position:absolute;inset:0;transform:translate(0,0)}#vinyl-disc-container.rotating-disc.spin-reverse:before{opacity:.92}#vinyl-disc-container.rotating-disc:after{content:"";pointer-events:none;z-index:4;background:var(--background);will-change:transform, opacity;backface-visibility:hidden;aspect-ratio:1;border-radius:50%;position:absolute;inset:0;transform:translate(0,0)}#vinyl-disc-container.rotating-disc.paused,#vinyl-disc-container.rotating-disc.paused:before,#vinyl-disc-container.rotating-disc.paused:after{animation-play-state:paused}#vinyl-disc-container.rotating-disc .spindle-hole{display:none}#vinyl-disc-container.rotating-disc #fullscreen-cover-image{aspect-ratio:1;border-radius:var(--radius-full);object-fit:cover;z-index:3;will-change:transform;backface-visibility:hidden;outline:none;width:30%;max-width:none;height:30%;max-height:none;margin-bottom:0;position:absolute;transform:translate(0,0);box-shadow:0 0 0 clamp(1px,.3cqw,2px) #969ca3,0 0 0 clamp(2px,1cqw,5px) #141414,0 0 0 clamp(4px,1.5cqw,8px) #080808,0 4px 12px #00000080}#fullscreen-cover-tilt{--tilt-x:0deg;--tilt-y:0deg;z-index:1;margin-bottom:var(--space-4);transform:perspective(1000px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transform-style:preserve-3d;will-change:transform;transition:transform .2s ease-out;position:relative}#fullscreen-cover-tilt #vinyl-disc-container{margin-bottom:0}#fullscreen-cover-overlay.video-bg-active #fullscreen-cover-tilt{display:none}#fullscreen-cover-shine{z-index:5;pointer-events:none;border-radius:var(--radius);opacity:0;background:var(--background);transition:opacity .25s;position:absolute}#fullscreen-cover-tilt:has(#vinyl-disc-container.rotating-disc) #fullscreen-cover-shine{border-radius:50%}@media (width>=1200px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){#fullscreen-cover-tilt:hover #fullscreen-cover-shine{opacity:1}}@media (pointer:coarse) and (prefers-reduced-motion:no-preference){#fullscreen-cover-tilt:active #fullscreen-cover-shine{opacity:1}}.fullscreen-track-info{text-align:center;z-index:1;-webkit-backdrop-filter:none;backdrop-filter:none;max-width:min(78vw,900px);box-shadow:none;background:0 0;border:none;padding:.25rem 0}#fullscreen-track-title{color:var(--foreground);overflow-wrap:break-word;margin-bottom:.5rem;font-size:2rem;font-weight:700}#fullscreen-track-title .fullscreen-title-main{display:inline}#fullscreen-track-title .fullscreen-title-brackets{color:color-mix(in srgb, var(--foreground) 92%, transparent);margin-top:.2rem;font-size:clamp(1rem,3.2vw,1.35rem);font-weight:640;line-height:1.2;display:block}#fullscreen-track-title .fullscreen-title-bracket{display:block}#fullscreen-track-title .quality-badge,#fullscreen-track-title .quality-hires,#fullscreen-track-title .quality-lossless,#fullscreen-track-title .quality-atmos{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);vertical-align:middle;color:#fff;background:#ffffff24;border:none;margin-left:.45rem}#fullscreen-track-title .quality-atmos svg{opacity:.92}#fullscreen-track-artist{color:color-mix(in srgb, var(--foreground), transparent 40%);font-size:1.25rem;font-weight:500;transition:color .2s,-webkit-text-decoration .2s,text-decoration .2s}#fullscreen-track-quality{color:color-mix(in srgb, var(--foreground), transparent 60%);letter-spacing:.02em;text-transform:uppercase;opacity:.85;justify-content:center;align-items:center;gap:.3rem;margin-top:.4rem;font-size:.95rem;font-weight:600;display:flex}#fullscreen-track-quality svg{vertical-align:middle;width:16px;height:auto}#fullscreen-track-artist:hover{color:var(--primary);cursor:pointer;text-decoration:underline}#fullscreen-next-track{color:color-mix(in srgb, var(--foreground), transparent 40%);opacity:0;flex-direction:column;gap:.2rem;margin-top:1rem;font-size:.9rem;display:flex}#fullscreen-next-track.animate-in{animation:.5s .2s forwards fade-in}#fullscreen-next-track .label{text-transform:uppercase;letter-spacing:.05em;opacity:.8;font-size:.75rem}#fullscreen-next-track .value{color:var(--foreground);font-weight:500}.fullscreen-controls{width:100%;max-width:600px;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 18px);z-index:10;flex-direction:column;gap:.7rem;margin-top:.65rem;display:flex}.fullscreen-progress-container{width:100%;color:var(--foreground);font-variant-numeric:tabular-nums;align-items:center;gap:1rem;padding:.1rem .22rem .22rem;font-size:.9rem;display:flex}.fullscreen-progress-container .progress-bar{border-radius:var(--radius-xs);cursor:pointer;background:#fff3;flex:1;height:6px;transition:height .2s;position:relative}.fullscreen-progress-container .progress-bar:hover{height:8px}.fullscreen-progress-container .progress-fill{background:var(--foreground);border-radius:var(--radius-xs);pointer-events:none;width:0%;height:100%;transition:width .1s;position:relative}.fullscreen-progress-container .progress-bar:hover .progress-fill{background:var(--highlight)}.fullscreen-progress-container .progress-bar:hover .progress-fill:after,.fullscreen-progress-container .progress-bar:active .progress-fill:after{content:"";background-color:var(--highlight);border-radius:var(--radius-full);width:12px;height:12px;position:absolute;top:50%;right:-6px;transform:translateY(-50%);box-shadow:0 2px 4px #0000004d}.fullscreen-buttons{flex-wrap:wrap;justify-content:center;align-items:center;gap:2rem;margin-bottom:.38rem;display:flex}.fullscreen-buttons button{color:var(--foreground);cursor:pointer;border-radius:var(--radius-full);transition:transform var(--transition-fast), background-color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;min-width:42px;min-height:42px;padding:.5rem;display:flex;position:relative}.fullscreen-buttons button:hover{background:#ffffff1a;transform:scale(1.15)rotate(0)}.fullscreen-buttons button:active{transform:scale(.95)}.fullscreen-buttons #fs-play-pause-btn{background:var(--foreground);width:64px;height:64px;color:var(--background);border-radius:var(--radius-full)}@media (width<=900px){.fullscreen-controls{gap:.6rem;max-width:100%;padding-inline:.35rem}.fullscreen-progress-container{gap:.65rem;font-size:.85rem}.fullscreen-buttons{gap:1rem;margin-bottom:.2rem}.fullscreen-buttons button{min-width:38px;min-height:38px;padding:.35rem}.fullscreen-buttons #fs-play-pause-btn{width:56px;height:56px}}.fullscreen-buttons #fs-play-pause-btn:hover{background:var(--foreground);transform:scale(1.05)}.fullscreen-buttons button.active{color:var(--foreground);opacity:1}.fullscreen-buttons button.active:after{content:"";border-radius:var(--radius-full);background:var(--foreground);opacity:.75;width:4px;height:4px;position:absolute;bottom:.15rem;left:50%;transform:translate(-50%)}.fullscreen-volume-container{justify-content:center;align-items:center;gap:1rem;margin-top:.15rem;display:flex;transform:translateY(-8px)}.fs-volume-btn{color:var(--foreground);cursor:pointer;border-radius:var(--radius-full);background:0 0;border:none;justify-content:center;align-items:center;width:40px;height:40px;padding:.5rem;transition:all .2s;display:flex}.fs-volume-btn:hover{background:#ffffff1a;transform:scale(1.1)}.fs-volume-btn.muted{color:var(--muted-foreground)}.fs-volume-bar{border-radius:var(--radius-xs);cursor:pointer;background-color:#fff3;width:150px;height:6px;transition:height .2s;position:relative}.fs-volume-bar:hover{height:8px}.fs-volume-fill{background-color:var(--foreground);border-radius:var(--radius-xs);height:100%;width:var(--fs-volume-level,70%);pointer-events:none;transition:width .1s;position:relative}.fs-volume-bar:hover .fs-volume-fill{background-color:var(--highlight)}.fs-volume-bar:hover .fs-volume-fill:after,.fs-volume-bar:active .fs-volume-fill:after{content:"";background-color:var(--highlight);border-radius:var(--radius-full);width:12px;height:12px;position:absolute;top:50%;right:-6px;transform:translateY(-50%);box-shadow:0 2px 4px #0000004d}@media (width<=768px){.fullscreen-volume-container{gap:.75rem;margin-top:0;transform:translateY(-4px)}.fs-volume-bar{width:120px}}.fullscreen-actions{justify-content:center;gap:1rem;margin-top:.75rem;display:flex}#fullscreen-cover-overlay .fullscreen-main-view{width:min(100%,1080px);max-height:100%;overflow:hidden auto}#fullscreen-cover-overlay .fullscreen-track-info{width:min(100%,760px)}#fullscreen-cover-overlay #fullscreen-track-title{font-size:clamp(1.35rem,4.8vw,2rem);line-height:1.16}#fullscreen-cover-overlay #fullscreen-track-artist{font-size:clamp(1rem,3.4vw,1.25rem)}#fullscreen-cover-overlay #fullscreen-track-quality{flex-wrap:wrap;font-size:clamp(.76rem,2.4vw,.95rem);line-height:1.3}#fullscreen-cover-overlay .fullscreen-actions{flex-wrap:wrap;gap:clamp(.5rem,2.2vw,1rem)}#fullscreen-cover-overlay .fullscreen-actions .btn-icon,#fullscreen-cover-overlay .fullscreen-actions .fs-circular-volume{width:clamp(38px,9vw,44px);height:clamp(38px,9vw,44px)}#fullscreen-cover-overlay .fullscreen-actions .fs-circular-volume{flex:0 0 clamp(38px,9vw,44px)}#fullscreen-cover-overlay .fullscreen-controls{max-width:min(100%,720px)}@media (width<=768px){#fullscreen-cover-overlay .fullscreen-main-view{padding:clamp(3.5rem, 8vh, 4.5rem) .85rem calc(env(safe-area-inset-bottom,0px) + .85rem);justify-content:flex-start;gap:.35rem}#fullscreen-cover-overlay.video-bg-active .fullscreen-main-view{justify-content:center}#fullscreen-cover-overlay #fullscreen-cover-image{max-width:min(62vw,300px);max-height:min(34vh,240px);margin-bottom:.75rem}#fullscreen-cover-overlay .fullscreen-track-info{max-width:min(94vw,620px);padding:.65rem .9rem}#fullscreen-cover-overlay #fullscreen-next-track{margin-top:.65rem}#fullscreen-cover-overlay .fullscreen-controls{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 10px);margin-top:.45rem}#fullscreen-cover-overlay .fullscreen-buttons{gap:clamp(.55rem,3vw,1rem)}}@media (height<=760px){#fullscreen-cover-overlay .fullscreen-main-view{justify-content:flex-start;padding-top:3.2rem;padding-bottom:.5rem}#fullscreen-cover-overlay.video-bg-active .fullscreen-main-view{justify-content:center}#fullscreen-cover-overlay #fullscreen-cover-image{max-height:min(30vh,220px)}#fullscreen-cover-overlay .fullscreen-track-info{padding:.55rem .85rem}#fullscreen-cover-overlay #fullscreen-track-title{margin-bottom:.35rem}#fullscreen-cover-overlay .fullscreen-actions,#fullscreen-cover-overlay #fullscreen-next-track{margin-top:.55rem}#fullscreen-cover-overlay .fullscreen-controls{gap:.45rem;margin-top:.3rem}#fullscreen-cover-overlay .fullscreen-progress-container{gap:.55rem;font-size:.8rem}#fullscreen-cover-overlay .fullscreen-buttons button{min-width:34px;min-height:34px;padding:.3rem}#fullscreen-cover-overlay .fullscreen-buttons #fs-play-pause-btn{width:50px;height:50px}}#queue-modal{background-color:var(--card);border-radius:var(--radius);width:90%;max-width:500px;max-height:80vh;box-shadow:var(--shadow-xl);flex-direction:column;animation:.2s cubic-bezier(.4,0,.2,1) scale-in;display:flex}#queue-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem;display:flex}#queue-modal-header h3{margin:0}#queue-modal-header #close-queue-btn{color:var(--muted-foreground);cursor:pointer;border-radius:var(--radius);width:32px;height:32px;transition:all var(--transition);background:0 0;border:none;justify-content:center;align-items:center;font-size:1.5rem;display:flex}#queue-modal-header #clear-queue-btn{background-color:#0000}#queue-modal-header #clear-queue-btn:hover,#queue-modal-header #close-queue-btn:hover{background-color:var(--secondary);color:var(--foreground)}#queue-list{padding:.5rem;overflow-y:auto}.queue-track-item{align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm);border-radius:var(--radius);cursor:grab;transition:all var(--transition);grid-template-columns:32px 1fr auto auto auto;margin-bottom:2px;display:grid}.queue-track-item .queue-like-btn{color:var(--muted-foreground);cursor:pointer;border-radius:var(--radius);transition:all var(--transition);opacity:.2;background:0 0;border:none;justify-content:center;align-items:center;padding:.5rem;display:flex}.queue-track-item:hover .queue-like-btn{opacity:1}.queue-track-item .queue-like-btn:hover{background-color:rgb(var(--highlight-rgb), .2);color:var(--foreground)}.queue-track-item .queue-like-btn.active{color:#ef4444}.queue-track-item .queue-like-btn.active svg{fill:#ef4444;color:#ef4444}.queue-track-item:active{cursor:grabbing}.queue-track-item.playing{background-color:rgb(var(--highlight-rgb), .15);border-left:3px solid var(--highlight);padding-left:calc(var(--spacing-sm) - 3px)}.queue-track-item .drag-handle{color:var(--muted-foreground);cursor:grab;justify-content:center;align-items:center;display:flex}.queue-track-item .queue-remove-btn{cursor:pointer;border-radius:var(--radius);transition:all var(--transition);color:var(--foreground);opacity:.2;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:.5rem;display:flex}.queue-track-item:hover .queue-remove-btn{opacity:1}.queue-track-item .queue-remove-btn:hover{background-color:var(--background);color:var(--foreground)}.queue-track-item .queue-remove-btn svg{width:20px;height:20px}.placeholder-text{color:var(--muted-foreground);padding:2rem 1rem}.placeholder-text.loading{animation:1.5s ease-in-out infinite pulse}.skeleton{isolation:isolate;background-color:var(--secondary);border-radius:var(--radius);animation:2.6s ease-in-out infinite skeleton-breathe;position:relative;overflow:hidden}.skeleton:after,.animate-shimmer:after,.card-image-wrapper.img-loading:before,.track-item-cover.img-loading:after,.detail-header-image.img-loading:after,.artist-hero-header.img-loading .artist-hero-background:before,.skeleton-text:after,.skeleton-circle:after,.skeleton-cover:after{content:"";z-index:2;pointer-events:none;background:var(--background);will-change:transform;animation:3s cubic-bezier(.4,0,.2,1) infinite skeleton-sheen;position:absolute;inset:0}.skeleton-track{align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);grid-template-columns:40px 1fr 60px 40px;display:grid}.skeleton-track-number{width:24px;height:20px;margin:0 auto}.skeleton-track-info{align-items:center;gap:var(--spacing-md);min-width:0;display:flex}.skeleton-track-cover{border-radius:var(--radius-sm);flex-shrink:0;width:40px;height:40px}.skeleton-track-details{gap:var(--spacing-xs);flex-direction:column;flex:1;min-width:0;display:flex}.skeleton-track-title{width:60%;max-width:200px;height:16px}.skeleton-track-artist{width:40%;max-width:150px;height:14px}.skeleton-track-duration{width:40px;height:14px}.skeleton-track-actions{justify-self:flex-end;width:24px;height:24px}.skeleton-card{background-color:var(--card);border-radius:var(--radius);padding:var(--spacing-md)}.skeleton-card-image{aspect-ratio:1;width:100%;margin-bottom:var(--spacing-md);border-radius:calc(var(--radius) - 4px)}.skeleton-card.artist .skeleton-card-image{border-radius:calc(var(--radius) - 4px)}.skeleton-card-title{width:80%;height:18px;margin-bottom:var(--spacing-xs)}.skeleton-card-subtitle{width:60%;height:14px}.card-image-wrapper.img-loading{background:var(--secondary)}.card-image-wrapper.img-loading .card-image,.card-image-wrapper.img-loading .card-collage{opacity:0}.card-image-wrapper .card-image,.card-image-wrapper .card-collage{transition:opacity .3s}.track-item-cover.img-loading{background:var(--secondary);position:relative;overflow:hidden}.detail-header-image.img-loading{position:relative;overflow:hidden}.skeleton-container{width:100%}#home-recommended-albums .skeleton-container,#home-recommended-artists .skeleton-container,#library-collab-playlists-grid .skeleton-container{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(165px,1fr));display:grid}#home-recommended-songs .skeleton-container{gap:2px var(--spacing-xl);grid-template-columns:repeat(auto-fill,minmax(480px,1fr));display:grid}@media (width<=1100px){#home-recommended-songs .skeleton-container{grid-template-columns:1fr}}#addon-manager{border-top:1px solid var(--border);padding-top:1rem}.addon-empty-state{text-align:center;background:var(--secondary);border:1px dashed color-mix(in srgb, var(--border) 70%, transparent);border-radius:var(--radius-lg);animation:addon-enter .22s var(--ease-out) both;flex-direction:column;align-items:center;gap:.4rem;margin-bottom:.9rem;padding:1.75rem 1.5rem;display:flex}.addon-empty-icon{width:44px;height:44px;color:var(--primary);background:color-mix(in srgb, var(--primary) 12%, transparent);border-radius:50%;justify-content:center;align-items:center;margin-bottom:.35rem;display:flex}.addon-empty-title{font-size:.95rem;font-weight:600}.addon-empty-text{color:var(--muted-foreground);max-width:34ch;font-size:.82rem;line-height:1.5}.addon-priority-list{flex-direction:column;gap:.5rem;display:flex}.addon-card{background:var(--secondary);border:1px solid var(--border);border-radius:var(--radius-lg);animation:addon-enter .22s var(--ease-out) both;align-items:flex-start;gap:.7rem;margin-bottom:0;padding:.7rem .8rem;display:flex}.addon-card-active{border-color:color-mix(in srgb, var(--primary) 55%, var(--border))}.addon-card-disabled{opacity:.58}.addon-priority-number{width:1.35rem;height:1.35rem;color:var(--muted-foreground);background:var(--muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.72rem;font-weight:700;display:flex}.addon-card-icon{border-radius:var(--radius-md);object-fit:cover;flex-shrink:0;width:44px;height:44px}.addon-card-body{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.addon-card-title{flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.88rem;font-weight:600;display:flex}.addon-card-version{color:var(--primary);background:color-mix(in srgb, var(--primary) 12%, transparent);border-radius:var(--radius-full);flex-shrink:0;padding:.12rem .5rem;font-size:.72rem;font-weight:600}.addon-active-badge{color:var(--success,#22c55e);border-radius:var(--radius-full);background:#22c55e1f;padding:.12rem .5rem;font-size:.68rem;font-weight:600}.addon-card-desc{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;line-height:1.45;overflow:hidden}.addon-card-url{font-family:var(--font-mono,ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);color:var(--muted-foreground);word-break:break-all;font-size:.66rem}.addon-card-badges{flex-wrap:wrap;gap:.4rem;margin-top:.05rem;display:flex}.addon-card-count{color:var(--muted-foreground);margin:.4rem 0 .7rem;font-size:.7rem}.addon-card-controls{border-top:1px solid color-mix(in srgb, var(--border) 45%, transparent);flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.3rem;padding-top:.35rem;display:flex}.addon-enabled-toggle{color:var(--muted-foreground);align-items:center;gap:.35rem;margin-right:auto;font-size:.7rem;display:inline-flex}.addon-card-controls button{min-width:2rem;min-height:1.65rem;padding:.15rem .45rem;font-size:.72rem}.addon-card-controls button:disabled{opacity:.45;cursor:not-allowed}.addon-card-controls .addon-remove-btn{color:var(--error,#ef4444)}.addon-card-controls .addon-remove-btn:hover:not(:disabled){background:color-mix(in srgb, var(--error,#ef4444) 12%, transparent)}.addon-enabled-toggle input{width:.95rem;height:.95rem;accent-color:var(--primary);margin:0}.addon-badge{text-transform:uppercase;letter-spacing:.05em;color:var(--primary);background:color-mix(in srgb, var(--primary) 12%, transparent);border-radius:var(--radius-full);padding:.1rem .45rem;font-size:.62rem;font-weight:600}.addon-card-status{border-radius:var(--radius-md);margin-top:.35rem;margin-bottom:0;padding:.4rem .6rem;font-size:.7rem;line-height:1.35}.addon-card-status-checking{color:var(--muted-foreground);background:var(--muted)}.addon-card-status-ok{color:var(--success,#22c55e);background:#22c55e1a}.addon-card-status-error{color:var(--destructive);background:color-mix(in srgb, var(--destructive) 10%, transparent)}.addon-actions{align-items:center;gap:.5rem;margin-bottom:.4rem;display:flex}.addon-actions[hidden]{display:none}.addon-remove-btn{color:var(--muted-foreground)}.addon-remove-btn:hover{color:var(--destructive)}.addon-status{color:var(--muted-foreground);animation:addon-enter .18s var(--ease-out) both;margin:0 0 .75rem;font-size:.82rem}.addon-status.addon-status-ok{color:var(--success)}.addon-status.addon-status-error{color:var(--destructive)}.addon-install-row{gap:.6rem;display:flex}.addon-url-input{background:var(--secondary);border:1px solid var(--border);border-radius:var(--radius-md);min-width:0;color:var(--foreground);font-size:.88rem;font-family:var(--font-mono,ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;flex:1;padding:.6rem .9rem}.addon-url-input::placeholder{color:var(--muted-foreground);opacity:.7}.addon-url-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 18%, transparent)}.addon-install-btn{border-radius:var(--radius-full);flex-shrink:0;padding:.6rem 1.25rem;font-size:.88rem}@media (width<=600px){.addon-card{gap:.65rem;padding:.8rem}.addon-priority-number{width:1.35rem;height:1.35rem}.addon-card-icon{width:44px;height:44px}.addon-card-title{gap:.35rem;font-size:.88rem}.addon-card-desc{white-space:normal}.addon-card-controls{align-items:stretch}.addon-enabled-toggle{width:100%;margin-right:0;padding-bottom:.15rem}.addon-card-controls button{flex:1}.addon-install-row{flex-direction:column}.addon-install-btn{width:100%}}.addon-help{color:var(--muted-foreground);margin:.7rem 0 0;font-size:.75rem}.addon-help a{color:var(--primary);text-decoration:none}.addon-help a:hover{text-decoration:underline}@keyframes addon-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.addon-empty-state,.addon-card,.addon-status{animation:none}}.theme-picker{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem;margin-top:1rem;display:grid}.theme-option{border:2px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all var(--transition);text-align:center;padding:1rem;font-weight:500}.theme-option:hover{border-color:var(--highlight);background-color:var(--secondary)}.theme-option.active{border-color:var(--primary);background-color:var(--primary);color:var(--primary-foreground)}.custom-theme-editor{background-color:var(--secondary);border-radius:var(--radius);margin-top:1rem;padding:1rem;display:none}.custom-theme-editor.show{display:block}.theme-color-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-top:1rem;display:grid}.theme-color-input{flex-direction:column;gap:.5rem;display:flex}.theme-color-input label{color:var(--muted-foreground);font-size:.9rem}.theme-color-input input[type=color]{border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;width:100%;height:40px}.theme-actions{gap:1rem;margin-top:1rem;display:flex}.about-content{padding:1rem 0}.about-description{color:var(--foreground);margin-bottom:1.5rem;line-height:1.6}.about-features,.about-tech{margin-bottom:1.5rem}.about-features h4,.about-tech h4{color:var(--foreground);margin-bottom:.75rem;font-size:1rem;font-weight:600}.about-features ul{padding:0;list-style:none}.about-features li{color:var(--foreground);padding:.5rem 0 .5rem 1.5rem;line-height:1.5;position:relative}.about-features li:before{content:"✓";color:var(--highlight);transition:transform var(--transition-spring);font-weight:700;position:absolute;left:0}.about-features li:hover:before{transform:scale(1.3)rotate(15deg)}.about-features li:hover{color:var(--highlight);transition:transform var(--transition-fast), color var(--transition-fast);transform:translate(4px)}.about-tech p{color:var(--muted-foreground);font-size:.9rem}.about-links{flex-wrap:wrap;gap:1rem;margin:1.5rem 0;display:flex}.github-link{background-color:var(--card);border:1px solid var(--border);border-radius:var(--radius);color:var(--foreground);transition:all var(--transition);align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-weight:500;display:inline-flex}.github-link:hover{background-color:var(--secondary);border-color:var(--highlight);transform:translateY(-2px)}.github-link svg{flex-shrink:0}.about-footer{border-top:1px solid var(--border);margin-top:2rem;padding-top:1.5rem}.about-footer p{margin:.5rem 0;font-size:.9rem}.about-footer .version{color:var(--foreground);font-weight:600}.about-footer .license{color:var(--muted-foreground)}.about-footer .disclaimer{color:var(--muted-foreground);background-color:var(--secondary);border-radius:var(--radius);border-left:3px solid var(--muted-foreground);margin-top:1rem;padding:.75rem;font-size:.8rem;font-style:italic}#download-notifications{z-index:9999;flex-direction:column;gap:.5rem;max-width:350px;display:flex;position:fixed;bottom:120px;right:20px}.download-task{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);min-width:300px;padding:1rem;animation:.3s slide-in}.download-cancel:hover{background:var(--secondary)!important;color:var(--foreground)!important}#lastfm-controls{align-items:center;gap:.5rem;display:flex}.desktop-only{display:flex}#cast-btn{position:relative}#cast-btn.available{color:var(--highlight)}#cast-btn.available:before{content:"";background-color:var(--highlight);border-radius:var(--radius-full);width:6px;height:6px;animation:2s infinite pulse;position:absolute;top:6px;right:6px}#cast-btn.connected{color:#10b981}#cast-btn.connected:after{content:"";border-radius:var(--radius-full);background-color:#10b981;width:8px;height:8px;position:absolute;top:6px;right:6px}#download-current-btn:disabled{opacity:.5;cursor:not-allowed}.template-guide{border-collapse:collapse;width:100%;margin-top:1rem;font-size:.9rem}.template-guide th,.template-guide td{text-align:left;border-bottom:1px solid var(--border);padding:.75rem}.template-guide th{background-color:var(--secondary);font-weight:600}.template-guide code{background-color:var(--secondary);border-radius:var(--radius-sm);padding:.2rem .4rem;font-size:.85em}.offline-notification,.update-notification{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:10000;align-items:center;gap:1rem;max-width:350px;padding:1rem;animation:.3s slide-in;display:flex;position:fixed;bottom:130px;right:20px}.offline-notification svg{color:#f59e0b;flex-shrink:0}.update-notification{flex-direction:column;align-items:stretch}.update-notification-actions{align-items:center;gap:.5rem;margin-top:.75rem;display:flex}.update-notification-actions .btn-icon{border:1px solid var(--border);color:var(--muted-foreground);border-radius:var(--radius);cursor:pointer;width:36px;height:36px;transition:all var(--transition);background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.update-notification-actions .btn-icon:hover{background:var(--secondary);color:var(--foreground);border-color:var(--foreground)}.close-shortcuts{color:var(--muted-foreground);cursor:pointer;border-radius:var(--radius);width:32px;height:32px;transition:all var(--transition);background:0 0;border:none;justify-content:center;align-items:center;font-size:1.5rem;display:flex}.close-shortcuts:hover{background:var(--secondary);color:var(--foreground)}.shortcuts-content{padding:1rem}.shortcut-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.75rem 0;display:flex}.shortcut-item:last-child{border-bottom:none}.command-palette-results{border:1px solid var(--border);border-radius:var(--radius);max-height:46vh;overflow:auto}.command-palette-item{border:none;border-bottom:1px solid color-mix(in srgb, var(--border) 80%, transparent);width:100%;color:var(--foreground);text-align:left;cursor:pointer;background:0 0;flex-direction:column;gap:.2rem;padding:.75rem .9rem;display:flex}.command-palette-item:last-child{border-bottom:none}.command-palette-item:hover,.command-palette-item.selected{background:color-mix(in srgb, var(--secondary) 72%, transparent)}.command-palette-item .name{font-weight:600}.command-palette-item .desc{color:var(--muted-foreground);font-size:.84rem}.command-palette-item.empty{cursor:default}#playlist-detail-description,#mix-detail-description{color:var(--foreground);font-size:.9rem}#playlist-detail-tracklist{flex-direction:column;gap:2px;display:flex}#playlist-detail-tracklist .track-list-header{align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm);color:var(--muted-foreground);border-bottom:1px solid var(--border);margin-bottom:var(--spacing-xs);grid-template-columns:40px 1fr 80px 48px;font-size:.9rem;display:grid}#playlist-detail-tracklist .track-list-header .duration-header{justify-self:flex-end}@supports (padding-top:env(safe-area-inset-top)){.now-playing-bar{padding-bottom:max(var(--spacing-sm), env(safe-area-inset-bottom))}.sidebar{padding-top:max(var(--spacing-md), env(safe-area-inset-top))}}.side-panel{width:var(--side-panel-width,600px);background:var(--card);border-left:1px solid var(--border);z-index:2050;min-width:300px;max-width:80vw;box-shadow:none;flex-direction:column;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}#side-panel-title{color:var(--foreground);padding:15px;font-weight:700}.side-panel.resizing{transition:none!important}.panel-resizer{cursor:ew-resize;z-index:2060;background:0 0;width:6px;transition:background-color .2s;display:none;position:absolute;top:0;bottom:0;left:0}.panel-resizer:hover,.panel-resizer.active{background-color:var(--primary);opacity:.5}@media (width>=1201px) and (hover:hover) and (pointer:fine){.panel-resizer{display:block}}.side-panel.active{box-shadow:var(--shadow-xl);transform:translate(0)}.side-panel[data-view=lyrics]{background:color-mix(in srgb, var(--card) calc(var(--lyrics-panel-opacity,0) * 100%), transparent);-webkit-backdrop-filter:blur(calc(var(--lyrics-panel-opacity,0) * 10px));backdrop-filter:blur(calc(var(--lyrics-panel-opacity,0) * 10px));box-shadow:none;border-left:none!important}.side-panel[data-view=lyrics].active{box-shadow:none}.side-panel[data-view=queue]{background:color-mix(in srgb, var(--card) 60%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-left:none}.panel-header{border-bottom:1px solid var(--border);padding:1rem}@media (width>=1025px){.panel-header{border-bottom:none;flex-wrap:nowrap;align-items:center;gap:.6rem;padding:.62rem .86rem;display:flex}.panel-header h3,#side-panel-title{white-space:nowrap;flex:none;padding:0;font-size:1.75rem;font-weight:700;line-height:1.05}.panel-track-info{display:none!important}.panel-controls{flex-wrap:nowrap;align-items:center;gap:.28rem;margin-left:auto;display:flex}.panel-controls .btn-icon{width:34px;height:34px;padding:.35rem}.lyrics-timing-controls{border-right:none;flex-wrap:nowrap;gap:.18rem;margin-right:.2rem;padding-right:.3rem}.lyrics-timing-controls .btn-icon{width:26px;height:26px;padding:.25rem}.lyrics-timing-display{min-width:3rem;font-size:.82rem}}@media (width>=769px){.side-panel[data-view=lyrics] .panel-content{padding-top:4.875rem}.side-panel[data-view=lyrics] .panel-header{z-index:5;isolation:isolate;opacity:0;visibility:hidden;pointer-events:none;background:var(--card);-webkit-backdrop-filter:none;backdrop-filter:none;transition:opacity .2s,transform .2s,visibility 0s linear .2s;position:absolute;top:0;left:0;right:0;transform:translateY(-8px)}.side-panel[data-view=lyrics].lyrics-controls-visible .panel-header,.side-panel[data-view=lyrics] .panel-header:focus-within{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .2s,transform .2s,visibility;transform:translateY(0)}}.panel-track-info{flex:1;align-items:center;gap:.75rem;min-width:0;display:none}.panel-track-cover{object-fit:cover;background:var(--secondary);border-radius:4px;flex-shrink:0;width:40px;height:40px}.skeleton-text,.skeleton-circle,.skeleton-cover{background-color:var(--secondary);animation:2.6s ease-in-out infinite skeleton-breathe;position:relative;overflow:hidden}.skeleton-text{border-radius:3px;color:#0000!important}.skeleton-circle{border-radius:50%}.skeleton-cover{border-radius:4px;width:100%;height:100%}.panel-track-details{flex:1;min-width:0;overflow:hidden}.panel-track-title{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.85rem;font-weight:600;overflow:hidden}.panel-track-artist{color:color-mix(in srgb, var(--foreground), transparent 40%);white-space:nowrap;text-overflow:ellipsis;margin:.1rem 0 0;font-size:.75rem;overflow:hidden}.panel-track-quality{color:var(--primary);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:.2rem;margin:.1rem 0 0;font-size:.65rem;font-weight:500;display:flex}.panel-track-quality svg{width:10px;height:auto}@media (width<=768px){.panel-track-info{display:flex}.panel-header #side-panel-title{display:none}.panel-header .panel-controls{flex:none}.panel-header,.panel-track-info{border-color:#ffffff1a!important}}.panel-header h3{margin:0;font-size:1.25rem;font-weight:600}.panel-controls{gap:.5rem;display:flex}.lyrics-timing-controls{border-right:1px solid var(--border);align-items:center;gap:.25rem;margin-right:auto;padding-right:.5rem;display:flex}.lyrics-timing-display{color:var(--foreground);text-align:center;-webkit-user-select:none;user-select:none;cursor:default;min-width:3.5rem;font-size:.875rem;font-weight:600}.lyrics-timing-controls .btn-icon{width:28px;height:28px;padding:.4rem}.lyrics-timing-controls .btn-icon:hover{background:var(--secondary);color:var(--primary)}.panel-content{padding:1rem;padding-bottom:calc(var(--player-bar-height-desktop) + 2rem);scroll-behavior:smooth;flex:1;overflow-y:auto}.side-panel[data-view=lyrics] .panel-content{padding:0}.side-panel[data-view=lyrics] .panel-controls .btn-icon,.side-panel[data-view=lyrics] .lyrics-timing-controls .btn-icon,#fullscreen-cover-overlay .fullscreen-actions .btn-icon,#close-fullscreen-cover-btn,.fullscreen-lyrics-toggle{pointer-events:auto;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:0 0!important;border-color:#0000!important}.side-panel[data-view=lyrics] .panel-controls .btn-icon:hover,.side-panel[data-view=lyrics] .panel-controls .btn-icon:active,.side-panel[data-view=lyrics] .lyrics-timing-controls .btn-icon:hover,.side-panel[data-view=lyrics] .lyrics-timing-controls .btn-icon:active,#fullscreen-cover-overlay .fullscreen-actions .btn-icon:hover,#fullscreen-cover-overlay .fullscreen-actions .btn-icon:active,#close-fullscreen-cover-btn:hover,#close-fullscreen-cover-btn:active,.fullscreen-lyrics-toggle:hover,.fullscreen-lyrics-toggle:active{box-shadow:none!important;background:0 0!important;border-color:#0000!important}*{-ms-overflow-style:none;scrollbar-width:none}::-webkit-scrollbar{width:0;height:0;display:none}.btn-icon{color:var(--muted-foreground);cursor:pointer;border-radius:var(--radius);transition:all var(--transition);background:0 0;border:none;justify-content:center;align-items:center;padding:.5rem;display:flex}.btn-icon:hover{background:var(--secondary);color:var(--foreground)}.synced-line{color:var(--muted-foreground);opacity:.5;filter:blur(1.5px);will-change:transform, opacity;contain:content;padding:.5rem 0;font-size:1.125rem;line-height:1.8;transition:opacity .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1),filter .5s cubic-bezier(.4,0,.2,1),color .3s;transform:scale(.95)}.synced-line.active{color:var(--highlight);opacity:1;filter:blur();will-change:transform, opacity, filter;font-size:1.25rem;font-weight:600;transform:scale(1)}.lyrics-subtext{font-family:var(--font-family,inherit);opacity:.82;font-size:.68em;font-weight:300}.synced-line.upcoming{opacity:.7;filter:blur(.8px);transform:scale(.98)}.synced-line.past{opacity:.3;filter:blur(2px);transform:scale(.93)}@media (width<=768px),(hover:none) and (pointer:coarse){.synced-line{filter:none;transition:opacity .4s,transform .4s,color .3s}.synced-line.active{filter:none}.synced-line.upcoming{filter:none;opacity:.65}.synced-line.past{filter:none;opacity:.25}}.lyrics-loading,.lyrics-error{text-align:center;color:var(--muted-foreground);padding:2rem}.lyrics-fallback{flex-direction:column;width:100%;height:100%;display:flex}.lyrics-fallback-status{font-size:var(--text-xs);color:var(--muted-foreground);opacity:.8;padding:.4rem .8rem}.lyrics-fallback-scroller{flex-direction:column;gap:.3rem;padding:.75rem .5rem 2rem;display:flex;overflow-y:auto}.lyrics-fallback-line{color:var(--muted-foreground);text-align:left;border-radius:var(--radius-sm);font-size:var(--text-lg-fluid);line-height:var(--leading-snug);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast), transform var(--transition-fast);background:0 0;border:none;padding:.5rem .65rem}.lyrics-fallback-line:hover{background:color-mix(in srgb, var(--secondary) 72%, transparent);color:var(--foreground)}.lyrics-fallback-line.active{color:var(--foreground);background:color-mix(in srgb, var(--highlight) 18%, transparent);transform:scale(1.01)}.lyrics-fallback-line.past{opacity:.55}.lyrics-fallback-line.upcoming{opacity:.86}.card.compact{flex-direction:row;align-items:center;gap:.75rem;min-height:60px;padding:.5rem;display:flex}.card.compact .card-image-wrapper{flex-shrink:0;width:48px;height:48px;margin-bottom:0}.card.artist.compact .card-image-wrapper{width:40px;height:40px}.card.compact .card-info{flex-direction:column;flex:1;justify-content:center;min-width:0;display:flex}.card.compact .card-title{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.9rem;font-weight:600;overflow:hidden}.card.compact .card-subtitle{white-space:nowrap;text-overflow:ellipsis;color:var(--muted-foreground);margin:0;font-size:.8rem;overflow:hidden}.card.compact .card-play-btn{box-shadow:var(--shadow-md);transition:opacity .2s;top:25%;right:.5rem;background-color:var(--primary)!important;width:36px!important;height:36px!important;color:var(--primary-foreground)!important}.card.compact .card-like-btn{top:0;right:0;width:24px!important;height:24px!important}.card.compact:hover .card-like-btn{opacity:1}.card.compact.user-playlist .edit-playlist-btn,.card.compact.user-playlist .delete-playlist-btn{display:none!important}.now-playing-bar .cover-shell{cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-fast);isolation:isolate;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:.5rem;position:relative;box-shadow:0 6px 14px #0000004d}.now-playing-bar .cover-shell:hover{transform:translateY(-2px)scale(1.03);box-shadow:0 9px 20px #0000005c}.now-playing-bar .cover-shell .cover{object-fit:cover;border-radius:inherit;width:100%;height:100%;transition:width .4s cubic-bezier(.25,1,.5,1),height .4s cubic-bezier(.25,1,.5,1),border-radius .4s cubic-bezier(.25,1,.5,1),box-shadow .4s;display:block}.now-playing-bar .cover-shell.rotating{--mini-cover-rotation-duration:12s}.now-playing-bar .cover-shell.rotating .cover{animation:rotate-disc var(--mini-cover-rotation-duration) linear infinite;will-change:transform;backface-visibility:hidden;transform:translate(0,0)}.now-playing-bar .cover-shell.rotating:before,.now-playing-bar .cover-shell.rotating:after{content:none}.now-playing-bar .cover-shell.rotating.paused,.now-playing-bar .cover-shell.rotating.paused .cover{animation-play-state:paused}.friends-hero-subtitle{color:var(--muted-foreground);font-size:1rem}.friends-section-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.friends-empty-state{text-align:center;color:var(--muted-foreground);flex-direction:column;align-items:center;padding:3rem 1rem;display:flex}.friend-card{background:var(--card);cursor:pointer;border:1px solid var(--border);border-radius:12px;align-items:center;gap:.875rem;padding:1rem 1.25rem;transition:background .2s,border-color .2s;display:flex}.friend-card:hover{background:color-mix(in srgb, var(--card) 80%, var(--primary) 8%);border-color:color-mix(in srgb, var(--border) 60%, var(--primary) 20%)}.friend-card .friend-avatar{border:2px solid color-mix(in srgb, var(--border) 70%, var(--primary) 15%);border-radius:50%;flex-shrink:0;width:48px;height:48px;overflow:hidden}.friend-card .friend-name{white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:600;line-height:1.3;overflow:hidden}.friend-card .friend-username{color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.friend-card .friend-status{color:var(--primary);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.35rem;margin-top:.3rem;font-size:.78rem;display:flex;overflow:hidden}.friend-card .friend-status:before{content:"";background:var(--primary);border-radius:50%;flex-shrink:0;width:6px;height:6px}.friend-card .friend-card-actions{flex-shrink:0}@media (width<=480px){.friends-grid{grid-template-columns:1fr}}.friend-request-item{background:var(--card);border:1px solid var(--border);border-radius:8px;align-items:center;gap:1rem;padding:1rem;display:flex}.friend-request-item .friend-request-avatar{border-radius:50%;flex-shrink:0;width:48px;height:48px;overflow:hidden}.friend-request-item .friend-request-info{flex:1}.friend-request-item .friend-request-name{font-weight:600}.friend-request-item .friend-request-actions{gap:.5rem;display:flex}.friend-request-item.pending{opacity:.85}.friend-requests-subtitle{color:var(--muted-foreground);letter-spacing:.04em;text-transform:uppercase;margin:1rem 0 .5rem;font-size:.85rem;font-weight:600}.friends-discover-panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--card) 84%, transparent);padding:1rem}.friend-suggestion-item{border-radius:var(--radius-md);border:1px solid var(--border);background:color-mix(in srgb, var(--card) 92%, transparent);align-items:center;gap:.75rem;padding:.75rem;display:flex}.friend-suggestion-name{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.friend-suggestion-actions{flex-shrink:0;gap:.45rem;display:flex}.friend-suggestion-actions .btn-primary,.friend-suggestion-actions .btn-secondary{justify-content:center;min-width:0;padding:.4rem .7rem}@media (width<=720px){.friend-suggestion-item{flex-wrap:wrap}.friend-suggestion-actions{justify-content:flex-end;width:100%}}.collab-playlist-card{cursor:pointer;transition:transform .2s,box-shadow .2s}.collab-playlist-card .card-info{padding:.95rem 1rem 1.05rem}.collab-playlist-card .card-title{margin-bottom:.28rem}.collab-playlist-card .card-meta{color:var(--muted-foreground);-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:.875rem;line-height:1.3;display:-webkit-box;overflow:hidden}#home-recommended-albums .home-album-like-collab .card-content{padding:.95rem 1rem 1.05rem}#home-recommended-albums .home-album-like-collab .card-title{margin-bottom:.28rem}#home-recommended-albums .home-album-like-collab .card-subtitle,#home-recommended-albums .home-album-like-collab .card-meta{color:var(--muted-foreground);-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:.875rem;line-height:1.3;display:-webkit-box;overflow:hidden}#page-home .card:not(.artist-circular){overflow:visible}#page-home .card:not(.artist-circular) .card-content{background:0 0;padding:.95rem 1rem 1.05rem;position:static}#page-home .card:not(.artist-circular) .card-title{color:var(--foreground);text-shadow:none;white-space:normal;text-overflow:ellipsis;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;min-height:2.56em;line-height:1.28;display:-webkit-box;overflow:hidden}#page-home .card:not(.artist-circular) .card-subtitle{color:var(--muted-foreground);text-shadow:none;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (width<=768px){html.carousel-mode #page-home .card-grid>.card,.carousel-mode #page-home .card-grid>.card{width:clamp(160px,46vw,190px);min-width:clamp(160px,46vw,190px);max-width:clamp(160px,46vw,190px)}#page-home .card:not(.artist-circular) .card-content{padding:.8rem .85rem .92rem}}#artist-detail-similar,#album-detail-similar-artists{padding-top:var(--space-2);margin-top:calc(-1 * var(--space-2));grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:.95rem;overflow:visible}.now-playing-bar .artist .artist-link{cursor:pointer;transition:color var(--transition)}.now-playing-bar .artist .artist-link:hover{color:var(--highlight);text-decoration:underline}.track-item .artist .artist-link{cursor:pointer;transition:color var(--transition)}.track-item .artist .artist-link:hover{color:var(--highlight);text-decoration:underline}.player-actions-row,.volume-slider-row{align-items:center;gap:.75rem;display:flex}.player-actions-row button,.volume-slider-row button{justify-content:center;align-items:center;display:flex}img:not([src]),img[src=""]{content:url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);background-color:var(--muted)}.card-play-btn{opacity:0;z-index:20;box-shadow:var(--shadow-md);justify-content:center;align-items:center;position:absolute;bottom:2%;right:2%;transform:translateY(10px);background:var(--highlight)!important;width:42px!important;height:42px!important;color:var(--background)!important;border:none!important;border-radius:50%!important;padding:0!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important;display:flex!important}.card-play-btn:hover{box-shadow:var(--shadow-lg);filter:brightness(1.1);transform:scale(1.1)translateY(0)!important}.firebase-settings-wrapper{flex-direction:column;gap:.5rem;width:100%;max-width:400px;display:flex}.custom-firebase-config{flex-direction:column;gap:.5rem;width:100%;margin-top:.5rem;display:none}.custom-firebase-config.visible{display:flex}.config-help-text{opacity:.7;margin-bottom:.25rem;font-size:.8rem}.firebase-controls-container{gap:.5rem;width:100%;display:flex}#toggle-firebase-config-btn{width:fit-content}.account-content{max-width:640px;margin:0 auto;padding:1rem 0}.auth-panel{border:1px solid color-mix(in srgb, var(--primary) 24%, var(--border));background:var(--card);width:100%;max-width:560px;-webkit-backdrop-filter:blur(var(--surface-blur,var(--background-blur,12px))) saturate(1.08);backdrop-filter:blur(var(--surface-blur,var(--background-blur,12px))) saturate(1.08);box-shadow:0 14px 34px #05050a3d, 0 1px 0 color-mix(in srgb, var(--foreground) 18%, transparent) inset, 0 0 0 1px color-mix(in srgb, var(--primary) 12%, transparent);border-radius:16px;flex-direction:column;gap:.85rem;margin:1rem auto 0;padding:clamp(.9rem,1.8vw,1.25rem);display:flex}.account-community-actions{justify-content:center;margin-top:.75rem;display:flex}.account-discord-link{justify-content:center;min-width:220px}.auth-mark{width:40px;height:40px;color:var(--primary-foreground);background:var(--card);border-radius:10px;justify-content:center;align-items:center;margin:0 auto;display:flex}.auth-copy{text-align:center}.auth-copy h3{letter-spacing:-.02em;color:color-mix(in srgb, var(--foreground) 92%, white 8%);margin:0;font-size:clamp(1.65rem,4.4vw,1.95rem);line-height:1.12}.auth-copy p{color:color-mix(in srgb, var(--muted-foreground) 86%, white 14%);margin-top:.42rem;font-size:.94rem}.auth-pill{letter-spacing:.02em;border:1px solid color-mix(in srgb, var(--border) 65%, transparent);border-radius:var(--radius-full);color:color-mix(in srgb, var(--muted-foreground) 76%, white 24%);background:color-mix(in srgb, var(--muted) 36%, transparent);margin-inline:auto;padding:.35rem .68rem;font-size:.82rem;font-weight:500}.auth-pill-user{text-overflow:ellipsis;white-space:nowrap;max-width:min(440px,100%);overflow:hidden}.auth-social{flex-direction:column;gap:.5rem;display:flex}.auth-social-btn{border:1px solid color-mix(in srgb, var(--border) 76%, transparent);background:color-mix(in srgb, var(--card) 92%, var(--background) 8%);color:color-mix(in srgb, var(--foreground) 92%, white 8%);cursor:pointer;border-radius:10px;padding:.72rem .9rem;font-family:inherit;font-size:.97rem;font-weight:500;transition:border-color .15s,background-color .15s,transform .15s}.auth-social-btn:hover{border-color:color-mix(in srgb, var(--primary) 45%, var(--border));background:color-mix(in srgb, var(--card) 86%, var(--background) 14%);transform:translateY(-1px)}#auth-discord-btn{border-color:color-mix(in srgb, var(--primary) 40%, var(--border));background:var(--card)}#auth-discord-btn:hover{border-color:color-mix(in srgb, var(--primary) 56%, var(--border));background:var(--card)}.auth-method-btn-content{justify-content:center;align-items:center;gap:.55rem;display:flex}.auth-method-icon{flex:none;width:1.05rem;height:1.05rem}.auth-divider{color:color-mix(in srgb, var(--muted-foreground) 82%, white 18%);justify-content:center;align-items:center;gap:.7rem;margin-top:.1rem;font-size:.88rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:color-mix(in srgb, var(--border) 68%, transparent);flex:1;height:1px}.auth-email-form{gap:.75rem;display:grid}.auth-field{gap:.34rem;display:grid}.auth-field label{color:color-mix(in srgb, var(--foreground) 85%, white 15%);font-size:.86rem;font-weight:600}.auth-email-form .template-input{box-sizing:border-box;border-color:color-mix(in srgb, var(--border) 74%, transparent);background:color-mix(in srgb, var(--background) 88%, var(--card) 12%);border-radius:10px;width:100%;max-width:none;min-height:46px;padding:.74rem .84rem;font-size:.95rem;display:block}.auth-email-form .template-input:focus{border-color:color-mix(in srgb, var(--primary) 48%, var(--border));box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 24%, transparent)}.auth-primary{background:var(--card);border-color:color-mix(in srgb, var(--primary) 48%, var(--border));width:100%;color:var(--primary-foreground);border-radius:10px;margin-top:.15rem;padding:.78rem 1rem;font-size:.98rem;font-weight:600}.auth-primary:hover{background:var(--card);border-color:color-mix(in srgb, var(--primary) 62%, var(--border))}.auth-link-btn{color:color-mix(in srgb, var(--muted-foreground) 84%, white 16%);cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0;font-size:.87rem}.auth-link-btn:hover{color:color-mix(in srgb, var(--foreground) 85%, white 15%);text-decoration:underline}.auth-switch-row{color:color-mix(in srgb, var(--muted-foreground) 88%, white 12%);justify-content:center;gap:.3rem;font-size:.9rem;display:flex}.auth-switch-btn{color:color-mix(in srgb, var(--foreground) 86%, white 14%);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.auth-switch-btn:hover{text-decoration:underline}.auth-feedback{border:1px solid color-mix(in srgb, var(--border) 76%, transparent);color:color-mix(in srgb, var(--muted-foreground) 88%, white 12%);background:color-mix(in srgb, var(--muted) 34%, transparent);border-radius:10px;padding:.64rem .74rem;font-size:.86rem}.auth-feedback[data-type=error]{border-color:color-mix(in srgb, var(--color-danger) 65%, var(--border));color:color-mix(in srgb, var(--color-danger) 78%, white);background:color-mix(in srgb, var(--color-danger) 12%, transparent)}.auth-feedback[data-type=success]{border-color:color-mix(in srgb, var(--color-success) 55%, var(--border));color:color-mix(in srgb, var(--color-success) 80%, white);background:color-mix(in srgb, var(--color-success) 12%, transparent)}.auth-footer-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;display:flex}.auth-panel.signed-in .auth-social,.auth-panel.signed-in .auth-divider,.auth-panel.signed-in .auth-email-form,.auth-panel.signed-in .auth-link-btn,.auth-panel.signed-in .auth-switch-row,.auth-panel.signed-in .auth-copy{display:none!important}.account-stats-panel{border:1px solid color-mix(in srgb, var(--border) 66%, transparent);background:var(--card);width:100%;max-width:700px;box-shadow:0 16px 38px #05050a3b, 0 0 0 1px color-mix(in srgb, var(--primary) 14%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:18px;gap:.9rem;margin:1rem auto 0;padding:1rem;display:grid}.account-stats-header{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.account-stats-header h3{color:color-mix(in srgb, var(--foreground) 92%, white 8%);margin:0;font-size:1rem}.account-stats-header p{color:var(--muted-foreground);margin:0;font-size:.82rem}.account-stats-periods{flex-wrap:wrap;gap:.4rem;display:inline-flex}.account-stats-period-btn{border:1px solid color-mix(in srgb, var(--border) 70%, transparent);background:color-mix(in srgb, var(--muted) 16%, transparent);color:var(--muted-foreground);cursor:pointer;transition:all var(--transition);border-radius:999px;padding:.24rem .6rem;font-size:.74rem;font-weight:600}.account-stats-period-btn.active{color:var(--foreground);border-color:color-mix(in srgb, var(--primary) 50%, var(--border) 50%);background:color-mix(in srgb, var(--primary) 18%, transparent)}.account-stats-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem;display:grid}.account-stat-card{border:1px solid color-mix(in srgb, var(--border) 70%, transparent);background:var(--background);border-radius:12px;gap:.3rem;padding:.78rem;display:grid;position:relative;overflow:hidden}.account-stat-card:before{content:"";border-radius:inherit;background:var(--background);pointer-events:none;position:absolute;inset:0}.account-stat-label{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.04em;font-size:.74rem}.account-stat-value{color:var(--foreground);font-size:1.16rem;font-weight:700}.account-stats-lists{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.account-stats-list-card{border:1px solid color-mix(in srgb, var(--border) 72%, transparent);background:color-mix(in srgb, var(--muted) 24%, transparent);border-radius:12px;padding:.72rem}.account-stats-list-card h4{color:color-mix(in srgb, var(--foreground) 90%, white 10%);margin:0 0 .5rem;font-size:.88rem}.account-stats-list{gap:.38rem;margin:0;padding:0;list-style:none;display:grid}.account-stats-item{background:color-mix(in srgb, var(--background) 40%, transparent);transition:transform var(--transition-fast), background-color var(--transition-fast), border-color var(--transition-fast);border:1px solid #0000;border-radius:10px;justify-content:space-between;align-items:center;gap:.5rem;padding:.52rem .56rem;display:flex}.account-stats-item:hover{border-color:color-mix(in srgb, var(--primary) 24%, transparent);background:color-mix(in srgb, var(--secondary) 38%, transparent);transform:translateY(-1px)}.account-stats-item-main{flex:1;gap:.08rem;min-width:0;display:grid}.account-stats-rank{width:1.2rem;height:1.2rem;color:color-mix(in srgb, var(--foreground) 88%, transparent);background:color-mix(in srgb, var(--primary) 18%, transparent);border:1px solid color-mix(in srgb, var(--primary) 30%, transparent);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:.68rem;font-weight:700;display:inline-flex}.account-stats-item-title{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.38rem;font-size:.83rem;font-weight:600;display:inline-flex;overflow:hidden}.account-stats-item-avatar{object-fit:cover;border-radius:999px;flex-shrink:0;width:1.24rem;height:1.24rem}.account-stats-avatar-wrap{width:1.24rem;height:1.24rem;box-shadow:0 0 0 1px color-mix(in srgb, var(--border) 70%, transparent);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.account-stats-avatar-wrap .account-stats-item-avatar{width:100%;height:100%}.account-stats-item-cover-badge{object-fit:cover;border:1px solid color-mix(in srgb, var(--background) 85%, transparent);background:var(--muted);border-radius:999px;width:.62rem;height:.62rem;position:absolute;bottom:-.2rem;right:-.2rem}.account-stats-track-thumb{object-fit:cover;width:1.24rem;height:1.24rem;box-shadow:0 0 0 1px color-mix(in srgb, var(--border) 70%, transparent);border-radius:.32rem;flex-shrink:0}.account-stats-item-sub{color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.account-stats-item-meta{color:color-mix(in srgb, var(--foreground) 72%, transparent);background:color-mix(in srgb, var(--secondary) 55%, transparent);border-radius:999px;flex-shrink:0;padding:.12rem .44rem;font-size:.72rem}.account-stats-empty{color:var(--muted-foreground);padding:.35rem .45rem;font-size:.8rem}@media (width<=720px){.account-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-stats-lists{grid-template-columns:1fr}}.account-community-panel{border:1px solid color-mix(in srgb, var(--border) 70%, transparent);background:var(--card);border-radius:24px;gap:1.4rem;width:100%;max-width:760px;margin:1.25rem auto 0;padding:clamp(1.25rem,4vw,2.1rem);box-shadow:0 24px 60px #0000003d}.account-community-heading{gap:.45rem;display:grid}.account-community-kicker{color:var(--primary);letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;font-weight:800}.account-community-heading h3{max-width:18ch;color:var(--foreground);margin:0;font-size:clamp(1.45rem,4vw,2.25rem);line-height:1.05}.account-community-heading p{max-width:48ch;color:var(--muted-foreground);margin:0;font-size:.9rem;line-height:1.5}.account-community-stats{grid-template-columns:1.25fr 1fr;gap:.75rem;display:grid}.account-community-stat{border:1px solid color-mix(in srgb, var(--border) 78%, transparent);background:color-mix(in srgb, var(--muted) 23%, transparent);border-radius:16px;align-content:end;gap:.25rem;min-height:9.5rem;padding:1rem;display:grid;position:relative;overflow:hidden}.account-community-stat--wide,.account-community-stat--online{background:var(--background)}.account-community-stat-mark{color:color-mix(in srgb, var(--primary) 72%, white 28%);letter-spacing:.08em;font-size:.7rem;font-weight:900;position:absolute;top:.8rem;right:.9rem}.account-community-live-dot,.account-community-pulse{background:var(--color-success);width:.55rem;height:.55rem;box-shadow:0 0 0 0 color-mix(in srgb, var(--color-success) 35%, transparent);border-radius:50%;animation:2s infinite account-community-pulse}.account-community-live-dot{position:absolute;top:1rem;left:1rem}.account-community-value{color:var(--foreground);font-size:clamp(2rem,7vw,3.5rem);line-height:.95}.account-community-note,.account-community-footer{color:var(--muted-foreground);font-size:.76rem}.account-community-footer{align-items:center;gap:.45rem;padding-top:.1rem;display:flex}.account-community-refresh-label{opacity:.7;margin-left:auto}@keyframes account-community-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--color-success) 35%, transparent)}50%{box-shadow:0 0 0 5px color-mix(in srgb, var(--color-success) 0%, transparent)}}@media (width<=560px){.account-community-stats{grid-template-columns:1fr}.account-community-stat{min-height:8rem}.account-community-refresh-label{display:none}}body.auth-locked .sidebar,body.auth-locked .main-header,body.auth-locked .now-playing-bar,body.auth-locked .page:not(#page-account){display:none!important}body.auth-locked .app-container{grid-template:"main"1fr/minmax(0,1fr);height:100dvh}body.auth-locked #page-account{width:100%;min-height:100dvh;padding:max(.75rem, env(safe-area-inset-top)) max(.75rem, env(safe-area-inset-right)) max(.75rem, env(safe-area-inset-bottom)) max(.75rem, env(safe-area-inset-left));pointer-events:auto;margin:0;display:block!important}body.auth-locked .main-content,body.auth-locked #page-account{background:var(--background)}body.auth-locked .main-content{grid-area:main;justify-content:center;align-items:flex-start;width:100%;display:flex;overflow:hidden auto;padding:0!important}body.auth-locked .account-content{width:100%;max-width:560px;margin:0 auto;padding:0}body.auth-locked #page-account .section-title{text-align:center;margin:.25rem 0 .6rem;font-size:clamp(1.6rem,6.8vw,2.1rem);line-height:1.08}body.auth-locked .account-description{max-width:48ch;margin:0 auto;font-size:clamp(.86rem,3.6vw,.95rem);line-height:1.42}body.auth-locked #auth-status{margin:.7rem 0 0;font-size:.85rem}body.auth-locked .account-content>p:last-of-type{margin-top:.6rem;font-size:.8rem;line-height:1.4;padding-top:0!important}body.auth-locked .auth-panel{border-radius:16px;gap:.72rem;width:100%;max-width:560px;margin:.75rem auto 0;padding:clamp(.9rem,2.8vw,1.2rem)}body.auth-locked .auth-panel *{min-width:0}body.auth-locked .auth-copy h3{font-size:clamp(1.5rem,7.2vw,2rem);line-height:1.08}body.auth-locked .auth-copy p{overflow-wrap:break-word;font-size:clamp(.88rem,3.6vw,.95rem);line-height:1.38}body.auth-locked .auth-social{gap:.55rem;display:grid}body.auth-locked .auth-social-btn,body.auth-locked .auth-primary{justify-content:center;align-items:center;width:100%;min-height:46px;display:inline-flex}body.auth-locked .auth-method-btn-content{justify-content:center;width:100%}body.auth-locked .auth-method-btn-content span{white-space:normal;line-height:1.2}body.auth-locked .auth-email-form{gap:.62rem}body.auth-locked .auth-field{gap:.28rem}body.auth-locked .auth-field label{font-size:.84rem}body.auth-locked .auth-email-form .template-input{min-height:44px;font-size:.95rem}@media (width>=1440px){body.auth-locked #page-account{width:100%}body.auth-locked .auth-panel{max-width:620px}}@media (width<=860px){.account-content{max-width:100%}.auth-panel{max-width:520px}}@media (width>=640px){.auth-panel{padding:1.65rem}.auth-copy h3{font-size:1.95rem}}@media (width<=640px){body.auth-locked .main-content{align-items:flex-start}body.auth-locked #page-account{width:100%}body.auth-locked .auth-panel{border-radius:14px;gap:.75rem;margin-top:.75rem}body.auth-locked .auth-copy h3{font-size:clamp(1.34rem,6.2vw,1.62rem)}body.auth-locked .auth-copy p{font-size:.9rem}body.auth-locked .auth-social-btn,body.auth-locked .auth-primary,body.auth-locked .auth-email-form .template-input{min-height:44px}body.auth-locked .auth-field label{font-size:.82rem}body.auth-locked .auth-switch-row{flex-wrap:wrap;row-gap:.1rem;font-size:.84rem}}@media (height<=760px){body.auth-locked .main-content{align-items:start;overflow-y:auto}body.auth-locked #page-account{min-height:100%;padding-block:.25rem}}@media (height<=640px){body.auth-locked .auth-panel{gap:.65rem;margin-top:.5rem;padding:.85rem}body.auth-locked .auth-mark{width:34px;height:34px}body.auth-locked .auth-copy h3{font-size:1.28rem}body.auth-locked .auth-copy p{margin-top:.3rem;font-size:.84rem}body.auth-locked .auth-email-form{gap:.6rem}}.fullscreen-main-view{flex-direction:column;flex:1;justify-content:center;align-items:center;padding:6rem 2rem 2rem;transition:flex .3s,padding-right .3s,margin-right .3s;display:flex}.fullscreen-lyrics-toggle{color:#fff;border-radius:var(--radius-full);cursor:pointer;z-index:1001;opacity:.6;background:0 0;border:none;justify-content:center;align-items:center;width:36px;height:36px;padding:0;transition:opacity .2s,right .3s;display:flex;position:absolute;top:1rem;right:4rem}#fullscreen-cover-overlay #fs-video-btn{right:calc(4rem + 44px)}:root[data-theme=white] #fullscreen-cover-overlay{background:var(--background)}:root[data-theme=white] #fullscreen-cover-overlay:before{filter:blur(84px)saturate(1.04)brightness(.9)}:root[data-theme=white] #fullscreen-cover-overlay:after{background:0 0}:root[data-theme=white] .fullscreen-track-info{box-shadow:none;background:0 0}:root[data-theme=white] .fullscreen-lyrics-toggle,:root[data-theme=white] #close-fullscreen-cover-btn{color:var(--foreground)}:root[data-theme=white] .fullscreen-progress-container .progress-bar{background:#11182729}:root[data-theme=white] .fullscreen-progress-container .progress-fill{background:color-mix(in srgb, var(--foreground) 84%, transparent)}.fullscreen-lyrics-toggle:hover{opacity:1}.fullscreen-lyrics-toggle.active{opacity:1;color:var(--foreground)}.fullscreen-lyrics-toggle.active:after{content:"";border-radius:var(--radius-full);background:var(--foreground);opacity:.7;width:4px;height:4px;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.modal{z-index:10000;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.modal.active{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);transition:opacity var(--transition-normal);background:#0009;display:flex}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:-1;background:#000000b3;position:fixed;inset:0}.modal-content{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);width:90%;max-width:400px;box-shadow:var(--shadow-xl);max-height:90vh;padding:2rem;animation:.2s scale-in;overflow-y:auto}.modal-content.wide{max-width:600px}.modal-content.extra-wide{max-width:1000px}.modal-content.medium{max-width:500px}.modal-list{max-height:200px;margin:1rem 0;overflow-y:auto}.modal-option{cursor:pointer;border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.75rem;transition:background .2s;display:flex}.modal-option:hover{background:var(--secondary)}.modal-option.already-contains{opacity:.6;cursor:default}.modal-option.already-contains:hover{background:0 0}.modal-option .checkmark{color:var(--highlight);flex-shrink:0}.modal-option:last-child{border-bottom:none}.modal-actions{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.timer-options{flex-direction:column;gap:.5rem;display:flex}.timer-option{text-align:center}#playlist-modal{animation:.1s ease-in fade-in}.csv-import-progress{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-xl);z-index:10001;min-width:350px;max-width:400px;padding:1.5rem;animation:.3s slide-in;position:fixed;bottom:120px;right:3%}.csv-import-progress .progress-header{margin-bottom:1rem}.csv-import-progress .progress-header h4{color:var(--foreground);margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.csv-import-progress .progress-warning{color:var(--muted-foreground);font-size:.85rem;line-height:1.4}.csv-import-progress .progress-content{flex-direction:column;gap:.75rem;display:flex}.csv-import-progress .current-track{color:var(--foreground);min-height:1.2rem;font-size:.9rem;font-weight:500}.csv-import-progress .progress-bar{background:var(--secondary);border-radius:var(--radius-sm);width:100%;height:8px;position:relative;overflow:hidden}.csv-import-progress .progress-fill{background:var(--background);border-radius:var(--radius-sm);width:0%;height:100%;transition:width .3s;position:relative}.csv-import-progress .progress-fill:after{content:"";background:var(--background);animation:2s infinite shimmer;position:absolute;inset:0}.csv-import-progress .progress-text{color:var(--muted-foreground);text-align:center;font-size:.85rem}.csv-import-progress .progress-text span{color:var(--foreground);font-weight:600}.missing-tracks-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:2rem 2rem 1.5rem;display:flex}.missing-tracks-header h3{color:var(--foreground);letter-spacing:-.025em;margin:0;font-size:1.5rem;font-weight:700}.close-missing-tracks{color:var(--muted-foreground);cursor:pointer;border-radius:var(--radius);width:36px;height:36px;transition:all var(--transition);background:0 0;border:none;justify-content:center;align-items:center;font-size:1.5rem;display:flex}.close-missing-tracks:hover{background:var(--secondary);color:var(--foreground)}.missing-tracks-content{padding:2rem}.missing-tracks-content p{color:var(--foreground);margin-bottom:2rem;font-size:1rem;font-weight:400;line-height:1.7}.missing-tracks-list h4{color:var(--foreground);letter-spacing:-.01em;margin-bottom:1rem;font-size:1.1rem;font-weight:600}.missing-tracks-list ul{border:1px solid var(--border);border-radius:var(--radius);background:var(--secondary);max-height:400px;padding:0;list-style:none;overflow-y:auto}.missing-tracks-list li{border-bottom:1px solid var(--border);color:var(--foreground);padding:.75rem 1.25rem;font-size:.95rem;font-weight:400;line-height:1.4}.missing-tracks-list li:last-child{border-bottom:none}.missing-tracks-list li:nth-child(2n){background:#ffffff05}.missing-tracks-actions{border-top:1px solid var(--border);justify-content:flex-end;padding:1.5rem 2rem 2rem;display:flex}.missing-tracks-actions .btn-secondary{min-width:100px;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500}.mobile-only{display:none!important}@media (width<=768px){.mobile-only{display:flex!important}.desktop-only{display:none!important}#cast-btn{z-index:10!important;width:24px!important;height:24px!important;box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important;justify-content:center!important;align-items:center!important;padding:0!important;display:flex!important;position:absolute!important;bottom:10px!important;right:10px!important}#cast-btn:hover{background:0 0!important;transform:none!important}#cast-btn svg{width:20px!important;height:20px!important}.now-playing-bar .player-controls{padding-bottom:50px!important;position:relative!important}.player-controls.waveform-loaded{gap:0}}@media (width>=1440px){.card-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}@media (width>=1920px){.card-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media (width>=769px) and (width<=1024px){.now-playing-bar{gap:var(--spacing-md);padding:var(--spacing-md);grid-template-columns:minmax(150px,1fr) 1fr auto}.volume-controls,.desktop-only{display:flex}}@media (width<=1024px){.app-container{grid-template-columns:160px 1fr}.card-grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.detail-header-info .title{font-size:3rem}.detail-header-info .title.long-title{font-size:2rem}.detail-header-info .title.very-long-title{font-size:1.35rem}.main-content{padding:var(--spacing-lg)}.now-playing-bar{left:calc(160px + 2%);width:calc(96% - 160px)!important}}@media (width<=768px){.player-controls .progress-container{order:-1;gap:.5rem;max-width:none;font-size:.75rem}#fullscreen-cover-overlay{padding-bottom:0}#fullscreen-cover-image{max-width:min(62vw,300px);max-height:min(34vh,240px);margin-bottom:.75rem}.fullscreen-main-view{padding:clamp(3.5rem, 8vh, 4.5rem) .85rem calc(env(safe-area-inset-bottom,0px) + .85rem);justify-content:flex-start;gap:.35rem}#fullscreen-track-title{font-size:clamp(1.2rem,5vw,1.5rem)}#fullscreen-track-artist{font-size:clamp(.92rem,3.8vw,1rem)}.app-container{grid-template:"header""main"1fr"player""sidebar"/1fr;height:100dvh}.main-content{padding:var(--spacing-sm);padding-top:var(--spacing-sm);grid-area:main}.main-header{top:max(.35rem, env(safe-area-inset-top));margin-bottom:var(--spacing-sm);border-radius:.88rem;flex-wrap:wrap;grid-area:header;gap:.45rem;padding:.4rem}.sidebar{border-radius:0 var(--radius-xl) var(--radius-xl) 0;width:280px;height:100dvh;padding:1rem;padding-top:calc(1rem + env(safe-area-inset-top));padding-bottom:calc(1rem + env(safe-area-inset-bottom));background:var(--background);z-index:2200;transition:transform var(--transition-normal);box-shadow:var(--shadow-2xl);border:none;flex-direction:column;display:flex;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.is-open{transform:translate(0)}.sidebar-logo{justify-content:space-between;align-items:center;gap:.5rem;padding-right:.25rem;display:flex}#sidebar-mobile-close{border-radius:var(--radius-md);border:1px solid color-mix(in srgb, var(--border) 82%, transparent);background:color-mix(in srgb, var(--secondary) 78%, transparent);width:32px;height:32px;color:var(--foreground);flex-shrink:0}#sidebar-mobile-close:hover{background:color-mix(in srgb, var(--secondary) 90%, transparent)}.sidebar-content{flex-direction:column;width:100%;height:100%;padding:0;display:flex}.sidebar-logo,.sidebar-bottom-container,.search-nav-controls .hamburger-menu{display:flex!important}.sidebar-nav.main{flex-direction:column;justify-content:flex-start;gap:.25rem;width:100%;margin:0;padding:0}.sidebar-nav.main .nav-item{border-radius:var(--radius-md);flex-direction:row;flex:0;justify-content:flex-start;align-items:center;gap:.75rem;padding:.75rem 1rem}.sidebar-nav.main .nav-item.active{background:var(--secondary);color:var(--primary)}.sidebar-nav.main .nav-item span{margin:0;font-size:.9rem}#sidebar-overlay.is-visible{z-index:1999;pointer-events:auto;background:#00000080;display:block;position:fixed;inset:0}.search-bar{flex:1 0 100%;order:3;max-width:none}#search-form{flex-wrap:wrap;width:100%}.search-nav-controls{order:1}.quick-nav-buttons{scrollbar-width:none;max-width:min(58vw,260px);overflow-x:auto}.search-nav-controls .nav-btn-account--compact{width:32px;height:32px}.quick-nav-buttons::-webkit-scrollbar{display:none}.search-input-wrapper{flex:1 0 100%;order:2;margin-top:.5rem}#search-form input{width:100%}.content-section{margin-bottom:var(--spacing-xl);max-width:100%;overflow-x:hidden}.section-title{margin-bottom:var(--spacing-md);font-size:1.5rem}.card-grid{gap:var(--spacing-sm);grid-template-columns:repeat(auto-fill,minmax(136px,1fr))}.recommended-artists-grid,#home-recommended-artists.card-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr))}.home-recommended-artists-section{border-radius:.88rem;padding:.9rem}.section-subtitle{margin-top:.35rem;font-size:.82rem}#page-library .search-tabs{flex-wrap:wrap}#page-search .search-tabs{gap:var(--spacing-xs);flex-wrap:wrap}#page-search .search-tab{padding:var(--spacing-xs) var(--spacing-sm);white-space:nowrap;flex:1;min-width:auto;font-size:.85rem}.library-header{flex-direction:column;align-items:flex-start;gap:1rem}.library-actions{width:100%}.library-actions .btn-primary,.library-actions .btn-secondary{flex:1;justify-content:center}.detail-header{gap:var(--spacing-md);padding-bottom:var(--spacing-sm);margin-bottom:var(--spacing-lg);flex-direction:row}.detail-header-image,.detail-header-collage{width:120px;height:120px}.detail-header-info{flex-direction:column;flex:1;justify-content:center;min-width:0;display:flex}.detail-header-info .title{font-size:1.5rem;line-height:1.2}.detail-header-info .title.long-title{font-size:1.35rem}.detail-header-info .title.very-long-title{font-size:1.25rem}#playlist-detail-title{font-size:clamp(1.25rem,6vw,2rem)!important}#playlist-detail-title.long-title{font-size:clamp(1.1rem,5vw,1.5rem)!important}#playlist-detail-title.very-long-title{font-size:clamp(1rem,4vw,1.25rem)!important}.playlist-mobile-menu{display:block}#page-playlist .detail-header-actions{display:none}.detail-header-info .meta{gap:.35rem;margin-top:.25em;font-size:.85rem}.detail-header-actions{margin-top:.5em}.album-hero-actions{gap:.35rem}.album-hero-actions .btn-group-item{min-width:40px;min-height:36px;padding:.5rem .75rem}.album-hero-actions .btn-group-item svg{width:16px;height:16px}.now-playing-bar{gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);height:var(--player-bar-height-mobile);grid-template:"track controls""progress progress"/1fr auto;bottom:max(15px, env(safe-area-inset-bottom,0px))!important}.main-content{padding-bottom:calc(var(--player-bar-height-mobile) + env(safe-area-inset-bottom,0px) + 34px)}.now-playing-bar .track-info{grid-area:track;min-width:0}.track-info{gap:var(--spacing-sm)}.track-info .cover-shell{width:52px;min-width:52px;height:52px;min-height:52px}.track-info .details{flex:1;min-width:0}.track-info .details .title{font-size:.9rem}.track-info .details .artist{font-size:.75rem}.now-playing-bar .volume-controls{grid-area:controls;justify-content:flex-end;gap:.25rem;display:flex}.now-playing-bar .player-controls{grid-area:progress;width:100%}.player-controls .buttons{justify-content:center;gap:var(--spacing-lg);padding:0 15%}.player-controls .buttons button{width:28px;height:28px}.player-controls .buttons .play-pause-btn{width:32px;height:32px}.desktop-only{display:none!important}.volume-controls button:not(.desktop-only){display:flex}#download-notifications{max-width:none;bottom:10px;left:10px;right:10px}.track-menu-btn{opacity:1}.about-links{flex-direction:column}.github-link{justify-content:center;width:100%}.setting-item{align-items:flex-start;gap:var(--spacing-md);flex-direction:column}.setting-item:has(.toggle-switch){flex-direction:row;align-items:center;width:100%}.setting-item:has(.toggle-switch) .info{flex:1;width:auto;min-width:0}.setting-item:has(.toggle-switch) .label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.setting-item:has(.toggle-switch) .description{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.setting-item:has(.toggle-switch) .toggle-switch{margin-left:auto}.setting-item .info{width:100%}.template-input{max-width:none;font-size:.85rem}.track-item{gap:var(--spacing-sm);padding:var(--spacing-sm);grid-template-columns:36px 1fr auto auto}.track-item-info{gap:var(--spacing-sm);min-width:0;overflow:hidden}.track-item-cover{width:36px;height:36px}.track-item-details{min-width:0;overflow:hidden}.track-item-duration{text-align:right;white-space:nowrap}.track-menu-btn svg{width:18px;height:18px}.track-action-btn{padding:.25rem}.queue-track-item{gap:var(--spacing-sm);padding:var(--spacing-sm);grid-template-columns:24px 1fr 40px 32px 32px}.queue-track-item .drag-handle{width:24px}.queue-track-item .drag-handle svg{width:14px;height:14px}.queue-track-item .track-item-cover{width:36px;height:36px}.queue-track-item .queue-like-btn,.queue-track-item .queue-remove-btn{width:32px;height:32px;padding:.5rem}.sidebar-nav .nav-item a{padding:.78rem .72rem}.offline-notification,.update-notification{max-width:none;bottom:10px;left:10px;right:10px}.side-panel{z-index:10003;width:100vw;max-width:100vw;height:100dvh;top:0;bottom:0}.side-panel[data-view=lyrics]{background:color-mix(in srgb, var(--background) calc(var(--lyrics-panel-opacity,0) * 100%), transparent);-webkit-backdrop-filter:none;backdrop-filter:none;border-left:none;position:fixed;overflow:hidden}.side-panel[data-view=lyrics]:before{content:"";background-image:var(--lyrics-mobile-bg-image,none);filter:blur(42px)saturate(1.25)brightness(.45);pointer-events:none;z-index:0;background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:-24px;transform:scale(1.12)}.side-panel[data-view=lyrics]:after{content:"";background:var(--background);pointer-events:none;z-index:0;position:absolute;inset:0}.side-panel[data-view=lyrics] .panel-header,.side-panel[data-view=lyrics] .panel-content{z-index:1;background:0 0;position:relative}.side-panel[data-view=lyrics] am-lyrics{opacity:1;width:100%;min-height:100%;display:block}.side-panel[data-view=lyrics] .panel-header{padding-top:calc(.55rem + env(safe-area-inset-top,0px));padding-right:max(.55rem, env(safe-area-inset-right,0px));padding-left:max(.55rem, env(safe-area-inset-left,0px));border-bottom-color:#ffffff24;flex-wrap:wrap;align-items:flex-start;gap:.35rem}.side-panel[data-view=lyrics] .panel-header h3{flex:none;margin-right:auto}.side-panel[data-view=lyrics] .panel-controls{flex-wrap:wrap;flex:auto;justify-content:flex-end;gap:.25rem;min-width:0;display:flex}.side-panel[data-view=lyrics] .lyrics-timing-controls{gap:.15rem;margin-right:.35rem;padding-right:.35rem}.side-panel[data-view=lyrics] .lyrics-timing-display{min-width:2.9rem;font-size:.82rem}@media (width<=480px){.side-panel[data-view=lyrics] .panel-controls{flex:100%;justify-content:flex-start;row-gap:.25rem}.side-panel[data-view=lyrics] .panel-controls .btn-icon,.side-panel[data-view=lyrics] .lyrics-timing-controls .btn-icon{width:26px;height:26px;padding:.28rem}.side-panel[data-view=lyrics] .lyrics-timing-controls{gap:.08rem;margin-right:.2rem;padding-right:.2rem}.side-panel[data-view=lyrics] .lyrics-timing-display{min-width:2.5rem;font-size:.75rem}}.panel-content{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 1rem)}body:has(#side-panel.active) .now-playing-bar{display:none}body.side-panel-open .now-playing-bar{display:none}.karaoke-line-enhanced{perspective:600px;transform-style:preserve-3d;opacity:1;filter:blur(.5px);cursor:pointer;transition:transform .4s cubic-bezier(.34,1.56,.64,1),opacity .4s,filter .4s}.karaoke-line-enhanced[data-active=true],.karaoke-line-enhanced.karaoke-active-line,.karaoke-line-enhanced.active{opacity:1;filter:none;transform:scale(1.03)translateY(-2px)}.karaoke-line-enhanced[data-prev=true]{opacity:1;filter:blur(.2px)}.karaoke-word-enhanced{transition:transform .35s cubic-bezier(.34,1.56,.64,1),opacity .35s,color .35s;transition-delay:calc(var(--word-index,0) * 35ms);transform-origin:bottom;display:inline-block}.karaoke-char-enhanced{transform-origin:50% 100%;will-change:transform, opacity, filter;display:inline-block}.karaoke-line-enhanced.active .karaoke-word-enhanced,.karaoke-line-enhanced.karaoke-active-line .karaoke-word-enhanced,.karaoke-line-enhanced[data-active=true] .karaoke-word-enhanced{animation:none;animation-delay:calc(var(--word-index,0) * 36ms);filter:drop-shadow(0 0 10px #ffffff38)}.karaoke-line-enhanced.active .karaoke-char-enhanced,.karaoke-line-enhanced.karaoke-active-line .karaoke-char-enhanced,.karaoke-line-enhanced[data-active=true] .karaoke-char-enhanced{animation:none;animation-delay:calc(var(--word-index,0) * 30ms + var(--char-index,0) * 14ms)}@keyframes lyric-word-bubble-drop{0%{opacity:.7;transform:translate(0,0)scale(.98)}30%{opacity:1;transform:translateY(-6px)scale(1.06)}58%{transform:translateY(2px)scale(.99)}80%{transform:translateY(-1.2px)scale(1.02)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes lyric-char-lift{0%{opacity:.72;filter:drop-shadow(0 0 #fff0);transform:translateY(4px)scale(.95)}34%{opacity:1;filter:drop-shadow(0 0 10px #ffffff57);transform:translateY(-5.5px)scale(1.08)}62%{transform:translateY(1.4px)scale(.99)}to{opacity:1;filter:drop-shadow(0 0 7px #fff3);transform:translate(0,0)scale(1)}}.fullscreen-cover-content{flex-direction:column}.csv-import-progress{min-width:0;max-width:none;bottom:145px;left:10px;right:10px}.missing-tracks-modal{width:95%;max-height:90vh;margin:1rem}.missing-tracks-header,.missing-tracks-content,.missing-tracks-actions{padding-left:1.5rem;padding-right:1.5rem}.missing-tracks-header{padding-top:1.5rem;padding-bottom:1rem}.missing-tracks-content{padding-top:1.5rem;padding-bottom:1.5rem}.missing-tracks-actions{padding-top:1rem;padding-bottom:1.5rem}.missing-tracks-list ul{max-height:250px}.missing-tracks-header h3{font-size:1.25rem}.missing-tracks-content p{font-size:.95rem}.missing-tracks-list li{padding:.625rem 1rem;font-size:.9rem}.mobile-only{display:flex!important}}@media (width<=480px){.card-grid{gap:var(--spacing-sm);grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.section-title{font-size:1.25rem}#page-library .search-tabs{gap:var(--spacing-xs);flex-wrap:wrap}#page-library .search-tab{padding:var(--spacing-xs) var(--spacing-sm);white-space:nowrap;flex:1;min-width:auto;font-size:.85rem}#page-search .search-tabs{gap:var(--spacing-xs);flex-wrap:wrap}#page-search .search-tab{padding:var(--spacing-xs) var(--spacing-sm);white-space:nowrap;flex:1;min-width:auto;font-size:.8rem}#page-library .library-header{gap:var(--spacing-sm);flex-wrap:wrap;align-items:center;display:flex}#page-library .library-header h2{width:100%;margin-bottom:var(--spacing-sm)}#page-library .library-actions{width:100%}#page-library .library-actions .btn-primary,#page-library .library-actions .btn-secondary{flex:1;justify-content:center;margin:0!important}.detail-header-info .title{font-size:1.25rem}.detail-header-info .title.long-title{font-size:1.1rem}.detail-header-info .title.very-long-title{font-size:.9rem}.search-tab{padding:var(--spacing-sm) var(--spacing-md);font-size:.9rem}.player-controls .buttons{gap:.25rem}.player-controls .buttons button{width:24px;height:24px}.player-controls .buttons button svg{width:16px;height:16px}.player-controls .buttons .play-pause-btn{width:28px;height:28px}.player-controls .buttons .play-pause-btn svg{width:18px;height:18px}.volume-controls button{min-width:28px;min-height:28px;padding:.25rem}.volume-controls button svg{width:16px;height:16px}.track-item{padding:var(--spacing-xs);grid-template-columns:32px 1fr 40px auto;gap:.375rem}.track-number{width:32px}.track-item-cover{width:32px;height:32px}.track-item-details .title{font-size:.85rem}.track-item-details .artist,.track-item-duration{font-size:.75rem}.track-menu-btn{padding:.25rem}.track-menu-btn svg{width:16px;height:16px}.queue-track-item{grid-template-columns:20px 1fr 36px 32px 32px;gap:.375rem;padding:.5rem}.queue-track-item .drag-handle{width:20px}.queue-track-item .track-item-cover,.queue-track-item .queue-like-btn,.queue-track-item .queue-remove-btn{width:32px;height:32px}[data-track-actions-mode=inline] .track-actions-inline .track-action-btn:not([data-action=play-next]){display:none}.player-actions-row{gap:.25rem}}@media (width<=360px){.player-controls .buttons{justify-content:space-between;width:100%}#shuffle-btn,#repeat-btn{display:none}}@media (display-mode:window-controls-overlay) and (width>=1024px){.app-container{margin-top:env(titlebar-area-height,0)}.main-header{-webkit-app-region:drag}.main-header *{-webkit-app-region:no-drag}.sidebar{padding-top:max(1.5rem, env(titlebar-area-height,0))}}@media (width<=768px){.app-container{margin-top:0}}@media (display-mode:standalone) and (width<=768px){.sidebar{visibility:visible!important;display:flex!important}.sidebar-nav.main{display:flex!important}.search-bar{visibility:visible!important;display:flex!important}#search-form{display:grid!important}}@media (hover:hover){.card.compact .card-play-btn{opacity:0}.card.compact:hover .card-play-btn{opacity:1}}@media (hover:none){.track-menu-btn,.track-actions-inline,.queue-track-item .queue-remove-btn{opacity:1}.card.compact .card-like-btn{display:none!important}}@media (hover:none) and (pointer:coarse){.main-content{padding:var(--spacing-sm);padding-top:var(--spacing-sm);padding-bottom:calc(var(--player-bar-height-mobile) + env(safe-area-inset-bottom,0px) + 34px);grid-area:main}.progress-bar:not(.waveform-loaded,#progress-bar,#fs-progress-bar),.volume-bar{height:8px}.progress-bar:not(#progress-bar,#fs-progress-bar) .progress-fill:after,.volume-bar .volume-fill:after{content:"";background-color:var(--highlight);border-radius:var(--radius-full);width:16px;height:16px;position:absolute;top:50%;right:-8px;transform:translateY(-50%);box-shadow:0 2px 6px #0000004d}button{min-width:36px;min-height:36px}.track-item{grid-template-columns:32px 1fr 32px auto}.player-controls .buttons button{min-width:36px;min-height:36px}.card:hover{transform:none!important}.card-like-btn{opacity:1!important;top:-.25em!important;right:-.25em!important;transform:none!important}.card-play-btn{opacity:1!important;bottom:-.25em!important;right:-.25em!important;transform:none!important}}body:has(#fullscreen-cover-overlay:not([style*="display: none"])) .now-playing-bar{width:96%!important;left:2%!important}body:has(#fullscreen-cover-overlay:not([style*="display: none"])).side-panel-open .now-playing-bar{width:96%!important;left:2%!important}#progress-bar,#fs-progress-bar,.now-playing-bar #progress-bar,.fullscreen-progress-container #fs-progress-bar{--played-wave-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 72 16' preserveAspectRatio='none'%3E%3Cpath d='M0 8 C 6 2 12 2 18 8 S 30 14 36 8 S 48 2 54 8 S 66 14 72 8' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--rail-color:#ffffff80;background:var(--background);position:relative;height:14px!important;box-shadow:none!important;background-color:#0000!important;background-image:none!important;background-position:0,100%,50%!important;background-repeat:no-repeat!important;background-size:4px 4px,4px 4px,calc(100% - 8px) 4px!important;background-attachment:scroll!important;background-origin:padding-box!important;background-clip:border-box!important;border-radius:999px!important;overflow:hidden!important;-webkit-mask-image:none!important;mask-image:none!important}#progress-bar,.now-playing-bar #progress-bar{--rail-color:color-mix(in srgb, var(--muted-foreground) 76%, transparent)}#fs-progress-bar,.fullscreen-progress-container #fs-progress-bar{--rail-color:#ffffff94}#progress-fill,#fs-progress-fill,#progress-bar .progress-fill,#fs-progress-bar .progress-fill{z-index:2;transition:width .2s linear,filter .18s;position:relative;border-radius:inherit!important;background:0 0!important;height:100%!important;-webkit-mask-image:none!important;mask-image:none!important}#progress-fill:before,#fs-progress-fill:before,#progress-bar .progress-fill:before,#fs-progress-bar .progress-fill:before{content:"";pointer-events:none;position:absolute;inset:0;-webkit-mask-image:var(--played-wave-mask)!important;mask-image:var(--played-wave-mask)!important;-webkit-mask-position:0!important;mask-position:0!important;-webkit-mask-size:64px 16px!important;mask-size:64px 16px!important;-webkit-mask-repeat:repeat-x!important;mask-repeat:repeat-x!important}#progress-fill:before,#progress-bar .progress-fill:before{background:var(--background);animation:.9s linear infinite wave-drift-left}#fs-progress-fill:before,#fs-progress-bar .progress-fill:before{background:var(--background);animation:.75s linear infinite wave-drift-left}@keyframes wave-drift-left{0%{-webkit-mask-position:0;mask-position:0}to{-webkit-mask-position:-64px;mask-position:-64px}}#progress-fill:after,#fs-progress-fill:after,#progress-bar .progress-fill:after,#fs-progress-bar .progress-fill:after{pointer-events:none;z-index:4;border-radius:3px;width:7px;height:18px;position:absolute;top:50%;right:-2px;transform:translateY(-50%);content:""!important}#progress-fill:after,#progress-bar .progress-fill:after{background:var(--background);box-shadow:0 0 0 1px color-mix(in srgb, var(--background) 42%, transparent), 0 2px 9px color-mix(in srgb, var(--highlight) 44%, transparent)}#fs-progress-fill:after,#fs-progress-bar .progress-fill:after{background:var(--background);box-shadow:0 0 0 1px #00000047,0 2px 9px #ffffff57}#progress-bar:before,#fs-progress-bar:before,#progress-bar:after,#fs-progress-bar:after{content:none!important}.player-controls .progress-container #progress-bar:before,.player-controls .progress-container #progress-bar:after,.fullscreen-progress-container #fs-progress-bar:before,.fullscreen-progress-container #fs-progress-bar:after{pointer-events:none;z-index:5;border-radius:999px;width:13px;height:13px;position:absolute;top:50%;transform:translateY(-50%);content:""!important}.player-controls .progress-container #progress-bar:before,.fullscreen-progress-container #fs-progress-bar:before{left:2px}.player-controls .progress-container #progress-bar:after,.fullscreen-progress-container #fs-progress-bar:after{right:2px}.player-controls .progress-container #progress-bar:before,.player-controls .progress-container #progress-bar:after{background:color-mix(in srgb, var(--highlight) 82%, white 18%)}.fullscreen-progress-container #fs-progress-bar:before,.fullscreen-progress-container #fs-progress-bar:after{background:#fff}@media (width<=768px){#progress-bar,#fs-progress-bar,.now-playing-bar #progress-bar,.fullscreen-progress-container #fs-progress-bar{height:12px!important}#progress-fill:after,#fs-progress-fill:after,#progress-bar .progress-fill:after,#fs-progress-bar .progress-fill:after{width:6px;height:16px}.player-controls .progress-container #progress-bar:before,.player-controls .progress-container #progress-bar:after,.fullscreen-progress-container #fs-progress-bar:before,.fullscreen-progress-container #fs-progress-bar:after{width:11px;height:11px}}@media (prefers-reduced-motion:reduce){#progress-fill,#fs-progress-fill,#progress-bar .progress-fill,#fs-progress-bar .progress-fill{transition:none!important}#fs-progress-fill:before,#fs-progress-bar .progress-fill:before,#progress-fill:before,#progress-bar .progress-fill:before{animation:none!important;-webkit-mask-position:0!important;mask-position:0!important}}@media (width<=768px){.now-playing-bar{left:2%;width:96%!important}}#custom-tooltip{background:var(--card);color:var(--card-foreground);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow-lg);pointer-events:none;z-index:10000;opacity:0;white-space:nowrap;text-overflow:ellipsis;will-change:transform, opacity;max-width:400px;padding:.5rem .75rem;font-size:.85rem;transition:opacity .1s;position:fixed;overflow:hidden}.genius-annotation-modal{z-index:10002;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0009;justify-content:center;align-items:center;animation:.2s fade-in;display:flex;position:fixed;inset:0}.genius-annotation-modal .genius-header{border-bottom:2px solid #ffff64;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:.5rem;display:flex}.genius-annotation-modal .genius-line{color:#ffff64;margin-right:1rem;font-style:italic;font-weight:600}.genius-annotation-modal .close-genius{color:var(--foreground);cursor:pointer;background:0 0;border:none;font-size:1.5rem;line-height:1}.genius-modal-content{background:var(--card);border-radius:var(--radius);width:90%;max-width:500px;max-height:80vh;box-shadow:var(--shadow-xl);border:1px solid var(--border);flex-direction:column;padding:1.5rem;display:flex}.genius-annotation-modal .genius-body{overflow-y:auto}.annotation-item{margin-bottom:1.5rem}.annotation-fragment{color:var(--muted-foreground);margin-bottom:.5rem;font-size:.8rem}.annotation-text{line-height:1.6}.active-genius svg path:first-child{fill:#ffff64}.genius-annotated{cursor:pointer;border-radius:var(--radius-sm);background-color:#ffff641a;transition:background-color .2s}.genius-annotated:hover{background-color:#ffff6433}.genius-multi-start{border-bottom-right-radius:0;border-bottom-left-radius:0}.genius-multi-mid{border-radius:0}.genius-multi-end{border-top-left-radius:0;border-top-right-radius:0}@media (width>=769px){body.sidebar-collapsed .app-container{grid-template-columns:86px 1fr}body.sidebar-collapsed .sidebar-logo span,body.sidebar-collapsed .sidebar-nav span{display:none}body.sidebar-collapsed .sidebar-logo{flex-direction:column;justify-content:center;gap:10px}body.sidebar-collapsed .sidebar-nav .nav-item a{justify-content:center;padding:.75rem 0}body.sidebar-collapsed .nav-btn-account{justify-content:center;gap:0;padding:.55rem 0}body.sidebar-collapsed .nav-account-meta,body.sidebar-collapsed .nav-account-chevron{display:none}body.sidebar-collapsed .sidebar-account-dropdown{bottom:0;left:calc(100% + .5rem);right:auto}body.sidebar-collapsed .pinned-items-header,body.sidebar-collapsed #pinned-items-list .nav-item a .pinned-item-name{display:none}body.sidebar-collapsed #pinned-items-list .nav-item a{justify-content:center}body.sidebar-collapsed .now-playing-bar{left:calc(86px + 2%);width:calc(96% - 86px)!important}body.sidebar-collapsed #sidebar-toggle{margin-left:0!important}}#page-track .detail-header{text-align:center;flex-direction:column;align-items:center;gap:2rem;padding:4rem 2rem}#page-track .detail-header-image{width:350px;height:350px;box-shadow:0 30px 60px #00000080}#page-track .detail-header-info{align-items:center;width:100%}#page-track .detail-header-info .title{text-align:center;justify-content:center;margin-bottom:.5rem;font-size:3.5rem}#page-track .detail-header-info .meta{opacity:.8;justify-content:center;font-size:1.1rem}#page-track .detail-header-actions{justify-content:center;margin-top:2rem}#page-track .section-title{text-align:center}@media (width<=768px){#page-track .detail-header{padding:2rem 1rem}#page-track .detail-header-image{width:200px;height:200px}#page-track .detail-header-info .title{font-size:1.75rem}}.tracker-modal .track-item.loading{opacity:.7;pointer-events:none}.tracker-modal .track-item.loading .track-number{color:var(--highlight)}@media (width<=768px){.tracker-modal .modal-content{height:90vh!important;max-height:90vh!important;padding:1rem!important}.tracker-modal .detail-header{text-align:center;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:.5rem!important}.tracker-modal .detail-header-info .title{margin-bottom:.25rem;font-size:1.25rem!important}.tracker-modal .detail-header-info .meta{max-height:60px;font-size:.85rem;display:block;overflow-y:auto}.tracker-modal .detail-header-actions .btn-secondary{border-radius:2rem!important;width:auto!important;height:auto!important;padding:.5rem 1.5rem!important}#tracker-filters{justify-content:center;padding:0 0 .5rem!important}.tracker-modal .detail-header{text-align:center;flex-direction:column;align-items:center;gap:.75rem}.tracker-modal .detail-header-image{width:100px!important;height:100px!important}.tracker-modal .detail-header-info .title{font-size:1.5rem!important}.tracker-modal .detail-header-info .meta{max-height:80px;display:block;overflow-y:auto}}body:has(#side-panel.active) .fullscreen-main-view{padding-right:var(--active-side-panel-width,600px);transition:flex .3s,padding-right .3s,margin-right .3s}body.side-panel-open .fullscreen-main-view{padding-right:var(--active-side-panel-width,600px);transition:flex .3s,padding-right .3s,margin-right .3s}body:has(#side-panel.active) .fullscreen-lyrics-toggle{right:calc(var(--active-side-panel-width,600px) + 4.5rem)}body.side-panel-open .fullscreen-lyrics-toggle{right:calc(var(--active-side-panel-width,600px) + 4.5rem)}body.side-panel-open #fs-video-btn{right:calc(var(--active-side-panel-width,600px) + 4.5rem + 44px)}body:has(#side-panel.active) #fs-video-btn{right:calc(var(--active-side-panel-width,600px) + 4.5rem + 44px)}body:has(#side-panel.active) #close-fullscreen-cover-btn{right:calc(var(--active-side-panel-width,600px) + 1rem)}body.side-panel-open #close-fullscreen-cover-btn{right:calc(var(--active-side-panel-width,600px) + 1rem)}@media (width>=1201px) and (hover:hover) and (pointer:fine){body.side-panel-open .main-content{margin-right:var(--active-side-panel-width,0);transition:margin-right .3s}body:has(#side-panel.active) .main-content{margin-right:var(--active-side-panel-width,0);transition:margin-right .3s}body.side-panel-open .now-playing-bar{width:calc(96% - var(--active-side-panel-width,0px))!important}body:has(#side-panel.active) .now-playing-bar{width:calc(96% - var(--active-side-panel-width,0px))!important}body.side-panel-main-mobile .sidebar{display:none}body.side-panel-main-mobile .app-container{grid-template-columns:1fr}body.side-panel-main-mobile .main-content{padding:var(--spacing-sm);padding-bottom:calc(var(--player-bar-height-mobile) + env(safe-area-inset-bottom,0px) + 34px);margin-right:var(--active-side-panel-width,0)}body.side-panel-main-mobile .main-header{top:max(.35rem, env(safe-area-inset-top));margin-bottom:var(--spacing-sm);border-radius:.88rem;flex-wrap:wrap;gap:.45rem;padding:.4rem}body.side-panel-main-mobile #search-form{flex-wrap:wrap}body.side-panel-main-mobile .search-nav-controls{order:1;width:100%}body.side-panel-main-mobile .search-input-wrapper{flex:1 0 100%;order:2;margin-top:.45rem}body.side-panel-main-mobile .quick-nav-buttons{max-width:min(100vw - 180px,100%)}body.side-panel-main-mobile .now-playing-bar{gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);height:var(--player-bar-height-mobile);grid-template:"track controls""progress progress"/1fr auto;bottom:max(15px, env(safe-area-inset-bottom,0px))!important;width:calc(96% - var(--active-side-panel-width,0px))!important;left:2%!important}body.side-panel-main-mobile .now-playing-bar .track-info{grid-area:track;min-width:0}body.side-panel-main-mobile .now-playing-bar .volume-controls{grid-area:controls;justify-content:flex-end;gap:.25rem;display:flex}body.side-panel-main-mobile .now-playing-bar .player-controls{grid-area:progress;width:100%}body.side-panel-main-mobile .track-info{gap:var(--spacing-sm)}body.side-panel-main-mobile .track-info .cover-shell{width:52px;min-width:52px;height:52px;min-height:52px}body.side-panel-main-mobile .track-info .details{flex:1;min-width:0}body.side-panel-main-mobile .track-info .details .title{font-size:.9rem}body.side-panel-main-mobile .track-info .details .artist{font-size:.75rem}body.side-panel-main-mobile .player-controls .buttons{justify-content:center;gap:var(--spacing-lg);padding:0 15%}body.side-panel-main-mobile .player-controls .buttons button{width:28px;height:28px}body.side-panel-main-mobile .player-controls .buttons .play-pause-btn{width:32px;height:32px}body.side-panel-main-mobile .desktop-only{display:none!important}body.side-panel-main-mobile .volume-controls button:not(.desktop-only){display:flex}}@media (width<=1200px){body:has(#side-panel.active) .fullscreen-main-view{padding-right:min(var(--active-side-panel-width,50vw), 50vw)}body.side-panel-open .fullscreen-main-view{padding-right:min(var(--active-side-panel-width,50vw), 50vw)}body:has(#side-panel.active) .fullscreen-lyrics-toggle{right:calc(min(var(--active-side-panel-width,50vw), 50vw) + 4.5rem)}body.side-panel-open .fullscreen-lyrics-toggle{right:calc(min(var(--active-side-panel-width,50vw), 50vw) + 4.5rem)}body.side-panel-open #fs-video-btn{right:calc(min(var(--active-side-panel-width,50vw), 50vw) + 4.5rem + 44px)}body:has(#side-panel.active) #fs-video-btn{right:calc(min(var(--active-side-panel-width,50vw), 50vw) + 4.5rem + 44px)}body:has(#side-panel.active) #close-fullscreen-cover-btn{right:calc(min(var(--active-side-panel-width,50vw), 50vw) + 1rem)}body.side-panel-open #close-fullscreen-cover-btn{right:calc(min(var(--active-side-panel-width,50vw), 50vw) + 1rem)}}@media (width<=768px){body:has(#side-panel.active) .fullscreen-main-view{padding-right:0}body.side-panel-open .fullscreen-main-view{padding-right:0}body:has(#side-panel.active) .fullscreen-lyrics-toggle{display:none}body:has(#side-panel.active) #close-fullscreen-cover-btn{display:none}body.side-panel-open .fullscreen-lyrics-toggle,body.side-panel-open #close-fullscreen-cover-btn{display:none}}@media (width<=480px){.player-controls .buttons{gap:1.25rem}.player-controls .buttons button svg{width:25px;height:25px}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full);border:2px solid var(--background)}::-webkit-scrollbar-thumb:hover{background:var(--input)}::selection{background:var(--primary);color:var(--primary-foreground)}input,select,textarea{transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background-color var(--transition-fast)}input:focus,select:focus,textarea:focus{border-color:var(--ring);box-shadow:0 0 0 3px rgb(var(--highlight-rgb), .2);outline:none}.modal.active .modal-content{animation:pop-in var(--transition-normal) var(--ease-out-back);box-shadow:var(--shadow-2xl);border:1px solid var(--border)}.nav-item a{position:relative;overflow:hidden}.nav-item a:active{transform:scale(.97)}.equalizer-container{margin-top:var(--spacing-md);padding:var(--spacing-lg);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:inset 0 1px 1px #ffffff0d}.equalizer-header{margin-bottom:var(--spacing-lg)}.equalizer-preset-row{align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.equalizer-preset-row label{color:var(--muted-foreground);font-size:.9rem;font-weight:500}.equalizer-preset-row select{background:var(--input);border:1px solid var(--border);border-radius:var(--radius);min-width:150px;max-width:250px;color:var(--foreground);cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);flex:1;padding:.5rem 1rem;font-size:.9rem}.equalizer-preset-row select:hover{border-color:var(--primary)}.equalizer-preset-row select:focus{border-color:var(--ring);box-shadow:0 0 0 3px rgb(var(--highlight-rgb), .2);outline:none}.eq-band-count-input{background:var(--input);border:1px solid var(--border);border-radius:var(--radius);width:60px;color:var(--foreground);text-align:center;cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:.5rem;font-size:.9rem}.eq-band-count-input:hover{border-color:var(--primary)}.eq-band-count-input:focus{border-color:var(--ring);box-shadow:0 0 0 3px rgb(var(--highlight-rgb), .2);outline:none}.eq-band-count-input::-webkit-outer-spin-button{appearance:none;margin:0}.eq-band-count-input::-webkit-inner-spin-button{appearance:none;margin:0}.eq-band-count-input[type=number]{appearance:textfield}#equalizer-reset-btn{border-radius:var(--radius);background:var(--input);border:1px solid var(--border);color:var(--muted-foreground);transition:all var(--transition-fast);justify-content:center;align-items:center;padding:.5rem;display:flex}#equalizer-reset-btn:hover{background:var(--card);border-color:var(--primary);color:var(--foreground)}#equalizer-reset-btn svg{transition:transform .3s}#equalizer-reset-btn:hover svg{transform:rotate(-45deg)}.custom-preset-controls{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border)}.custom-preset-input-row{gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);display:flex}#custom-preset-name{background:var(--input);border:1px solid var(--border);border-radius:var(--radius);color:var(--foreground);transition:border-color var(--transition-fast);flex:1;padding:.5rem .75rem;font-size:.9rem}#custom-preset-name:focus{border-color:var(--ring);box-shadow:0 0 0 3px rgb(var(--highlight-rgb), .2);outline:none}#save-custom-preset-btn{align-items:center;gap:var(--spacing-xs);white-space:nowrap;padding:.5rem 1rem;display:flex}#save-custom-preset-btn svg{flex-shrink:0}.delete-preset-btn{align-items:center;gap:var(--spacing-xs);color:var(--destructive);border-color:var(--destructive);opacity:.8;transition:opacity var(--transition-fast);padding:.5rem 1rem;font-size:.85rem;display:flex}.card-like-btn,.card-menu-btn{opacity:0;transition:opacity var(--transition-normal)}.section-head{justify-content:space-between;align-items:flex-end;gap:.75rem;margin-bottom:1rem;display:flex}.section-head-compact{margin-bottom:1rem}.section-head-discovery{margin-bottom:1.15rem}.section-eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--muted-foreground);margin:0 0 .35rem;font-size:.75rem;font-weight:700}.section-subtitle{color:color-mix(in srgb, var(--muted-foreground) 86%, transparent);margin:.55rem 0 0;font-size:.9rem}.home-recommended-artists-section{border:1px solid color-mix(in srgb, var(--border) 78%, transparent);background:var(--card);border-radius:1rem;padding:1.25rem;position:relative;box-shadow:0 8px 24px #00000029}#home-recommended-albums-section{margin-bottom:var(--spacing-2xl);border:1px solid color-mix(in srgb, var(--border) 76%, transparent);background:var(--card);border-radius:1rem;flex-direction:column;gap:.42rem;padding:.72rem .72rem .56rem;display:flex;position:relative;box-shadow:0 8px 24px #00000024}#home-recommended-albums-section #home-recommended-albums{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.56rem}#home-recommended-albums-section>div:first-child{order:1;margin-bottom:.28rem!important}#home-recommended-albums-section #refresh-albums-btn{order:2;align-self:flex-start;line-height:1.2;margin-top:0!important;margin-bottom:0!important;padding:0!important}#home-recommended-albums-section #home-recommended-albums{order:3;margin-bottom:0!important}@media (width>=1024px){#home-recommended-albums-section>div:first-child{margin-bottom:.24rem!important}}.home-friends-activity-section{border:1px solid color-mix(in srgb, var(--border) 76%, transparent);background:var(--card);border-radius:1rem;padding:1rem;position:relative;box-shadow:0 8px 24px #00000024}.home-friends-activity-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.72rem;display:grid}.home-friend-activity-card{border:1px solid color-mix(in srgb, var(--border) 78%, transparent);background:var(--card);cursor:pointer;border-radius:.9rem;padding:.78rem;transition:transform .2s,border-color .2s,box-shadow .2s}.home-friend-activity-card:hover{border-color:color-mix(in srgb, var(--highlight) 38%, var(--border));transform:translateY(-3px);box-shadow:0 14px 28px #00000038}.home-friend-activity-head{grid-template-columns:42px minmax(0,1fr) auto;align-items:start;gap:.55rem;margin-bottom:.62rem;display:grid}.home-friend-activity-identity{min-width:0}.home-friend-activity-avatar{border:1px solid color-mix(in srgb, var(--border) 76%, transparent);border-radius:999px;width:42px;height:42px;overflow:hidden}.home-friend-activity-avatar img{object-fit:cover;width:100%;height:100%;display:block}.home-friend-activity-identity h3{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.96rem;line-height:1.2;overflow:hidden}.home-friend-activity-identity p{color:color-mix(in srgb, var(--muted-foreground) 92%, transparent);white-space:nowrap;text-overflow:ellipsis;margin:.12rem 0 0;font-size:.78rem;overflow:hidden}.home-friend-activity-badge{letter-spacing:.08em;text-transform:uppercase;border:1px solid #0000;border-radius:999px;flex-shrink:0;place-self:start end;padding:.26rem .48rem;font-size:.68rem;font-weight:700}.home-friend-activity-badge.active{color:#d7ffe6;background:#22c55e2e;border-color:#22c55e6b}.home-friend-activity-badge.inactive{color:color-mix(in srgb, var(--muted-foreground) 96%, transparent);background:color-mix(in srgb, var(--secondary) 60%, transparent);border-color:color-mix(in srgb, var(--border) 80%, transparent)}.home-friend-activity-body{grid-template-columns:76px minmax(0,1fr);align-items:start;gap:.62rem;display:grid}.home-friend-activity-cover{border:1px solid color-mix(in srgb, var(--border) 74%, transparent);background:color-mix(in srgb, var(--secondary) 72%, transparent);border-radius:.7rem;width:76px;height:76px;overflow:hidden}.home-friend-activity-cover img{object-fit:cover;width:100%;height:100%;display:block}.home-friend-activity-track{color:color-mix(in srgb, var(--foreground) 94%, transparent);line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.86rem;line-height:1.35;display:-webkit-box;overflow:hidden}.home-friend-activity-last-seen{color:color-mix(in srgb, var(--muted-foreground) 92%, transparent);margin:.22rem 0 0;font-size:.76rem}.home-friend-activity-actions{flex-wrap:wrap;gap:.44rem;margin-top:.48rem;display:flex}.home-friend-activity-actions .btn-secondary,.home-friend-activity-actions .btn-primary{min-height:28px;padding:.28rem .5rem;font-size:.76rem;line-height:1}@media (width<=900px){.home-friends-activity-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media (width<=640px){.home-friends-activity-section{padding:.88rem}.home-friend-activity-body{grid-template-columns:62px minmax(0,1fr);gap:.52rem}.home-friend-activity-cover{width:62px;height:62px}}@media (width<=768px){#home-recommended-albums-section{margin-left:calc(-1 * var(--carousel-bleed));margin-right:calc(-1 * var(--carousel-bleed));padding-left:var(--carousel-bleed);border-radius:0;padding-right:0}#home-recommended-albums-section #home-recommended-albums{grid-template-columns:repeat(auto-fill,minmax(136px,1fr));margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important}}@media (width>=1024px){#home-recommended-albums-section #home-recommended-albums,html.carousel-mode #home-recommended-albums,.carousel-mode #home-recommended-albums{-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;padding:.1rem 0 .22rem;scroll-padding-left:.15rem;scroll-padding-right:0;flex-wrap:nowrap!important;gap:.7rem!important;margin:0!important;display:flex!important;overflow:auto visible!important}#home-recommended-albums-section #home-recommended-albums::-webkit-scrollbar{display:none}#home-recommended-albums-section #home-recommended-albums>.card{flex:0 0 clamp(180px,20vw,255px);min-width:clamp(180px,20vw,255px);max-width:clamp(180px,20vw,255px)}}#home-recommended-albums.home-panel-carousel>.card{opacity:var(--slide-card-opacity,1);transform:translateY(var(--slide-card-raise,0)) scale(var(--slide-card-scale,1));transition:opacity .18s,transform .22s}#home-recommended-albums.home-panel-carousel>.card:hover{opacity:1;transform:translateY(0)scale(1)}.home-discovery-hub{background:var(--primary);box-shadow:none;border-radius:0;padding:1.2rem 0;position:relative;overflow:visible}#page-home,#home-content{max-width:100%;overflow-x:clip}.home-discovery-content{gap:1rem;display:grid}.home-discovery-content.home-billboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.home-discovery-module{background:0 0;border:none;border-radius:0;padding:.9rem 0}.home-discovery-module-head{justify-content:space-between;align-items:center;margin-bottom:.65rem;padding:0 1.2rem;display:flex}.home-discovery-notice{border:1px dashed color-mix(in srgb, var(--border) 60%, transparent);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--secondary) 55%, transparent);flex-direction:column;gap:.45rem;margin:.3rem 1.2rem .4rem;padding:1rem 1.15rem;display:flex}.home-discovery-notice[hidden]{display:none}.home-discovery-notice .discovery-notice-title{letter-spacing:-.01em;color:var(--foreground);font-size:.9rem;font-weight:700}.home-discovery-notice .discovery-notice-text{color:var(--muted-foreground);font-size:.82rem;line-height:1.55}.home-discovery-notice .discovery-notice-text code{font-family:var(--font-mono,ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);color:var(--primary);background:color-mix(in srgb, var(--primary) 10%, transparent);border-radius:var(--radius-sm);padding:.1rem .35rem;font-size:.76rem}.home-discovery-notice .discovery-notice-link{color:var(--primary);align-self:flex-start;font-size:.82rem;font-weight:600;text-decoration:none}.home-discovery-notice .discovery-notice-link:hover{text-decoration:underline}#home-hot-albums,#home-new-albums,#home-featured-playlists,#home-from-editors{scroll-behavior:smooth;scroll-snap-type:x proximity;overscroll-behavior-x:contain;touch-action:pan-x;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;flex-wrap:nowrap;gap:.72rem;margin-left:-1.2rem;margin-right:-1.2rem;padding:.08rem 1.2rem .22rem;scroll-padding-left:1.2rem;scroll-padding-right:1.2rem;display:flex;overflow:auto visible}#home-hot-albums::-webkit-scrollbar{display:none}#home-new-albums::-webkit-scrollbar{display:none}#home-featured-playlists::-webkit-scrollbar{display:none}#home-from-editors::-webkit-scrollbar{display:none}#home-hot-albums>.card,#home-new-albums>.card,#home-featured-playlists>.card,#home-from-editors>.card{scroll-snap-align:start;flex:0 0 clamp(172px,38vw,228px);min-width:clamp(172px,38vw,228px);max-width:clamp(172px,38vw,228px)}#home-billboard-hot100,#home-billboard-global200,#home-billboard-200,#home-billboard-artist100,#home-billboard-regional,#home-billboard-uk,#home-billboard-japan,#home-billboard-india,#home-billboard-hot100-empty,#home-billboard-global200-empty,#home-billboard-200-empty,#home-billboard-artist100-empty,#home-billboard-regional-empty,#home-billboard-uk-empty,#home-billboard-japan-empty,#home-billboard-india-empty{flex-direction:column;gap:.3rem;width:100%;display:flex}.billboard-track-row{border:1px solid color-mix(in srgb, var(--border) 76%, transparent);background:color-mix(in srgb, var(--card) 86%, transparent);cursor:pointer;border-radius:.75rem;grid-template-columns:42px 52px minmax(0,1fr) auto;align-items:center;gap:.62rem;width:100%;padding:.56rem .72rem;transition:border-color .2s,transform .2s,background .2s;display:grid}.billboard-track-row:hover{border-color:color-mix(in srgb, var(--primary) 42%, var(--border));background:color-mix(in srgb, var(--card) 92%, transparent);transform:translateY(-1px)}.billboard-rank{color:color-mix(in srgb, var(--muted-foreground) 92%, transparent);text-align:center;font-size:.95rem;font-weight:700}.billboard-rank.rank-gold{color:#f5c542}.billboard-rank.rank-silver{color:#c2c9d1}.billboard-rank.rank-bronze{color:#cd7f32}.billboard-track-row img{object-fit:cover;border-radius:.56rem;width:52px;height:52px}.billboard-track-meta{min-width:0}.billboard-track-meta h4{text-overflow:ellipsis;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:1rem;line-height:1.22;display:-webkit-box;overflow:hidden}.billboard-track-meta p{color:color-mix(in srgb, var(--muted-foreground) 92%, transparent);text-overflow:ellipsis;white-space:nowrap;margin:.12rem 0 0;font-size:.84rem;overflow:hidden}.billboard-track-meta small{color:color-mix(in srgb, var(--muted-foreground) 85%, transparent);margin-top:.1rem;font-size:.72rem;display:block}.billboard-track-row>small{color:color-mix(in srgb, var(--muted-foreground) 90%, transparent);white-space:nowrap;margin-left:.6rem;font-size:.74rem}.billboard-meta-tags{flex-wrap:wrap;align-items:center;gap:.28rem;margin-top:.18rem;display:flex}.billboard-badge{border:1px solid color-mix(in srgb, var(--primary) 35%, var(--border));background:var(--primary);color:color-mix(in srgb, var(--foreground) 98%, transparent);letter-spacing:.07em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;padding:.08rem .36rem;font-size:.62rem;font-weight:700;display:inline-flex}.billboard-badge-sync{background:var(--background);color:#e6fff1f5;border-color:#22c55e94}.billboard-album-card .card-info{gap:.2rem;display:grid}@media (width<=720px){.home-discovery-content.home-billboard-grid{grid-template-columns:1fr}.billboard-track-row{grid-template-columns:34px 44px minmax(0,1fr);gap:.5rem;padding:.46rem .58rem}.billboard-track-row img{width:44px;height:44px}.billboard-track-row>small{grid-column:3;margin:.08rem 0 0}}.home-discovery-module-head h3{letter-spacing:.02em;text-transform:uppercase;color:color-mix(in srgb, var(--muted-foreground) 92%, transparent);margin:0;font-size:.92rem}.home-billboard-grid .home-discovery-module-head h3{font-family:"Avenir Next Condensed", "DIN Condensed", "Trebuchet MS", var(--font-family,sans-serif);letter-spacing:.08em;text-transform:uppercase;color:#0d1119;background:var(--background);border-radius:.36rem;padding:.2rem .52rem .16rem;font-size:clamp(1.06rem,.95rem + .65vw,1.52rem);font-weight:800;line-height:1.05;display:inline-block;position:relative;box-shadow:inset 0 1px #ffffff3d,0 6px 18px #bd8a2e3d}.home-billboard-grid .home-discovery-module-head h3:after{content:"";background:var(--primary);opacity:.9;border-radius:999px;width:clamp(44px,28%,92px);height:2px;position:absolute;bottom:-.28rem;left:0}@media (width<=1024px){.home-discovery-content.home-billboard-grid{grid-template-columns:1fr;gap:.72rem}.home-billboard-grid .home-discovery-module{padding:.62rem 0}.home-billboard-grid .home-discovery-module-head{margin-bottom:.42rem;padding:0 .72rem}}@media (width<=640px){.home-billboard-grid .home-discovery-module-head h3{letter-spacing:.06em;padding:.16rem .42rem .14rem;font-size:clamp(.98rem,.82rem + .7vw,1.2rem)}.home-billboard-grid .home-discovery-module-head h3:after{width:clamp(36px,24%,66px);bottom:-.2rem}}.home-spotlight-hero{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:stretch;gap:.95rem;display:grid}.spotlight-lead{cursor:pointer;border:1px solid color-mix(in srgb, var(--border) 70%, transparent);background:var(--card);border-radius:1rem;min-height:clamp(280px,40vw,420px);display:block;position:relative;overflow:hidden;box-shadow:0 18px 36px #00000047}.spotlight-lead-media{background:color-mix(in srgb, var(--secondary) 72%, transparent);position:absolute;inset:0;overflow:hidden}.spotlight-lead-media:after{content:"";pointer-events:none;background:0 0;position:absolute;inset:0}.spotlight-lead-media img{object-fit:cover;width:100%;height:100%;transition:transform .4s var(--ease-out);display:block;transform:scale(1.03)}.spotlight-lead-content{z-index:1;flex-direction:column;justify-content:flex-end;gap:.5rem;min-width:0;max-width:min(78%,480px);height:100%;padding:1.15rem 1.2rem;display:flex;position:relative}.spotlight-kicker{letter-spacing:.18em;text-transform:uppercase;color:#ffffffbd;margin:0;font-size:.74rem;font-weight:700}.spotlight-lead-content h3{letter-spacing:-.01em;color:#fff;text-wrap:balance;margin:0;font-size:clamp(1.45rem,1.2rem + 1vw,2.05rem);line-height:1.14}.spotlight-lead-content p{color:#ffffffc2;max-width:34ch;margin:0;font-size:1rem}.spotlight-subgrid{grid-auto-rows:minmax(0,1fr);align-content:stretch;gap:.7rem;display:grid}.spotlight-chip{cursor:pointer;border:1px solid color-mix(in srgb, var(--border) 78%, transparent);background:var(--card);border-radius:.86rem;grid-template-columns:78px minmax(0,1fr);align-items:center;gap:.72rem;min-height:84px;padding:.55rem;display:grid;box-shadow:inset 0 1px #ffffff05}.spotlight-chip img{object-fit:cover;border-radius:.72rem;width:78px;height:78px;box-shadow:0 8px 18px #00000047}.spotlight-chip h4{color:#fff;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:1.02rem;line-height:1.2;display:-webkit-box;overflow:hidden}.spotlight-chip p{color:#ffffffa8;text-overflow:ellipsis;white-space:nowrap;margin:.24rem 0 0;font-size:.92rem;overflow:hidden}.spotlight-lead:hover .spotlight-lead-media img{transform:scale(1.08)}.spotlight-chip:hover{border-color:color-mix(in srgb, var(--highlight) 44%, var(--border));transform:translateY(-2px)}@media (width<=1220px){.spotlight-lead{min-height:clamp(250px,33vw,340px)}.spotlight-lead-content{max-width:min(86%,420px)}.spotlight-chip{grid-template-columns:66px minmax(0,1fr);min-height:74px}.spotlight-chip img{width:66px;height:66px}}@media (width<=980px){.home-spotlight-hero{grid-template-columns:1fr;gap:.78rem}.spotlight-lead{min-height:250px}.spotlight-lead-content{max-width:100%;padding:1rem}.spotlight-lead-content h3{font-size:clamp(1.24rem,4.9vw,1.56rem)}.spotlight-subgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.spotlight-chip{min-height:70px}}@media (width<=640px){.spotlight-subgrid{grid-template-columns:1fr}.spotlight-chip{grid-template-columns:62px minmax(0,1fr);gap:.62rem;min-height:68px}.spotlight-chip img{width:62px;height:62px}}.recommended-artists-grid,#home-recommended-artists.card-grid{grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:.95rem}.card.artist-circular{background:var(--card);border:1px solid color-mix(in srgb, var(--border) 84%, transparent);text-align:center;border-radius:1rem;padding:.7rem;position:relative;overflow:hidden;box-shadow:0 8px 18px #00000029}.card.artist-circular:hover{border-color:color-mix(in srgb, var(--primary) 34%, var(--border));transform:translateY(-4px);box-shadow:0 14px 30px #0000003d}.card.artist-circular .card-image-wrapper{aspect-ratio:1;background:color-mix(in srgb, var(--secondary) 72%, transparent);position:relative;overflow:hidden;border-radius:.88rem!important;margin-bottom:.72rem!important}.card.artist-circular .card-image-wrapper:after{content:"";pointer-events:none;background:0 0;position:absolute;inset:0}.card.artist-circular .card-image{object-fit:cover;width:100%;height:100%;transform:scale(1.02);border-radius:.82rem!important}.card.artist-circular .card-info{padding:.15rem .2rem .2rem}.card.artist-circular .card-title{margin:.1rem 0 0;font-size:.9rem;font-weight:650;line-height:1.3}.delete-preset-btn:hover{opacity:1;background:var(--destructive);color:var(--destructive-foreground)}.delete-preset-btn svg{flex-shrink:0}.eq-range-controls{align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.eq-range-controls label{color:var(--muted-foreground);font-size:.9rem;font-weight:500}.eq-range-controls span{color:var(--muted-foreground);font-size:.9rem}.eq-range-input{background:var(--input);border:1px solid var(--border);border-radius:var(--radius);width:60px;color:var(--foreground);text-align:center;transition:border-color var(--transition-fast);padding:.4rem .5rem;font-size:.9rem}.eq-range-input:hover{border-color:var(--primary)}.eq-range-input:focus{border-color:var(--ring);box-shadow:0 0 0 3px rgb(var(--highlight-rgb), .2);outline:none}.eq-range-input::-webkit-outer-spin-button{appearance:none;margin:0}.eq-range-input::-webkit-inner-spin-button{appearance:none;margin:0}.eq-range-input[type=number]{appearance:textfield}#apply-eq-range-btn{padding:.4rem .75rem;font-size:.85rem}#reset-eq-range-btn{margin-left:var(--spacing-xs);padding:.4rem .75rem;font-size:.85rem}.eq-freq-controls{align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.eq-freq-controls label{color:var(--muted-foreground);font-size:.9rem;font-weight:500}.eq-freq-controls span{color:var(--muted-foreground);font-size:.9rem}.eq-freq-input{background:var(--input);border:1px solid var(--border);border-radius:var(--radius);width:70px;color:var(--foreground);text-align:center;transition:border-color var(--transition-fast);padding:.4rem .5rem;font-size:.9rem}.eq-freq-input:hover{border-color:var(--primary)}.eq-freq-input:focus{border-color:var(--ring);box-shadow:0 0 0 3px rgb(var(--highlight-rgb), .2);outline:none}.eq-freq-input::-webkit-outer-spin-button{appearance:none;margin:0}.eq-freq-input::-webkit-inner-spin-button{appearance:none;margin:0}.eq-freq-input[type=number]{appearance:textfield}#apply-eq-freq-btn{padding:.4rem .75rem;font-size:.85rem}#reset-eq-freq-btn{margin-left:var(--spacing-xs);padding:.4rem .75rem;font-size:.85rem}.eq-preamp-controls{align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.eq-preamp-controls label{color:var(--muted-foreground);font-size:.9rem;font-weight:500}#eq-preamp-slider{appearance:none;background:var(--border);cursor:pointer;border-radius:2px;outline:none;flex:1;min-width:120px;max-width:200px;height:4px}#eq-preamp-slider::-webkit-slider-thumb{appearance:none;background:var(--primary);cursor:pointer;width:16px;height:16px;transition:transform var(--transition-fast);border-radius:50%}#eq-preamp-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}#eq-preamp-slider::-moz-range-thumb{background:var(--primary);cursor:pointer;width:16px;height:16px;transition:transform var(--transition-fast);border:none;border-radius:50%}#eq-preamp-slider::-moz-range-thumb:hover{transform:scale(1.2)}#eq-export-btn,#eq-import-btn{white-space:nowrap;gap:var(--spacing-xs);padding:.25rem .5rem;font-size:.75rem}.equalizer-preset-row select optgroup{color:var(--foreground);padding:var(--spacing-xs) 0;font-weight:600}.equalizer-preset-row select optgroup option{padding-left:var(--spacing-sm);font-weight:400}.equalizer-bands-wrapper{padding:var(--spacing-md) 0;position:relative}.equalizer-bands{justify-content:space-between;gap:4px;display:flex;position:relative}.equalizer-bands:before{content:"";background:var(--border);opacity:.5;pointer-events:none;z-index:0;height:1px;position:absolute;top:60px;left:0;right:0}.eq-response-canvas{top:var(--spacing-md);pointer-events:none;z-index:2;width:calc(100% - 8px);height:120px;display:block;position:absolute;left:4px}.eq-band{z-index:1;cursor:ns-resize;-webkit-user-select:none;user-select:none;flex-direction:column;flex:1;align-items:center;gap:8px;min-width:0;display:flex;position:relative}.eq-slider{appearance:none;writing-mode:vertical-lr;cursor:pointer;-webkit-user-select:none;user-select:none;direction:rtl;background:0 0;width:8px;height:120px;position:relative}.eq-slider::-webkit-slider-runnable-track{background:var(--background);border-radius:var(--radius-full);border:1px solid var(--border);width:6px;height:100%}.eq-slider::-moz-range-track{background:var(--background);border-radius:var(--radius-full);border:1px solid var(--border);width:6px;height:100%}.eq-slider::-webkit-slider-thumb{appearance:none;background:var(--background);border-radius:var(--radius-full);cursor:grab;border:2px solid var(--background);width:18px;height:18px;margin-left:-6px;transition:transform .15s,box-shadow .15s;box-shadow:0 2px 8px #0000004d,inset 0 1px 2px #ffffff4d}.eq-slider::-moz-range-thumb{background:var(--background);border-radius:var(--radius-full);cursor:grab;border:2px solid var(--background);width:18px;height:18px;transition:transform .15s,box-shadow .15s;box-shadow:0 2px 8px #0000004d,inset 0 1px 2px #ffffff4d}.eq-slider::-webkit-slider-thumb:hover{box-shadow:0 4px 12px rgb(var(--highlight-rgb), .4), inset 0 1px 2px #ffffff4d;transform:scale(1.15)}.eq-slider::-moz-range-thumb:hover{box-shadow:0 4px 12px rgb(var(--highlight-rgb), .4), inset 0 1px 2px #ffffff4d;transform:scale(1.15)}.eq-slider::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.1)}.eq-slider::-moz-range-thumb:active{cursor:grabbing;transform:scale(1.1)}.eq-slider:focus{outline:none}.eq-slider:focus::-webkit-slider-thumb{box-shadow:0 0 0 4px rgb(var(--highlight-rgb), .3), 0 2px 8px #0000004d}.eq-slider:focus::-moz-range-thumb{box-shadow:0 0 0 4px rgb(var(--highlight-rgb), .3), 0 2px 8px #0000004d}.eq-value{color:var(--foreground);text-align:center;background:var(--input);border-radius:var(--radius-sm);min-width:28px;padding:2px 4px;font-size:.7rem;font-weight:600;transition:color .2s,background .2s}.eq-value.positive{color:var(--highlight);background:rgb(var(--highlight-rgb), .15)}.eq-value.negative{color:#ef4444;background:#ef444426}.eq-freq{color:var(--muted-foreground);text-align:center;white-space:nowrap;font-size:.65rem;font-weight:500}.equalizer-scale{padding-top:var(--spacing-sm);border-top:1px solid var(--border);margin-top:var(--spacing-sm);justify-content:space-between;display:flex}.equalizer-scale span{color:var(--muted-foreground);opacity:.7;font-size:.7rem}@media (width<=768px){.equalizer-container{padding:var(--spacing-md)}.equalizer-bands{padding-bottom:var(--spacing-sm);-webkit-overflow-scrolling:touch;gap:2px;overflow-x:auto}.eq-band{min-width:36px}.eq-slider{height:100px}.eq-slider::-webkit-slider-thumb{width:16px;height:16px;margin-left:-5px}.eq-slider::-moz-range-thumb{width:16px;height:16px}.eq-freq{font-size:.55rem}.eq-value{min-width:24px;font-size:.6rem}}@media (width<=480px){.equalizer-preset-row{flex-direction:column;align-items:stretch}.equalizer-preset-row select{max-width:none}.equalizer-preset-row label{margin-bottom:-.5rem}.eq-slider{height:80px}.eq-band{min-width:30px}}.track-list-search-container{margin:1rem 0}.track-list-search-input{font-size:.95rem}#custom-tooltip.visible{opacity:1}.profile-header-container{flex-direction:column;align-items:center;width:100%;margin-bottom:2.25rem;padding-bottom:1.5rem;display:flex;position:relative;overflow:visible}.profile-banner-wrapper{border-radius:var(--radius-2xl);border:1px solid color-mix(in srgb, var(--border) 55%, transparent);width:100%;height:340px;position:relative;overflow:hidden}.profile-banner{background:var(--background);width:100%;height:100%;transition:transform var(--duration-slow) var(--ease-out), filter var(--duration-normal) var(--ease-out);filter:saturate(1.08)contrast(1.04);background-position:50%;background-size:cover}.profile-banner-overlay{background:var(--background);position:absolute;inset:0}.profile-card{z-index:10;background:var(--card);-webkit-backdrop-filter:blur(24px)saturate(160%);backdrop-filter:blur(24px)saturate(160%);border:1px solid color-mix(in srgb, var(--border) 60%, transparent);border-radius:var(--radius-2xl);width:calc(100% - 4rem);max-width:960px;animation:profile-card-slide-up .8s var(--ease-out-back) both;margin-top:-96px;margin-left:auto;margin-right:auto;padding:0 2.5rem 2rem;position:relative;overflow:visible;box-shadow:0 28px 64px -26px #000000b8,0 12px 24px #00000042,inset 0 1px #ffffff0d}@keyframes profile-card-slide-up{0%{opacity:0;transform:translateY(40px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.profile-card-content{text-align:center;flex-direction:column;align-items:center;gap:1.1rem;display:flex}.profile-avatar-wrapper{z-index:20;margin-top:-68px;margin-bottom:.75rem;position:relative}.profile-avatar{border:3px solid color-mix(in srgb, var(--border) 55%, transparent);background-color:var(--secondary);object-fit:cover;width:164px;height:164px;transition:transform var(--duration-normal) var(--ease-spring), box-shadow var(--duration-normal) var(--ease-out);border-radius:50%;box-shadow:0 16px 34px #00000073,0 0 0 8px #0000002e}.profile-avatar:hover{transform:translateY(-2px)scale(1.03);box-shadow:0 22px 42px #00000085,0 0 0 10px #00000038}.profile-avatar-ring{border:1.5px solid color-mix(in srgb, var(--primary) 54%, transparent);opacity:.34;border-radius:50%;animation:3.6s ease-in-out infinite profile-pulse;position:absolute;inset:-7px}.profile-avatar-ring.is-live{opacity:1;border-width:4px;border-color:#16a34a;inset:-4px;box-shadow:0 0 0 1px #16a34a}@keyframes profile-pulse{0%{opacity:.2;transform:scale(1)}50%{opacity:.1;transform:scale(1.05)}to{opacity:.2;transform:scale(1)}}.presence-indicator{background:var(--background);color:#fff;letter-spacing:.05em;z-index:15;border:2px solid color-mix(in srgb, var(--background) 92%, transparent);border-radius:12px;align-items:center;gap:4px;padding:2px 9px;font-size:.65rem;font-weight:800;animation:.3s presence-fade-in;display:flex;position:absolute;bottom:5px;right:5px;box-shadow:0 10px 20px #10b9815c}#profile-presence-indicator{display:none!important}@keyframes presence-fade-in{0%{opacity:0;transform:scale(.8)translateY(5px)}to{opacity:1;transform:scale(1)translateY(0)}}.presence-dot{background:#fff;border-radius:50%;width:6px;height:6px;animation:1.5s infinite presence-glow}#page-library{padding-top:1rem}#page-library .content-section:first-child{margin-bottom:2.5rem}.library-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:0 .5rem;display:flex}.library-header h2{font-size:var(--text-2xl);letter-spacing:-.02em;background:var(--background);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-weight:700}.library-actions{gap:.75rem;display:flex}.library-actions .btn-primary,.library-actions .btn-secondary{border-radius:var(--radius-lg);transition:all var(--duration-fast) var(--ease-out);align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;display:inline-flex}.library-actions .btn-secondary{background:var(--secondary);color:var(--foreground);border:1px solid var(--border)}.library-actions .btn-secondary:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-foreground)}#page-library .search-tabs{background:var(--secondary);border-radius:var(--radius-xl);border:1px solid var(--border);gap:.25rem;margin-bottom:1.5rem;padding:.375rem;display:inline-flex}#page-library .search-tab{color:var(--muted-foreground);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);white-space:nowrap;background:0 0;border:none;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500}#page-library .search-tab:hover{color:var(--foreground);background:var(--background)}#page-library .search-tab.active{color:var(--foreground);background:var(--background);box-shadow:0 1px 3px #0000001a}#page-library .search-tab-content{animation:.3s fade-in}#page-library .section-title{font-size:var(--text-xl);letter-spacing:-.01em;margin-bottom:1rem;font-weight:700}#page-library .empty-state{text-align:center;color:var(--muted-foreground);padding:3rem 2rem}#page-library .empty-state-icon{opacity:.5;margin-bottom:1rem;font-size:3rem}@keyframes presence-glow{0%{box-shadow:0 0 #fffc}70%{box-shadow:0 0 0 6px #fff0}to{box-shadow:0 0 #fff0}}.presence-text{line-height:1}.placeholder-msg{color:var(--muted-foreground);text-align:center;opacity:.6;grid-column:1/-1;justify-content:center;align-items:center;padding:4rem 2rem;font-size:1.1rem;display:flex;flex:1 0 100%!important;width:100%!important;min-width:100%!important}.profile-main-meta{flex-direction:column;align-items:center;gap:.4rem;display:flex}.profile-display-name{letter-spacing:-.02em;background:var(--background);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(2rem,5vw,3.35rem);font-weight:850;line-height:1}.profile-username{color:var(--muted-foreground);opacity:.86;font-size:clamp(1rem,2vw,1.25rem);font-weight:500}.profile-status{background:color-mix(in srgb, var(--primary) 14%, transparent);color:var(--primary);border-radius:var(--radius-full);font-size:var(--text-sm);border:1px solid color-mix(in srgb, var(--primary) 28%, transparent);margin-top:.5rem;padding:.45rem .95rem;font-weight:600;box-shadow:inset 0 0 0 1px #ffffff0a}.profile-bio{max-width:600px;color:var(--secondary-foreground);opacity:.92;font-size:clamp(.9rem,1.5vw,1.1rem);line-height:1.62}.profile-meta-footer{border-top:1px solid color-mix(in srgb, var(--border) 26%, transparent);flex-direction:column;align-items:center;gap:1.5rem;width:100%;margin-top:.7rem;padding-top:1.7rem;display:flex}.profile-links{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.profile-links:empty{display:none}.profile-link{color:color-mix(in srgb, var(--muted-foreground) 92%, var(--foreground));font-size:var(--text-sm);background:color-mix(in srgb, var(--card) 62%, transparent);border:1px solid color-mix(in srgb, var(--border) 38%, transparent);border-radius:var(--radius-full);transition:all var(--duration-fast) var(--ease-out);align-items:center;gap:.6rem;padding:.5rem .85rem;font-weight:600;display:flex}.profile-link:hover{color:var(--foreground);background:color-mix(in srgb, var(--card) 88%, transparent);border-color:color-mix(in srgb, var(--border) 66%, transparent);transform:translateY(-1px)}.profile-link svg{opacity:.72}.profile-sections-container{flex-direction:column;align-items:center;width:100%;max-width:1020px;margin:0 auto;padding:0 2rem 4.75rem;display:flex;overflow-x:hidden}.profile-section{text-align:left;background:var(--card);border:1px solid color-mix(in srgb, var(--border) 42%, transparent);border-radius:var(--radius-xl);flex-direction:column;align-items:stretch;width:100%;margin-bottom:2rem;padding:1.25rem 1.25rem 1.5rem;display:flex;box-shadow:0 16px 36px -24px #00000094,inset 0 1px #ffffff0a}.profile-section .card-grid{width:100%!important}.profile-favorite-albums-collage{grid-template-columns:repeat(4,minmax(0,1fr));gap:.82rem;width:100%;display:grid}.favorite-album-collage-item{aspect-ratio:1;cursor:pointer;border:1px solid color-mix(in srgb, var(--border) 48%, transparent);background:color-mix(in srgb, var(--card) 86%, transparent);transition:transform .26s var(--ease-spring), box-shadow .26s ease, border-color .26s ease;border-radius:.95rem;position:relative;overflow:hidden;box-shadow:0 14px 28px -18px #000000b3}.favorite-album-collage-item.is-featured{grid-area:span 2/span 2}.favorite-album-collage-item:focus-visible,.favorite-album-collage-item:hover{border-color:color-mix(in srgb, var(--primary) 52%, var(--border));box-shadow:0 20px 32px -18px color-mix(in srgb, var(--primary) 18%, transparent);transform:translateY(-2px)scale(1.01)}.favorite-album-collage-image{object-fit:cover;width:100%;height:100%;transition:transform .35s;transform:scale(1.005)}.favorite-album-collage-item:hover .favorite-album-collage-image,.favorite-album-collage-item:focus-visible .favorite-album-collage-image{transform:scale(1.055)}.favorite-album-collage-overlay{background:var(--background);flex-direction:column;gap:.2rem;padding:.75rem;display:flex;position:absolute;inset:auto 0 0}.favorite-album-collage-meta{color:#ffffffc7;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;font-size:.67rem;overflow:hidden}.favorite-album-collage-title{color:#fff;letter-spacing:-.01em;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.95rem;font-weight:750;line-height:1.2;display:-webkit-box;overflow:hidden}.favorite-album-collage-description{color:#ffffffc7;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.72rem;line-height:1.35;display:-webkit-box;overflow:hidden}.section-header-flex{text-align:left;flex-direction:row;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.lastfm-badge{color:#fff;text-transform:uppercase;letter-spacing:.05em;background:#d51007;border-radius:4px;padding:2px 8px;font-size:.7rem;font-weight:700}.btn-glass{background:color-mix(in srgb, var(--foreground) 8%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid color-mix(in srgb, var(--border) 52%, transparent);color:var(--foreground);border-radius:var(--radius-lg);font-size:var(--text-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);padding:.65rem 1.2rem;font-weight:600}.btn-glass:hover{background:color-mix(in srgb, var(--foreground) 14%, transparent);border-color:color-mix(in srgb, var(--border) 72%, transparent);transform:translateY(-2px)}@media (width<=768px){#page-profile{overflow-x:hidden}.profile-banner-wrapper{height:228px}.profile-card{border-radius:var(--radius-xl);width:calc(100% - 1.25rem);margin-top:-52px;padding:0 1.1rem 1.2rem}.profile-avatar-wrapper{margin-top:-56px}.profile-avatar{width:110px;height:110px}.profile-avatar-ring{inset:-6px}.profile-display-name{font-size:1.5rem}.profile-username,.profile-bio{font-size:.9rem}.profile-meta-footer{flex-direction:column;gap:1rem;margin-top:.75rem;padding-top:1rem}.profile-links{flex-wrap:wrap;justify-content:center;gap:1rem;width:100%}.profile-actions{gap:.5rem;width:100%;display:flex}.profile-actions .btn-glass{text-align:center;flex:1;justify-content:center;padding:.75rem}.profile-sections-container{padding:0 1rem 4rem}.profile-section{margin-bottom:1.2rem;padding:1rem .95rem 1.15rem}.section-header-flex{margin-bottom:.9rem}.profile-section .card-grid{grid-template-columns:repeat(2,1fr)!important;gap:.75rem!important}.profile-favorite-albums-collage{grid-template-columns:repeat(2,minmax(0,1fr));gap:.72rem}.favorite-album-collage-item.is-featured{grid-area:span 1/span 2}}@media (width<=480px){#page-profile{overflow-x:hidden}.profile-banner-wrapper{height:180px}.profile-card{border-radius:var(--radius-lg);border-left:none;border-right:none;width:100%;margin-top:-44px;padding:0 1rem 1rem}.profile-avatar-wrapper{margin-top:-48px}.profile-avatar{width:92px;height:92px}.profile-display-name{font-size:1.25rem}.profile-status{padding:.3rem .75rem;font-size:.75rem}.profile-section .card-grid{grid-template-columns:repeat(2,1fr)!important}.profile-section{border-radius:var(--radius-lg);padding:.92rem .78rem 1rem}.profile-favorite-albums-collage{grid-template-columns:repeat(2,minmax(0,1fr));gap:.56rem}.favorite-album-collage-overlay{padding:.58rem}.favorite-album-collage-title{font-size:.82rem}.favorite-album-collage-description{font-size:.67rem}}.status-picker-container{position:relative}.search-results-dropdown{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);z-index:100;max-height:200px;box-shadow:var(--shadow-lg);display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.search-result-item{cursor:pointer;border-bottom:1px solid var(--border);align-items:center;gap:.5rem;padding:.5rem;display:flex}.search-result-item:last-child{border-bottom:none}.search-result-item:hover{background:var(--secondary)}.search-result-item img{border-radius:var(--radius-sm);object-fit:cover;width:32px;height:32px}.search-result-info{flex:1;min-width:0}.search-result-title{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:500;overflow:hidden}.search-result-subtitle{color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.user-search-card{background:var(--card);border-radius:var(--radius-xl);text-align:center;transition:all var(--duration-normal) var(--ease-out);border:1px solid color-mix(in srgb, var(--border) 20%, transparent);padding:1.5rem}.user-search-card:hover{background:var(--secondary);border-color:var(--primary);box-shadow:var(--shadow-xl);transform:translateY(-8px)}.user-search-avatar{object-fit:cover;border:2px solid var(--border);width:80px;height:80px;transition:border-color var(--duration-normal) var(--ease-out);border-radius:50%;margin-bottom:1rem}.user-search-card:hover .user-search-avatar{border-color:var(--primary)}.user-search-name{white-space:nowrap;text-overflow:ellipsis;font-size:1rem;font-weight:700;overflow:hidden}.user-search-username{color:var(--muted-foreground);font-size:.85rem}.dropdown-menu{background:color-mix(in srgb, var(--card) 85%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:var(--radius);z-index:2000;min-width:200px;box-shadow:var(--shadow-lg);flex-direction:column;gap:.25rem;margin-top:.5rem;padding:.5rem;display:none;position:absolute;top:100%;left:0}.dropdown-menu.active{animation:.1s ease-out scale-in;display:flex}.dropdown-menu button{text-align:left;justify-content:flex-start;width:100%}.sidebar-account-dropdown{gap:.35rem;min-width:0;padding:.35rem;inset:auto 0 calc(100% + .5rem)}.sidebar-account-dropdown .account-dropdown-section{flex-direction:column;gap:.35rem;padding:.2rem;display:flex}.sidebar-account-dropdown .account-dropdown-section+.account-dropdown-section{border-top:1px solid color-mix(in srgb, var(--border) 86%, transparent);padding-top:.5rem}.sidebar-account-dropdown .btn-secondary,.sidebar-account-dropdown .btn-primary{text-align:left;white-space:normal;border-radius:.62rem;justify-content:flex-start;width:100%;min-height:2.25rem;padding-left:.75rem;padding-right:.75rem;line-height:1.3}input[type=search]::-webkit-search-decoration{appearance:none}input[type=search]::-webkit-search-cancel-button{appearance:none}input[type=search]::-webkit-search-results-button{appearance:none}input[type=search]::-webkit-search-results-decoration{appearance:none}input[type=search]::-webkit-search-cancel-button{appearance:none;display:none}input[type=search]::-webkit-search-decoration{appearance:none;display:none}input[type=search]::-webkit-search-results-button{appearance:none;display:none}input[type=search]::-webkit-search-results-decoration{appearance:none;display:none}:root{--glass-bg:color-mix(in srgb, var(--card) 62%, transparent);--glass-bg-hover:color-mix(in srgb, var(--card) 82%, transparent);--glass-border:color-mix(in srgb, var(--border) 60%, transparent);--glass-border-hover:color-mix(in srgb, var(--primary) 30%, transparent);--glass-blur:14px;--glass-blur-heavy:22px;--shadow-surface:0 1px 3px #0000001f, 0 1px 2px #00000014;--shadow-card:0 6px 18px -8px #00000052, 0 0 0 1px var(--glass-border), inset 0 1px 0 #ffffff0a;--shadow-card-hover:0 16px 28px -12px #00000075, 0 0 0 1px var(--glass-border-hover), inset 0 1px 0 #ffffff0f;--shadow-elevated:0 20px 25px -5px #00000026, 0 8px 10px -6px #0000001a;--shadow-glow-sm:0 0 15px rgb(var(--highlight-rgb) / .3);--shadow-glow-md:0 0 25px rgb(var(--highlight-rgb) / .4);--shadow-glow-lg:0 0 40px rgb(var(--highlight-rgb) / .5);--state-hover-bg:color-mix(in srgb, var(--primary) 8%, transparent);--state-active-bg:color-mix(in srgb, var(--primary) 12%, transparent);--state-focus-ring:0 0 0 3px rgb(var(--highlight-rgb) / .25);--radius-smooth:.875rem;--radius-soft:1.125rem;--radius-pill:9999px;--ease-spring-soft:cubic-bezier(.34, 1.4, .64, 1);--ease-spring-bounce:cubic-bezier(.68, -.15, .265, 1.35);--space-xs:.375rem;--space-sm:.625rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.25rem;--space-2xl:3.5rem}.btn-primary{background:var(--background);color:var(--primary-foreground);border:1px solid color-mix(in srgb, var(--primary) 66%, white);border-radius:var(--radius-pill);cursor:pointer;transition:transform .2s var(--ease-spring-soft), box-shadow .3s var(--ease-out), filter .2s var(--ease-out);box-shadow:0 10px 18px -10px rgb(var(--highlight-rgb) / .62), 0 2px 5px #00000057, inset 0 1px 0 #ffffff47;-webkit-tap-highlight-color:transparent;padding:.72rem 1.6rem;font-size:.9375rem;font-weight:600;position:relative;overflow:hidden}.btn-primary:before{content:"";background:var(--background);opacity:0;transition:opacity .3s var(--ease-out);position:absolute;inset:0}.btn-primary:hover{box-shadow:0 14px 26px -12px rgb(var(--highlight-rgb) / .72), 0 6px 10px -6px #00000059, inset 0 1px 0 #ffffff57;filter:brightness(1.06);transform:translateY(-2px)scale(1.015)}.btn-primary:hover:before{opacity:1}.btn-primary:active{box-shadow:0 1px 4px rgb(var(--highlight-rgb) / .2), inset 0 2px 4px #0000001a;transform:translateY(0)scale(.98)}.btn-secondary{background:var(--glass-bg);color:var(--foreground);border:1px solid var(--glass-border);border-radius:calc(var(--radius-pill) - .2rem);cursor:pointer;transition:background .2s var(--ease-out), border-color .2s var(--ease-out), transform .2s var(--ease-spring-soft), box-shadow .2s var(--ease-out);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.61rem 1.25rem;font-size:.9375rem;font-weight:500}.btn-secondary:hover{background:color-mix(in srgb, var(--glass-bg-hover) 86%, var(--primary) 7%);border-color:var(--glass-border-hover);transform:translateY(-1px);box-shadow:0 8px 18px -12px #0000008c,inset 0 1px #ffffff0d}.btn-secondary:active{transform:translateY(0)scale(.98)}.btn-ghost{color:var(--muted-foreground);border-radius:var(--radius-pill);cursor:pointer;transition:color .2s var(--ease-out), background .2s var(--ease-out), transform .2s var(--ease-spring-soft);background:0 0;border:none;padding:.625rem 1.25rem;font-size:.9375rem;font-weight:500}.btn-ghost:hover{color:var(--foreground);background:var(--state-hover-bg)}.btn-icon{background:var(--glass-bg);border:1px solid var(--glass-border);width:40px;height:40px;color:var(--foreground);cursor:pointer;transition:background .2s var(--ease-out), border-color .2s var(--ease-out), transform .2s var(--ease-spring-soft), box-shadow .2s var(--ease-out);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.btn-icon:hover{background:var(--glass-bg-hover);border-color:var(--glass-border-hover);box-shadow:var(--shadow-card);transform:scale(1.1)translateY(-1px)}.btn-icon:active{transform:scale(.95)}.card{background:var(--card);border:1px solid var(--glass-border);border-radius:var(--radius-soft);transition:transform .3s var(--ease-spring-soft), box-shadow .3s var(--ease-out), border-color .2s var(--ease-out);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-card);overflow:hidden}.card:hover{border-color:var(--glass-border-hover);box-shadow:var(--shadow-card-hover);transform:translateY(-4px)scale(1.01)}.card-image-wrapper{border-radius:var(--radius-smooth);background:color-mix(in srgb, var(--card) 74%, black);position:relative;overflow:hidden}.card-image-wrapper:after{content:"";opacity:0;transition:opacity .3s var(--ease-out);pointer-events:none;background:0 0;position:absolute;inset:0}.card:hover .card-image-wrapper:after{opacity:1}.card-image{aspect-ratio:1;object-fit:cover;width:100%;transition:transform .5s var(--ease-out), filter .3s var(--ease-out)}.card:hover .card-image{transform:scale(1.05)}.card-play-btn{cursor:pointer;opacity:0;width:48px;height:48px;transition:opacity .3s var(--ease-out), transform .3s var(--ease-spring-bounce), box-shadow .3s var(--ease-out);box-shadow:0 4px 12px rgb(var(--highlight-rgb) / .4), 0 2px 4px #0003;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:.75rem;right:.75rem;transform:translateY(8px)scale(.9);background:var(--primary)!important;color:var(--primary-foreground)!important}.card-play-btn:hover{box-shadow:0 6px 20px rgb(var(--highlight-rgb) / .5), 0 4px 8px #00000040;transform:scale(1.15)!important}.card-info{padding:1rem}.card-title{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.01em;margin:0 0 .25rem;font-size:1rem;font-weight:600;overflow:hidden}.card-subtitle{color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.875rem;overflow:hidden}.input{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:calc(var(--radius-pill) - .18rem);width:100%;color:var(--foreground);transition:background .2s var(--ease-out), border-color .2s var(--ease-out), box-shadow .2s var(--ease-out), transform .2s var(--ease-spring-soft);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);outline:none;padding:.875rem 1.125rem;font-family:inherit;font-size:.9375rem}.input:hover{background:color-mix(in srgb, var(--glass-bg-hover) 88%, transparent);border-color:color-mix(in srgb, var(--border) 80%, var(--primary) 20%)}.input:focus{background:color-mix(in srgb, var(--glass-bg-hover) 90%, transparent);border-color:var(--primary);box-shadow:var(--state-focus-ring), 0 2px 8px rgb(var(--highlight-rgb) / .1);transform:translateY(-1px)}.input::placeholder{color:color-mix(in srgb, var(--muted-foreground) 60%, transparent)}.search-bar{flex:1;position:relative}.search-bar input{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-pill);width:100%;color:var(--foreground);transition:background .2s var(--ease-out), border-color .2s var(--ease-out), box-shadow .2s var(--ease-out);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:.875rem 1rem .875rem 2.75rem;font-size:.9375rem}.search-bar input:focus{background:var(--glass-bg-hover);border-color:var(--primary);box-shadow:var(--state-focus-ring);outline:none}.search-bar .search-icon{color:var(--muted-foreground);pointer-events:none;transition:color .2s var(--ease-out);position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.search-bar input:focus+.search-icon{color:var(--primary)}.search-bar:has(input:focus) .search-icon{color:var(--primary)}#page-friends{padding:var(--space-lg)}#page-friends.page.active{gap:1.4rem;display:grid}.friends-hero{border-radius:var(--radius-xl);background:var(--card);border:1px solid var(--glass-border);box-shadow:var(--shadow-card);margin-bottom:0;padding:2.35rem 2rem;position:relative;overflow:hidden}.friends-hero:before{content:"";background:var(--background);pointer-events:none;width:360px;height:360px;position:absolute;top:-48%;right:-16%}.friends-hero:after{content:"";background:var(--background);pointer-events:none;position:absolute;inset:0}.friends-section-head{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.friends-section-title-row{align-items:center;gap:.6rem;display:inline-flex}.friends-requests-grid{flex-direction:column;gap:.75rem;display:flex}.friends-hero-title{color:var(--foreground);letter-spacing:-.02em;margin:0 0 .5rem;font-size:clamp(1.75rem,5vw,2.5rem);font-weight:700;position:relative}.friends-hero-subtitle{color:var(--muted-foreground);margin:0;font-size:1.0625rem;position:relative}.friends-section-header{border-bottom:1px solid var(--glass-border);justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:.75rem;display:flex}.friends-section-header h2{color:var(--foreground);align-items:center;gap:.5rem;margin:0;font-size:1.25rem;font-weight:600;display:flex}.friends-section-header .badge{background:var(--primary);color:var(--primary-foreground);border-radius:var(--radius-pill);padding:.25rem .625rem;font-size:.75rem;font-weight:600}.friends-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;display:grid}.friend-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);cursor:pointer;transition:transform .3s var(--ease-spring-soft), box-shadow .3s var(--ease-out), border-color .2s var(--ease-out), background .2s var(--ease-out);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));align-items:center;gap:.9rem;padding:1.25rem;display:flex;position:relative;overflow:hidden}.friend-card:before{content:"";border-radius:inherit;background:var(--background);opacity:.08;transition:opacity .25s var(--ease-out), border-color .25s var(--ease-out);pointer-events:none;border:1px solid #0000;position:absolute;inset:0}.friend-card:hover{background:var(--glass-bg-hover);border-color:var(--glass-border-hover);box-shadow:0 0 0 1px color-mix(in srgb, var(--primary) 28%, transparent), 0 12px 28px #00000038;transform:translateY(-1px)}.friend-card:hover:before{opacity:.16;border-color:color-mix(in srgb, var(--primary) 26%, transparent)}.friend-card:active{transform:translateY(-1px)scale(.99)}.friend-card .friend-avatar{width:52px;height:52px;transition:border-color .2s var(--ease-out), transform .3s var(--ease-spring-soft);border:2px solid #0000;border-radius:50%;flex-shrink:0;position:relative;overflow:hidden;box-shadow:0 2px 8px #00000026}.friend-card:hover .friend-avatar{border-color:color-mix(in srgb, var(--primary) 40%, transparent);transform:scale(1.05)}.friend-card .friend-avatar:after{content:"";transition:border-color .3s var(--ease-out);border:2px solid #0000;border-radius:50%;position:absolute;inset:-3px}.friend-card:hover .friend-avatar:after{border-color:color-mix(in srgb, var(--primary) 20%, transparent)}.friend-card .friend-avatar img{object-fit:cover;width:100%;height:100%}.friend-card .friend-card-body{flex:1;min-width:0}.friend-card .friend-name{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.01em;margin-bottom:.2rem;font-size:1rem;font-weight:600;overflow:hidden}.friend-card .friend-username{color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;margin-bottom:.375rem;font-size:.8125rem;overflow:hidden}.friend-card .friend-status{color:var(--primary);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.375rem;font-size:.8125rem;display:flex;overflow:hidden}.friend-card .friend-status:before{content:"";background:var(--primary);border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2s ease-in-out infinite pulse-glow}@keyframes pulse-glow{0%,to{box-shadow:0 0 0 0 rgb(var(--highlight-rgb) / .4)}50%{box-shadow:0 0 0 4px rgb(var(--highlight-rgb) / 0)}}.friend-card .friend-card-actions{opacity:.92;transition:opacity .2s var(--ease-out), transform .2s var(--ease-spring-soft);flex-shrink:0;transform:translate(0)}.friend-card:hover .friend-card-actions{opacity:1;transform:translate(0)}.friend-card .friend-card-actions .btn-secondary{padding:.5rem 1rem;font-size:.8125rem}#friends-requests-section{margin-bottom:2rem}.friend-request-item{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);transition:transform .2s var(--ease-spring-soft), box-shadow .2s var(--ease-out), border-color .2s var(--ease-out);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));align-items:center;gap:1rem;padding:1.125rem;display:flex}.friend-request-item:hover{border-color:var(--glass-border-hover);box-shadow:var(--shadow-card);transform:translate(3px)}.friend-request-item.pending{opacity:.9;border-style:dashed}.friend-request-item .friend-request-avatar{border-radius:50%;flex-shrink:0;width:52px;height:52px;overflow:hidden;box-shadow:0 2px 6px #0000001a}.friend-request-item .friend-request-avatar img{object-fit:cover;width:100%;height:100%}.friend-request-item .friend-request-info{flex:1;min-width:0}.friend-request-item .friend-request-name{color:var(--foreground);margin-bottom:.25rem;font-size:.9375rem;font-weight:600}.friend-request-item .friend-request-username{color:var(--muted-foreground);font-size:.8125rem}.friend-request-item .friend-request-actions{align-items:center;gap:.5rem;display:flex}.friends-discover-panel{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-card);padding:1.5rem}@media (width>=1025px){#friends-discover-section .friends-discover-panel{max-width:760px}}#friends-discover-input{background:color-mix(in srgb, var(--input) 70%, transparent);border-color:color-mix(in srgb, var(--border) 70%, transparent);border-radius:var(--radius-pill);padding:1rem 1.25rem;font-size:.9375rem}#friends-discover-input:focus{background:color-mix(in srgb, var(--input) 85%, transparent);border-color:var(--primary);box-shadow:var(--state-focus-ring)}.friends-suggestions-status{color:var(--muted-foreground);margin-top:.75rem;font-size:.875rem}.friends-suggestions-list{flex-direction:column;gap:.75rem;margin-top:1rem;display:flex}.friend-suggestion-item{background:color-mix(in srgb, var(--card) 50%, transparent);border:1px solid var(--glass-border);border-radius:var(--radius-lg);transition:background .2s var(--ease-out), border-color .2s var(--ease-out), transform .2s var(--ease-spring-soft);align-items:center;gap:1rem;padding:1rem;display:flex}.friend-suggestion-item:hover{background:color-mix(in srgb, var(--card) 70%, transparent);border-color:var(--glass-border-hover);transform:translate(4px)}.friend-suggestion-item.self{background:color-mix(in srgb, var(--secondary) 25%, transparent);border-style:dashed}.friend-suggestion-avatar{object-fit:cover;border:1px solid color-mix(in srgb, var(--border) 78%, transparent);border-radius:50%;flex-shrink:0;width:42px;height:42px}.friend-suggestion-meta{flex:1;min-width:0}.friend-suggestion-name{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.friend-suggestion-username{color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;font-size:.81rem;overflow:hidden}.friend-suggestion-actions{flex-shrink:0;align-items:center;gap:.45rem;display:flex}.friend-suggestion-actions .btn-primary,.friend-suggestion-actions .btn-secondary{min-width:0;padding:.46rem .84rem;font-size:.81rem}.friends-empty-state{text-align:center;color:var(--muted-foreground);background:var(--glass-bg);border:2px dashed var(--glass-border);border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));padding:4rem 2rem}.friends-empty-state svg{opacity:.6;transition:opacity .3s var(--ease-out), transform .3s var(--ease-spring-soft);margin-bottom:1.25rem}.friends-empty-state:hover svg{opacity:.8;transform:scale(1.1)}.friends-empty-state p:first-of-type{color:var(--foreground);margin-bottom:.5rem;font-size:1.0625rem;font-weight:600}.friends-empty-state p:last-of-type{font-size:.9375rem}.friends-empty-title{color:var(--foreground);margin-bottom:.5rem;font-size:1.0625rem;font-weight:600}.friends-empty-copy{color:var(--muted-foreground);font-size:.9375rem}@media (width>=1400px){.friends-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.25rem}.card{border-radius:calc(var(--radius-soft) + .25rem)}.friends-hero{padding:3rem 2.5rem}}@media (width<=1024px){.friends-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.friend-card .friend-card-actions{opacity:1;transform:none}}@media (width<=768px){:root{--glass-blur:12px}.friends-grid{grid-template-columns:1fr;gap:.875rem}.friend-card{padding:1rem}.friend-card .friend-avatar{width:48px;height:48px}.friends-hero{margin-bottom:0;padding:1.75rem 1.25rem}.friends-hero-title{font-size:1.5rem}.friends-section-header{flex-wrap:wrap;gap:.75rem}.friend-request-item{flex-wrap:wrap}.friend-request-item .friend-request-actions{justify-content:flex-start;width:100%;margin-top:.75rem}.card:hover{transform:translateY(-2px)}.btn-primary,.btn-secondary{padding:.625rem 1.25rem;font-size:.875rem}}@media (width<=480px){.friends-grid{grid-template-columns:1fr}.friend-card{padding:.875rem}.friend-card .friend-card-actions{width:100%;margin-top:.65rem;display:block}.friend-card{flex-wrap:wrap}.friend-card .friend-card-actions .btn-secondary{justify-content:center;width:100%}.friends-discover-panel{padding:1rem}.friend-suggestion-item{flex-wrap:wrap;padding:.875rem}.friend-suggestion-actions{justify-content:flex-end;width:100%}}@media (hover:none){.card-play-btn{opacity:1;width:40px;height:40px;bottom:.5rem;right:.5rem;transform:none}.friend-card .friend-card-actions{opacity:1;transform:none}.card:hover,.friend-card:hover{transform:none}}@media (prefers-reduced-motion:reduce){.friend-card,.card,.btn-primary,.btn-secondary,.input{transition:none}.friend-card .friend-status:before{animation:none}}@media (prefers-color-scheme:dark){:root:not([data-theme]){--glass-bg:color-mix(in srgb, var(--card) 65%, transparent);--glass-border:color-mix(in srgb, var(--border) 50%, transparent)}}.glass{background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur))}.glass-heavy{background:color-mix(in srgb, var(--card) 85%, transparent);-webkit-backdrop-filter:blur(var(--glass-blur-heavy));backdrop-filter:blur(var(--glass-blur-heavy))}.glow-hover:hover{box-shadow:var(--shadow-glow-sm)}.text-gradient{background:var(--background);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}@keyframes slide-up-fade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:slide-up-fade .4s var(--ease-out-back) forwards}.animate-scale-in{animation:scale-in .3s var(--ease-out-back) forwards}.stagger-item{opacity:0;animation:slide-up-fade .4s var(--ease-out-back) forwards}.stagger-item:first-child{animation-delay:50ms}.stagger-item:nth-child(2){animation-delay:.1s}.stagger-item:nth-child(3){animation-delay:.15s}.stagger-item:nth-child(4){animation-delay:.2s}.stagger-item:nth-child(5){animation-delay:.25s}.stagger-item:nth-child(6){animation-delay:.3s}#page-home .card:not(.artist-circular){border:1px solid color-mix(in srgb, var(--border) 78%, transparent);background:var(--card);border-radius:1.7rem;position:relative;overflow:hidden;box-shadow:0 12px 30px #0003}#page-home .card:not(.artist-circular):after{content:"";border-radius:inherit;border:1px solid color-mix(in srgb, var(--border) 72%, transparent);pointer-events:none;transition:border-color var(--transition-fast);position:absolute;inset:0}#page-home .card:not(.artist-circular):hover:after{border-color:color-mix(in srgb, var(--primary) 36%, var(--border))}#page-home .card:not(.artist-circular) .card-image-wrapper{border-radius:1.55rem 1.55rem .95rem .95rem;margin:0}#page-home .card:not(.artist-circular) .card-image{border-radius:1.5rem 1.5rem .9rem .9rem}.home-recent-smart-section{border:1px solid color-mix(in srgb, var(--border) 72%, transparent);background:var(--card);border-radius:1rem;padding:1.2rem;position:relative;overflow:visible}.home-recent-smart-head .btn-secondary{align-items:center;gap:.45rem;display:inline-flex}.jump-back-in-section{margin-bottom:var(--spacing-2xl);padding:0;overflow:visible}.section-header{z-index:2;justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;display:flex;position:relative}.section-header-left{flex-direction:column;display:flex}.section-header-text{flex-direction:column;gap:.25rem;display:flex}.section-header-text .section-eyebrow{letter-spacing:.1em;margin:0 0 .15rem;font-size:.7rem;font-weight:600}.section-header-text .section-title{letter-spacing:-.02em;color:var(--foreground);margin-bottom:0;font-size:2rem;font-weight:800}.section-meta{color:var(--muted-foreground);margin:.15rem 0 0;font-size:.85rem}.section-meta:before{display:none}@keyframes pulse-dot{0%,to{opacity:.4;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}.clear-history-btn{border:1px solid var(--border);color:var(--foreground);cursor:pointer;transition:all .2s var(--ease-out);background:0 0;border-radius:9999px;align-items:center;gap:.4rem;margin-top:.35rem;padding:.5rem 1rem;font-size:.8rem;font-weight:500;display:flex}.clear-history-btn:hover{background:color-mix(in srgb, var(--foreground) 8%, transparent);transform:translateY(-1px)}.clear-history-btn:active{transform:translateY(0)}.jump-back-carousel-wrapper{z-index:1;margin:0 calc(-1 * var(--carousel-bleed));position:relative}.jump-back-carousel{scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;padding:.25rem 0 .5rem var(--carousel-bleed);gap:1rem;display:flex;overflow:auto hidden}.jump-back-carousel::-webkit-scrollbar{display:none}.jump-back-carousel>.card.jump-back-card,.jump-back-carousel>a.jump-back-card{cursor:pointer;width:190px;transition:transform .2s var(--ease-out);color:inherit;background:0 0;border:none;border-radius:12px;flex:none;text-decoration:none;position:relative;overflow:visible}.jump-back-carousel>.card.jump-back-card:hover,.jump-back-carousel>a.jump-back-card:hover{transform:scale(1.02)}.jump-back-carousel>.card.jump-back-card .card-image-wrapper,.jump-back-carousel>a.jump-back-card .card-image-wrapper{background:color-mix(in srgb, var(--card) 60%, transparent);border-radius:12px;width:190px;height:190px;position:relative;overflow:hidden}.jump-back-carousel>.card.jump-back-card .card-image-wrapper.img-loading .card-image,.jump-back-carousel>a.jump-back-card .card-image-wrapper.img-loading .card-image{opacity:1!important}.jump-back-carousel>.card.jump-back-card .card-image-wrapper img,.jump-back-carousel>a.jump-back-card .card-image-wrapper img{display:block;object-fit:cover!important;opacity:1!important;border-radius:0!important;width:100%!important;height:100%!important}.jump-back-carousel>.card.jump-back-card .card-content,.jump-back-carousel>a.jump-back-card .card-content{padding:.6rem .25rem 0}.jump-back-carousel>.card.jump-back-card .card-title,.jump-back-carousel>a.jump-back-card .card-title{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.9rem;font-weight:600;line-height:1.3;overflow:hidden}.jump-back-carousel>.card.jump-back-card .card-subtitle,.jump-back-carousel>a.jump-back-card .card-subtitle{color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;margin:.2rem 0 0;font-size:.78rem;line-height:1.3;overflow:hidden}.jump-back-carousel>.card.jump-back-card .card-meta,.jump-back-carousel>a.jump-back-card .card-meta{color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;opacity:.8;margin:.15rem 0 0;font-size:.72rem;overflow:hidden}.home-recent-kind-badge{z-index:5;letter-spacing:.08em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;background:#000000a6;border-radius:6px;padding:.25rem .55rem;font-size:.6rem;font-weight:700;position:absolute;top:.5rem;left:.5rem}.home-recent-album .home-recent-kind-badge{color:#9dd6ff}.home-recent-playlist .home-recent-kind-badge{color:#9df0c8}.home-recent-mix .home-recent-kind-badge{color:#ffc990}.home-recent-artist .home-recent-kind-badge{color:#dcb4ff}.home-recent-track .home-recent-kind-badge{color:#ff9db4}.home-recent-card{transition:transform .2s var(--ease-out)}.home-recent-card:hover{transform:scale(1.02)}#page-friends.page.active{gap:1rem}.friends-hero{border-radius:1.15rem;padding:2.1rem 1.7rem}.friends-hero-stats{z-index:2;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;margin-top:1.15rem;display:grid;position:relative}.friends-hero-stat{border:1px solid color-mix(in srgb, var(--border) 72%, transparent);background:color-mix(in srgb, var(--card) 72%, transparent);border-radius:.8rem;flex-direction:column;gap:.16rem;padding:.65rem .7rem .62rem;display:flex}.friends-hero-stat .value{font-size:1.03rem;font-weight:700;line-height:1.1}.friends-hero-stat .label{text-transform:uppercase;letter-spacing:.08em;color:color-mix(in srgb, var(--muted-foreground) 90%, transparent);font-size:.72rem}.friend-card{border-radius:1rem;padding:0;overflow:hidden}.friend-card-shell{background:var(--card);align-items:center;gap:.9rem;width:100%;padding:1rem;display:flex}.friend-card .friend-status.muted{color:var(--muted-foreground)}.friend-request-item{padding:0}.friend-request-shell{align-items:center;gap:.9rem;width:100%;padding:.95rem 1rem;display:flex}.friend-request-item.pending .friend-request-shell{background:color-mix(in srgb, var(--secondary) 26%, transparent)}@media (width<=860px){.friends-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.friend-card-shell,.friend-request-shell{flex-wrap:wrap}.friend-card .friend-card-actions,.friend-request-item .friend-request-actions{justify-content:flex-end;width:100%}}.recent-page-shell{padding:.25rem .25rem 1rem}.recent-page-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.recent-page-body{gap:.9rem;display:grid}.recent-day-group{border:1px solid color-mix(in srgb, var(--border) 72%, transparent);background:var(--card);border-radius:1rem;padding:.7rem}.recent-day-head{justify-content:space-between;align-items:center;margin:.15rem .2rem .55rem;display:flex}.recent-day-head h3{margin:0;font-size:1.05rem;font-weight:700}.recent-day-head span{letter-spacing:.07em;text-transform:uppercase;color:var(--muted-foreground);font-size:.78rem}#recent-tracks-container .track-item{border-radius:.78rem}.recent-played-at{color:color-mix(in srgb, var(--muted-foreground) 86%, transparent);font-size:.77rem}@media (width<=720px){.recent-page-head{flex-direction:column;align-items:stretch}.recent-page-head .btn-secondary{align-self:flex-start}}#page-artist.page.active{gap:.95rem;display:grid}#page-artist .detail-header{border:1px solid color-mix(in srgb, var(--border) 76%, transparent);background:var(--card);border-radius:1.2rem;align-items:center;gap:1.2rem;margin-bottom:.2rem;padding:1.2rem;position:relative;box-shadow:0 14px 30px #0003}#page-artist .detail-header-image.artist{border:1px solid color-mix(in srgb, var(--border) 72%, transparent);width:clamp(178px,22vw,236px);height:clamp(178px,22vw,236px);box-shadow:0 18px 34px #00000047, 0 0 0 1px color-mix(in srgb, var(--primary) 14%, transparent);border-radius:1.05rem}#page-artist .detail-header-info .type{letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb, var(--muted-foreground) 88%, transparent);margin-bottom:.35rem;font-size:.73rem}#page-artist .detail-header-info .title{font-size:clamp(2rem,4.2vw,3.25rem);line-height:1.03}#page-artist .detail-header-info .meta{gap:.42rem;margin-top:.8rem}#page-artist .artist-tags{gap:.4rem;margin-left:0}#page-artist .artist-tag{border:1px solid color-mix(in srgb, var(--border) 72%, transparent);background:color-mix(in srgb, var(--card) 82%, transparent);color:color-mix(in srgb, var(--foreground) 84%, transparent);letter-spacing:.03em;text-transform:uppercase;font-size:.71rem}#page-artist .artist-bio{border:1px solid color-mix(in srgb, var(--border) 72%, transparent);background:color-mix(in srgb, var(--card) 78%, transparent);border-radius:.9rem;max-width:78ch;margin-top:.8rem;padding:.72rem .82rem;line-height:1.55}#page-artist .detail-header-actions{gap:.55rem;margin-top:1rem}#page-artist .content-section{border:1px solid color-mix(in srgb, var(--border) 76%, transparent);background:var(--card);border-radius:1rem;margin-bottom:.75rem;padding:1rem}body.artist-page-active #page-artist .detail-header{background:var(--card);-webkit-backdrop-filter:blur(14px)saturate(1.06);backdrop-filter:blur(14px)saturate(1.06)}body.artist-page-active #page-artist .content-section{background:var(--card);-webkit-backdrop-filter:blur(12px)saturate(1.04);backdrop-filter:blur(12px)saturate(1.04)}#page-artist .content-section .section-title{margin-bottom:.8rem;font-size:clamp(1.26rem,2.2vw,1.75rem)}#artist-detail-tracks{gap:.5rem var(--spacing-md)}#artist-detail-tracks .track-item{border:1px solid color-mix(in srgb, var(--border) 76%, transparent);background:color-mix(in srgb, var(--card) 78%, transparent);border-radius:.85rem}#artist-detail-albums,#artist-detail-eps,#artist-detail-unreleased,#artist-detail-similar{gap:.78rem}@media (width<=980px){#page-artist .detail-header{flex-direction:column;align-items:flex-start;gap:.92rem;padding:1rem}#page-artist .detail-header-image.artist{width:min(72vw,220px);height:min(72vw,220px)}#page-artist .content-section{padding:.82rem}}body.artist-page-active #page-artist.page.active{gap:.72rem}body.artist-page-active #page-artist .detail-header{background:0 0;border:none;border-radius:1rem;min-height:clamp(280px,44vh,430px);padding:1.1rem;overflow:hidden;box-shadow:0 14px 34px #00000038}body.artist-page-active #page-artist .detail-header:before{content:"";background:var(--background);z-index:1;position:absolute;inset:0}body.artist-page-active #page-artist .detail-header-info .title{letter-spacing:-.018em;font-size:clamp(2.1rem,4.1vw,3.1rem)}body.artist-page-active #page-artist .detail-header-image.artist{width:100%;height:100%;box-shadow:none;object-fit:cover;object-position:58% 28%;z-index:0;border:none;border-radius:0;position:absolute;inset:0}body.artist-page-active #page-artist .detail-header-info{z-index:2;flex-direction:column;justify-content:flex-end;max-width:min(980px,88%);min-height:calc(clamp(280px,44vh,430px) - 2.2rem);display:flex;position:relative}body.artist-page-active #page-artist .detail-header-info .meta{color:color-mix(in srgb, var(--foreground) 88%, transparent)}body.artist-page-active #page-artist .artist-tag{color:color-mix(in srgb, var(--foreground) 94%, transparent);background:#0a0e167a;border:none}body.artist-page-active #page-artist .content-section{background:var(--background);-webkit-backdrop-filter:blur(14px)saturate(1.02);backdrop-filter:blur(14px)saturate(1.02);border:1px solid #ffffff1c;border-radius:.92rem;margin-bottom:.58rem;padding:.88rem .92rem;box-shadow:0 8px 20px #0000001a}body.artist-page-active #page-artist .content-section .section-title{margin-bottom:.62rem}body.artist-page-active #artist-detail-tracks{gap:.42rem var(--spacing-sm)}body.artist-page-active #artist-detail-tracks .track-item{background:#0a0d1452;border:1px solid #ffffff1a}@media (width<=980px){body.artist-page-active #page-artist .detail-header{min-height:clamp(320px,58vh,520px)}body.artist-page-active #page-artist .detail-header-image.artist{object-position:52% 22%}body.artist-page-active #page-artist .detail-header-info{max-width:100%;min-height:calc(clamp(320px,58vh,520px) - 2.2rem)}}@media (width<=768px),(hover:none) and (pointer:coarse){.now-playing-bar{-webkit-backdrop-filter:blur(12px)saturate(1.1)}.animations-none *,.animations-reduced *{transition-duration:0s!important;animation-play-state:paused!important}[data-theme=dynamic]:before{animation-duration:30s}[data-theme=dynamic]:after{animation-duration:36s}#vinyl-disc-container.rotating-disc{will-change:transform;box-shadow:inset 0 0 0 2px #191919,0 12px 30px #00000080}#vinyl-disc-container.rotating-disc:before{filter:none;opacity:.6}}@supports ((-moz-appearance:none)){#vinyl-disc-container.rotating-disc{box-shadow:inset 0 0 0 2px #181818,0 12px 34px #0000008f}#vinyl-disc-container.rotating-disc:before{filter:none;opacity:.58;mix-blend-mode:normal}}html.page-hidden *{animation-play-state:paused!important}#command-palette-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10000;background:#0009;justify-content:center;align-items:flex-start;padding-top:min(10vh,120px);animation:.15s ease-out cmdk-overlay-in;display:flex;position:fixed;inset:0}@keyframes cmdk-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes cmdk-scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.command-palette{background:var(--card);border:1px solid var(--border);border-radius:16px;flex-direction:column;width:100%;max-width:640px;max-height:min(60vh,480px);margin:0 1rem;animation:.15s ease-out cmdk-scale-in;display:flex;overflow:hidden;box-shadow:0 16px 70px #00000080,inset 0 0 0 1px #ffffff0d}.command-palette-header{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:14px 16px;display:flex}.command-palette-search-icon{color:var(--muted-foreground);flex-shrink:0}#command-palette-input{min-width:0;color:var(--foreground);background:0 0;flex:1;padding:0;font-size:1rem;font-weight:400;box-shadow:none!important;border:none!important;outline:none!important}#command-palette-input:focus{box-shadow:none!important;border:none!important;outline:none!important}.command-palette-kbd{color:var(--muted-foreground);background:var(--secondary);border:1px solid var(--border);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:2px 6px;font-family:inherit;font-size:11px;font-weight:500;line-height:1.4;display:inline-flex}.command-palette-results{overscroll-behavior:contain;flex:1;padding:6px 8px;overflow-y:auto}.cmdk-group+.cmdk-group{margin-top:4px}.cmdk-group-heading{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.04em;-webkit-user-select:none;user-select:none;padding:6px 10px 4px;font-size:11px;font-weight:600}.cmdk-item{cursor:pointer;color:var(--foreground);-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:.875rem;transition:background 80ms;display:flex;position:relative}.cmdk-item:hover,.cmdk-item[data-selected=true]{background:var(--secondary)}.cmdk-item-icon{min-width:20px;min-height:20px;color:var(--muted-foreground);flex-shrink:0;justify-content:center;align-items:center;display:flex}.cmdk-item-icon img{object-fit:cover;aspect-ratio:1;border-radius:4px;width:28px;height:28px}.cmdk-item-content{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.cmdk-item-label{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.cmdk-item-description{color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.cmdk-item-shortcut{flex-shrink:0;align-items:center;gap:4px;margin-left:auto;display:flex}.cmdk-item-shortcut kbd{min-width:20px;height:20px;color:var(--muted-foreground);background:var(--secondary);border:1px solid var(--border);border-radius:4px;justify-content:center;align-items:center;padding:0 5px;font-size:10px;font-weight:500;line-height:1;display:inline-flex}.cmdk-empty,.cmdk-loading{height:64px;color:var(--muted-foreground);justify-content:center;align-items:center;gap:8px;font-size:.875rem;display:flex}.cmdk-loading-spinner{border:2px solid var(--border);border-top-color:var(--foreground);border-radius:50%;width:14px;height:14px;animation:.6s linear infinite cmdk-spin}@keyframes cmdk-spin{to{transform:rotate(360deg)}}.command-palette-footer{border-top:1px solid var(--border);color:var(--muted-foreground);align-items:center;gap:16px;padding:8px 16px;font-size:.7rem;display:flex}.command-palette-hint{align-items:center;gap:4px;display:flex}.command-palette-hint kbd{color:var(--muted-foreground);background:var(--secondary);border:1px solid var(--border);border-radius:4px;justify-content:center;align-items:center;padding:1px 4px;font-size:10px;font-weight:500;display:inline-flex}@keyframes card-entrance{0%{opacity:0;transform:translateY(16px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.card{animation:card-entrance .4s var(--ease-out-back) both}.stagger-item{animation:card-entrance .45s var(--ease-out-back) both}@keyframes now-playing-entrance{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.now-playing-bar{animation:now-playing-entrance .5s var(--ease-spring) both}.now-playing-bar .cover{transition:transform .35s var(--ease-spring), opacity .3s ease, box-shadow .3s ease}.now-playing-bar .cover:hover{transform:scale(1.06);box-shadow:0 8px 32px #0000004d}.now-playing-bar .title,.now-playing-bar .artist,.now-playing-bar .album{transition:opacity .25s,transform .25s}.progress-bar,.progress-fill{transition:width .15s linear}.volume-slider::-webkit-slider-thumb{transition:transform .15s var(--ease-spring), box-shadow .15s ease}.volume-slider::-webkit-slider-thumb:hover{transform:scale(1.3)}.player-controls button,.transport-btn{transition:transform .15s var(--ease-spring), opacity .15s ease, color .2s ease}.player-controls button:hover,.transport-btn:hover{transform:scale(1.12)}.player-controls button:active,.transport-btn:active{transform:scale(.92)}@keyframes play-pulse{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.track-item{transition:background-color .2s,transform .15s,box-shadow .2s}.track-item:hover{background-color:var(--muted);box-shadow:0 2px 8px #0000000f}.track-item:active{transform:scale(.995)}.track-item.playing{transition:background-color .3s,box-shadow .3s}.card{transition:transform .25s var(--ease-spring), box-shadow .25s ease, opacity .2s ease}.card:hover{box-shadow:var(--shadow-xl);transform:translateY(-6px)scale(1.015)}.card:active{transform:translateY(-2px)scale(.99)}.card-play-btn{transition:opacity .2s ease, transform .25s var(--ease-spring);opacity:0;transform:translateY(8px)scale(.8)}.card:hover .card-play-btn{opacity:1;transform:translateY(0)scale(1)}.card-play-btn:active{transform:scale(.88)!important}@keyframes page-fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.page-content{animation:page-fade-in .35s var(--ease-out-back) both}@keyframes modal-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes modal-content-in{0%{opacity:0;transform:scale(.92)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal.active .modal-overlay{animation:.25s both modal-backdrop-in}.modal.active .modal-content{animation:modal-content-in .35s var(--ease-spring) both}.sidebar-nav-item,.nav-item{transition:background-color .2s,color .2s,transform .15s,padding-left .2s}.sidebar-nav-item:hover,.nav-item:hover{transform:translate(3px)}.sidebar-nav-item:active,.nav-item:active{transform:translate(1px)scale(.98)}.queue-track-item{transition:transform .2s var(--ease-spring), opacity .2s ease, background-color .2s ease}.queue-track-item:hover{background-color:var(--muted)}.queue-track-item.playing{transition:background-color .3s}@keyframes toast-in{0%{opacity:0;transform:translateY(16px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-8px)scale(.95)}}.notification,.toast{animation:toast-in .35s var(--ease-spring) both}.collab-playlist-card{transition:transform .25s var(--ease-spring), box-shadow .25s ease, opacity .2s ease}.collab-playlist-card:hover{transform:translateY(-6px)scale(1.015);box-shadow:0 12px 32px #0003}@keyframes search-result-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.main-content{scroll-behavior:smooth}@keyframes btn-press{0%{transform:scale(1)}50%{transform:scale(.95)}to{transform:scale(1)}}button:active{animation:.15s btn-press}#context-menu{transition:opacity .15s ease, transform .15s var(--ease-spring)}.card-image,.playlist-hero-image img,.album-hero-image img{transition:opacity .3s}.eq-slider{transition:box-shadow .2s}#side-panel{transition:transform .35s var(--ease-spring), opacity .25s ease}.quality-badge{transition:opacity .2s,transform .2s}.header,.app-header{transition:background-color .3s,box-shadow .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s}.lyrics-line{transition:opacity .3s,transform .3s,color .3s,font-size .3s}.lyrics-line.active{transition:opacity .2s,transform .2s,color .2s,font-size .3s}#page-search{max-width:1240px;margin:0 auto;padding-bottom:3rem;position:relative}#page-search:before{content:"";pointer-events:none;z-index:0;background:var(--card);height:clamp(240px,34vh,380px);position:absolute;top:-1rem;left:0;right:0}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.45}}#page-search .search-header-hero{border-radius:var(--radius-2xl);background:color-mix(in srgb, var(--card) 78%, transparent);-webkit-backdrop-filter:blur(18px)saturate(140%);border:1px solid color-mix(in srgb, var(--border) 48%, transparent);flex-direction:column;gap:.75rem;margin-bottom:1.25rem;padding:1.1rem 1rem .95rem;display:flex;box-shadow:0 12px 32px #00000029,inset 0 1px #ffffff0d}#page-search .search-hero-overline{letter-spacing:.16em;text-transform:uppercase;color:var(--muted-foreground);opacity:.85;margin:0;font-size:.68rem;font-weight:700}#page-search .search-hero-title{letter-spacing:-.03em;color:var(--foreground);word-break:break-word;margin:0;font-size:clamp(2rem,5vw,3.1rem);font-weight:700;line-height:1.05}#page-search .search-header-hero .search-tabs{scrollbar-width:none;border:1px solid color-mix(in srgb, var(--border) 55%, transparent);border-radius:var(--radius-full);background:color-mix(in srgb, var(--background) 55%, transparent);flex-wrap:nowrap;gap:.3rem;width:fit-content;max-width:100%;margin:0;padding:.22rem;overflow:auto hidden}#page-search .search-header-hero .search-tabs::-webkit-scrollbar{display:none}#page-search .search-header-hero .search-tab{color:color-mix(in srgb, var(--foreground) 62%, transparent);border-radius:var(--radius-full);letter-spacing:.01em;transition:color var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast);background:0 0;border:none;flex:none;padding:.42rem 1rem;font-size:.86rem;font-weight:600}#page-search .search-header-hero .search-tab:hover{color:var(--foreground);background:color-mix(in srgb, var(--secondary) 64%, transparent)}#page-search .search-header-hero .search-tab.active{color:var(--foreground);background:color-mix(in srgb, var(--primary) 10%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--border) 62%, transparent)}#page-search .search-tab-content{z-index:1;padding-top:.4rem;position:relative}#page-search .search-section{border-bottom:1px solid color-mix(in srgb, var(--border) 38%, transparent);padding:1.15rem 1rem}#page-search .search-section:last-child{border-bottom:none}#page-search .search-section-title{letter-spacing:.14em;text-transform:uppercase;color:var(--muted-foreground);opacity:.9;margin:0 0 .85rem;font-size:.7rem;font-weight:700}#page-search .search-top-results-layout{animation:fade-in-slide-up .45s var(--ease-out);grid-template-columns:1fr;gap:1rem;margin-bottom:.2rem;display:grid}@media (width>=1024px){#page-search .search-top-results-layout{grid-template-columns:minmax(300px,.9fr) minmax(0,1.6fr);align-items:start}}#page-search .search-section--songs .track-list{scrollbar-width:thin;max-height:min(58vh,560px);margin-top:.15rem;padding-right:.3rem;overflow-y:auto}#page-search .search-section--songs .track-list::-webkit-scrollbar{width:8px}#page-search .search-section--songs .track-list::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--primary) 22%, transparent);border-radius:999px}#page-search .search-track-list .track-item{border-radius:var(--radius-md);transition:background var(--transition-fast);background:0 0;border:none;margin-bottom:.2rem}#page-search .search-track-list .track-item:hover{background:color-mix(in srgb, var(--secondary) 60%, transparent)}#search-top-hit-content.search-top-hit-card{background:color-mix(in srgb, var(--card) 82%, transparent);border:1px solid color-mix(in srgb, var(--border) 52%, transparent);border-radius:var(--radius-lg);cursor:pointer;transition:transform var(--transition-normal) var(--ease-out), border-color var(--transition-fast), box-shadow var(--transition-normal);display:block;overflow:hidden}#search-top-hit-content.search-top-hit-card:hover{border-color:color-mix(in srgb, var(--primary) 34%, var(--border));transform:translateY(-2px);box-shadow:0 14px 34px #00000024}#search-top-hit-content .search-top-hit-link{color:inherit;align-items:center;gap:1.1rem;padding:1rem;text-decoration:none;display:flex}#search-top-hit-content .search-top-hit-visual{aspect-ratio:1;border-radius:var(--radius-md);flex:none;width:clamp(96px,13vw,132px);overflow:hidden;box-shadow:0 8px 22px #00000038}#search-top-hit-content .search-top-hit-visual img{object-fit:cover;width:100%;height:100%;display:block}#search-top-hit-content .search-top-hit-info{flex-direction:column;gap:.3rem;min-width:0;display:flex}#search-top-hit-content .search-top-hit-badge{letter-spacing:.14em;text-transform:uppercase;width:fit-content;color:var(--muted-foreground);background:color-mix(in srgb, var(--secondary) 74%, transparent);border-radius:var(--radius-full);padding:.18rem .55rem;font-size:.6rem;font-weight:700;display:inline-block}#search-top-hit-content .search-top-hit-title{letter-spacing:-.02em;color:var(--foreground);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:clamp(1.25rem,2.4vw,1.8rem);font-weight:700;line-height:1.08;display:-webkit-box;overflow:hidden}#search-top-hit-content .search-top-hit-subtitle{color:var(--muted-foreground);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.86rem;font-weight:500;display:-webkit-box;overflow:hidden}#page-search .search-row-list{flex-direction:column;gap:.15rem;display:flex}#page-search .search-row{border-radius:var(--radius-md);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;align-items:center;gap:.9rem;padding:.5rem .6rem;text-decoration:none;display:flex}#page-search .search-row:hover{background:color-mix(in srgb, var(--secondary) 60%, transparent)}#page-search .search-row-art{aspect-ratio:1;border-radius:var(--radius-sm);background:color-mix(in srgb, var(--secondary) 80%, transparent);flex:none;justify-content:center;align-items:center;width:44px;display:flex;overflow:hidden}#page-search .search-row-art--round{border-radius:50%}#page-search .search-row-art img{object-fit:cover;width:100%;height:100%;display:block}#page-search .search-row-meta{flex-direction:column;gap:.08rem;min-width:0;display:flex}#page-search .search-row-title{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:600;overflow:hidden}#page-search .search-row-subtitle{color:var(--muted-foreground);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-weight:500;overflow:hidden}#page-search .search-idle{max-width:560px;padding:1.2rem .1rem}#page-search .search-idle-list{flex-direction:column;gap:.15rem;display:flex}#page-search .search-idle-empty{color:var(--muted-foreground);margin:0;font-size:.9rem}#page-search .skeleton-search-row{align-items:center;gap:.9rem;padding:.5rem .6rem;display:flex}#page-search .skeleton-search-row-art{aspect-ratio:1;background:color-mix(in srgb, var(--secondary) 70%, transparent);border-radius:50%;width:44px;animation:1.6s ease-in-out infinite skeleton-pulse}#page-search .skeleton-search-row-lines{flex-direction:column;flex:1;gap:.45rem;display:flex}#page-search .skeleton-search-row-line{background:color-mix(in srgb, var(--secondary) 70%, transparent);border-radius:4px;width:42%;height:.72rem;animation:1.6s ease-in-out infinite skeleton-pulse}#page-search .skeleton-search-row-line--short{width:26%}@media (prefers-reduced-motion:reduce){#page-search .search-header-hero{-webkit-backdrop-filter:none}#page-search .search-top-results-layout,#page-search .skeleton-search-row-art,#page-search .skeleton-search-row-line{animation:none}}@media (width<=860px){#page-search .search-header-hero{border-radius:var(--radius-xl);margin-bottom:1rem;padding:.9rem .8rem .85rem}#page-search .search-hero-title{font-size:clamp(1.55rem,7vw,2.1rem)}#page-search .search-section{padding:1rem .8rem}#page-search .search-section--songs .track-list{max-height:none;padding-right:0;overflow:visible}}@media (width<=560px){#page-search .search-header-hero{border-radius:var(--radius-lg);gap:.6rem;padding:.8rem .7rem .75rem}#page-search .search-header-hero .search-tabs{padding:.2rem}#page-search .search-header-hero .search-tab{padding:.36rem .85rem;font-size:.82rem}#page-search .search-section{padding:.9rem .7rem}#page-search .search-section-title{font-size:.64rem}#page-search .search-row{gap:.75rem;padding:.45rem .5rem}#page-search .search-row-art{width:40px}#page-search .search-idle{padding:1rem .05rem}#search-top-hit-content .search-top-hit-link{gap:.8rem;padding:.8rem}#search-top-hit-content .search-top-hit-visual{width:clamp(76px,24vw,104px)}#search-top-hit-content .search-top-hit-badge{padding:.14rem .5rem;font-size:.55rem}.search-input-wrapper .search-history{max-height:300px;padding:.3rem}}.artist-hero-header{--artist-hero-bg-image:none;border-radius:var(--radius-xl);width:100%;height:62vh;min-height:460px;max-height:640px;margin-bottom:var(--spacing-2xl);isolation:isolate;background:#090a0c;position:relative;overflow:hidden;box-shadow:0 24px 70px #00000085,0 0 0 1px #ffffff0f}.artist-hero-header:before,.artist-hero-header:after{content:"";background-image:var(--artist-hero-bg-image);filter:saturate(1.02)brightness(.9);opacity:.48;z-index:0;pointer-events:none;background-position:50%;background-size:cover;width:45%;position:absolute;top:-6%;bottom:-6%}.artist-hero-header:before{left:-9%;transform:scale(1.22)translate(-2%)}.artist-hero-header:after{right:-9%;transform:scale(1.22)translate(2%)}.artist-hero-background{z-index:1;width:min(46%,440px);position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.artist-hero-header.img-loading:before,.artist-hero-header.img-loading:after{opacity:0;background-image:none}.artist-hero-img{object-fit:cover;object-position:center 18%;width:100%;height:100%;transition:transform .6s cubic-bezier(.16,1,.3,1),opacity .25s}.artist-hero-img.img-loading{opacity:0}.artist-hero-overlay{z-index:2;pointer-events:none;background:var(--background);position:absolute;inset:0}.artist-hero-content{padding:var(--spacing-xl) var(--spacing-2xl) var(--spacing-xl);z-index:3;justify-content:space-between;align-items:flex-end;gap:var(--spacing-lg);display:flex;position:absolute;bottom:0;left:0;right:0}.artist-hero-title{color:#fff;letter-spacing:-.025em;text-shadow:0 2px 20px #00000080;overflow-wrap:break-word;margin:0;font-size:clamp(2.4rem,5vw,4rem);font-weight:800;line-height:1.08}.artist-hero-title.long-title{font-size:clamp(2rem,4vw,3.2rem)}.artist-hero-title.very-long-title{font-size:clamp(1.6rem,3vw,2.4rem)}.artist-hero-meta{color:#fffc;text-transform:uppercase;letter-spacing:.06em;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:.25rem;font-size:.88rem;font-weight:600;display:flex}.artist-hero-meta .artist-tags{flex-wrap:wrap;gap:.5rem;display:flex}.artist-hero-meta .artist-tag{color:#ffffff8c;border-radius:var(--radius-full);background:#ffffff14;padding:.15rem .55rem;font-size:.8rem}.artist-bio-section{border-radius:.92rem;padding:1rem 1.2rem}.artist-bio-section .artist-bio{color:var(--foreground);opacity:.78;cursor:default;max-width:720px;font-size:.95rem;line-height:1.7}.artist-bio-section .artist-bio .bio-read-more{color:var(--primary);cursor:pointer;text-transform:capitalize;margin-left:.5rem;font-weight:600;text-decoration:none}.artist-bio-section .artist-bio .bio-read-more:hover{text-decoration:underline}.artist-hero-actions{flex-shrink:0;align-items:center;gap:.6rem;display:flex}.artist-hero-actions .btn-primary,.artist-hero-actions .btn-secondary{border-radius:var(--radius-full);min-height:42px;transition:all var(--transition-normal);letter-spacing:.04em;text-transform:uppercase;justify-content:center;align-items:center;gap:.45rem;padding:.58rem 1rem;font-size:.82rem;font-weight:700;display:flex}.artist-hero-actions .btn-primary{background:var(--primary);color:var(--primary-foreground);border:none;box-shadow:0 4px 14px #00000059}.artist-hero-actions .btn-primary:hover{background:color-mix(in srgb, var(--primary) 88%, white);transform:scale(1.08)}.artist-hero-actions .btn-secondary{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #ffffff2e}.artist-hero-actions .btn-secondary:hover,.artist-hero-actions .btn-secondary.active{color:#fff;background:#ffffff2e;border-color:#ffffff47;transform:scale(1.08)}.artist-hero-actions button span{display:inline}.artist-hero-actions svg{width:16px;height:16px}#page-artist .artist-hero-content{align-items:flex-end}#page-artist .artist-hero-content .artist-hero-meta,#page-artist .artist-hero-content .artist-hero-actions{display:none!important}.artist-about-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;margin:.2rem 0 .9rem;display:flex}.artist-about-meta{letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb, var(--foreground) 72%, transparent);flex-wrap:wrap;align-items:center;gap:.6rem;font-size:.86rem;display:flex}.artist-about-meta .artist-tags{flex-wrap:wrap;gap:.45rem;display:flex}.artist-about-meta .artist-tag{border:1px solid color-mix(in srgb, var(--border) 72%, transparent);border-radius:var(--radius-full);background:color-mix(in srgb, var(--secondary) 62%, transparent);color:color-mix(in srgb, var(--foreground) 68%, transparent);padding:.15rem .55rem}.artist-about-actions{align-items:center;gap:.45rem;margin-left:auto;display:flex}.artist-about-actions .btn-primary,.artist-about-actions .btn-secondary{min-height:38px;padding:.45rem .78rem;font-size:.72rem}@media (width<=768px){.artist-hero-header{height:52vh;min-height:360px;max-height:480px;margin-left:calc(-1 * var(--page-padding-x,1rem));margin-right:calc(-1 * var(--page-padding-x,1rem));margin-top:calc(-1 * var(--page-padding-y,1rem));width:calc(100% + var(--page-padding-x,1rem) * 2);border-radius:0}.artist-hero-header:before,.artist-hero-header:after{display:none}.artist-hero-background{width:100%;left:0;transform:none}.artist-hero-overlay{background:var(--background)}.artist-hero-content{padding:var(--spacing-lg) var(--page-padding-x,1rem);align-items:flex-start;gap:var(--spacing-sm);flex-direction:column}.artist-hero-title{font-size:clamp(1.8rem,7vw,2.8rem)}.artist-hero-title.long-title{font-size:clamp(1.5rem,5.5vw,2.2rem)}.artist-hero-actions{gap:.4rem}.artist-hero-actions .btn-primary,.artist-hero-actions .btn-secondary{min-height:40px;padding:.5rem .75rem;font-size:.74rem}.artist-about-top{flex-direction:column;align-items:flex-start}.artist-about-actions{margin-left:0}}#page-friends.friends-redesign{padding:0}#page-friends.friends-redesign.page.active{--friends-shell-border:color-mix(in srgb, var(--border) 74%, transparent);--friends-shell-bg:var(--background);--friends-shell-shadow:0 22px 48px #00000042;--friends-accent-bg:color-mix(in srgb, var(--primary) 18%, transparent);--friends-accent-border:color-mix(in srgb, var(--primary) 40%, transparent);grid-template-columns:minmax(0,1.52fr) minmax(320px,1fr);grid-template-areas:"hero discover""friends collab""requests collab""shared shared";align-items:start;gap:.9rem;max-width:1320px;margin:0 auto;padding:.2rem .55rem 2.8rem;display:grid}#page-friends.friends-redesign.page.active .friends-layout-hero{grid-area:hero;margin-bottom:0}#page-friends.friends-redesign.page.active .friends-layout-friends{grid-area:friends}#page-friends.friends-redesign.page.active .friends-layout-requests{grid-area:requests}#page-friends.friends-redesign.page.active .friends-layout-discover{grid-area:discover}#page-friends.friends-redesign.page.active .friends-layout-shared{grid-area:shared}#page-friends.friends-redesign.page.active .friends-layout-collab{grid-area:collab}#page-friends.friends-redesign .friends-layout-friends,#page-friends.friends-redesign .friends-layout-requests,#page-friends.friends-redesign .friends-layout-discover,#page-friends.friends-redesign .friends-layout-shared,#page-friends.friends-redesign .friends-layout-collab{border:1px solid var(--friends-shell-border);background:var(--friends-shell-bg);box-shadow:var(--friends-shell-shadow);border-radius:1.18rem;padding:.82rem;overflow:hidden}#page-friends.friends-redesign .friends-hero{border:1px solid var(--friends-shell-border);box-shadow:var(--friends-shell-shadow);border-radius:1.2rem;min-height:0;padding:1.05rem 1.1rem}#page-friends.friends-redesign .friends-hero:before,#page-friends.friends-redesign .friends-hero:after{display:none}#page-friends.friends-redesign .friends-hero-title{letter-spacing:-.03em;margin-bottom:.35rem;font-size:clamp(1.85rem,5vw,2.75rem)}#page-friends.friends-redesign .friends-hero-subtitle{max-width:44ch;color:color-mix(in srgb, var(--muted-foreground) 90%, transparent);font-size:.96rem}#page-friends.friends-redesign .friends-hero-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin-top:.72rem;display:grid}#page-friends.friends-redesign .friends-layout-discover,#page-friends.friends-redesign .friends-layout-collab{align-content:start;display:grid}#page-friends.friends-redesign .friends-hero-stat{border:1px solid color-mix(in srgb, var(--border) 78%, transparent);background:color-mix(in srgb, var(--card) 75%, transparent);border-radius:.92rem;padding:.64rem .7rem}#page-friends.friends-redesign .friends-hero-stat .value{font-size:1.04rem;font-weight:700}#page-friends.friends-redesign .friends-hero-stat .label{letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--muted-foreground) 86%, transparent);font-size:.69rem}#page-friends.friends-redesign .friends-section-head,#page-friends.friends-redesign .friends-section-header{border-bottom:1px solid color-mix(in srgb, var(--border) 82%, transparent);justify-content:space-between;align-items:center;margin-bottom:.7rem;padding-bottom:.5rem;display:flex}#page-friends.friends-redesign .section-title,#page-friends.friends-redesign .friends-section-head h2,#page-friends.friends-redesign .friends-section-header h2{letter-spacing:-.02em;margin:0;font-size:1.15rem}#page-friends.friends-redesign .friends-grid,#page-friends.friends-redesign .friends-requests-grid{flex-direction:column;gap:.58rem;display:flex}#page-friends.friends-redesign .friend-card,#page-friends.friends-redesign .friend-request-item,#page-friends.friends-redesign .friend-suggestion-item,#page-friends.friends-redesign .collab-playlist-card{border:1px solid color-mix(in srgb, var(--border) 76%, transparent);background:color-mix(in srgb, var(--card) 84%, transparent);border-radius:.88rem;margin:0;padding:.74rem;box-shadow:0 10px 22px #0000002e}#page-friends.friends-redesign .friend-card:hover,#page-friends.friends-redesign .friend-request-item:hover,#page-friends.friends-redesign .friend-suggestion-item:hover,#page-friends.friends-redesign .collab-playlist-card:hover{border-color:color-mix(in srgb, var(--primary) 42%, var(--border));background:color-mix(in srgb, var(--card) 90%, transparent);transform:translateY(-1px)}#page-friends.friends-redesign .friend-row-shell,#page-friends.friends-redesign .friend-request-shell{grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:.7rem;display:grid}#page-friends.friends-redesign .friend-avatar.friend-avatar-lg,#page-friends.friends-redesign .friend-request-avatar,#page-friends.friends-redesign .friend-suggestion-avatar{border:1px solid color-mix(in srgb, var(--border) 82%, transparent);width:52px;height:52px;box-shadow:0 6px 16px #00000040}#page-friends.friends-redesign .friend-card-top{align-items:center;gap:.6rem;display:flex}#page-friends.friends-redesign .friend-name,#page-friends.friends-redesign .friend-request-name,#page-friends.friends-redesign .friend-suggestion-name{font-weight:650}#page-friends.friends-redesign .friend-username,#page-friends.friends-redesign .friend-request-username,#page-friends.friends-redesign .friend-suggestion-username{color:color-mix(in srgb, var(--muted-foreground) 94%, transparent);font-size:.82rem}#page-friends.friends-redesign .friend-last-active,#page-friends.friends-redesign .friend-status-track{margin-top:.3rem;font-size:.81rem}#page-friends.friends-redesign .friend-presence-pill{border:1px solid color-mix(in srgb, var(--border) 75%, transparent);background:color-mix(in srgb, var(--secondary) 35%, transparent);color:color-mix(in srgb, var(--foreground) 90%, transparent);letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:.22rem .5rem;font-size:.62rem}#page-friends.friends-redesign .friend-presence-pill.active{border-color:var(--friends-accent-border);background:var(--friends-accent-bg)}#page-friends.friends-redesign .friend-request-type,#page-friends.friends-redesign .friend-requests-subtitle{text-transform:uppercase;letter-spacing:.09em;color:color-mix(in srgb, var(--muted-foreground) 88%, transparent);margin-bottom:.28rem;font-size:.68rem}#page-friends.friends-redesign .friend-requests-subtitle{margin:1rem 0 .35rem}#page-friends.friends-redesign .friend-request-actions,#page-friends.friends-redesign .friend-suggestion-actions{gap:.42rem;display:flex}#page-friends.friends-redesign .friends-empty-state,#page-friends.friends-redesign #no-collab-playlists-message{border:1px dashed color-mix(in srgb, var(--border) 80%, transparent);background:color-mix(in srgb, var(--card) 72%, transparent);border-radius:.95rem;padding:1.5rem 1rem}#page-friends.friends-redesign .friends-discover-panel{border:1px solid color-mix(in srgb, var(--border) 80%, transparent);background:color-mix(in srgb, var(--card) 75%, transparent);box-shadow:none;border-radius:.95rem;padding:.82rem}#page-friends.friends-redesign #friends-discover-input{border-color:color-mix(in srgb, var(--border) 88%, transparent);border-radius:.8rem}#page-friends.friends-redesign .friends-suggestions-status{margin-top:.58rem;font-size:.81rem}#page-friends.friends-redesign .friends-suggestions-list{gap:.5rem;margin-top:.52rem}#page-friends.friends-redesign #collab-playlists-grid{flex-direction:column;gap:.55rem;display:flex}#page-friends.friends-redesign .collab-playlist-card{cursor:pointer;grid-template-columns:68px minmax(0,1fr) auto;align-items:center;gap:.72rem;display:grid}#page-friends.friends-redesign .collab-playlist-media{border-radius:.8rem;width:68px;height:68px;position:relative;overflow:hidden}#page-friends.friends-redesign .collab-playlist-cover{object-fit:cover;width:100%;height:100%}#page-friends.friends-redesign .collab-play-btn{width:34px;height:34px;bottom:6px;right:6px}#page-friends.friends-redesign .collab-playlist-title{margin-bottom:.24rem;font-size:.98rem;font-weight:670}#page-friends.friends-redesign .collab-playlist-meta-row{flex-wrap:wrap;gap:.35rem;display:flex}#page-friends.friends-redesign .collab-playlist-chip{border:1px solid color-mix(in srgb, var(--border) 80%, transparent);background:color-mix(in srgb, var(--secondary) 34%, transparent);color:color-mix(in srgb, var(--muted-foreground) 92%, transparent);border-radius:999px;padding:.18rem .48rem;font-size:.72rem}#page-friends.friends-redesign .collab-playlist-subtitle{color:color-mix(in srgb, var(--muted-foreground) 87%, transparent);margin-top:.28rem;font-size:.78rem}#page-friends.friends-redesign .collab-playlist-chevron{letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--muted-foreground) 88%, transparent);font-size:.72rem}#page-friends.friends-redesign .btn-primary,#page-friends.friends-redesign .btn-secondary{border-radius:999px;min-height:34px;padding:.36rem .9rem;font-size:.78rem}#page-friends.friends-redesign .btn-secondary{background:color-mix(in srgb, var(--secondary) 40%, transparent)}@media (width<=1120px){#page-friends.friends-redesign.page.active{grid-template-columns:minmax(0,1fr);grid-template-areas:"hero""discover""friends""requests""collab""shared";gap:.75rem;padding:.15rem .2rem 4rem}#page-friends.friends-redesign.page.active .friends-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){#page-friends.friends-redesign.page.active{gap:.56rem;padding:.08rem .08rem 3.8rem}#page-friends.friends-redesign.page.active .friends-layout-friends,#page-friends.friends-redesign.page.active .friends-layout-requests,#page-friends.friends-redesign.page.active .friends-layout-discover,#page-friends.friends-redesign.page.active .friends-layout-shared,#page-friends.friends-redesign.page.active .friends-layout-collab{border-radius:1rem;min-width:0;padding:.66rem}#page-friends.friends-redesign.page.active .friends-section-head,#page-friends.friends-redesign.page.active .friends-section-header{margin-bottom:.72rem;padding-bottom:.58rem}#page-friends.friends-redesign.page.active .section-title,#page-friends.friends-redesign.page.active .friends-section-head h2,#page-friends.friends-redesign.page.active .friends-section-header h2{font-size:1.02rem}#page-friends.friends-redesign.page.active .friend-row-shell,#page-friends.friends-redesign.page.active .friend-request-shell{grid-template-columns:52px minmax(0,1fr) auto;gap:.66rem}#page-friends.friends-redesign.page.active .friend-card-actions,#page-friends.friends-redesign.page.active .friend-request-actions,#page-friends.friends-redesign.page.active .friend-suggestion-actions{grid-column:auto;justify-content:flex-start;margin-top:0}#page-friends.friends-redesign.page.active .friend-card,#page-friends.friends-redesign.page.active .friend-request-item{padding:.68rem}#page-friends.friends-redesign.page.active .friend-card .btn-secondary,#page-friends.friends-redesign.page.active .friend-request-actions .btn-secondary,#page-friends.friends-redesign.page.active .friend-request-actions .btn-primary{min-height:30px;padding:.28rem .74rem;font-size:.74rem}#page-friends.friends-redesign.page.active .collab-playlist-card{grid-template-columns:56px minmax(0,1fr)}#page-friends.friends-redesign.page.active .collab-playlist-media{width:56px;height:56px}#page-friends.friends-redesign.page.active .collab-playlist-chevron{display:none}#page-friends.friends-redesign.page.active .friends-hero{padding:.98rem .92rem}#page-friends.friends-redesign.page.active .friends-hero-title{font-size:clamp(1.38rem,7vw,1.82rem)}#page-friends.friends-redesign.page.active .friends-hero-subtitle{font-size:.9rem}#page-friends.friends-redesign.page.active .friends-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.48rem;margin-top:.6rem}#page-friends.friends-redesign.page.active .friends-hero-stat{padding:.5rem .56rem}#page-friends.friends-redesign.page.active .friends-hero-stat .value{font-size:.93rem}#page-friends.friends-redesign.page.active .friends-hero-stat .label{font-size:.64rem}}@media (width<=520px){#page-friends.friends-redesign.page.active .friend-row-shell,#page-friends.friends-redesign.page.active .friend-request-shell{grid-template-columns:48px minmax(0,1fr);row-gap:.35rem}#page-friends.friends-redesign.page.active .friend-card-actions,#page-friends.friends-redesign.page.active .friend-request-actions,#page-friends.friends-redesign.page.active .friend-suggestion-actions{grid-column:2/3;justify-content:flex-start}#page-friends.friends-redesign.page.active .friend-avatar.friend-avatar-lg,#page-friends.friends-redesign.page.active .friend-request-avatar{width:48px;height:48px}}.card,.card-image-wrapper,.card-image,.card-collage,.addon-card,.billboard-album-card,.collab-playlist-card,.friend-card,.friend-card-shell,.home-friend-activity-card,.home-recent-card,.jump-back-card,.profile-card,.search-artist-card,.account-stat-card,.account-stats-list-card,.recently-played-cards .card,.recently-played-cards .card-image-wrapper,.carousel-item-large .card-image,.carousel-item-album .card-image{border-radius:15px}#page-home #home-recommended-albums>.card{border-radius:15px;overflow:hidden}#page-home #home-recommended-albums>.card .card-image-wrapper,#page-home #home-recommended-albums>.card .card-image{border-radius:15px 15px 0 0}#page-friends,#page-collabplaylist,#page-profile,#page-account,#sidebar-nav-profile,#sidebar-nav-friends,#header-nav-friends,.header-account-control,#header-account-btn,.circular-volume,#circular-volume,#fs-circular-volume,#edit-profile-modal,#add-friend-modal,#create-collab-playlist-modal,#edit-collab-playlist-modal,#library-collab-playlists-section,[data-action=add-to-collab-playlist],.friend-activity,.friends-section,.collab-playlist-section,#sync-status-indicator,.sync-indicator,#auth-panel,.account-panel,.home-friend-activity-card,.home-friend-activity-section,#home-friends-activity-container{display:none!important}body,.app-container,.main-content,.page,.sidebar,.now-playing-bar{background-image:none!important}.horizontal-scroll-carousel{scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;flex-direction:row!important;gap:1.25rem!important;padding:.5rem .25rem 1rem!important;display:flex!important;overflow:auto hidden!important}.horizontal-scroll-carousel::-webkit-scrollbar{display:none}.carousel-arrow-btn{background:var(--card);border:1px solid var(--border);color:var(--foreground);border-radius:var(--radius);cursor:pointer;width:32px;height:32px;transition:all var(--transition-fast);justify-content:center;align-items:center;font-size:1rem;display:inline-flex}.carousel-arrow-btn:hover{background:var(--secondary);border-color:var(--highlight);color:var(--highlight)}.carousel-artist-card{text-align:center;cursor:pointer;transition:transform var(--transition-fast);-webkit-user-select:none;user-select:none;flex-direction:column;flex:0 0 130px;align-items:center;text-decoration:none;display:flex}.carousel-artist-card:hover{transform:translateY(-4px)}.carousel-artist-avatar{object-fit:cover;background:var(--secondary);border:2px solid var(--border);width:110px;height:110px;transition:border-color var(--transition-fast);border-radius:50%;margin-bottom:.6rem}.carousel-artist-card:hover .carousel-artist-avatar{border-color:var(--highlight)}.carousel-artist-name{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;width:100%;padding:0 4px;font-size:.85rem;font-weight:600;overflow:hidden}.carousel-artist-sub{color:var(--muted-foreground);margin-top:.15rem;font-size:.72rem}.horizontal-scroll-carousel .album-card{flex:0 0 160px!important;min-width:160px!important}.search-load-more-section{justify-content:center;align-items:center;margin-top:1rem;padding:2rem 0;display:flex}.search-load-more-btn{background:var(--card);color:var(--foreground);border:1px solid var(--border);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-md);border-radius:9999px;align-items:center;gap:.75rem;padding:.75rem 2.2rem;font-size:.95rem;font-weight:600;display:inline-flex}.search-load-more-btn:hover{background:var(--secondary);border-color:var(--highlight);color:var(--highlight);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.search-load-more-btn .load-more-icon{transition:transform var(--transition-fast);font-size:1.25rem;display:inline-block}.search-load-more-btn:hover .load-more-icon{transform:translateY(3px)}
