:root{--primary: #fc3d49;--primary-dark: #e83440;--primary-light: #ff5b66;--text: #e8e8ec;--text-2: rgba(232, 232, 236, .62);--text-3: rgba(232, 232, 236, .38);--bg: #13131a;--card-bg: #1f1f26;--border: rgba(255, 255, 255, .07);--hover-bg: rgba(255, 255, 255, .06);--sidebar-width: 204px;--player-height: 80px;--radius: 10px;--shadow: 0 2px 12px rgba(0, 0, 0, .3);--shadow-hover: 0 8px 24px rgba(252, 61, 73, .22);--hero-grad: linear-gradient(135deg, #fc3d49 0%, #e83440 55%, #b82230 100%);--hero-shadow: 0 8px 24px rgba(232, 52, 64, .26)}*{margin:0;padding:0;box-sizing:border-box}html,body,#app{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,HarmonyOS Sans SC,Segoe UI,Roboto,sans-serif;font-size:14px;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}input,textarea{font-family:inherit;outline:none}img{display:block}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#44444c;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#55555e}::-webkit-scrollbar-track{background:transparent}.ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sk{position:relative;overflow:hidden;background:#3a3a42;border-radius:8px}.sk:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transform:translate(-100%);animation:sk-shimmer 1.4s infinite}@keyframes sk-shimmer{to{transform:translate(100%)}}.ellipsis-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 22px;border-radius:999px;font-size:14px;font-weight:500;transition:all .2s;border:1px solid var(--border);background:#33343b;color:var(--text)}.btn:hover{border-color:var(--primary);color:var(--primary)}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-light));color:#fff;border:none;box-shadow:0 4px 14px #fc3d4959}.btn-primary:hover{color:#fff;transform:translateY(-1px);box-shadow:0 6px 18px #fc3d4973}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;color:var(--text-2);transition:all .2s}.btn-icon:hover{color:var(--primary);background:#fc3d4914}.btn-icon.active{color:var(--primary)}.field{margin-bottom:18px}.field label{display:block;margin-bottom:8px;font-size:13px;color:var(--text-2)}.field input[type=text],.field input[type=password],.field input[type=search]{width:100%;height:44px;padding:0 14px;border:1px solid var(--border);border-radius:10px;font-size:14px;background:#2c2d34;transition:border-color .2s,box-shadow .2s}.field input:focus{border-color:var(--primary);background:#2f3038;box-shadow:0 0 0 3px #fc3d4926}.section-title{display:flex;align-items:baseline;justify-content:space-between;margin:28px 0 16px}.section-title h2{font-size:20px;font-weight:700}.section-title .more{font-size:13px;color:var(--text-3);transition:color .2s}.section-title .more:hover{color:var(--primary)}.section-title .title-actions{display:flex;align-items:center;gap:10px}.section-title .refresh-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:50%;background:transparent;color:var(--text-3);cursor:pointer;transition:color .2s,background .2s}.section-title .refresh-btn:hover{color:var(--primary);background:#fc3d4914}.section-title .refresh-btn.spinning svg{animation:refresh-spin .8s linear infinite}@keyframes refresh-spin{to{transform:rotate(360deg)}}.page{max-width:1180px;margin:0 auto;padding:24px 32px 40px}@media (max-width: 767px){:root{--player-height: 68px}.page{padding:16px 16px 32px}}.empty{padding:70px 0;text-align:center;color:var(--text-3)}.empty .empty-icon{font-size:52px;margin-bottom:14px;opacity:.6}input[type=range].slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;border-radius:2px;background:linear-gradient(to right,var(--primary) var(--fill, 0%),#44444c var(--fill, 0%));outline:none;cursor:pointer}input[type=range].slider::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid var(--primary);box-shadow:0 1px 4px #0003;transition:transform .15s}input[type=range].slider::-webkit-slider-thumb:hover{transform:scale(1.25)}input[type=range].slider::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid var(--primary)}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:fadeUp .4s ease both}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;top:24px;left:50%;transform:translate(-50%);z-index:9999;background:#1e1e1eeb;color:#fff;padding:10px 22px;border-radius:999px;font-size:13px;box-shadow:0 6px 20px #00000040;animation:fadeUp .25s ease;pointer-events:none}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:1000;display:flex;align-items:center;justify-content:center;animation:fadeUp .2s ease}.modal{background:#2c2d34;border:1px solid var(--border);border-radius:16px;padding:28px;width:420px;max-width:calc(100vw - 48px);box-shadow:0 20px 60px #00000080}.modal h3{font-size:18px;margin-bottom:20px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}
