.search-bar[data-v-978b321f]{display:flex;align-items:center;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:0 12px;gap:8px;transition:border-color .2s}.search-bar[data-v-978b321f]:focus-within{border-color:var(--color-accent)}.search-icon[data-v-978b321f]{color:var(--color-text-muted);flex-shrink:0}.search-input[data-v-978b321f]{flex:1;background:none;border:none;outline:none;padding:8px 0;font-size:14px;color:var(--color-text)}.search-input[data-v-978b321f]::placeholder{color:var(--color-text-muted)}.clear-btn[data-v-978b321f]{flex-shrink:0;color:var(--color-text-muted);padding:4px;border-radius:50%}.clear-btn[data-v-978b321f]:hover{color:var(--color-text)}.app-header[data-v-3f810966]{display:flex;align-items:center;justify-content:space-between;padding:0 24px;height:var(--header-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:100;gap:24px}.header-brand[data-v-3f810966]{display:flex;align-items:center;gap:10px;flex-shrink:0}.logo[data-v-3f810966]{width:28px;height:28px;color:var(--color-accent)}.header-title[data-v-3f810966]{font-weight:700;font-size:18px;color:var(--color-text)}.header-subtitle[data-v-3f810966]{font-size:13px;color:var(--color-text-muted);margin-left:4px;padding-left:8px;border-left:1px solid var(--color-border)}.header-search[data-v-3f810966]{flex:1;max-width:420px}@media(max-width:640px){.app-header[data-v-3f810966]{padding:0 16px}.header-subtitle[data-v-3f810966]{display:none}.header-search[data-v-3f810966]{max-width:none}}.now-playing[data-v-62404605]{display:flex;align-items:center;gap:12px}.cover-wrap[data-v-62404605]{width:48px;height:48px;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0;background:var(--color-bg)}.cover[data-v-62404605]{width:100%;height:100%;object-fit:cover}.cover.placeholder[data-v-62404605]{padding:8px;color:var(--color-text-muted)}.song-info[data-v-62404605]{overflow:hidden}.song-title[data-v-62404605]{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.song-artist[data-v-62404605]{font-size:12px;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.no-song[data-v-62404605]{color:var(--color-text-muted);font-size:13px}.player-controls[data-v-d17f2ed9]{display:flex;align-items:center;gap:8px}.ctrl-btn[data-v-d17f2ed9]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--color-text-secondary);transition:color .2s;position:relative}.ctrl-btn[data-v-d17f2ed9]:hover{color:var(--color-text)}.ctrl-btn.active[data-v-d17f2ed9]{color:var(--color-accent)}.play-btn[data-v-d17f2ed9]{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-accent);color:#fff;transition:background .2s,transform .1s}.play-btn[data-v-d17f2ed9]:hover{background:var(--color-accent-hover)}.play-btn[data-v-d17f2ed9]:active{transform:scale(.95)}.repeat-badge[data-v-d17f2ed9]{position:absolute;bottom:2px;right:2px;font-size:8px;font-weight:700;color:var(--color-accent)}.progress-wrap[data-v-de5363ca]{display:flex;align-items:center;gap:10px;width:100%}.time[data-v-de5363ca]{font-size:11px;color:var(--color-text-muted);font-family:var(--font-mono);min-width:36px;text-align:center}.progress-bar[data-v-de5363ca]{flex:1;cursor:pointer;padding:6px 0;touch-action:none;-webkit-user-select:none;user-select:none}.progress-track[data-v-de5363ca]{height:4px;background:var(--color-border);border-radius:2px;position:relative;transition:height .15s}.progress-bar:hover .progress-track[data-v-de5363ca]{height:6px}.progress-buffered[data-v-de5363ca]{position:absolute;top:0;height:100%;background:#ffffff1f;border-radius:2px}.progress-fill[data-v-de5363ca]{position:absolute;top:0;left:0;height:100%;background:var(--color-accent);border-radius:2px;transition:width .1s linear}.progress-fill.no-transition[data-v-de5363ca]{transition:none}.progress-thumb[data-v-de5363ca]{position:absolute;top:50%;width:12px;height:12px;background:var(--color-text);border-radius:50%;transform:translate(-50%,-50%);opacity:0;transition:opacity .15s}.progress-bar:hover .progress-thumb[data-v-de5363ca],.progress-thumb.active[data-v-de5363ca]{opacity:1}.volume-control[data-v-762fe2d0]{display:flex;align-items:center;gap:8px}.volume-btn[data-v-762fe2d0]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--color-text-secondary);transition:color .2s}.volume-btn[data-v-762fe2d0]:hover{color:var(--color-text)}.volume-bar[data-v-762fe2d0]{width:80px;cursor:pointer;padding:6px 0;touch-action:none;-webkit-user-select:none;user-select:none}.volume-track[data-v-762fe2d0]{height:4px;background:var(--color-border);border-radius:2px;position:relative}.volume-bar:hover .volume-track[data-v-762fe2d0]{height:5px}.volume-fill[data-v-762fe2d0]{height:100%;background:var(--color-text-secondary);border-radius:2px}.volume-bar:hover .volume-fill[data-v-762fe2d0]{background:var(--color-accent)}.player-bar[data-v-9eba987e]{height:var(--player-height);background:var(--color-surface);border-top:1px solid var(--color-border);z-index:100;display:flex;align-items:center}.player-bar.inactive[data-v-9eba987e]{opacity:.5;pointer-events:none}.player-bar-inner[data-v-9eba987e]{display:flex;align-items:center;width:100%;padding:0 24px;gap:16px}.player-left[data-v-9eba987e]{width:240px;flex-shrink:0}.player-center[data-v-9eba987e]{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;max-width:600px;margin:0 auto}.player-right[data-v-9eba987e]{width:180px;flex-shrink:0;display:flex;justify-content:flex-end}@media(max-width:768px){.player-bar-inner[data-v-9eba987e]{padding:0 12px;gap:8px}.player-left[data-v-9eba987e]{width:140px}.player-right[data-v-9eba987e]{width:auto}}@media(max-width:480px){.player-left[data-v-9eba987e]{display:none}}.spectrum-canvas[data-v-552ebd50]{width:100%;height:100%;display:block}.app-layout[data-v-e0058dc9]{display:grid;grid-template-rows:60px 1fr 80px;grid-template-areas:"header" "main" "player";height:100vh;overflow:hidden}.app-layout[data-v-e0058dc9]>:first-child{grid-area:header}.main-content[data-v-e0058dc9]{grid-area:main;overflow-y:auto;padding:24px;position:relative}.spectrum-area[data-v-e0058dc9]{position:fixed;bottom:var(--player-height);left:0;right:0;height:64px;z-index:50;pointer-events:none}.app-layout[data-v-e0058dc9]>:last-child{grid-area:player}.song-card[data-v-86784ba3]{background:var(--color-surface);border-radius:var(--radius-md);overflow:hidden;cursor:pointer;transition:background .2s,box-shadow .2s;animation:fadeIn .3s ease}.song-card[data-v-86784ba3]:hover{background:var(--color-surface-hover);box-shadow:var(--shadow-md)}.song-card.active[data-v-86784ba3]{box-shadow:0 0 0 2px var(--color-accent)}.card-cover[data-v-86784ba3]{position:relative;aspect-ratio:1;background:var(--color-bg);overflow:hidden}.cover-img[data-v-86784ba3]{width:100%;height:100%;object-fit:cover}.cover-img.placeholder[data-v-86784ba3]{padding:20%;color:var(--color-text-muted)}.card-overlay[data-v-86784ba3]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0006;opacity:0;transition:opacity .2s;color:#fff}.song-card:hover .card-overlay[data-v-86784ba3]{opacity:1}.card-overlay.playing[data-v-86784ba3]{opacity:1;background:#6366f14d}.playing-indicator[data-v-86784ba3]{display:flex;align-items:center;gap:3px;height:24px}.playing-indicator .bar[data-v-86784ba3]{width:3px;background:#fff;border-radius:2px;animation:pulse 1s ease infinite}.playing-indicator .bar[data-v-86784ba3]:nth-child(1){height:12px}.playing-indicator .bar[data-v-86784ba3]:nth-child(2){height:24px;animation-delay:.2s}.playing-indicator .bar[data-v-86784ba3]:nth-child(3){height:16px;animation-delay:.4s}.card-body[data-v-86784ba3]{padding:10px 12px;position:relative}.card-title[data-v-86784ba3]{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.card-artist[data-v-86784ba3]{font-size:12px;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:36px}.card-duration[data-v-86784ba3]{position:absolute;bottom:10px;right:12px;font-size:11px;color:var(--color-text-muted);font-family:var(--font-mono)}@media(max-width:480px){.card-body[data-v-86784ba3]{padding:8px 10px}.card-title[data-v-86784ba3]{font-size:12px}.card-artist[data-v-86784ba3]{font-size:11px}}.empty-state[data-v-454beef2]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:80px 20px}.empty-icon[data-v-454beef2]{color:var(--color-text-muted);opacity:.4}.empty-text[data-v-454beef2]{color:var(--color-text-muted);font-size:15px}.spinner[data-v-3b66391a]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 0}.spinner-icon[data-v-3b66391a]{width:36px;height:36px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}.spinner-text[data-v-3b66391a]{color:var(--color-text-muted);font-size:14px}.song-grid[data-v-090cabae]{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}@media(max-width:640px){.song-grid[data-v-090cabae]{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}}.home-view[data-v-083f5a49]{max-width:1400px;margin:0 auto}.home-header[data-v-083f5a49]{display:flex;align-items:baseline;gap:12px;margin-bottom:24px}.home-title[data-v-083f5a49]{font-size:24px;font-weight:700}.home-count[data-v-083f5a49]{font-size:14px;color:var(--color-text-muted)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);line-height:1.5;overflow:hidden}ul,ol{list-style:none}a{color:inherit;text-decoration:none}button{border:none;background:none;cursor:pointer;font:inherit;color:inherit}input{font:inherit;color:inherit}img{max-width:100%;display:block}:root{--color-bg: #0f0f14;--color-surface: #1a1a24;--color-surface-hover: #24243a;--color-border: #2a2a3a;--color-text: #e8e8ed;--color-text-secondary: #9090a0;--color-text-muted: #606070;--color-accent: #6366f1;--color-accent-hover: #818cf8;--color-accent-glow: rgba(99, 102, 241, .2);--color-danger: #ef4444;--color-success: #22c55e;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--player-height: 80px;--header-height: 60px}@media(max-width:768px){:root{--player-height: 64px;--header-height: 52px}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}::selection{background:var(--color-accent-glow);color:var(--color-text)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}
