*{-webkit-tap-highlight-color:transparent;box-sizing:border-box;margin:0;padding:0}:root{--bg-app:#000000;--primary-dark:#000000;--primary-light:#1C1C1E;--surface:#1e1e1eb8;--glass-bg:#3c3c3c73;--glass-border:#ffffff26;--glass-highlight:#ffffff1a;--glass-shadow:0 12px 40px rgba(0, 0, 0, 0.45);--glass-shadow-sm:0 4px 12px rgba(0, 0, 0, 0.2);--text-primary:#FFFFFF;--text-secondary:#FFFFFF;--text-tertiary:#FFFFFF;--accent:#7B68EE;--accent-rgb:123,104,238;--accent-light:#9F8FEE;--card-radius:20px;--element-radius:14px;--blur-amt:25px;--transition:all 0.2s cubic-bezier(0.25, 0.1, 0.25, 1);--sidebar-width:280px;--header-height:70px;--bottom-nav-height:65px;--player-height-desktop:90px;--player-height-mobile:72px;--content-padding:2rem;--content-padding-mobile:1rem;--layout-gap:20px}body.theme-crimson{--accent:#DC143C;--accent-rgb:220,20,60}body.theme-lime{--accent:#32CD32;--accent-rgb:50,205,50}body.theme-sky-blue{--accent:#00BFFF;--accent-rgb:0,191,255}body.theme-teal{--accent:#20B2AA;--accent-rgb:32,178,170}body.theme-orchid{--accent:#BA55D3;--accent-rgb:186,85,211}body.theme-midnight{--accent:#0047AB;--accent-rgb:0,71,171}body,html{height:100dvh;font-family:Coves,sans-serif;background:var(--primary-dark);color:var(--text-primary);overflow:hidden;user-select:none;-webkit-user-select:none;transition:background 1s ease-in-out}.fab,.far,.fas,i{color:inherit}button,input,select,textarea{font-family:Coves,sans-serif}img{-webkit-touch-callout:none;user-select:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:rgba(0,0,0,.2)}::-webkit-scrollbar-thumb{background:var(--accent);border-radius:5px;border:2px solid transparent;background-clip:content-box}@font-face{font-family:Coves;src:url('/assets/fonts/Coves-Light.otf') format('opentype');font-weight:400;font-display:swap}@font-face{font-family:Coves;src:url('/assets/fonts/Coves-Bold.otf') format('opentype');font-weight:700;font-display:swap}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{from{transform:translateY(-100%) scale(.8);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes slideUp{from{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(-100%) scale(.8);opacity:0}}@keyframes slideInFromRight{from{transform:translateX(50%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes slideOutToRight{from{transform:translateX(0);opacity:1}to{transform:translateX(50%);opacity:0}}@keyframes pulse-animation{0%,100%{transform:scale(1);box-shadow:0 4px 15px rgba(var(--accent-rgb),.3)}50%{transform:scale(1.05);box-shadow:0 6px 25px rgba(var(--accent-rgb),.4)}}@keyframes subtle-scale-in{from{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes tab-switch{from{opacity:.8;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes slideInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes ripple{to{transform:scale(4);opacity:0}}@keyframes subtle-glow{0%,100%{box-shadow:0 0 4px rgba(var(--accent-rgb),.15);border-color:var(--glass-border)}50%{box-shadow:0 0 12px rgba(var(--accent-rgb),.35);border-color:rgba(var(--accent-rgb),.6)}}.slide-out-left{animation:slideOutToLeft .3s forwards cubic-bezier(.4,0,.2,1)}.slide-in-right{animation:slideInFromRight .3s forwards cubic-bezier(.4,0,.2,1)}.slide-out-right{animation:slideOutToRight .3s forwards cubic-bezier(.4,0,.2,1)}.slide-in-left{animation:slideInFromLeft .3s forwards cubic-bezier(.4,0,.2,1)}.ripple{position:absolute;border-radius:50%;background:rgba(255,255,255,.4);transform:scale(0);animation:ripple .6s linear}.theme-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:1rem;padding-top:1rem}.theme-swatch{width:40px;height:40px;border-radius:50%;cursor:pointer;border:3px solid transparent;transition:all .2s ease}.theme-swatch.active{border-color:var(--accent);transform:scale(1.1)}.app-container{display:flex;height:100dvh;position:relative;gap:var(--layout-gap);padding:20px;background:radial-gradient(at 0 0,#100e14 0,transparent 50%),radial-gradient(at 50% 0,#2e3d6a 0,transparent 50%),radial-gradient(at 100% 0,#712741 0,transparent 50%);background-color:var(--bg-app)}.sidebar{background:var(--surface);backdrop-filter:blur(var(--blur-amt)) saturate(180%);-webkit-backdrop-filter:blur(var(--blur-amt)) saturate(180%);border:1px solid var(--glass-border);border-top:1px solid var(--glass-highlight);border-radius:var(--card-radius);width:var(--sidebar-width);padding:1.5rem;display:flex;flex-direction:column;box-shadow:var(--glass-shadow);margin-right:0;height:100dvh;transition:var(--transition)}.sidebar-header{margin-bottom:2rem;text-align:center;padding-bottom:1rem;border-bottom:1px solid var(--glass-border)}.app-logo{height:70px;width:auto}.app-logo-mobile{display:none;height:70px;margin-bottom:.5rem}.nav-list{display:flex;flex-direction:column;gap:.8rem}.nav-btn{background:0 0;border:1px solid transparent;color:var(--text-secondary);font-size:1.1rem;text-align:left;cursor:pointer;transition:var(--transition);padding:1rem 1.2rem;align-items:center;gap:1rem;position:relative;overflow:hidden}.nav-btn.active{color:var(--accent);background:rgba(var(--accent-rgb),.2);border-color:transparent;box-shadow:none;transform:translateY(-2px)}.nav-btn i{min-width:24px;text-align:center;font-size:1.2rem}.main-content{flex-grow:1;background:var(--surface);backdrop-filter:blur(var(--blur-amt)) saturate(180%);-webkit-backdrop-filter:blur(var(--blur-amt)) saturate(180%);border:1px solid var(--glass-border);border-top:1px solid var(--glass-highlight);border-radius:var(--card-radius);padding:2rem 2.5rem 12rem 2.5rem;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;min-width:0;overscroll-behavior-x:contain;box-shadow:var(--glass-shadow);height:100%;-webkit-overflow-scrolling:touch;position:relative}.main-content::-webkit-scrollbar{width:8px}.main-content::-webkit-scrollbar-track{background:0 0}.main-content::-webkit-scrollbar-thumb{background:0 0;border-radius:4px;transition:background .3s ease-in-out}.main-content.scrolling::-webkit-scrollbar-thumb{background:var(--accent)}.search-bar{position:relative;display:flex;gap:.8rem}.search-header{margin-bottom:1rem}.search-input-container{position:relative;flex-grow:1}.search-bar input{flex-grow:1;width:100%;border-radius:12px;border:1px solid transparent;padding:.9rem 1.2rem;background:rgba(0,0,0,.2);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);color:var(--text-primary);font-size:1rem;transition:var(--transition);user-select:text}.search-bar input:focus{outline:0;background:rgba(0,0,0,.4);border-color:var(--glass-border);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.3)}.search-bar input::placeholder{color:var(--text-secondary)}.search-bar button{background:var(--accent);border:none;border-radius:50px;width:52px;height:52px;color:#000;font-size:1.3rem;cursor:pointer;transition:var(--transition);box-shadow:0 4px 15px rgba(var(--accent-rgb),.3)}.search-bar button:hover{transform:scale(1.05);box-shadow:0 6px 20px rgba(var(--accent-rgb),.4)}.contextual-search-bar{position:relative;margin-bottom:1rem}.contextual-search-bar i{position:absolute;left:1.2rem;top:50%;transform:translateY(-50%);color:var(--text-secondary)}.contextual-search-bar input{width:100%;border-radius:50px;border:1px solid transparent;padding:.8rem 1.5rem .8rem 3.5rem;background:var(--surface);color:var(--text-primary);font-size:1rem;transition:var(--transition);animation:subtle-glow 4s infinite ease-in-out;user-select:text}.contextual-search-bar input:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.2);background:var(--glass-bg)}.filter-tabs{display:flex;gap:.75rem;margin-bottom:1.5rem}.header-with-action{display:flex;justify-content:space-between;align-items:center;width:100%}.filter-tab-btn{padding:.6rem 1.2rem;border-radius:50px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);color:#fff;font-weight:600;cursor:pointer;transition:all .3s ease}.filter-tab-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);transform:translateY(-2px);box-shadow:0 4px 15px rgba(var(--accent-rgb),.2)}.search-suggestions{display:none;position:absolute;top:calc(100% + 10px);left:0;right:0;background:var(--surface);backdrop-filter:blur(8px);border:1px solid var(--glass-border);border-radius:var(--card-radius);margin-top:.5rem;z-index:1001;max-height:300px;overflow-y:auto}.search-suggestions-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--glass-border)}.search-suggestions-header span{color:var(--text-secondary);font-size:.9em}.clear-history-btn{background:0 0;border:none;color:var(--text-secondary);padding:4px 8px;cursor:pointer;border-radius:var(--element-radius);transition:color .2s,background-color .2s}.clear-history-btn:hover{color:var(--text-primary);background-color:rgba(255,255,255,.1)}.search-suggestions::-webkit-scrollbar{width:6px}.search-suggestions::-webkit-scrollbar-thumb{background:var(--accent);border-radius:3px}.search-suggestions.active{display:block}.search-history-list{max-height:165px;overflow-y:auto;overscroll-behavior:contain}.search-history-list::-webkit-scrollbar{width:8px}.suggestion-item{padding:.75rem 1.5rem;cursor:pointer;display:flex;align-items:center;gap:.8rem;transition:var(--transition)}.suggestion-item img{width:40px;height:40px;border-radius:8px;object-fit:cover;flex-shrink:0}.suggestion-item div{display:flex;flex-direction:column;min-width:0}.suggestion-item small,.suggestion-item strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.content-section{display:none;flex-direction:column;position:relative}.content-section.active{display:flex;animation:fadeIn .5s cubic-bezier(.25,.46,.45,.94);gap:1.5rem}.content-section[id*="-details"].active{animation:slideInFromRight .5s cubic-bezier(.34,1.56,.64,1) forwards}.search-results-wrapper{display:flex;flex-direction:column;gap:1.5rem}.search-results-wrapper:not([style*="display: flex"]){display:none}.discover-header{display:flex;align-items:center;gap:1rem}h1,h2{margin-bottom:.5rem}h1{font-size:2.2rem;font-weight:700;background:linear-gradient(135deg,var(--accent-light) 0,var(--text-primary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}h2{font-size:1.6rem;font-weight:700;color:var(--text-primary)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.history-controls{display:flex;gap:1rem;margin-bottom:1.5rem;align-items:center}.history-controls .contextual-search-bar{flex-grow:1;margin-bottom:0}.history-group-header{position:sticky;top:-1px;background:rgba(26,28,30,.7);backdrop-filter:blur(10px);padding:.5rem 2rem;margin:1rem -2rem .5rem;font-size:.9rem;font-weight:700;color:var(--text-primary);z-index:1;border-bottom:1px solid var(--glass-border);border-top:1px solid var(--glass-border);box-shadow:0 2px 10px rgba(0,0,0,.1)}@media (hover:hover) and (pointer:fine){.nav-btn:hover{transform:translateY(-2px)}.search-bar button:hover{transform:scale(1.05);box-shadow:0 6px 20px rgba(var(--accent-rgb),.4)}.suggestion-item:hover{background:rgba(255,255,255,.05);color:#fff}.discover-card:hover .play-btn{opacity:1;transform:translateY(0)}.song:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.15);border-color:var(--accent)}.song:hover .play-btn{opacity:1;transform:translate(-50%,-50%) scale(1)}.song:hover img{filter:brightness(.7)}.player-like-btn:hover{color:var(--accent);transform:scale(1.1)}.player-controls button:hover{color:var(--accent);transform:scale(1.05);background:rgba(var(--accent-rgb),.1);outline:0}.library-item:hover{transform:translateY(-3px);box-shadow:var(--glass-shadow);border-color:var(--accent);background:rgba(var(--accent-rgb),.1);color:var(--accent)}.collapse-btn:hover,.details-back-btn:hover,.details-header-actions .icon-btn:hover,.modal-close-btn:hover,.player-options-btn:hover{background:rgba(var(--accent-rgb),.2);transform:scale(1.05)}.now-playing-actions button:hover,.now-playing-controls button:hover{background:rgba(var(--accent-rgb),.1);transform:scale(1.1)}}.back-to-top-btn{position:fixed;bottom:calc(72px + 72px + 25px);right:25px;width:50px;height:50px;background-color:var(--accent);color:#000;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;box-shadow:var(--glass-shadow);cursor:pointer;z-index:99;opacity:0;transform:translateY(20px);visibility:hidden;pointer-events:none;transition:opacity .3s ease,transform .3s ease,visibility .3s}.back-to-top-btn.visible{opacity:1;transform:translateY(0);visibility:visible;pointer-events:auto}.favorite-animation-container{transition:transform .6s cubic-bezier(.55, 0, .85, .36),opacity .6s ease-in}.favorite-animation-container.traveling-to-library{opacity:0}#historyList{padding-top:0}.section-header .settings-btn{padding:.6rem 1rem}.history-header .settings-btn{padding:.6rem 1rem}.section-header h2{margin-bottom:0}.view-all-btn{background:rgba(255,255,255,.1);border:1px solid var(--glass-border);color:var(--text-secondary);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);flex-shrink:0;font-size:1rem}.view-all-btn:hover{background:rgba(var(--accent-rgb),.2);border-color:var(--accent);color:var(--accent);transform:scale(1.05)}.scrollable-row{display:flex;overflow-x:auto;gap:1.5rem;padding:1rem .5rem;margin:0 -.5rem;-webkit-overflow-scrolling:touch}.scrollable-row::-webkit-scrollbar{height:8px}.scrollable-row::-webkit-scrollbar-thumb{background:var(--accent);border-radius:4px}.scrollable-row::-webkit-scrollbar-track{background:rgba(0,0,0,.2)}.discover-card{display:flex;flex-direction:column;width:240px;flex-shrink:0;transition:transform .3s cubic-bezier(.4, 0, .2, 1);animation:subtle-scale-in .5s ease-out both}.search-grid .discover-card{width:100%;flex-shrink:1}.discover-card-art{position:relative;cursor:pointer;border-radius:var(--card-radius);overflow:hidden;box-shadow:var(--glass-shadow)}.discover-card-art img{width:100%;aspect-ratio:1/1;object-fit:cover;transition:transform .4s ease}.discover-card-art .play-btn{position:absolute;bottom:10px;right:10px;width:52px;height:52px;font-size:1.2rem;border-radius:50%;background:var(--accent);color:#000;opacity:0;transform:translateY(10px);transition:all .3s ease}.album,.artist,.playlist,.song{background:var(--glass-bg);backdrop-filter:blur(8px);border:1px solid var(--glass-border);border-radius:var(--card-radius);display:flex;gap:1rem;cursor:pointer;user-select:none;transition:transform .3s cubic-bezier(.4, 0, .2, 1),box-shadow .3s ease,border-color .3s ease;align-items:center;box-shadow:var(--glass-shadow);padding:1rem;position:relative;overflow:hidden}.song-list .song:active{transform:scale(.98);background:rgba(var(--accent-rgb),.1);transition:transform .1s ease,background-color .1s ease}.song.is-playing{background:rgba(var(--dynamic-accent-rgb,var(--accent-rgb)),.15);border-color:rgba(var(--dynamic-accent-rgb,var(--accent-rgb)),.3)}.song.is-playing .song-duration{display:none}.song.is-playing::after{content:none}.album img,.artist img,.playlist img,.song img{width:60px;height:60px;object-fit:cover;border-radius:12px;box-shadow:0 4px 10px rgba(0,0,0,.2);flex-shrink:0;position:relative}.discover-card[data-type=song] .discover-card-art img{border-radius:24px}.discover-card[data-type=album] .discover-card-art img,.discover-card[data-type=artist] .discover-card-art img{border-radius:24px}.discover-card[data-type=playlist] .discover-card-art img{clip-path:inset(0% 0% 0% 0% round 120px)}#artistDetailsHeader .details-header-content .image-container img,.discover-card[data-type=artist] .discover-card-art img{width:100%;height:100%;object-fit:cover}@keyframes cookie-spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}#albumDetailsHeader .details-header-content img,#artistDetailsHeader .details-header-content img,#playlistDetailsHeader .details-header-content img{width:220px;height:220px;border-radius:0;object-fit:cover}#albumDetailsHeader .details-header-content,#artistDetailsHeader .details-header-content,#playlistDetailsHeader .details-header-content,.discover-card-art{position:relative}.details-header-content .image-container{width:220px;height:220px;flex-shrink:0}.song .play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:44px;height:44px;background:rgba(var(--accent-rgb),.8);color:#000;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease,transform .3s ease;z-index:2;margin-left:0}.album div,.artist div,.playlist div,.song div{display:flex;flex-direction:column;flex:1;min-width:0}.album strong,.artist strong,.playlist strong,.song strong{font-weight:600;font-size:1rem;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.album small,.artist small,.playlist small,.song small{color:var(--text-secondary);font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.title-container{display:flex;align-items:center;gap:.5rem;overflow:hidden}.radio-indicator{display:none;color:var(--accent);font-size:.9em;animation:pulse 2s infinite}.radio-mode-active .radio-indicator{display:inline-block}.album button,.artist button,.playlist button,.song button{background:rgba(255,255,255,.1);border:1px solid var(--glass-border);color:var(--text-secondary);border-radius:50%;width:40px;height:40px;font-size:1rem;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;margin-left:auto;flex-shrink:0}.song .remove-from-queue-btn{display:none;margin-left:auto;flex-shrink:0}.song .drag-handle{cursor:grab;color:var(--text-secondary);margin-left:auto;flex-shrink:0}.song-duration{font-size:.9rem;color:var(--text-secondary);margin-left:auto;padding:0 1rem}.card-meta{display:flex;gap:.5rem;align-items:center}.song-list{display:flex;flex-direction:column;gap:.75rem}.song-list::-webkit-scrollbar{width:8px}.song-list::-webkit-scrollbar-thumb{background:var(--accent);border-radius:4px}.song-list::-webkit-scrollbar-track{background:rgba(0,0,0,.2)}.responsive-grid,.search-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1.5rem}@media (min-width:1200px){.responsive-grid,.search-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}@media (min-width:1600px){.responsive-grid,.search-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}.album div,.artist div{align-items:center}.album img,.artist img{width:160px;height:160px;margin-bottom:1rem}.bottom-player{position:fixed;bottom:var(--layout-gap);left:var(--layout-gap);right:var(--layout-gap);background:rgba(22,27,34,.6);backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--card-radius);padding:1rem 1.5rem;color:var(--text-primary);display:grid;grid-template-columns:1fr 1.5fr 1fr;align-items:center;box-shadow:var(--glass-shadow);z-index:100;transition:transform .3s cubic-bezier(.4, 0, .2, 1),opacity .3s ease;transform:translateY(120%);opacity:0;pointer-events:none}.bottom-player.visible{transform:translateY(0);opacity:1;pointer-events:auto}.player-song-info{display:flex;align-items:center;gap:1rem;grid-column:1/2;min-width:0}.player-song-info img{width:56px;height:56px;border-radius:var(--element-radius);object-fit:cover;box-shadow:0 4px 15px rgba(0,0,0,.2);transition:transform .4s ease}.player-text{flex:1;flex-direction:column;min-width:0}#currentSongArtist,#currentSongTitle{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#currentSongArtist{font-size:.85rem;color:var(--text-secondary)}.player-center-section{display:flex;flex-direction:column;align-items:center;gap:.5rem;grid-column:2/3;max-width:600px}.player-controls{display:flex;align-items:center;gap:.8rem;justify-content:center}.player-right-controls{grid-column:3/4;display:flex;align-items:center;gap:1rem;justify-content:flex-end}.player-right-controls button{color:var(--text-primary)}.volume-control{display:flex;align-items:center;gap:.75rem;justify-content:flex-end}.volume-control i{font-size:1.2rem;transition:var(--transition)}#progressBar,.now-playing-progress input[type=range],.volume-control input[type=range]{-webkit-appearance:none;appearance:none;background:0 0;cursor:pointer}.now-playing-progress input[type=range]::-webkit-slider-runnable-track,.player-center-section .progress-container input[type=range]::-webkit-slider-runnable-track,.volume-control input[type=range]::-webkit-slider-runnable-track{background:rgba(255,255,255,.2);height:6px;border-radius:3px;transition:height .2s ease}.player-center-section .progress-container input[type=range]::-webkit-slider-runnable-track{background:var(--glass-bg)}.now-playing-progress input[type=range]::-webkit-slider-thumb,.player-center-section .progress-container input[type=range]::-webkit-slider-thumb,.volume-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;margin-top:-5px;background-color:#fff;height:16px;width:16px;border-radius:50%;border:none;box-shadow:0 2px 5px rgba(0,0,0,.2);transition:transform .2s cubic-bezier(.4, 0, .2, 1)}.bottom-player .volume-control input[type=range]{width:100px;background:linear-gradient(to right,var(--accent) 0,var(--accent) var(--volume-progress,100%),var(--glass-bg) var(--volume-progress,100%),var(--glass-bg) 100%)}.bottom-player .volume-control input[type=range]::-webkit-slider-runnable-track{background:var(--glass-bg);height:4px;border-radius:2px}.bottom-player .volume-control input[type=range]::-webkit-slider-thumb{margin-top:-6px;background-color:var(--accent);border:2px solid var(--primary-dark)}.player-controls button{color:var(--text-secondary);background:0 0;border:none;border-radius:50%;width:40px;cursor:pointer;position:relative;overflow:hidden;transition:var(--transition);display:flex;align-items:center;justify-content:center}.player-controls button.next-btn,.player-controls button.prev-btn{font-size:1.5rem}.player-controls button.active,.player-controls button:hover{color:var(--accent);background:rgba(var(--accent-rgb),.2);transform:scale(1.05);outline:0}.player-controls button:active{transform:scale(.9);transition:transform .1s ease}#playPauseBtn{width:48px;height:48px;font-size:1.6rem;background:var(--accent);color:#fff;box-shadow:var(--glass-shadow)}.progress-container{display:flex;align-items:center;gap:1rem;width:100%}#progressBar{display:block}.player-center-section .progress-container input[type=range]{width:100%;height:5px;cursor:pointer;background:linear-gradient(to right,var(--accent) 0,var(--accent) var(--progress,0),var(--glass-bg) var(--progress,0),var(--glass-bg) 100%);outline:0;border:none}.player-mobile-controls{display:none}.player-like-btn{background:0 0;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;transition:var(--transition)}.bottom-player .player-like-btn{display:block}@media (max-width:1024px){.bottom-player .player-like-btn{display:none!important}}.player-like-btn.active .fa-heart{font-family:"Font Awesome 7 Free";font-weight:900;color:var(--accent)}.player-like-btn.active{transform:scale(1.1)}.settings-accordion-container{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.settings-accordion{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--element-radius);transition:background .3s ease}.settings-accordion[open]{background:var(--surface)}.settings-accordion summary{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;font-size:1.2rem;font-weight:700;cursor:pointer;list-style:none;transition:color .3s ease}.settings-accordion[open] summary{color:var(--accent)}.settings-accordion summary::-webkit-details-marker{display:none}.settings-accordion summary::after{content:'\f078';font-family:'Font Awesome 7 Free';font-weight:900;margin-left:auto;transition:transform .3s ease}.settings-accordion[open] summary::after{transform:rotate(180deg)}.settings-accordion-content{padding:0 1.5rem 1.5rem;border-top:1px solid var(--glass-border)}.settings-accordion-content .settings-option:first-child{padding-top:1.5rem}.settings-accordion-content .settings-option:last-child{border-bottom:none;padding-bottom:0}.settings-option{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid var(--glass-border)}.settings-option h3{font-size:1.1rem;margin-bottom:.25rem}.settings-option p{color:var(--text-secondary);font-size:.9rem}.settings-btn{background:var(--surface);border:1px solid var(--glass-border);color:var(--text-primary);font-size:.9rem;font-weight:600;cursor:pointer;transition:var(--transition);padding:.7rem 1.2rem;border-radius:var(--element-radius);display:flex;align-items:center;gap:.5rem}.settings-btn:hover{background:rgba(var(--accent-rgb),.1);border-color:var(--accent)}.settings-btn.danger-btn{background:rgba(239,68,68,.15);border-color:rgba(239,68,68,.5);color:#fff;box-shadow:0 4px 15px rgba(239,68,68,.1)}.settings-btn.danger-btn:hover{background:rgba(239,68,68,.25);border-color:#ef4444;transform:translateY(-2px);box-shadow:0 6px 20px rgba(239,68,68,.2)}.settings-btn.primary-action{background:rgba(var(--accent-rgb),.15);border-color:var(--accent);color:var(--accent);box-shadow:0 4px 15px rgba(var(--accent-rgb),.1)}.settings-btn.primary-action:hover{background:rgba(var(--accent-rgb),.25);box-shadow:0 6px 20px rgba(var(--accent-rgb),.2);transform:translateY(-2px)}.settings-btn.reset-btn{background:#e74c3c}.settings-select{-webkit-appearance:none;appearance:none;background:rgba(255,255,255,.1);border:1px solid var(--glass-border);border-radius:8px;padding:.6rem 2.5rem .6rem 1rem;color:var(--text-primary);font-size:.9rem;font-weight:600;cursor:pointer;background-image:url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23C4C7CF%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E');background-repeat:no-repeat;background-position:right 1rem center;background-size:10px;transition:var(--transition)}.settings-select:hover{border-color:var(--accent)}.toggle-switch{position:relative;display:inline-block;width:52px;height:30px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--surface);border:1px solid var(--glass-border);transition:background-color .4s cubic-bezier(.4, 0, .2, 1);border-radius:30px}.slider:before{position:absolute;content:"";height:22px;width:22px;left:3px;bottom:3px;background-color:#fff;transition:transform .4s cubic-bezier(.4, 0, .2, 1);border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}input:checked+.slider{background-color:var(--accent);border-color:var(--accent)}input:focus+.slider{box-shadow:0 0 1px var(--accent)}input:checked+.slider:before{transform:translateX(22px)}.about-section{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--element-radius);padding:2rem;display:flex;flex-direction:column;align-items:center;text-align:center}.about-logo{width:100px;height:auto;margin-bottom:1rem}.about-section h3{font-size:1.5rem;color:var(--text-primary)}.about-section p{color:var(--text-secondary);max-width:400px}.about-links{display:flex;gap:1.5rem;margin-top:1.5rem;flex-wrap:wrap;justify-content:center}.about-links a{color:var(--accent);text-decoration:none;font-weight:600;display:flex;align-items:center;gap:.5rem}.creator-info{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--glass-border);width:100%;max-width:400px}.creator-info p{font-style:italic}.creator-info .last-updated{font-size:.8rem;margin-top:.5rem;font-style:normal}.creator-info .contact-link{color:var(--accent);text-decoration:none;font-weight:600;display:inline-flex;align-items:center;gap:.5rem;margin-top:.5rem}.error,.initial-prompt,.loading{text-align:center;padding:4rem 2rem;color:var(--text-secondary);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;animation:fadeIn .5s ease;width:100%;flex-grow:1;place-self:center}#search .initial-prompt{flex-grow:0;padding:.5rem 0 1rem;justify-content:flex-start;gap:.5rem}.loader-svg{width:80px;height:auto;color:var(--accent)}.loader-spinner{width:50px;height:50px;border:5px solid var(--glass-border);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}.loader-tube{width:60px;height:60px;position:relative}.loader-tube::after,.loader-tube::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;border:5px solid transparent;border-top-color:var(--accent);animation:spin 1.5s linear infinite}.loader-tube::after{border:5px solid transparent;border-bottom-color:var(--accent);animation:spin 2s linear infinite reverse}.loader-blur{width:100px;height:20px;position:relative}.loader-blur span{position:absolute;width:20px;height:20px;background:var(--accent);border-radius:50%;animation:motion-blur 1s linear infinite}.loader-blur span:first-child{animation-delay:0s}.loader-blur span:nth-child(2){animation-delay:.2s}.loader-blur span:nth-child(3){animation-delay:.4s}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes motion-blur{0%{left:0;opacity:0}10%{left:0;opacity:1}90%{left:100%;opacity:1}100%{left:100%;opacity:0}}.error{color:#ff8a80}.loading-more{text-align:center;padding:1.5rem;font-style:italic;display:flex;justify-content:center}.loading-more .loader-spinner{width:30px;height:30px}.skeleton-date-header{height:20px;width:100px;border-radius:8px;margin-bottom:.5rem;margin-top:1rem}.skeleton-list-container .skeleton-date-header:first-child{margin-top:0}.sort-controls{display:flex;align-items:center;gap:.5rem}.sort-controls label{font-size:.9rem;color:var(--text-secondary)}.sort-controls select{background:rgba(255,255,255,.1);border:1px solid var(--glass-border);border-radius:8px;padding:.5rem .8rem;color:var(--text-primary);font-size:.9rem;cursor:pointer}.sort-dir-btn{background:rgba(255,255,255,.1);border:1px solid var(--glass-border);color:var(--text-primary);width:40px;height:40px;border-radius:50%;font-size:1.1rem;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center}.details-page-wrapper{position:relative}.details-page-wrapper>.search-header{margin-top:50px}.details-back-btn{background:var(--glass-bg);border:none;color:var(--text-primary);width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;cursor:pointer;transition:var(--transition);z-index:10}.details-header-content{display:flex;align-items:center;gap:2rem;padding:1rem 1rem 2rem 1rem;margin-bottom:1rem}.details-header-content img{width:220px;height:220px;border-radius:var(--element-radius);box-shadow:0 8px 24px rgba(0,0,0,.2);flex-shrink:0}.details-header-text{flex:1}.details-type{font-size:.9rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.details-header-text h1{font-size:clamp(2rem, 5vw, 3.5rem);margin-bottom:0;line-height:1.1}.details-header-text .meta-info{color:var(--text-secondary);font-size:1rem;font-weight:500}.details-header-text .description{color:var(--text-secondary);font-size:.95rem;line-height:1.6;margin-top:.5rem}.description.expandable{max-height:6.4em;overflow:hidden;position:relative;transition:max-height .4s ease-out}.description.expandable.expanded{max-height:500px;transition:max-height .5s ease-in}.show-more-btn{background:0 0;border:none;color:var(--dynamic-accent);font-weight:600;cursor:pointer;padding:.5rem 0;text-align:left}.details-meta-and-actions{margin-top:1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.details-meta-and-actions .meta-info{margin:0}.secondary-actions .icon-btn:hover{background:rgba(var(--accent-rgb),.1);border-color:var(--accent);color:var(--accent);transform:scale(1.05)}.details-actions-bar{display:flex;align-items:center;gap:.75rem;padding:0 1rem;margin-bottom:1rem}.play-all-btn{width:auto;padding:.8rem 1.5rem;border-radius:50px;border:none;background:var(--accent);font-weight:700;cursor:pointer;position:relative;overflow:hidden;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.play-all-btn:hover{filter:brightness(1.15);transform:scale(1.03)}.details-actions-bar .icon-btn{background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--text-primary);width:48px;height:48px;border-radius:50%;font-size:1rem;cursor:pointer;transition:var(--transition);flex-shrink:0}.details-actions-bar .icon-btn.active{color:var(--accent)}@media (max-width:1200px){.album-grid,.artist-list{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.scrollable-row{gap:1rem}.discover-card{width:180px}}@media (max-width:1024px){.app-container{flex-direction:column;gap:0}.sidebar{order:3;width:100%;height:auto;margin:0;padding:0;flex-direction:row;position:fixed;bottom:0;left:0;right:0;border-radius:0;background:0 0;backdrop-filter:none;border:none;box-shadow:none;z-index:102}.sidebar-header{display:none}.search-header{flex-direction:column}.nav-list{flex-direction:row;justify-content:space-around;width:100%;margin:0;padding:8px 0;background:rgba(30,30,40,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(255,255,255,.1);box-shadow:0 -4px 20px rgba(0,0,0,.3);position:static;transform:none;max-width:none;border-radius:0}.nav-btn{flex:1;flex-direction:column;padding:4px 0;font-size:.75rem;gap:4px;justify-content:center;border-radius:16px;background:0 0;border:none;height:56px;min-width:50px;z-index:1}.discover-header h1{font-size:1.8rem;margin-bottom:0}.nav-btn .icon-container{display:flex;align-items:center;justify-content:center;width:64px;height:32px;border-radius:16px;transition:background-color .4s cubic-bezier(.2, 0, 0, 1)}.nav-btn i{font-size:1.2rem}.nav-btn.active{color:var(--accent);background:0 0;border:none;box-shadow:none;transform:none;font-weight:700;touch-action:manipulation}button:active{transform:scale(.96)}.app-logo-mobile{display:block!important}.main-content{order:1;padding:var(--content-padding-mobile);height:auto;flex-basis:0;min-height:0;margin-bottom:0}.main-content::after{content:"";display:block;min-height:calc(var(--player-height-mobile) + var(--bottom-nav-height) + 10px);width:100%;flex-shrink:0}.app-container{border-radius:0;border-left:none;border-right:none}.bottom-sheet-content,.details-page-wrapper{border-radius:0}.song-list{max-height:none}.discover-card{width:140px}.bottom-player{order:2;position:fixed;bottom:90px;left:10px;right:10px;width:auto;height:64px;background:rgba(35,35,45,.85);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);border-radius:50px;box-shadow:0 8px 20px rgba(0,0,0,.4);padding:0 16px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;z-index:1000;overflow:hidden}.player-center-section,.player-right-controls{display:none!important}.player-song-info{display:flex;align-items:center;gap:10px;min-width:0;overflow:hidden;height:100%}.player-song-info img{width:48px;height:48px;border-radius:8px;flex-shrink:0}.player-text{display:flex;flex-direction:column;justify-content:center;min-width:0}#currentSongTitle{font-size:.9rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}#currentSongArtist{font-size:.75rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-mobile-controls{display:flex!important;align-items:center;gap:12px;z-index:10}.bottom-player .player-like-btn{display:none}.player-mobile-controls .play-btn{width:36px;height:36px;font-size:1rem;background:rgba(255,255,255,.1)!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)!important;color:var(--text-primary)!important;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px rgba(0,0,0,.2);transition:transform .2s ease}.player-mobile-controls .play-btn:active{transform:scale(.9)}.mobile-progress-bar,.music-player-progress-bar{position:absolute;bottom:0;left:0;height:3px;background:var(--accent);z-index:200;width:0%;transition:width .1s linear;box-shadow:0 0 10px var(--accent);border-bottom-left-radius:50px;border-bottom-right-radius:0}.album img,.artist img{width:120px;height:120px}.song-list{gap:.5rem}.song-list .song{padding:.75rem;gap:.75rem}.song-list .song img{width:50px;height:50px}}@media (max-width:480px){h1{font-size:1.8rem}h2{font-size:1.4rem}.main-content{padding-left:1rem;padding-right:1rem;padding-bottom:calc(72px + 72px + 20px)}.discover-card{width:45%}.player-song-info img{width:48px;height:48px;border-radius:8px}.player-text{flex-basis:60%}.back-to-top-btn{bottom:calc(72px + 72px + 15px);right:15px}#currentSongTitle strong{font-size:.9rem}#currentSongArtist{font-size:.75rem}}.details-header-text{align-items:center}.details-header-actions{text-align:center}.settings-group{padding:1rem 1.2rem}.settings-option{flex-direction:column;align-items:flex-start;gap:1rem}.settings-nav{width:100%;flex-direction:column;overflow-x:hidden;margin-bottom:1rem;background:var(--glass-bg);border-radius:var(--element-radius)}.queue-container .song .remove-from-queue-btn{display:none}.queue-container .song .remove-from-queue-btn{display:flex}.now-playing-view{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:1000;display:flex;align-items:center;justify-content:center;transform:translateY(100%);transition:transform .6s cubic-bezier(.16, 1, .3, 1),visibility .6s;visibility:hidden;will-change:transform;overscroll-behavior:contain}.now-playing-view.active{transform:translateY(0);visibility:visible}.now-playing-bg{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;filter:blur(60px) brightness(.5);transform:scale(1.1);z-index:-1}.now-playing-content{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:1.5rem;padding:70px 2rem 2rem 2rem;overflow:hidden;color:#fff;text-align:center;opacity:0;transform:translateY(20px);transition:opacity .5s .2s ease,transform .5s .2s ease}.now-playing-view.active .now-playing-content{opacity:1;transform:translateY(0)}.now-playing-header{position:absolute;top:0;left:0;width:100%;padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center;z-index:10}.collapse-btn,.player-options-btn{position:relative;z-index:1;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;width:44px;height:44px;border-radius:50%;font-size:1.2rem;cursor:pointer;transition:var(--transition)}.now-playing-art{flex-grow:0;margin-top:auto;display:flex;align-items:center;justify-content:center}.now-playing-art img{width:min(90vw,50vh,400px);height:min(90vw,50vh,400px);aspect-ratio:1/1;object-fit:cover;border-radius:24px;box-shadow:0 20px 50px rgba(0,0,0,.5);cursor:grab;transition:transform .4s ease,box-shadow .4s ease}.now-playing-info{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem}.now-playing-info-text{width:100%;max-width:300px;display:flex;flex-direction:column;align-items:center;min-width:0}.now-playing-info h2{width:100%;margin:0;font-size:1.8rem;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 2px 10px rgba(0,0,0,.5)}.now-playing-info p{width:100%;margin:0;font-size:1.2rem;color:rgba(255,255,255,.7);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 5px rgba(0,0,0,.5)}.circular-controls-wrapper{position:relative;width:360px;max-width:360px;margin:1rem auto auto auto;aspect-ratio:1;display:flex;justify-content:center;align-items:center}.circular-pad{position:relative;width:220px;height:220px;background:rgba(255,255,255,.05);border-radius:50%;box-shadow:var(--glass-shadow),inset 0 0 20px rgba(255,255,255,.05);border:1px solid var(--glass-border);backdrop-filter:blur(var(--blur-amt))}.pad-ring{position:absolute;inset:15px;border-radius:50%;border:1px solid rgba(255,255,255,.05);pointer-events:none}.pad-btn{position:absolute;background:0 0;border:none;color:var(--text-secondary);font-size:1.3rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s,color .2s,background .2s;width:50px;height:50px;border-radius:50%;z-index:2}.pad-btn:active{transform:scale(.9)!important}.pad-center{top:50%;left:50%;transform:translate(-50%,-50%);width:70px;height:70px;font-size:1.5rem;background:var(--accent);color:#000!important;box-shadow:0 4px 15px rgba(var(--accent-rgb),.4)}.pad-center:active{transform:translate(-50%,-50%) scale(.9)!important}.pad-top{top:15px;left:50%;margin-left:-25px}.pad-bottom{bottom:15px;left:50%;margin-left:-25px}.pad-left{left:15px;top:50%;margin-top:-25px}.pad-right{right:15px;top:50%;margin-top:-25px}.circular-corner{position:absolute;z-index:2}.circular-corner button{background:rgba(255,255,255,.05);border:1px solid var(--glass-border);color:var(--text-secondary);width:48px;height:48px;border-radius:50%;cursor:pointer;backdrop-filter:blur(10px);transition:all .2s;font-size:1.1rem;display:flex;align-items:center;justify-content:center}.circular-corner button.active{background:rgba(var(--accent-rgb),.2);color:var(--accent);border-color:var(--accent);box-shadow:0 0 10px rgba(var(--accent-rgb),.3)}#nowPlayingLikeBtn.active,#nowPlayingLikeBtn.active i{color:#ff3b30!important;text-shadow:0 0 10px rgba(255,59,48,.4)}.top-left{top:0;left:0}.top-right{top:0;right:0}.bottom-left{bottom:0;left:0}.bottom-right{bottom:0;right:0}.middle-left{top:50%;left:-20px;transform:translateY(-50%);z-index:3}.middle-right{top:50%;right:-20px;transform:translateY(-50%);z-index:3}.timer-display span{font-size:.9rem;color:rgba(255,255,255,.6);font-family:Coves,sans-serif;letter-spacing:.5px}.circular-progress-svg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-90deg);z-index:10;width:228px;height:228px;pointer-events:none}.circular-progress-svg circle{fill:none;stroke-width:4;pointer-events:none}.circular-progress-svg .progress-hit-area{stroke:transparent;stroke-width:40px;pointer-events:stroke;cursor:pointer}.progress-bg{stroke:rgba(255,255,255,0.1)}.progress-bar{stroke:#ffffff;stroke-linecap:round;stroke-dasharray:679;stroke-dashoffset:679;transition:stroke-dashoffset .1s linear}.now-playing-extra-controls{width:100%;display:flex;justify-content:center;align-items:center;padding:1rem 0;margin-bottom:1rem}.now-playing-actions{display:flex;justify-content:center;gap:1rem}.now-playing-actions button{background:0 0;border:none;color:#fff;width:44px;height:44px;border-radius:50%;font-size:1.2rem;text-shadow:0 1px 3px rgba(0,0,0,.4);transition:var(--transition)}.radio-indicator{display:none;color:var(--accent);margin-right:5px;text-shadow:0 0 10px rgba(var(--accent-rgb),.5)}.radio-indicator.active{display:block!important}@media (min-width:1025px){.now-playing-content{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr 1.5fr;grid-template-areas:"header header" "art info" "art controls";align-items:center;justify-items:center;gap:0;padding:2rem 4rem;height:100%}.now-playing-header{grid-area:header;position:relative;margin-bottom:2rem;padding:0}.now-playing-art{grid-area:art;padding-right:2rem}.now-playing-info{grid-area:unset;grid-column:2;grid-row:2;align-self:end;margin-bottom:1rem}.circular-controls-wrapper{grid-area:unset;grid-column:2;grid-row:3;align-self:start}.now-playing-art img{width:clamp(350px,40vh,600px)!important;height:clamp(350px,40vh,600px)!important;max-height:80vh!important}}@media (max-height:750px){.circular-controls-wrapper{max-width:280px;margin:.5rem auto}.circular-pad{width:190px;height:190px}.circular-progress-svg{width:198px;height:198px}.circular-corner button{width:42px;height:42px}}@media (max-width:400px){.circular-controls-wrapper{max-width:260px;margin:.5rem auto}.circular-pad{width:170px;height:170px}.circular-progress-svg{width:178px;height:178px}.pad-btn{width:40px;height:40px;font-size:1.1rem}.pad-center{width:55px;height:55px;font-size:1.3rem}.circular-corner button{width:38px;height:38px;font-size:.95rem}.timer-display span{font-size:.8rem}}@media (max-width:375px){.circular-controls-wrapper{max-width:240px}.circular-pad{width:150px;height:150px}.circular-progress-svg{width:158px;height:158px}.pad-btn{width:35px;height:35px;font-size:1rem}.pad-center{width:50px;height:50px;font-size:1.2rem}.circular-corner button{width:34px;height:34px;font-size:.9rem}.timer-display span{font-size:.75rem}.middle-left{left:-15px}.middle-right{right:-15px}}.volume-panel-container{position:absolute;bottom:0;left:0;width:100%;padding:1rem 2rem 2rem;background:rgba(0,0,0,.3);backdrop-filter:blur(10px);border-top:1px solid var(--glass-border);transform:translateY(100%);transition:transform .3s cubic-bezier(.19, 1, .22, 1);visibility:hidden;z-index:10}.volume-panel-container.active{transform:translateY(0);visibility:visible}.volume-panel-content{display:flex;align-items:center;gap:1rem;max-width:500px;margin:0 auto;color:#fff}.volume-panel-content input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:30px;background:rgba(255,255,255,.2);border-radius:18px;outline:0;cursor:pointer}.volume-panel-content input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;background:#fff;border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.3);transition:transform .2s ease}.sleep-timer-display{text-align:center;font-weight:600;color:var(--text-primary);min-width:70px;font-size:.9rem}.sleep-timer-cancel-btn{background:rgba(255,255,255,.1);border:1px solid transparent;color:#fff;width:36px;height:36px;border-radius:50%;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.library-quick-access{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.library-item{background:var(--glass-bg);backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:var(--element-radius);padding:1.5rem;display:flex;align-items:center;gap:1rem;font-size:1.2rem;font-weight:600;cursor:pointer;transition:var(--transition)}.library-item i{font-size:1.5rem;color:var(--accent)}.mobile-refresh-fab:active{transform:scale(.95)}.playlist-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1.5rem}.playlist-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--card-radius);overflow:hidden;cursor:pointer;transition:var(--transition);animation:subtle-scale-in .5s ease-out both}.playlist-card:hover{transform:translateY(-5px);box-shadow:var(--glass-shadow);border-color:var(--accent)}.playlist-art-mosaic{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;aspect-ratio:1/1;background-color:var(--primary-light)}.playlist-art-mosaic img{width:100%;height:100%;object-fit:cover}.playlist-art-placeholder{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;background-color:var(--surface)}.playlist-art-placeholder i{font-size:4rem;color:var(--accent);opacity:.5}.playlist-card-info{padding:1rem}.playlist-card-info strong{display:block;font-size:1.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.playlist-card-info small{font-size:.9rem;color:var(--text-secondary)}.add-new-playlist{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%}.suggestion-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;font-size:.9rem;color:var(--text-secondary);font-weight:600;border-bottom:1px solid var(--glass-border)}.suggestion-header button{background:0 0;border:none;color:var(--text-secondary);cursor:pointer;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.suggestion-header button:hover{background:rgba(255,255,255,.1);color:var(--accent)}.suggestion-item .remove-history-item-btn{background:0 0;border:none;color:var(--text-secondary);cursor:pointer;margin-left:auto;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1rem}.remove-history-item-btn:hover{background:rgba(var(--accent-rgb),.15);color:var(--accent)}@keyframes slideInRight{from{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.song.dragging{opacity:.5;background:var(--accent)}.bottom-sheet{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1100;display:flex;align-items:flex-end;justify-content:center;visibility:hidden;pointer-events:none}.bottom-sheet.active{visibility:visible;pointer-events:auto}.bottom-sheet-overlay{position:absolute;width:100%;height:100%;background:rgba(0,0,0,.5);opacity:0;transition:opacity .4s ease}.bottom-sheet.active .bottom-sheet-overlay{opacity:1}.bottom-sheet-content{background:var(--surface);backdrop-filter:blur(12px);width:100%;max-width:600px;border-top-left-radius:var(--card-radius);border-top-right-radius:var(--card-radius);padding:1rem;box-shadow:0 -5px 30px rgba(0,0,0,.2);transform:translateY(100%);transition:transform .4s cubic-bezier(.4, 0, .2, 1);z-index:1}.bottom-sheet.active .bottom-sheet-content{transform:translateY(0)}.bottom-sheet-header{padding:1rem 1.5rem;font-size:1.2rem;font-weight:700;text-align:center;border-bottom:1px solid var(--glass-border);margin-bottom:.5rem;color:var(--text-primary)}.bottom-sheet ul{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(85px,1fr));gap:1rem;padding:.5rem}.bottom-sheet li{background:var(--glass-bg);border:1px solid var(--glass-border);aspect-ratio:1/1;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;border-radius:var(--element-radius);transition:all .2s ease;text-align:center;font-size:.8rem;font-weight:600;padding:.5rem}.bottom-sheet li i{font-size:1.8rem;color:var(--accent);margin-bottom:.25rem}.bottom-sheet li:hover{background:rgba(var(--accent-rgb),.15);border-color:var(--accent);transform:translateY(-3px)}.bottom-sheet .separator{display:none}.bottom-sheet-info-body h3{font-size:1.4rem;margin:0}.bottom-sheet-info-body .info-artist{color:var(--text-secondary);font-size:1rem;margin-bottom:1.5rem}.song-details-content{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2rem 1rem}.song-details-content img{width:clamp(200px,60vw,280px);height:clamp(200px,60vw,280px);border-radius:24px;box-shadow:0 15px 40px rgba(0,0,0,.4);margin-bottom:2rem}.song-details-content h1{font-size:2rem;margin-bottom:.5rem}.queue-container{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--primary-light);backdrop-filter:blur(10px);z-index:1001;display:flex;flex-direction:column;color:#fff;transform:translateY(100%);will-change:transform;transition:transform .3s cubic-bezier(.19, 1, .22, 1),visibility .3s;visibility:hidden}.queue-container.active{transform:translateY(0) translateX(0);visibility:visible}.queue-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;position:sticky;top:0;background:var(--glass-bg);backdrop-filter:blur(10px);border-bottom:1px solid var(--glass-border);z-index:2;flex-shrink:0}.queue-search-bar{margin:1rem 2rem 0}.queue-header .collapse-btn{position:static}.queue-subheader{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem 0;flex-shrink:0}.queue-header-title,.queue-subheader h2{font-size:1.4rem;font-weight:700;margin:0}.clear-queue-btn{background:0 0;border:none;color:var(--text-secondary);cursor:pointer;font-weight:600;padding:.5rem;transition:color .2s ease}.clear-queue-btn:hover{color:var(--accent)}.queue-container .song-list{overflow-y:auto;padding:1.5rem 2rem;gap:.5rem;scrollbar-gutter:stable}.queue-container .song{background:0 0;border-color:rgba(255,255,255,.1);padding:.75rem 1rem;height:76px;box-sizing:border-box;flex-shrink:0;transform:translateX(var(--swipe-translate-x,0))}.queue-container .song.is-playing{border-left:4px solid var(--accent);background:rgba(var(--accent-rgb),.1);padding-left:calc(1rem - 4px)}.queue-container .song.is-swiping{transition:none}.queue-container .song.is-dragging{opacity:.8;background:var(--surface);box-shadow:0 10px 30px rgba(0,0,0,.3);transform:scale(1.02);z-index:10}.queue-container .song.removing{transform:translateX(-100%);opacity:0!important}@media (max-width:1024px){.queue-container .song-list,.queue-header,.queue-subheader{padding-left:1.5rem;padding-right:1.5rem}}.context-menu{position:fixed;background:var(--surface);backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:var(--element-radius);box-shadow:var(--glass-shadow);z-index:1000;min-width:200px;opacity:0;transform:scale(.95);transform-origin:top left;transition:opacity .2s ease,transform .2s cubic-bezier(.4, 0, .2, 1);pointer-events:none}.context-menu.active{opacity:1;visibility:visible;transform:scale(1);pointer-events:auto}.context-menu ul{list-style:none;padding:.5rem 0}.context-menu li{padding:.8rem 1.25rem;cursor:pointer;display:flex;align-items:center;gap:1rem;color:var(--text-primary);transition:background .2s ease,color .2s ease,transform .2s ease;opacity:0;transform:translateY(10px);animation:menuItemFadeIn .3s ease forwards}.context-menu.active li{animation-delay:calc(.03s * var(--i))}.context-menu li i{font-size:1rem;width:20px}.context-menu .separator{height:1px;background:var(--glass-border);margin:.5rem 0}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}100%{transform:scale(1)}}@keyframes menuItemFadeIn{to{opacity:1;transform:translateY(0)}}.modal-content{background:var(--primary-light);border:1px solid var(--glass-border);border-radius:var(--card-radius);box-shadow:var(--glass-shadow);width:90%;max-width:400px;max-height:80vh;display:flex;flex-direction:column;transform:translateY(20px) scale(.98);transition:transform .3s cubic-bezier(.4, 0, .2, 1),opacity .3s ease}.modal-overlay.active .modal-content{transform:translateY(0) scale(1)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--glass-border);flex-shrink:0}.modal-header h2{margin:0;font-size:1.4rem}.modal-close-btn{background:0 0;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer}.modal-body{padding:1.5rem;overflow-y:auto}.create-playlist-btn-modal{width:100%;padding:1rem;background:var(--accent);border:1px solid transparent;color:#000;border-radius:var(--element-radius);font-size:1rem;font-weight:600;cursor:pointer;margin-bottom:1.5rem;transition:var(--transition)}.modal-playlist-list{list-style:none}.modal-playlist-list li{padding:1rem;border-radius:var(--element-radius);cursor:pointer;transition:background .2s ease}.empty-modal-list{text-align:center;color:var(--text-secondary);padding:1rem}@keyframes marquee-scroll{0%{transform:translateX(0)}100%{transform:translateX(-100%)}}@keyframes ripple{to{transform:scale(4);opacity:0}}@keyframes gradient-animation{0%{background-position:0 50%}50%{background-position:100% 50%}100%{background-position:0 50%}}@keyframes icon-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.2)}}.ripple{position:absolute;border-radius:50%;background:rgba(255,255,255,.4);transform:scale(0);animation:ripple .6s linear}.site-notice-banner{background:linear-gradient(270deg,var(--accent),rgba(var(--accent-rgb),.8),var(--accent));background-size:400% 400%;animation:gradient-animation 15s ease infinite;color:#fff;padding:.6rem 1rem;width:100%;border-radius:var(--element-radius);border:none;font-size:.95rem;font-weight:700;overflow:hidden}.discover-header{display:flex;flex-direction:column;align-items:flex-start;gap:1.5rem}.marquee-container{flex-grow:1;overflow:hidden;position:relative}.marquee-text{display:inline-block;white-space:nowrap;padding-left:100%;animation:marquee-scroll 20s linear infinite;animation-play-state:running}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%;font-family:Coves,sans-serif;background:var(--primary-dark);color:var(--text-primary);overflow:hidden;user-select:none;-webkit-user-select:none;transition:background 1s ease-in-out}.no-scroll{overflow:hidden!important;position:fixed;width:100%;height:100%;touch-action:none}button,input,select,textarea{font-family:Coves,sans-serif}img{-webkit-touch-callout:none;user-select:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:rgba(0,0,0,.2)}::-webkit-scrollbar-thumb{background:var(--accent);border-radius:5px;border:2px solid transparent;background-clip:content-box}.app-container{display:flex;position:relative;padding:15px;gap:15px;background:url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxkZWZzPjxwYXR0ZXJuIGlkPSJwYXR0ZXJuIiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB3aWR0aD0iNDAiIGhlaWdodD0iNDAiPjxjaXJjbGUgY3g9IjIwIiBjeT09IjIwIiByPSIwLjUiIGZpbGw9InJnYmEoMjU1LDI1NSwyNTUsMC4wNSkiLz48L2RldmZzPjxyZWN0IGZpbGw9InRyYW5zcGFyZW50IiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIi8+PHJlY3QgZmlsbD0idXJsKCNwYXR0ZXJuKSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIvPjwvc3ZnPg==')}.sidebar{order:1;width:280px;flex-shrink:0}.main-content{order:2;flex-grow:1;background:0 0;backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:var(--card-radius)}.bottom-player{order:3}.app-logo{height:70px;width:auto}.app-logo-mobile{display:none;height:70px;margin-bottom:.5rem}.nav-list{display:flex;flex-direction:column;gap:.8rem}.nav-btn{background:0 0;border:1px solid transparent;color:var(--text-secondary);font-size:1.1rem;text-align:left;cursor:pointer;transition:var(--transition);padding:1rem 1.2rem;border-radius:var(--element-radius);display:flex;align-items:center;gap:1rem;position:relative;overflow:hidden}.nav-btn.active{color:var(--accent);background:rgba(var(--accent-rgb),.2);transform:translateY(-2px);animation:active-tab-glow 2.5s infinite ease-in-out}.nav-btn i{min-width:24px;text-align:center;font-size:1.2rem}.main-content{flex-grow:1;background:0 0;backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:var(--card-radius);padding:calc(var(--header-height) + 1rem) var(--content-padding) 12rem var(--content-padding);overflow-y:auto;display:flex;order:2;flex-direction:column;min-width:0;box-shadow:var(--glass-shadow);overflow-x:hidden;height:100%;scrollbar-gutter:stable both-edges}.content-section.no-top-padding{padding-top:0}.main-content::-webkit-scrollbar{width:6px}.main-content::-webkit-scrollbar-track{background:0 0;transition:background .3s ease-in-out}.main-content::-webkit-scrollbar-thumb{background:0 0;border-radius:4px;transition:background .3s ease-in-out}.main-content.scrolling::-webkit-scrollbar-track{background:rgba(0,0,0,.2)}.main-content.scrolling::-webkit-scrollbar-thumb{background:var(--accent)}.pull-to-refresh{position:absolute;top:0;left:0;right:0;height:60px;display:flex;align-items:center;justify-content:center;transform:translateY(-100%);z-index:0;transition:transform .4s cubic-bezier(.4, 0, .2, 1);pointer-events:none;will-change:transform}.ptr-icon,.ptr-spinner{position:absolute;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--surface);border-radius:50%;box-shadow:var(--glass-shadow);transition:transform .3s ease,opacity .3s ease}.ptr-icon i{color:var(--accent);transition:transform .5s cubic-bezier(.175, .885, .32, 1.275)}.ptr-spinner{opacity:0;transform:scale(.5)}.ptr-spinner .loader-spinner{width:24px;height:24px;border-width:3px}.search-bar{position:relative;display:flex;gap:.8rem;margin-bottom:1.5rem}.search-header{margin-bottom:1rem}.search-input-container{position:relative;flex-grow:1}.contextual-search-bar i,.search-input-container::before{position:absolute;left:1.5rem;top:50%;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none}.search-input-container::before{content:'\f002';font-family:'Font Awesome 7 Free';font-weight:900}.contextual-search-bar input,.search-bar input{flex-grow:1;width:100%;border-radius:50px;border:1px solid var(--glass-border);padding:.9rem 1.5rem .9rem 3.5rem;background:rgba(255,255,255,.1);color:var(--text-primary);font-size:1rem;transition:var(--transition);animation:subtle-glow 4s infinite ease-in-out;user-select:text}.contextual-search-bar input:focus,.search-bar input:focus{outline:0;border-color:var(--dynamic-accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.3);background:var(--glass-bg)}.search-bar input::placeholder{color:var(--text-secondary)}.search-bar button{background:var(--accent);border:none;border-radius:50px;width:52px;height:52px;color:#000;font-size:1.3rem;cursor:pointer;transition:var(--transition);box-shadow:0 4px 15px rgba(var(--accent-rgb),.3)}.search-bar button:hover{transform:scale(1.05);box-shadow:0 6px 20px rgba(var(--accent-rgb),.4)}.contextual-search-bar{position:relative;margin-bottom:1rem}.contextual-search-bar i{left:1.2rem}.contextual-search-bar input{border-color:transparent;background:var(--surface);padding-left:3.5rem}@keyframes subtle-glow{0%,100%{box-shadow:0 0 4px rgba(var(--accent-rgb),.15);border-color:var(--glass-border)}50%{box-shadow:0 0 12px rgba(var(--accent-rgb),.35);border-color:rgba(var(--accent-rgb),.6)}}.filter-tabs{display:flex;gap:.75rem;margin-bottom:1.5rem;flex-wrap:nowrap;overflow-x:auto;padding:10px 0 5px;scrollbar-width:none;-ms-overflow-style:none;justify-content:flex-start}.filter-tabs::-webkit-scrollbar{display:none}.filter-tab-btn{padding:.6rem 1.2rem;border-radius:50px;border:1px solid var(--glass-border);background:0 0;color:var(--text-secondary);font-family:Coves,sans-serif;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:70px;display:flex;align-items:center;justify-content:center}.filter-tab-btn:hover{background:rgba(255,255,255,.05);color:var(--text-primary);border-color:var(--text-secondary)}.filter-tab-btn.active{background:rgba(var(--accent-rgb),.2);color:#fff;border-color:var(--accent);transform:translateY(-2px);box-shadow:0 4px 15px rgba(var(--accent-rgb),.2)}.filter-dropdown-container{position:relative;width:fit-content;margin-bottom:1.5rem}.filter-btn{display:flex;align-items:center;gap:.75rem;padding:.6rem 1.2rem;border-radius:50px;border:1px solid var(--glass-border);background:var(--surface);color:var(--text-primary);font-weight:600;cursor:pointer;transition:all .3s ease}.filter-btn.active,.filter-btn:hover{background:rgba(var(--accent-rgb),.2);border-color:var(--accent);color:var(--accent)}.filter-btn .dropdown-arrow{transition:transform .3s ease}.filter-btn.active .dropdown-arrow{transform:rotate(180deg)}.filter-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;background:var(--primary-light);border:1px solid var(--glass-border);border-radius:var(--element-radius);padding:.5rem;z-index:10;min-width:180px;box-shadow:var(--glass-shadow);opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity .3s ease,transform .3s ease,visibility .3s}.filter-dropdown-menu.show{opacity:1;visibility:visible;transform:translateY(0)}.filter-option{display:block;padding:.75rem 1rem;color:var(--text-secondary);text-decoration:none;border-radius:8px;transition:all .2s ease}.filter-option.active,.filter-option:hover{background:rgba(var(--accent-rgb),.15);color:var(--accent)}.search-suggestions{display:none;position:absolute;top:calc(100% + 5px);left:0;right:0;background:var(--surface);backdrop-filter:blur(8px);border:1px solid var(--glass-border);border-radius:var(--card-radius);z-index:1001;max-height:300px;overflow-y:auto}.search-suggestions.active{display:block}.search-suggestions::-webkit-scrollbar{width:6px}.search-suggestions::-webkit-scrollbar-thumb{background:var(--accent);border-radius:3px}.search-history-list{max-height:165px;overflow-y:auto;overscroll-behavior:contain}.search-history-list::-webkit-scrollbar{width:8px}.suggestion-item{padding:.75rem 1.5rem;cursor:pointer;display:flex;align-items:center;gap:.8rem;transition:var(--transition)}.suggestion-item img{width:40px;height:40px;border-radius:8px;object-fit:cover;flex-shrink:0}.suggestion-item div{display:flex;flex-direction:column;min-width:0}.suggestion-item small,.suggestion-item strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.content-section{display:none;flex-direction:column;position:relative}.content-section.active{display:flex;animation:fadeIn .5s cubic-bezier(.25,.46,.45,.94);gap:1.5rem}.content-section[id*="-details"].active{animation:slideInFromRight .5s cubic-bezier(.34,1.56,.64,1) forwards}.search-results-wrapper{display:flex;flex-direction:column;gap:1.5rem}.search-results-wrapper:not([style*="display: flex"]){display:none}.discover-header{display:flex;flex-direction:column;align-items:flex-start;gap:1.5rem}.discover-search-trigger{background:var(--surface);border:1px solid var(--glass-border);border-radius:50px;padding:1rem 1.5rem;display:flex;align-items:center;margin-top:0;gap:.8rem;color:var(--text-secondary);cursor:pointer;transition:var(--transition);width:100%;animation:subtle-glow 4s infinite ease-in-out}.discover-search-trigger:hover{background:var(--glass-bg);border-color:var(--accent);color:var(--text-primary);box-shadow:0 0 10px rgba(var(--accent-rgb),.2)}.discover-search-trigger span{font-weight:600}h1,h2{margin-bottom:.5rem}h1{font-size:2.2rem;font-weight:700;background:linear-gradient(135deg,var(--accent) 0,var(--text-primary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dynamic-island{position:fixed;top:15px;left:50%;transform:translateX(-50%) scale(.95);z-index:1001;display:flex;justify-content:center;align-items:center;background:rgba(10,10,10,.7);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:50px;box-shadow:var(--glass-shadow);padding:.5rem 1.2rem;min-width:130px;height:40px;opacity:0;visibility:hidden;pointer-events:none;cursor:pointer;transition:all .6s cubic-bezier(.4, 0, .2, 1);will-change:transform,opacity,width,height,border-radius}.dynamic-island::after{content:'';position:absolute;inset:-2px;border-radius:inherit;border:2px solid var(--accent);opacity:0;filter:drop-shadow(0 0 8px var(--accent));pointer-events:none;transition:opacity .4s ease}.dynamic-island.active::after{opacity:1}.dynamic-island.active{opacity:1;visibility:visible;transform:translateX(-50%) scale(1);pointer-events:auto;animation:island-glow 3s infinite ease-in-out}.dynamic-island.expanded{width:95%;max-width:380px;min-height:120px;border-radius:24px;align-items:flex-start;padding:1rem 0;cursor:default;transform:translateX(-50%) scale(1)}@keyframes island-glow{0%,100%{box-shadow:0 0 15px 2px rgba(var(--accent-rgb),.4),var(--glass-shadow)}50%{box-shadow:0 0 25px 5px rgba(var(--accent-rgb),.6),var(--glass-shadow)}}.dynamic-island-content{display:flex;align-items:center;gap:.75rem;color:var(--text-primary);transition:opacity .2s ease,transform .2s ease;transform:scale(1)}.dynamic-island.expanded .dynamic-island-content,.dynamic-island:not(.active) .dynamic-island-content{opacity:0;transform:scale(.9);pointer-events:none}.dynamic-island-expanded-content{position:absolute;inset:0;opacity:0;transform:scale(.95);display:flex;padding:0 1.5rem;pointer-events:none;transition:opacity .2s ease,transform .2s ease}.dynamic-island.expanded .dynamic-island-expanded-content{opacity:1;transform:scale(1);pointer-events:auto;transition-delay:0.3s}.dynamic-island.is-collapsing .dynamic-island-expanded-content{transition-delay:0s!important}.island-widget{display:none;align-items:center;gap:.5rem;font-weight:600;font-size:.95rem;animation:fadeIn .3s .2s ease both}.island-widget.active{display:flex}.island-expanded-widget{display:none;flex-direction:column;justify-content:space-between;width:100%;height:100%;padding:.75rem 0}.island-expanded-widget.active{display:flex}.expanded-widget-header{font-size:1.1rem;font-weight:700;display:flex;align-items:center;gap:.5rem}.island-now-playing-art{width:28px;height:28px;border-radius:6px;overflow:hidden;flex-shrink:0}.island-now-playing-art img{width:100%;height:100%;object-fit:cover}#island-song-title{font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:11ch}.expanded-now-playing-info{display:flex;align-items:center;gap:1rem;width:100%}.expanded-now-playing-info img{width:48px;height:48px;border-radius:8px;object-fit:cover;flex-shrink:0}.expanded-now-playing-text{min-width:0;flex-grow:1;text-align:left}.expanded-now-playing-text small,.expanded-now-playing-text strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.expanded-now-playing-text strong{font-size:1.1rem;font-weight:700}.expanded-now-playing-text small{font-size:.9rem;color:var(--text-secondary)}.expanded-now-playing-controls{display:flex;justify-content:space-around;align-items:center;width:100%;margin-top:.5rem}.expanded-now-playing-controls button{background:0 0;border:none;color:var(--text-primary);font-size:1.5rem;cursor:pointer;padding:.5rem;transition:transform .2s ease,color .2s ease}.expanded-now-playing-controls button:hover{transform:scale(1.1);color:var(--accent)}.island-visualizer{display:flex;align-items:flex-end;gap:3px;height:20px}.island-visualizer span{width:3px;height:20px;background-color:var(--accent);border-radius:2px;transform-origin:bottom;animation:visualize 1.2s infinite ease-in-out alternate paused}.island-visualizer.playing span{animation-play-state:running}.island-visualizer span:nth-child(2){animation-delay:.2s}.island-visualizer span:nth-child(3){animation-delay:.4s}.island-visualizer span:nth-child(4){animation-delay:.6s}@keyframes visualize{from{transform:scaleY(.2)}to{transform:scaleY(1)}}.island-widget#island-volume{gap:.75rem}#island-volume-icon{font-size:1rem;width:20px;text-align:center}.island-volume-bar-container{width:80px;height:6px;background-color:rgba(255,255,255,.2);border-radius:3px}.island-volume-bar-container #island-volume-bar{height:100%;background-color:#fff;border-radius:3px;transition:width .2s ease-out}@keyframes fadeIn{from{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}h2{font-size:1.6rem;font-weight:700;color:var(--text-primary)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:1rem}.section-header.with-tabs{flex-wrap:wrap}.section-header.with-tabs .filter-tabs{margin-bottom:0}.section-header h2{margin-bottom:0;flex-grow:1}.history-header .settings-btn,.section-header .settings-btn{padding:.6rem 1rem}#library .section-header .settings-btn{padding:0;width:44px;height:44px;justify-content:center;border-radius:50%;font-size:1.2rem}.user-rank-badge{background-color:var(--accent);color:#fff;font-size:.9rem;font-weight:700;padding:.3rem .8rem;border-radius:50px;margin-left:1rem;animation:subtle-scale-in .5s ease-out}.view-all-btn{background:rgba(255,255,255,.1);border:1px solid var(--glass-border);color:var(--text-secondary);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);flex-shrink:0;font-size:1rem}.view-all-btn:hover{background:rgba(var(--accent-rgb),.2);border-color:var(--accent);color:var(--accent);transform:scale(1.05)}.scrollable-row{display:flex;overflow-x:auto;gap:1.5rem;padding:1rem .5rem;margin:0 -.5rem;will-change:transform;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-snap-type:x mandatory}.scrollable-row::-webkit-scrollbar{height:8px}.scrollable-row::-webkit-scrollbar-thumb{background:var(--accent);border-radius:4px}.scrollable-row::-webkit-scrollbar-track{background:rgba(0,0,0,.2)}.most-played-column .song{width:100%}.discover-card{display:flex;flex-direction:column;width:240px;flex-shrink:0;transition:transform .3s cubic-bezier(.4, 0, .2, 1);animation:subtle-scale-in .5s ease-out both;position:relative;scroll-snap-align:start;overflow:hidden}.discover-card:active{transform:scale(.98);transition:transform .1s ease}.search-grid .discover-card{width:100%;flex-shrink:1}.discover-card-art{position:relative;cursor:pointer;border-radius:var(--card-radius);overflow:hidden;box-shadow:var(--glass-shadow)}.discover-card-art img{width:100%;aspect-ratio:1/1;object-fit:cover;transition:transform .4s ease}.card-options-btn{position:absolute;top:10px;right:10px;width:36px;height:36px;border-radius:50%;border:none;background:rgba(0,0,0,.4);backdrop-filter:blur(5px);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;z-index:2}.card-options-btn:hover{background:rgba(0,0,0,.7);transform:scale(1.1)}.card-duration-overlay{position:absolute;bottom:8px;right:8px;background-color:rgba(0,0,0,.7);color:#fff;padding:.2rem .5rem;border-radius:50px;font-size:.8rem;font-weight:600;pointer-events:none;z-index:1}.discover-card-art .play-btn{position:absolute;bottom:10px;right:10px;width:52px;height:52px;font-size:1.2rem;border-radius:50%;background:var(--accent);color:#000;opacity:0;transform:translateY(10px);transition:all .3s ease}.album,.artist,.playlist,.song{background:var(--glass-bg);backdrop-filter:blur(8px);border:1px solid var(--glass-border);border-radius:var(--card-radius);display:flex;gap:1rem;cursor:pointer;user-select:none;transition:transform .3s cubic-bezier(.4, 0, .2, 1),box-shadow .3s ease,border-color .3s ease;align-items:center;box-shadow:var(--glass-shadow);padding:1rem;border-color:transparent}.album img,.artist img,.playlist img,.song img{width:60px;height:60px;object-fit:cover;border-radius:12px;box-shadow:0 4px 10px rgba(0,0,0,.2);flex-shrink:0}#albumDetailsHeader .details-header-content img,.discover-card[data-type=album] .discover-card-art img,.discover-card[data-type=song] .discover-card-art img{border-radius:24px}#playlistDetailsHeader .details-header-content img{clip-path:inset(0% 0% 0% 0% round 120px);border-radius:0;width:220px;height:220px;object-fit:cover}#artistDetailsHeader .details-header-content .image-container,.discover-card[data-type=artist] .discover-card-art{overflow:hidden;position:relative;clip-path:polygon(50% 0%,83% 12%,100% 43%,94% 78%,68% 100%,32% 100%,6% 78%,0% 43%,17% 12%)}#artistDetailsHeader .details-header-content .image-container img,.discover-card[data-type=artist] .discover-card-art img{width:100%;height:100%;object-fit:cover}@keyframes cookie-spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}.details-header-content .image-container{width:220px;height:220px;flex-shrink:0}#artistDetailsHeader .details-header-content img{width:220px;height:220px;border-radius:0;object-fit:cover}#albumDetailsHeader .details-header-content,#artistDetailsHeader .details-header-content,#playlistDetailsHeader .details-header-content,.discover-card-art{position:relative}.song img{position:relative}.song .play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:44px;height:44px;background:rgba(var(--accent-rgb),.8);color:#000;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease,transform .3s ease;z-index:2}.song.is-playing .song-duration{display:none}.album button,.artist button,.playlist button,.song button{background:rgba(255,255,255,.1);border:1px solid var(--glass-border);color:var(--text-secondary);border-radius:50%;width:40px;height:40px;font-size:1rem;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;margin-left:auto;flex-shrink:0}.song .remove-from-queue-btn{display:none;margin-left:auto;flex-shrink:0}.song.is-playing{background:rgba(var(--dynamic-accent-rgb,var(--accent-rgb)),.15);border-color:rgba(var(--dynamic-accent-rgb,var(--accent-rgb)),.3)}.song.is-playing .song-duration{display:none}.song.is-playing::after{content:none}.song .drag-handle{cursor:grab;color:var(--text-secondary);margin-left:auto;flex-shrink:0}.song .play-count{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:var(--text-secondary)}.song .play-count i{display:none}.song-duration{font-size:.9rem;color:var(--text-secondary);margin-left:auto;padding:0 1rem}.song .play-btn{margin-left:0}.player-like-btn{background:0 0;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;transition:var(--transition)}.player-like-btn.active .fa-heart{font-family:"Font Awesome 7 Free";font-weight:900;color:var(--accent)}.player-like-btn.active{transform:scale(1.1)}.album div,.artist div,.playlist div,.song div{display:flex;flex-direction:column;min-width:0}.song div{flex:1}.album strong,.artist strong,.playlist strong,.song strong{font-weight:600;font-size:1rem;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.discover-card strong{font-size:.9rem}.discover-card small{font-size:.8rem}.discover-card small,.discover-card strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.title-container{display:flex;align-items:center;gap:.5rem;overflow:hidden;width:100%;min-width:0}.title-container .marquee-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.now-playing-info .title-container{justify-content:center}.radio-indicator{display:none;color:var(--accent);font-size:.9em;animation:pulse 2s infinite}.now-playing-view>.radio-indicator{font-size:1.8rem;margin-top:1rem;text-align:center}.radio-mode-active .radio-indicator{display:inline-block}.radio-mode-active .now-playing-view>.radio-indicator{display:block}.now-playing-meta-icons{display:flex;justify-content:center;align-items:center;gap:2rem;margin-top:1rem;height:40px}.bottom-player .radio-indicator{display:none}.now-playing-meta-icons .player-like-btn{font-size:1.8rem;margin-top:0;display:inline-block;transition:transform .2s ease,color .2s ease}.now-playing-actions .radio-indicator{display:none;width:44px;height:44px;line-height:44px;text-align:center;border-radius:50%;font-size:1.2rem;color:var(--accent);animation:pulse 2s infinite}.radio-mode-active .now-playing-actions .radio-indicator{display:block}.player-like-btn.active.animating .fa-heart{animation:heartbeat .6s cubic-bezier(.25,.46,.45,.94)}@keyframes heartbeat{0%{transform:scale(1)}25%{transform:scale(1.3)}50%{transform:scale(1)}75%{transform:scale(1.2)}100%{transform:scale(1)}}.player-like-btn{display:block!important}.album small,.artist small,.playlist small,.song small{color:var(--text-secondary);font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.song-list{display:flex;flex-direction:column;gap:.75rem}.card-meta{display:flex;gap:.5rem;align-items:center}.song-list::-webkit-scrollbar{width:8px}.song-list::-webkit-scrollbar-thumb{background:var(--accent);border-radius:4px}.song-list::-webkit-scrollbar-track{background:rgba(0,0,0,.2)}.search-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1.5rem}@media (min-width:1200px){.search-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}@media (min-width:1600px){.search-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}.album div,.artist div{align-items:center}.album img,.artist img{width:160px;height:160px;margin-bottom:1rem}.bottom-player{position:fixed;bottom:15px;z-index:100;background:rgba(22,27,34,.6);backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--card-radius);padding:1rem 1.5rem;color:var(--text-primary);display:grid;grid-template-columns:1fr 1.5fr 1fr;align-items:center;box-shadow:var(--glass-shadow);transition:transform .3s cubic-bezier(.4, 0, .2, 1),opacity .3s ease;transform:translateY(120%);opacity:0;pointer-events:none}.bottom-player.visible{transform:translateY(0);opacity:1;pointer-events:auto}.player-song-info{display:flex;align-items:center;gap:1rem;grid-column:1/2;min-width:0}.player-song-info img{width:56px;height:56px;border-radius:var(--element-radius);object-fit:cover;box-shadow:0 4px 15px rgba(0,0,0,.2);transition:transform .4s ease}.player-text{flex:1;flex-direction:column;min-width:0}#currentSongArtist,#currentSongTitle{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#currentSongArtist{font-size:.85rem;color:var(--text-secondary)}.player-center-section{display:flex;flex-direction:column;align-items:center;gap:.5rem;grid-column:2/3;max-width:600px}.player-controls{display:flex;align-items:center;gap:.8rem;justify-content:center}.player-controls button{background:0 0;border:none;border-radius:50%;width:40px;height:40px;font-size:1.1rem;cursor:pointer;position:relative;overflow:hidden;transition:var(--transition);display:flex;align-items:center;justify-content:center;color:var(--text-primary)}.player-controls button.active,.player-controls button:hover{color:var(--accent);transform:scale(1.05);background:rgba(var(--accent-rgb),.1)}.player-controls button:active{transform:scale(.9)}.player-controls button.next-btn,.player-controls button.prev-btn{font-size:1.5rem}#playPauseBtn{width:48px;height:48px;font-size:1.6rem;background:var(--accent);color:#fff;box-shadow:var(--glass-shadow)}#playPauseBtn:hover{transform:scale(1.05);color:#fff;background:var(--accent)}.player-right-controls{grid-column:3/4;display:flex;align-items:center;gap:1rem;justify-content:flex-end}.player-right-controls button{color:var(--text-primary)}.volume-control{display:flex;align-items:center;gap:.75rem;justify-content:flex-end}.volume-control i{font-size:1.2rem;transition:var(--transition)}input[type=range]{-webkit-appearance:none;appearance:none;background:0 0;cursor:pointer;width:100%;outline:0;border:none}input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:2px;transition:height .2s ease;background:var(--glass-bg)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;margin-top:-6px;background-color:#fff;height:16px;width:16px;border-radius:50%;border:none;box-shadow:0 2px 5px rgba(0,0,0,.2);transition:transform .2s cubic-bezier(.4, 0, .2, 1),height .2s ease,width .2s ease}.bottom-player .volume-control input[type=range]{width:100px;background:linear-gradient(to right,var(--accent) 0,var(--accent) var(--volume-progress,100%),var(--glass-bg) var(--volume-progress,100%),var(--glass-bg) 100%)}.bottom-player .volume-control input[type=range]::-webkit-slider-thumb{margin-top:-6px;background-color:var(--accent);border:2px solid var(--primary-dark)}.progress-container{display:flex;align-items:center;gap:1rem;width:100%}#progressBar{display:block}.player-center-section .progress-container input[type=range]{height:5px;background:linear-gradient(to right,var(--accent) 0,var(--accent) var(--progress,0),var(--glass-bg) var(--progress,0),var(--glass-bg) 100%);transition:background .2s ease}.player-center-section .progress-container input[type=range]::-webkit-slider-thumb{margin-top:-8px;height:20px;width:20px;box-shadow:0 2px 8px rgba(0,0,0,.3)}.player-mobile-controls{display:none}.settings-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;padding-top:.5rem}.settings-header h1{margin-bottom:0}.settings-header .details-back-btn{position:static;flex-shrink:0}.settings-accordion-container{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.settings-accordion{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--element-radius);transition:background .3s ease}.settings-accordion[open]{background:var(--surface)}.settings-accordion summary{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;font-size:1.2rem;font-weight:700;cursor:pointer;list-style:none;transition:color .3s ease}.settings-accordion[open] summary{color:var(--accent)}.settings-accordion summary::-webkit-details-marker{display:none}.settings-accordion summary::after{content:'\f078';font-family:'Font Awesome 7 Free';font-weight:900;margin-left:auto;transition:transform .3s ease}.settings-accordion[open] summary::after{transform:rotate(180deg)}.settings-accordion-content{padding:0 1.5rem 1.5rem;border-top:1px solid var(--glass-border);overflow:hidden}.settings-accordion-content .settings-option:first-child{padding-top:1.5rem}.settings-accordion-content .settings-option:last-child{border-bottom:none;padding-bottom:0}.settings-option{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid var(--glass-border)}.settings-option h3{font-size:1.1rem;margin-bottom:.25rem}.settings-option p{color:var(--text-secondary);font-size:.9rem}.settings-btn{background:var(--surface);border:1px solid var(--glass-border);color:var(--text-primary);font-size:.9rem;font-weight:600;cursor:pointer;transition:var(--transition);padding:.7rem 1.2rem;border-radius:var(--element-radius);display:flex;align-items:center;gap:.5rem}.settings-btn:hover{background:rgba(var(--accent-rgb),.1);border-color:var(--accent)}.settings-btn.danger-btn{background:#c0392b!important;color:#fff!important;border-radius:50px}.settings-btn.reset-btn{background:#e74c3c!important}.settings-select{-webkit-appearance:none;appearance:none;background:rgba(255,255,255,.1);border:1px solid var(--glass-border);border-radius:8px;padding:.6rem 2.5rem .6rem 1rem;color:var(--text-primary);font-size:.9rem;font-weight:600;cursor:pointer;background-image:url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23C4C7CF%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E');background-repeat:no-repeat;background-position:right 1rem center;background-size:10px;transition:var(--transition)}.settings-select:hover{border-color:var(--accent)}.toggle-switch{position:relative;display:inline-block;width:52px;height:30px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.slider{position:absolute;inset:0;background-color:var(--surface);border:1px solid var(--glass-border);transition:background-color .4s cubic-bezier(.4, 0, .2, 1);border-radius:30px;cursor:pointer}.slider:before{position:absolute;content:"";height:22px;width:22px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2);transition:transform .4s cubic-bezier(.4, 0, .2, 1)}input:checked+.slider{background-color:var(--accent);border-color:var(--accent)}input:focus+.slider{box-shadow:0 0 1px var(--accent)}input:checked+.slider:before{transform:translateX(22px)}.about-section{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--element-radius);padding:2rem;display:flex;flex-direction:column;align-items:center;text-align:center}.about-logo{width:100px;height:auto;margin-bottom:1rem}.about-section h3{font-size:1.5rem;color:var(--text-primary)}.about-section p{color:var(--text-secondary);max-width:400px}.about-section .settings-btn.primary-action{margin-top:1rem}.about-links{display:flex;gap:1.5rem;margin-top:1.5rem;flex-wrap:wrap;justify-content:center}.about-links a{color:var(--accent);text-decoration:none;font-weight:600;display:flex;align-items:center;gap:.5rem}.creator-info{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--glass-border);width:100%;max-width:400px}.creator-info p{font-style:italic}.creator-info .last-updated{font-size:.8rem;margin-top:.5rem;font-style:normal}.creator-info .contact-link{color:var(--accent);text-decoration:none;font-weight:600;display:inline-flex;align-items:center;gap:.5rem;margin-top:.5rem}.error,.initial-prompt,.loading{text-align:center;padding:4rem 2rem;color:var(--text-secondary);width:100%;flex-grow:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;animation:fadeIn .5s ease}.error{color:#ff8a80}.loading-more{text-align:center;padding:1.5rem;font-style:italic;display:flex;justify-content:center}.loader-svg{width:80px;height:auto;color:var(--accent)}.loader-spinner{width:50px;height:50px;border:5px solid var(--glass-border);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}.loader-tube{width:60px;height:60px;position:relative}.loader-tube::after,.loader-tube::before{content:'';position:absolute;inset:0;border-radius:50%;border:5px solid transparent;border-top-color:var(--accent);animation:spin 1.5s linear infinite}.loader-tube::after{border-top-color:transparent;border-bottom-color:var(--accent);animation:spin 2s linear infinite reverse}.loader-blur{width:100px;height:20px;position:relative}.loader-blur span{position:absolute;width:20px;height:20px;background:var(--accent);border-radius:50%;animation:motion-blur 1s linear infinite}.loader-blur span:first-child{animation-delay:0s}.loader-blur span:nth-child(2){animation-delay:.2s}.loader-blur span:nth-child(3){animation-delay:.4s}@keyframes spin{to{transform:rotate(360deg)}}@keyframes motion-blur{0%{left:0;opacity:0}10%{left:0;opacity:1}90%{left:100%;opacity:1}100%{left:100%;opacity:0}}.surprise-btn{background:var(--accent);border:none;color:#000;font-size:1.1rem;padding:.8rem 1.5rem;border-radius:50px;box-shadow:0 4px 15px rgba(var(--accent-rgb),.3);animation:jiggle-animation 3s infinite cubic-bezier(.45,.05,.55,.95);transition:transform .25s ease,box-shadow .25s ease}.surprise-btn:hover{transform:scale(1.05);box-shadow:0 6px 20px rgba(var(--accent-rgb),.4);background:var(--accent)}@keyframes jiggle-animation{0%,100%{transform:rotate(0) scale(1)}15%,5%{transform:rotate(-2deg) scale(1.02)}10%,20%{transform:rotate(2deg) scale(1.02)}25%{transform:rotate(0) scale(1)}}.sort-controls{display:flex;align-items:center;gap:.5rem}.sort-controls label{font-size:.9rem;color:var(--text-secondary)}.sort-controls select{background:rgba(255,255,255,.1);border:1px solid var(--glass-border);border-radius:8px;padding:.5rem .8rem;color:var(--text-primary);font-size:.9rem;cursor:pointer}.sort-dir-btn{background:rgba(255,255,255,.1);border:1px solid var(--glass-border);color:var(--text-primary);width:40px;height:40px;border-radius:50%;font-size:1.1rem;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center}.details-page-wrapper{position:relative}@media (max-width:1024px){.details-page-wrapper .details-back-btn{position:fixed;top:1.5rem;left:1.5rem;background:var(--glass-bg)}}.details-header-content{padding:1rem 1rem 1rem;margin-bottom:.5rem;position:relative}.details-header-content img{width:220px;height:220px;border-radius:var(--element-radius);box-shadow:0 8px 24px rgba(0,0,0,.2);flex-shrink:0}.details-type{font-size:.9rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.details-header-text h1{font-size:clamp(2rem, 5vw, 3.5rem);margin-bottom:0;line-height:1.2}.details-header-text .meta-info{color:var(--text-secondary);font-size:1rem;font-weight:500}.details-header-text .description{color:var(--text-secondary);font-size:.95rem;line-height:1.6;margin-top:.5rem}.description.expandable{max-height:6.4em;overflow:hidden;position:relative;transition:max-height .4s ease-out}.description.expandable.expanded{max-height:500px;transition:max-height .5s ease-in}.show-more-btn{background:0 0;border:none;color:var(--dynamic-accent);font-weight:600;cursor:pointer;padding:.5rem 0;text-align:left}.details-meta-and-actions{margin-top:1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.details-meta-and-actions .meta-info{margin:0}.details-actions-bar{display:flex;align-items:center;gap:.75rem;padding:0 1rem;margin-bottom:1rem}.play-all-btn{width:auto;padding:.8rem 1.5rem;border-radius:50px;border:none;background:var(--accent);color:#000;font-size:1rem;font-weight:700;cursor:pointer;position:relative;overflow:hidden;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.play-all-btn:hover{filter:brightness(1.15);transform:scale(1.03)}.details-actions-bar .icon-btn{background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--text-primary);width:48px;height:48px;border-radius:50%;font-size:1rem;cursor:pointer;transition:var(--transition);flex-shrink:0}.details-actions-bar .icon-btn:hover{background:rgba(var(--accent-rgb),.1);border-color:var(--accent);color:var(--accent);transform:scale(1.05)}.details-actions-bar .icon-btn.active{color:var(--accent)}@media (max-width:1200px){.album-grid,.artist-list{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.scrollable-row{gap:1rem}.discover-card{width:180px}}@media (max-width:1024px){.app-container{flex-direction:column;padding:0}.sidebar{order:3;width:100%;height:auto;margin:0;padding:0;flex-direction:row;position:fixed;bottom:0;left:0;right:0;background:0 0;backdrop-filter:none;border:none;box-shadow:none;z-index:102;transform:translateY(100%);transition:transform .6s cubic-bezier(.4, 0, .2, 1);visibility:hidden}.sidebar-header{display:none}.sidebar.visible{transform:translateY(0);visibility:visible}.bottom-player{bottom:calc(var(--bottom-nav-height) + 10px);left:10px;right:10px;width:auto;border-radius:15px;transform:none}.search-header{display:flex;flex-direction:column}.nav-list{flex-direction:row;justify-content:space-around;width:100%;gap:0;background:rgba(26,28,30,.9);backdrop-filter:blur(8px);border-top:1px solid var(--glass-border);padding:8px 0;box-shadow:var(--glass-shadow)}.nav-btn{flex:1;flex-direction:column;padding:4px 0;font-size:.75rem;gap:4px;justify-content:center;border-radius:16px;background:0 0;border:none;height:56px;min-width:60px;z-index:1}.details-page-wrapper .section-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:100%}.details-page-wrapper .section-header h1{grid-column:2/3;text-align:center;justify-self:center;margin:0;font-size:1.2rem}.details-page-wrapper .section-header>:first-child{grid-column:1/2;justify-self:start}.details-page-wrapper .section-header>:last-child{grid-column:3/4;justify-self:end}.details-page-wrapper .details-back-btn,.details-page-wrapper .section-header .settings-btn{background:0 0}.discover-header{display:flex;flex-direction:column;gap:1rem}.discover-header h1{font-size:1.8rem;margin-bottom:0}.nav-btn .icon-container{display:flex;border-radius:16px;transition:background-color .4s cubic-bezier(.2, 0, 0, 1)}.nav-btn i{font-size:1.2rem}.nav-btn.active{color:var(--accent);background:0 0;transform:none;font-weight:700;border-radius:16px;animation:active-tab-glow 2.5s infinite ease-in-out}.app-logo-mobile{display:block!important}.main-content{order:1;padding:var(--content-padding-mobile) var(--content-padding-mobile) calc(var(--player-height-mobile) + var(--bottom-nav-height) + 1.5rem) var(--content-padding-mobile);height:100%;margin-bottom:0}.song-list{max-height:none}.discover-card{width:140px}.player-center-section,.player-right-controls .volume-control{display:none}.player-song-info{flex-grow:1;gap:.8rem;cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.bottom-player{order:2;padding:.75rem 1rem;grid-template-columns:1fr auto;height:72px}.player-like-btn{display:none}.player-right-controls{margin-left:auto;padding:.5rem}.player-mobile-controls .play-btn{width:44px;height:44px;font-size:1.2rem;background:var(--accent);border-radius:50%;color:#fff}.player-mobile-controls{display:flex;align-items:center;justify-content:center;grid-column:2/3;justify-self:end}.player-mobile-controls .play-btn{position:relative;overflow:hidden}.mobile-progress-bar{position:absolute;bottom:0;left:0;height:3px;width:0%;background-color:var(--accent);border-bottom-left-radius:15px;border-bottom-right-radius:15px;transition:width .2s linear;pointer-events:none;z-index:1}.tap-to-play-overlay{position:absolute;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;z-index:5;cursor:pointer;border-radius:var(--card-radius);font-weight:600}.tap-to-play-overlay i{font-size:1.5rem}.album img,.artist img{width:120px;height:120px}.song-list{gap:.5rem}.song-list .song{padding:.75rem;gap:.75rem}.song-list .song img{width:50px;height:50px}}@media (max-width:480px){h1{font-size:1.8rem}h2{font-size:1.4rem}.main-content{padding-left:.7rem;padding-right:.7rem;padding-bottom:calc(72px + 72px + 20px);scroll-padding-top:70px}.discover-card{width:calc((100% - 2rem)/ 3.1);flex-shrink:0}.scrollable-row{padding-right:1rem}.player-song-info img{width:48px;height:48px;border-radius:8px}.player-text{flex-basis:60%}#currentSongTitle strong{font-size:.9rem}#currentSongArtist{font-size:.75rem}}@media (min-width:1025px){.bottom-player{left:15px;right:15px;bottom:15px}}.details-header-text{align-items:center}.details-header-actions{text-align:center}.settings-group{padding:1rem 1.2rem}.settings-option{flex-direction:column;align-items:flex-start;gap:1rem}.settings-nav{width:100%;flex-direction:column;overflow-x:hidden;margin-bottom:1rem;background:var(--glass-bg);border-radius:var(--element-radius)}.queue-container .song .remove-from-queue-btn{display:none}.queue-container .song .remove-from-queue-btn{display:flex}.now-playing-view{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1000;display:flex;align-items:center;justify-content:center;transform:translateY(100%);transition:transform .3s cubic-bezier(.16, 1, .3, 1),visibility .3s;visibility:hidden;will-change:transform}#now-playing-slider{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;will-change:transform}.now-playing-view.active{transform:translateY(0);visibility:visible}.now-playing-bg{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;filter:blur(40px) brightness(.5);transform:scale(1.1);z-index:-1;will-change:opacity;transition:opacity .8s ease-in-out}.now-playing-content{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:1rem 2rem;color:#fff;text-align:center;opacity:0;transform:translateY(20px);transition:opacity .4s .15s ease,transform .4s .15s ease}.now-playing-header{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:1rem;flex-shrink:0}.now-playing-header-actions{display:flex;align-items:center}.collapse-btn{position:relative;z-index:1;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;width:44px;height:44px;border-radius:50%;font-size:1.2rem;cursor:pointer;transition:var(--transition)}.now-playing-view.active .now-playing-content{opacity:1;transform:translateY(0)}.player-options-btn{position:relative;z-index:1;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;width:44px;height:44px;border-radius:50%;font-size:1.2rem;cursor:pointer;transition:var(--transition)}.now-playing-art img{max-width:min(75vw,400px);max-height:min(45vh,400px);width:auto;height:auto;min-width:240px;min-height:240px;object-fit:contain;border-radius:24px;box-shadow:0 20px 50px rgba(0,0,0,.5);cursor:grab;transition:box-shadow .4s ease}.now-playing-art{flex-grow:1;display:flex;align-items:flex-end;justify-content:center;padding-bottom:20px}.now-playing-info{margin-top:1.5rem;width:100%;display:flex;flex-direction:column;align-items:center;gap:.2rem;z-index:2}@media (max-height:850px){.now-playing-art img{max-height:32vh!important;width:clamp(200px,60vw,320px)!important}.now-playing-info{margin-top:.5rem}}.now-playing-info h2{width:100%;display:flex;align-items:center;justify-content:center;gap:1rem}.now-playing-info-text{width:100%;max-width:300px;display:flex;flex-direction:column;align-items:center;flex-grow:1;min-width:0}.now-playing-info h2{margin-bottom:.5rem;font-size:1.8rem;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;width:100%;flex:1;display:block}.now-playing-info h2{text-shadow:0 2px 10px rgba(0,0,0,.5);background:0 0;-webkit-text-fill-color:unset}.now-playing-info .title-container h2{margin-bottom:0;white-space:nowrap}.now-playing-info p{font-size:1.2rem;color:rgba(255,255,255,.7);width:100%;text-shadow:0 1px 5px rgba(0,0,0,.5);white-space:nowrap;min-width:0}.now-playing-progress{width:100%;max-width:500px;display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.now-playing-progress input[type=range]{width:100%}.now-playing-progress span{min-width:40px}.now-playing-timers{display:flex;justify-content:space-between;width:100%;font-size:.85rem;color:rgba(255,255,255,.7)}@keyframes progress-wave{from{background-position:0 50%}to{background-position:100% 50%}}.player-center-section .progress-container input[type=range]{background:var(--glass-bg)}.volume-panel-container{position:absolute;bottom:0;left:0;width:100%;padding:1rem 2rem 2rem;background:rgba(0,0,0,.3);border-top:1px solid var(--glass-border);transform:translateY(100%);transition:transform .3s cubic-bezier(.19, 1, .22, 1);visibility:hidden;z-index:10}.volume-panel-container.active{transform:translateY(0);visibility:visible}.volume-panel-content{display:flex;align-items:center;gap:1rem;max-width:500px;margin:0 auto;color:#fff}.volume-panel-content input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:30px;background:rgba(255,255,255,.2);border-radius:18px;outline:0;cursor:pointer}.volume-panel-content input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;background:#fff;border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.3);transition:transform .2s ease}.sleep-timer-options{display:flex;gap:1rem;justify-content:center;margin-top:1rem;max-width:500px;margin-left:auto;margin-right:auto}.sleep-option-btn{flex:1;padding:.8rem 1rem;border-radius:50px;border:1px solid var(--glass-border);background:rgba(var(--accent-rgb),.15);color:var(--accent);font-weight:600;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;gap:.5rem}.sleep-option-btn.active,.sleep-option-btn:hover{background-color:var(--accent);color:#000;border-color:var(--accent)}.sleep-timer-presets{display:flex;gap:.75rem;justify-content:center;margin-top:1rem;max-width:500px;margin-left:auto;margin-right:auto}.sleep-preset-btn{flex:1;padding:.6rem;border-radius:12px;border:1px solid transparent;background:rgba(var(--accent-rgb),.1);color:var(--accent);font-weight:600;cursor:pointer;transition:var(--transition)}.sleep-preset-btn:hover{background:rgba(var(--accent-rgb),.25)}.sleep-timer-display{text-align:center;font-weight:600;color:var(--text-primary);min-width:70px;font-size:.9rem}.sleep-timer-actions{max-width:500px;margin:1rem auto 0}.sleep-timer-cancel-btn{width:100%;padding:.8rem 1rem;border-radius:50px;border:none;background:var(--accent);font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:var(--transition)}.sleep-timer-cancel-btn:hover{filter:brightness(1.1)}.library-item{background:var(--surface);text-decoration:none;color:var(--text-primary);border:1px solid var(--glass-border);border-radius:var(--card-radius);padding:1.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;font-size:1.2rem;font-weight:600;cursor:pointer;transition:var(--transition);aspect-ratio:1/1}.library-quick-access{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:2rem;width:100%}@media (max-width:768px){.library-quick-access{grid-template-columns:1fr 1fr}}.library-item i{font-size:2.5rem;color:var(--accent)}.mobile-refresh-fab{display:none;position:fixed;width:56px;height:56px;border-radius:50%;background-color:var(--accent);color:#000;border:none;box-shadow:0 6px 20px rgba(0,0,0,.3);font-size:1.2rem;cursor:pointer;z-index:101;transition:transform .3s ease,background-color .3s ease;display:flex;align-items:center;justify-content:center}.mobile-refresh-fab:active{transform:scale(.95)}.playlist-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1.5rem}.playlist-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--card-radius);overflow:hidden;cursor:pointer;transition:var(--transition);animation:subtle-scale-in .5s ease-out both}.playlist-card:hover{transform:translateY(-5px);box-shadow:var(--glass-shadow);border-color:var(--accent)}.playlist-art-mosaic{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;aspect-ratio:1/1;background-color:var(--primary-light)}.playlist-art-mosaic img{width:100%;height:100%;object-fit:cover}.playlist-art-placeholder{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;background-color:var(--surface)}.playlist-art-placeholder i{font-size:4rem;color:var(--accent);opacity:.5}.playlist-card-info{padding:1rem}.playlist-card-info strong{display:block;font-size:1.1rem;white-space:nowrap;font-size:.9rem;color:var(--text-secondary);font-weight:600;border-bottom:1px solid var(--glass-border)}.suggestion-header button{background:0 0;border:none;color:var(--text-secondary);cursor:pointer;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.suggestion-header button:hover{background:rgba(255,255,255,.1);color:var(--accent)}.remove-history-item-btn{background:0 0;border:none;color:var(--text-secondary);cursor:pointer;margin-left:auto;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1rem}.remove-history-item-btn:hover{background:rgba(var(--accent-rgb),.15);color:var(--accent)}.remove-history-item-btn:hover{background:rgba(var(--accent-rgb),.15);color:var(--accent)}.playlist-card-info small{font-size:.9rem;color:var(--text-secondary)}.add-new-playlist{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%}#notification-container{transform:translateX(100%)}to{opacity:1;transform:translateX(0)}.bottom-sheet{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1100;display:flex;align-items:flex-end;justify-content:center;visibility:hidden;pointer-events:none}.bottom-sheet.active{visibility:visible;pointer-events:auto}.bottom-sheet-overlay{position:absolute;width:100%;height:100%;background:rgba(0,0,0,.5);opacity:0;transition:opacity .4s ease}.bottom-sheet.active .bottom-sheet-overlay{opacity:1}.bottom-sheet-content{background:var(--primary-light);width:100%;max-width:600px;border-top-left-radius:var(--card-radius);border-top-right-radius:var(--card-radius);padding:1rem;box-shadow:0 -5px 30px rgba(0,0,0,.2);transform:translateY(100%);transition:transform .4s cubic-bezier(.4, 0, .2, 1);z-index:1}.bottom-sheet.active .bottom-sheet-content{transform:translateY(0)}.bottom-sheet-content.info-closing .bottom-sheet-view-wrapper{transform:translateX(0);transition:transform .4s cubic-bezier(.4, 0, .2, 1)}.bottom-sheet-view-wrapper{position:relative;width:100%;display:flex;transition:transform .4s cubic-bezier(.4, 0, .2, 1)}.bottom-sheet-content.info-active .bottom-sheet-view-wrapper{transform:translateX(-100%)}.bottom-sheet-view{width:100%;flex-shrink:0}.bottom-sheet-info-header{display:flex;align-items:center;gap:1rem;padding:.5rem 1rem;border-bottom:1px solid var(--glass-border)}.bottom-sheet-info-header .collapse-btn{position:static;background:0 0;border:none}.bottom-sheet-info-header h2{margin:0;font-size:1.2rem}.bottom-sheet-info-body{padding:1.5rem;display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}.bottom-sheet-info-body img{width:150px;height:150px;border-radius:16px;box-shadow:0 8px 24px rgba(0,0,0,.3);margin-bottom:1rem}.bottom-sheet-info-body h3{font-size:1.4rem;margin:0}.bottom-sheet-info-body .info-artist{color:var(--text-secondary);font-size:1rem;margin-bottom:1.5rem}.info-meta-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.25rem;width:100%;text-align:center;padding:1rem;background:rgba(0,0,0,.1);border-radius:var(--element-radius)}.info-meta-grid div{display:flex;flex-direction:column;gap:.25rem}.info-meta-grid strong{font-size:.8rem;color:var(--text-secondary);text-transform:uppercase}.info-meta-grid span{font-weight:600}.bottom-sheet ul{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(85px,1fr));gap:1rem;padding:.5rem}.bottom-sheet.active li{animation:menuItemFadeIn .4s cubic-bezier(.4,0,.2,1) both;animation-delay:calc(.04s * var(--i))}.bottom-sheet li{opacity:0;transform:translateY(15px)}.bottom-sheet li{background:var(--glass-bg);border:1px solid var(--glass-border);aspect-ratio:1/1;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;border-radius:var(--element-radius);transition:all .2s ease;text-align:center;font-size:.8rem;font-weight:600;padding:.5rem}.bottom-sheet li i{font-size:1.8rem;color:var(--accent);margin-bottom:.25rem}.bottom-sheet .separator{display:none}.queue-container:not(.active) .song-list{opacity:0!important;transition:none!important}.queue-container>*{transition:opacity .3s ease}.queue-container:not(.active)>*{opacity:0}.queue-header{display:flex;align-items:center;padding:1rem 2rem;position:sticky;top:0;background:var(--glass-bg);backdrop-filter:blur(10px);border-bottom:1px solid var(--glass-border);z-index:2;flex-shrink:0;justify-content:space-between}.queue-search-bar{margin-left:2rem;margin-right:2rem;margin-top:1rem;--icon-offset:-0.8rem}.queue-header .collapse-btn{position:static}.queue-header-title{font-size:1.4rem;font-weight:700}.queue-header h2{margin:0;flex-grow:1}.queue-subheader{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem 0}.queue-subheader h2{margin:0}.clear-queue-btn{background:0 0;border:none;color:var(--dynamic-primary-light);cursor:pointer;font-weight:600}.queue-container.active{transform:translateX(0);visibility:visible}.queue-container .song-list{opacity:0;transform:translateY(10px);transition:opacity .3s .2s ease,transform .3s .2s ease}.queue-container.active .song-list{opacity:1;transform:translateY(0);overflow-y:auto;padding:1.5rem 2rem;gap:.5rem}.queue-container .song{background:0 0;color:#fff;border-color:rgba(255,255,255,.1);padding:.75rem 1rem;height:76px;box-sizing:border-box;flex-shrink:0}.queue-container .song.is-playing{border-left:4px solid var(--accent);background:rgba(var(--accent-rgb),.1);padding-left:calc(1rem - 4px)}.queue-container .song small{color:rgba(255,255,255,.7)}.queue-container .song{transition:transform .3s ease,opacity .3s ease,background-color .3s ease;will-change:transform,opacity}.queue-container .song.is-swiping{transition:none}.queue-container .song.dragging{opacity:.9;background:var(--accent);box-shadow:0 10px 30px rgba(0,0,0,.3);transform:scale(1.02);z-index:10}.queue-container .placeholder{background:rgba(var(--accent-rgb),.15);border:2px dashed var(--accent);border-radius:var(--card-radius)}.queue-container .song.removing{transform:translateX(-100%);opacity:0}.queue-container .song.dragging{opacity:.5;background:var(--accent)}@media (max-width:768px){.now-playing-info{margin-top:2rem}.now-playing-controls{order:1;margin:2rem 0}.now-playing-progress{order:0}.now-playing-extra-controls{order:2;width:100%}.now-playing-in-queue,.queue-container .song-list,.queue-header{padding-left:1.5rem;padding-right:1.5rem}.queue-container .song .remove-from-queue-btn{display:none}@media (hover:hover) and (pointer:fine){.queue-container .song .remove-from-queue-btn{display:flex}}.details-header-content{flex-direction:column;text-align:center;gap:1.5rem}.details-header-content img{width:60vw;height:60vw;max-width:250px;max-height:250px}.details-header-text h1{font-size:2rem}}.song.dragging{opacity:.5;background:var(--accent);border-style:dashed}@media (max-width:1200px){.skeleton-card{width:95px!important}}.stat-card-gap{margin-top:.75rem;font-size:.85rem;color:var(--text-secondary);font-weight:600;animation:subtle-scale-in .5s .2s ease-out both}.stat-card-rank{position:absolute;top:1rem;right:1rem;background:var(--accent);color:#fff;font-size:.6rem!important;font-weight:700;padding:.2rem .5rem!important;border-radius:50px;animation:subtle-scale-in .5s ease-out;box-shadow:0 2px 8px rgba(0,0,0,.2)}.stats-view-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:1rem}.view-toggle{display:flex;background:0 0;border:none;border-radius:50px;padding:0;gap:.75rem}.view-toggle .toggle-btn{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;padding:.5rem 1rem;border-radius:50px;font-weight:600;cursor:pointer;transition:all .3s ease}.view-toggle .toggle-btn.active{background:var(--accent);color:#fff;box-shadow:0 2px 8px rgba(var(--accent-rgb),.3)}#search .view-toggle{margin-top:1.5rem;justify-content:center}.leaderboard-container{display:flex;flex-direction:column;gap:.75rem}.leaderboard-item{display:flex;align-items:center;gap:1rem;background:var(--glass-bg);padding:1rem;border-radius:var(--element-radius);border:1px solid var(--glass-border);transition:all .3s ease;animation:subtle-scale-in .5s ease-out both}.leaderboard-item:hover{transform:translateY(-3px);box-shadow:var(--glass-shadow);border-color:var(--accent)}.leaderboard-rank{font-size:1.5rem;font-weight:700;color:var(--accent);width:40px;text-align:center;flex-shrink:0}.leaderboard-info{flex-grow:1;min-width:0}.leaderboard-info strong{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.leaderboard-info small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-secondary);font-size:.9rem;margin-top:.2rem}.leaderboard-time{font-weight:700;color:var(--text-primary);white-space:nowrap;margin-left:auto;padding-left:1rem}@keyframes shimmer-animation{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}.skeleton-base{background-color:rgba(255,255,255,.15);position:relative;overflow:hidden}.skeleton-base::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:shimmer-animation 1.5s infinite linear}.skeleton-leaderboard-item{display:flex;align-items:center;gap:1rem;padding:1rem;height:80px}.skeleton-rank{width:40px;height:30px;border-radius:8px;flex-shrink:0}.skeleton-text-container{flex-grow:1;display:flex;flex-direction:column;gap:.75rem}.skeleton-text{height:18px;border-radius:8px}.skeleton-text.short{width:60%}.skeleton-time{width:80px;height:24px;border-radius:8px;margin-left:auto;flex-shrink:0}.skeleton-grid-container{display:flex;gap:1.5rem;padding:1rem .5rem;margin:0 -.5rem;width:100%}.skeleton-card{width:240px;flex-shrink:0}.skeleton-card .skeleton-image{width:100%;aspect-ratio:1/1;border-radius:var(--card-radius);margin-bottom:1rem}.skeleton-card .skeleton-text{height:20px;border-radius:8px;margin-bottom:.5rem}.skeleton-card .skeleton-text.short{width:60%}.skeleton-list-container{display:flex;flex-direction:column;gap:.75rem;width:100%}.skeleton-song-item{display:flex;align-items:center;gap:1rem;padding:1rem;height:80px}.skeleton-song-item .skeleton-image{width:60px;height:60px;border-radius:12px;flex-shrink:0}.skeleton-song-item .skeleton-text-container{flex-grow:1;display:flex;flex-direction:column;gap:.75rem}.skeleton-song-item .skeleton-text.short{width:70%}.leaderboard-container{display:flex;flex-direction:column;gap:.75rem}.leaderboard-rank{font-size:1.5rem;font-weight:700;color:var(--accent);width:40px;text-align:center;flex-shrink:0}.leaderboard-info{flex-grow:1;min-width:0}.leaderboard-info small,.leaderboard-info strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.leaderboard-info small{color:var(--text-secondary);font-size:.9rem}.leaderboard-time{font-weight:700;color:var(--text-primary);white-space:nowrap}.profile-actions{display:flex;justify-content:center;gap:.5rem;padding:1rem 0}.settings-btn.pill-btn{border-radius:50px;padding:.7rem 1.5rem}.profile-actions .settings-btn.pill-btn,.profile-actions-row .settings-btn.pill-btn,.settings-option .settings-btn.primary-action{background:var(--accent);color:#fff;border-color:transparent}.btn-danger-pill{background:rgba(220,20,60,.15);color:#dc143c;border:1px solid rgba(220,20,60,.3);border-radius:50px;padding:.7rem 1.5rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-danger-pill:hover{background:rgba(220,20,60,.25);border-color:#dc143c;transform:translateY(-2px)}#edit-mode-actions{display:flex;gap:.5rem}#edit-mode-actions .secondary-btn{background:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.1)!important;color:var(--text-secondary)!important;box-shadow:none!important}#edit-mode-actions .secondary-btn:hover{background:rgba(255,255,255,.1)!important;color:var(--text-primary)!important;border-color:rgba(255,255,255,.3)!important}.modal-btn.secondary,.modal-btn.secondary-btn,.secondary-btn,.settings-btn.secondary-btn{background:var(--surface);border:1px solid var(--glass-border);color:var(--text-primary);border-radius:50px;padding:.7rem 1.5rem;font-weight:600;cursor:pointer;transition:all .2s ease}.modal-btn.secondary-btn:hover,.modal-btn.secondary:hover,.secondary-btn:hover,.settings-btn.secondary-btn:hover{background:var(--glass-bg);border-color:var(--text-secondary)}.settings-btn:disabled{background:var(--surface);color:var(--text-secondary);cursor:not-allowed;opacity:.6;background:var(--surface)}.settings-btn:disabled:hover{background:var(--surface)}.profile-info-container{display:flex;flex-direction:column;gap:1rem;padding-top:1rem;margin-bottom:1rem}.profile-info-item label{font-size:.8rem;color:var(--text-secondary);font-weight:600;margin-bottom:.5rem;display:block;text-transform:uppercase}.profile-input{width:100%;background:var(--surface);border:1px solid var(--glass-border);border-radius:var(--element-radius);font-size:1rem;color:var(--text-primary);font-weight:700;transition:all .3s ease;-webkit-appearance:none;appearance:none;padding:.75rem 1rem}.profile-input:disabled{background:0 0;border-color:transparent;color:var(--text-primary);cursor:default;padding-left:0}#profile-email:disabled{color:var(--text-secondary);cursor:not-allowed}.gender-selection[data-disabled=true]{pointer-events:none;opacity:.7}.gender-selection[data-disabled=true] .gender-option{cursor:default}.quality-selection input[type=radio]{display:none}.quality-option{display:flex;align-items:center;padding:1rem;border:2px solid var(--glass-border);border-radius:var(--card-radius);cursor:pointer;transition:all .2s ease;background:var(--surface)}.quality-option:hover{border-color:var(--primary);background:var(--glass-bg)}.quality-selection input[type=radio]:checked+.quality-option{border-color:var(--primary);background:var(--glass-bg);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--glass-border);background:var(--surface);border-bottom-left-radius:var(--card-radius);border-bottom-right-radius:var(--card-radius)}.profile-summary-container{display:flex;flex-direction:column;align-items:center;gap:1.5rem;margin-bottom:1.5rem;position:relative}.profile-stats-wrapper{display:flex;gap:2rem;justify-content:center;align-items:center;flex-wrap:wrap}.profile-stat-item{display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:80px}.profile-stat-item .stat-value{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.profile-stat-item .stat-label{font-size:.85rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.profile-summary-container[data-rank="1"]{background:linear-gradient(135deg,rgba(255,215,0,.15),rgba(255,165,0,.08));border:2px solid rgba(255,215,0,.4);border-radius:var(--card-radius);padding:1.5rem;box-shadow:0 8px 32px rgba(255,215,0,.3)}.profile-summary-container[data-rank="2"]{background:linear-gradient(135deg,rgba(192,192,192,.15),rgba(168,168,168,.08));border:2px solid rgba(192,192,192,.4);border-radius:var(--card-radius);padding:1.5rem;box-shadow:0 8px 32px rgba(192,192,192,.3)}.profile-summary-container[data-rank="3"]{background:linear-gradient(135deg,rgba(205,127,50,.15),rgba(184,115,51,.08));border:2px solid rgba(205,127,50,.4);border-radius:var(--card-radius);padding:1.5rem;box-shadow:0 8px 32px rgba(205,127,50,.3)}.profile-summary-container[data-rank="4"]{background:linear-gradient(135deg,rgba(138,43,226,.15),rgba(123,31,162,.08));border:2px solid rgba(138,43,226,.4);border-radius:var(--card-radius);padding:1.5rem;box-shadow:0 8px 32px rgba(138,43,226,.3)}.profile-summary-container[data-rank="5"]{background:linear-gradient(135deg,rgba(255,215,0,.12),rgba(255,193,7,.06));border:2px solid rgba(255,215,0,.35);border-radius:var(--card-radius);padding:1.5rem;box-shadow:0 8px 32px rgba(255,215,0,.25)}.profile-nav-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;margin-top:1.5rem;margin-bottom:.5rem}.profile-nav-btn{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--card-radius);cursor:pointer;transition:all .3s ease;text-align:left;width:100%;position:relative;overflow:hidden}.profile-nav-btn::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(var(--accent-rgb),.1),transparent);opacity:0;transition:opacity .3s ease}.profile-nav-btn:hover::before{opacity:1}.profile-nav-btn:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 12px 32px rgba(0,0,0,.4)}.profile-nav-btn:active{transform:translateY(-2px)}.nav-btn-icon{flex-shrink:0;width:56px;height:56px;border-radius:12px;background:rgba(var(--accent-rgb),.15);display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--accent);transition:all .3s ease}.profile-nav-btn:hover .nav-btn-icon{background:rgba(var(--accent-rgb),.25);transform:scale(1.1) rotate(5deg)}.nav-btn-content{flex:1;min-width:0}.nav-btn-content h3{margin:0 0 .25rem 0;font-size:1rem;font-weight:600;color:var(--text-primary)}.nav-btn-desc{margin:0 0 .5rem 0;font-size:.85rem;color:var(--text-secondary);line-height:1.4}.nav-btn-stats{display:flex;gap:1rem;flex-wrap:wrap;font-size:.85rem;color:var(--accent);font-weight:600}.nav-btn-stats span{display:inline-flex;align-items:center;gap:.25rem}.nav-btn-arrow{flex-shrink:0;color:var(--text-secondary);font-size:1.1rem;transition:all .3s ease}.profile-nav-btn:hover .nav-btn-arrow{color:var(--accent);transform:translateX(4px)}@media (max-width:768px){.profile-nav-grid{grid-template-columns:1fr}}.dont-show-again-container{display:flex;justify-content:space-between;align-items:center;cursor:pointer}.dont-show-again-container span{font-size:.9rem;color:var(--text-secondary);font-weight:600}.changelog-body{display:flex;flex-direction:column;gap:1.5rem}.changelog-item{border-left:3px solid var(--accent);padding-left:1rem}.changelog-item h3{font-size:1.1rem;margin-bottom:.25rem}.changelog-item p{color:var(--text-secondary);font-size:.95rem;line-height:1.5}.context-menu{position:fixed;background:var(--surface);backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:var(--element-radius);box-shadow:var(--glass-shadow);z-index:2500;min-width:200px;opacity:0;transform:scale(.95);transform-origin:top left;transition:opacity .2s ease,transform .2s cubic-bezier(.4, 0, .2, 1);pointer-events:none}.context-menu.active{opacity:1;visibility:visible;transform:scale(1);pointer-events:auto}.context-menu ul{list-style:none;padding:.5rem 0}.context-menu li{padding:.8rem 1.25rem;cursor:pointer;display:flex;align-items:center;gap:1rem;color:var(--text-primary);transition:background .2s ease,color .2s ease,transform .2s ease;opacity:0;transform:translateY(10px);animation:menuItemFadeIn .3s ease forwards}.context-menu.active li{animation-delay:calc(.03s * var(--i))}.context-menu li i{font-size:1rem;width:20px}.context-menu .separator{height:1px;background:var(--glass-border);margin:.5rem 0}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}100%{transform:scale(1)}}@keyframes menuItemFadeIn{to{opacity:1;transform:translateY(0)}}.modal-content{background:var(--primary-light);border:1px solid var(--glass-border);border-radius:var(--card-radius);box-shadow:var(--glass-shadow);width:90%;max-width:400px;max-height:80vh;display:flex;flex-direction:column;transform:translateY(20px) scale(.98);transition:transform .3s cubic-bezier(.4, 0, .2, 1),opacity .3s ease}.modal-overlay.active .modal-content{transform:translateY(0) scale(1)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--glass-border);flex-shrink:0}.modal-header h2{margin:0;font-size:1.4rem}.modal-close-btn{background:0 0;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer}.modal-body{padding:1.5rem;overflow-y:auto}.modal-playlist-list li{padding:1rem;border-radius:var(--element-radius);cursor:pointer;transition:background .2s ease}.empty-modal-list{text-align:center;color:var(--text-secondary);padding:1rem}.surprise-fab{position:fixed;bottom:130px;right:20px;background:rgba(var(--accent-rgb),.2);backdrop-filter:blur(10px);border:1px solid rgba(var(--accent-rgb),.5);color:#fff;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(0,0,0,.3);cursor:pointer;z-index:1050;transition:all .4s cubic-bezier(.175, .885, .32, 1.275);overflow:hidden;padding:0}@media (max-width:1024px){.surprise-fab{bottom:160px}}.surprise-fab i{font-size:1.2rem;transition:margin .3s ease}.surprise-fab span{max-width:0;opacity:0;white-space:nowrap;margin-left:0;transition:all .3s ease;font-weight:500;font-size:.95rem}.surprise-fab.expanded{width:auto;border-radius:50px;padding:0 20px;height:48px;min-width:160px}.surprise-fab.expanded span{max-width:150px;opacity:1;margin-left:10px}.surprise-fab:hover{transform:translateY(-2px) scale(1.05);background:rgba(var(--accent-rgb),.3);border-color:var(--accent);box-shadow:0 6px 24px rgba(var(--accent-rgb),.3)}.surprise-fab:active{transform:translateY(0) scale(.95)}.now-playing-view.active~.surprise-fab{display:none!important}.leaderboard-container{display:flex;flex-direction:column;gap:.8rem;margin-top:1rem}.leaderboard-scroll{display:flex;gap:1rem;overflow-x:auto;overflow-y:hidden;padding:1rem 0;margin-top:1rem;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(var(--accent-rgb),0.3) transparent}.leaderboard-scroll::-webkit-scrollbar{height:6px}.leaderboard-scroll::-webkit-scrollbar-track{background:0 0}.leaderboard-scroll::-webkit-scrollbar-thumb{background:rgba(var(--accent-rgb),.3);border-radius:3px}.leaderboard-scroll::-webkit-scrollbar-thumb:hover{background:rgba(var(--accent-rgb),.5)}.leaderboard-scroll-card{min-width:45%;max-width:45%;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--card-radius);padding:1.5rem;display:flex;flex-direction:column;align-items:center;gap:1rem;scroll-snap-align:start;transition:all .3s cubic-bezier(.4, 0, .2, 1);flex-shrink:0;position:relative;overflow:hidden;box-shadow:inset 0 0 30px rgba(var(--accent-rgb),.12)}.leaderboard-scroll-card::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(var(--accent-rgb),.08),transparent 70%);opacity:0;transition:opacity .3s ease}.leaderboard-scroll-card:hover{transform:translateY(-5px);border-color:rgba(var(--accent-rgb),.4);box-shadow:0 12px 32px rgba(0,0,0,.4)}.leaderboard-scroll-card:hover::before{opacity:1}.leaderboard-card-avatar-container{position:relative;display:flex;align-items:center;justify-content:center}.leaderboard-card-avatar{width:80px;height:80px;border-radius:50%;border:3px solid var(--glass-border);object-fit:cover}.leaderboard-card-rank-badge{position:absolute;right:10px;top:10px;font-size:2rem;background:var(--surface);border-radius:50%;width:45px;height:45px;display:flex;align-items:center;justify-content:center;border:2px solid var(--glass-border);box-shadow:0 4px 12px rgba(0,0,0,.3);z-index:2}.leaderboard-scroll-card{position:relative}.leaderboard-card-info{text-align:center;width:100%;padding:0 .5rem}.leaderboard-card-info strong{font-size:1.1rem;font-weight:700;color:var(--text-primary);display:block;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.leaderboard-card-info small{font-size:.9rem;color:var(--text-secondary);opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%}.leaderboard-card-xp{font-size:1.3rem;font-weight:800;background:linear-gradient(135deg,var(--accent),var(--accent-light));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@media (min-width:769px){.leaderboard-scroll-card{min-width:280px;max-width:280px}}@media (max-width:768px){.leaderboard-scroll-card{min-width:45%;max-width:45%;padding:1.25rem}.leaderboard-card-rank{font-size:2rem}.leaderboard-card-avatar{width:70px;height:70px}.leaderboard-card-rank-badge{font-size:1.7rem;width:40px;height:40px;right:8px;top:8px}.leaderboard-card-avatar{width:70px;height:70px}.leaderboard-card-info strong{font-size:1rem}.leaderboard-card-info small{font-size:.85rem}.leaderboard-card-xp{font-size:1.1rem}}.leaderboard-item{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--element-radius);transition:all .3s cubic-bezier(.4, 0, .2, 1);position:relative;overflow:hidden}.leaderboard-item::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(var(--accent-rgb),.08),transparent 70%);opacity:0;transition:opacity .3s ease}.leaderboard-item:hover{transform:translateY(-3px);border-color:rgba(var(--accent-rgb),.4);box-shadow:0 8px 24px rgba(0,0,0,.3)}.leaderboard-item:hover::before{opacity:1}.leaderboard-rank{font-size:1.8rem;font-weight:400;min-width:50px;height:50px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:rgba(var(--accent-rgb),.08);border:2px solid rgba(var(--accent-rgb),.2);flex-shrink:0;transition:all .3s ease}.leaderboard-item:first-child .leaderboard-rank,.leaderboard-item:nth-child(2) .leaderboard-rank,.leaderboard-item:nth-child(3) .leaderboard-rank{font-size:2rem;background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.15);box-shadow:0 4px 15px rgba(0,0,0,.2)}.leaderboard-item:nth-child(n+6) .leaderboard-rank{font-size:1.1rem;font-weight:800;color:var(--accent);background:rgba(var(--accent-rgb),.15);border-color:rgba(var(--accent-rgb),.3)}.leaderboard-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.leaderboard-info strong{font-size:1rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.leaderboard-tag{font-size:.65rem;font-weight:800;letter-spacing:.5px;padding:.25rem .6rem;border-radius:12px;background:linear-gradient(135deg,var(--accent),var(--accent-light));color:#000;text-transform:uppercase;white-space:nowrap;box-shadow:0 2px 8px rgba(var(--accent-rgb),.3);text-align:center}.leaderboard-item:first-child .leaderboard-tag{background:linear-gradient(135deg,gold,orange);color:#000;box-shadow:0 2px 8px rgba(255,215,0,.4)}.leaderboard-item:nth-child(2) .leaderboard-tag{background:linear-gradient(135deg,silver,#a8a8a8);color:#000;box-shadow:0 2px 8px rgba(192,192,192,.4)}.leaderboard-item:nth-child(3) .leaderboard-tag{background:linear-gradient(135deg,#cd7f32,#b87333);color:#000!important;box-shadow:0 2px 8px rgba(205,127,50,.4)}.leaderboard-info small{font-size:.85rem;color:var(--text-secondary);opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.leaderboard-right{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;flex-shrink:0}.leaderboard-time{font-size:.95rem;font-weight:700;color:var(--accent);padding:.5rem 1rem;background:rgba(var(--accent-rgb),.1);border-radius:20px;border:1px solid rgba(var(--accent-rgb),.2);white-space:nowrap}.leaderboard-item:first-child .leaderboard-time{background:linear-gradient(135deg,rgba(255,215,0,.2),rgba(255,165,0,.2));border-color:rgba(255,215,0,.4);color:gold}.leaderboard-item:nth-child(2) .leaderboard-time{background:linear-gradient(135deg,rgba(192,192,192,.2),rgba(168,168,168,.2));border-color:rgba(192,192,192,.4);color:silver}.leaderboard-item:nth-child(3) .leaderboard-time{background:linear-gradient(135deg,rgba(205,127,50,.2),rgba(184,115,51,.2));border-color:rgba(205,127,50,.4);color:#cd7f32}@media (max-width:768px){.leaderboard-item{padding:.9rem 1rem;gap:.75rem}.leaderboard-rank{min-width:45px;height:45px;font-size:1.5rem}.leaderboard-item:first-child .leaderboard-rank,.leaderboard-item:nth-child(2) .leaderboard-rank,.leaderboard-item:nth-child(3) .leaderboard-rank{font-size:1.7rem}.leaderboard-info strong{font-size:.95rem}.leaderboard-info small{font-size:.8rem}.leaderboard-right{gap:.4rem}.leaderboard-time{font-size:.85rem;padding:.4rem .8rem}.leaderboard-tag{font-size:.6rem;padding:.2rem .5rem}}.stat-card-rank,.user-rank-badge{display:inline-flex;align-items:center;justify-content:center;padding:.6rem 1.2rem;border-radius:20px;font-size:.95rem;font-weight:800;letter-spacing:.5px;text-transform:uppercase;box-shadow:0 4px 15px rgba(0,0,0,.3);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:2px solid;transition:all .3s ease}.user-rank-badge{padding:.4rem .9rem;font-size:.8rem;border-radius:16px}.user-rank-badge{background:linear-gradient(135deg,rgba(var(--accent-rgb),.2),rgba(var(--accent-rgb),.1));border-color:rgba(var(--accent-rgb),.4);color:var(--accent)}.stat-card-rank{background:linear-gradient(135deg,rgba(var(--accent-rgb),.2),rgba(var(--accent-rgb),.1));border-color:rgba(var(--accent-rgb),.4);color:var(--accent);font-size:.6rem!important;padding:.2rem .5rem!important}.stat-card-rank[data-rank="1"],.user-rank-badge[data-rank="1"]{background:linear-gradient(135deg,rgba(255,215,0,.25),rgba(255,165,0,.15));border-color:gold;color:gold;box-shadow:0 4px 20px rgba(255,215,0,.4)}.stat-card-rank[data-rank="2"],.user-rank-badge[data-rank="2"]{background:linear-gradient(135deg,rgba(192,192,192,.25),rgba(168,168,168,.15));border-color:silver;color:silver;box-shadow:0 4px 20px rgba(192,192,192,.4)}.stat-card-rank[data-rank="3"],.user-rank-badge[data-rank="3"]{background:linear-gradient(135deg,rgba(205,127,50,.25),rgba(184,115,51,.15));border-color:#cd7f32;color:#cd7f32;box-shadow:0 4px 20px rgba(205,127,50,.4)}.stat-card-rank:hover,.user-rank-badge:hover{transform:translateY(-2px);box-shadow:0 6px 25px rgba(0,0,0,.4)}.stats-overview-container{margin:1.5rem 0;display:flex;justify-content:center;width:100%}.stats-overview-container .stat-card{width:100%;max-width:450px}.stat-card{background:var(--glass-bg);backdrop-filter:blur(var(--blur-amt));-webkit-backdrop-filter:blur(var(--blur-amt));border:1px solid var(--glass-border);border-radius:var(--card-radius);padding:2rem;display:flex;flex-direction:column;align-items:center;gap:1rem;box-shadow:var(--glass-shadow);position:relative;overflow:hidden;transition:var(--transition)}.stat-card::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(var(--accent-rgb),.15) 0,transparent 70%);transform:translate(0,0) scale(1);transition:transform .6s cubic-bezier(.4, 0, .2, 1);z-index:0;pointer-events:none}.stat-card:hover::before{transform:translate(10%,10%) scale(1.1)}.stat-card:hover{transform:translateY(-4px);box-shadow:0 12px 48px rgba(0,0,0,.4);border-color:var(--accent)}.stat-card-icon{width:80px;height:80px;border-radius:50%;background:0 0;display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:#000;box-shadow:none;position:relative;z-index:1}.stat-card-value{font-size:clamp(2.5rem, 6vw, 4rem);font-weight:900;background:linear-gradient(135deg,var(--accent),var(--accent-light));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-2px;line-height:1;text-shadow:0 4px 12px rgba(var(--accent-rgb),.3)}.stat-card-label{font-size:clamp(.9rem, 1.5vw, 1.1rem);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:2px;opacity:.8}.stat-card-gap{margin-top:.5rem;padding:.5rem 1rem;background:rgba(var(--accent-rgb),.1);border-radius:12px;border:1px solid rgba(var(--accent-rgb),.2);color:var(--accent);font-size:.85rem;font-weight:600}@media (max-width:768px){.stat-card{padding:1.5rem}.stat-card-icon{width:60px;height:60px;font-size:2rem}}.stat-card[data-rank="1"]{background:linear-gradient(135deg,rgba(255,215,0,.2),rgba(255,165,0,.1));border-color:rgba(255,215,0,.5)}.stat-card[data-rank="1"] .stat-card-icon{background:0 0;box-shadow:none}.stat-card[data-rank="1"] .stat-card-value{background:linear-gradient(135deg,gold,orange);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-card[data-rank="2"]{background:linear-gradient(135deg,rgba(192,192,192,.2),rgba(168,168,168,.1));border-color:rgba(192,192,192,.5)}.stat-card[data-rank="2"] .stat-card-icon{background:0 0;box-shadow:none}.stat-card[data-rank="2"] .stat-card-value{background:linear-gradient(135deg,silver,#a8a8a8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-card[data-rank="3"]{background:linear-gradient(135deg,rgba(205,127,50,.2),rgba(184,115,51,.1));border-color:rgba(205,127,50,.5)}.stat-card[data-rank="3"] .stat-card-icon{background:0 0;box-shadow:none}.stat-card[data-rank="3"] .stat-card-value{background:linear-gradient(135deg,#cd7f32,#b87333);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.profile-top-bar{display:flex;justify-content:space-between;align-items:center;padding:0 0 .75rem 0;border-bottom:1px solid var(--glass-border);margin-bottom:1rem}.settings-icon-btn{background:0 0;border:none;color:var(--text-primary);font-size:1.4rem;cursor:pointer;padding:8px;border-radius:50%;transition:all .2s ease}.settings-icon-btn:hover{background:rgba(255,255,255,.1);transform:rotate(90deg)}.profile-summary-container{display:flex;align-items:center;gap:2rem;margin-bottom:2rem;padding:1rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--card-radius)}.profile-pic-wrapper{flex-shrink:0}#profile-img-lg{width:100px;height:100px;border-radius:50%;object-fit:cover;border:3px solid var(--surface);box-shadow:0 8px 20px rgba(0,0,0,.3)}.profile-stats-wrapper{display:flex;flex-grow:1;justify-content:space-around;text-align:center}.profile-stat-item{display:flex;flex-direction:column;align-items:center;gap:.25rem}.stat-value{font-size:1.4rem;font-weight:700;color:var(--text-primary)}.stat-label{font-size:.85rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.profile-bio-section{padding:0 .5rem;margin-bottom:2rem}.profile-display-name{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.25rem}.profile-join-text{font-size:.95rem;color:var(--text-secondary)}.profile-actions-row{display:flex;justify-content:center;margin-bottom:2rem}@media (max-width:768px){body.keyboard-open #mainNav,body.keyboard-open .bottom-player,body.keyboard-open .sidebar{display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}body.keyboard-open .app-container{height:100dvh;min-height:-webkit-fill-available;padding-bottom:0;overflow:hidden}}@media (max-width:768px){.profile-summary-container{flex-direction:column;text-align:center;gap:1.5rem;padding:1.5rem}.profile-stats-wrapper{width:100%;justify-content:space-evenly}.profile-bio-section{text-align:center}}@media (max-width:480px){#profile-img-lg{width:70px;height:70px}}.profile-pic-wrapper{position:relative;overflow:hidden}.profile-pic-overlay{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;opacity:0;cursor:pointer;transition:opacity .3s ease;color:#fff;font-size:1.5rem}.profile-pic-wrapper:hover .profile-pic-overlay{opacity:1}#cropperModal{z-index:10000!important;opacity:0;transition:opacity .3s ease;visibility:hidden}#cropperModal.active{opacity:1;visibility:visible}#cropperModal .modal-content{transform:translateY(20px) scale(.95);transition:transform .3s cubic-bezier(.4, 0, .2, 1)}#cropperModal.active .modal-content{transform:translateY(0) scale(1)}.cropper-container img{display:block;max-width:100%}.stats-leaderboard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1rem}.stats-leaderboard-card{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--card-radius);padding:1.5rem;display:flex;flex-direction:column;align-items:center;gap:1rem;transition:all .3s cubic-bezier(.4, 0, .2, 1);position:relative;overflow:hidden}.stats-leaderboard-card::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(var(--accent-rgb),.08),transparent 70%);opacity:0;transition:opacity .3s ease}.stats-leaderboard-card:hover{transform:translateY(-5px);border-color:rgba(var(--accent-rgb),.4);box-shadow:0 12px 32px rgba(0,0,0,.4)}.stats-leaderboard-card:hover::before{opacity:1}.stats-leaderboard-card[data-rank="1"]{background:linear-gradient(135deg,rgba(255,215,0,.15),rgba(255,165,0,.08));border:2px solid rgba(255,215,0,.4);box-shadow:0 8px 32px rgba(255,215,0,.3)}.stats-leaderboard-card[data-rank="2"]{background:linear-gradient(135deg,rgba(192,192,192,.15),rgba(168,168,168,.08));border:2px solid rgba(192,192,192,.4);box-shadow:0 8px 32px rgba(192,192,192,.3)}.stats-leaderboard-card[data-rank="3"]{background:linear-gradient(135deg,rgba(205,127,50,.15),rgba(184,115,51,.08));border:2px solid rgba(205,127,50,.4);box-shadow:0 8px 32px rgba(205,127,50,.3)}.stats-leaderboard-card[data-rank="4"]{background:linear-gradient(135deg,rgba(138,43,226,.15),rgba(123,31,162,.08));border:2px solid rgba(138,43,226,.4);box-shadow:0 8px 32px rgba(138,43,226,.3)}.stats-leaderboard-card[data-rank="5"]{background:linear-gradient(135deg,rgba(255,215,0,.12),rgba(255,193,7,.06));border:2px solid rgba(255,215,0,.35);box-shadow:0 8px 32px rgba(255,215,0,.25)}@media (max-width:768px){.stats-leaderboard-grid{grid-template-columns:1fr}}.leaderboard-scroll-card[data-rank="10"],.leaderboard-scroll-card[data-rank="6"],.leaderboard-scroll-card[data-rank="7"],.leaderboard-scroll-card[data-rank="8"],.leaderboard-scroll-card[data-rank="9"]{box-shadow:inset 0 0 20px rgba(var(--accent-rgb),.25),0 4px 12px rgba(0,0,0,.15);border:1px solid rgba(var(--accent-rgb),.3)}.leaderboard-scroll-card[data-rank="10"]:hover,.leaderboard-scroll-card[data-rank="6"]:hover,.leaderboard-scroll-card[data-rank="7"]:hover,.leaderboard-scroll-card[data-rank="8"]:hover,.leaderboard-scroll-card[data-rank="9"]:hover{box-shadow:inset 0 0 30px rgba(var(--accent-rgb),.35),0 8px 24px rgba(var(--accent-rgb),.2);border-color:rgba(var(--accent-rgb),.5)}.profile-pic-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.6);border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;cursor:pointer;z-index:5}.profile-pic-wrapper:hover .profile-pic-overlay{opacity:1}.profile-pic-overlay i{color:#fff;font-size:1.5rem}.profile-pic-edit-btn{position:absolute;bottom:0;right:0;width:32px;height:32px;background:var(--accent);border-radius:50%;display:flex!important;align-items:center;justify-content:center;box-shadow:0 4px 10px rgba(0,0,0,.4);cursor:pointer;z-index:10;transition:transform .2s ease;border:3px solid #000;transform:translate(-20%,-20%)}.profile-pic-edit-btn:hover{transform:scale(1.1)}.profile-pic-edit-btn i{color:#fff;font-size:.9rem}.profile-pic-wrapper{position:relative;width:110px;height:110px;margin:0 auto .1rem}#profile-img-lg{width:100%;height:100%;border-radius:50%;object-fit:cover;border:4px solid var(--accent);box-shadow:0 8px 32px rgba(0,0,0,.3)}.profile-display-name{margin:0;padding:0;line-height:1.2}.profile-join-text{margin:.2rem 0 1rem;opacity:.7;font-size:.9rem}.email-validation-message.available{color:#48bb78;font-weight:500}.toggle-metric-btn{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.1);color:var(--text-secondary);padding:.5rem 1rem;border-radius:20px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.toggle-metric-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.settings-accordion{background:rgba(25,25,35,.6);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08);border-radius:16px;margin-bottom:8px;overflow:hidden;transition:all .3s ease}.settings-accordion:hover{background:rgba(255,255,255,.04);box-shadow:0 4px 20px rgba(0,0,0,.2);transform:translateY(-1px);border-color:rgba(var(--accent-rgb),.3)}.settings-accordion[open]{background:rgba(20,20,25,.8);border-color:rgba(var(--accent-rgb),.5);box-shadow:0 8px 30px rgba(0,0,0,.4)}.settings-accordion summary{padding:16px 20px;cursor:pointer;font-weight:600;font-size:1rem;letter-spacing:.5px;color:var(--text-primary);display:flex;align-items:center;gap:12px;list-style:none;position:relative;transition:color .3s ease;user-select:none}.settings-accordion summary::after{content:'\f078';font-family:'Font Awesome 5 Free';font-weight:900;margin-left:auto;font-size:.8rem;color:var(--text-secondary);opacity:.6;transition:transform .3s cubic-bezier(.4, 0, .2, 1)}.settings-accordion[open] summary::after{transform:rotate(180deg);color:var(--accent);opacity:1}.settings-accordion summary::-webkit-details-marker{display:none}.settings-accordion summary i:first-child{color:var(--accent);width:24px;text-align:center;font-size:1.2rem;filter:drop-shadow(0 0 10px rgba(var(--accent-rgb), .3));transition:transform .3s ease}.settings-accordion:hover summary i:first-child{transform:scale(1.1)}.settings-accordion-content{padding:0 20px 12px;border-top:1px solid rgba(255,255,255,.05);animation:slideDown .2s ease-out}@keyframes slideDown{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.settings-option{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05);min-height:44px;width:100%}.settings-option:last-child{border-bottom:none;padding-bottom:0}.settings-option>div{flex:1;padding-right:12px;display:flex;flex-direction:column;justify-content:center;text-align:left!important}.settings-option h3{font-size:1rem;margin:0 0 4px 0;color:var(--text-primary);font-weight:500;line-height:1.2}.settings-option p{font-size:.85rem;margin:0;color:var(--text-secondary);line-height:1.3;font-weight:300}button.settings-accordion[onclick*=logout]{background:rgba(255,60,60,.1)!important;border:1px solid rgba(255,60,60,.2)!important;margin-top:20px!important}button.settings-accordion[onclick*=logout]:hover{background:rgba(255,60,60,.15)!important;transform:translateY(-2px);box-shadow:0 8px 30px rgba(255,0,0,.15);border-color:rgba(255,60,60,.5)!important}button.settings-accordion[onclick*=logout] .fas,button.settings-accordion[onclick*=logout] span{color:#ff4d4d!important}.modal-btn.danger,.settings-btn.danger-btn,button.danger-btn{background:rgba(239,68,68,.15)!important;border:1px solid rgba(239,68,68,.5)!important;color:#fff!important;box-shadow:0 4px 15px rgba(239,68,68,.1)!important;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important}.modal-btn.danger:hover,.settings-btn.danger-btn:hover,button.danger-btn:hover{background:rgba(239,68,68,.25)!important;border-color:#ef4444!important;transform:translateY(-2px);box-shadow:0 6px 20px rgba(239,68,68,.2)!important}.modal-btn.primary,.settings-btn.primary-action,.toggle-btn.active{background:rgba(var(--accent-rgb),.15)!important;border:1px solid var(--accent)!important;color:var(--accent)!important;box-shadow:0 4px 15px rgba(var(--accent-rgb),.1)!important;backdrop-filter:blur(10px)!important}.modal-btn.primary:hover,.settings-btn.primary-action:hover{background:rgba(var(--accent-rgb),.25)!important;box-shadow:0 6px 20px rgba(var(--accent-rgb),.2)!important;transform:translateY(-2px)}#nowPlayingPlayPauseBtn,#playPauseBtn,.pad-center.play-btn,.player-mobile-controls .play-btn{background:rgba(255,255,255,.1)!important;border:1px solid rgba(255,255,255,.2)!important;color:var(--text-primary)!important;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;box-shadow:0 4px 15px rgba(0,0,0,.2)!important;border-radius:50%!important}#nowPlayingPlayPauseBtn:hover,#playPauseBtn:hover,.pad-center.play-btn:hover,.player-mobile-controls .play-btn:hover{background:rgba(255,255,255,.2)!important;border-color:rgba(255,255,255,.4)!important;transform:scale(1.05)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:rgba(var(--accent-rgb),.3)!important;border-radius:10px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:rgba(var(--accent-rgb),.5)!important;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar-button{display:none;width:0;height:0}.stats-toggle-container{display:flex!important;justify-content:center;align-items:center;gap:.5rem;margin:1rem 0}@media (min-width:768px){#stats .filter-tabs{justify-content:center}.stats-header-controls{display:flex;flex-direction:column;align-items:center;gap:1rem}}.toggle-metric-btn{background:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.1)!important;color:var(--text-secondary)!important;padding:.5rem 1rem!important;border-radius:20px!important;font-size:.85rem!important;cursor:pointer;transition:all .2s ease;font-family:inherit}.toggle-metric-btn:hover{background:rgba(255,255,255,.1)!important;color:var(--text-primary)!important}.toggle-metric-btn.active{background:rgba(var(--accent-rgb),.2)!important;border-color:var(--accent)!important;color:#fff!important;box-shadow:0 4px 15px rgba(var(--accent-rgb),.2)!important}#nowPlayingPlayPauseBtn{background:rgba(255,255,255,.1)!important;border:1px solid rgba(255,255,255,.2)!important;color:#fff!important;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;box-shadow:0 4px 15px rgba(0,0,0,.2)!important;border-radius:50%!important;position:absolute!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;width:56px!important;height:56px!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:10!important;margin:0!important;outline:0!important;cursor:pointer!important}#nowPlayingPlayPauseBtn i{font-size:1.4rem!important;color:#fff!important;margin:0!important;display:inline-block!important}#nowPlayingPlayPauseBtn:hover{background:rgba(255,255,255,.2)!important;border-color:rgba(255,255,255,.5)!important;box-shadow:0 0 20px rgba(255,255,255,.3)!important;transform:translate(-50%,-50%) scale(1.05)!important;color:#fff!important}#nowPlayingPlayPauseBtn:active{transform:translate(-50%,-50%) scale(.95)!important}#toast-container{position:fixed;top:20px;right:20px;z-index:999999;display:flex;flex-direction:column;gap:12px;pointer-events:none}@media (max-width:768px){#toast-container{top:40px;left:10px;right:10px;align-items:stretch}}.notification-toast{position:relative;background:rgba(25,25,30,.85);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-left:4px solid var(--accent);border-radius:50px;padding:12px 20px;width:320px;max-width:100%;display:flex;align-items:flex-start;gap:12px;color:#fff;box-shadow:0 10px 40px rgba(0,0,0,.5);pointer-events:auto;overflow:hidden;animation:toastSlideIn .4s cubic-bezier(.2,.8,.2,1) forwards;transition:all .3s ease}@media (max-width:768px){.notification-toast{width:100%;min-width:0}}@keyframes toastSlideIn{0%{opacity:0;transform:translateX(40px) scale(.9)}70%{transform:translateX(-4px) scale(1.02)}100%{opacity:1;transform:translateX(0) scale(1)}}@keyframes toastSlideInMobile{0%{opacity:0;transform:translateY(-40px) scale(.9)}70%{transform:translateY(4px) scale(1.02)}100%{opacity:1;transform:translateY(0) scale(1)}}.notification-toast{animation:toastSlideIn .5s cubic-bezier(.34,1.56,.64,1) forwards}.notification-toast.hiding{animation:toastSlideOut .4s cubic-bezier(.4,0,.2,1) forwards}@keyframes toastSlideOut{0%{opacity:1;transform:translateX(0) scale(1);max-height:150px;margin-bottom:0}100%{opacity:0;transform:translateX(20px) scale(.9);max-height:0;margin-bottom:-12px;padding-top:0;padding-bottom:0;border:none}}@keyframes toastSlideOutMobile{0%{opacity:1;transform:translateY(0) scale(1);max-height:150px;margin-bottom:0}100%{opacity:0;transform:translateY(-20px) scale(.9);max-height:0;margin-bottom:-12px;padding-top:0;padding-bottom:0;border:none}}@media (max-width:768px){.notification-toast{animation:toastSlideInMobile .5s cubic-bezier(.34,1.56,.64,1) forwards}.notification-toast.hiding{animation:toastSlideOutMobile .4s cubic-bezier(.4,0,.2,1) forwards}}.notification-toast.notification-success{border-left-color:#2ecc71}.notification-toast.notification-success .notification-icon{color:#2ecc71;background:rgba(46,204,113,.15)}.notification-toast.notification-error{border-left-color:#e74c3c}.notification-toast.notification-error .notification-icon{color:#e74c3c;background:rgba(231,76,60,.15)}.notification-toast.notification-warning{border-left-color:#f1c40f}.notification-toast.notification-warning .notification-icon{color:#f1c40f;background:rgba(241,196,15,.15)}.notification-toast.notification-info{border-left-color:var(--accent)}.notification-toast.notification-info .notification-icon{color:var(--accent);background:rgba(var(--accent-rgb),.15)}.notification-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}.notification-content{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.notification-title{font-weight:600;font-size:.95rem;line-height:1.2}.notification-message{font-size:.85rem;color:rgba(255,255,255,.7);line-height:1.4;word-wrap:break-word}.notification-close{background:0 0;border:none;color:rgba(255,255,255,.4);cursor:pointer;padding:4px;transition:color .2s;font-size:.9rem}.notification-close:hover{color:#fff}.notification-progress{position:absolute;bottom:0;left:0;height:3px;background:rgba(255,255,255,.2);width:100%}.notification-progress-bar{height:100dvh;background:rgba(255,255,255,.6);width:100%;transform-origin:left;animation:progressAutoplay linear forwards}@keyframes progressAutoplay{to{transform:scaleX(0)}}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-bottom:2rem}@media (max-width:768px){.account-grid{grid-template-columns:1fr}}.profile-info-item.full-width{grid-column:1/-1}.profile-info-item{display:flex;flex-direction:column;gap:.5rem}.profile-info-item label{font-size:.9rem;color:var(--text-secondary);margin-left:.2rem}.glass-input{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--element-radius);padding:.8rem 1rem;color:var(--text-primary);font-size:1rem;transition:all .2s ease;width:100%}.glass-input:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.2);background:rgba(255,255,255,.1)}.glass-input:disabled{opacity:.6;cursor:not-allowed;background:rgba(0,0,0,.2)}.profile-info-item.editing .glass-input{background:rgba(0,0,0,.4);border-color:var(--accent)}.segmented-control{display:flex;background:rgba(0,0,0,.3);border-radius:50px;padding:4px;position:relative;border:1px solid var(--glass-border);gap:0}.segmented-control input[type=radio]{display:none}.segment-btn{flex:1;text-align:center;padding:.6rem 1rem;cursor:pointer;border-radius:50px;color:var(--text-secondary);font-weight:600;transition:all .3s cubic-bezier(.25, .1, .25, 1);display:flex;align-items:center;justify-content:center;gap:.5rem;user-select:none}.segmented-control input[type=radio]:checked+.segment-btn{background:var(--accent);color:#fff;box-shadow:0 2px 10px rgba(0,0,0,.2)}.segmented-control[data-disabled=true] input[type=radio]:checked+.segment-btn{background:rgba(255,255,255,.1);color:var(--text-primary);box-shadow:none}.mobile-only-nav{display:none!important}@media (max-width:768px){.mobile-only-nav{display:flex!important}}#chat{height:100vh;padding-bottom:80px}.chat-view{display:none;flex-direction:column;flex:1;overflow-y:auto}.chat-view.active{display:flex}.chat-item{display:flex;align-items:center;padding:12px 0;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.05);transition:background .2s}.chat-item:active{background:rgba(255,255,255,.05)}.chat-avatar-wrapper{position:relative;margin-right:15px}.chat-avatar{width:50px;height:50px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.1)}.chat-avatar-wrapper.online::after{content:'';position:absolute;bottom:2px;right:2px;width:12px;height:12px;background:#4cd137;border:2px solid var(--surface);border-radius:50%}.chat-info{flex:1;min-width:0}.chat-name{font-weight:600;margin-bottom:4px;color:var(--text-primary);font-size:1rem}.chat-preview{font-size:.85rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.8}.chat-meta{display:flex;flex-direction:column;align-items:flex-end;margin-left:10px;font-size:.75rem;color:var(--text-secondary);gap:4px}.unread-badge{background:var(--accent);color:#fff;font-weight:700;border-radius:10px;padding:2px 6px;font-size:.7rem;min-width:18px;text-align:center}#chatRoomOverlay{position:fixed;top:0;left:0;width:100%;height:100dvh;background:#000;z-index:2000;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .3s cubic-bezier(.4, 0, .2, 1);overflow:hidden}#chatRoomOverlay.active{transform:translateX(0)}.chat-header{position:sticky;top:0;display:flex;align-items:center;gap:12px;padding:20px clamp(16px,5vw,30px) 12px;padding-top:calc(20px + env(safe-area-inset-top,0px));background:#0f0f13;border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:150;min-height:60px;flex-shrink:0}.chat-header__back-btn{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:50%;color:var(--text-primary);font-size:1.1rem;cursor:pointer;transition:all .2s ease}.chat-header__back-btn:hover{background:rgba(255,255,255,.1);transform:scale(1.05)}.chat-header__back-btn:active{transform:scale(.95)}.chat-header__user{flex:1;display:flex;align-items:center;gap:12px;min-width:0}.chat-header__avatar{flex-shrink:0;width:40px;height:40px;border-radius:50%;border:2px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05)}.chat-header__avatar img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}.chat-header__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.chat-header__name{margin:0;font-size:1.05rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.chat-header__status{font-size:.75rem;font-weight:500;color:var(--text-secondary);opacity:.8;line-height:1.2}@media (max-width:480px){.chat-header{gap:10px;padding:16px 16px 10px}.chat-header__back-btn{width:36px;height:36px;font-size:1rem}.chat-header__avatar{width:36px;height:36px}.chat-header__name{font-size:.95rem}.chat-header__status{font-size:.7rem}}.chat-messages-area{flex:1;overflow-y:auto;padding:15px;display:flex;flex-direction:column;gap:10px;background:rgba(0,0,0,.2)}.message-bubble{max-width:75%;position:relative;word-wrap:break-word;font-size:.95rem;line-height:1.4;animation:fadeIn .3s ease}.message-bubble.sent{align-self:flex-end}.message-bubble.received{align-self:flex-start}.message-time{font-size:.7rem;opacity:.7;margin-top:4px;display:block;text-align:right}.message-bubble.single-emoji,.message-bubble.single-emoji-msg{background:0 0!important;border:none!important;box-shadow:none!important;padding:0!important}.single-emoji-container{display:flex;align-items:center;justify-content:center}.chat-footer{position:relative;display:flex;flex-direction:column;flex-shrink:0;padding:12px clamp(16px,5vw,20px);padding-bottom:calc(12px + env(safe-area-inset-bottom,20px));background:#0f0f13;border-top:none;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:150;width:100%}.chat-footer__reply{display:none;align-items:center;gap:10px;padding:10px 14px;margin-bottom:10px;background:rgba(255,255,255,.05);border-left:3px solid var(--primary);border-radius:10px;animation:slideDown .2s ease}.chat-footer__reply.active{display:flex}.chat-footer__reply-content{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:3px}.chat-footer__reply-sender{font-size:.75rem;font-weight:600;color:#fff;margin-bottom:2px}.chat-footer__reply-text{font-size:.75rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-footer__reply-close{flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:50%;color:var(--text-secondary);font-size:.9rem;cursor:pointer;transition:all .2s ease}.chat-footer__reply-close:hover{background:rgba(255,255,255,.1);transform:scale(1.1)}.chat-footer__input-row{display:flex;align-items:flex-end;gap:10px}.chat-footer__textarea{flex:1;background:rgba(255,255,255,.08);border:1.5px solid rgba(255,255,255,.1);border-radius:20px;padding:10px 16px;color:var(--text-primary);font-size:.95rem;font-family:inherit;line-height:1.4;max-height:120px;min-height:44px;overflow-y:auto;resize:none;transition:all .2s ease;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,0.2) transparent}.chat-footer__textarea::placeholder{color:rgba(255,255,255,.4)}.chat-footer__textarea:focus{outline:0;border-color:var(--primary);background:rgba(255,255,255,.1);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.chat-footer__textarea::-webkit-scrollbar{width:6px}.chat-footer__textarea::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:3px}.chat-footer__send-btn{flex-shrink:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:rgba(var(--accent-rgb),.2);border:1px solid rgba(var(--accent-rgb),.5);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:50%;color:#fff;font-size:1.1rem;cursor:pointer;transition:all .3s cubic-bezier(.4, 0, .2, 1);box-shadow:0 4px 15px rgba(var(--accent-rgb),.15);position:relative}.chat-footer__send-btn:hover{transform:scale(1.08) translateY(-1px);background:rgba(var(--accent-rgb),.3);border-color:var(--accent);box-shadow:0 6px 20px rgba(var(--accent-rgb),.3)}.chat-footer__send-btn:active{transform:scale(.96) translateY(0);background:rgba(var(--accent-rgb),.15);box-shadow:0 2px 8px rgba(var(--accent-rgb),.1)}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:480px){.chat-footer{padding:10px 12px}.chat-footer__textarea{font-size:.9rem;padding:9px 14px;min-height:40px}.chat-footer__send-btn{width:40px;height:40px}}.reply-info{flex:1;display:flex;flex-direction:row;align-items:center;gap:8px;min-width:0;overflow:hidden}.reply-sender{font-weight:600;font-size:.85rem;color:var(--primary);white-space:nowrap}.reply-text{font-size:.85rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;opacity:.8}.reply-close-btn{background:0 0;border:none;color:var(--text-secondary);font-size:1rem;cursor:pointer;padding:4px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:color .2s;margin-left:8px;min-width:24px}.reply-close-btn:hover{color:var(--error);background:rgba(255,255,255,.1)}.request-item{display:flex;align-items:center;justify-content:space-between;padding:12px;background:rgba(255,255,255,.05);border-radius:12px;margin-bottom:10px}.request-actions{display:flex;gap:8px}.req-btn{padding:6px 12px;border-radius:20px;border:none;cursor:pointer;font-weight:600;font-size:.85rem}.req-btn.accept{background:var(--accent);color:#fff}.req-btn.reject{background:rgba(255,255,255,.1);color:var(--text-primary)}#chatMessagesArea{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;min-height:0;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}#chatMessagesArea{padding-bottom:100px;-ms-overflow-style:none;scrollbar-width:none}#chatMessagesArea::-webkit-scrollbar{display:none}.message-container{display:flex;align-items:center;position:relative;width:100%;margin-bottom:2px;touch-action:pan-y;pointer-events:none}.reply-swipe-icon-wrapper{position:absolute;left:-40px;width:30px;height:30px;opacity:0;display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:1.2rem;pointer-events:none;transition:opacity .2s;z-index:1}.message-bubble{position:relative;z-index:2;cursor:pointer;user-select:none;-webkit-user-select:none;pointer-events:auto;touch-action:pan-y}.explore-view-container{width:100%;height:auto;min-height:100%;display:flex;flex-direction:column;padding:10px 0;overflow-y:auto;position:relative}.explore-view-container .section-title{position:relative;z-index:20;margin-bottom:20px;padding-left:10px}.explore-grid-wrapper{width:100%;display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:max-content;gap:15px;padding-bottom:100px;opacity:1!important;visibility:visible!important;isolation:isolate;align-items:start}.explore-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 15px;min-height:220px;width:100%;border-radius:20px;background:rgba(255,255,255,.03);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 20px rgba(0,0,0,.2);transition:all .3s cubic-bezier(.25, .8, .25, 1);overflow:hidden;z-index:10}.explore-card:hover{transform:translateY(-5px) scale(1.02);background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.15);box-shadow:0 15px 35px rgba(0,0,0,.3)}.explore-card .avatar-wrapper{position:relative;width:70px;height:70px;margin-bottom:15px;border-radius:50%;padding:3px;background:linear-gradient(135deg,var(--accent) 0,rgba(255,255,255,.2) 100%)}.explore-card img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:3px solid var(--bg-secondary);background-color:var(--bg-secondary)}.explore-card .name{font-size:1rem;font-weight:700;color:#fff;margin-bottom:4px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.explore-card .username{font-size:.8rem;color:rgba(255,255,255,.6);margin-bottom:15px}.explore-shimmer-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 15px;min-height:220px;width:100%;border-radius:20px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);overflow:hidden}.shimmer-animate{animation:shimmer 1.5s infinite linear;background:linear-gradient(to right,rgba(255,255,255,.03) 0,rgba(255,255,255,.08) 50%,rgba(255,255,255,.03) 100%);background-size:1000px 100%}.explore-shimmer-avatar{width:70px;height:70px;border-radius:50%;margin-bottom:15px}.explore-shimmer-line{height:12px;border-radius:6px;margin-bottom:8px}.explore-shimmer-line.short{width:40%}.explore-shimmer-line.long{width:70%}.explore-shimmer-btn{width:80px;height:30px;border-radius:50px;margin-top:5px}@keyframes shimmer{0%{background-position:-1000px 0}100%{background-position:1000px 0}}.explore-card .action-btn{background:rgba(255,255,255,.1);color:#fff;border:none;padding:8px 20px;border-radius:50px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .2s,transform .1s;display:flex;align-items:center;gap:6px}.explore-card .action-btn:hover{background:var(--accent);transform:scale(1.05)}.explore-card .action-btn:active{transform:scale(.95)}.explore-message{grid-column:1/-1;text-align:center;padding:40px 20px;color:rgba(255,255,255,.5);font-size:.95rem;display:flex;flex-direction:column;align-items:center;gap:15px}.explore-message i{font-size:2rem;margin-bottom:10px;color:var(--accent);opacity:.8}.chat-name-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:2px}.chat-time{font-size:.7rem;color:var(--text-secondary);white-space:nowrap;margin-left:8px}.chat-preview{font-size:.85rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center}.explore-skeleton-card{background:rgba(255,255,255,.03);border-radius:12px;padding:15px;display:flex;flex-direction:column;align-items:center;text-align:center;border:1px solid var(--glass-border);gap:10px}.explore-skeleton-avatar{width:60px;height:60px;border-radius:50%;background:rgba(255,255,255,.05);position:relative;overflow:hidden}.explore-skeleton-text{height:14px;border-radius:4px;background:rgba(255,255,255,.05);position:relative;overflow:hidden;width:80%}.explore-skeleton-text.short{width:50%;height:12px}.explore-skeleton-btn{width:80px;height:30px;border-radius:20px;background:rgba(255,255,255,.05);position:relative;overflow:hidden;margin-top:5px}.explore-skeleton-avatar::after,.explore-skeleton-btn::after,.explore-skeleton-text::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:shimmer 1.5s infinite linear}.inline-skeleton-card{min-width:140px;max-width:140px;height:190px;background:rgba(255,255,255,.05);border-radius:12px;border:1px solid var(--glass-border);padding:15px;display:flex;flex-direction:column;align-items:center;gap:10px;flex-shrink:0;position:relative;overflow:hidden}.inline-skeleton-avatar{width:50px;height:50px;border-radius:50%;background:rgba(255,255,255,.08);position:relative;overflow:hidden}.inline-skeleton-text{height:12px;width:80%;background:rgba(255,255,255,.08);border-radius:4px;position:relative;overflow:hidden}.inline-skeleton-btn{height:28px;width:80%;background:rgba(255,255,255,.08);border-radius:14px;margin-top:auto;position:relative;overflow:hidden}.inline-skeleton-avatar::after,.inline-skeleton-btn::after,.inline-skeleton-card::after,.inline-skeleton-text::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:shimmer 1.5s infinite linear}.list-skeleton-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:rgba(255,255,255,.02);border-bottom:1px solid var(--glass-border);gap:15px}.list-skeleton-avatar{width:50px;height:50px;border-radius:50%;background:rgba(255,255,255,.05);position:relative;overflow:hidden;flex-shrink:0}.list-skeleton-content{flex:1;display:flex;flex-direction:column;gap:8px}.list-skeleton-line{height:14px;border-radius:4px;background:rgba(255,255,255,.05);position:relative;overflow:hidden;width:70%}.list-skeleton-line.short{width:40%;height:12px}.list-skeleton-avatar::after,.list-skeleton-line::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:shimmer 1.5s infinite linear}.chat-preview.unread-msg{color:var(--text-primary);font-weight:600}.notification-badge-small{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;background:var(--accent);color:#fff;border-radius:9px;margin-right:4px;box-shadow:0 2px 5px rgba(0,0,0,.2);font-size:.65rem;font-weight:700;padding:0 4px;line-height:1}.fa-check-double{font-size:.75em!important}.filter-tab-btn{position:relative}.badge-small{position:absolute;top:-6px;right:-8px;display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;background:var(--accent);color:#fff;border-radius:10px;font-size:.65rem;font-weight:700;padding:0 4px;line-height:normal;box-shadow:0 2px 4px rgba(0,0,0,.3);margin:0;transform:none}.nav-btn{position:relative!important;overflow:visible!important}.nav-badge{position:absolute;top:4px;right:50%;margin-right:-15px;display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;background:var(--accent);color:#fff;border-radius:10px;font-size:.6rem;font-weight:700;padding:0 4px;line-height:normal;box-shadow:0 2px 4px rgba(0,0,0,.3);z-index:10;pointer-events:none}@media (min-width:769px){.nav-badge{top:50%;right:15px;margin-right:0;transform:translateY(-50%)}}.suggestions-section{margin-top:20px;padding-top:15px;border-top:1px solid var(--glass-border)}.suggestions-header{padding:0 10px 10px;font-weight:600;color:var(--text-primary);font-size:.95rem;display:flex;align-items:center;justify-content:space-between}.inline-suggestions-container{display:flex;overflow-x:auto;gap:12px;padding:5px 10px 15px;scrollbar-width:none;-ms-overflow-style:none}.inline-suggestions-container::-webkit-scrollbar{display:none}.inline-suggestion-card{flex:0 0 130px;background:rgba(255,255,255,.05);border:1px solid var(--glass-border);border-radius:12px;padding:15px 10px;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative}.inline-suggestion-card .close-btn{position:absolute;top:5px;right:5px;background:0 0;border:none;color:var(--text-secondary);font-size:1rem;padding:0;cursor:pointer;opacity:.6}.inline-suggestion-card img{width:50px;height:50px;border-radius:50%;border:2px solid var(--accent);margin-bottom:8px;object-fit:cover}.inline-suggestion-card .name{font-size:.85rem;font-weight:600;color:#fff;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.inline-suggestion-card .username{font-size:.7rem;color:var(--text-secondary);margin-bottom:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.inline-suggestion-card .add-btn{padding:4px 12px;font-size:.75rem;width:100%;justify-content:center}#chat-conversations-view,#chat-explore-view,#chat-friends-view,#chat-requests-view,#chatList,#exploreSearchResults,#friendsList,#incomingRequestsList,#outgoingRequestsList,.chat-view{padding-bottom:120px;scrollbar-width:none;-ms-overflow-style:none}#chat-conversations-view::-webkit-scrollbar,#chat-explore-view::-webkit-scrollbar,#chat-friends-view::-webkit-scrollbar,#chat-requests-view::-webkit-scrollbar,#chatList::-webkit-scrollbar,#exploreSearchResults::-webkit-scrollbar,#friendsList::-webkit-scrollbar,#incomingRequestsList::-webkit-scrollbar,#outgoingRequestsList::-webkit-scrollbar,.chat-view::-webkit-scrollbar{display:none}.chat-options-btn{background:0 0;border:none;color:#fff;font-size:20px;cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s;position:relative;padding:0}.chat-options-btn:hover{background:rgba(255,255,255,.1)}.chat-options-menu{position:absolute;top:50px;right:10px;background:var(--bg-secondary,#1e1e1e);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.3);min-width:180px;display:none;z-index:10001;overflow:hidden}.chat-options-menu.active{display:block;animation:slideDown .2s ease-out}.chat-options-menu-item{padding:12px 16px;color:#fff;cursor:pointer;display:flex;align-items:center;gap:12px;transition:background .2s;border-bottom:1px solid rgba(255,255,255,.05)}.chat-options-menu-item:last-child{border-bottom:none}.chat-options-menu-item:hover{background:rgba(255,255,255,.1)}.chat-options-menu-item i{font-size:16px;width:20px;text-align:center}.chat-options-menu-item.danger{color:#f44}.chat-options-menu-item.danger:hover{background:rgba(255,68,68,.1)}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}#confirmModal{z-index:99999!important}.reply-preview-bar{display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:var(--surface);border-left:4px solid var(--primary);border-radius:12px;margin-bottom:8px;animation:slideUp .2s cubic-bezier(.4,0,.2,1);height:44px!important;overflow:hidden!important;box-shadow:0 4px 12px rgba(0,0,0,.2);opacity:0;pointer-events:none;transform:translateY(10px);transition:all .2s ease;width:auto}.reply-preview-bar.active{opacity:1;pointer-events:auto;transform:translateY(0)}.reply-content{border-left:3px solid var(--accent);padding-left:10px;flex:1;overflow:hidden}.reply-sender{color:var(--accent);font-weight:600;font-size:.85rem;margin-bottom:2px}.reply-text{font-size:.85rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reply-close-btn{background:0 0;border:none;color:var(--text-secondary);font-size:1.2rem;cursor:pointer;padding:5px}.reply-close-btn:hover{color:#fff}.message-container{display:flex;align-items:center;position:relative;width:100%}.reply-swipe-icon-wrapper{position:absolute;left:-40px;top:50%;transform:translateY(-50%);color:var(--accent);font-size:1.2rem;opacity:0;transition:opacity .2s;z-index:1;display:flex;align-items:center;justify-content:center;width:30px;height:30px;background:rgba(255,255,255,.1);border-radius:50%}.replied-message-quote{background:rgba(0,0,0,.2);border-left:3px solid var(--accent);border-radius:4px;padding:6px 10px;margin-bottom:6px;font-size:.85rem;cursor:pointer;display:flex;flex-direction:column}.replied-message-quote .reply-sender{font-size:.75rem;margin-bottom:2px}.replied-message-quote .reply-text{color:rgba(255,255,255,.8)}.chat-input-area{flex:0 0 auto;padding:0;background:rgba(0,0,0,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex!important;flex-direction:column!important;gap:0;border-top:1px solid var(--glass-border);position:relative}.chat-input-row{display:flex;align-items:flex-end;padding:8px 10px;gap:8px;width:100%}.reply-preview-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#1e1e1e;border-left:4px solid var(--primary);border-radius:12px;position:absolute;bottom:100%;left:10px;right:10px;z-index:100;margin-bottom:8px;box-shadow:0 -4px 20px rgba(0,0,0,.4);height:54px!important;overflow:hidden;opacity:0;pointer-events:none;transform:translateY(10px);transition:all .25s cubic-bezier(.34, 1.56, .64, 1)}.reply-preview-bar.active{opacity:1;pointer-events:auto;transform:translateY(0)}.reply-preview-bar.active{height:44px!important;padding:8px 16px;opacity:1;pointer-events:auto;border-bottom:1px solid rgba(255,255,255,.1)}.reply-preview-bar.active{opacity:1;pointer-events:auto;transform:translateY(0)}.reply-info{display:flex;flex-direction:row;align-items:center;overflow:hidden;flex:1;gap:8px}.reply-sender{font-size:.85rem;font-weight:700;color:var(--primary);white-space:nowrap}.reply-text{font-size:.85rem;color:#ccc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.reply-close-btn{background:0 0;border:none;color:#bbb;cursor:pointer;padding:5px;margin-left:10px;font-size:1rem}@keyframes slideUp{from{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.chat-input-row{display:flex;width:100%;gap:10px;align-items:center}@keyframes highlightPulse{0%{transform:scale(1);background-color:initial}50%{transform:scale(1.02);background-color:rgba(var(--primary-rgb),.3)}100%{transform:scale(1);background-color:initial}}.highlight-message{animation:highlightPulse 1s ease-out;border:1px solid var(--primary);box-shadow:0 0 15px rgba(var(--primary-rgb),.5)}.modal-overlay{z-index:3000!important}#deleteMessageModal{z-index:3100!important}.big-heart-animation{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);font-size:3rem;pointer-events:none;z-index:20;animation:popHeart .8s ease-out forwards}@keyframes popHeart{0%{transform:translate(-50%,-50%) scale(0);opacity:0}50%{transform:translate(-50%,-50%) scale(1.5);opacity:1}100%{transform:translate(-50%,-50%) scale(1);opacity:0}}.date-separator{display:flex;justify-content:center;margin:16px 0;position:relative;z-index:1}.date-separator span{background-color:rgba(30,30,30,.8);color:var(--text-secondary);padding:6px 12px;border-radius:8px;font-size:.75rem;font-weight:500;box-shadow:0 1px 2px rgba(0,0,0,.1);border:1px solid rgba(255,255,255,.05);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}@keyframes reactionPop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.15)}100%{transform:scale(1);opacity:1}}.reaction-bar{display:flex;gap:6px;padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.08)}.reaction-btn{background:rgba(255,255,255,.05);border:1.5px solid rgba(255,255,255,.1);border-radius:50%;width:38px;height:38px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;cursor:pointer;transition:all .2s ease}.reaction-btn:hover{transform:scale(1.15);background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2)}.reaction-btn.active{border-color:var(--primary);background:rgba(var(--primary-rgb),.15);transform:scale(1.1)}.search-highlight{background:linear-gradient(135deg,#ffd740 0,#ffeb3b 100%);color:#000;padding:1px 2px;border-radius:2px;font-weight:600;box-shadow:0 0 0 1px rgba(255,215,0,.3)}mark.search-highlight{background:linear-gradient(135deg,#ffc107 0,#ffb300 100%);color:#000}.chat-settings-overlay{position:fixed;top:0;left:0;width:100%;height:100dvh;background:linear-gradient(135deg,rgba(10,10,15,.98),rgba(20,20,30,.98));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:10000;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .3s cubic-bezier(.4, 0, .2, 1);overflow:hidden}.chat-settings-overlay.active{transform:translateX(0)}.chat-settings-content{flex:1;overflow-y:auto;padding:20px}.settings-group{margin-bottom:30px}.settings-group-title{font-size:.85rem;font-weight:600;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;padding-left:5px}.settings-item{display:flex;align-items:center;padding:15px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:12px;margin-bottom:10px;cursor:pointer;transition:all .2s ease;width:100%}.settings-item:hover{background:rgba(255,255,255,.08);transform:translateX(5px);border-color:rgba(255,255,255,.12)}.settings-item:active{transform:translateX(3px) scale(.98)}.settings-item-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-right:15px;font-size:1.1rem;flex-shrink:0}.settings-item-icon.primary{background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:#fff;box-shadow:0 4px 12px rgba(var(--accent-rgb),.3)}.settings-item-icon.danger{background:linear-gradient(135deg,#ff453a,#c41e3a);color:#fff;box-shadow:0 4px 12px rgba(255,69,58,.3)}.settings-item-info{flex:1;min-width:0}.settings-item-label{display:block;font-size:1rem;font-weight:500;color:#fff;margin-bottom:3px}.settings-item-sublabel{display:block;font-size:.85rem;color:rgba(255,255,255,.5)}.settings-item-chevron{color:rgba(255,255,255,.3);font-size:1rem;margin-left:10px;transition:transform .2s ease}.settings-item:hover .settings-item-chevron{transform:translateX(3px)}.chat-settings-subview{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(10,10,15,.98),rgba(20,20,30,.98));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transform:translateX(100%);transition:transform .3s cubic-bezier(.4, 0, .2, 1);z-index:1;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden}.chat-settings-subview.active{transform:translateX(0)}.empty-state-placeholder{text-align:center;color:rgba(255,255,255,.5);padding:60px 20px;font-size:.95rem}.empty-state-placeholder i{display:block;margin-bottom:15px}.empty-state-placeholder p{margin:0;font-weight:500}@media (max-width:768px){.chat-settings-content{padding:16px}.settings-group{margin-bottom:24px}.settings-item{padding:12px}.settings-item-icon{width:36px;height:36px;font-size:1rem;margin-right:12px}.settings-item-label{font-size:.95rem}.settings-item-sublabel{font-size:.8rem}}.icon-btn{background:0 0;border:none;cursor:pointer;padding:8px;border-radius:50%;transition:all .2s ease;color:var(--text-primary);display:flex;align-items:center;justify-content:center;font-size:1.2rem}.icon-btn:hover{background:rgba(255,255,255,.1);transform:scale(1.1)}.icon-btn:active{transform:scale(.95)}.settings-search-container{padding:12px 20px;background:rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.08)}.settings-search-input{width:100%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:10px 16px;color:var(--text-primary);font-size:.95rem;transition:all .2s ease}.settings-search-input::placeholder{color:rgba(255,255,255,.4)}.settings-search-input:focus{outline:0;border-color:var(--accent);background:rgba(255,255,255,.12);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.1)}.search-highlight{background:rgba(var(--accent-rgb),.3);color:var(--accent);font-weight:600}.empty-chat-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100dvh;text-align:center;padding:2rem;animation:fadeIn .6s cubic-bezier(.2,.8,.2,1);position:relative;z-index:10}.empty-chat-icon{font-size:3.5rem;margin-bottom:1.5rem;color:var(--accent);background:linear-gradient(135deg,rgba(var(--accent-rgb),.15) 0,rgba(var(--accent-rgb),.05) 100%);width:120px;height:120px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px rgba(0,0,0,.2),inset 0 0 20px rgba(var(--accent-rgb),.1);border:1px solid rgba(255,255,255,.1);position:relative;overflow:hidden}.empty-chat-icon::after{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0,transparent 60%);pointer-events:none}.empty-chat-state h3{margin-bottom:.8rem;font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,#fff 0,#ccc 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:.5px}.empty-chat-state p{margin-bottom:2rem;max-width:280px;color:rgba(255,255,255,.6);line-height:1.6;font-size:1rem}.wave-btn{padding:12px 28px;background:linear-gradient(135deg,var(--accent) 0,var(--accent-light) 100%);color:#fff;border:none;border-radius:50px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4, 0, .2, 1);box-shadow:0 8px 20px rgba(var(--accent-rgb),.3);display:flex;align-items:center;gap:10px;position:relative;overflow:hidden}.wave-btn::before{content:'';position:absolute;top:0;left:0;width:100%;height:100dvh;background:linear-gradient(rgba(255,255,255,.2),transparent);opacity:0;transition:opacity .3s}.wave-btn:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 25px rgba(var(--accent-rgb),.4)}.wave-btn:hover::before{opacity:1}.wave-btn:active{transform:translateY(0) scale(.98)}.wave-btn span{font-size:1.2rem;animation:wave 2.5s infinite;display:inline-block;transform-origin:70% 70%}@keyframes wave{0%{transform:rotate(0)}10%{transform:rotate(14deg)}20%{transform:rotate(-8deg)}30%{transform:rotate(14deg)}40%{transform:rotate(-4deg)}50%{transform:rotate(10deg)}60%{transform:rotate(0)}100%{transform:rotate(0)}}.typing-bubble{background:var(--surface);backdrop-filter:blur(10px);padding:15px 20px;min-width:60px;width:fit-content;border-radius:18px;border-bottom-left-radius:4px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 5px rgba(0,0,0,.05)}.typing-bubble.dark-mode{background:rgba(255,255,255,.1)}.typing-indicator{display:flex;align-items:center;justify-content:center;gap:4px}.typing-indicator span{width:6px;height:6px;background-color:var(--text-secondary);border-radius:50%;display:inline-block;animation:typingWave 1.3s infinite ease-in-out}.typing-indicator span:first-child{animation-delay:0s}.typing-indicator span:nth-child(2){animation-delay:.15s}.typing-indicator span:nth-child(3){animation-delay:.3s}@keyframes typingWave{0%,100%,60%{transform:translateY(0);opacity:.6}30%{transform:translateY(-5px);opacity:1}}.skeleton-message{margin:10px 0;padding:15px;height:auto;min-height:48px;border-radius:18px;position:relative;overflow:hidden;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.05)}.skeleton-message.left{align-self:flex-start;width:60%;border-bottom-left-radius:4px}.skeleton-message.right{align-self:flex-end;width:50%;border-bottom-right-radius:4px;background:rgba(var(--accent-rgb),.15)}.skeleton-message::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:shimmer 1.5s infinite cubic-bezier(.4,0,.2,1);transform:translateX(-100%)}@keyframes shimmer{100%{transform:translateX(100%)}}#suggestedFriendsContainer{margin:1rem 0;padding:0 1rem;display:none}.suggested-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem}.suggested-header h3{font-size:1rem;color:var(--text-secondary);font-weight:500}.suggested-header .see-all{font-size:.9rem;color:var(--accent);cursor:pointer}.suggested-list{display:flex;gap:1rem;overflow-x:auto;padding-bottom:.5rem;scrollbar-width:none}.suggested-list::-webkit-scrollbar{display:none}.suggested-card{background:rgba(255,255,255,.05);backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:16px;padding:1rem;min-width:140px;display:flex;flex-direction:column;align-items:center;position:relative;transition:transform .2s}.suggested-card:hover{transform:translateY(-2px);background:rgba(255,255,255,.1)}.suggested-avatar{width:60px;height:60px;border-radius:50%;margin-bottom:.5rem;border:2px solid var(--accent)}.suggested-name{font-size:.9rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;margin-bottom:.2rem}.suggested-username{font-size:.75rem;color:var(--text-secondary);margin-bottom:.8rem}.suggested-add-btn{background:0 0;border:1px solid var(--accent);color:var(--accent);padding:.4rem .8rem;border-radius:20px;font-size:.8rem;cursor:pointer;width:100%;transition:all .2s}.suggested-add-btn:hover{background:var(--accent);color:#fff}.suggested-close{position:absolute;top:5px;right:8px;color:var(--text-secondary);cursor:pointer;font-size:.9rem}.settings-item-icon{color:var(--text-primary)!important}.settings-item-icon i{color:inherit!important}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100dvh;background:rgba(0,0,0,.8);display:flex;justify-content:center;align-items:center;z-index:10000;opacity:1;pointer-events:auto}.modal-overlay[style*='display: none']{display:none!important}.chat-header__avatar{position:relative;display:inline-block}.chat-header__avatar.online::after{content:'';position:absolute;bottom:0;right:0;width:12px;height:12px;background-color:#4cd137;border:2px solid var(--surface);border-radius:50%;box-shadow:0 0 0 1px rgba(0,0,0,.1)}.edited-label{font-size:.7em;opacity:.7;margin-left:4px;color:var(--text-secondary)}.active-friends-bar{display:flex;overflow-x:auto;padding:55px 15px 10px 15px;gap:17px;margin-bottom:5px;scrollbar-width:none;-ms-overflow-style:none;cursor:grab;border-bottom:1px solid rgba(255,255,255,.05)}.active-friends-bar::-webkit-scrollbar{display:none}.active-friend-item{display:flex;flex-direction:column;align-items:center;gap:5px;cursor:pointer;min-width:65px}.active-friend-avatar-wrapper{position:relative;width:60px;height:60px;border-radius:50%;padding:2px;background:0 0;transition:transform .2s ease}.active-friend-avatar-wrapper.has-story{background:linear-gradient(45deg,#f09433 0,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%)}.active-friend-avatar{width:100%;height:100%;border-radius:50%;object-fit:cover;border:2px solid var(--bg-primary)}.active-friend-name{font-size:.75rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:65px;text-align:center}.active-badge-dot{position:absolute;bottom:2px;right:2px;width:14px;height:14px;background-color:#31a24c;border:2px solid var(--bg-primary);border-radius:50%;z-index:2}.note-song-container{display:flex;flex-direction:column;align-items:center;gap:2px}.note-song-name{font-weight:600;font-size:.75rem}.note-music-bars{display:flex;align-items:flex-end;gap:2px;height:10px}.note-bar{width:2px;background:var(--accent);animation:music-bar-bounce 1s infinite}.note-bar:nth-child(2){animation-delay:.2s}.note-bar:nth-child(3){animation-delay:.4s}@keyframes music-bar-bounce{0%,100%{height:3px}50%{height:100%}}.active-friend-item.self .active-friend-avatar-wrapper{position:relative}.active-friend-item.self .add-icon{position:absolute;bottom:0;right:0;background:var(--accent);color:#fff;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:.8rem;border:3px solid var(--bg-primary);box-shadow:0 2px 4px rgba(0,0,0,.2);z-index:5}.note-input-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.6);z-index:20000;display:flex;align-items:center;justify-content:center;opacity:0;animation:fadeIn .2s forwards}@keyframes fadeIn{to{opacity:1}}.note-input-modal{background:var(--primary-light);padding:2rem;border-radius:20px;width:90%;max-width:320px;box-shadow:0 10px 30px rgba(0,0,0,.5);border:1px solid var(--glass-border);display:flex;flex-direction:column;align-items:center;gap:1.5rem}.note-input-modal textarea{width:100%;background:rgba(255,255,255,.05);border:1px solid var(--border-color);padding:1rem;border-radius:12px;color:var(--text-primary);resize:none;font-size:1rem;text-align:center}.note-input-modal textarea:focus{outline:0;border-color:var(--accent)}.note-actions{display:flex;gap:1rem;width:100%}.note-btn{flex:1;padding:.8rem;border-radius:50px;border:none;font-weight:600;cursor:pointer;transition:transform .1s}.note-btn.primary{background:var(--accent);color:#fff}.note-btn.secondary{background:0 0;border:1px solid var(--text-secondary);color:var(--text-secondary)}.note-btn:active{transform:scale(.95)}.active-friend-avatar-wrapper{position:relative;display:inline-block}.note-bubble{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);width:max-content;max-width:70px;min-width:unset;background-color:var(--surface);color:var(--text-primary);border:1px solid var(--border-color);border-radius:12px;padding:4px 8px;font-size:.7rem;line-height:1.4;text-align:center;box-shadow:0 4px 20px rgba(0,0,0,.4);z-index:100;cursor:pointer;pointer-events:auto;animation:notePop .4s cubic-bezier(.175,.885,.32,1.275);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.note-bubble::before{content:"";position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid var(--border-color);z-index:0}.note-bubble::after{content:"";position:absolute;bottom:-6px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-top:7px solid var(--surface);z-index:1}@keyframes notePop{0%{opacity:0;transform:translateX(-50%) scale(.5) translateY(10px)}100%{opacity:1;transform:translateX(-50%) scale(1) translateY(0)}}.note-song-container{display:flex;align-items:center;gap:4px;max-width:100%}.note-song-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60px;font-size:.7rem;font-weight:500}.note-music-bars{display:flex;gap:1.5px;align-items:flex-end;height:8px}.note-bar{width:2px;background:var(--accent);border-radius:1px;animation:noteEq 1s ease-in-out infinite}.note-bar:first-child{height:40%;animation-duration:.8s}.note-bar:nth-child(2){height:80%;animation-duration:1.1s}.note-bar:nth-child(3){height:50%;animation-duration:.9s}@keyframes noteEq{0%,100%{height:40%}50%{height:100%}}.song-search-overlay{display:flex;position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:2147483647;background:rgba(0,0,0,.8);backdrop-filter:blur(var(--blur-amt));align-items:center;justify-content:center;box-sizing:border-box}.song-search-modal{width:90%;max-width:400px;height:60vh;background:#1e1e1e;border:1px solid var(--glass-border);border-radius:var(--card-radius);display:flex;flex-direction:column;box-shadow:var(--glass-shadow);overflow:hidden;position:relative;animation:slideDown .3s ease-out}.song-search-header{padding:15px;border-bottom:1px solid var(--glass-border);background:rgba(255,255,255,.02);display:flex;flex-direction:column;gap:15px}.song-search-title-row{display:flex;justify-content:space-between;align-items:center}.song-search-title{margin:0;color:#fff;font-size:1.2rem;font-family:Coves,sans-serif;font-weight:700}.song-search-close-btn{background:0 0;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:5px;transition:color .2s}.song-search-close-btn:hover{color:#fff}.song-search-input{width:100%;padding:12px;border-radius:var(--element-radius);border:1px solid var(--glass-border);background:rgba(255,255,255,.05);color:#fff;font-size:1rem;font-family:Coves,sans-serif;outline:0;box-sizing:border-box;transition:border-color .2s}.song-search-input:focus{border-color:var(--accent)}.song-search-results{flex:1;overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:10px;-webkit-overflow-scrolling:touch}.song-result-item{display:flex;align-items:center;gap:1rem;padding:.8rem 1rem;border-radius:var(--element-radius);background:rgba(255,255,255,.03);border:1px solid transparent;cursor:pointer;transition:all .2s ease;user-select:none}.song-result-item:hover{background:rgba(255,255,255,.08);border-color:var(--glass-border);transform:translateY(-1px)}.song-result-img{width:48px;height:48px;border-radius:8px;object-fit:cover;box-shadow:0 2px 4px rgba(0,0,0,.2)}.song-result-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.song-result-title{color:#fff;font-size:.95rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.song-result-artist{color:var(--text-secondary);font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.song-result-duration{font-size:.85rem;color:var(--text-tertiary);font-variant-numeric:tabular-nums}.song-result-state{text-align:center;padding:20px;color:var(--text-secondary);font-size:.9rem}.song-result-error{text-align:center;padding:20px;color:#ff6b6b;font-size:.9rem}@keyframes shimmer{0%{background-position:-1000px 0}100%{background-position:1000px 0}}.shimmer{animation:shimmer 2s infinite linear;background:linear-gradient(to right,rgba(255,255,255,.04) 4%,rgba(255,255,255,.08) 25%,rgba(255,255,255,.04) 36%);background-size:1000px 100%}.shimmer-item{display:flex;align-items:center;gap:1rem;padding:.8rem 1rem;border-radius:var(--element-radius);border:1px solid rgba(255,255,255,.05)}.shimmer-img{width:48px;height:48px;border-radius:8px;background:rgba(255,255,255,.05)}.shimmer-info{flex:1;display:flex;flex-direction:column;gap:8px}.shimmer-line{height:12px;background:rgba(255,255,255,.05);border-radius:4px}.shimmer-line.short{width:60%}.note-input-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.7);display:flex;justify-content:center;align-items:center;z-index:2000}.note-input-modal{position:relative;width:90%;max-width:320px;background:#1e1e1e;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:20px;box-shadow:0 10px 40px rgba(0,0,0,.5);display:flex;flex-direction:column;align-items:center;max-height:80vh;overflow-y:auto}@media (max-width:360px){.note-input-modal{width:95%;padding:15px}}.note-input-modal .modal-close-btn{position:absolute;top:10px;right:10px;background:0 0;border:none;color:var(--text-secondary);font-size:1.2rem;cursor:pointer}.note-input-modal .note-header{text-align:center;margin-bottom:1.5rem}.note-input-modal .note-header h3{margin:0;font-size:1.1rem;font-weight:600;color:#fff}.note-input-modal .note-header p{margin:4px 0 0;color:rgba(255,255,255,.5);font-size:.8rem}.note-input-modal textarea{width:100%;box-sizing:border-box;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:12px;color:#fff;font-family:inherit;resize:none;min-height:80px;margin-bottom:1rem;font-size:1rem;outline:0}.note-music-player{margin-top:1rem;background:var(--glass-bg);padding:8px 12px;border-radius:12px;display:flex;align-items:center;gap:10px}.note-music-player .note-music-cover{width:36px;height:36px;border-radius:6px;flex-shrink:0;display:flex;align-items:center;justify-content:center;cursor:pointer;background-size:cover;background-position:center}.note-music-player .note-music-info{flex:1;overflow:hidden}.note-music-info .note-music-title{font-size:.85rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-music-info .note-music-artist{font-size:.75rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-music-wave{display:flex;gap:2px;height:12px;align-items:flex-end}.note-music-wave .bar{width:2px;background:var(--accent);animation:wave 1s infinite}.note-music-wave .bar:first-child{height:60%;animation-duration:1s}.note-music-wave .bar:nth-child(2){height:100%;animation-duration:1.2s}.note-music-wave .bar:nth-child(3){height:40%;animation-duration:.8s}.song-search-results{max-height:300px;overflow-y:auto;width:100%}.song-search-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.7);display:flex;justify-content:center;align-items:center;z-index:2100}.song-search-modal{width:90%;max-width:400px;background:#1e1e1e;border-radius:20px;display:flex;flex-direction:column;max-height:80vh;border:1px solid rgba(255,255,255,.1);box-shadow:0 10px 40px rgba(0,0,0,.5)}.song-search-header{padding:15px;border-bottom:1px solid rgba(255,255,255,.1)}.song-search-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.song-search-title{margin:0;color:#fff;font-size:1.1rem}.song-search-close-btn{background:0 0;border:none;color:var(--text-secondary);font-size:1.2rem;cursor:pointer}.song-search-input{width:100%;box-sizing:border-box;padding:10px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);color:#fff;outline:0}.song-result-item{display:flex;align-items:center;padding:10px 15px;gap:12px;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.05)}.song-result-item:hover{background:rgba(255,255,255,.05)}.song-result-img{width:40px;height:40px;border-radius:6px;object-fit:cover}.song-result-info{flex:1;overflow:hidden}.song-result-title{display:block;color:#fff;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.song-result-artist{display:block;color:var(--text-secondary);font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.song-result-duration{font-size:.8rem;color:var(--text-secondary)}.no-scroll{overflow:hidden!important}@keyframes heart-pop{0%{transform:scale(1)}50%{transform:scale(1.3)}100%{transform:scale(1)}}.like-btn.liked{background:linear-gradient(135deg,var(--accent) 0,var(--accent-light) 100%)!important;border-color:transparent!important;color:#fff!important;box-shadow:0 4px 15px rgba(var(--accent-rgb),.4)!important;animation:heart-pop .3s cubic-bezier(.175,.885,.32,1.275)}.like-btn.liked .fa-heart{font-weight:900;animation:heart-pop .3s cubic-bezier(.175,.885,.32,1.275)}.likes-count-pill{margin-left:auto;margin-right:auto;font-size:.9rem;color:var(--text-secondary);cursor:pointer;background:rgba(255,255,255,.1);padding:2px 10px;border-radius:12px;transition:all .2s}.likes-count-pill:hover{color:#fff;background:rgba(255,255,255,.2)}.likers-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.6);backdrop-filter:blur(5px);z-index:3000;display:flex;justify-content:center;align-items:flex-end}@media (min-width:768px){.likers-modal-overlay{align-items:center}}.likers-modal{background:rgba(30,30,30,.7);backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);border:1px solid var(--glass-border);border-top-left-radius:20px;border-top-right-radius:20px;width:100%;max-width:450px;max-height:70vh;display:flex;flex-direction:column;box-shadow:0 -10px 40px rgba(0,0,0,.5);animation:slideUp .3s cubic-bezier(.19,1,.22,1)}@media (min-width:768px){.likers-modal{border-radius:20px;animation:subtle-scale-in .3s cubic-bezier(.19,1,.22,1)}}.likers-header{padding:1.2rem;border-bottom:1px solid var(--glass-border);display:flex;justify-content:space-between;align-items:center}.likers-header h3{margin:0;font-size:1.1rem;color:#fff}.likers-list{flex:1;overflow-y:auto;padding:0}.liker-item{display:flex;align-items:center;padding:1rem 1.2rem;gap:1rem;border-bottom:1px solid rgba(255,255,255,.05);transition:background .2s;animation:fadeIn .4s ease forwards;opacity:0}.liker-item:hover{background:rgba(255,255,255,.05)}.liker-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid transparent;box-shadow:0 4px 10px rgba(0,0,0,.2)}.liker-info{flex:1}.liker-name{font-weight:600;color:#fff;font-size:1rem}.liker-username{font-size:.85rem;color:var(--text-secondary)}.likers-empty{padding:3rem;text-align:center;color:var(--text-secondary)}.notification-dot.note-dot{position:absolute;top:0;right:0;width:12px;height:12px;background-color:#ff3b30;border:2px solid var(--bg-primary);border-radius:50%;z-index:10;animation:pulse-red 2s infinite}.modal-btn .notification-dot{top:-2px;right:-2px;border-color:rgba(255,255,255,.1)}@keyframes pulse-red{0%{transform:scale(.95);box-shadow:0 0 0 0 rgba(255,59,48,.7)}70%{transform:scale(1);box-shadow:0 0 0 6px rgba(255,59,48,0)}100%{transform:scale(.95);box-shadow:0 0 0 0 rgba(255,59,48,0)}}.request-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;margin-bottom:8px;animation:slideInRight .3s ease-out forwards}.request-item:hover{background:rgba(255,255,255,.08)}.pending-btn-glass{background:rgba(255,255,255,.1)!important;border:1px solid rgba(255,255,255,.2)!important;color:#fff!important;backdrop-filter:blur(10px);padding:6px 14px!important;border-radius:50px;font-size:.8rem;display:flex;align-items:center;gap:6px;cursor:pointer;transition:all .2s ease;flex-shrink:0}.pending-btn-glass:hover{background:rgba(255,255,255,.2)!important}#chat .search-header{touch-action:pan-x!important;overscroll-behavior:none}#chat ::-webkit-scrollbar,#chat::-webkit-scrollbar{display:none}#chat,#chat *{-ms-overflow-style:none;scrollbar-width:none}.nav-profile-btn .icon-container{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;flex-shrink:0!important;border-radius:50%!important;display:flex;align-items:center;justify-content:center;overflow:hidden}@media (max-width:1024px){.nav-profile-btn .icon-container{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;flex-shrink:0!important;border-radius:50%!important}}.replied-message-quote{position:relative;margin-bottom:8px;padding:8px 12px;border-left:3px solid var(--accent);background:rgba(var(--accent-rgb),.1);border-radius:8px;font-size:.85rem}.replied-message-quote .chat-footer__reply-sender{color:#fff!important}.message-bubble.sent .replied-message-quote{border-left-color:#fff;background:rgba(0,0,0,.1)}.new-message-badge{position:absolute;bottom:80px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--accent);color:#fff;padding:8px 16px;border-radius:20px;box-shadow:0 4px 15px rgba(0,0,0,.3);font-size:.85rem;font-weight:600;cursor:pointer;z-index:100;display:flex;align-items:center;gap:8px;opacity:0;transition:all .3s cubic-bezier(.175, .885, .32, 1.275);pointer-events:none}.new-message-badge.active{opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto}.new-message-badge i{font-size:.8em;margin-top:1px}.scroll-down-btn{position:absolute;bottom:90px;right:20px;width:40px;height:40px;background:rgba(0,0,0,.6);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px rgba(0,0,0,.3);cursor:pointer;z-index:99;opacity:0;transform:translateY(10px) scale(.9);pointer-events:none;transition:all .3s cubic-bezier(.175, .885, .32, 1.275);border:1px solid rgba(255,255,255,.1)}.scroll-down-btn.active{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.scroll-down-btn:hover{background:var(--accent);transform:translateY(-2px) scale(1.05)}.message-image-wrapper{max-width:100%;border-radius:12px;overflow:hidden;margin-top:5px;cursor:pointer;border:1px solid var(--border-color)}.chat-image{max-width:100%;max-height:300px;width:auto;height:auto;object-fit:cover;display:block}.message-image-wrapper{max-width:100%;max-height:320px;border-radius:12px;overflow:hidden;margin-top:5px;cursor:pointer;border:1px solid var(--border-color);position:relative;background:rgba(0,0,0,.1);display:flex;justify-content:center;align-items:center}.chat-image{width:100%;height:100%;max-height:320px;min-height:150px;object-fit:cover;object-position:center;display:block}.message-bubble.is-image .message-timestamp{position:absolute;bottom:8px;right:12px;background:linear-gradient(to top,rgba(0,0,0,.6),transparent);color:#fff!important;padding:2px 6px;border-radius:10px;font-size:.7rem;text-shadow:0 1px 2px rgba(0,0,0,.8);pointer-events:none}.message-bubble.is-image .message-content i.fa-check,.message-bubble.is-image .message-content i.fa-check-double{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.8)}.chat-footer textarea{max-height:150px;overflow-y:auto;resize:none;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,0.2) transparent}.chat-footer textarea::-webkit-scrollbar{width:5px}.chat-footer textarea::-webkit-scrollbar-track{background:0 0}.chat-footer textarea::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:10px}.chat-footer textarea::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3)}@media (max-width:768px){.chat-footer textarea{padding-right:40px;box-sizing:border-box;scrollbar-width:none;-ms-overflow-style:none}.chat-footer textarea::-webkit-scrollbar{display:none}}.image-grid-container{display:grid;gap:2px;border-radius:12px;overflow:hidden;max-width:280px;margin-top:5px;position:relative;background:rgba(var(--accent-rgb),.1)}.image-grid-container.grid-2{grid-template-columns:repeat(2,1fr)}.image-grid-container.grid-3{grid-template-columns:repeat(2,1fr)}.image-grid-item-wrapper{position:relative;overflow:hidden;width:100%;height:120px;cursor:pointer}.image-grid-item{width:100%;height:100%;object-fit:cover;transition:transform .2s;display:block}.image-grid-item:hover{transform:scale(1.05)}.image-grid-more-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:600;pointer-events:none;backdrop-filter:blur(2px)}.image-upload-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;border-radius:12px;z-index:10}.image-upload-overlay .circular-progress{width:50px;height:50px;transform:rotate(-90deg)}.image-upload-overlay .bg-circle{fill:none;stroke:rgba(255,255,255,0.2);stroke-width:4}.image-upload-overlay .progress-circle{fill:none;stroke:var(--accent-color);stroke-width:4;stroke-dasharray:126;stroke-dashoffset:126;transition:stroke-dashoffset .1s linear}.image-upload-overlay .cancel-upload-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(0,0,0,.6);border:none;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.8rem;transition:background .2s}.image-upload-overlay .cancel-upload-btn:hover{background:rgba(255,0,0,.8)}#imageViewerModal{display:none;position:fixed;z-index:10000;padding-top:50px;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgba(0,0,0,.9)}.image-modal-content{margin:auto;display:block;width:auto;max-width:90%;max-height:90vh}.image-modal-close{position:absolute;top:20px;right:35px;color:#fff;font-size:40px;font-weight:700;cursor:pointer}.chat-footer__attach-btn{background:0 0;border:none;color:var(--text-secondary);font-size:1.2rem;cursor:pointer;padding:0 12px;display:flex;align-items:center;justify-content:center;transition:color .2s}.chat-footer__attach-btn:hover{color:var(--primary-color)}.message-bubble.is-image{background:0 0!important;border:none!important;padding:0!important;box-shadow:none!important}.message-image-container{overflow:hidden;border-radius:18px;position:relative}.message-image-container img{display:block;max-width:100%;height:auto;max-height:400px;object-fit:contain;border-radius:18px;cursor:pointer}.message-bubble.is-image .message-time{position:absolute;bottom:5px;right:10px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.8);background:rgba(0,0,0,.3);border-radius:10px;padding:2px 6px;font-size:.75rem}.chat-link{color:#4a90e2;text-decoration:underline;word-break:break-all}.chat-link:hover{color:#357abd;text-decoration:none}.image-upload-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;border-radius:12px;z-index:10}.circular-progress{width:50px;height:50px;transform:rotate(-90deg)}.circular-progress circle{fill:none;stroke-width:4;stroke-linecap:round}.bg-circle{stroke:rgba(255,255,255,0.3)}.progress-circle{stroke:var(--accent);stroke-dasharray:126;stroke-dashoffset:126;transition:stroke-dashoffset .1s linear}.cancel-upload-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(0,0,0,.4);border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;cursor:pointer;transition:background .2s;z-index:12}.cancel-upload-btn:hover{background:rgba(220,20,60,.8)}.waveform-scrubber{-webkit-appearance:none;appearance:none;width:100%;height:40px;background:0 0;cursor:pointer;border-radius:4px;position:relative;overflow:hidden;margin-top:10px;border:none;outline:0}.waveform-scrubber::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.2) 0,rgba(255,255,255,.2) 2px,transparent 2px,transparent 6px);mask-image:linear-gradient(to bottom,transparent 10%,black 10%,black 90%,transparent 90%);-webkit-mask-image:linear-gradient(to bottom,transparent 10%,black 10%,black 90%,transparent 90%);z-index:0;pointer-events:none}.waveform-scrubber::after{content:'';position:absolute;top:0;bottom:0;left:var(--seek-start,0);width:calc(var(--seek-end,100%) - var(--seek-start,0%));background:repeating-linear-gradient(90deg,var(--accent) 0,var(--accent) 2px,transparent 2px,transparent 6px);mask-image:linear-gradient(to bottom,transparent 10%,black 10%,black 90%,transparent 90%);-webkit-mask-image:linear-gradient(to bottom,transparent 10%,black 10%,black 90%,transparent 90%);z-index:1;pointer-events:none;box-shadow:0 0 10px var(--accent)}.waveform-scrubber::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;height:40px;width:0;opacity:0;cursor:grab;position:relative;z-index:2;margin-top:0}.waveform-scrubber::-moz-range-thumb{height:40px;width:0;opacity:0;border:none;cursor:grab}.waveform-scrubber::-webkit-slider-runnable-track{background:0 0}.waveform-scrubber::-moz-range-track{background:0 0}.modal-actions{display:flex;gap:10px;justify-content:space-between;width:100%}@media (min-width:768px){.modal-actions{flex-wrap:wrap}.modal-actions button:first-child:nth-last-child(3){width:100%;margin-right:0!important;margin-bottom:10px;order:-1}}@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}.image-shimmer{position:relative;background:#333;background-image:linear-gradient(to right,rgba(255,255,255,0) 0,rgba(255,255,255,.1) 20%,rgba(255,255,255,.2) 40%,rgba(255,255,255,.1) 60%,rgba(255,255,255,0) 100%);background-repeat:no-repeat;background-size:200% 100%;animation:shimmer 1.5s infinite linear;border-radius:8px;overflow:hidden;min-height:150px;display:flex;align-items:center;justify-content:center}.image-shimmer img{opacity:0;transition:opacity .3s ease}.image-shimmer.loaded{background:0 0;animation:none;min-height:auto}.image-shimmer.loaded img{opacity:1}.replied-message-quote{position:relative;background:rgba(0,0,0,.2);border-left:3px solid var(--accent);padding:8px 10px;border-radius:4px;margin-bottom:6px;font-size:.85rem;display:flex;flex-direction:column;gap:2px}.chat-footer__reply-sender{font-weight:600;color:#fff}.chat-footer__reply-text{color:rgba(255,255,255,.8);white-space:nowrap;border-radius:2px;cursor:grab}.message-bubble.is-image{padding:0!important;background:0 0!important;max-width:80%!important;width:fit-content!important;box-shadow:none!important;border:none!important;transition:transform .2s}.message-bubble.sent.is-image .message-image-wrapper{border-top-right-radius:4px}.message-bubble.received.is-image .message-image-wrapper{border-top-left-radius:4px}.message-image-wrapper{max-width:280px;min-width:150px;width:100%;border-radius:12px;overflow:hidden;position:relative;display:flex;justify-content:center;align-items:center;background:rgba(255,255,255,.05);box-shadow:0 1px 2px rgba(0,0,0,.1)}.image-shimmer{min-height:200px;background:linear-gradient(90deg,rgba(255,255,255,.05),rgba(255,255,255,.1),rgba(255,255,255,.05));background-size:200% 100%;animation:placeholderShimmer 1.5s infinite}@keyframes placeholderShimmer{0%{background-position:-150% 0}100%{background-position:150% 0}}.message-image{max-width:100%;width:100%;height:auto;max-height:320px;min-height:150px;object-fit:cover;display:block}.message-bubble.sent.is-image{margin-left:auto}.message-bubble.sent.is-image .message-image-wrapper{margin-left:auto;border-bottom-right-radius:4px}#voiceCallOverlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.6);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);z-index:10000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s ease}#voiceCallOverlay.visible{opacity:1;pointer-events:auto}.call-card{background:rgba(255,255,255,.08);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.15);border-radius:24px;padding:40px;width:90%;max-width:350px;text-align:center;box-shadow:0 20px 50px rgba(0,0,0,.4),0 0 0 1px rgba(255,255,255,.05) inset;display:flex;flex-direction:column;align-items:center;gap:30px;position:relative;overflow:hidden}.call-card::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(var(--accent-rgb),.15) 0,transparent 70%);pointer-events:none;z-index:0}.call-avatar-wrapper{width:120px;height:120px;border-radius:50%;overflow:hidden;border:4px solid rgba(255,255,255,.1);box-shadow:0 8px 25px rgba(0,0,0,.3);position:relative;flex-shrink:0;z-index:1}.call-avatar-wrapper img{width:100%;height:100%;object-fit:cover}.call-avatar-wrapper.pulsed::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;border-radius:50%;box-shadow:0 0 0 0 rgba(255,255,255,.4);animation:pulse-ring 2s infinite}@keyframes pulse-ring{0%{transform:scale(.8);box-shadow:0 0 0 0 rgba(255,255,255,.4)}70%{transform:scale(1.3);box-shadow:0 0 0 30px rgba(255,255,255,0)}100%{transform:scale(1.3);box-shadow:0 0 0 0 rgba(255,255,255,0)}}.call-avatar-wrapper.speaking{animation:pulse-speaking 1.5s infinite;box-shadow:0 0 0 0 rgba(76,209,55,.6)}@keyframes pulse-speaking{0%{transform:scale(1);box-shadow:0 0 0 0 rgba(76,209,55,.6)}70%{transform:scale(1.05);box-shadow:0 0 0 15px rgba(76,209,55,0)}100%{transform:scale(1);box-shadow:0 0 0 0 rgba(76,209,55,0)}}.call-info{z-index:1}.call-info h3{margin:0 0 8px;font-size:1.6rem;color:#fff;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3)}.call-info p{margin:0;color:rgba(255,255,255,.75);font-size:1.05rem;font-weight:500}#callTimer{font-family:'Courier New',monospace;font-size:1.3rem;color:#4cd137;font-weight:700;text-shadow:0 0 10px rgba(76,209,55,.4);z-index:1}.call-actions{display:flex;gap:24px;justify-content:center;z-index:1;width:100%}.call-btn{width:64px;height:64px;border-radius:50%;border:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;font-size:1.4rem;cursor:pointer;transition:all .3s cubic-bezier(.34, 1.56, .64, 1);color:#fff;background:rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.call-btn:hover{transform:translateY(-2px) scale(1.05);background:rgba(255,255,255,.2)}.call-btn:active{transform:scale(.95)}.call-btn.accept{background:rgba(76,209,55,.2);border-color:rgba(76,209,55,.4);color:#4cd137;box-shadow:0 8px 20px rgba(76,209,55,.3)}.call-btn.accept:hover{background:rgba(76,209,55,.3);box-shadow:0 10px 25px rgba(76,209,55,.4)}.call-btn.end,.call-btn.reject{background:rgba(232,65,24,.2);border-color:rgba(232,65,24,.4);color:#ff4757;box-shadow:0 8px 20px rgba(232,65,24,.3)}.call-btn.end:hover,.call-btn.reject:hover{background:rgba(232,65,24,.3);box-shadow:0 10px 25px rgba(232,65,24,.4)}.call-btn.active{background:#fff!important;color:#000!important;border-color:#fff!important;box-shadow:0 5px 15px rgba(255,255,255,.4);transform:scale(1.1)}.call-btn.mute.muted,.call-btn.speaker.active{background:#fff!important;color:#000!important;border-color:#fff!important;box-shadow:0 5px 15px rgba(255,255,255,.4)}.call-btn.active i,.call-btn.mute.muted i,.call-btn.speaker.active i{color:#000!important}.chat-action-btn.voice-call-btn{margin-right:5px;font-size:1.1rem}.call-message{background:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.1);padding:10px 14px!important;max-width:280px}.call-message-content{display:flex;align-items:center;gap:12px}.call-icon{font-size:1.2rem;min-width:24px}.call-icon.missed,.call-icon.rejected{color:#f44}.call-icon.completed.outgoing{color:#4caf50;transform:rotate(135deg)}.call-icon.completed.incoming{color:#2196f3;transform:rotate(-135deg)}.call-text{font-size:.9rem;color:var(--text-secondary)}.call-message .reply-swipe-icon-wrapper{display:none}.call-back-btn{margin-left:auto;padding:6px 12px;border-radius:20px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);color:var(--text-primary);font-size:.85rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px;backdrop-filter:blur(4px)}.call-back-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff;transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.2)}.call-back-btn i{font-size:.8rem}#voiceCallOverlay{transition:all .3s cubic-bezier(.25, .8, .25, 1);z-index:9999;position:fixed}#voiceCallOverlay.minimized{width:fit-content!important;height:auto!important;top:230px!important;left:auto!important;right:20px!important;bottom:auto!important;border-radius:20px;background:rgba(20,20,20,.95)!important;box-shadow:0 10px 30px rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.1);padding:0!important;overflow:visible!important;display:inline-flex!important;flex-direction:column;align-items:flex-end}#voiceCallOverlay.minimized .call-card{width:auto!important;min-width:320px;max-width:90vw;padding:12px 16px!important;flex-direction:row;display:flex!important;align-items:center;gap:12px;background:0 0!important;box-sizing:border-box;box-shadow:none!important;border:none!important}#voiceCallOverlay.minimized .call-card::before{display:none!important}#voiceCallOverlay.minimized .call-avatar-wrapper{width:45px;height:45px;margin-bottom:0!important;flex-shrink:0}#voiceCallOverlay.minimized .call-avatar-wrapper img{border-width:2px}#voiceCallOverlay.minimized .call-info{flex:1;text-align:left!important;overflow:hidden;min-width:60px}#voiceCallOverlay.minimized .call-info h3{font-size:.95rem!important;margin-bottom:2px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#voiceCallOverlay.minimized .call-info p{font-size:.75rem;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#voiceCallOverlay.minimized .volume-meter{display:none}#voiceCallOverlay.minimized .call-actions{margin:0!important;gap:8px!important;padding:0!important;flex-shrink:0;display:flex;align-items:center;width:auto!important;justify-content:flex-end}#voiceCallOverlay.minimized .call-btn{width:38px;height:38px;font-size:.85rem}#voiceCallOverlay.minimized .minimize-btn{display:none}#voiceCallOverlay.minimized .maximize-btn{display:block;position:absolute;top:5px;right:5px;background:0 0;border:none;color:rgba(255,255,255,.5);cursor:pointer;font-size:.8rem;padding:5px}.call-card.voice-call .local-video-container,.call-card.voice-call .remote-video-container{display:none}.call-card.video-call .call-avatar-wrapper,.call-card.video-call .volume-meter{display:none}.minimize-btn{position:absolute;top:20px;left:20px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;width:40px;height:40px;border-radius:50%;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;transition:background .2s}.minimize-btn:hover{background:rgba(255,255,255,.2)}.chat-footer__reply{user-select:none}.chat-footer__reply-content{display:flex;flex-direction:column;min-width:0;flex:1;margin-right:12px}.chat-footer__reply-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%;padding-right:5px}.selection-mode-bar{position:fixed;top:16px;left:16px;right:16px;width:auto;height:64px;background:rgba(30,30,35,.85);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.12);border-radius:20px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;z-index:2000;box-shadow:0 15px 40px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.1);transform:translateY(-150%);transition:transform .4s cubic-bezier(.34, 1.56, .64, 1)}.selection-mode-bar.active{transform:translateY(0)}.selection-info{font-size:1.15rem;font-weight:700;color:#fff;display:flex;align-items:center;gap:8px}.selection-info::before{content:'\f058';font-family:'Font Awesome 5 Free';font-weight:400;font-weight:900;color:var(--accent);font-size:1.2rem}.selection-actions{display:flex;gap:12px}.message-bubble.selected{background-color:rgba(var(--accent-rgb),.4)!important;border:1px solid #fff!important;box-shadow:0 0 20px rgba(var(--accent-rgb),.3)!important;transform:scale(.98)}.message-bubble.selected::after{content:'\f00c';font-family:'Font Awesome 5 Free';font-weight:900;position:absolute;top:-8px;right:-8px;background:#fff;color:var(--accent);width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;box-shadow:0 4px 10px rgba(0,0,0,.3);animation:popIn .3s cubic-bezier(.175,.885,.32,1.275) forwards;z-index:10}@keyframes popIn{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}body.selection-mode-active .chat-footer,body.selection-mode-active .reply-preview-bar{display:none!important}@keyframes highlight-pulse{0%{background-color:transparent;box-shadow:0 0 0 0 rgba(var(--accent-rgb),0)}15%{background-color:rgba(var(--accent-rgb),.25);border-color:var(--accent);box-shadow:0 0 15px rgba(var(--accent-rgb),.15)}60%{background-color:rgba(var(--accent-rgb),.25);border-color:var(--accent);box-shadow:0 0 15px rgba(var(--accent-rgb),.15)}100%{background-color:transparent;border-color:transparent;box-shadow:0 0 0 0 rgba(var(--accent-rgb),0)}}.highlight-message{animation:highlight-pulse 3s cubic-bezier(.25,1,.5,1) forwards;position:relative;border-radius:12px;border:1px solid transparent}.message-bubble{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:18px;box-shadow:0 2px 5px rgba(0,0,0,.05);transition:all .2s ease;padding:10px 14px}.message-bubble.sent{background:rgba(var(--accent-rgb),.2)!important;border:1px solid rgba(var(--accent-rgb),.5)!important;color:#fff!important;box-shadow:0 4px 15px rgba(var(--accent-rgb),.15)!important}.message-bubble.received{background:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.1)!important;color:var(--text-primary)}.message-container.sent+.message-container.sent .message-bubble{border-top-right-radius:4px!important}.message-container.sent:has(+ .message-container.sent) .message-bubble{border-bottom-right-radius:4px!important}.message-container.received+.message-container.received .message-bubble{border-top-left-radius:4px!important}.message-container.received:has(+ .message-container.received) .message-bubble{border-bottom-left-radius:4px!important}.message-bubble.sent .message-content{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.1)}.message-bubble.sent .message-status,.message-bubble.sent .message-time{color:rgba(255,255,255,.7)!important}.message-bubble:hover{transform:translateY(-1px);box-shadow:0 6px 12px rgba(0,0,0,.1)}.chat-messages-area{background:radial-gradient(circle at 50% 50%,#1e1e24 0,#0f0f13 100%);position:relative}.message-container.has-reactions{margin-bottom:26px!important}.message-reactions{position:absolute;bottom:-14px;z-index:5;display:flex;gap:4px;min-width:max-content}.message-bubble.sent .message-reactions{right:4px}.message-bubble.received .message-reactions{left:4px}.reaction-pill{background:var(--bg-secondary)!important;border:1px solid var(--glass-border)!important;border-radius:20px;padding:2px 8px!important;font-size:.75rem;box-shadow:0 2px 4px rgba(0,0,0,.15)!important;backdrop-filter:none!important;cursor:pointer;z-index:10}.reaction-pill.me{background:rgba(var(--accent-rgb),.15)!important;border-color:var(--accent)!important;color:var(--accent)}.message-bubble.single-emoji-msg,.message-bubble.single-emoji-msg.me,.message-bubble.single-emoji-msg.received{background:0 0!important;border:none!important;box-shadow:none!important;padding:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;margin-bottom:8px!important}.message-bubble.single-emoji-msg .message-content{font-size:3rem;line-height:1}.message-bubble.single-emoji-msg .message-time{text-shadow:1px 1px 2px rgba(0,0,0,.5);color:rgba(255,255,255,.8)!important}.message-bubble.single-emoji-msg.selected{transform:scale(.9);filter:drop-shadow(0 0 10px rgba(var(--accent-rgb), .6))}.message-bubble.single-emoji-msg.selected::after{top:0;right:0}.chat-footer__reply{user-select:none}.chat-footer__reply-content{display:flex;flex-direction:column;min-width:0;flex:1;margin-right:12px}.chat-footer__reply-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%;padding-right:5px}@keyframes highlightPulse{0%{background:rgba(var(--accent-rgb),.2)}100%{background:0 0}}.highlight-message{animation:highlightPulse 2s ease-out forwards;position:relative;z-index:5;width:100%;border-radius:4px}.message-container{margin-bottom:2px!important;margin-top:0!important;padding:0!important}.message-container.received+.message-container.received,.message-container.sent+.message-container.sent{margin-top:0!important;margin-bottom:0!important;padding-top:1px!important}.message-bubble{margin:0!important}.settings-input{width:100%;padding:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:1.1rem;outline:0;transition:all .2s ease;box-sizing:border-box;font-family:inherit;margin-top:10px}.settings-input:focus{background:rgba(255,255,255,.1);border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.2)}.settings-input::placeholder{color:rgba(255,255,255,.3)}.spinner{width:36px;height:36px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.mpin-state-view{display:flex;flex-direction:column;align-items:center;width:100%;animation:fadeIn .3s ease}@keyframes shake{0%{transform:translateX(0)}25%{transform:translateX(-5px)}50%{transform:translateX(5px)}75%{transform:translateX(-5px)}100%{transform:translateX(0)}}.shake{animation:shake .4s ease-in-out;border-color:#ff4757!important}.settings-input{transition:all .3s cubic-bezier(.25, .8, .25, 1)}.settings-input:focus{transform:scale(1.02)}@keyframes successPulse{0%{box-shadow:0 0 0 0 rgba(76,209,55,.4);border-color:#4cd137}70%{box-shadow:0 0 0 10px rgba(76,209,55,0);border-color:#4cd137}100%{box-shadow:0 0 0 0 rgba(76,209,55,0);border-color:rgba(255,255,255,.1)}}.success-input{animation:successPulse .6s ease-out;border-color:#4cd137!important}.lock-container{display:flex;flex-direction:column;align-items:center;color:#fff;text-align:center;animation:fadeIn .4s ease}.lock-icon-area{width:80px;height:80px;background:rgba(255,255,255,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;color:var(--accent);margin-bottom:25px;box-shadow:0 10px 30px rgba(0,0,0,.3)}.lock-container h2{font-size:1.5rem;margin-bottom:10px;font-weight:600}.lock-container p{color:rgba(255,255,255,.5);font-size:.95rem;margin-bottom:40px}.mpin-dots{display:flex;gap:20px;margin-bottom:20px}.mpin-dots .dot{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.3);transition:all .2s cubic-bezier(.175, .885, .32, 1.275)}.mpin-dots .dot.filled{background:var(--accent);border-color:var(--accent);transform:scale(1.1);box-shadow:0 0 10px rgba(var(--accent-rgb),.5)}.mpin-dots.verifying .dot{animation:dotWave 1.2s infinite ease-in-out;background:var(--accent);border-color:var(--accent);opacity:.6}.mpin-dots.verifying .dot:first-child{animation-delay:0s}.mpin-dots.verifying .dot:nth-child(2){animation-delay:.2s}.mpin-dots.verifying .dot:nth-child(3){animation-delay:.4s}.mpin-dots.verifying .dot:nth-child(4){animation-delay:.6s}@keyframes dotWave{0%,100%{transform:translateY(0);opacity:.6}50%{transform:translateY(-10px);opacity:1;box-shadow:0 0 15px var(--accent)}}.hidden-unlock-input{position:absolute;opacity:0;width:100%;height:100%;top:0;left:0;cursor:default}.lock-container.shake{animation:shake .4s ease-in-out}.lock-container.shake .lock-icon-area{color:#ff4757;background:rgba(255,71,87,.1)}.mpin-keypad{display:flex;flex-direction:column;gap:15px;margin-top:30px;width:280px}.keypad-row{display:flex;justify-content:space-between;width:100%}.keypad-btn{width:70px;height:70px;border-radius:50%;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.1);color:#fff;font-size:1.8rem;font-weight:500;cursor:pointer;backdrop-filter:blur(5px);transition:all .2s cubic-bezier(.175, .885, .32, 1.275);display:flex;align-items:center;justify-content:center;user-select:none;-webkit-tap-highlight-color:transparent}.keypad-btn:hover{background:rgba(255,255,255,.2);transform:translateY(-2px)}.keypad-btn:active{background:rgba(255,255,255,.3);transform:scale(.95) translateY(0)}.keypad-btn.empty{background:0 0;border:none;cursor:default;pointer-events:none}.keypad-btn.delete-btn{background:0 0;border:none;font-size:1.4rem}.keypad-btn.delete-btn:hover{background:rgba(255,255,255,.1)}.chat-lock-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(10,10,15,.95);backdrop-filter:blur(20px);z-index:999999;display:flex;flex-direction:column;align-items:center;justify-content:center;animation:fadeIn .3s ease}.chat-lock-overlay .lock-container{padding-bottom:40px;width:100%;max-width:400px;display:flex;flex-direction:column;align-items:center}.mpin-intro-modal{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 30px;background:var(--bg-secondary);border-radius:24px;border:1px solid var(--border-color);max-width:360px;width:90%;box-shadow:0 10px 40px rgba(0,0,0,.5);animation:modalPopIn .3s cubic-bezier(.175,.885,.32,1.275)}.mpin-intro-icon{font-size:3.5rem;color:var(--accent-color);margin-bottom:20px;background:rgba(var(--accent-rgb),.1);width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 0 20px rgba(var(--accent-rgb),.2)}.mpin-intro-title{font-size:1.5rem;font-weight:700;margin-bottom:10px;background:linear-gradient(45deg,#fff,#bbb);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.mpin-intro-desc{color:var(--text-secondary);font-size:.95rem;line-height:1.5;margin-bottom:30px}.mpin-intro-btn{background:var(--accent-gradient);color:#fff;border:none;padding:12px 24px;border-radius:50px;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 4px 15px rgba(var(--accent-rgb),.3);width:100%;margin-bottom:15px;transition:transform .2s,box-shadow .2s}.mpin-intro-btn:active{transform:scale(.98)}.mpin-intro-dismiss{background:0 0;border:none;color:var(--text-muted);font-size:.85rem;cursor:pointer;text-decoration:underline;opacity:.8}.mpin-intro-dismiss:hover{opacity:1;color:var(--text-primary)}.mpin-intro-overlay{position:fixed;top:0;left:0;width:100%;height:100%;z-index:99999;background:rgba(0,0,0,.85);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}