.desktop{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 20% 50%,rgba(254,229,0,.04) 0%,transparent 60%),radial-gradient(ellipse at 80% 20%,rgba(254,229,0,.03) 0%,transparent 50%),linear-gradient(135deg,#0a0a0a,#111,#0d0d0d);overflow:hidden}.desktop:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,rgba(255,255,255,.015) 1px,transparent 1px);background-size:40px 40px;pointer-events:none}.desktop-icons{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.desktop-icon{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:6px 4px;background:transparent;border:1px solid transparent;border-radius:4px;cursor:default;color:var(--text-primary);transition:background .12s,border-color .12s,opacity .12s;pointer-events:all;-webkit-user-select:none;user-select:none}.desktop-icon:hover{background:#fee50012;border-color:#fee5002e}.desktop-icon.selected{background:#fee50021;border-color:#fee50059}.desktop-icon.dragging{opacity:.35}.desktop-icon-img{font-size:28px;color:var(--accent);text-shadow:0 0 12px rgba(254,229,0,.5);pointer-events:none}.desktop-icon-label{font-size:11px;color:var(--text-secondary);text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.8);pointer-events:none;word-break:break-word;max-width:80px}.desktop-drop-target{position:absolute;border-radius:4px;pointer-events:none;box-sizing:border-box}.desktop-drop-target.valid{border:1px dashed rgba(254,229,0,.5);background:#fee5000d}.desktop-drop-target.invalid{border:1px dashed rgba(255,80,80,.5);background:#ff50500d}.desktop-icon-ghost{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:6px 4px;border-radius:4px;pointer-events:none;z-index:9998;opacity:.85;background:#fee50014;border:1px solid rgba(254,229,0,.25);box-shadow:0 4px 20px #00000080}.win{position:absolute;background:var(--bg-window);border:1px solid rgba(255,255,255,.08);border-top:1px solid rgba(255,255,255,.12);border-radius:4px;box-shadow:var(--window-shadow);display:flex;flex-direction:column;overflow:hidden;transition:opacity .25s cubic-bezier(.1,.9,.2,1),transform .25s cubic-bezier(.1,.9,.2,1);will-change:transform,opacity}.win-dragging{transition:none!important;cursor:grabbing}.win-minimized{opacity:0;pointer-events:none;transform:scale(.9) translateY(40px);filter:blur(4px)}.win-header{display:flex;align-items:center;justify-content:space-between;height:36px;padding:0 0 0 12px;background:var(--bg-window-header);border-bottom:1px solid rgba(255,255,255,.06);cursor:default;flex-shrink:0}.win-title{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:var(--text-secondary);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.win-icon{font-size:14px;color:var(--accent)}.win-controls{display:flex;align-items:stretch;height:36px;flex-shrink:0}.win-btn{width:46px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-secondary);transition:background .15s,color .15s}.win-btn:hover{background:#ffffff14;color:var(--text-primary)}.win-close:hover{background:#c42b1c;color:#fff}.win-maximize:hover{background:#fee50026;color:var(--accent)}.win-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.resize-handle{position:absolute;z-index:100}.resize-n{top:-3px;left:4px;right:4px;height:6px;cursor:n-resize}.resize-s{bottom:-3px;left:4px;right:4px;height:6px;cursor:s-resize}.resize-e{right:-3px;top:4px;bottom:4px;width:6px;cursor:e-resize}.resize-w{left:-3px;top:4px;bottom:4px;width:6px;cursor:w-resize}.resize-ne{top:-3px;right:-3px;width:12px;height:12px;cursor:ne-resize}.resize-nw{top:-3px;left:-3px;width:12px;height:12px;cursor:nw-resize}.resize-se{bottom:-3px;right:-3px;width:12px;height:12px;cursor:se-resize}.resize-sw{bottom:-3px;left:-3px;width:12px;height:12px;cursor:sw-resize}.player{display:flex;flex-direction:column;align-items:center;padding:20px 24px 16px;height:100%;gap:12px}.player-cover-wrap{position:relative;width:230px;height:230px;flex-shrink:0;border-radius:4px;overflow:hidden;box-shadow:0 12px 40px #0009,0 0 0 1px #ffffff0f}.player-cover{width:100%;height:100%;object-fit:cover;display:block}.player-cover-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--bg-surface)}.player-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center}.player-info{width:100%;text-align:center}.player-title{font-size:15px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-artist{font-size:12px;color:var(--accent);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-album{font-size:11px;color:var(--text-secondary);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-quality{display:inline-block;margin-top:6px;padding:2px 6px;border-radius:2px;font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;background:#fee5001a;color:var(--accent);border:1px solid rgba(254,229,0,.2)}.player-error{font-size:11px;color:#ff6b6b;margin-top:6px}.player-progress-wrap{width:100%;cursor:pointer}.player-progress-bar{height:3px;background:#ffffff1a;border-radius:2px;overflow:visible;position:relative}.player-progress-fill{height:100%;background:var(--accent);border-radius:2px;position:relative;transition:width .1s linear}.player-progress-thumb{position:absolute;right:-5px;top:-4px;width:11px;height:11px;border-radius:50%;background:var(--accent);opacity:0;transition:opacity .15s;box-shadow:0 0 8px #fee50099}.player-progress-wrap:hover .player-progress-thumb{opacity:1}.player-progress-wrap:hover .player-progress-bar{height:4px}.player-time{display:flex;justify-content:space-between;margin-top:6px;font-size:10px;color:var(--text-secondary)}.player-controls{display:flex;align-items:center;justify-content:center;gap:6px}.ctrl-btn{width:73px;height:73px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:50%;color:var(--text-secondary);transition:all .15s}.ctrl-btn:hover{color:var(--text-primary);background:transparent}.ctrl-play{width:95px;height:95px;background:transparent;color:#fff;border-radius:50%}.ctrl-play:hover{background:transparent;color:#fff}.player-lyrics-row{width:100%;display:flex;justify-content:space-between;align-items:center;padding:0 2px}.browser{display:flex;flex-direction:column;height:100%}.browser-search-row{padding:14px 16px 10px;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:10px;flex-shrink:0}.browser-search-box{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:10px;pointer-events:none}.browser-input{width:100%;height:34px;padding:0 32px;background:var(--bg-surface);border:1px solid rgba(255,255,255,.08);border-radius:3px;color:var(--text-primary);outline:none;transition:border-color .15s,box-shadow .15s}.browser-input::placeholder{color:var(--text-dim)}.browser-input:focus{border-color:#fee50066;box-shadow:0 0 0 2px #fee5001a}.search-clear{position:absolute;right:8px;background:none;border:none;color:var(--text-secondary);font-size:16px;line-height:1;cursor:pointer;padding:2px 4px}.search-clear:hover{color:var(--text-primary)}.type-tabs{display:flex;gap:4px}.type-tab{padding:4px 12px;background:transparent;border:1px solid rgba(255,255,255,.08);border-radius:2px;color:var(--text-secondary);font-size:11px;font-weight:500;transition:all .15s}.type-tab:hover{border-color:#fee5004d;color:var(--text-primary)}.type-tab.active{background:#fee5001f;border-color:#fee50066;color:var(--accent)}.browser-results{flex:1;overflow-y:auto;padding:6px 0}.browser-loading,.browser-empty,.browser-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:180px;color:var(--text-dim);font-size:12px}.track-row{display:flex;align-items:center;gap:10px;padding:7px 16px;cursor:pointer;transition:background .1s;border-left:2px solid transparent}.track-row:hover{background:var(--bg-surface-hover)}.track-row.active{background:#fee5000f;border-left-color:var(--accent)}.track-num{width:22px;text-align:right;font-size:11px;color:var(--text-dim);flex-shrink:0}.track-row.active .track-num{color:var(--accent)}.track-thumb{width:36px;height:36px;border-radius:2px;object-fit:cover;flex-shrink:0;background:var(--bg-surface)}.track-meta{flex:1;min-width:0}.track-name{font-size:12px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:5px}.track-row.active .track-name{color:var(--accent)}.track-artist{font-size:11px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.track-artist-link{cursor:pointer;transition:color .15s}.track-artist-link:hover{color:var(--accent);text-decoration:underline}.track-duration{font-size:11px;color:var(--text-dim);flex-shrink:0}.explicit{display:inline-flex;align-items:center;justify-content:center;width:13px;height:13px;border-radius:1px;background:var(--text-dim);color:var(--bg-window);font-size:8px;font-weight:700;flex-shrink:0}.quality-badge{font-size:9px;font-weight:700;letter-spacing:.04em;padding:1px 4px;border-radius:2px;flex-shrink:0}.quality-badge.hires{background:#fee50026;color:var(--accent);border:1px solid rgba(254,229,0,.25)}.quality-badge.lossless{background:#64c8ff1a;color:#7ad1ff;border:1px solid rgba(100,200,255,.2)}.artist-row{display:flex;align-items:center;gap:12px;padding:8px 16px;cursor:pointer;transition:background .1s}.artist-row:hover{background:var(--bg-surface-hover)}.artist-pic{width:40px;height:40px;object-fit:cover;flex-shrink:0;background:var(--bg-surface)}.artist-pic-placeholder{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--bg-surface);color:var(--accent);font-size:18px;flex-shrink:0}.artist-name{font-size:13px;font-weight:500;color:var(--text-primary)}.album-row{display:flex;align-items:center;gap:12px;padding:8px 16px;cursor:pointer;transition:background .1s}.album-row:hover{background:var(--bg-surface-hover)}.album-thumb{width:40px;height:40px;border-radius:2px;object-fit:cover;flex-shrink:0;background:var(--bg-surface)}.album-title{font-size:12px;font-weight:500;color:var(--text-primary)}.album-artist{font-size:11px;color:var(--text-secondary);margin-top:2px}.album-detail-header{padding:10px 14px 0;flex-shrink:0}.album-back-btn{display:flex;align-items:center;gap:6px;background:transparent;border:1px solid rgba(255,255,255,.08);border-radius:3px;color:var(--text-secondary);padding:5px 10px;font-size:12px;cursor:pointer;transition:all .15s}.album-back-btn:hover{border-color:#fee5004d;color:var(--accent)}.album-detail-body{flex:1;overflow-y:auto;display:flex;flex-direction:column}.album-detail-hero{display:flex;gap:20px;padding:16px 16px 20px;border-bottom:1px solid var(--border);flex-shrink:0}.album-detail-cover{width:140px;height:140px;object-fit:cover;border-radius:3px;flex-shrink:0;box-shadow:0 8px 28px #00000080}.album-detail-info{display:flex;flex-direction:column;justify-content:flex-end;gap:4px;min-width:0}.album-detail-title{font-size:22px;font-weight:700;color:var(--text-primary);line-height:1.2;word-break:break-word}.album-detail-artist{font-size:13px;color:var(--accent);font-weight:500}.album-detail-meta{font-size:11px;color:var(--text-dim)}.album-dl-btn{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:6px 12px;background:#fee5001a;border:1px solid rgba(254,229,0,.3);border-radius:3px;color:var(--accent);font-size:11px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s}.album-dl-btn:hover:not(:disabled){background:#fee5002e;border-color:#fee50080}.album-dl-btn:disabled{opacity:.6;cursor:default}.album-dl-btn.loading{color:var(--text-secondary);border-color:#ffffff1a;background:#ffffff0a}.album-detail-tracks{flex:1;padding:6px 0}.taskbar{position:fixed;bottom:0;left:0;right:0;height:var(--taskbar-height);background:var(--bg-taskbar);-webkit-backdrop-filter:blur(24px) saturate(150%);backdrop-filter:blur(24px) saturate(150%);display:flex;justify-content:space-between;align-items:stretch;z-index:9999;-webkit-user-select:none;user-select:none}.taskbar-left,.taskbar-right{display:flex;align-items:stretch}.taskbar-middle{flex:1;display:flex;align-items:stretch;overflow:hidden;padding:0 4px}.taskbar-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#fff;transition:background .1s}.taskbar-btn:hover{background:#ffffff1a}.start-btn{width:48px;color:#fff}.start-btn:hover{background:#ffffff1a;color:#17a2b8}.start-logo-img{width:18px;height:18px;object-fit:contain}.search-btn,.taskview-btn{width:42px}.taskbar-win-btn{position:relative;width:48px;height:100%;padding:0;background:transparent;border:none;display:flex;align-items:center;justify-content:center;transition:background .1s}.taskbar-win-btn:hover{background:#ffffff1a}.taskbar-win-btn:after{content:"";position:absolute;bottom:0;left:15%;right:15%;height:2px;background:var(--accent);opacity:.6;transition:left .15s,right .15s,opacity .1s}.taskbar-win-btn.focused{background:#ffffff26}.taskbar-win-btn.focused:after{left:0;right:0;opacity:1}.taskbar-win-icon{font-size:18px;color:#fff}.taskbar-tray{display:flex;align-items:center}.tray-btn-small{width:24px;height:100%;color:var(--text-secondary)}.taskbar-vol-btn{width:40px;color:var(--text-primary)}.taskbar-now-playing{display:flex;align-items:center;gap:8px;padding:0 10px 0 8px;border-left:1px solid rgba(255,255,255,.05);border-right:1px solid rgba(255,255,255,.05);max-width:220px;cursor:default;transition:background .1s}.taskbar-now-playing:hover{background:#ffffff0f}.taskbar-np-cover-wrap{position:relative;width:30px;height:30px;flex-shrink:0;border-radius:2px;overflow:visible}.taskbar-np-cover{width:30px;height:30px;border-radius:2px;object-fit:cover;display:block}.taskbar-np-cover-placeholder{width:30px;height:30px;border-radius:2px;background:var(--bg-surface);display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--accent)}.taskbar-np-badge{position:absolute;bottom:-3px;right:-3px;width:10px;height:10px;border-radius:50%;background:var(--bg-taskbar);border:1.5px solid var(--bg-taskbar);box-shadow:0 0 0 1.5px var(--bg-taskbar)}.taskbar-np-badge:after{content:"";position:absolute;top:1.5px;right:1.5px;bottom:1.5px;left:1.5px;border-radius:50%;background:#ffffff4d}.taskbar-np-badge.playing:after{background:var(--accent);animation:taskbar-pulse 1.2s infinite;box-shadow:0 0 6px var(--accent)}@keyframes taskbar-pulse{0%{transform:scale(.8);opacity:.6}50%{transform:scale(1.2);opacity:1}to{transform:scale(.8);opacity:.6}}.taskbar-np-meta{flex:1;min-width:0}.taskbar-np-title{font-size:11px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.taskbar-np-artist{font-size:10px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px;line-height:1.3}.taskbar-clock-wrap{display:flex;flex-direction:column;justify-content:center;padding:0 12px;font-size:11px;line-height:1.2;text-align:center;cursor:default}.taskbar-clock-wrap:hover{background:#ffffff1a}.taskbar-time{color:#fff;font-weight:400}.taskbar-date{color:var(--text-secondary);margin-top:1px}.action-center-btn{width:40px}.taskbar-show-desktop{width:5px;border-left:1px solid rgba(255,255,255,.1);margin-left:2px;height:100%;cursor:pointer}.taskbar-show-desktop:hover{background:#ffffff1a}.spinner{width:20px;height:20px;border:2px solid rgba(254,229,0,.2);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.lyrics-btn{flex-shrink:0;padding:4px;background:transparent;border:none;color:var(--text-dim);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:color .15s;position:relative;z-index:1}.lyrics-btn:hover:not(:disabled){color:var(--text-primary)}.lyrics-btn.active{color:var(--accent)}.lyrics-btn:disabled{opacity:.3;cursor:default}.lv{display:flex;flex-direction:column;height:100%;overflow:hidden}.lv-header{display:flex;align-items:center;gap:10px;padding:12px 14px;flex-shrink:0;border-bottom:1px solid rgba(255,255,255,.06)}.lv-cover-wrap{position:relative;width:40px;height:40px;flex-shrink:0;border-radius:3px;overflow:hidden;box-shadow:0 4px 14px #00000080}.lv-cover{width:100%;height:100%;object-fit:cover;display:block}.lv-cover-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--bg-surface);color:var(--accent);font-size:18px}.lv-cover-loading{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center}.lv-meta{flex:1;min-width:0}.lv-title{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lv-artist{font-size:11px;color:var(--accent);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lv-lines{flex:1;min-height:0;overflow-y:auto;padding:20px;scrollbar-width:none;display:flex;flex-direction:column}.lv-lines::-webkit-scrollbar{display:none}.lyrics-line{font-size:14px;font-weight:500;color:#ffffff2e;line-height:1.6;padding:5px 0;transition:color .25s,font-size .2s;cursor:pointer}.lyrics-line:hover{color:#ffffff73}.lyrics-line.past{color:#ffffff4d}.lyrics-line.active{color:var(--accent);font-size:15px;text-shadow:0 0 18px rgba(254,229,0,.35)}.lv-footer{flex-shrink:0;padding:8px 16px 14px;border-top:1px solid rgba(255,255,255,.06)}.lv-controls{display:flex;align-items:center;justify-content:center;gap:8px}.lyrics-state{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-dim);font-size:12px}.lyrics-state-err{color:#ff6b6bb3}.track-add-queue,.track-download{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;color:var(--text-dim);cursor:pointer;opacity:0;transition:opacity .15s,color .15s,transform .1s;padding:0}.track-row:hover .track-add-queue,.track-row:hover .track-download{opacity:1}.track-add-queue:hover,.track-download:hover{color:var(--text-primary)}.track-add-queue:active,.track-download:active{transform:scale(.9)}.track-download.loading{opacity:1!important;color:var(--accent)!important;pointer-events:none}.track-download.loading svg{animation:spin 1s linear infinite}.qv{display:flex;flex-direction:column;height:100%;overflow:hidden}.qv-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;flex-shrink:0;border-bottom:1px solid rgba(255,255,255,.06)}.qv-title{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em}.qv-list{flex:1;overflow-y:auto;padding:6px 0;scrollbar-width:none}.qv-list::-webkit-scrollbar{display:none}.qv-empty{display:flex;align-items:center;justify-content:center;height:80px;font-size:12px;color:var(--text-dim)}.qv-row{display:flex;align-items:center;gap:10px;padding:6px 14px;border:1px solid transparent;border-radius:3px;transition:background .1s,border-color .1s;-webkit-user-select:none;user-select:none}.qv-row{cursor:pointer}.qv-row:hover{background:#ffffff0a}.qv-row-current{cursor:default;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:4px;padding-bottom:10px}.qv-row-current:hover{background:transparent}.qv-row.drag-over{border-color:var(--accent);background:#fee5000f}.qv-thumb{width:36px;height:36px;border-radius:2px;object-fit:cover;flex-shrink:0;background:var(--bg-surface)}.qv-thumb-placeholder{display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:14px}.qv-meta{min-width:0;flex:1}.qv-track-name{font-size:12px;font-weight:500;color:var(--text-primary)}.qv-track-name-current{color:var(--accent);text-shadow:0 0 12px rgba(254,229,0,.3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qv-track-artist{font-size:11px;color:var(--text-secondary);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qv-drag-handle{flex-shrink:0;display:flex;align-items:center;color:var(--text-dim);cursor:grab;opacity:0;transition:opacity .15s;padding:2px}.qv-row:hover .qv-drag-handle{opacity:1}.qv-drag-handle:active{cursor:grabbing}.qv-remove{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:transparent;border:none;color:var(--text-dim);cursor:pointer;opacity:0;transition:opacity .15s,color .15s;padding:0}.qv-row:hover .qv-remove{opacity:1}.qv-remove:hover{color:#ff6b6b}.taskbar-vol-wrap{position:relative;display:flex;align-items:center}.taskbar-vol-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-secondary);border-radius:3px;transition:background .15s,color .15s;cursor:pointer}.taskbar-vol-btn:hover{background:#ffffff14;color:var(--text-primary)}.taskbar-vol-btn.active{background:#ffffff1a;color:var(--text-primary)}.vol-panel{position:absolute;bottom:calc(100% + 12px);right:4px;width:320px;background:#232323;border:1px solid rgba(255,255,255,.08);box-shadow:0 10px 40px #000c;display:flex;align-items:center;gap:12px;padding:18px;z-index:10000;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.vol-panel-icon{color:var(--text-primary);flex-shrink:0;display:flex;align-items:center}.vol-panel-slider{flex:1;height:20px;display:flex;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none}.vol-panel-track{position:relative;width:100%;height:4px;background:#fff3;border-radius:2px}.vol-panel-fill{position:absolute;left:0;top:0;height:100%;background:#fff;border-radius:2px;pointer-events:none}.vol-panel-thumb{position:absolute;top:50%;transform:translate(-50%,-50%);width:13px;height:13px;background:#fff;border-radius:50%;pointer-events:none;box-shadow:0 0 4px #0006}.vol-panel-slider:hover .vol-panel-fill,.vol-panel-slider:hover .vol-panel-thumb{background:var(--accent)}.vol-panel-pct{font-size:12px;font-weight:400;color:var(--text-primary);min-width:28px;text-align:right;flex-shrink:0}.track-add-playlist{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;color:var(--text-dim);cursor:pointer;opacity:0;transition:opacity .15s,color .15s;padding:0}.track-row:hover .track-add-playlist{opacity:1}.track-add-playlist:hover{color:var(--accent)}.atp-menu{width:220px;background:#1e1e1e;border:1px solid rgba(255,255,255,.1);border-radius:6px;box-shadow:0 12px 40px #000c;overflow:hidden;-webkit-user-select:none;user-select:none}.atp-menu-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);padding:10px 12px 6px}.atp-menu-list{max-height:200px;overflow-y:auto;scrollbar-width:none}.atp-menu-list::-webkit-scrollbar{display:none}.atp-menu-empty{font-size:11px;color:var(--text-dim);padding:6px 12px 10px}.atp-menu-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:7px 12px;background:transparent;border:none;color:var(--text-primary);font-size:12px;cursor:pointer;text-align:left;transition:background .1s}.atp-menu-item:hover{background:#ffffff12}.atp-menu-item.already{cursor:default;color:var(--text-secondary)}.atp-menu-item-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.atp-menu-item-count{font-size:10px;color:var(--text-dim);flex-shrink:0;margin-left:6px}.atp-menu-footer{border-top:1px solid rgba(255,255,255,.07);padding:4px}.atp-new-playlist-btn{display:flex;align-items:center;gap:6px;width:100%;padding:7px 8px;background:transparent;border:none;color:var(--accent);font-size:11px;cursor:pointer;border-radius:4px;transition:background .1s}.atp-new-playlist-btn:hover{background:#fee50014}.atp-new-form{display:flex;align-items:center;gap:4px;padding:4px}.atp-new-input{flex:1;height:28px;padding:0 8px;background:var(--bg-surface);border:1px solid rgba(254,229,0,.3);border-radius:3px;color:var(--text-primary);font-size:11px;outline:none}.atp-new-confirm{width:28px;height:28px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#fee50026;border:1px solid rgba(254,229,0,.3);border-radius:3px;color:var(--accent);cursor:pointer;transition:background .1s}.atp-new-confirm:hover{background:#fee50040}.pl-win{display:flex;height:100%;overflow:hidden}.pl-sidebar{width:190px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.07);overflow:hidden}.pl-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:12px 12px 8px;flex-shrink:0;border-bottom:1px solid rgba(255,255,255,.06)}.pl-sidebar-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-secondary)}.pl-new-btn{display:flex;align-items:center;gap:4px;padding:3px 8px;background:#fee50014;border:1px solid rgba(254,229,0,.2);border-radius:3px;color:var(--accent);font-size:10px;font-weight:500;cursor:pointer;transition:background .15s}.pl-new-btn:hover{background:#fee50029}.pl-list{flex:1;overflow-y:auto;scrollbar-width:none;padding:4px 0}.pl-list::-webkit-scrollbar{display:none}.pl-list-empty{font-size:11px;color:var(--text-dim);text-align:center;padding:20px 12px}.pl-list-item{display:flex;align-items:center;gap:8px;padding:6px 10px;cursor:pointer;border-left:2px solid transparent;transition:background .1s,border-color .1s}.pl-list-item:hover{background:#ffffff0a}.pl-list-item.active{background:#fee5000f;border-left-color:var(--accent)}.pl-list-item-cover{flex-shrink:0}.pl-list-item-meta{flex:1;min-width:0}.pl-list-item-name{font-size:12px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pl-list-item.active .pl-list-item-name{color:var(--accent)}.pl-list-item-count{font-size:10px;color:var(--text-dim);margin-top:1px}.pl-rename-input{width:100%;background:var(--bg-surface);border:1px solid rgba(254,229,0,.4);border-radius:2px;color:var(--text-primary);font-size:12px;padding:1px 4px;outline:none}.pl-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.pl-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-dim);font-size:12px}.pl-create-first-btn{padding:7px 16px;background:#fee5001a;border:1px solid rgba(254,229,0,.3);border-radius:4px;color:var(--accent);font-size:12px;cursor:pointer;transition:background .15s}.pl-create-first-btn:hover{background:#fee5002e}.pl-detail-hero{display:flex;gap:16px;padding:18px 18px 14px;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.pl-cover-placeholder{border-radius:4px;background:var(--bg-surface);display:flex;align-items:center;justify-content:center;color:var(--accent);flex-shrink:0}.pl-cover-single{border-radius:4px;object-fit:cover;display:block;flex-shrink:0}.pl-cover-mosaic{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;border-radius:4px;overflow:hidden;flex-shrink:0}.pl-cover-mosaic img{width:100%;height:100%;object-fit:cover;display:block}.pl-detail-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;gap:4px}.pl-detail-name{font-size:20px;font-weight:700;color:var(--text-primary);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:default}.pl-rename-inline{font-size:20px;font-weight:700;background:var(--bg-surface);border:1px solid rgba(254,229,0,.4);border-radius:3px;color:var(--text-primary);padding:0 6px;outline:none;width:100%}.pl-detail-meta{font-size:11px;color:var(--text-dim)}.pl-detail-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:6px}.pl-action-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:3px;color:var(--text-secondary);font-size:11px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.pl-action-btn:hover:not(:disabled){background:#ffffff1a;color:var(--text-primary)}.pl-action-btn:disabled{opacity:.4;cursor:default}.pl-action-btn.primary{background:#fee5001f;border-color:#fee5004d;color:var(--accent)}.pl-action-btn.primary:hover:not(:disabled){background:#fee50033;border-color:#fee50080}.pl-action-btn.danger:hover:not(:disabled){background:#c42b1c26;border-color:#c42b1c66;color:#ff6b6b}.pl-track-list{flex:1;overflow-y:auto;scrollbar-width:none;padding:4px 0}.pl-track-list::-webkit-scrollbar{display:none}.pl-tracks-empty{display:flex;align-items:center;justify-content:center;height:100px;font-size:11px;color:var(--text-dim);text-align:center;padding:0 24px}.pl-track-row{display:flex;align-items:center;gap:8px;padding:5px 14px 5px 8px;cursor:pointer;border:1px solid transparent;border-radius:3px;transition:background .1s,border-color .1s;-webkit-user-select:none;user-select:none}.pl-track-row:hover{background:#ffffff0a}.pl-track-row.drag-over{border-color:var(--accent);background:#fee5000d}.pl-track-handle{flex-shrink:0;display:flex;align-items:center;cursor:grab;padding:2px;opacity:0;transition:opacity .15s}.pl-track-row:hover .pl-track-handle{opacity:1}.pl-track-num{width:18px;text-align:right;font-size:10px;color:var(--text-dim);flex-shrink:0}.pl-track-thumb{width:34px;height:34px;border-radius:2px;object-fit:cover;flex-shrink:0;background:var(--bg-surface)}.pl-track-thumb-ph{display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:14px}.pl-track-meta{flex:1;min-width:0}.pl-track-name{font-size:12px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pl-track-artist{font-size:10px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.pl-track-queue,.pl-track-remove{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:22px;height:22px;background:transparent;border:none;cursor:pointer;opacity:0;transition:opacity .15s,color .15s;padding:0}.pl-track-row:hover .pl-track-queue,.pl-track-row:hover .pl-track-remove{opacity:1}.pl-track-queue{color:var(--text-dim)}.pl-track-queue:hover{color:var(--text-primary)}.pl-track-remove{color:var(--text-dim)}.pl-track-remove:hover{color:#ff6b6b}.pl-track-dur{font-size:10px;color:var(--text-dim);flex-shrink:0;min-width:32px;text-align:right}.pl-modal-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.pl-modal{background:#1e1e1e;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:20px;min-width:280px;box-shadow:0 20px 60px #000c}.pl-modal-title{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:12px}.pl-modal-body{font-size:12px;color:var(--text-secondary);margin-bottom:16px;line-height:1.5}.pl-modal-input{width:100%;height:34px;padding:0 10px;background:var(--bg-surface);border:1px solid rgba(254,229,0,.3);border-radius:3px;color:var(--text-primary);font-size:13px;outline:none;margin-bottom:16px;box-sizing:border-box}.pl-modal-input:focus{border-color:#fee50099}.pl-modal-actions{display:flex;justify-content:flex-end;gap:8px}.pl-modal-btn{padding:6px 16px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:3px;color:var(--text-secondary);font-size:12px;cursor:pointer;transition:background .15s,color .15s}.pl-modal-btn:hover{background:#ffffff1a;color:var(--text-primary)}.pl-modal-btn.primary{background:#fee5001f;border-color:#fee5004d;color:var(--accent)}.pl-modal-btn.primary:hover:not(:disabled){background:#fee50033}.pl-modal-btn.primary:disabled{opacity:.4;cursor:default}.pl-modal-btn.danger{background:#c42b1c1f;border-color:#c42b1c4d;color:#ff6b6b}.pl-modal-btn.danger:hover{background:#c42b1c38}:root{--accent: #fee500;--accent-dim: #ccb800;--accent-glow: rgba(254, 229, 0, .15);--bg-desktop: #0d0d0d;--bg-window: #161616;--bg-window-header: #1e1e1e;--bg-surface: #1e1e1e;--bg-surface-hover: #252525;--bg-surface-active: #2a2a2a;--bg-taskbar: rgba(0, 0, 0, .8);--border: rgba(255, 255, 255, .07);--border-accent: rgba(254, 229, 0, .3);--text-primary: #f0f0f0;--text-secondary: #888;--text-dim: #555;--window-shadow: 0 24px 80px rgba(0, 0, 0, .7), 0 4px 16px rgba(0, 0, 0, .5);--taskbar-height: 40px;--radius: 2px}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden;font-family:Inter,Segoe UI,system-ui,sans-serif;font-size:13px;background:var(--bg-desktop);color:var(--text-primary);-webkit-user-select:none;user-select:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#fee5004d}input{font-family:inherit;font-size:inherit}button{font-family:inherit;cursor:pointer}
