@tailwind base;@tailwind components;@tailwind utilities;:root{--vh:1vh;--safe-area-inset-top:env(safe-area-inset-top,0px);--safe-area-inset-bottom:env(safe-area-inset-bottom,0px);--safe-area-inset-left:env(safe-area-inset-left,0px);--safe-area-inset-right:env(safe-area-inset-right,0px)}@supports (height:100dvh){:root{--vh:1dvh}}@layer base{:root{--background:0 0% 3.9%;--foreground:0 0% 98%;--card:0 0% 3.9%;--card-foreground:0 0% 98%;--popover:0 0% 3.9%;--popover-foreground:0 0% 98%;--primary:142.1 76.2% 36.3%;--primary-foreground:355.7 100% 97.3%;--secondary:240 3.7% 15.9%;--secondary-foreground:0 0% 98%;--muted:240 3.7% 15.9%;--muted-foreground:240 5% 64.9%;--accent:240 3.7% 15.9%;--accent-foreground:0 0% 98%;--destructive:0 62.8% 30.6%;--destructive-foreground:0 0% 98%;--border:240 3.7% 15.9%;--input:240 3.7% 15.9%;--ring:142.1 76.2% 36.3%;--radius:0.5rem}*{@apply border-border;box-sizing:border-box}html{touch-action:manipulation;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{@apply bg-background text-foreground;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none;padding-left:var(--safe-area-inset-left);padding-right:var(--safe-area-inset-right)}}*{-webkit-tap-highlight-color:transparent}.slider-root,[role=slider],input[type=range]{touch-action:none!important}a:not(.no-min-size),button:not(.no-min-size){min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:rgba(0,0,0,.3);border-radius:5px}::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.3);border-radius:5px;border:2px solid rgba(0,0,0,.3)}::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.5)}*{scrollbar-width:thin;scrollbar-color:hsla(0,0%,100%,.3) rgba(0,0,0,.3)}.glass{background:hsla(0,0%,100%,.05);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.glass,.glass-dark{border:1px solid hsla(0,0%,100%,.1)}.glass-dark{background:rgba(0,0,0,.6);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.dynamic-gradient{background:linear-gradient(135deg,var(--gradient-from,#1db954) 0,var(--gradient-via,#1ed760) 50%,var(--gradient-to,#1aa34a) 100%);background-size:200% 200%;animation:gradientShift 8s ease infinite}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.hover-lift{transition:transform .2s ease,box-shadow .2s ease}@media (hover:hover){.hover-lift:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.3)}.hover\:scale-102:hover{transform:scale(1.02)}}.play-pulse{animation:playPulse 2s infinite}@keyframes playPulse{0%{box-shadow:0 0 0 0 rgba(29,185,84,.7)}70%{box-shadow:0 0 0 10px rgba(29,185,84,0)}to{box-shadow:0 0 0 0 rgba(29,185,84,0)}}:focus-visible{outline:2px solid #1db954;outline-offset:2px}::selection{background-color:#1db954;color:#fff}.scroll-smooth{-webkit-overflow-scrolling:touch}.optimized-scroll{will-change:scroll-position}.gpu-accelerated,.optimized-scroll{transform:translateZ(0);-webkit-transform:translateZ(0)}.gpu-accelerated{backface-visibility:hidden;-webkit-backface-visibility:hidden;perspective:1000px;-webkit-perspective:1000px;will-change:transform}.track-item{contain:layout style paint;content-visibility:auto;will-change:background-color}.scrolling *{pointer-events:none!important;animation:none!important;transition:none!important}.track-list-container{padding-bottom:0!important;margin-bottom:0!important}.main-content-area{padding-bottom:.5rem}.player-bar-spacer{height:0;margin:0;padding:0}@media (max-width:640px){html{font-size:14px}}@media (min-width:641px) and (max-width:1024px){html{font-size:15px}}@media (min-width:1025px){html{font-size:16px}}@media (hover:none){a:active,button:active{opacity:.7;transform:scale(.98)}}.safe-bottom{padding-bottom:var(--safe-area-inset-bottom)}.safe-top{padding-top:var(--safe-area-inset-top)}.safe-left{padding-left:var(--safe-area-inset-left)}.safe-right{padding-right:var(--safe-area-inset-right)}