*{box-sizing:border-box;margin:0;padding:0}body{font-family:PingFang SC,Microsoft YaHei,-apple-system,sans-serif;background:radial-gradient(1200px 600px at 20% -10%,#1d2740,#0b0e14 55%);color:#e8eaf2;min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column;padding:18px 20px 32px;max-width:1600px;margin:0 auto}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}header h1{font-size:24px;letter-spacing:2px}header h1 span{color:#6c8cff}.header-actions{display:flex;gap:10px;align-items:center}.header-actions a.btn{text-decoration:none}.workbench{display:flex;gap:14px;align-items:stretch;min-height:0}.library,.editor-pane{width:280px;flex-shrink:0;border-radius:14px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);padding:12px;display:flex;flex-direction:column;gap:8px;max-height:640px;overflow-y:auto}.editor-pane{width:420px}.zone-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.zone-head h2{font-size:14px;font-weight:600;color:#c8d4ff}.zone-head .hint{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hint{font-size:12px;color:#565c70}.center{flex:1;min-width:0;display:flex;flex-direction:column}.stage-wrap{position:relative;width:100%;border-radius:16px;overflow:hidden;box-shadow:0 20px 60px #0000008c,0 0 0 1px #ffffff0f}canvas.stage{display:block;width:100%;height:auto;background:#0b0e14}.face-bar{display:flex;gap:10px;align-items:center;margin-top:12px;flex-wrap:wrap}.time-display{font-size:13px;color:#c8d4ff;font-variant-numeric:tabular-nums;min-width:96px}.status{margin-top:10px;font-size:13px;color:#8a90a6;min-height:18px}.progress{position:absolute;left:0;right:0;bottom:0;height:28px;background:#0b0e14d9;display:flex;align-items:center}.progress .bar{position:absolute;left:0;top:0;bottom:0;background:#6c8cff59;transition:width .15s}.progress span{position:relative;padding-left:12px;font-size:12px;color:#c8d4ff}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(255,255,255,.14);background:#ffffff0f;color:#e8eaf2;padding:8px 14px;border-radius:10px;font-size:13px;cursor:pointer;transition:all .15s ease;display:inline-block}.btn:hover{background:#ffffff1f}.btn.primary{background:#6c8cff;border-color:#6c8cff;color:#0b0e14;font-weight:600}.btn.primary:hover{background:#86a0ff}.btn:disabled{opacity:.5;cursor:not-allowed}select.btn{padding-right:26px}.export-btn{padding:10px 22px;font-size:14px}.mini-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(255,255,255,.12);background:#ffffff0d;color:#c8d4ff;padding:3px 9px;border-radius:7px;font-size:12px;cursor:pointer;white-space:nowrap;display:inline-block}.mini-btn:hover{background:#ffffff1f}.mini-btn.danger:hover{color:#ff5252;border-color:#ff5252}.source-card{border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:10px;cursor:grab;transition:border-color .15s,background .15s;touch-action:none}.source-card:hover{background:#ffffff0a}.source-card.selected{border-color:#6c8cff;background:#6c8cff14}.source-card.dragging{cursor:grabbing}.sc-title{font-size:13px;margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sc-meta{display:flex;gap:8px;align-items:center;font-size:12px;color:#8a90a6}.subs-ok{color:#3ddc84}.subs-missing{color:#ff5252}.sc-meta .mini-btn{margin-left:auto}.trackbar{margin-top:14px;border-radius:14px;background:#ffffff0a;border:1px dashed rgba(255,255,255,.15);padding:12px 14px;transition:border-color .15s,background .15s}.trackbar.over{border-color:#6c8cff;background:#6c8cff14}.track-head{display:flex;align-items:baseline;gap:12px;margin-bottom:10px}.track-head h2{font-size:14px;font-weight:600;color:#c8d4ff}.track-lane{display:flex;gap:8px;overflow-x:auto;min-height:56px;align-items:stretch}.track-clip{position:relative;flex-shrink:0;border-radius:10px;background:#6c8cff29;border:1px solid rgba(108,140,255,.45);padding:8px 26px 8px 10px;display:flex;align-items:center;gap:6px;cursor:grab;font-size:12px;overflow:hidden;touch-action:none}.track-clip.dragging{cursor:grabbing}.tc-idx{color:#8a90a6}.tc-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tc-warn{color:#ff5252;font-size:11px;flex-shrink:0}.tc-del{position:absolute;right:4px;top:4px;border:none;background:transparent;color:#8a90a6;cursor:pointer;font-size:13px;padding:0 4px;border-radius:4px}.tc-del:hover{color:#ff5252}label.slider{display:flex;align-items:center;gap:8px;font-size:12px;color:#8a90a6;flex:1;min-width:180px}label.slider b{color:#e8eaf2;min-width:42px}label.slider input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;height:4px;border-radius:2px;background:#ffffff26;outline:none;cursor:pointer}label.slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:#6c8cff;cursor:pointer}.subtitle-editor{overflow:hidden;flex:1;display:flex;flex-direction:column;min-height:0}.se-header{display:flex;justify-content:space-between;align-items:center;padding:8px 4px;font-size:12px;color:#8a90a6;border-bottom:1px solid rgba(255,255,255,.08)}.se-shift{display:flex;align-items:center;gap:6px}.se-list{overflow-y:auto;padding:4px;flex:1}.se-row{display:flex;gap:6px;align-items:center;padding:3px 4px;border-radius:8px;cursor:pointer}.se-row:hover{background:#ffffff0f}.se-row input{padding:5px 8px;border-radius:7px;border:1px solid rgba(255,255,255,.1);background:#0000004d;color:#e8eaf2;font-size:13px;outline:none}.se-row input:focus{border-color:#6c8cff}.se-row .t{width:68px}.se-row .w{flex:1;min-width:60px}.se-row .del{border:none;background:transparent;color:#565c70;font-size:15px;cursor:pointer;padding:2px 8px;border-radius:6px}.se-row .del:hover{color:#ff5252;background:#ff52521a}footer{margin-top:20px;color:#565c70;font-size:12px;text-align:center;line-height:1.8}footer code{background:#ffffff14;padding:2px 6px;border-radius:6px}footer a{color:#6c8cff;text-decoration:none}footer a:hover{text-decoration:underline}@media (max-width: 1100px){.workbench{flex-direction:column}.library,.editor-pane{width:100%;max-height:none}}
