:root{--bg-color: var(--tg-theme-bg-color, #0a0a0a);--text-color: var(--tg-theme-text-color, #ffffff);--secondary-bg: var(--tg-theme-secondary-bg-color, #1a1a1a);--hint-color: var(--tg-theme-hint-color, #8e8e93);--button-color: var(--tg-theme-button-color, #007aff);--button-text: var(--tg-theme-button-text-color, #ffffff);--equalizer-color: var(--tg-theme-button-color, #007aff);--modal-bg: rgba(30, 30, 30, .75);--modal-overlay-bg: rgba(0, 0, 0, .7);--queue-modal-bg: rgba(30, 30, 30, .4);--input-placeholder: var(--hint-color);--menu-bg: rgba(30, 30, 30, .9);--separator-color: rgba(255, 255, 255, .1);--menu-item-active: rgba(255, 255, 255, .15)}@media (prefers-color-scheme: light){:root{--modal-bg: rgba(255, 255, 255, .85);--modal-overlay-bg: rgba(0, 0, 0, .3);--queue-modal-bg: rgba(255, 255, 255, .6);--menu-bg: rgba(255, 255, 255, .95);--separator-color: rgba(0, 0, 0, .1);--menu-item-active: rgba(0, 0, 0, .08);--equalizer-color: var(--tg-theme-link-color, var(--tg-theme-button-color, #007aff))}}body[data-theme=light],.theme-light{--modal-bg: rgba(255, 255, 255, .85);--modal-overlay-bg: rgba(0, 0, 0, .3);--queue-modal-bg: rgba(255, 255, 255, .6);--menu-bg: rgba(255, 255, 255, .95);--separator-color: rgba(0, 0, 0, .1);--input-placeholder: rgba(60, 60, 67, .6);--menu-item-active: rgba(0, 0, 0, .08);--equalizer-color: var(--tg-theme-link-color, var(--tg-theme-button-color, #007aff))}*{box-sizing:border-box}body{margin:0;padding:0;background:var(--bg-color);color:var(--text-color);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden}.app{display:flex;flex-direction:column;height:var(--app-height, 100vh);overflow:hidden;position:relative}.page-content{flex:1;overflow-y:auto;padding:16px;padding-top:calc(16px + env(safe-area-inset-top));padding-bottom:calc(120px + env(safe-area-inset-bottom));scroll-padding-bottom:calc(120px + env(safe-area-inset-bottom));scroll-behavior:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior:contain}.page-content::-webkit-scrollbar{display:none}.page-title{font-size:34px;font-weight:700;margin:0 0 24px;letter-spacing:-.5px}@keyframes slideUp{0%{transform:translate3d(0,100%,0)}to{transform:translateZ(0)}}@keyframes slideDown{0%{transform:translateZ(0)}to{transform:translate3d(0,100%,0)}}.home-section{margin-bottom:32px}.section-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;flex-direction:column;gap:4px}.section-header h2{font-size:22px;font-weight:700;margin:0;letter-spacing:-.3px}.section-subtitle{display:flex;gap:12px;font-size:13px;color:var(--hint-color)}.section-link{color:var(--button-color);cursor:pointer}.featured-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.featured-card{border-radius:12px;overflow:hidden;position:relative}.featured-card-large{grid-column:1;grid-row:1 / 3}.featured-card-small{grid-column:2;grid-row:1}.featured-card-image{width:100%;aspect-ratio:1;overflow:hidden}.featured-card-large .featured-card-image{aspect-ratio:.7}.placeholder-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600}.featured-card-info{position:absolute;bottom:12px;left:12px;right:12px;color:#fff}.featured-card-label{font-size:13px;font-weight:600;margin:0 0 4px;text-shadow:0 1px 3px rgba(0,0,0,.3)}.featured-card-subtitle{font-size:11px;opacity:.9;margin:0;text-shadow:0 1px 2px rgba(0,0,0,.3)}.featured-card-date{font-size:11px;opacity:.8;margin:0;text-shadow:0 1px 2px rgba(0,0,0,.3)}.recently-played{display:flex;gap:12px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:8px;scroll-behavior:auto}.recently-played.drag-scroll{cursor:grab;scroll-snap-type:none}.recently-played.drag-scroll:active{cursor:grabbing}.recently-played.drag-scroll *{-webkit-user-drag:none;user-select:none}.recently-played::-webkit-scrollbar{display:none}.album-card{flex-shrink:0;width:160px}.album-cover{width:160px;height:160px;border-radius:8px;overflow:hidden;box-shadow:0 4px 12px #0000004d}.playlist-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:12px}.playlist-item{cursor:pointer;position:relative;max-width:100%}.playlist-cover{width:100%;aspect-ratio:1;border-radius:8px;overflow:hidden;margin-bottom:8px;box-shadow:0 2px 8px #0003;position:relative}.playlist-title{font-size:13px;font-weight:500;margin:0;color:var(--text-color)}.search-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.user-avatar-btn{background:none;border:none;padding:0;cursor:pointer}.user-avatar{width:32px;height:32px;border-radius:50%;background:var(--button-color);display:flex;align-items:center;justify-content:center;color:#fff}.search-input-container{position:relative;margin-bottom:24px}.search-input{width:100%;background:var(--secondary-bg);border:none;border-radius:12px;padding:12px 48px 12px 16px;color:var(--text-color);font-size:17px;scroll-margin:0;scroll-snap-margin:0}.search-input::placeholder{color:var(--input-placeholder);opacity:1}.search-input:focus{outline:none;box-shadow:0 0 0 2px var(--button-color)}.search-mic-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--hint-color);cursor:pointer;padding:8px}.search-mic-btn.listening{color:#ff3b30;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.search-mic-btn.listening:before,.search-mic-btn.listening:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;border-radius:50%;border:2px solid rgba(255,59,48,.6);animation:voice-wave 1.5s ease-out infinite;pointer-events:none}.search-mic-btn.listening:after{animation-delay:.5s}@keyframes voice-wave{0%{transform:translate(-50%,-50%) scale(1);opacity:.8}to{transform:translate(-50%,-50%) scale(2.5);opacity:0}}.popular-searches{margin-top:24px}.popular-searches-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:0 4px}.popular-searches-title{font-size:22px;font-weight:700;margin:0;letter-spacing:-.3px}.popular-searches-list{display:flex;flex-direction:column;gap:4px}.popular-search-item{display:flex;align-items:center;gap:16px;padding:14px 16px;background:var(--secondary-bg);border-radius:10px;cursor:pointer;transition:all .2s}.popular-search-item:active{transform:scale(.98);opacity:.8}.search-rank{font-size:18px;font-weight:700;color:var(--button-color);min-width:24px;text-align:center}.search-query{flex:1;font-size:16px;font-weight:500;color:var(--text-color)}.popular-searches-empty{text-align:center;padding:60px 20px;color:var(--hint-color)}.popular-searches-empty p{margin:0;font-size:16px}.search-results{margin-top:24px}.search-tabs{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.search-tabs::-webkit-scrollbar{display:none}.search-tab{background:rgba(255,255,255,.1);border:none;color:#fff9;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .2s}.search-tab.active{background:var(--button-color);color:#fff}.search-tab:active{transform:scale(.95)}.search-results-title{font-size:24px;font-weight:700;margin:0 0 16px;letter-spacing:-.3px}.track-list-container{display:flex;flex-direction:column;gap:8px}.track-item{display:flex;align-items:center;gap:12px;padding:8px;border-radius:8px;cursor:pointer;transition:background .2s;min-height:64px}.track-item:active{background:var(--secondary-bg)}.track-cover{width:56px;height:56px;border-radius:6px;object-fit:cover}.track-info{flex:1;min-width:0}.track-title{font-size:15px;font-weight:500;margin:0 0 4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.album-view{position:fixed;inset:0;background:var(--bg-color);z-index:40;overflow-y:auto;-webkit-overflow-scrolling:touch}.album-view-header{position:sticky;top:0;background:var(--bg-color);padding:12px 16px;padding-top:calc(12px + env(safe-area-inset-top));z-index:10}.album-back-btn{background:none;border:none;color:var(--text-color);cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center}.album-view-content{padding:16px 16px 180px}.album-view-cover{width:100%;max-width:320px;aspect-ratio:1;border-radius:12px;box-shadow:0 12px 48px #0000004d;margin:0 auto 24px;display:block}.liked-tracks-album-cover{background:linear-gradient(135deg,#f093fb 0%,#f5576c 50%,#764ba2 100%);background-size:200% 200%;animation:gradientShift 4s ease infinite;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.liked-tracks-album-cover:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.1) 50%,transparent 70%);animation:shimmer 3s infinite}.album-view-info{text-align:center;margin-bottom:24px}.album-view-title{font-size:24px;font-weight:700;margin:0 0 8px;letter-spacing:-.3px}.album-view-artist{font-size:18px;color:var(--hint-color);margin:0 0 4px}.album-view-meta{font-size:14px;color:var(--hint-color);margin:0}.album-view-actions-primary{margin-bottom:8px}.album-play-btn{width:100%;padding:14px 24px;background:var(--button-color, #3390ec);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:background .2s}.album-play-btn:hover{opacity:.9}.album-play-btn:active{transform:scale(.98)}.album-view-actions-secondary{display:flex;justify-content:center;align-items:center;gap:16px;padding:8px 0 16px;margin-bottom:8px}.album-action-icon-btn{width:44px;height:44px;background:var(--secondary-button-bg, rgba(255, 255, 255, .1));border:none;border-radius:50%;color:var(--text-color);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.album-action-icon-btn:hover{background:var(--secondary-button-bg-hover, rgba(255, 255, 255, .15));transform:scale(1.05)}.album-action-icon-btn:active{transform:scale(.95)}.album-action-icon-btn svg{flex-shrink:0}.album-tracks-list{display:flex;flex-direction:column;gap:4px}.album-track-item{display:flex;align-items:center;gap:12px;padding:8px;border-radius:8px;cursor:pointer;transition:background .2s;position:relative}.album-track-item:active{background:var(--secondary-bg)}.album-track-mini-cover{width:48px;height:48px;border-radius:6px;overflow:hidden;flex-shrink:0;position:relative}.album-track-mini-cover img{width:100%;height:100%;object-fit:cover;display:block}.album-track-playing-overlay{position:absolute;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;color:#007aff}.album-track-number{font-size:14px;color:var(--hint-color);width:24px;text-align:center;display:flex;align-items:center;justify-content:center}.album-track-info{flex:1;min-width:0}.album-track-title{font-size:15px;font-weight:500;margin:0 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.album-track-artist{font-size:13px;color:var(--hint-color);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.album-view-footer{margin-top:24px;padding:0 16px 24px}.album-release-date{font-size:13px;color:var(--text-color);margin:0 0 2px;font-weight:500}.album-track-count{font-size:13px;color:var(--hint-color);margin:0 0 6px}.album-copyright{font-size:11px;color:var(--hint-color);margin:0;opacity:.8}.album-track-actions{display:flex;align-items:center;gap:8px}.album-track-play-btn{background:none;border:none;color:var(--text-color);padding:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;border-radius:50%;transition:background .2s}.album-track-play-btn:active{opacity:.6}.album-track-play-btn.playing{background:rgba(255,255,255,.1)}.album-track-menu-container{position:relative;display:flex;align-items:center}.album-track-menu{background:none;border:none;color:var(--hint-color);padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center}.album-track-menu:active{opacity:.6}.album-track-menu-dropdown{position:absolute;right:48px;top:50%;transform:translateY(-50%);background:var(--menu-bg);backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);border:1px solid var(--separator-color);border-radius:14px;padding:6px;box-shadow:0 10px 40px #0000004d;z-index:9999;min-width:180px;max-width:280px;animation:popInCentered .2s cubic-bezier(.175,.885,.32,1.275);animation-fill-mode:both;transform-origin:right center}.album-track-menu-dropdown:after{content:"";position:absolute;top:50%;left:100%;transform:translateY(-50%);border-width:6px;border-style:solid;border-color:transparent transparent transparent var(--menu-bg)}.album-track-menu-item{background:none;border:none;color:var(--text-color);padding:10px 14px;width:100%;text-align:left;cursor:pointer;display:flex;align-items:center;gap:12px;border-radius:8px;font-size:15px;font-weight:400;transition:background .15s}.album-track-menu-item:hover{background:rgba(255,255,255,.08)}.album-track-menu-item:active{background:var(--menu-item-active)}.playlist-edit-reorder{display:flex;flex-direction:column;gap:2px;margin-right:8px;flex-shrink:0}.playlist-edit-reorder-btn{background:none;border:none;color:var(--hint-color);padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s}.playlist-edit-reorder-btn:disabled{opacity:.2;cursor:default}.playlist-edit-reorder-btn:not(:disabled):active{background:rgba(255,255,255,.1);color:var(--text-color)}.playlist-edit-delete-btn{background:none;border:none;color:#f44;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all .15s}.playlist-edit-delete-btn:active{background:rgba(255,68,68,.15);transform:scale(.9)}.track-artist{font-size:13px;color:var(--hint-color);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.album-tabs{display:flex;gap:8px;padding:0 16px 12px}.album-tabs button{flex:1;padding:8px 12px;border:none;border-radius:8px;background:var(--secondary-bg);color:var(--secondary-text, #888);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.album-tabs button.active{background:var(--button-color);color:#fff}.reviews-section{padding:0 16px 80px}.reviews-avg-score{display:flex;align-items:baseline;gap:8px;margin-bottom:16px}.reviews-avg-number{font-size:40px;font-weight:700;color:var(--text-color);line-height:1}.reviews-avg-label{font-size:14px;color:var(--secondary-text, #888)}.review-pending-banner{background:rgba(255,200,0,.15);border:1px solid rgba(255,200,0,.4);border-radius:10px;padding:10px 14px;font-size:14px;color:var(--text-color);margin-bottom:16px;text-align:center}.review-rejected-banner{background:rgba(244,67,54,.12);border:1px solid rgba(244,67,54,.35);border-radius:10px;padding:10px 14px;font-size:14px;color:var(--text-color);margin-bottom:8px;text-align:center}.review-write-btn{width:100%;padding:12px;border:1.5px solid var(--button-color);border-radius:10px;background:transparent;color:var(--button-color);font-size:15px;font-weight:600;cursor:pointer;margin-bottom:16px;transition:background .2s,color .2s}.review-write-btn:active{background:var(--button-color);color:#fff}.review-form{background:var(--secondary-bg);border-radius:12px;padding:16px;margin-bottom:16px;display:flex;flex-direction:column;gap:10px}.score-picker{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;justify-items:center}.score-picker button{width:32px;height:32px;padding:0;line-height:1;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1.5px solid var(--secondary-text, #888);background:transparent;color:var(--text-color);font-size:13px;font-weight:600;cursor:pointer;transition:all .15s}.score-picker button.active{background:var(--button-color);border-color:var(--button-color);color:#fff}.review-input,.review-textarea{width:100%;background:var(--bg-color);border:1px solid rgba(128,128,128,.3);border-radius:8px;padding:10px 12px;color:var(--text-color);font-size:14px;font-family:inherit;resize:vertical;box-sizing:border-box}.review-input:focus,.review-textarea:focus{outline:none;border-color:var(--button-color)}.review-form-actions{display:flex;gap:8px}.review-submit-btn{flex:1;padding:10px;background:var(--button-color);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;opacity:1;transition:opacity .2s}.review-submit-btn:disabled{opacity:.5;cursor:default}.review-cancel-btn{padding:10px 16px;background:transparent;color:var(--secondary-text, #888);border:1px solid rgba(128,128,128,.3);border-radius:8px;font-size:14px;cursor:pointer}.reviews-list{display:flex;flex-direction:column;gap:12px}.reviews-loading,.reviews-empty{text-align:center;color:var(--secondary-text, #888);padding:24px 0;font-size:14px}.review-item{background:var(--secondary-bg);border-radius:12px;padding:14px}.review-item-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.review-author-avatar{width:34px;height:34px;border-radius:50%;background:var(--button-color);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex-shrink:0}.review-author-meta{flex:1;display:flex;flex-direction:column;gap:1px}.review-author-name{font-size:13px;font-weight:600;color:var(--text-color)}.review-date{font-size:11px;color:var(--secondary-text, #888)}.review-score-badge{font-size:15px;font-weight:700;color:var(--button-color)}.review-title{font-size:14px;font-weight:600;color:var(--text-color);margin-bottom:6px}.review-body{font-size:13px;color:var(--secondary-text, #888);line-height:1.5}.library-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.library-tabs{display:flex;gap:16px;margin-bottom:24px;border-bottom:1px solid rgba(255,255,255,.1)}.library-tab{background:none;border:none;color:var(--hint-color);font-size:17px;font-weight:500;padding:8px 0;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.library-tab.active{color:var(--text-color);border-bottom-color:var(--button-color)}.library-content{margin-top:48px}.library-empty{text-align:center;padding:32px 24px}.library-empty-icon{width:80px;height:80px;margin:0 auto 16px;border-radius:50%;background:var(--secondary-bg);display:flex;align-items:center;justify-content:center;color:var(--hint-color)}.library-empty h2{font-size:20px;font-weight:600;margin:0 0 8px}.library-empty p{font-size:15px;color:var(--hint-color);margin:0}.library-playlists{margin-top:32px}.library-playlist-card{background:var(--secondary-bg);border-radius:12px;padding:16px;display:flex;align-items:center;gap:16px;cursor:pointer;transition:background .2s;margin-bottom:16px}.library-playlist-card:active{background:rgba(255,255,255,.1)}.library-playlist-cover{width:80px;height:80px;border-radius:8px;flex-shrink:0;position:relative;overflow:hidden;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.liked-tracks-cover{background:linear-gradient(135deg,#f093fb 0%,#f5576c 50%,#764ba2 100%);background-size:200% 200%;animation:gradientShift 4s ease infinite;position:relative;overflow:hidden}.liked-tracks-cover:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.1) 50%,transparent 70%);animation:shimmer 3s infinite}.liked-tracks-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:1}.library-playlist-info{flex:1;min-width:0}.library-playlist-info h3{font-size:16px;font-weight:600;margin:0 0 4px;color:var(--text-color)}.library-playlist-count{font-size:13px;color:var(--hint-color);margin:0}.playlist-create-card{background:var(--secondary-bg);border-radius:12px;padding:24px;display:flex;flex-direction:column;align-items:center;gap:12px;cursor:pointer;transition:background .2s}.playlist-create-card:active{background:rgba(255,255,255,.1)}.playlist-create-icon{width:64px;height:64px;border-radius:50%;background:var(--button-color);display:flex;align-items:center;justify-content:center;color:#fff}.playlist-create-card p{margin:0;font-size:15px;font-weight:500}.library-section{margin-top:-6px}.library-section+.library-section{margin-top:50px}.library-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;cursor:pointer}.library-section-header h2{font-size:20px;font-weight:600;margin:0}.favorite-artists-scroll{display:flex;gap:16px;overflow-x:auto;padding-bottom:8px;-webkit-overflow-scrolling:touch;user-select:none;-webkit-user-select:none}.favorite-artists-scroll::-webkit-scrollbar{display:none}.favorite-artist-card{flex-shrink:0;width:115px;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer}.favorite-artist-avatar{width:115px;height:115px;border-radius:50%;object-fit:cover;background:var(--secondary-bg)}.favorite-artist-avatar-placeholder{width:115px;height:115px;border-radius:50%;background:var(--secondary-bg);display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:700;color:var(--hint-color)}.favorite-artist-name{font-size:12px;font-weight:500;text-align:center;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:115px}.liked-tracks-list{display:flex;flex-direction:column;gap:4px}.liked-track-item{display:flex;align-items:center;gap:12px;padding:8px;border-radius:8px;cursor:pointer;transition:background .2s;position:relative}.liked-track-item:active{background:rgba(255,255,255,.05)}.liked-track-cover-container{position:relative;width:48px;height:48px;flex-shrink:0}.liked-track-cover-container .liked-track-cover{width:100%;height:100%}.liked-track-cover-container .album-track-playing-overlay{border-radius:6px}.liked-track-cover{width:48px;height:48px;border-radius:6px;object-fit:cover;flex-shrink:0;background:var(--secondary-bg)}.liked-track-info{flex:1;min-width:0}.liked-track-title{font-size:15px;font-weight:500;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.liked-track-artist{font-size:13px;color:var(--hint-color);margin:4px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.liked-track-menu{background:none;border:none;padding:8px;cursor:pointer;display:flex;align-items:center;justify-content:center}.popup-divider{height:.5px;background:rgba(255,255,255,.1);margin:4px 0}.import-banner{background:var(--secondary-bg);border-radius:12px;padding:16px;display:flex;align-items:center;gap:12px;cursor:pointer;margin-bottom:16px}.import-banner-text{flex:1;display:flex;flex-direction:column;gap:2px}.import-banner-title{font-size:15px;font-weight:600;color:var(--text-color)}.import-banner-subtitle{font-size:13px;color:var(--hint-color)}.import-banner-close{background:none;border:none;color:var(--hint-color);padding:4px;cursor:pointer}.library-section-divider{height:1px;background:rgba(255,255,255,.1);margin:24px 0}.mini-player{position:fixed;bottom:60px;left:0;right:0;background:var(--secondary-bg);border-top:1px solid rgba(255,255,255,.05);display:flex;align-items:center;gap:12px;padding:8px 12px;min-height:64px;cursor:pointer;z-index:100;backdrop-filter:blur(20px);transform:translateZ(0);-webkit-transform:translateZ(0)}.mini-player-cover{width:48px;height:48px;border-radius:8px;object-fit:cover;flex-shrink:0}.mini-player-info{flex:1;min-width:0}.mini-player-title{font-size:14px;font-weight:500;margin:0 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-player-artist{font-size:12px;color:var(--hint-color);margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-player-quality{font-size:9px;font-weight:700;background:rgba(255,255,255,.15);padding:2px 6px;border-radius:4px;width:fit-content;margin-bottom:4px}.mini-player-progress{position:relative;width:100%;height:2px;background:rgba(255,255,255,.2);border-radius:2px;overflow:hidden}.mini-player-progress-fill{height:100%;background:var(--button-color);transition:width .1s linear}.mini-player-btn{background:none;border:none;color:var(--text-color);cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center}.full-player-background{position:fixed;inset:0;z-index:199;background-size:cover;background-position:center;filter:blur(80px) brightness(1.2) saturate(1.5);animation:slideUp .3s cubic-bezier(.4,0,.2,1);transform:scale(1.2) translateZ(0);-webkit-transform:scale(1.2) translate3d(0,0,0);backface-visibility:hidden;-webkit-backface-visibility:hidden;will-change:filter;isolation:isolate;contain:strict;pointer-events:none}.full-player-background.closing{animation:slideDown .3s cubic-bezier(.4,0,.2,1)}.full-player{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;padding:16px;animation:slideUp .3s cubic-bezier(.4,0,.2,1);background:rgba(0,0,0,.3);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);transform:translateZ(0);-webkit-transform:translate3d(0,0,0);backface-visibility:hidden;-webkit-backface-visibility:hidden;perspective:1000px;-webkit-perspective:1000px;isolation:isolate;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;contain:style;will-change:transform}.full-player.closing{animation:slideDown .3s cubic-bezier(.4,0,.2,1)}.full-player-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;opacity:1;transition:opacity .3s ease;position:relative;z-index:100}.full-player-header.hidden{opacity:0;pointer-events:none}.player-logo-container{position:absolute;top:calc(env(safe-area-inset-top,0px) + 4px);left:50%;transform:translate(-50%);z-index:101;pointer-events:none}.player-logo{height:64px;width:64px;display:block;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;object-fit:contain;filter:contrast(1.05) brightness(1.02);transform:translateZ(0);backface-visibility:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.player-close-btn{background:none;border:none;color:#ffffffa3;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center}.player-header-title{flex:1;text-align:center;font-size:13px;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 12px}.player-artwork-container{flex:0 1 auto;display:flex;align-items:flex-start;justify-content:center;min-height:150px;padding:5px 0 8px;position:relative}.player-artwork-radiosity{position:absolute;width:100%;height:100%;display:flex;align-items:flex-start;justify-content:center;transform:scale(.92);transform-origin:bottom center;z-index:0;pointer-events:none}.player-artwork-radiosity-img{width:100%;max-width:335px;aspect-ratio:1;object-fit:cover;border-radius:12px;filter:blur(20px) saturate(2);opacity:.4}.full-player-cover{width:100%;max-width:335px;aspect-ratio:1;object-fit:cover;border-radius:12px;box-shadow:0 4px 10px #0000001a;transition:all .3s ease;transform:translateZ(0);-webkit-transform:translate3d(0,0,0);backface-visibility:hidden;-webkit-backface-visibility:hidden;position:relative;z-index:1}.full-player-cover.playing{transform:scale(1.05) translateZ(0);-webkit-transform:scale(1.05) translate3d(0,0,0)}.full-player-cover.paused{transform:scale(.95) translateZ(0);-webkit-transform:scale(.95) translate3d(0,0,0)}.full-player-info{width:100%;max-width:352px;padding:0;margin:20px auto 10px;box-sizing:border-box;flex-shrink:0;overflow:visible}.player-track-title{display:flex;align-items:center;justify-content:space-between;gap:0;overflow:visible;flex-wrap:nowrap}.player-track-title h2{font-size:17px;font-weight:700;font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,Helvetica,Arial,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0;color:#fff;flex:1;min-width:0}.player-artist-name{font-size:15px;font-weight:700;font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,Helvetica,Arial,sans-serif;color:#ffffffa3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:0}.player-actions{display:flex;gap:14px;align-items:center;align-self:center;margin-top:0;position:relative;z-index:400;overflow:visible;flex-shrink:0}.player-like-btn,.player-menu-btn{background:rgba(255,255,255,.1);border:none;color:#ffffffeb;cursor:pointer;padding:0;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:opacity .1s ease-in,transform .15s ease}.player-menu-btn{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.player-like-btn:active{transform:scale(.9)}.player-like-btn.liked{color:#ff6b6b}.player-like-btn.liked svg{filter:drop-shadow(0 0 8px rgba(255,107,107,.5))}.player-controls{width:100%;max-width:352px;padding:0;margin:-20px auto 8px;box-sizing:border-box;position:relative;z-index:1}.player-buttons{position:relative;z-index:1;margin-top:5px}.progress-bar-container{padding:8px 0;margin:6px 0;cursor:pointer}.progress-bar{width:100%;height:10px;background:rgba(255,255,255,.2);border-radius:4px;position:relative;touch-action:none;transition:height .3s ease}.progress-bar.dragging{height:14px}.progress-fill{height:100%;background:white;border-radius:4px;transition:width .1s linear}.progress-bar.dragging .progress-fill{transition:none}.progress-thumb{position:absolute;top:50%;transform:translate(-50%,-50%);width:12px;height:12px;background:white;border-radius:50%;box-shadow:0 2px 8px #0000004d;opacity:0;transition:opacity .2s}.progress-bar.dragging .progress-thumb{opacity:1}.progress-buffered{position:absolute;left:0;top:0;height:100%;background:rgba(255,255,255,.35);border-radius:4px;transition:width .3s ease;z-index:1}.progress-fill{position:relative;z-index:2}.progress-bar.loading{overflow:hidden;pointer-events:none;cursor:default}.progress-bar.loading:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);background-size:200% 100%;animation:shimmer 1.4s ease-in-out infinite;z-index:10}.progress-fill.buffering:after{content:"";position:absolute;right:-6px;top:-2px;width:12px;height:calc(100% + 4px);border-radius:3px;background:rgba(255,255,255,.6);animation:edge-pulse .9s ease-in-out infinite}.mini-player-progress-buffered{position:absolute;left:0;top:0;height:100%;background:rgba(255,255,255,.3);border-radius:2px;transition:width .3s ease;z-index:1}.mini-player-progress-fill{position:relative;z-index:2}.mini-player-progress.loading{overflow:hidden}.mini-player-progress.loading:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.5) 50%,transparent 100%);background-size:200% 100%;animation:shimmer 1.4s ease-in-out infinite;z-index:10}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes edge-pulse{0%,to{opacity:.2;transform:scaleX(.7)}50%{opacity:1;transform:scaleX(1.3)}}.progress-times{display:flex;justify-content:space-between;font-size:12px;margin-top:8px;color:#fff9;font-variant-numeric:tabular-nums}.player-buttons{width:100%;max-width:352px;padding:0;margin:26px auto 20px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:30px}.player-skip-btn{background:none;border:none;color:#fff;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;transition:opacity .2s}.player-skip-btn svg{width:40px;height:40px}.player-main-btn svg{width:36px;height:36px}.player-main-btn{width:70px;height:70px;border-radius:50%;background:white;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#000;box-shadow:0 4px 16px #0000004d;transition:transform .2s}.player-main-btn:active{transform:scale(.95)}.player-menu-container{position:relative;z-index:400;overflow:visible}.player-menu{background:var(--menu-bg);backdrop-filter:blur(60px) saturate(2.2);-webkit-backdrop-filter:blur(60px) saturate(2.2);border:1px solid var(--separator-color);border-radius:10px;padding:6px;box-shadow:0 10px 40px #0000004d;min-width:200px;z-index:10000;pointer-events:auto}.player-menu:after{content:"";position:absolute;top:100%;right:10px;border-width:6px;border-style:solid;border-color:var(--menu-bg) transparent transparent transparent}.player-menu-item{display:flex;align-items:center;gap:12px;background:none;border:none;color:var(--text-color);padding:10px 14px;cursor:pointer;width:100%;font-size:15px;font-weight:400;border-radius:8px;transition:background .15s;position:relative;z-index:1;pointer-events:auto}.player-menu-item:active{background:var(--menu-item-active)}.player-quality-badge{position:absolute;top:72px;right:24px;background:rgba(255,255,255,.15);backdrop-filter:blur(10px);padding:4px 12px;border-radius:12px;font-size:11px;font-weight:700;letter-spacing:.5px}.player-persistent-controls{width:100%;padding:0 0 20px;flex-shrink:0;position:relative;z-index:100}.player-persistent-controls.hidden{opacity:0;pointer-events:none}.player-footer-actions{width:100%;max-width:352px;padding:0;margin:24px auto 0;box-sizing:border-box;padding-bottom:max(8px,env(safe-area-inset-bottom));display:flex;justify-content:center;align-items:center;gap:32px}@media (min-height: 814px){.player-footer-actions{margin-top:39px}}.player-footer-btn{background:none;border:none;color:#fff9;cursor:pointer;padding:10px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s}.player-footer-btn svg{width:24px;height:24px}.player-footer-btn:active{transform:scale(.95)}.player-footer-btn.active{color:#fff}.modal-overlay{position:fixed;inset:0;background:var(--modal-overlay-bg);z-index:300;display:flex;align-items:flex-end;justify-content:center;animation:fadeIn .2s ease-out forwards}.modal-content{background:var(--modal-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--separator-color);border-radius:16px 16px 0 0;padding:24px;padding-top:calc(24px + env(safe-area-inset-top));max-height:80dvh;overflow-y:auto;width:100%;animation:slideUp .3s cubic-bezier(.4,0,.2,1) forwards;box-shadow:0 10px 40px #0003;transform:translateY(0)}.modal-content.admin-modal{height:calc(100dvh - 60px);max-height:calc(100dvh - 60px);overflow:hidden;display:flex;flex-direction:column}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-content.queue-modal{background:var(--queue-modal-bg);backdrop-filter:blur(80px);-webkit-backdrop-filter:blur(80px);overflow:hidden}.modal-content.create-playlist-modal{height:80vh;display:flex;flex-direction:column;padding:0;overflow:hidden;position:relative}.modal-content.create-playlist-modal .modal-header{padding:24px 24px 12px;flex-shrink:0}.modal-content.import-modal{height:80vh;display:flex;flex-direction:column;padding:0;overflow:hidden;position:relative}.modal-content.import-modal .modal-header{padding:24px 24px 12px;flex-shrink:0}.import-back-btn{background:none;border:none;color:var(--text-color);cursor:pointer;padding:4px;display:flex;align-items:center}.import-service-list{display:flex;flex-direction:column;gap:12px}.import-service-btn{display:flex;align-items:center;gap:14px;padding:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:14px;cursor:pointer;transition:background .2s;width:100%;text-align:left;color:var(--text-color)}.import-service-btn:active{background:rgba(255,255,255,.1)}.import-service-icon{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;font-weight:700}.import-service-info{flex:1;display:flex;flex-direction:column;gap:2px}.import-service-name{font-size:16px;font-weight:600}.import-service-desc{font-size:13px;color:var(--hint-color)}.modal-content.track-search-modal{height:80vh;display:flex;flex-direction:column;overflow:hidden;padding:0}.modal-content.track-search-modal .modal-header{padding:24px 24px 12px;flex-shrink:0}.search-input-fixed{padding:0 24px 12px;flex-shrink:0}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.modal-header h2{font-size:22px;font-weight:700;margin:0}.modal-close-btn{background:none;border:none;color:var(--text-color);cursor:pointer;padding:8px}.profile-section{margin-bottom:24px}.profile-section-title{font-size:11px;font-weight:600;color:var(--hint-color);margin:0 0 8px;letter-spacing:.5px}.profile-item{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:16px;margin-bottom:8px}.profile-item.admin-item{background:rgba(255,165,0,.15);border:1px solid rgba(255,165,0,.4)}.profile-label{margin:0;font-size:15px;color:var(--button-color)}.profile-app-item{display:flex;justify-content:space-between;align-items:center}.toggle-switch{width:48px;height:28px;background:var(--hint-color);border-radius:14px;position:relative;cursor:pointer;transition:background .2s}.toggle-switch.active{background:var(--button-color)}.toggle-switch:after{content:"";position:absolute;width:24px;height:24px;background:white;border-radius:50%;top:2px;left:2px;transition:transform .2s;box-shadow:0 2px 4px #0003}.toggle-switch.active:after{transform:translate(20px)}.region-buttons{display:flex;gap:8px;flex-wrap:wrap}.region-buttons button{background:var(--button-color);border:none;color:#fff;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .2s}.region-buttons button:active{opacity:.8}.profile-info{margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1);font-size:13px;color:var(--hint-color)}.profile-info p{margin:4px 0}.back-button{background:none;border:none;color:var(--button-color);display:flex;align-items:center;gap:4px;font-size:16px;cursor:pointer;padding:12px 0;margin-bottom:16px}.subscription-management{padding:0}.subscription-management h3{font-size:20px;font-weight:600;margin:0 0 16px}.subscription-regions{display:flex;flex-direction:column;gap:12px}.subscription-region-item{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:16px;display:flex;justify-content:space-between;align-items:center}.region-info{flex:1}.region-info h4{font-size:16px;font-weight:600;margin:0 0 4px}.subscription-status{font-size:13px;color:var(--hint-color);margin:4px 0}.subscription-expiry{font-size:12px;color:var(--hint-color);margin:4px 0}.region-select-btn{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;padding:8px 16px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.region-select-btn.active{background:var(--button-color);border-color:var(--button-color)}.region-select-btn:active{transform:scale(.95)}.profile-item svg{width:20px;height:20px;opacity:.6}.queue-modal{max-height:80vh;display:flex;flex-direction:column}.queue-list{overflow:visible;padding:0 16px 16px}.queue-item{display:flex;align-items:center;gap:12px;padding:8px;border-radius:8px;cursor:pointer;transition:background .2s;position:relative}.queue-item:active{background:rgba(255,255,255,.05)}.queue-item.playing{background:rgba(0,122,255,.15)}.queue-item-cover{width:48px;height:48px;border-radius:6px;object-fit:cover;flex-shrink:0}@keyframes text-scroll{0%,20%{transform:translate(0)}50%{transform:translate(-25%)}80%,to{transform:translate(0)}}.queue-item-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}.queue-item.playing .queue-item-info{mask-image:linear-gradient(to right,black 85%,transparent 100%);-webkit-mask-image:linear-gradient(to right,black 85%,transparent 100%)}.queue-item.playing .queue-item-title{text-overflow:clip;white-space:nowrap;display:inline-block;animation:text-scroll 8s ease-in-out infinite;color:var(--button-color)}.queue-item-title{font-size:15px;font-weight:500;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-color)}.queue-item-artist{font-size:13px;color:var(--hint-color);margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.queue-item.playing .queue-item-artist{color:var(--button-color);opacity:.8}.queue-item-playing{color:var(--button-color);display:flex;align-items:center;margin-right:8px}.queue-item-menu-container{position:relative;display:flex;align-items:center}.queue-item-menu{background:none;border:none;color:var(--hint-color);padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center}.queue-item-menu:active{opacity:.6}.queue-track-menu{position:absolute;right:40px;top:50%;transform:translateY(-50%);background:var(--menu-bg);backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);border:1px solid var(--separator-color);border-radius:14px;padding:6px;box-shadow:0 10px 40px #0000004d;z-index:9999;min-width:200px;max-width:280px;animation:popInCentered .2s cubic-bezier(.175,.885,.32,1.275);transform-origin:right center}.queue-track-menu:after{content:"";position:absolute;left:100%;top:50%;transform:translateY(-50%);border-width:6px;border-style:solid;border-color:transparent transparent transparent var(--menu-bg)}.queue-track-menu-item{background:none;border:none;color:var(--text-color);padding:10px 14px;width:100%;text-align:left;cursor:pointer;display:flex;align-items:center;gap:12px;border-radius:8px;font-size:15px;font-weight:400;transition:background .15s}.queue-track-menu-item:hover{background:rgba(255,255,255,.08)}.queue-track-menu-item:active{background:var(--menu-item-active)}@keyframes starPulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}to{transform:scale(1);opacity:1}}.star-icon-anim{animation:starPulse 2s infinite ease-in-out}@keyframes premiumPulse{0%{box-shadow:0 0 #007aff66;transform:scale(1)}50%{box-shadow:0 0 0 10px #007aff00;transform:scale(1.02)}to{box-shadow:0 0 #007aff00;transform:scale(1)}}.subscription-tabs{display:flex;gap:8px;margin-bottom:20px}.tab-btn{flex:1;padding:12px;border-radius:10px;border:none;background:rgba(255,255,255,.1);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.tab-btn.active{background:var(--button-color)}.subscription-type-selector{display:flex;gap:8px;margin-bottom:16px}.subscription-type-btn{flex:1;padding:16px;border-radius:12px;border:2px solid transparent;background:rgba(255,255,255,.05);color:#fff;cursor:pointer;transition:all .2s}.subscription-type-btn.active{border-color:var(--button-color);background:rgba(0,122,255,.1)}.subscription-type-title{font-weight:600;margin-bottom:4px}.subscription-type-subtitle{font-size:12px;opacity:.7}.region-selector-btn{padding:12px;border-radius:8px;border:none;background:rgba(255,255,255,.1);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.region-selector-btn.active{background:var(--button-color)}.promo-input-container{display:flex;gap:8px}.promo-input{flex:1;padding:12px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);color:#fff;font-size:16px}.promo-check-btn{padding:12px 24px;border-radius:12px;border:none;background:rgba(255,255,255,.1);color:#fff;cursor:pointer;font-weight:600}.promo-check-btn.valid{background:#4caf50}.promo-valid-message{margin-top:8px;color:#4caf50;font-size:13px}.subscription-price-card{padding:16px;border-radius:12px;border:none;background:rgba(255,255,255,.05);color:#fff;cursor:pointer;transition:all .2s;display:flex;justify-content:space-between;align-items:center}.subscription-price-card:hover{background:rgba(255,255,255,.1)}.subscription-card-container{background:rgba(255,255,255,.05);border-radius:12px;padding:16px;margin-bottom:20px}.region-card-container{display:flex;gap:12px;padding:10px;background:rgba(255,255,255,.05);border-radius:8px}.region-toggle-btn{padding:8px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:transparent;color:var(--text-color);cursor:pointer;font-size:13px;transition:all .2s}.region-toggle-btn.active{border-color:var(--button-color);background:rgba(0,122,255,.1);color:var(--button-color)}.region-selection-btn{padding:16px;border-radius:12px;border:1px solid transparent;background:rgba(255,255,255,.05);color:#fff;cursor:pointer;transition:all .2s}.region-selection-btn.active{border-color:var(--button-color);background:rgba(0,122,255,.1)}.admin-input{width:100%;padding:12px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:var(--secondary-bg);color:var(--text-color);font-size:16px;margin-bottom:8px}.admin-input-small{width:100%;padding:10px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:var(--secondary-bg);color:var(--text-color);font-size:14px}.admin-textarea{width:100%;padding:12px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:var(--secondary-bg);color:var(--text-color);font-size:16px;min-height:100px;resize:vertical}.admin-select{width:100%;padding:12px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:var(--secondary-bg);color:var(--text-color);font-size:16px;margin-bottom:8px}.admin-refresh-btn{padding:6px 12px;border-radius:6px;border:none;background:rgba(255,255,255,.1);color:var(--text-color);font-size:13px;cursor:pointer;display:flex;align-items:center;gap:6px}.admin-card{background:var(--secondary-bg);border-radius:8px;padding:12px;border:1px solid rgba(255,255,255,.05)}.admin-card-large{background:var(--secondary-bg);border-radius:12px;padding:16px;border:1px solid rgba(255,255,255,.05)}.admin-search-input{width:100%;padding:10px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:rgba(0,0,0,.2);color:var(--text-color);font-size:14px}.admin-query-details{margin-bottom:20px;padding:15px;background:rgba(0,0,0,.3);border-radius:8px}.modal-fullscreen{position:fixed;inset:0;background:var(--bg-color);z-index:400;display:flex;flex-direction:column;animation:slideFromRight .3s ease-out forwards}@keyframes slideFromRight{0%{transform:translate(100%)}to{transform:translate(0)}}.modal-fullscreen .modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px;padding-top:calc(16px + env(safe-area-inset-top));border-bottom:1px solid var(--separator-color);flex-shrink:0;margin-bottom:0}.modal-fullscreen .modal-header .back-button{padding:8px;margin:0}.modal-fullscreen .modal-title{font-size:18px;font-weight:600;margin:0;flex:1;text-align:center}.settings-panel{background:var(--bg-color);min-height:100%}.settings-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--separator-color);margin-bottom:16px}.settings-title{font-size:18px;font-weight:600;margin:0;flex:1;text-align:center}.settings-header-spacer{width:80px}.settings-section{padding:0 16px 16px}.settings-section-title{color:var(--hint-color);font-size:13px;text-transform:uppercase;margin:0 0 12px;font-weight:600;letter-spacing:.5px}.quality-option{flex:1;padding:16px;border-radius:12px;background:var(--secondary-bg);border:2px solid transparent;color:var(--text-color);font-size:16px;font-weight:600;transition:all .2s;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;position:relative}.quality-option .quality-value{font-size:24px;font-weight:700}.quality-option .quality-unit{font-size:13px;color:var(--hint-color);font-weight:500}.quality-option.active{border-color:var(--button-color);background:rgba(0,122,255,.1)}.quality-option.active .quality-value,.quality-option.active .quality-unit{color:var(--button-color)}.quality-option .premium-badge{position:absolute;top:8px;right:8px;font-size:10px;color:var(--button-color);background:rgba(0,122,255,.15);padding:2px 6px;border-radius:4px;font-weight:600}.settings-hint{color:var(--hint-color);font-size:13px;margin:12px 0 0;line-height:1.4}body[data-theme=light] .quality-option{background:rgba(0,0,0,.03)}body[data-theme=light] .quality-option.active{background:rgba(0,122,255,.08)}.subscription-content,.family-content,.regions-content{padding-bottom:20px;overflow-y:auto}.tab-bar{position:fixed;bottom:0;left:0;right:0;background:var(--secondary-bg);border-top:1px solid rgba(255,255,255,.05);display:flex;justify-content:space-around;padding:8px 0 calc(8px + env(safe-area-inset-bottom));z-index:50;backdrop-filter:blur(20px);transform:translateZ(0);-webkit-transform:translateZ(0)}@media (max-height: 500px){.tab-bar{display:none!important}}.tab-item{background:none;border:none;color:var(--hint-color);display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;padding:4px 16px;transition:color .2s;flex:1}.tab-item.active{color:var(--button-color)}.tab-item span{font-size:10px;font-weight:500}.playing-animation-wrapper{margin-right:8px;flex-shrink:0;color:#007aff}.playing-animation{display:flex;align-items:center;gap:2px;height:14px;width:14px}.playing-animation .bar{width:3px;background:#007aff;border-radius:2px;animation:playing .8s ease-in-out infinite}.playing-animation .bar:nth-child(1){animation-delay:0s;height:60%}.playing-animation .bar:nth-child(2){animation-delay:.2s;height:100%}.playing-animation .bar:nth-child(3){animation-delay:.4s;height:40%}@keyframes playing{0%,to{transform:scaleY(1)}50%{transform:scaleY(.3)}}.player-artist-container{position:relative;display:flex;justify-content:flex-start;width:fit-content;max-width:100%;z-index:100;overflow:visible}.popup-backdrop{position:fixed;inset:0;z-index:9998;background:transparent;cursor:default;animation:fadeIn .15s ease-out;animation-fill-mode:both}.artist-popup-menu{position:absolute;bottom:100%;left:0;margin-bottom:14px;background:var(--menu-bg);backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);border:1px solid var(--separator-color);border-radius:14px;padding:6px;box-shadow:0 10px 40px #0000004d;z-index:300;min-width:220px;max-width:280px;width:max-content;transform-origin:bottom left;pointer-events:auto}.artist-popup-menu:not(.artist-popup-menu-portal){animation:popIn .2s cubic-bezier(.175,.885,.32,1.275);animation-fill-mode:both}.artist-popup-menu-portal{position:fixed!important;z-index:9999!important;bottom:auto!important;animation:popInPortal .2s cubic-bezier(.175,.885,.32,1.275);animation-fill-mode:both}.artist-popup-menu-portal.artist-popup-menu-below{animation:popInBelow .2s cubic-bezier(.175,.885,.32,1.275);animation-fill-mode:both}@keyframes popInPortal{0%{opacity:0;transform:scale(.8) translateY(calc(-100% + 10px))}to{opacity:1;transform:scale(1) translateY(-100%)}}.artist-popup-menu:after{content:"";position:absolute;top:100%;left:20px;margin-left:0;border-width:6px;border-style:solid;border-color:var(--menu-bg) transparent transparent transparent}.artist-popup-menu-below:after{top:-11px;bottom:auto;border-color:transparent transparent var(--menu-bg) transparent}@keyframes popInBelow{0%{opacity:0;transform:scale(.8) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.8) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes popInCentered{0%{opacity:0;transform:scale(.8) translateY(-50%)}to{opacity:1;transform:scale(1) translateY(-50%)}}.artist-popup-item{background:none;border:none;color:var(--text-color);padding:10px 14px;width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;border-radius:8px;transition:background .15s;position:relative;z-index:1;pointer-events:auto}.artist-popup-item:active{background:var(--menu-item-active)}.artist-popup-text{display:flex;flex-direction:column;align-items:flex-start;text-align:left;line-height:1.3;flex:1;min-width:0}.artist-popup-action{font-size:14px;font-weight:500;color:#fff;white-space:nowrap}.artist-popup-target{font-size:13px;color:#fff9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.artist-popup-icon{color:#fff;opacity:.8;flex-shrink:0}.popup-divider{height:1px;background:rgba(255,255,255,.1);margin:2px 6px}.keyboard-hidden{visibility:hidden!important;opacity:0!important;pointer-events:none!important}.artist-page{position:fixed;inset:0;background:var(--bg-color);z-index:30;overflow-y:auto;-webkit-overflow-scrolling:touch;animation:slideInRight .3s cubic-bezier(.4,0,.2,1)}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.artist-header{background-size:cover;background-position:center top;position:relative;background-color:var(--secondary-bg)}.artist-header-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.3) 0%,rgba(0,0,0,0) 30%,rgba(0,0,0,.2) 60%,var(--bg-color) 100%);display:flex;flex-direction:column;justify-content:space-between;padding:16px;padding-top:calc(16px + env(safe-area-inset-top))}.artist-header-overlay.compact{position:static;background:var(--bg-color);justify-content:flex-start;gap:16px;border-bottom:1px solid rgba(255,255,255,.05)}.artist-header-overlay.compact .artist-header-nav{margin-bottom:0}.artist-header-overlay.compact .artist-header-content{padding-bottom:0}.artist-header-overlay.compact .artist-name-large{font-size:24px;-webkit-line-clamp:2}.artist-header-nav{margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.artist-subscribe-btn{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.2);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.artist-subscribe-btn:hover{background:rgba(255,255,255,.3);transform:scale(1.05)}.artist-subscribe-btn:active{transform:scale(.95)}.artist-subscribe-btn.subscribed{background:var(--button-color);border-color:var(--button-color)}.artist-subscribe-btn.loading{pointer-events:none;opacity:.7}.subscribe-loading-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.artist-share-btn{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.2);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.artist-share-btn:hover{background:rgba(255,255,255,.3);transform:scale(1.05)}.artist-share-btn:active{transform:scale(.95)}.artist-header-placeholder{padding:16px;padding-top:calc(16px + env(safe-area-inset-top))}.back-btn{background:none;border:none;color:var(--button-color);display:flex;align-items:center;gap:4px;font-size:16px;padding:0;cursor:pointer}.artist-header-content{padding-bottom:20px;display:flex;flex-direction:column;justify-content:flex-end;min-height:100px}.artist-name-large{font-size:clamp(28px,8vw,42px);font-weight:800;margin:0 0 8px;letter-spacing:-1px;line-height:1.1;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.5);word-wrap:break-word;overflow-wrap:break-word;hyphens:auto;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.artist-genre{font-size:15px;color:#ffffffe6;margin:0;font-weight:500;text-shadow:0 1px 4px rgba(0,0,0,.5)}.artist-content{padding-bottom:160px;position:relative;margin-top:-20px;overflow-y:visible!important;overflow-x:visible!important;overscroll-behavior:auto!important}.artist-header-overlay.compact+.artist-content{margin-top:0}.artist-section{margin-bottom:32px}.section-title{font-size:20px;font-weight:700;margin:0 0 12px}.artist-grid-view{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:16px}.track-info-grid{margin-top:8px}.latest-release-card{display:flex;gap:16px;background:var(--secondary-bg);padding:12px;border-radius:12px;cursor:pointer;align-items:center;transition:background .2s}.latest-release-card:active{background:rgba(255,255,255,.1)}.latest-release-cover{width:80px;height:80px;border-radius:6px;object-fit:cover;box-shadow:0 2px 8px #0003}.latest-release-info{flex:1;min-width:0}.release-meta{display:flex;gap:6px;align-items:center;font-size:11px;color:var(--hint-color);margin-bottom:4px;font-weight:600}.release-dot{font-size:8px;opacity:.5}.release-title{font-size:16px;font-weight:600;margin:0 0 2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.release-artist{font-size:14px;color:var(--hint-color);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.horizontal-scroll-container{display:flex;gap:12px;overflow-x:auto;overflow-y:visible;padding-bottom:8px;-webkit-overflow-scrolling:touch;cursor:grab;user-select:none;overscroll-behavior-x:contain;overscroll-behavior-y:auto}.horizontal-scroll-container.active{cursor:grabbing;cursor:-webkit-grabbing}.horizontal-scroll-container::-webkit-scrollbar{display:none}.top-songs-carousel{padding-right:16px}.track-card{min-width:260px;background:var(--secondary-bg);padding:10px;border-radius:12px;display:flex;align-items:center;gap:12px;cursor:pointer;border:1px solid transparent;transition:background .2s;user-select:none}.track-card:active{background:rgba(255,255,255,.1)}.track-card-cover-wrapper{position:relative;width:56px;height:56px;flex-shrink:0}.track-card-cover{width:100%;height:100%;border-radius:8px;object-fit:cover;pointer-events:none}.track-card-playing-overlay{position:absolute;inset:0;background:rgba(0,0,0,.5);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--button-color)}.track-card-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}.track-card-title{font-size:15px;font-weight:600;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.track-card-album{font-size:13px;color:var(--hint-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.album-card-small{width:130px;flex-shrink:0;cursor:pointer;user-select:none}.album-card-small img{pointer-events:none}.album-cover-small{width:130px;height:130px;border-radius:8px;margin-bottom:8px;object-fit:cover;box-shadow:0 2px 8px #0003}.album-title-small{font-size:13px;font-weight:500;margin:0 0 2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.album-year-small{font-size:12px;color:var(--hint-color);margin:0}.similar-artist-card{width:100px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;user-select:none}.similar-artist-card img{pointer-events:none}.similar-artist-image{width:100px;height:100px;border-radius:50%;object-fit:cover;background:var(--secondary-bg)}.similar-artist-image-placeholder{width:100px;height:100px;border-radius:50%;background:var(--secondary-bg);display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;color:var(--hint-color)}.similar-artist-name{font-size:12px;text-align:center;margin:0;font-weight:500;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.loading-spinner{width:30px;height:30px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--button-color);border-radius:50%;animation:spin 1s linear infinite}.releases-controls-container{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;padding-top:calc(12px + env(safe-area-inset-top));position:sticky;top:0;background:var(--bg-color);z-index:20;border-bottom:1px solid rgba(255,255,255,.05);gap:12px}.releases-filters{display:flex;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;flex:1;min-width:0;padding-right:4px}.releases-filters::-webkit-scrollbar{display:none}.filter-chip{background:rgba(255,255,255,.1);border:none;color:var(--text-color);padding:6px 14px;border-radius:16px;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .2s;flex-shrink:0}.filter-chip.active{background:var(--button-color);color:#fff}.filter-chip:active{transform:scale(.95);opacity:.8}.sort-container{position:relative;display:inline-flex;align-items:center;z-index:50;flex-shrink:0;margin-left:0}.sort-button{background:none;border:none;color:var(--button-color);display:flex;align-items:center;gap:4px;font-size:14px;font-weight:600;cursor:pointer;padding:4px 0;white-space:nowrap}.sort-button:active{opacity:.7}.sort-menu-backdrop{position:fixed;inset:0;z-index:99;background:transparent;cursor:default}.sort-menu{position:absolute;top:100%;right:0;margin-top:8px;background:var(--menu-bg);backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);border-radius:12px;width:220px;padding:6px;box-shadow:0 10px 40px #0000004d;border:1px solid var(--separator-color);z-index:100;transform-origin:top right;animation:menuPopIn .2s cubic-bezier(.2,.8,.2,1) forwards}@keyframes menuPopIn{0%{opacity:0;transform:scale(.9) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.sort-menu-title{padding:8px 12px 4px;font-size:11px;color:var(--hint-color);font-weight:700;text-transform:uppercase;letter-spacing:.5px;opacity:.8}.sort-menu-item{width:100%;display:flex;justify-content:space-between;align-items:center;background:none;border:none;color:var(--text-color);padding:10px 12px;font-size:14px;cursor:pointer;text-align:left;border-radius:8px;transition:background .15s}.sort-menu-item:active{background:var(--menu-item-active)}.sort-menu-item.active{color:var(--button-color)}.artist-grid-view{padding-bottom:24px}.upcoming-release-card{position:relative;cursor:pointer;border-radius:12px;overflow:hidden}@media (min-width: 768px){.upcoming-release-card .upcoming-overlay{opacity:0}.upcoming-release-card:hover .upcoming-overlay{opacity:1}.upcoming-release-card .presave-actions{opacity:0}.upcoming-release-card:hover .presave-actions{opacity:1}}@media (max-width: 767px){.upcoming-release-card .upcoming-overlay,.upcoming-release-card .presave-actions{opacity:1}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes shimmer{0%{transform:translate(-100%) translateY(-100%) rotate(45deg)}to{transform:translate(100%) translateY(100%) rotate(45deg)}}.mv-card{flex-shrink:0;width:200px;cursor:pointer;user-select:none}.mv-card-thumb-wrap{position:relative;width:200px;aspect-ratio:16/9;border-radius:8px;overflow:hidden;background:var(--secondary-bg)}.mv-card-thumb{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.mv-card-play-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.3);color:#fff;font-size:28px;opacity:0;transition:opacity .2s}.mv-card:hover .mv-card-play-icon{opacity:1}@media (max-width: 767px){.mv-card-play-icon{opacity:1}}.mv-card-title{margin-top:6px;font-size:13px;font-weight:500;color:var(--text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vp-overlay{position:fixed;inset:0;z-index:200;background:#000;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(40px);animation:slideUp .3s cubic-bezier(.4,0,.2,1) forwards}.vp-video{width:100%;height:100%;object-fit:contain}.vp-controls-wrapper{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;opacity:0;transition:opacity .25s ease;pointer-events:none;background:linear-gradient(to bottom,rgba(0,0,0,.6) 0%,transparent 25%),linear-gradient(to top,rgba(0,0,0,.7) 0%,transparent 35%)}.vp-controls-wrapper.visible{opacity:1;pointer-events:auto}.vp-header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 0;gap:12px}.vp-header-title{color:#fff;font-size:15px;font-weight:600;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vp-close-btn{background:rgba(255,255,255,.15);backdrop-filter:blur(8px);border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;flex-shrink:0}.vp-quality-popup{display:flex;justify-content:center;gap:8px;padding:10px 16px;position:absolute;bottom:100%;left:16px;right:16px;margin-bottom:8px;background:rgba(0,0,0,.75);backdrop-filter:blur(10px);border-radius:12px}.vp-quality-pill{display:flex;align-items:center;gap:4px;padding:5px 14px;border-radius:20px;border:1.5px solid rgba(255,255,255,.35);background:rgba(255,255,255,.1);color:#fff;font-size:13px;font-weight:500;cursor:pointer;transition:background .18s,border-color .18s}.vp-quality-pill.active{background:var(--button-color);border-color:var(--button-color)}.vp-quality-pill.locked{opacity:.45;cursor:not-allowed}.vp-bottom-controls{padding:0 16px calc(80px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:8px;position:relative}@media (orientation: landscape){.vp-bottom-controls{padding:0 16px calc(8px + env(safe-area-inset-bottom))}.vp-header{padding-top:8px}}.vp-seek-row{display:flex;align-items:center;gap:8px}.vp-time{color:#fffc;font-size:12px;min-width:36px;text-align:center}.vp-seek-bar{flex:1;-webkit-appearance:none;appearance:none;height:6px;border-radius:3px;outline:none;cursor:pointer}.vp-seek-bar::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--button-color);cursor:pointer}.vp-btn-row{display:flex;align-items:center;justify-content:center;gap:24px}.vp-ctrl-btn{background:none;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.9;padding:10px;min-width:44px;min-height:44px}.vp-settings-btn svg{transition:transform .35s cubic-bezier(.34,1.56,.64,1)}.vp-settings-btn.active svg{transform:rotate(60deg)}.vp-play-btn{background:rgba(255,255,255,.2);backdrop-filter:blur(8px);border:none;border-radius:50%;width:60px;height:60px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer}.vp-caching-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;position:absolute;inset:0}.vp-caching-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.2);border-top-color:var(--button-color);border-radius:50%;animation:spin .9s linear infinite}.vp-caching-text{color:#ffffffd9;font-size:15px;text-align:center;margin:0}.vp-retry-btn{margin-top:4px;padding:10px 28px;border-radius:20px;border:none;background:var(--button-color);color:#fff;font-size:14px;font-weight:600;cursor:pointer}.promo-block-placeholder{border:2px dashed rgba(255,255,255,.3);cursor:pointer;display:flex;align-items:center;justify-content:center;min-height:150px;border-radius:8px;background:rgba(255,255,255,.05);transition:all .2s}.promo-block-placeholder:hover{border-color:var(--button-color);background:rgba(0,122,255,.1)}.promo-placeholder-text{color:var(--hint-color);font-size:14px;font-weight:500}.promo-block-empty .playlist-cover{background:var(--secondary-bg);border:2px dashed var(--hint-color);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.promo-block-empty .playlist-cover:hover{border-color:var(--button-color);background:rgba(0,122,255,.1)}.promo-empty-content{position:absolute;top:0;left:0;width:100%;height:100%;color:var(--hint-color);display:flex;align-items:center;justify-content:center}.promo-block-inactive{opacity:.5}.playlist-item.promo-block,.playlist-item.promo-block-empty{max-width:100%;width:100%;overflow:hidden}.promo-block .playlist-cover,.promo-block-empty .playlist-cover{width:100%;height:0;padding-bottom:100%;max-width:100%;max-height:none;position:relative;overflow:hidden}.promo-block .playlist-cover img,.promo-block-empty .playlist-cover img{position:absolute;top:0;left:0;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:cover;object-position:center}.playlist-cover img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;display:block}.promo-admin-overlay{position:absolute;inset:0;background:rgba(0,0,0,.7);display:flex;gap:8px;align-items:center;justify-content:center;opacity:0;transition:opacity .2s;border-radius:8px}.playlist-item:hover .promo-admin-overlay{opacity:1}.promo-edit-btn,.promo-toggle-btn,.promo-delete-btn{background:rgba(255,255,255,.2);border:none;border-radius:8px;padding:8px;font-size:18px;cursor:pointer;transition:all .2s;backdrop-filter:blur(10px)}.promo-edit-btn:hover{background:var(--button-color);transform:scale(1.1)}.promo-toggle-btn:hover,.promo-delete-btn:hover{background:rgba(255,255,255,.3);transform:scale(1.1)}.promo-editor-overlay{position:fixed;inset:0;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;backdrop-filter:blur(10px);animation:fadeIn .2s}.promo-editor-modal{background:var(--secondary-bg);border-radius:16px;max-width:500px;width:100%;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;animation:slideUp .3s cubic-bezier(.2,.8,.2,1);box-shadow:0 20px 60px #0009}.promo-editor-content{flex:1;overflow-y:auto;padding:20px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:600;color:var(--text-color)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;background:var(--bg-color);border:1px solid rgba(255,255,255,.1);border-radius:10px;color:var(--text-color);font-size:15px;font-family:inherit;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--button-color)}.form-group textarea{resize:vertical;min-height:80px}.checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;user-select:none}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.checkbox-label span{font-size:15px;font-weight:400}.promo-editor-actions{display:flex;gap:12px;padding:20px;border-top:1px solid rgba(255,255,255,.1)}.btn-primary,.btn-secondary{width:100%;padding:14px;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary{background:var(--button-color);color:var(--button-text)}.btn-primary:hover{opacity:.9;transform:scale(1.02)}.btn-primary:active{transform:scale(.98)}.btn-secondary{background:var(--bg-color);color:var(--text-color);border:1px solid rgba(255,255,255,.1)}.btn-secondary:hover{background:var(--secondary-bg)}.btn-secondary:active{transform:scale(.98)}.promo-editor-actions .btn-primary,.promo-editor-actions .btn-secondary{flex:1}.admin-item{background:linear-gradient(135deg,rgba(255,59,48,.1),rgba(255,149,0,.1))!important;border:1px solid rgba(255,149,0,.3)!important}.admin-modal{max-height:85vh;overflow-y:auto}.admin-panel-section{padding:16px}.admin-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.admin-section-header h3{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:600;color:var(--text-color);margin:0}.refresh-btn{background:rgba(255,255,255,.1);border:none;border-radius:8px;padding:8px;cursor:pointer;color:var(--hint-color);transition:all .2s}.refresh-btn:hover{background:rgba(255,255,255,.15);color:var(--text-color)}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.admin-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:30px;color:var(--hint-color)}.spinning{animation:spin 1s linear infinite}.search-stats{background:var(--secondary-bg);border-radius:12px;padding:16px;margin-bottom:16px}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.stat-item{background:rgba(255,255,255,.05);border-radius:10px;padding:14px;text-align:center}.stat-value{display:block;font-size:28px;font-weight:700;color:var(--accent-color);margin-bottom:4px}.stat-label{font-size:12px;color:var(--hint-color)}.queries-section{margin-top:16px}.queries-section.recent{margin-top:20px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}.queries-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.queries-header h4,.queries-section h4{font-size:14px;font-weight:600;color:var(--text-color);margin:0}.show-all-btn{background:none;border:none;color:var(--accent-color);font-size:13px;font-weight:500;cursor:pointer;padding:4px 8px}.show-all-btn:hover{text-decoration:underline}.queries-list{display:flex;flex-direction:column;gap:6px;max-height:300px;overflow-y:auto}.query-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:rgba(255,255,255,.03);border-radius:8px;transition:background .2s}.query-item:hover{background:rgba(255,255,255,.06)}.query-info{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.query-text{font-size:14px;color:var(--text-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.query-count{font-size:12px;font-weight:500;color:var(--hint-color);background:rgba(255,255,255,.08);padding:3px 8px;border-radius:10px;white-space:nowrap}.query-time{font-size:11px;color:var(--hint-color);white-space:nowrap}.query-delete-btn{background:rgba(255,59,48,.1);border:none;border-radius:6px;padding:6px;cursor:pointer;color:#ff3b30;transition:all .2s;margin-left:8px;display:flex;align-items:center;justify-content:center}.query-delete-btn:hover{background:rgba(255,59,48,.2)}.query-delete-btn:disabled{opacity:.5;cursor:not-allowed}.no-stats{text-align:center;color:var(--hint-color);padding:20px}.admin-actions{display:flex;flex-direction:column;gap:10px;margin-top:16px}.admin-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 20px;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.admin-btn.danger{background:rgba(255,59,48,.15);color:#ff3b30}.admin-btn.danger:hover{background:rgba(255,59,48,.25)}.admin-btn.danger.confirm{background:#ff3b30;color:#fff}.admin-btn.cancel{background:var(--secondary-bg);color:var(--text-color)}.admin-btn:disabled{opacity:.5;cursor:not-allowed}.admin-content,.admin-panel-section{padding-bottom:180px}.lyrics-overlay{position:fixed;inset:0;display:flex;flex-direction:column;padding:calc(80px + env(safe-area-inset-top)) 32px 20px 32px;z-index:60;opacity:0;pointer-events:none;transition:opacity .6s cubic-bezier(.4,0,.2,1)}.lyrics-overlay.open{opacity:1;pointer-events:auto}.lyrics-header{display:flex;align-items:center;gap:12px;margin-bottom:20px;transform:translateY(-20px);opacity:0;transition:all .8s cubic-bezier(.2,.8,.2,1);position:relative;z-index:100}.lyrics-overlay.open .lyrics-header{transform:translateY(-15px);opacity:1}.lyrics-cover-minimized{width:80px;height:80px;border-radius:12px;box-shadow:0 10px 20px #0000004d;margin-top:0;margin-left:0;flex-shrink:0}.lyrics-artist-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.lyrics-track-name{font-size:15px;font-weight:600;color:#fff;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lyrics-artist-name{font-size:13px;font-weight:500;color:#fff9;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lyrics-header-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.lyrics-action-btn{background:none;border:none;color:#fffc;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;transition:all .2s}.lyrics-action-btn:active{transform:scale(.9)}.lyrics-action-btn.liked{color:#ff6b6b}.lyrics-action-btn.liked svg{filter:drop-shadow(0 0 8px rgba(255,107,107,.5))}.lyrics-menu-container{position:relative;z-index:100}.lyrics-menu-backdrop{position:fixed;inset:0;z-index:350;background:transparent;cursor:default}.lyrics-menu{position:absolute;top:100%;right:0;margin-top:8px;background:var(--menu-bg);backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);border:1px solid var(--separator-color);border-radius:14px;padding:6px;box-shadow:0 10px 40px #0000004d;min-width:200px;z-index:400;animation:popIn .2s cubic-bezier(.175,.885,.32,1.275);animation-fill-mode:both;transform-origin:top right}.lyrics-menu:after{content:"";position:absolute;top:-11px;right:10px;border-width:6px;border-style:solid;border-color:transparent transparent var(--menu-bg) transparent}.lyrics-container{flex:1;margin-top:0;padding-top:30px;padding-bottom:70vh;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;align-items:flex-start;text-align:left;mask-image:linear-gradient(to bottom,transparent 0%,black 30px,black 280px,transparent 365px);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 30px,black 280px,transparent 365px);scrollbar-width:none;scroll-behavior:smooth}.lyrics-container::-webkit-scrollbar{display:none}.lyrics-overlay.ui-hidden .lyrics-container{mask-image:linear-gradient(to bottom,transparent 0%,black 30px,black 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 30px,black 100%)}.lyric-line{font-size:34px;font-weight:800;line-height:1.3;margin-bottom:40px;color:#ffffff40;transition:color .5s cubic-bezier(.4,0,.2,1),filter .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1);filter:blur(1px);cursor:pointer;text-align:left;width:100%;will-change:color,filter,transform}.lyric-line.active{color:#fff;filter:blur(0);transform:translateY(-15px)}.lyric-line.no-timings{color:#ffffffd9;filter:blur(0);cursor:default;font-size:24px;margin-bottom:24px;transform:none}.lyrics-overlay.ui-hidden .lyric-line{cursor:default}.full-player-content-main{flex:0 1 auto;display:flex;flex-direction:column;gap:0;transition:all .6s cubic-bezier(.4,0,.2,1);transform:translateZ(0);-webkit-transform:translate3d(0,0,0);backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:visible}.full-player-content-main.lyrics-open{opacity:0;transform:scale(.8) translate3d(0,50px,0);-webkit-transform:scale(.8) translate3d(0,50px,0);pointer-events:none}@keyframes highlight-pulse{0%,to{border-color:#007aff80;background-color:#007aff1a}50%{border-color:#007affcc;background-color:#007aff33}}body[data-theme=light] .modal-overlay,body[data-theme=light].modal-overlay{background:rgba(0,0,0,.3)!important}body[data-theme=light] .modal-content,body[data-theme=light].modal-content{background:rgba(255,255,255,.95)!important;backdrop-filter:blur(40px)!important;-webkit-backdrop-filter:blur(40px)!important;border:1px solid rgba(0,0,0,.1)!important;color:#000!important}body[data-theme=light] .modal-content.queue-modal{background:rgba(255,255,255,.85)!important}body[data-theme=light] .album-track-menu-dropdown,body[data-theme=light] .player-menu,body[data-theme=light] .queue-track-menu,body[data-theme=light] .artist-popup-menu,body[data-theme=light] .sort-menu,body[data-theme=light] .lyrics-menu{background:rgba(255,255,255,.98)!important;backdrop-filter:blur(40px)!important;-webkit-backdrop-filter:blur(40px)!important;border:1px solid rgba(0,0,0,.15)!important;box-shadow:0 10px 40px #0003!important}body[data-theme=light] .album-track-menu-dropdown:after{border-color:transparent transparent transparent rgba(255,255,255,.98)!important}body[data-theme=light] .player-menu:after{border-color:rgba(255,255,255,.98) transparent transparent transparent!important}body[data-theme=light] .queue-track-menu:after{border-color:transparent transparent transparent rgba(255,255,255,.98)!important}body[data-theme=light] .artist-popup-menu:after{border-color:rgba(255,255,255,.98) transparent transparent transparent!important}body[data-theme=light] .lyrics-menu:after{border-color:transparent transparent rgba(255,255,255,.98) transparent!important}body[data-theme=light] .album-track-menu-item,body[data-theme=light] .player-menu-item,body[data-theme=light] .queue-track-menu-item,body[data-theme=light] .artist-popup-item,body[data-theme=light] .sort-menu-item{color:#000!important}body[data-theme=light] .album-track-menu-item:active,body[data-theme=light] .player-menu-item:active,body[data-theme=light] .queue-track-menu-item:active,body[data-theme=light] .artist-popup-item:active,body[data-theme=light] .sort-menu-item:active{background:rgba(0,0,0,.08)!important}body[data-theme=light] .search-input::placeholder{color:#3c3c4399!important}body[data-theme=light] .album-track-menu,body[data-theme=light] .queue-item-menu,body[data-theme=light] .tab-item,body[data-theme=light] .library-tab{color:#0009!important}body[data-theme=light] .tab-item.active,body[data-theme=light] .library-tab.active{color:var(--button-color)!important}body[data-theme=light] .search-mic-btn{color:#0009!important}body[data-theme=light] .album-view-artist,body[data-theme=light] .album-view-meta,body[data-theme=light] .album-track-artist,body[data-theme=light] .track-artist,body[data-theme=light] .album-track-count,body[data-theme=light] .album-copyright,body[data-theme=light] .mini-player-artist,body[data-theme=light] .queue-item-artist,body[data-theme=light] .release-artist,body[data-theme=light] .track-card-album,body[data-theme=light] .album-year-small,body[data-theme=light] .library-playlist-count,body[data-theme=light] .subscription-status,body[data-theme=light] .subscription-expiry,body[data-theme=light] .stat-label,body[data-theme=light] .query-count,body[data-theme=light] .query-time,body[data-theme=light] .library-empty p,body[data-theme=light] .popular-searches-empty,body[data-theme=light] .no-stats{color:#00000080!important}body[data-theme=light] .library-empty-icon{background:rgba(0,0,0,.05)!important;color:#0006!important}body[data-theme=light] .profile-section-title,body[data-theme=light] .sort-menu-title,body[data-theme=light] .profile-footer{color:#00000080!important}body[data-theme=light] .toggle-switch{background:rgba(0,0,0,.15)!important}body[data-theme=light] .toggle-switch.active{background:var(--button-color)!important}body[data-theme=light] .artist-popup-icon{color:#0009!important}body[data-theme=light] .album-shuffle-btn{background:rgba(0,0,0,.08)!important;border:1px solid rgba(0,0,0,.15)!important;color:#000c!important}body[data-theme=light] .album-shuffle-btn:active{background:rgba(0,0,0,.15)!important}body[data-theme=light] .library-tabs{border-bottom:1px solid rgba(0,0,0,.1)!important}body[data-theme=light] .btn-secondary{background:rgba(0,0,0,.05)!important;color:#000c!important;border:1px solid rgba(0,0,0,.1)!important}body[data-theme=light] .btn-secondary:hover{background:rgba(0,0,0,.08)!important}body[data-theme=light] .search-tab{background:rgba(0,0,0,.08)!important;color:#0009!important}body[data-theme=light] .search-tab.active{background:var(--button-color)!important;color:#fff!important}body[data-theme=light] .modal-header h2,body[data-theme=light] .modal-close-btn,body[data-theme=light] .profile-label,body[data-theme=light] .artist-popup-action,body[data-theme=light] .artist-popup-target{color:#000!important}body[data-theme=light] .popup-divider{background:rgba(0,0,0,.1)!important}body[data-theme=light] .promo-block-placeholder{border:2px dashed rgba(0,0,0,.2)!important;background:rgba(0,0,0,.03)!important}body[data-theme=light] .promo-block-placeholder:hover{border-color:var(--button-color)!important;background:rgba(0,122,255,.08)!important}body[data-theme=light] .promo-placeholder-text{color:#0009!important}body[data-theme=light] .promo-admin-overlay{background:rgba(255,255,255,.85)!important}body[data-theme=light] .promo-edit-btn,body[data-theme=light] .promo-toggle-btn,body[data-theme=light] .promo-delete-btn{background:rgba(0,0,0,.1)!important;color:#000c!important}body[data-theme=light] .promo-edit-btn:hover{background:var(--button-color)!important;color:#fff!important}body[data-theme=light] .promo-toggle-btn:hover,body[data-theme=light] .promo-delete-btn:hover{background:rgba(0,0,0,.2)!important}body[data-theme=light] .tab-btn{background:rgba(0,0,0,.08)!important;color:#000c!important}body[data-theme=light] .tab-btn.active{background:var(--button-color)!important;color:#fff!important}body[data-theme=light] .subscription-type-btn{background:rgba(0,0,0,.03)!important;color:#000000e6!important}body[data-theme=light] .subscription-type-btn.active{border-color:var(--button-color)!important;background:rgba(0,122,255,.1)!important}body[data-theme=light] .subscription-type-subtitle{color:#0009!important}body[data-theme=light] .region-selector-btn{background:rgba(0,0,0,.08)!important;color:#000c!important}body[data-theme=light] .region-selector-btn.active{background:var(--button-color)!important;color:#fff!important}body[data-theme=light] .promo-input{border:1px solid rgba(0,0,0,.15)!important;background:rgba(0,0,0,.03)!important;color:#000000e6!important}body[data-theme=light] .promo-check-btn{background:rgba(0,0,0,.08)!important;color:#000c!important}body[data-theme=light] .promo-check-btn.valid{background:#4caf50!important;color:#fff!important}body[data-theme=light] .subscription-price-card{background:rgba(0,0,0,.03)!important;color:#000000e6!important}body[data-theme=light] .subscription-price-card:hover{background:rgba(0,0,0,.06)!important}body[data-theme=light] .subscription-card-container,body[data-theme=light] .region-card-container{background:rgba(0,0,0,.03)!important}body[data-theme=light] .region-toggle-btn{border-color:#00000026!important;color:#000c!important}body[data-theme=light] .region-toggle-btn.active{border-color:var(--button-color)!important;background:rgba(0,122,255,.1)!important;color:var(--button-color)!important}body[data-theme=light] .region-selection-btn{background:rgba(0,0,0,.03)!important;color:#000000e6!important}body[data-theme=light] .region-selection-btn.active{border-color:var(--button-color)!important;background:rgba(0,122,255,.1)!important}body[data-theme=light] .admin-input,body[data-theme=light] .admin-input-small,body[data-theme=light] .admin-textarea,body[data-theme=light] .admin-select{border:1px solid rgba(0,0,0,.15)!important;color:#000000e6!important}body[data-theme=light] .admin-refresh-btn{background:rgba(0,0,0,.08)!important;color:#000c!important}body[data-theme=light] .admin-card,body[data-theme=light] .admin-card-large{border:1px solid rgba(0,0,0,.1)!important}body[data-theme=light] .admin-search-input{border:1px solid rgba(0,0,0,.15)!important;background:rgba(0,0,0,.05)!important;color:#000000e6!important}body[data-theme=light] .admin-query-details{background:rgba(0,0,0,.05)!important}body[data-theme=light] .profile-item{background:rgba(0,0,0,.03)!important;border:1px solid rgba(0,0,0,.1)!important}body[data-theme=light] .profile-item.admin-item{background:rgba(255,165,0,.08)!important;border:1px solid rgba(255,165,0,.3)!important}body[data-theme=light] .subscription-region-item{background:rgba(0,0,0,.03)!important;border:1px solid rgba(0,0,0,.1)!important}body[data-theme=light] .profile-info{border-top:1px solid rgba(0,0,0,.1)!important}body[data-theme=light] .album-download-btn{background:rgba(0,0,0,.05)!important;border:1px solid rgba(0,0,0,.15)!important}body[data-theme=light] .album-download-btn:active{background:rgba(0,0,0,.1)!important}body[data-theme=light] .mini-player{border-top:1px solid rgba(0,0,0,.1)!important}body[data-theme=light] .mini-player-quality{background:rgba(0,0,0,.1)!important;color:#000c!important}body[data-theme=light] .mini-player-progress{background:rgba(0,0,0,.15)!important}body[data-theme=light] .profile-menu-item{background:rgba(0,0,0,.03)!important;border:1px solid rgba(0,0,0,.1)!important}body[data-theme=light] .profile-menu-item:active{background:rgba(0,0,0,.08)!important}body[data-theme=light] .profile-menu-item.admin-item{background:rgba(255,165,0,.08)!important;border:1px solid rgba(255,165,0,.3)!important}body[data-theme=light] .subscription-card{background:rgba(0,0,0,.03)!important;border:1px solid rgba(0,0,0,.1)!important}body[data-theme=light] .profile-subscriptions-section,body[data-theme=light] .profile-info-section{border-top:1px solid rgba(0,0,0,.1)!important}body[data-theme=light] .profile-page-header,body[data-theme=light] .profile-link-item{border-bottom:1px solid rgba(0,0,0,.1)!important}body[data-theme=light] .subscription-card-details{color:#00000080!important}@supports (-webkit-overflow-scrolling: touch){.full-player-background{-webkit-transform:translate3d(0,0,0) scale(1.2);transform:translateZ(0) scale(1.2);-webkit-filter:blur(80px) brightness(1.2) saturate(1.5);filter:blur(80px) brightness(1.2) saturate(1.5);image-rendering:optimizeSpeed;image-rendering:-webkit-optimize-contrast}.full-player{-webkit-overflow-scrolling:touch;-webkit-backdrop-filter:none;backdrop-filter:none}.full-player-cover.playing{transform:scale(1.05) translateZ(0)}.full-player-cover.paused{transform:scale(.95) translateZ(0)}.full-player-content-main.lyrics-open{transform:scale(.8) translate3d(0,50px,0)}}@media (max-width: 768px){.full-player{backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);background:rgba(0,0,0,.3)}.full-player-background{filter:blur(80px) brightness(1.2) saturate(1.5);-webkit-filter:blur(80px) brightness(1.2) saturate(1.5);opacity:1;pointer-events:none;content-visibility:auto;will-change:filter,transform}.full-player-cover{will-change:transform}.full-player-info,.player-controls,.player-buttons{will-change:auto;contain:layout style}body{-webkit-tap-highlight-color:transparent}}@media (max-width: 375px) or (max-height: 670px){.page-title{font-size:28px}.full-player{padding:10px;backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);background:rgba(0,0,0,.3)}.full-player-background{filter:blur(80px) brightness(1.2) saturate(1.5);-webkit-filter:blur(80px) brightness(1.2) saturate(1.5);opacity:1;pointer-events:none;will-change:filter,transform}.full-player-cover,.player-artwork-radiosity-img{max-width:260px}.player-track-title h2{font-size:19px}.player-buttons{margin:15px 0;gap:24px}.player-main-btn{width:64px;height:64px}.player-main-btn svg{width:32px;height:32px}.player-footer-actions{gap:32px;margin-top:20px}.player-footer-btn svg{width:24px!important;height:24px!important}.player-footer-btn{padding:10px!important}}@media (max-height: 550px){.player-artwork-container{display:none}.full-player-content-main{justify-content:center}}@media (max-width: 400px){.featured-cards{grid-template-columns:1fr}}body.screen-xs .full-player-header{margin-bottom:8px}body.screen-small .full-player-header{margin-bottom:12px}body.screen-xs .player-close-btn{padding:4px}body.screen-xs .player-close-btn svg{width:20px;height:20px}body.screen-small .player-close-btn{padding:6px}body.screen-small .player-close-btn svg{width:22px;height:22px}body.screen-xs .player-header-title{font-size:12px;padding:0 8px}body.screen-small .player-header-title{font-size:12px;padding:0 10px}body.screen-xs .player-artwork-container{padding:2px 20px 5px;min-height:100px}body.screen-small .player-artwork-container{padding:4px 20px 6px;min-height:120px}body.screen-xs .full-player-cover{width:260px;height:260px}body.screen-xs .player-artwork-radiosity-img{max-width:260px}body.screen-small .full-player-cover{width:260px;height:260px}body.screen-small .player-artwork-radiosity-img{max-width:260px}body.screen-medium .full-player-cover{width:300px;height:300px}body.screen-medium .player-artwork-radiosity-img{max-width:300px}body.screen-large .full-player-cover{width:335px;height:335px}body.screen-large .player-artwork-radiosity-img{max-width:335px}body.screen-xl .full-player-cover{width:375px;height:375px}body.screen-xl .player-artwork-radiosity-img{max-width:375px}body.screen-xs .player-track-title h2{font-size:17px}body.screen-xs .player-artist-name{font-size:14px}body.screen-small .player-track-title h2{font-size:19px}body.screen-small .player-artist-name{font-size:15px}body.screen-large .player-track-title h2,body.screen-xl .player-track-title h2{font-size:22px}body.screen-xs .player-main-btn{width:58px;height:58px}body.screen-xs .player-main-btn svg{width:32px;height:32px}body.screen-xs .player-skip-btn svg{width:34px;height:34px}body.screen-xs .player-footer-btn svg{width:24px;height:24px}body.screen-xs .player-footer-btn{padding:10px}body.screen-small .player-main-btn{width:64px;height:64px}body.screen-small .player-main-btn svg{width:34px;height:34px}body.screen-small .player-skip-btn svg{width:36px;height:36px}body.screen-small .player-footer-btn svg{width:23px;height:23px}body.screen-small .player-footer-btn{padding:10px}body.screen-large .player-main-btn,body.screen-xl .player-main-btn{width:70px;height:70px}body.screen-xs .full-player{padding:8px}body.screen-small .full-player{padding:10px}body.screen-large .full-player,body.screen-xl .full-player{padding:20px}body.screen-xs .full-player-info{width:273px;margin:18px auto 8px}body.screen-xs .player-controls{max-width:273px;margin:-20px auto 5px}body.screen-xs .player-buttons{max-width:273px;margin:26px auto 20px}body.screen-xs .player-footer-actions{max-width:273px}body.screen-small .full-player-info{width:273px;margin:18px auto 8px}body.screen-small .player-controls{max-width:273px;margin:-20px auto 5px}body.screen-small .player-buttons{max-width:273px;margin:26px auto 20px}body.screen-small .player-footer-actions{max-width:273px}body.screen-medium .full-player-info{width:315px;margin:20px auto 10px}body.screen-medium .player-controls,body.screen-medium .player-buttons,body.screen-medium .player-footer-actions{max-width:315px}body.screen-large .full-player-info{width:352px}body.screen-large .player-controls,body.screen-large .player-buttons,body.screen-large .player-footer-actions{max-width:352px}body.screen-xl .full-player-info{width:394px}body.screen-xl .player-controls,body.screen-xl .player-buttons,body.screen-xl .player-footer-actions{max-width:394px}body.screen-xs .player-like-btn svg,body.screen-xs .player-menu-btn svg{width:22px;height:22px}body.screen-xs .player-like-btn,body.screen-xs .player-menu-btn{padding:6px}body.screen-small .player-like-btn svg,body.screen-small .player-menu-btn svg{width:23px;height:23px}body.screen-small .player-like-btn,body.screen-small .player-menu-btn{padding:6px}body.screen-xs .progress-bar{height:8px}body.screen-xs .progress-bar.dragging{height:12px}body.screen-small .progress-bar{height:9px}body.screen-small .progress-bar.dragging{height:13px}body.screen-xs .progress-times{font-size:11px;margin-top:6px}body.screen-small .progress-times{font-size:11px;margin-top:7px}body.screen-xs .player-footer-actions{gap:32px;margin-top:20px}body.screen-small .player-footer-actions,body.screen-medium .player-footer-actions{gap:32px;margin-top:24px}body.screen-medium .player-footer-btn svg{width:24px;height:24px}body.screen-medium .player-footer-btn{padding:10px}body.screen-large .player-footer-btn svg,body.screen-xl .player-footer-btn svg{width:24px;height:24px}body.screen-large .player-footer-btn,body.screen-xl .player-footer-btn{padding:10px}body.screen-xs .lyrics-container{mask-image:linear-gradient(to bottom,transparent 0%,black 40px,black 215px,transparent 275px);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 40px,black 215px,transparent 275px)}body.screen-small .lyrics-container{mask-image:linear-gradient(to bottom,transparent 0%,black 40px,black 245px,transparent 305px);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 40px,black 245px,transparent 305px)}body.screen-medium .lyrics-container{mask-image:linear-gradient(to bottom,transparent 0%,black 40px,black 275px,transparent 335px);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 40px,black 275px,transparent 335px)}body.screen-large .lyrics-container{mask-image:linear-gradient(to bottom,transparent 0%,black 40px,black 315px,transparent 385px);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 40px,black 315px,transparent 385px)}body.screen-xl .lyrics-container{mask-image:linear-gradient(to bottom,transparent 0%,black 40px,black 335px,transparent 405px);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 40px,black 335px,transparent 405px)}@media (min-width: 480px){.full-player-cover{max-width:380px;width:380px;height:380px}.player-artwork-radiosity-img{max-width:380px}.full-player-info{max-width:399px;width:399px}.player-controls,.player-buttons,.player-footer-actions{max-width:399px}.player-footer-btn svg{width:23px;height:23px}.player-footer-btn{padding:10px}.player-footer-actions{gap:36px}}@media (min-width: 600px){.full-player-cover{max-width:420px;width:420px;height:420px}.player-artwork-radiosity-img{max-width:420px}.full-player-info{max-width:441px;width:441px}.player-controls,.player-buttons,.player-footer-actions{max-width:441px}.player-footer-btn svg{width:26px;height:26px}.player-footer-btn{padding:10px}.player-main-btn{width:76px;height:76px}.player-main-btn svg{width:38px;height:38px}.player-skip-btn svg{width:42px;height:42px}.player-track-title h2{font-size:24px}.player-artist-name{font-size:17px}}@media (max-height: 500px) and (orientation: landscape){.full-player{padding:8px}.full-player-cover{max-width:180px;width:180px;height:180px}.player-artwork-container{min-height:80px;padding:2px 10px}.full-player-info{margin:8px auto 4px}.player-buttons{margin:8px auto 10px;gap:18px}.player-main-btn{width:52px;height:52px}.player-main-btn svg{width:26px;height:26px}.player-skip-btn svg{width:32px;height:32px}.player-footer-actions{margin-top:8px;gap:32px}.player-footer-btn svg{width:24px;height:24px}.player-footer-btn{padding:10px}}.region-switcher{position:relative}.region-switcher-btn{background:var(--secondary-bg);border:none;border-radius:20px;padding:8px 12px;display:flex;align-items:center;gap:6px;cursor:pointer;transition:background .2s;color:var(--text-color)}.region-switcher-btn:active{background:rgba(255,255,255,.15)}.region-flag{font-size:20px;line-height:1}.region-switcher-btn svg{color:var(--hint-color);transition:transform .2s}.region-switcher-btn svg.rotated{transform:rotate(180deg)}.region-dropdown{position:absolute;top:100%;right:0;margin-top:8px;background:var(--menu-bg);backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);border:1px solid var(--separator-color);border-radius:12px;padding:6px;min-width:180px;box-shadow:0 10px 40px #0000004d;z-index:100;animation:fadeInDown .15s ease-out}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.region-dropdown-item{background:none;border:none;width:100%;padding:12px 14px;display:flex;align-items:center;gap:12px;cursor:pointer;border-radius:8px;transition:background .15s;color:var(--text-color);font-size:15px}.region-dropdown-item:active{background:var(--secondary-bg)}.region-dropdown-item.active{background:rgba(0,122,255,.15)}.region-dropdown-item .region-name{flex:1;text-align:left}.region-dropdown-item .region-check{color:var(--button-color);font-weight:600}.profile-page{padding-bottom:160px}.profile-page-header{display:flex;flex-direction:column;align-items:center;padding:32px 0;border-bottom:1px solid var(--separator-color);margin-bottom:24px}.profile-avatar-large{width:96px;height:96px;border-radius:50%;background:linear-gradient(135deg,var(--button-color),#5856d6);display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:16px;overflow:hidden}.profile-avatar-img{width:100%;height:100%;object-fit:cover}.profile-name{font-size:24px;font-weight:700;margin:0 0 8px;text-align:center}.profile-badge{background:linear-gradient(135deg,#6b5ce7,#8b5cf6,#a855f7);color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.profile-menu-section{margin-bottom:24px}.profile-menu-item{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:16px;margin-bottom:8px;display:flex;align-items:center;cursor:pointer;transition:background .2s}.profile-menu-item:active{background:rgba(255,255,255,.1)}.profile-menu-item.admin-item{background:rgba(255,165,0,.15);border:1px solid rgba(255,165,0,.4)}.profile-menu-icon{margin-right:12px;color:var(--button-color)}.profile-menu-label{flex:1;font-size:15px;color:var(--button-color)}.profile-menu-chevron{color:var(--hint-color);opacity:.6}.profile-subscriptions-section{margin-bottom:24px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}.profile-subscriptions-section h3{font-size:17px;font-weight:600;margin:0 0 16px}.subscription-card{background:rgba(255,255,255,.05);border-radius:12px;padding:16px;margin-bottom:8px}.subscription-card-header{display:flex;justify-content:space-between;align-items:center}.subscription-region-name{font-weight:500}.subscription-card-details{font-size:12px;color:var(--hint-color);margin-top:4px}.no-subscriptions{color:var(--hint-color);font-size:14px;margin:0}.profile-info-section{padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}.profile-info-section h3{font-size:17px;font-weight:600;margin:0 0 16px}.profile-link-item{padding:14px 0;cursor:pointer;border-bottom:1px solid var(--separator-color);display:flex;align-items:center;justify-content:space-between;color:var(--text-color);font-size:15px}.profile-link-item:last-child{border-bottom:none}.profile-link-item svg{color:var(--hint-color);opacity:.6}.profile-loading{padding:40px;text-align:center;color:var(--hint-color)}.settings-panel{padding:0 16px 120px}.settings-header{display:flex;align-items:center;gap:8px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--separator-color)}.settings-back-btn{background:none;border:none;padding:0;cursor:pointer;color:var(--text-color);display:flex;align-items:center;justify-content:center}.settings-title{font-size:20px;font-weight:700;margin:0}.settings-section{margin-bottom:32px}.settings-section-title{font-size:13px;font-weight:500;color:var(--hint-color);margin:0 0 16px;text-transform:uppercase;letter-spacing:.5px}.quality-options{display:flex;gap:12px}.quality-option{flex:1;background:var(--secondary-bg);border:2px solid transparent;border-radius:12px;padding:14px 8px;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:2px;position:relative}.quality-option:active{transform:scale(.98)}.quality-option.active{border-color:var(--button-color);background:rgba(33,150,243,.1)}.quality-option.disabled{opacity:.5;cursor:not-allowed}.quality-value{font-size:22px;font-weight:700;color:var(--text-color)}.quality-unit{font-size:14px;color:var(--hint-color)}.premium-badge{position:absolute;top:8px;right:8px;background:linear-gradient(135deg,#6b5ce7,#8b5cf6);color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;text-transform:uppercase}.soon-badge{position:absolute;top:8px;right:8px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;text-transform:uppercase}.settings-hint{font-size:13px;color:var(--hint-color);margin:12px 0 0;text-align:center}.search-mode-options{display:flex;gap:12px}.search-mode-option{flex:1;background:var(--secondary-bg);border:2px solid transparent;border-radius:12px;padding:14px 12px;cursor:pointer;transition:all .2s;text-align:center}.search-mode-option:active{transform:scale(.98)}.search-mode-option.active{border-color:var(--button-color);background:rgba(33,150,243,.1)}.search-mode-option:disabled{opacity:.6;cursor:not-allowed}.search-mode-title{display:block;font-size:15px;font-weight:600;color:var(--text-color);margin-bottom:2px}.search-mode-desc{display:block;font-size:12px;color:var(--hint-color)}.referral-panel{padding:0 16px 120px}.referral-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--hint-color)}.referral-error svg{margin-bottom:16px;opacity:.5}.referral-retry-btn{margin-top:16px;background:var(--button-color);border:none;border-radius:8px;padding:10px 24px;color:#fff;font-weight:500;cursor:pointer}.referral-link-container{background:var(--secondary-bg);border-radius:12px;padding:16px;margin-bottom:20px}.referral-link-label{font-size:13px;color:var(--hint-color);margin-bottom:8px}.referral-link-row{display:flex;gap:8px}.referral-link-input{flex:1;background:rgba(255,255,255,.05);border:1px solid var(--separator-color);border-radius:8px;padding:10px 12px;color:var(--text-color);font-size:14px;overflow:hidden;text-overflow:ellipsis}.referral-copy-btn{background:var(--button-color);border:none;border-radius:8px;padding:10px 16px;color:#fff;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.referral-copy-btn:active{background:var(--button-pressed-color, #1976d2)}.referral-level-card{background:linear-gradient(135deg,rgba(107,92,231,.2),rgba(139,92,246,.2));border:1px solid rgba(139,92,246,.3);border-radius:16px;padding:20px;margin-bottom:20px;text-align:center}.referral-level-number{font-size:48px;font-weight:800;color:#a855f7}.referral-level-label{font-size:14px;color:var(--hint-color)}.referral-bonus-badge{display:inline-block;background:linear-gradient(135deg,#6b5ce7,#8b5cf6);color:#fff;padding:6px 16px;border-radius:20px;font-weight:600;margin-top:12px;font-size:14px}.referral-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.referral-stat-card{background:var(--secondary-bg);border-radius:12px;padding:16px;text-align:center}.referral-stat-value{font-size:24px;font-weight:700}.referral-stat-value.referral-stat-active{color:#22c55e}.referral-stat-label{font-size:12px;color:var(--hint-color);margin-top:4px}.referral-progress{background:var(--secondary-bg);border-radius:12px;padding:16px;margin-bottom:20px}.referral-progress-bar{height:8px;background:rgba(255,255,255,.1);border-radius:4px;overflow:hidden;margin-bottom:8px}.referral-progress-fill{height:100%;background:linear-gradient(90deg,#6b5ce7,#a855f7);border-radius:4px;transition:width .3s}.referral-progress-text{font-size:13px;color:var(--hint-color);text-align:center}.referral-progress-text.referral-max-level{color:#a855f7;font-weight:600}.referral-balance{background:var(--secondary-bg);border-radius:12px;padding:20px;margin-bottom:20px;text-align:center}.referral-balance-label{font-size:13px;color:var(--hint-color);margin-bottom:4px}.referral-balance-value{font-size:32px;font-weight:700}.referral-balance-currency{font-size:18px;color:var(--hint-color);margin-left:4px}.referral-withdraw-btn{width:100%;background:var(--button-color);border:none;border-radius:12px;padding:16px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:opacity .2s}.referral-withdraw-btn:active{opacity:.8}.referral-withdraw-btn:disabled{opacity:.5;cursor:not-allowed}.referral-withdraw-hint{font-size:13px;color:var(--hint-color);text-align:center;margin-top:12px}.withdraw-type-options{display:flex;flex-direction:column;gap:12px;margin-top:20px}.withdraw-type-btn{background:var(--secondary-bg);border:2px solid transparent;border-radius:12px;padding:16px;cursor:pointer;display:flex;align-items:center;gap:16px;text-align:left;color:var(--text-color);transition:border-color .2s}.withdraw-type-btn:active{border-color:var(--button-color)}.withdraw-type-btn svg{color:var(--button-color)}.withdraw-type-info{display:flex;flex-direction:column;gap:2px}.withdraw-type-title{font-weight:600;font-size:15px}.withdraw-type-hint{font-size:13px;color:var(--hint-color)}.withdraw-form{margin-top:20px}.withdraw-balance-info{background:var(--secondary-bg);border-radius:12px;padding:14px 16px;margin-bottom:16px;text-align:center;font-size:15px;color:var(--hint-color)}.withdraw-balance-info strong{color:var(--text-color)}.withdraw-input{width:100%;background:var(--secondary-bg);border:1px solid var(--separator-color);border-radius:12px;padding:14px 16px;color:var(--text-color);font-size:16px;margin-bottom:12px;box-sizing:border-box}.withdraw-input:focus{border-color:var(--button-color);outline:none}.withdraw-input::placeholder{color:var(--hint-color)}.withdraw-hint{font-size:13px;color:var(--hint-color);margin-bottom:16px}.withdraw-error-msg{background:rgba(239,68,68,.15);border:1px solid rgba(239,68,68,.3);border-radius:8px;padding:12px;color:#ef4444;font-size:14px;margin-bottom:16px;text-align:center}.withdraw-confirm{margin-top:20px}.withdraw-confirm-card{background:var(--secondary-bg);border-radius:12px;padding:16px;margin-bottom:20px}.withdraw-confirm-row{display:flex;justify-content:space-between;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--separator-color)}.withdraw-confirm-row:last-child{border-bottom:none}.withdraw-confirm-row span{color:var(--hint-color);font-size:14px}.withdraw-confirm-row strong{font-size:14px;text-align:right;max-width:60%;word-break:break-all}.withdraw-wallet-addr{font-family:monospace;font-size:12px!important}.experimental-panel{padding:0 16px 120px}.log-recording-card{background:var(--secondary-bg);border-radius:12px;padding:20px;margin-bottom:16px}.log-recording-card.active{background:rgba(34,197,94,.15);border:1px solid rgba(34,197,94,.3)}.log-status{display:flex;align-items:center;gap:8px;margin-bottom:12px}.log-status-dot{width:8px;height:8px;border-radius:50%;background:var(--hint-color)}.log-status-dot.recording{background:#22c55e;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.log-action-btn{width:100%;padding:14px;border-radius:12px;border:none;font-size:15px;font-weight:600;cursor:pointer;transition:opacity .2s}.log-action-btn.start{background:var(--button-color);color:#fff}.log-action-btn.stop{background:#ef4444;color:#fff}.log-action-btn:disabled{opacity:.5;cursor:not-allowed}.settings-menu-item{background:var(--secondary-bg);border-radius:12px;padding:16px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:background .2s}.settings-menu-item:active{background:rgba(255,255,255,.1)}.settings-menu-item span{color:var(--text-color);font-size:15px}.settings-menu-item svg{color:var(--hint-color);opacity:.6}.spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.1);border-top-color:var(--button-color, #2196F3);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.voting-block{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%);border-radius:16px;padding:16px;margin-bottom:20px;border:1px solid rgba(255,255,255,.08)}.voting-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.voting-title{font-size:17px;font-weight:700;color:#fff}.voting-days-badge{background:#f5c518;color:#000;font-size:12px;font-weight:700;padding:3px 8px;border-radius:10px}.voting-done-badge{background:rgba(255,255,255,.15);color:#fff9;font-size:12px;font-weight:600;padding:3px 8px;border-radius:10px}.voting-category{margin-bottom:14px}.voting-category:last-child{margin-bottom:0}.voting-category-title{font-size:13px;font-weight:600;color:#fff9;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.voting-empty{font-size:13px;color:#fff6;padding:8px 0}.voting-candidates{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.voting-candidates::-webkit-scrollbar{display:none}.voting-candidate-card{flex:0 0 auto;width:90px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 6px;border-radius:10px;background:rgba(255,255,255,.05);border:1px solid transparent;transition:border-color .2s}.voting-candidate-card.voted{border-color:#f5c518;background:rgba(245,197,24,.12)}.voting-candidate-cover{position:relative;width:70px;height:70px;border-radius:8px;overflow:hidden;flex-shrink:0}.voting-candidate-cover img{width:100%;height:100%;object-fit:cover}.voted-check{position:absolute;bottom:3px;right:3px;background:#f5c518;color:#000;font-size:11px;font-weight:700;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center}.voting-candidate-title{font-size:11px;font-weight:600;color:#fff;text-align:center;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:78px}.voting-candidate-artist{font-size:10px;color:#ffffff80;text-align:center;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:78px}.vote-count{font-size:10px;color:#fff6;text-align:center}.vote-btn{background:#f5c518;color:#000;border:none;border-radius:6px;font-size:10px;font-weight:700;padding:4px 8px;cursor:pointer;width:100%;transition:opacity .15s}.vote-btn:disabled{opacity:.5;cursor:not-allowed}.reviews-page{padding:16px 16px 100px}.reviews-section{margin-bottom:24px}.reviews-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.reviews-section-title{font-size:22px;font-weight:700;margin:0;color:var(--text-color, #fff)}.reviews-all-btn{background:none;border:none;color:var(--button-color, #007aff);font-size:14px;cursor:pointer;padding:0}.reviews-loading,.reviews-empty,.reviews-error,.search-no-results{color:var(--hint-color, #8e8e93);font-size:14px;padding:12px 0;grid-column:1 / -1;text-align:center}.reviews-top-carousel{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.reviews-top-carousel::-webkit-scrollbar{display:none}.reviews-top-carousel{cursor:grab}.reviews-top-carousel.dragging{cursor:grabbing;user-select:none}.top-release-card{flex:0 0 140px;width:140px;cursor:pointer}.top-release-cover{position:relative;width:140px;height:140px;border-radius:8px;overflow:hidden;background:var(--secondary-bg, #1a1a1a)}.top-release-cover img{width:100%;height:100%;object-fit:cover}.cover-placeholder{width:100%;height:100%;background:var(--secondary-bg, #1a1a1a)}.score-badge-large{position:absolute;bottom:6px;left:6px;background:var(--button-color, #007aff);color:#fff;font-size:12px;font-weight:700;border-radius:10px;padding:2px 8px}.score-badge-count{position:absolute;bottom:6px;right:6px;background:rgba(0,0,0,.6);color:#fff;font-size:11px;border-radius:10px;padding:2px 6px}.top-release-info{margin-top:6px}.top-release-title{font-size:13px;font-weight:600;color:var(--text-color, #fff);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-release-artist{font-size:11px;color:var(--hint-color, #8e8e93);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.release-search-box{position:relative;margin-bottom:14px}.release-search-input{width:100%;box-sizing:border-box;background:var(--secondary-bg, #1a1a1a);border:1px solid var(--separator-color, rgba(255, 255, 255, .1));border-radius:10px;padding:10px 14px;color:var(--text-color, #fff);font-size:14px;outline:none}.search-loading-hint{font-size:12px;color:var(--hint-color, #8e8e93);margin-top:4px}.search-results-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--secondary-bg, #1a1a1a);border:1px solid var(--separator-color, rgba(255, 255, 255, .1));border-radius:12px;z-index:100;max-height:260px;overflow-y:auto}.search-result-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--separator-color, rgba(255, 255, 255, .1))}.search-result-item:last-child{border-bottom:none}.search-result-cover{width:40px;height:40px;border-radius:6px;object-fit:cover;flex-shrink:0}.search-result-info{flex:1;min-width:0}.search-result-title{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-color, #fff)}.search-result-artist{font-size:11px;color:var(--hint-color, #8e8e93)}.search-result-add{width:32px;height:32px;min-width:32px;padding:0;border-radius:50%;border:none;background:var(--button-color, #007aff);color:#fff;font-size:18px;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center}.search-result-add.tracked{background:#30d158;cursor:default}.releases-row{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.releases-row::-webkit-scrollbar{display:none}.releases-row .release-card{flex:0 0 140px;width:140px}.releases-preview-grid,.releases-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;align-items:start}.releases-preview-grid>.release-card,.releases-grid>.release-card{min-width:0}.release-page-overlay{position:fixed;inset:0;background:var(--bg-color, #0a0a0a);overflow-y:auto;z-index:200;padding:0 0 100px}.release-page-header{padding:12px 16px 16px;border-bottom:1px solid var(--separator-color, rgba(255,255,255,.1))}.release-page-back-btn{background:none;border:none;color:var(--button-color, #007aff);font-size:16px;cursor:pointer;padding:8px 0;margin-bottom:12px;display:block}.release-page-header-body{display:flex;gap:14px;align-items:flex-start}.release-page-cover{width:90px;height:90px;border-radius:8px;overflow:hidden;flex-shrink:0;background:var(--secondary-bg, #1a1a1a)}.release-page-cover img{width:100%;height:100%;object-fit:cover}.release-page-info{flex:1;min-width:0}.release-page-title{font-size:17px;font-weight:700;color:var(--text-color, #fff);margin-bottom:4px}.release-page-artist{font-size:13px;color:var(--hint-color, #8e8e93);margin-bottom:6px}.release-page-avg{font-size:13px;color:var(--hint-color, #8e8e93);margin-bottom:8px}.release-page-avg strong{color:var(--text-color, #fff)}.release-page-listen-btn{margin-top:0;width:auto;padding:6px 16px}.release-page-reviews{padding:16px;display:flex;flex-direction:column;gap:10px}.release-page-review-card{position:relative}.review-pinned-badge{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:#fff;background:var(--button-color, #007aff);border-radius:6px;padding:1px 7px;margin-bottom:4px}.release-delete-btn{position:absolute;top:5px;right:28px;width:22px;height:22px;border-radius:50%;border:none;background:rgba(255,69,58,.85);color:#fff;font-size:12px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;line-height:1}.release-card{display:flex;flex-direction:column}.release-card-cover{position:relative;width:100%;aspect-ratio:1;border-radius:8px;overflow:hidden;background:var(--secondary-bg, #1a1a1a);cursor:pointer}.release-card-cover img{width:100%;height:100%;object-fit:cover}.review-count-badge{position:absolute;top:5px;left:5px;background:rgba(0,0,0,.65);color:#fff;font-size:11px;border-radius:8px;padding:2px 6px}.release-type-icon{position:absolute;top:5px;right:5px;font-size:14px}.score-badge-color{border-radius:10px;padding:2px 8px;font-size:12px;font-weight:700;color:#fff}.score-badge-color.score-green{background:#30d158}.score-badge-color.score-yellow{background:#ffd60a;color:#1a1a1a}.score-badge-color.score-red{background:#ff453a}.score-badge-color.score-grey{background:var(--hint-color, #8e8e93)}.score-badge-color.review-score{margin-left:auto;flex-shrink:0}.release-card-cover .score-badge-color{position:absolute;bottom:5px;right:5px}.release-card-info{padding:6px 2px 0}.release-card-title{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-color, #fff)}.release-card-artist{font-size:11px;color:var(--hint-color, #8e8e93);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.release-listen-btn{margin-top:5px;background:none;border:1px solid var(--separator-color, rgba(255, 255, 255, .1));color:var(--text-color, #fff);border-radius:8px;padding:4px 8px;font-size:12px;cursor:pointer;width:100%}.filter-bar{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.filter-btn{background:var(--secondary-bg, #1a1a1a);border:1px solid var(--separator-color, rgba(255, 255, 255, .1));color:var(--hint-color, #8e8e93);border-radius:20px;padding:5px 14px;font-size:13px;cursor:pointer}.filter-btn.active{background:var(--button-color, #007aff);border-color:var(--button-color, #007aff);color:#fff}.pagination-bar{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;margin-top:16px}.pagination-btn{background:var(--secondary-bg, #1a1a1a);border:1px solid var(--separator-color, rgba(255, 255, 255, .1));color:var(--text-color, #fff);border-radius:8px;padding:6px 12px;font-size:13px;cursor:pointer;min-width:36px}.pagination-btn.active{background:var(--button-color, #007aff);border-color:var(--button-color, #007aff);color:#fff}.recent-reviews-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.recent-review-card{position:relative;background:var(--secondary-bg, #1a1a1a);border:1px solid var(--separator-color, rgba(255, 255, 255, .1));border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:5px;cursor:pointer;transition:background .15s;overflow:hidden}.review-admin-delete-btn{position:absolute;top:8px;right:8px;background:rgba(255,60,60,.15);border:none;border-radius:50%;color:#f55;font-size:12px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;padding:0;line-height:1;transition:background .15s}.review-admin-delete-btn:hover{background:rgba(255,60,60,.4)}.recent-review-card:active{background:rgba(255,255,255,.07)}.review-author-row{display:flex;align-items:center;gap:6px}.review-avatar{width:28px;height:28px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--bg-color, #0a0a0a);display:flex;align-items:center;justify-content:center}.review-avatar img{width:100%;height:100%;object-fit:cover}.avatar-initials{font-size:12px;font-weight:700;color:var(--text-color, #fff)}.review-author-info{display:flex;align-items:center;gap:4px;flex:1;min-width:0}.review-author-name{font-size:12px;font-weight:600;color:var(--text-color, #fff);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.review-premium-badge{font-size:9px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,#6b5ce7,#8b5cf6,#a855f7);border-radius:6px;padding:1px 5px;flex-shrink:0;line-height:1.5}.review-release-meta{font-size:10px;color:var(--hint-color, #8e8e93);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.review-title{font-size:12px;font-weight:700;color:var(--text-color, #fff);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recent-review-card.expanded .review-title{white-space:normal}.review-body-preview{font-size:12px;color:var(--hint-color, #8e8e93);line-height:1.4;margin-top:2px}.review-like-btn{display:flex;align-items:center;gap:4px;background:none;border:none;color:var(--hint-color, #8e8e93);font-size:12px;font-weight:600;cursor:pointer;padding:12px 16px;margin:-12px -16px;align-self:flex-start;transition:color .15s,transform .15s;-webkit-tap-highlight-color:transparent;min-height:44px;min-width:44px}.review-like-btn:active{transform:scale(.9)}.review-like-btn.liked{color:#ff453a}.reviews-error{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px 16px;text-align:center}.reviews-error-text{color:var(--hint-color, #8e8e93);font-size:14px}.reviews-retry-btn{background:var(--button-color, #007aff);color:var(--button-text-color, #fff);border:none;border-radius:10px;padding:10px 24px;font-size:15px;font-weight:600;cursor:pointer;min-height:44px}.search-no-results{padding:10px 14px;font-size:13px;text-align:center}.critics-carousel{display:flex;gap:16px;overflow-x:auto;padding:4px 0 10px;scrollbar-width:none}.critics-carousel::-webkit-scrollbar{display:none}.critic-card{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:68px;max-width:68px;flex-shrink:0}.critic-avatar{width:52px;height:52px;border-radius:50%;overflow:hidden;background:var(--secondary-bg, #1a1a1a);border:2px solid var(--separator-color, rgba(255,255,255,.1));display:flex;align-items:center;justify-content:center;flex-shrink:0}.critic-avatar img{width:100%;height:100%;object-fit:cover}.critic-avatar-initials{font-size:20px;font-weight:700;color:var(--hint-color, #8e8e93)}.critic-name{font-size:11px;font-weight:500;color:var(--text-color, #fff);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.critic-stats{display:flex;flex-direction:column;align-items:center;gap:1px}.critic-reviews,.critic-likes{font-size:10px;color:var(--hint-color, #8e8e93);line-height:1.3}.vote-error-msg{font-size:12px;color:#ff453a;text-align:center;margin-top:8px;padding:6px 10px;background:rgba(255,69,58,.1);border-radius:8px}.pagination-ellipsis{display:inline-flex;align-items:center;padding:0 4px;color:var(--hint-color, #8e8e93);font-size:13px;user-select:none}.reviews-sort-bar{display:flex;gap:6px;margin-bottom:10px;flex-wrap:wrap}
