:root{--bg:#0d1117;--bg-raised:#1a1f26;--bg-elev:#161b22;--bg-elev-2:#21262d;--bg-elev-3:#2d333b;--fg:#e6edf3;--muted:#7d8590;--accent:#00d4ff;--accent-2:#06b6d4;--accent-glow:rgba(0,212,255,.2);--purple:#bc8cff;--purple-glow:rgba(188,140,255,.2);--orange:#f0883e;--orange-glow:rgba(240,136,62,.2);--danger:#f85149;--ok:#3fb950;--border:#30363d;--border-light:#484f58;--radius:10px;--shadow:0 8px 32px rgba(0,0,0,.4);--header-bg:rgba(11,13,18,.92);--sidebar-bg:linear-gradient(180deg,rgba(20,24,38,.98),rgba(15,18,28,.98));--m-scrim-bg:#000;--m-toast-bg:rgba(33,38,45,.97);--m-bar-fade:linear-gradient(180deg,rgba(13,17,23,0),rgba(13,17,23,.86) 42%)}html[data-theme=light]{--bg:#f4f6f9;--bg-raised:#fff;--bg-elev:#fff;--bg-elev-2:#e9edf2;--bg-elev-3:#dce3ea;--fg:#1a2332;--muted:#64707e;--accent:#0094c8;--accent-2:#0891b2;--accent-glow:rgba(0,148,200,.16);--purple:#7c4dd4;--purple-glow:rgba(124,77,212,.16);--orange:#d97706;--orange-glow:rgba(217,119,6,.16);--danger:#d92d20;--ok:#1a7f37;--border:#d3dae2;--border-light:#c0cad4;--shadow:0 8px 32px rgba(58,74,92,.18);--header-bg:hsla(0,0%,100%,.92);--sidebar-bg:linear-gradient(180deg,hsla(0,0%,100%,.96),rgba(240,244,248,.96));--m-scrim-bg:#c7cfd8;--m-toast-bg:rgba(41,48,58,.97);--m-bar-fade:linear-gradient(180deg,rgba(244,246,249,0),rgba(244,246,249,.88) 42%)}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;background:var(--bg);color:var(--fg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;border:none;border-radius:8px;padding:10px 16px;background:var(--accent);color:#000;font-weight:600;transition:all .2s;box-shadow:0 2px 12px var(--accent-glow)}button:hover{filter:brightness(1.15);box-shadow:0 4px 20px var(--accent-glow)}button:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}button.ghost{background:transparent;border:1px solid var(--border-light);color:var(--fg);box-shadow:none}button.ghost:hover{border-color:var(--accent);color:var(--accent)}button.danger{background:var(--danger);color:#fff}input,select,textarea{font:inherit;background:var(--bg-elev-2);color:var(--fg);border:1px solid var(--border);border-radius:8px;padding:10px 12px;width:100%;transition:border-color .2s}input[type=range].volume-range-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:6px;background:var(--bg-elev-3);border-radius:3px;outline:none;cursor:pointer;margin:0;padding:0}input[type=range].volume-range-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:var(--accent);border-radius:50%;cursor:pointer;-webkit-transition:all .15s;transition:all .15s;box-shadow:0 2px 4px rgba(0,0,0,.3)}input[type=range].volume-range-slider::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:0 2px 8px var(--accent-glow)}input[type=range].volume-range-slider::-moz-range-thumb{width:16px;height:16px;background:var(--accent);border-radius:50%;cursor:pointer;border:none;-moz-transition:all .15s;transition:all .15s;box-shadow:0 2px 4px rgba(0,0,0,.3)}input[type=range].volume-range-slider::-moz-range-thumb:hover{transform:scale(1.2);box-shadow:0 2px 8px var(--accent-glow)}input[type=range].volume-range-slider::-moz-range-track{background:var(--bg-elev-3);height:6px;border-radius:3px}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:6px;background:var(--bg-elev-3);border-radius:3px;outline:none;cursor:pointer;margin:0;padding:0}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:var(--accent);border-radius:50%;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.3)}input[type=range]::-moz-range-thumb{width:16px;height:16px;background:var(--accent);border-radius:50%;cursor:pointer;border:none;box-shadow:0 1px 4px rgba(0,0,0,.3)}input[type=range]::-moz-range-track{background:var(--bg-elev-3);height:6px;border-radius:3px}input:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:0 4px 24px rgba(0,0,0,.3)}.container{max-width:1200px;margin:0 auto;padding:0 24px}.row{align-items:center}.col,.row{display:flex;gap:12px}.col{flex-direction:column}.between{justify-content:space-between}.muted{color:var(--muted)}.center{text-align:center}.grid{display:grid;grid-gap:16px;gap:16px}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}@media (max-width:768px){.grid-2,.grid-3{grid-template-columns:1fr}}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;background:var(--bg-elev-2);color:var(--muted)}.badge.ok{background:rgba(16,185,129,.15);color:var(--ok)}.badge.warn{background:rgba(245,158,11,.15);color:#f59e0b}.tag{display:inline-block;padding:6px 12px;border-radius:8px;margin:4px;background:var(--bg-elev-2);cursor:pointer;border:1px solid var(--border);font-size:14px;transition:all .15s}.tag:hover{color:var(--accent)}.tag.active,.tag:hover{border-color:var(--accent)}.tag.active{background:var(--accent);color:#000;font-weight:600}.action-mark{position:relative;display:inline-block;border-radius:4px;padding:2px 4px}.action-delete{background:rgba(239,68,68,.2);text-decoration:line-through;color:var(--danger)}.action-add{background:rgba(16,185,129,.2);color:var(--ok);text-decoration:underline}.action-slow{background:rgba(245,158,11,.2);color:#f59e0b}.action-fast{background:rgba(99,102,241,.2);color:var(--accent)}.action-soundeffect{background:rgba(16,185,129,.15);color:#10b981;border:1px solid rgba(16,185,129,.3);font-weight:500}.action-label{font-size:11px;margin-left:4px;opacity:.8}.polyphone-mark{background:rgba(245,158,11,.12);-webkit-text-decoration:underline wavy rgba(245,158,11,.7);text-decoration:underline wavy rgba(245,158,11,.7);text-underline-offset:4px;cursor:pointer;border-radius:2px;transition:background .1s}.polyphone-mark:hover{background:rgba(245,158,11,.25)}.polyphone-marked{position:relative;background:rgba(16,185,129,.12);-webkit-text-decoration:underline solid rgba(16,185,129,.7);text-decoration:underline solid rgba(16,185,129,.7);text-underline-offset:4px;cursor:pointer;border-radius:2px}.pinyin-annotation{position:absolute;top:-10px;left:50%;transform:translateX(-50%);font-size:10px;color:#10b981;font-weight:600;white-space:nowrap;pointer-events:none;text-shadow:0 1px 2px var(--bg);line-height:1}.action-clear-btn{display:inline-block;position:absolute;top:-7px;right:-7px;width:16px;height:16px;line-height:14px;text-align:center;background:#ef4444;color:#fff;border-radius:50%;font-size:12px;font-weight:700;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:10;box-shadow:0 1px 4px rgba(0,0,0,.3);transition:transform .1s,background .1s;opacity:.7}.action-clear-btn:hover{transform:scale(1.25);background:#dc2626;opacity:1}@keyframes spin{to{transform:rotate(1turn)}}.spinner{animation:spin 1s linear infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes pulse-hint{0%,to{box-shadow:0 0 0 0 rgba(0,212,255,.5)}50%{box-shadow:0 0 0 6px rgba(0,212,255,0)}}@keyframes vc-audition-text-blink{0%,to{background:rgba(6,182,212,.18);border-color:rgba(6,182,212,.35)}50%{background:rgba(6,182,212,.04);border-color:rgba(6,182,212,.08)}}@keyframes dot-bounce{0%,80%,to{opacity:.3}40%{opacity:1}}@keyframes vc-save-toast{0%{opacity:0;transform:translateX(-50%) translateY(6px)}12%{opacity:1;transform:translateX(-50%) translateY(0)}70%{opacity:1;transform:translateX(-50%) translateY(0)}to{opacity:0;transform:translateX(-50%) translateY(-8px)}}.streaming-dots span{animation:dot-bounce 1.4s infinite;font-weight:700}.streaming-dots span:first-child{animation-delay:0s}.streaming-dots span:nth-child(2){animation-delay:.2s}.streaming-dots span:nth-child(3){animation-delay:.4s}.streaming-cursor{display:inline-block;width:2px;height:1em;background:var(--accent);margin-left:2px;vertical-align:text-bottom;animation:blink 1s step-end infinite}.volume-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;background:var(--border);outline:none;cursor:pointer}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:#fff;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.4);-webkit-transition:transform .15s;transition:transform .15s;border:1px solid rgba(0,0,0,.05)}.volume-slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.volume-slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#fff;cursor:pointer;border:1px solid rgba(0,0,0,.05);box-shadow:0 2px 8px rgba(0,0,0,.4)}.volume-slider::-moz-range-track{height:6px;border-radius:3px;background:var(--border)}.volume-slider-filled{position:relative;display:flex;align-items:center;height:28px;width:100%;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none}.volume-slider-track{right:0;background:var(--border)}.volume-slider-fill,.volume-slider-track{position:absolute;left:0;height:6px;border-radius:3px}.volume-slider-fill{background:var(--accent);pointer-events:none}.volume-slider-thumb{position:absolute;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.4);transform:translateX(-50%);pointer-events:none;border:1px solid rgba(0,0,0,.05)}.vcs-works-cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px}@media (max-width:1024px){.vcs-works-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.vcs-works-cards{grid-template-columns:1fr;gap:10px}}.vcs-works-card-preview{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.vc-checkbox-wrapper{position:relative;flex-shrink:0;margin-top:1px}.vc-checkbox-input{position:absolute;opacity:0;width:0;height:0;margin:0;padding:0}.vc-checkbox-box{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border:1.5px solid var(--border);border-radius:4px;background:var(--bg-elev-2);transition:all .2s ease;cursor:pointer}.vc-checkbox-input:checked+.vc-checkbox-box{border-color:var(--accent);background:rgba(0,212,255,.15);box-shadow:0 0 0 2px rgba(0,212,255,.1)}.vc-checkbox-input:focus-visible+.vc-checkbox-box{outline:2px solid var(--accent);outline-offset:1px}.vc-checkbox-wrapper:hover .vc-checkbox-box{border-color:var(--border-light)}.vc-checkbox-input:checked+.vc-checkbox-box:hover{border-color:var(--accent);background:rgba(0,212,255,.25);box-shadow:0 0 0 3px rgba(0,212,255,.15)}.vc-checkbox-icon{width:10px;height:8px;color:var(--accent);animation:vc-checkbox-check .15s ease-out}@keyframes vc-checkbox-check{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.vc-checkbox-text{color:var(--fg);line-height:1.5}.vc-checkbox-link{color:var(--accent);text-decoration:none;border-bottom:1px solid transparent;transition:all .2s}.vc-checkbox-link:hover{border-bottom-color:var(--accent);text-shadow:0 0 8px var(--accent-glow)}@keyframes skeleton-shimmer{0%,to{opacity:.6}50%{opacity:.3}}.skeleton-shimmer{animation:skeleton-shimmer 1.4s ease-in-out infinite}@keyframes loading-bar{0%{transform:translateX(-100%)}to{transform:translateX(400%)}}.loading-bar{animation:loading-bar 1s ease-in-out infinite}@keyframes ai-guide-fadein{0%{opacity:0;transform:translateX(-50%) translateY(-6px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@keyframes ai-guide-think{0%,to{transform:rotate(0deg)}25%{transform:rotate(-12deg)}50%{transform:rotate(8deg)}75%{transform:rotate(-5deg)}}.ai-guide-fadein{animation:ai-guide-fadein .3s ease-out}.ai-guide-think{animation:ai-guide-think 1.5s ease-in-out infinite}.vc-agreement-checkbox:active .vc-checkbox-box{transform:scale(.92)}@keyframes vc-modal-mask-in{0%{opacity:0}to{opacity:1}}@keyframes vc-modal-mask-out{0%{opacity:1}to{opacity:0}}@keyframes vc-modal-panel-in{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes vc-modal-panel-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(12px) scale(.97)}}.vc-modal-mask{animation:vc-modal-mask-in .18s ease-out}.vc-modal-mask.vc-modal-out{animation:vc-modal-mask-out .16s ease-in forwards}.vc-modal-panel{animation:vc-modal-panel-in .26s cubic-bezier(.16,1,.3,1)}.vc-modal-panel.vc-modal-out{animation:vc-modal-panel-out .16s ease-in forwards}