@import"https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg: #F0F4F8;--bg-panel: #FFF;--bg-elevated: #FFF;--fg: #333;--fg-dim: #666;--fg-muted: #999;--accent: #4A6FA5;--accent-hover: #3D5D8A;--accent-soft: rgba(74, 111, 165, .1);--ok: #5CB85C;--warn: #F5A623;--err: #E94560;--border: #E0E0E0;--hover: #F0F5FA;--radius: 10px;--radius-pill: 999px;--shadow: 0 1px 4px rgba(0, 0, 0, .06);--transition: .15s ease;--font: "Montserrat", -apple-system, sans-serif;--font-mono: "JetBrains Mono", monospace}[data-theme=dark]{--bg: #1a1a2e;--bg-panel: #16213e;--bg-elevated: #16213e;--fg: #e0e0e0;--fg-dim: #a0a0b0;--fg-muted: #6a6a8a;--accent: #6b8fc7;--accent-hover: #5a82be;--accent-soft: rgba(107, 143, 199, .12);--ok: #4caf50;--warn: #f5a623;--err: #e94560;--border: #2a2a4a;--hover: #1f2b4d;--shadow: 0 1px 4px rgba(0, 0, 0, .3)}*{box-sizing:border-box}html,body,#root,.app-root{margin:0;padding:0;height:100%;background:var(--bg);color:var(--fg);font-family:var(--font);-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}input,select,textarea{font-family:inherit;color:inherit}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--fg-muted)}.app-root{display:flex;flex-direction:column;overflow:hidden}.btn-primary{background:var(--accent);color:#000;border:none;padding:12px 22px;border-radius:var(--radius);font-weight:700;font-size:15px;transition:filter .15s ease}.btn-primary:hover{filter:brightness(1.1)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--fg);border:1px solid var(--border);padding:8px 14px;border-radius:var(--radius);font-size:13px}.btn-ghost:hover{background:var(--bg-elevated)}.btn-danger{background:var(--err);color:#000;border:none;padding:8px 14px;border-radius:var(--radius);font-weight:600}.btn-danger-ghost{background:transparent;color:var(--err);border:1px solid var(--err);padding:8px 14px;border-radius:var(--radius)}.startup{display:flex;flex-direction:column;height:100vh;overflow:hidden}.startup-header{display:flex;align-items:center;justify-content:space-between;padding:14px 22px;border-bottom:1px solid var(--border);background:var(--bg-panel);gap:16px;flex-wrap:wrap}.startup-logo{font-weight:800;font-size:17px;letter-spacing:.2px}.startup-controls{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.field-row{display:flex;flex-direction:column;gap:4px}.field-row.wide{flex:1 1 100%}.field-row label{font-size:11px;color:var(--fg-dim);text-transform:uppercase;letter-spacing:.06em}.field-row input,.field-row select{background:var(--bg-elevated);color:var(--fg);border:1px solid var(--border);border-radius:6px;padding:6px 10px;min-width:180px;font-size:13px}.startup-body{display:flex;flex:1;overflow:hidden}.script-list-panel{width:30%;min-width:280px;max-width:480px;border-right:1px solid var(--border);background:var(--bg-panel);display:flex;flex-direction:column;overflow:hidden}.script-list-header{padding:16px 18px;border-bottom:1px solid var(--border)}.script-list-header h2{margin:0 0 10px;font-size:15px}.search-input{width:100%;background:var(--bg);color:var(--fg);border:1px solid var(--border);border-radius:6px;padding:8px 10px;font-size:13px}.script-list{overflow:auto;padding:8px;flex:1;min-height:0}.script-row{display:block;text-align:left;width:100%;background:transparent;border:1px solid transparent;padding:12px 14px;border-radius:8px;margin-bottom:4px;color:var(--fg)}.script-row:hover{background:var(--bg-elevated)}.script-row.selected{background:var(--accent-soft);border-color:var(--accent)}.script-row-title{font-weight:600;font-size:14px;margin-bottom:4px}.script-row-meta{display:flex;flex-wrap:wrap;gap:10px;font-size:11px;color:var(--fg-dim)}.status-tag{padding:1px 8px;border-radius:999px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;font-size:10px;background:var(--bg-elevated);color:var(--fg-dim)}.status-tag.status-ready{background:#34d39926;color:var(--ok)}.status-tag.status-draft{background:#fbbf2426;color:var(--warn)}.preview-panel{flex:1;display:flex;flex-direction:column;padding:22px;gap:16px;overflow:auto}.preview-header{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--fg-dim)}.pill{padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600;background:var(--bg-elevated)}.pill-ok{background:#34d39926;color:var(--ok)}.pill-warn{background:#fbbf2426;color:var(--warn)}.preview-stage{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);flex:1;min-height:280px;max-height:62vh;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.preview-placeholder{position:absolute;inset:0}.preview-checker{position:absolute;inset:0;background-image:linear-gradient(45deg,#1e1e26 25%,transparent 25%),linear-gradient(-45deg,#1e1e26 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#1e1e26 75%),linear-gradient(-45deg,transparent 75%,#1e1e26 75%);background-size:24px 24px;background-position:0 0,0 12px,12px -12px,-12px 0px;background-color:#0f0f14}.preview-message{position:relative;text-align:center;padding:20px 30px;max-width:520px;margin:0 auto;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:10px;color:var(--fg)}.preview-message strong{font-size:15px}.preview-message span{color:var(--fg-dim);font-size:13px;line-height:1.5}.preview-footer{display:flex;gap:16px;justify-content:space-between;align-items:flex-end;flex-wrap:wrap}.preview-footer>div{flex:1;min-width:280px}.hint{color:var(--fg-dim);font-size:12px;padding:8px 0}.error-box{padding:12px;background:#f871711a;border:1px solid var(--err);border-radius:8px;color:var(--err);font-size:12px}.teleprompter{background:#000;color:#fff;display:flex;flex-direction:column;height:100vh;padding:24px 40px;position:relative}.teleprompter.empty{align-items:center;justify-content:center}.telepr-exit-btn{background:#ffffff1a;color:#ccc;border:1px solid #444;border-radius:6px;padding:4px 12px;font-size:12px;cursor:pointer}.telepr-exit-btn:hover{background:#fff3;color:#fff}.telepr-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.telepr-top-controls{display:flex;align-items:center;gap:8px}.progress{font-size:14px;color:#ccc}.progress .headline{color:#888}.rec-indicator{display:flex;align-items:center;gap:10px;font-size:13px}.rec-dot{width:14px;height:14px;border-radius:50%;background:#ff3b3b;animation:pulse 1s infinite alternate}@keyframes pulse{0%{opacity:1}to{opacity:.4}}.rec-label{color:#ff3b3b;font-weight:700;letter-spacing:.06em}.rec-time{color:#ccc;font-variant-numeric:tabular-nums}.saved-label{color:var(--ok);font-weight:600}.idle-label{color:#888}.preview-mini{width:320px;aspect-ratio:4 / 3;border:1px solid #333;border-radius:8px;overflow:hidden;position:relative}.preview-mini-inner{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.preview-mini-label{position:relative;font-size:11px;color:#888;background:#0009;padding:4px 8px;border-radius:4px}.telepr-main{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:0 10%}.speaker-badge{display:inline-block;background:var(--accent);color:#000;font-weight:800;letter-spacing:.2em;padding:6px 18px;border-radius:999px;font-size:14px;margin-bottom:28px}.current-line{font-size:clamp(40px,6vw,72px);line-height:1.22;font-weight:600;max-width:1100px;color:#fff;transition:font-size .12s ease}.editable-word{cursor:text;border-radius:4px;padding:0 1px;transition:background .1s ease}.editable-word:hover{background:#ff7a1a40;outline:1px dashed rgba(255,122,26,.6)}.editable-word-input{font:inherit;background:#ff7a1a2e;color:#fff;border:2px solid var(--accent);border-radius:4px;padding:0 4px;outline:none;min-width:2ch}.pace-control{display:flex;align-items:center;gap:6px;padding:2px 8px;background:#1a1a22;border:1px solid #333;border-radius:6px;margin-left:auto}.pace-btn{background:transparent;color:#ddd;border:1px solid #444;border-radius:4px;width:24px;height:24px;font-size:14px;cursor:pointer}.pace-btn:hover{background:#2a2a33;color:#fff}.pace-value{color:var(--accent);font-variant-numeric:tabular-nums;font-weight:600;font-size:12px;min-width:34px;text-align:center}.save-state{font-size:11px;padding:2px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.06em}.save-idle{color:var(--fg-dim)}.save-saving{color:var(--warn)}.save-saved{color:var(--ok)}.save-error{color:var(--err)}.stage-direction{margin-top:18px;color:#888;font-size:18px;max-width:900px}.upcoming{margin-top:48px;display:flex;flex-direction:column;gap:10px;max-width:900px}.upcoming-line{font-size:clamp(18px,2vw,24px);color:#666;opacity:.5}.upcoming-line.upcoming-1{opacity:.3}.u-speaker{display:inline-block;color:var(--accent);margin-right:10px;font-weight:700;font-size:.8em}.telepr-footer{display:flex;justify-content:center;gap:28px;padding-top:20px;font-size:12px;color:#888}.hotkey kbd{background:#1a1a22;border:1px solid #333;border-radius:4px;padding:2px 8px;margin-right:4px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11px;color:#ddd}.summary{display:flex;flex-direction:column;height:100vh;overflow:hidden}.summary-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 28px;border-bottom:1px solid var(--border);background:var(--bg-panel);gap:16px;flex-wrap:wrap}.summary-header h2{margin:0 0 6px;font-size:18px}.summary-actions{display:flex;gap:10px;flex-wrap:wrap}.summary-body{flex:1;min-height:0;overflow:auto;padding:20px 28px}.clip-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.clip-row{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);padding:14px;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:start}.clip-row.status-uploaded{border-color:#34d39966}.clip-row.status-failed{border-color:#f8717166}.clip-row.status-uploading{border-color:#fbbf2466}.clip-meta{min-width:0}.clip-title{margin-bottom:6px;font-size:14px}.clip-title .clip-line{color:var(--fg-dim);font-weight:400}.clip-submeta{display:flex;flex-wrap:wrap;gap:14px;font-size:11px;color:var(--fg-dim);text-transform:uppercase;letter-spacing:.06em}.clip-status{color:var(--fg)}.status-uploaded .clip-status{color:var(--ok)}.status-failed .clip-status{color:var(--err)}.status-uploading .clip-status{color:var(--warn)}.error-text{color:var(--err);font-size:11px;margin-top:6px}.clip-player-wrap{grid-column:1 / -1;position:relative;background:#0f0f14;border-radius:6px;overflow:hidden;aspect-ratio:16/9;max-height:360px}.clip-player-wrap .preview-checker{position:absolute;inset:0}.clip-player{position:relative;width:100%;height:100%;background:transparent}.summary-footer{display:flex;gap:12px;align-items:center;padding:14px 28px;border-top:1px solid var(--border);background:var(--bg-panel)}.warn-text{color:var(--warn);font-size:13px}.summary-export-wrap{position:relative;display:flex}.summary-export-wrap .btn-primary{border-radius:var(--radius) 0 0 var(--radius)}.summary-export-chevron{background:var(--accent);color:#000;border:none;border-left:1px solid rgba(0,0,0,.15);border-radius:0 var(--radius) var(--radius) 0;padding:0 10px;font-size:13px;cursor:pointer}.summary-export-chevron:hover{filter:brightness(1.1)}.summary-export-chevron:disabled{opacity:.6;cursor:not-allowed}.summary-export-dropdown{position:absolute;top:calc(100% + 6px);right:0;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px #0003;min-width:280px;z-index:100;overflow:hidden}.export-opt{display:flex;flex-direction:column;gap:3px;text-align:left;padding:12px 16px;width:100%;background:transparent;border:none;border-bottom:1px solid var(--border);cursor:pointer;color:var(--fg)}.export-opt:last-child{border-bottom:none}.export-opt:hover{background:var(--hover)}.export-opt.active{background:var(--accent-soft)}.export-opt strong{font-size:13px;font-weight:700}.export-opt span{font-size:12px;color:var(--fg-dim)}.toasts{position:fixed;bottom:20px;right:20px;display:flex;flex-direction:column;gap:8px;z-index:9999;max-width:360px}.toast{background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:12px 16px;font-size:13px;color:var(--fg);cursor:pointer;box-shadow:0 8px 24px #0006}.toast-warn{border-color:var(--warn)}.toast-error{border-color:var(--err)}.selfview-panel{position:fixed;z-index:500;background:#0b0b0e;border:2px solid #333;border-radius:10px;overflow:hidden;box-shadow:0 12px 36px #0009;display:flex;flex-direction:column;touch-action:none;cursor:grab;transition:border-color .15s ease}.selfview-panel:active{cursor:grabbing}.selfview-recording{border-color:#ff3b3b;box-shadow:0 0 0 3px #ff3b3b66,0 12px 36px #0009;animation:recBorderPulse 1s infinite alternate}@keyframes recBorderPulse{0%{box-shadow:0 0 0 3px #ff3b3bcc,0 12px 36px #0009}to{box-shadow:0 0 0 3px #ff3b3b40,0 12px 36px #0009}}.selfview-header{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;background:#000000bf;color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.1em;z-index:2}.selfview-title{opacity:.85}.selfview-header-actions{display:flex;gap:4px}.selfview-btn{background:transparent;color:#ddd;border:1px solid #555;border-radius:4px;padding:2px 8px;font-size:11px;cursor:pointer}.selfview-btn:hover{background:#ffffff1a}.selfview-body{position:relative;flex:1;overflow:hidden;background:#0a0a0d}.selfview-checker{position:absolute;inset:0;background-image:linear-gradient(45deg,#1e1e26 25%,transparent 25%),linear-gradient(-45deg,#1e1e26 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#1e1e26 75%),linear-gradient(-45deg,transparent 75%,#1e1e26 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0;background-color:#0f0f14}.selfview-video{position:absolute;top:0;left:0;width:100%;height:200%;object-fit:cover;object-position:top;background:transparent}.selfview-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px;text-align:center;font-size:13px;backdrop-filter:blur(2px)}.selfview-overlay-info{background:#00000080;color:#ddd}.selfview-overlay-warn{background:#fbbf2433;color:#fde68a;font-weight:600;align-items:center;justify-content:flex-start;padding-top:20px}.selfview-overlay-error{background:#f8717140;color:#fecaca}.selfview-error-text{margin-bottom:12px;font-weight:600}.selfview-retry-btn{background:#f87171;color:#000;border:none;border-radius:6px;padding:6px 14px;font-weight:700;cursor:pointer;font-size:12px}.selfview-device-select{margin-top:10px;max-width:90%;padding:4px 6px;background:#1a1a22;color:#fff;border:1px solid #555;border-radius:4px;font-size:11px}.selfview-footer{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;padding:4px 10px;background:#000000b3;font-size:10px;color:#ccc;z-index:2;letter-spacing:.05em}.selfview-fps{font-variant-numeric:tabular-nums}.fps-ok{color:#34d399}.fps-warn{color:#fbbf24}.fps-bad{color:#f87171}.selfview-rec-label{color:#ff3b3b;font-weight:700;animation:recTextPulse 1s infinite alternate}@keyframes recTextPulse{0%{opacity:1}to{opacity:.4}}.selfview-docked{box-sizing:border-box;overflow:hidden;pointer-events:none}.selfview-docked-video{position:absolute;top:0;left:0;width:100%;height:200%;object-fit:cover;object-position:top;object-position:center bottom;pointer-events:none}.selfview-docked-recording{outline:4px solid #ff3b3b;outline-offset:-4px;animation:dockedRecPulse 1s infinite alternate}@keyframes dockedRecPulse{0%{outline-color:#ff3b3b}to{outline-color:#ff3b3b4d}}.selfview-docked-status{position:absolute;top:10%;left:50%;transform:translate(-50%);padding:6px 14px;background:#000000b3;color:#fff;font-size:11px;border-radius:4px;text-transform:uppercase;letter-spacing:.08em}.selfview-docked-frozen{background:#fbbf24d9;color:#000}.selfview-docked-error{background:#f87171e6;color:#000}.selfview-docked-fps{position:absolute;bottom:6px;left:10px;padding:2px 8px;background:#000000a6;border-radius:4px;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-variant-numeric:tabular-nums}.scene-preview-root{position:fixed;inset:0;background:#000;z-index:0}.teleprompter-scene{position:relative;width:100vw;height:100vh;background:#000;overflow:hidden}.teleprompter-scene .telepr-top,.teleprompter-scene .telepr-footer,.teleprompter-scene .telepr-main{position:relative;z-index:10}.teleprompter-scene .telepr-main .current-line{background:#0000008c;padding:20px 32px;border-radius:12px;backdrop-filter:blur(4px);max-width:80%}.scene-selector{display:flex;align-items:center;gap:6px;padding:2px 8px;background:#14141bd9;border:1px solid #333;border-radius:6px}.scene-selector select{background:transparent;color:#ddd;border:none;font-size:12px;outline:none;cursor:pointer}.scene-selector label{color:#888;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.preview-mode-toggle{display:flex;gap:2px;background:#14141bd9;border:1px solid #333;border-radius:6px;padding:2px}.preview-mode-toggle button{background:transparent;color:#888;border:none;padding:4px 10px;font-size:11px;cursor:pointer;border-radius:4px;text-transform:uppercase;letter-spacing:.06em}.preview-mode-toggle button.active{background:var(--accent);color:#000;font-weight:700}.edit-scene-toggle{background:#14141bd9;color:#ddd;border:1px solid #333;border-radius:6px;padding:4px 12px;font-size:11px;cursor:pointer;text-transform:uppercase;letter-spacing:.06em}.edit-scene-toggle.active{background:#ff8a1a;color:#000;border-color:#ff8a1a;font-weight:700}.scene-editor-overlay{pointer-events:auto;user-select:none}.scene-editor-overlay *,.scene-editor-overlay *:before,.scene-editor-overlay *:after{user-select:none}.scene-editor-overlay .scene-editor-hit:hover{border-color:#ff8a1a!important}.teleprompter-editing .telepr-main,.teleprompter-editing .telepr-footer{pointer-events:none;user-select:none}.teleprompter-editing .telepr-main .pace-control,.teleprompter-editing .telepr-footer .pace-control,.teleprompter-editing .telepr-top{pointer-events:auto}.teleprompter-editing .telepr-main .current-line,.teleprompter-editing .telepr-main .upcoming,.teleprompter-editing .telepr-main .speaker-badge,.teleprompter-editing .telepr-main .stage-direction{opacity:.35}.selfview-pill{position:fixed;z-index:500;background:#000000d9;color:#fff;border:1px solid #555;border-radius:999px;padding:8px 16px;font-size:12px;cursor:pointer;box-shadow:0 8px 20px #00000080;user-select:none}.selfview-pill:hover{background:#1e1e1ef2}.streaming-screen{display:flex;flex-direction:column;height:100%;overflow:hidden}.streaming-header{display:flex;align-items:center;justify-content:space-between;padding:10px 22px;border-bottom:1px solid var(--border);background:var(--bg-panel)}.stream-timer{font-variant-numeric:tabular-nums;font-weight:700;font-size:15px;color:var(--err)}.streaming-body{display:flex;flex:1;overflow:hidden}.streaming-main{flex:1;display:flex;align-items:center;justify-content:center;background:#000;position:relative}.streaming-side{width:340px;border-left:1px solid var(--border);background:var(--bg-panel);overflow-y:auto;display:flex;flex-direction:column;gap:0}.side-card{padding:12px 16px;border-bottom:1px solid var(--border)}.side-card-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--fg-dim);margin-bottom:8px}.side-input{width:100%;background:var(--bg-elevated);color:var(--fg);border:1px solid var(--border);border-radius:6px;padding:6px 10px;font-size:13px;outline:none}.side-input:focus{border-color:var(--accent)}.stream-btns{display:flex;flex-direction:column;gap:6px}.stream-toggle{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--fg);font-size:13px;font-weight:600;width:100%;text-align:left;transition:border-color .2s,background .2s}.stream-toggle:hover{border-color:var(--accent)}.stream-toggle.active{border-color:var(--err);background:#f8717114}.stream-dot{width:10px;height:10px;border-radius:50%;background:#444;flex-shrink:0}.stream-dot.live{background:var(--err);animation:pulse 1.5s infinite}.stream-time{margin-left:auto;font-size:12px;color:var(--fg-dim);font-variant-numeric:tabular-nums}.mic-select{flex:1;background:var(--bg-elevated);color:var(--fg);border:1px solid var(--border);border-radius:6px;padding:6px 8px;font-size:12px;min-width:0}.mute-btn{width:32px;height:32px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--fg);font-size:16px;cursor:pointer;flex-shrink:0}.mute-btn.muted{color:var(--err);border-color:var(--err)}.vu-bar{height:6px;background:var(--bg-elevated);border-radius:3px;overflow:hidden;margin-top:6px}.vu-fill{height:100%;border-radius:3px;transition:width .05s linear;background:var(--ok)}.vu-fill.vu-warn{background:var(--warn)}.vu-fill.vu-danger{background:var(--err)}.vu-canvas{background:var(--bg-elevated);border:1px solid var(--border)}.side-card-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted, #8a8a90);margin:10px 0 4px}.schedule-list{display:flex;flex-direction:column;gap:4px;max-height:240px;overflow-y:auto}.schedule-row{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:5px;background:var(--bg-elevated);border:1px solid var(--border);cursor:pointer}.schedule-row:hover{background:var(--bg-panel)}.schedule-row-main{flex:1;min-width:0}.schedule-row-title{font-size:12px;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-row-time{font-size:10px;color:var(--fg-muted, #8a8a90);margin-top:1px}.schedule-row-cancel{border:none;background:transparent;color:var(--fg-muted, #8a8a90);font-size:16px;line-height:1;padding:2px 6px;cursor:pointer;border-radius:3px;flex-shrink:0}.schedule-row-cancel:hover{color:var(--err);background:#ffffff0a}.search-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--bg-elevated);border:1px solid var(--border);border-radius:6px;max-height:260px;overflow-y:auto;z-index:100;margin-top:2px}.search-dropdown-item{padding:8px 10px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:13px}.search-dropdown-item:hover{background:var(--bg-panel)}.search-dropdown-item img{width:36px;height:36px;object-fit:cover;border-radius:4px;flex-shrink:0}.watchalong-selected{margin-top:8px}.watchalong-thumb{width:40px;height:56px;object-fit:cover;border-radius:4px}.ep-input{width:50px;text-align:center;background:var(--bg-elevated);color:var(--fg);border:1px solid var(--border);border-radius:4px;padding:2px 4px;font-size:13px}.showing-types{display:flex;flex-wrap:wrap;gap:4px}.showing-type-btn{padding:3px 8px;border:1px solid var(--border);border-radius:4px;background:transparent;color:var(--fg-dim);font-size:11px;text-transform:capitalize;cursor:pointer}.showing-type-btn.active{background:var(--accent);color:#000;border-color:var(--accent);font-weight:700}.showing-current{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding:6px 8px;background:var(--bg-elevated);border-radius:6px;font-size:13px}.side-card-chat{flex:1;display:flex;flex-direction:column;min-height:120px}.chat-scroll{flex:1;overflow-y:auto;max-height:200px;min-height:60px}.chat-msg{font-size:13px;margin-bottom:4px;line-height:1.4}.chat-nick{font-weight:700;color:var(--accent);margin-right:6px}.chat-form{display:flex;gap:4px;margin-top:6px}.chat-form input{flex:1}.video-container{position:relative;width:100%;height:100%}.main-video{width:100%;height:100%;background:#000;outline:none}.spout-overlay-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;z-index:10}.video-container ::cue{font-size:22px;line-height:1.3;color:#fff}.sub-outline ::cue{background:none;text-shadow:1px 1px 2px #000,-1px -1px 2px #000,1px -1px 2px #000,-1px 1px 2px #000,0 0 8px #000}.sub-bg ::cue{background:#000000bf;padding:2px 6px;border-radius:2px}.bar-select{background:#0009;color:var(--fg);border:1px solid #555;border-radius:4px;padding:2px 6px;font-size:11px;max-width:120px}.main-video-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer;color:var(--fg-dim);font-size:14px;width:100%;height:100%}.main-video-empty:hover{color:var(--fg)}.main-video-empty-icon{font-size:48px;opacity:.3}.main-video-bar{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:6px 12px;background:#000c;font-size:12px}.main-video-filename{color:var(--fg-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;margin-right:8px}.obs-preview-box{aspect-ratio:16/9;background:#000;border-radius:6px;overflow:hidden;position:relative}.obs-preview-img{width:100%;height:100%;object-fit:contain}.obs-preview-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--fg-dim);font-size:12px}.scene-bar{display:flex;flex-wrap:wrap;gap:4px}.scene-btn{padding:5px 10px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--fg-dim);font-size:12px;cursor:pointer}.scene-btn:hover{background:var(--bg-elevated);color:var(--fg)}.scene-btn.active{background:var(--accent);color:#000;border-color:var(--accent);font-weight:700}.stream-dot-sm.rec{background:var(--err);animation:pulse 1s infinite alternate}.status-row{display:flex;align-items:center;gap:12px;margin-top:8px;font-size:12px;color:var(--fg-dim)}.status-indicator{display:flex;align-items:center;gap:5px}.stream-dot-sm{width:8px;height:8px;border-radius:50%;background:#444}.stream-dot-sm.live{background:var(--ok)}.status-timer{font-variant-numeric:tabular-nums}.watchalong-info{display:flex;gap:10px;align-items:flex-start}.watchalong-poster{width:56px;height:80px;object-fit:cover;border-radius:4px;flex-shrink:0}.change-link{color:var(--accent);font-size:12px;cursor:pointer;margin-top:2px;display:inline-block}.change-link:hover{text-decoration:underline}.episode-nav{display:flex;align-items:center;gap:6px;margin-top:8px}.ep-btn{width:28px;height:28px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--fg);cursor:pointer;font-size:12px;display:flex;align-items:center;justify-content:center}.ep-btn:hover{background:var(--bg-elevated)}.ep-label{font-size:12px;color:var(--fg-dim);font-weight:600}.showing-active{margin-bottom:8px}.showing-preview-img{width:100%;max-height:120px;object-fit:contain;border-radius:6px;margin-top:6px;background:var(--bg)}.show-on-stream-label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--fg-dim);margin-top:6px;cursor:pointer}.show-on-stream-label input{accent-color:var(--accent)}.showing-btns{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.showing-push-btn,.showing-end-btn{padding:8px;font-size:13px;font-weight:600;border-radius:6px;border:none;cursor:pointer}.queue-section{margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.card-accent{border-left:3px solid var(--accent)}.card-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--border)}.card-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--fg-dim);display:flex;align-items:center;gap:6px}.card-title:before{content:"";width:3px;height:12px;border-radius:1px;background:var(--accent);flex-shrink:0}.card-body{padding:10px 12px}.pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--radius-pill);font-size:11px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;background:var(--hover);color:var(--fg-dim);border:none;cursor:pointer;transition:background var(--transition),color var(--transition)}.pill:hover{background:var(--accent-soft);color:var(--accent)}.pill.active,.pill-active{background:var(--accent);color:#fff;border-color:var(--accent)}.pill-ok{background:#5cb85c1a;color:var(--ok)}.pill-warn{background:#f5a6231a;color:var(--warn)}.pill-err{background:#e945601a;color:var(--err)}.chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);font-size:11px;font-weight:600}.chip-x{font-size:14px;cursor:pointer;opacity:.5;line-height:1}.chip-x:hover{opacity:1}.chip-input{display:flex;flex-wrap:wrap;gap:4px;padding:4px 8px;border:1px solid var(--border);border-radius:6px;background:var(--bg);min-height:32px;align-items:center}.chip-input:focus-within{border-color:var(--accent)}.chip-input input{border:none;background:none;outline:none;font-size:13px;min-width:60px;flex:1;padding:0;color:var(--fg)}.toggle-switch{width:36px;height:20px;border-radius:10px;position:relative;cursor:pointer;transition:background var(--transition);flex-shrink:0;border:none}.toggle-switch.on{background:var(--ok)}.toggle-switch.off{background:#ccc}[data-theme=dark] .toggle-switch.off{background:#444}.toggle-switch-knob{width:16px;height:16px;border-radius:50%;background:#fff;position:absolute;top:2px;transition:left var(--transition);box-shadow:0 1px 2px #0003}.toggle-switch.on .toggle-switch-knob{left:18px}.toggle-switch.off .toggle-switch-knob{left:2px}.drop-zone{border:2px dashed var(--border);border-radius:var(--radius);padding:24px;text-align:center;color:var(--fg-muted);cursor:pointer;transition:border-color var(--transition),color var(--transition),background var(--transition);display:flex;flex-direction:column;align-items:center;gap:8px}.drop-zone:hover,.drop-zone.dragover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.drop-zone-icon{font-size:28px;opacity:.6}.vu-meter{width:100%;height:6px;background:var(--bg);border-radius:3px;overflow:hidden;border:1px solid var(--border)}.vu-meter-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,var(--ok) 0%,var(--ok) 55%,var(--warn) 75%,var(--err) 95%);transition:width .05s linear}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;display:inline-block}.status-dot-ok{background:var(--ok)}.status-dot-warn{background:var(--warn)}.status-dot-err{background:var(--err)}.status-dot-off{background:var(--fg-muted)}.status-dot-live{background:var(--err);animation:status-pulse 1.5s ease infinite}@keyframes status-pulse{0%,to{opacity:1}50%{opacity:.4}}.search-input{width:100%;background:var(--bg);color:var(--fg);border:1px solid var(--border);border-radius:6px;padding:8px 10px 8px 32px;font-size:13px;outline:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='M21 21l-4.35-4.35'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:10px center}.search-input:focus{border-color:var(--accent)}.multi-select-picker{position:relative}.multi-select-picker-input{display:flex;flex-wrap:wrap;gap:4px;padding:4px 8px;border:1px solid var(--border);border-radius:6px;background:var(--bg);min-height:34px;align-items:center;cursor:text}.multi-select-picker-input:focus-within{border-color:var(--accent)}.multi-select-picker-input input{border:none;background:none;outline:none;font-size:13px;min-width:80px;flex:1;padding:2px 0;color:var(--fg)}.multi-select-picker-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--bg-elevated);border:1px solid var(--border);border-radius:6px;max-height:200px;overflow-y:auto;z-index:100;margin-top:2px;box-shadow:0 4px 12px #0000001a}.multi-select-picker-option{padding:8px 12px;cursor:pointer;font-size:13px;display:flex;align-items:center;gap:8px}.multi-select-picker-option:hover{background:var(--hover)}.multi-select-picker-option.selected{background:var(--accent-soft);color:var(--accent);font-weight:600}.grip-handle{display:grid;grid-template-columns:repeat(2,3px);gap:2px;cursor:grab;opacity:.25;padding:4px 2px}.grip-handle:hover{opacity:.6}.grip-handle-dot{width:3px;height:3px;border-radius:50%;background:var(--fg-dim)}.node-card{position:absolute;width:160px;background:var(--bg-elevated);border:2px solid;border-radius:8px;overflow:hidden;box-shadow:var(--shadow);cursor:move}.node-card-header{padding:4px 10px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#fff}.node-card-body{padding:8px 10px;font-size:12px}.node-card-trigger{border-color:#8b6914}.node-card-trigger .node-card-header{background:#8b6914}.node-card-say{border-color:var(--accent)}.node-card-say .node-card-header{background:var(--accent)}.node-card-choice{border-color:#7b68ee}.node-card-choice .node-card-header{background:#7b68ee}.node-card-condition{border-color:var(--warn)}.node-card-condition .node-card-header{background:var(--warn)}.node-card-random{border-color:#20b2aa}.node-card-random .node-card-header{background:#20b2aa}.node-card-action{border-color:var(--ok)}.node-card-action .node-card-header{background:var(--ok)}.node-card-end{border-color:var(--err)}.node-card-end .node-card-header{background:var(--err)}.timeline-track{border-top:1px solid #222;background:#000000b3;flex-shrink:0;overflow:hidden}.timeline-ruler{padding:0 8px;border-bottom:1px solid #333;height:18px;position:relative;background:#0000004d;min-width:500px;display:flex;align-items:flex-end}.timeline-ruler-mark{position:absolute;bottom:0;font-size:9px;color:#444;font-family:var(--font-mono);border-left:1px solid #333;padding-left:3px;height:100%;display:flex;align-items:flex-end}.timeline-tracks{overflow:auto;max-height:120px;min-width:500px}.timeline-row{display:flex;align-items:stretch;min-height:24px;border-bottom:1px solid #1a1a1a}.timeline-row-label{width:60px;padding:0 6px;font-size:9px;font-weight:600;color:#444;text-transform:uppercase;flex-shrink:0;border-right:1px solid #2a2a2a;display:flex;align-items:center}.timeline-row-area{flex:1;position:relative;min-height:24px}.timeline-block{position:absolute;top:3px;height:18px;border-radius:3px;font-size:9px;font-weight:600;display:flex;align-items:center;padding:0 6px;cursor:move;border:1px solid;overflow:hidden;white-space:nowrap}.timeline-playhead{position:absolute;top:0;bottom:0;width:1px;background:var(--err);z-index:10}.hub-titlebar{height:36px;display:flex;align-items:center;background:var(--bg-panel);border-bottom:1px solid var(--border);-webkit-app-region:drag;user-select:none;flex-shrink:0}.hub-titlebar-left{display:flex;align-items:center;gap:6px;padding-left:14px;flex:1;min-width:0}.hub-titlebar-logo{font-size:13px;font-weight:700;color:var(--accent);letter-spacing:.02em}.hub-titlebar-pills{display:flex;align-items:center;gap:4px;-webkit-app-region:no-drag;margin-left:12px}.hub-titlebar-pill{display:flex;align-items:center;gap:4px;height:22px;padding:0 8px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--hover);color:var(--fg-dim);font-size:10px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background var(--transition)}.hub-titlebar-pill:hover{background:var(--accent-soft);color:var(--fg)}.hub-titlebar-controls{display:flex;-webkit-app-region:no-drag}.hub-titlebar-btn{width:46px;height:36px;border:none;background:none;color:var(--fg-dim);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:background var(--transition)}.hub-titlebar-btn:hover{background:var(--hover);color:var(--fg)}.hub-titlebar-btn.close:hover{background:var(--err);color:#fff}.hub-layout{display:flex;flex:1;overflow:hidden}.hub-sidebar{width:52px;background:var(--bg-panel);border-right:1px solid var(--border);display:flex;flex-direction:column;align-items:center;flex-shrink:0;padding:6px 0;transition:width .2s ease;overflow:hidden}.hub-sidebar:hover{width:180px}.hub-sidebar-nav{flex:1;width:100%;display:flex;flex-direction:column;gap:2px;padding:4px 0}.hub-sidebar-group-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--fg-muted);padding:8px 0 2px 16px;white-space:nowrap;overflow:hidden;opacity:0;transition:opacity .15s ease}.hub-sidebar:hover .hub-sidebar-group-label{opacity:1}.hub-nav-item{display:flex;align-items:center;gap:10px;padding:8px 14px;color:var(--fg-dim);cursor:pointer;font-size:13px;border:none;background:none;width:100%;text-align:left;white-space:nowrap;position:relative;transition:background var(--transition),color var(--transition)}.hub-nav-item:hover{background:var(--hover);color:var(--fg)}.hub-nav-item.active{color:var(--fg);background:var(--accent-soft);font-weight:600}.hub-nav-item.active:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:3px;border-radius:0 2px 2px 0;background:var(--accent)}.hub-nav-icon{width:22px;height:22px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.hub-nav-icon svg{width:18px;height:18px}.hub-nav-label{overflow:hidden;opacity:0;transition:opacity .15s ease}.hub-sidebar:hover .hub-nav-label{opacity:1}.hub-nav-badge{margin-left:auto;display:flex;align-items:center}.hub-sidebar-bottom{width:100%;border-top:1px solid var(--border);padding-top:6px;display:flex;flex-direction:column;gap:2px}.hub-sidebar-avatar{width:28px;height:28px;border-radius:50%;background:var(--accent-soft);border:1px solid var(--accent);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;color:var(--accent);flex-shrink:0;margin:4px auto}.hub-content{flex:1;overflow:auto}.login-wrap{flex:1;display:flex;align-items:center;justify-content:center;background:var(--bg)}.login-card{width:380px;padding:48px 36px;background:var(--bg-panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 4px 24px #00000014;display:flex;flex-direction:column;gap:14px}.login-logo{font-size:32px;font-weight:800;color:var(--accent);text-align:center;margin-bottom:2px;letter-spacing:-.02em}.login-sub{font-size:13px;color:var(--fg-dim);text-align:center;margin-bottom:10px}.login-server-url{display:flex;align-items:center;gap:6px;padding:6px 10px;background:var(--bg);border:1px solid var(--border);border-radius:6px;font-size:11px;color:var(--fg-muted);cursor:pointer;transition:border-color var(--transition)}.login-server-url:hover{border-color:var(--accent);color:var(--fg-dim)}.login-server-url input{flex:1;border:none;background:none;outline:none;font-size:11px;color:var(--fg-dim);font-family:var(--font-mono)}.login-server-url-label{font-weight:600;color:var(--fg-dim);flex-shrink:0}.login-input{width:100%;padding:10px 14px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--fg);font-size:14px;outline:none;transition:border-color var(--transition)}.login-input:focus{border-color:var(--accent)}.login-error{background:#e945601a;color:var(--err);padding:8px 12px;border-radius:6px;font-size:12px}.login-btn{width:100%;padding:11px;background:var(--accent);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background var(--transition)}.login-btn:hover{background:var(--accent-hover)}.login-btn:disabled{opacity:.5;cursor:not-allowed}.login-btn-browser{background:var(--bg-panel);border:1px solid var(--border);color:var(--fg)}.login-btn-browser:hover{background:var(--hover)}.login-divider{display:flex;align-items:center;gap:8px;margin:4px 0}.login-divider-line{flex:1;height:1px;background:var(--border)}.login-divider-text{font-size:11px;color:var(--fg-dim)}.login-footer{text-align:center;font-size:12px;color:var(--fg-dim);margin-top:8px}.login-link{color:var(--accent);text-decoration:none}.login-link:hover{text-decoration:underline}@media (max-width: 480px){.login-card{width:100%;margin:16px;padding:32px 24px}}.feature-stage{flex:1;display:flex;flex-direction:column;min-width:0;background:#000;overflow:hidden}.feature-stage-body{flex:1;display:flex;align-items:stretch;justify-content:stretch;position:relative;min-height:0;overflow:hidden}.feature-stage-body>*{flex:1;min-height:0;min-width:0}.feature-stage-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--fg-dim);text-align:center;padding:24px;gap:10px}.feature-stage-empty-inner{display:flex;align-items:center;justify-content:center;color:var(--fg-dim);padding:20px;width:100%;height:100%}.feature-stage-empty-icon{font-size:48px;opacity:.4;margin-bottom:6px}.feature-stage-empty-title{font-size:18px;font-weight:700;color:var(--fg)}.feature-stage-video-wrap{display:flex;flex-direction:column;width:100%;height:100%;min-height:0}.feature-stage-video-wrap .video-container{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;position:relative}.feature-stage-video-wrap .main-video{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain}.feature-stage-warn{color:#f5a547;background:#f5a5471a;border:1px solid rgba(245,165,71,.3);padding:6px 10px;font-size:12px;margin:6px 10px;border-radius:6px}.feature-stage-webview-wrap{display:flex;flex-direction:column;width:100%;height:100%;min-height:0}.feature-stage-webview-wrap webview{flex:1;min-height:0}.feature-stage-image-wrap{display:flex;flex-direction:column;width:100%;height:100%;background:#111}.feature-stage-image{flex:1;min-height:0;width:100%;object-fit:contain}.feature-stage-game{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.feature-stage-game-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(18px) brightness(.4)}.feature-stage-game-card{position:relative;z-index:1;background:#141419d9;border:1px solid var(--border);border-radius:14px;padding:28px 34px;max-width:560px;text-align:center;color:var(--fg)}.feature-stage-game-title{font-size:22px;font-weight:700;margin-bottom:8px}.feature-stage-game-desc{color:var(--fg-dim);font-size:13px;margin-bottom:12px}.feature-stage-game-path{font-family:monospace;font-size:11px;color:var(--fg-dim);word-break:break-all;background:var(--bg-elevated);padding:6px 10px;border-radius:4px}.feature-stage-text-wrap{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-size:cover;background-position:center;position:relative}.feature-stage-text-wrap:before{content:"";position:absolute;inset:0;background:#0000008c}.feature-stage-text-inner{position:relative;z-index:1;text-align:center;padding:24px 40px;max-width:780px}.feature-stage-text-title{font-size:clamp(32px,6vw,64px);font-weight:800;color:#fff;line-height:1.1;margin-bottom:14px;text-shadow:0 2px 12px rgba(0,0,0,.6)}.feature-stage-text-desc{font-size:clamp(14px,2vw,20px);color:#ffffffd9;line-height:1.5}.feature-stage-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px;background:var(--bg-panel);border-top:1px solid var(--border);flex-wrap:wrap}.feature-stage-meta-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}.feature-stage-meta-title{font-weight:700;font-size:13px;color:var(--fg);max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feature-stage-type-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:2px 8px;border-radius:10px;background:var(--bg-elevated);color:var(--fg-dim);border:1px solid var(--border)}.feature-stage-live-badge{font-size:10px;font-weight:700;letter-spacing:.1em;padding:2px 8px;border-radius:10px;background:var(--err);color:#fff}.feature-stage-meta-actions{display:flex;gap:6px;flex-shrink:0}.feature-rail{display:flex;gap:8px;padding:10px 12px;background:var(--bg-panel);border-top:1px solid var(--border);overflow-x:auto;flex-shrink:0}.feature-rail::-webkit-scrollbar{height:6px}.feature-rail::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.feature-rail-add,.feature-rail-item{display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;width:132px;height:96px;border-radius:8px;background:var(--bg-elevated);border:1px solid var(--border);color:var(--fg);cursor:pointer;padding:0;transition:border-color .2s,transform .15s;position:relative;overflow:hidden}.feature-rail-add{gap:4px;border-style:dashed}.feature-rail-add:hover{border-color:var(--accent)}.feature-rail-add-plus{font-size:28px;color:var(--fg-dim)}.feature-rail-add-label{font-size:11px;color:var(--fg-dim)}.feature-rail-item{padding:0}.feature-rail-item:hover{border-color:var(--accent)}.feature-rail-item.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.feature-rail-item.live{border-color:var(--err)}.feature-rail-thumb{width:100%;height:58px;object-fit:cover;display:block}.feature-rail-thumb-blank{display:flex;align-items:center;justify-content:center;font-size:22px;color:var(--fg-dim);background:var(--bg)}.feature-rail-meta{padding:4px 8px;width:100%;text-align:left;min-width:0}.feature-rail-title{font-size:11px;font-weight:600;color:var(--fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feature-rail-type{font-size:10px;color:var(--fg-dim);text-transform:uppercase;letter-spacing:.05em}.feature-rail-live-dot{position:absolute;top:6px;right:6px;width:10px;height:10px;border-radius:50%;background:var(--err);box-shadow:0 0 0 2px #0006;animation:pulse 1.5s infinite}.feature-rail-empty{display:flex;align-items:center;padding:0 8px;font-size:12px}.feature-modal-overlay{position:fixed;inset:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:1200;padding:16px}.feature-modal-box{background:var(--bg-panel);border:1px solid var(--border);border-radius:12px;width:100%;max-width:540px;max-height:88vh;display:flex;flex-direction:column;color:var(--fg);overflow:hidden}.feature-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px 10px;border-bottom:1px solid var(--border)}.feature-modal-title{font-weight:700;font-size:16px}.feature-modal-close{background:none;border:none;color:var(--fg-dim);cursor:pointer;font-size:22px;line-height:1}.feature-modal-body{padding:14px 20px;overflow-y:auto;flex:1}.feature-modal-label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--fg-dim);margin-bottom:4px;font-weight:700}.feature-modal-type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.feature-modal-type{padding:8px;border:1px solid var(--border);border-radius:6px;background:var(--bg-elevated);color:var(--fg);font-size:12px;font-weight:600;cursor:pointer}.feature-modal-type:hover{border-color:var(--accent)}.feature-modal-type.active{border-color:var(--accent);background:#6c63ff26;color:var(--accent)}.feature-modal-desc{resize:vertical;font-family:inherit}.feature-modal-ref-selected{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:6px}.feature-modal-ref-selected img{width:28px;height:28px;object-fit:cover;border-radius:4px}.feature-modal-warn{margin-top:6px;font-size:11px;color:#f5a547;background:#f5a5471a;border:1px solid rgba(245,165,71,.3);padding:6px 10px;border-radius:4px;line-height:1.4}.feature-modal-check{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--fg);cursor:pointer}.feature-modal-footer{display:flex;gap:8px;justify-content:flex-end;padding:12px 20px;border-top:1px solid var(--border)}@media (max-width: 900px){.startup-body{flex-direction:column}.script-list-panel{width:100%;max-width:none;max-height:40vh}.telepr-top{flex-wrap:wrap}.preview-mini{width:180px}.current-line{font-size:clamp(32px,8vw,56px)}.streaming-body{flex-direction:column}.streaming-side{width:100%;border-left:none;border-top:1px solid var(--border);max-height:50vh}.feature-rail-add,.feature-rail-item{width:108px;height:82px}.feature-rail-thumb{height:48px}.feature-modal-type-grid{grid-template-columns:repeat(2,1fr)}.feature-stage-meta{flex-direction:column;align-items:stretch}.feature-stage-meta-actions{justify-content:flex-end}}.bc-screen{display:flex;flex-direction:column;height:100%;overflow:hidden}.bc-body{display:flex;flex:1;overflow:hidden}.bc-center{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.bc-toolbar{display:flex;align-items:center;gap:8px;padding:8px 14px;border-bottom:1px solid var(--border);background:var(--bg-panel);flex-wrap:wrap}.bc-toolbar-picker-wrap{position:relative}.bc-picker-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:200;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:12px;min-width:260px;display:flex;flex-direction:column;gap:10px;box-shadow:0 8px 24px #0006}.bc-picker-row{display:flex;flex-direction:column;gap:4px}.bc-picker-label{font-size:11px;color:var(--fg-dim);text-transform:uppercase;letter-spacing:.04em}.bc-picker-actions{display:flex;gap:8px;justify-content:flex-end}.bc-collab-active{color:var(--accent)!important;border-color:var(--accent)!important}.bc-stage-area{flex:1;display:flex;overflow:hidden;position:relative}.bc-side{width:340px;min-width:280px;max-width:420px;border-left:1px solid var(--border);background:var(--bg-panel);overflow-y:auto;display:flex;flex-direction:column}.bc-card-inner{display:flex;flex-direction:column;gap:6px}.bc-status-row{display:flex;gap:12px;margin-top:6px}.bc-spout-slot{display:flex;gap:6px;align-items:center}.bc-spout-thumb{width:48px;height:32px;object-fit:cover;object-position:top;border-radius:3px;background:#000}.bc-spout-remove{padding:2px 6px!important;font-size:11px!important;color:var(--err)!important}.bc-spout-actions{display:flex;gap:6px;margin-top:4px}.bc-chat{display:flex;flex-direction:column;max-height:320px}.cs-canvas{flex:1;position:relative;background:#0a0a0e;overflow:hidden;display:flex;align-items:center;justify-content:center}.cs-layer{position:absolute;display:flex;align-items:stretch;justify-content:stretch;pointer-events:auto;cursor:move;box-sizing:border-box;overflow:hidden;border-radius:4px}.cs-layer>*{width:100%;height:100%;flex:1;min-width:0;min-height:0}.cs-layer-active{outline:2px solid var(--accent);outline-offset:-1px}.cs-layer-model.cs-layer-active{outline:none}.cs-fill-img{width:100%;height:100%;object-fit:contain;display:block}.cs-placeholder-text{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--fg-dim);font-size:12px;border:1px dashed var(--border);border-radius:4px}.cs-resize-handle{position:absolute;bottom:0;right:0;width:16px;height:16px;cursor:nwse-resize;background:linear-gradient(135deg,transparent 50%,var(--accent) 50%);border-radius:0 0 4px;z-index:10;pointer-events:auto}.cs-empty{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--fg-dim);text-align:center;padding:40px}.cs-empty-icon{font-size:48px;opacity:.3}.cs-empty-text{font-size:14px;max-width:320px}.cs-drawing-placeholder,.cs-sticker-placeholder,.cs-model-placeholder,.cs-unknown{display:flex;align-items:center;justify-content:center;height:100%;color:var(--fg-dim);font-size:13px;border:1px dashed var(--border);border-radius:8px}.lm-panel{width:220px;min-width:180px;border-left:1px solid var(--border);background:var(--bg-panel);overflow-y:auto;display:flex;flex-direction:column}.lm-header{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--fg-dim);padding:10px 12px 6px}.lm-list{flex:1;overflow-y:auto}.lm-row{display:flex;align-items:center;gap:6px;padding:5px 10px;cursor:pointer;border-bottom:1px solid transparent;transition:background .15s;font-size:12px}.lm-row:hover{background:var(--bg-elevated)}.lm-row-active{background:var(--accent-soft, rgba(99, 102, 241, .12));border-left:2px solid var(--accent)}.lm-row-dragging{opacity:.4}.lm-row-drop{border-bottom:2px solid var(--accent)}.lm-grip{font-size:10px;color:var(--fg-muted, #666);cursor:grab;user-select:none}.lm-type-icon{font-size:12px;width:16px;text-align:center;color:var(--fg-dim)}.lm-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--fg)}.lm-actions{display:flex;gap:2px;opacity:0;transition:opacity .15s}.lm-row:hover .lm-actions{opacity:1}.lm-action-btn{background:none;border:none;color:var(--fg-dim);font-size:11px;padding:2px 4px;cursor:pointer;border-radius:3px;line-height:1}.lm-action-btn:hover{background:var(--bg-elevated);color:var(--fg)}.lm-off{opacity:.4}.lm-sync-on{color:var(--accent)!important}.lm-cursor-on{color:var(--warn)!important}.lm-remove:hover{color:var(--err)!important}.lm-collab-group{margin-bottom:4px}.lm-collab-owner{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);padding:6px 12px 2px}.lm-empty{padding:16px 12px;color:var(--fg-muted, #666);font-size:12px;text-align:center}.fb-panel{border-top:1px solid var(--border);background:var(--bg-panel);display:flex;flex-direction:column;max-height:45%;min-height:200px;overflow:hidden}.fb-header{display:flex;align-items:center;border-bottom:1px solid var(--border);padding:0 12px}.fb-tabs{display:flex;gap:2px;flex:1;overflow-x:auto}.fb-tab{padding:8px 14px;font-size:12px;font-weight:600;color:var(--fg-dim);background:none;border:none;cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;transition:color .15s,border-color .15s}.fb-tab:hover{color:var(--fg)}.fb-tab-active{color:var(--accent);border-bottom-color:var(--accent)}.fb-close{background:none;border:none;color:var(--fg-dim);font-size:18px;cursor:pointer;padding:4px 8px}.fb-close:hover{color:var(--fg)}.fb-body{flex:1;display:flex;overflow:hidden}.fb-web-input{display:flex;gap:8px;padding:16px;align-items:flex-start;width:100%}.fb-web-input .side-input{flex:1}.fb-placeholder{display:flex;align-items:center;justify-content:center;flex:1;padding:24px}.fb-placeholder-text{color:var(--fg-dim);font-size:13px}.fb-anime-sidebar{width:160px;min-width:140px;border-right:1px solid var(--border);display:flex;flex-direction:column;padding:8px 0;overflow-y:auto}.fb-anime-section{padding:6px 14px;font-size:12px;color:var(--fg-dim);background:none;border:none;text-align:left;cursor:pointer;transition:background .15s,color .15s}.fb-anime-section:hover{background:var(--bg-elevated);color:var(--fg)}.fb-section-active{background:var(--accent-soft, rgba(99, 102, 241, .12));color:var(--accent);font-weight:600}.fb-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.fb-toolbar{display:flex;gap:8px;padding:8px 12px;align-items:center;border-bottom:1px solid var(--border)}.fb-search{flex:1;min-width:0}.fb-browse-btn{padding:6px 10px!important;font-size:12px!important;white-space:nowrap}.fb-view-toggle{display:flex;gap:2px}.fb-view-btn{background:none;border:1px solid var(--border);color:var(--fg-dim);font-size:14px;padding:4px 8px;cursor:pointer;border-radius:4px}.fb-view-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.fb-results{flex:1;overflow-y:auto;padding:8px 12px}.fb-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.fb-results-list{display:flex;flex-direction:column;gap:4px}.fb-result-item{background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;overflow:hidden;cursor:pointer;transition:border-color .15s,transform .1s;display:flex;flex-direction:column;padding:0;text-align:left}.fb-results-list .fb-result-item{flex-direction:row;align-items:center;gap:10px;padding:6px 10px}.fb-result-item:hover{border-color:var(--accent);transform:translateY(-1px)}.fb-result-thumb{width:100%;height:80px;object-fit:cover;background:var(--bg)}.fb-results-list .fb-result-thumb{width:48px;height:32px;border-radius:4px;flex-shrink:0}.fb-result-thumb-blank{display:flex;align-items:center;justify-content:center;background:var(--bg);color:var(--fg-muted, #666)}.fb-result-name{padding:6px 8px;font-size:11px;color:var(--fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fb-no-results{padding:24px;text-align:center;color:var(--fg-dim);font-size:13px}.fb-result-item-selected{border-color:var(--accent)!important;background:var(--accent-soft, rgba(99,102,241,.12))!important}.fb-anime-source-bar{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border);background:var(--bg-elevated)}.fb-source-label{font-size:11px;color:var(--fg-dim);text-transform:uppercase;letter-spacing:.04em}.fb-source-tabs{display:flex;gap:4px;flex-wrap:wrap}.fb-source-tab{padding:4px 10px;border:1px solid var(--border);border-radius:20px;background:none;color:var(--fg-dim);font-size:12px;cursor:pointer;transition:border-color .15s,color .15s}.fb-source-tab:hover{color:var(--fg);border-color:var(--fg-dim)}.fb-source-tab-active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft, rgba(99,102,241,.1))}.fb-source-file-row{display:flex;align-items:center;gap:8px}.fb-source-file-path{flex:1;font-size:12px;color:var(--fg-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fb-source-url-input{width:100%}.fb-anime-add-row{display:flex;align-items:center;gap:10px;padding-top:4px;border-top:1px solid var(--border)}.fb-anime-selected-title{flex:1;font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--fg)}.sp-panel{display:flex;flex-direction:column;gap:0}.spc-card{border-bottom:1px solid var(--border);transition:background .15s}.spc-drag-over{background:var(--accent-soft, rgba(99, 102, 241, .08))}.spc-header{display:flex;align-items:center;gap:6px;padding:8px 12px;border-top:3px solid transparent;cursor:default}.spc-grip{font-size:10px;color:var(--fg-muted, #666);cursor:grab;user-select:none}.spc-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--fg-dim);flex:1;cursor:pointer}.spc-header-right{display:flex;gap:4px}.spc-collapse-btn{background:none;border:none;color:var(--fg-muted, #666);font-size:10px;cursor:pointer;padding:2px 4px}.spc-collapse-btn:hover{color:var(--fg)}.spc-body{padding:0 12px 10px}.spc-collapsed .spc-body{display:none}.dt-toolbar{display:flex;align-items:center;gap:4px}.dt-tool{background:none;border:1px solid var(--border);color:var(--fg-dim);font-size:14px;width:30px;height:28px;border-radius:5px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.dt-tool:hover{background:var(--bg-elevated);color:var(--fg)}.dt-tool-active{background:var(--accent);color:#fff;border-color:var(--accent)}.dt-separator{width:1px;height:20px;background:var(--border);margin:0 4px}.dt-color-swatch{width:22px;height:22px;border-radius:50%;border:2px solid var(--border);cursor:pointer}.dt-color-picker{position:absolute;top:100%;right:0;display:flex;gap:4px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:6px;z-index:10;box-shadow:0 4px 12px #0000004d}.dt-color-option{width:20px;height:20px;border-radius:50%;border:2px solid transparent;cursor:pointer}.dt-color-option:hover{border-color:var(--fg-dim)}.dt-color-selected{border-color:var(--accent)!important}.dt-size-slider{width:60px;accent-color:var(--accent)}.dt-shape-picker{display:flex;gap:2px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:6px;padding:2px}.dt-undo-redo{display:flex;gap:2px}.dt-tool-clear-confirm{background:var(--err, #e55);color:#fff;border-color:var(--err, #e55)}.dc-wrapper{position:absolute;inset:0;z-index:100}.dc-canvas{position:absolute;inset:0;width:100%;height:100%}.dc-overlay-canvas{z-index:1}.dc-cursor-preview{position:absolute;border-radius:50%;border:2px solid rgba(255,255,255,.8);box-shadow:0 0 0 1px #0006;pointer-events:none;z-index:200}.dc-text-input{position:absolute;background:transparent;border:none;border-bottom:1px dashed rgba(255,255,255,.5);outline:none;font-family:sans-serif;min-width:80px;z-index:200;padding:0;transform:translateY(-1em)}@media (max-width: 768px){.dt-toolbar{flex-wrap:wrap;gap:3px}.dt-size-slider{width:50px}.dt-shape-picker{flex-wrap:wrap}}@media (max-width: 768px){.bc-body{flex-direction:column}.bc-side{width:100%;max-width:none;border-left:none;border-top:1px solid var(--border);max-height:50vh}.bc-stage-area{flex-direction:column}.lm-panel{width:100%;max-height:180px;border-left:none;border-top:1px solid var(--border)}.fb-anime-sidebar{display:none}.bc-toolbar{padding:6px 10px;gap:4px;flex-wrap:wrap}.fb-panel{max-height:50%}.bc-picker-popover{min-width:200px;left:auto;right:0}.fb-anime-source-bar{padding:8px}.fb-source-tabs{gap:3px}.fb-anime-add-row{flex-wrap:wrap}}.lsp-panel{padding:10px 0}.lsp-status-row{display:flex;align-items:center;gap:8px;margin-bottom:10px}.lsp-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.lsp-dot-live{background:#4d6;box-shadow:0 0 6px #4d68}.lsp-dot-off{background:#fff3}.lsp-status-label{font-size:12px;font-weight:600;color:var(--text-primary, #fff)}.lsp-error{font-size:11px;color:var(--err, #e94560);margin-bottom:8px}.lsp-hint{font-size:12px;color:var(--text-secondary, rgba(255,255,255,.4))}.lsp-fields{display:flex;flex-direction:column;gap:6px}.lsp-field{display:flex;align-items:baseline;gap:6px;font-size:12px}.lsp-field-copy{align-items:center}.lsp-field-label{flex-shrink:0;width:80px;color:var(--text-secondary, rgba(255,255,255,.4));font-size:11px}.lsp-field-value{flex:1;min-width:0;color:var(--text-primary, #fff)}.lsp-mono{font-family:monospace;font-size:11px}.lsp-truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lsp-copy-btn{flex-shrink:0;background:none;border:none;cursor:pointer;padding:0 2px;font-size:13px;opacity:.6;transition:opacity .15s}.lsp-copy-btn:hover{opacity:1}.lcfg-panel{margin-top:12px;padding:12px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:10px}.lcfg-header{font-size:14px;font-weight:600;color:#f5f5f8}.lcfg-empty{font-size:13px;color:#8a8a90}.lcfg-row{display:flex;align-items:center;gap:10px;font-size:13px}.lcfg-label{flex:0 0 120px;color:#c4c4c8}.lcfg-value{color:#f5f5f8;flex:1}.lcfg-input{flex:1;background:#0000004d;border:1px solid rgba(255,255,255,.12);color:#f5f5f8;padding:6px 10px;font-size:13px;border-radius:6px;font-family:inherit}.lcfg-input:disabled{opacity:.4}.lcfg-btn{appearance:none;border:1px solid rgba(255,255,255,.18);background:#ffffff0f;color:#f5f5f8;font-size:13px;font-weight:600;padding:8px 14px;border-radius:8px;cursor:pointer;align-self:flex-start}.lcfg-btn:disabled{opacity:.4;cursor:not-allowed}.lcfg-btn.primary{background:#2563eb;border-color:#2563eb;color:#fff}@media (max-width: 480px){.lcfg-row{flex-direction:column;align-items:stretch;gap:4px}.lcfg-label{flex:none}}.pair-modal-backdrop{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.pair-modal{background:#161620;border:1px solid rgba(255,255,255,.1);border-radius:14px;width:100%;max-width:380px;display:flex;flex-direction:column;color:#f5f5f8}.pair-modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid rgba(255,255,255,.08)}.pair-modal-title{font-size:16px;font-weight:600}.pair-modal-close{appearance:none;background:transparent;border:none;color:#c4c4c8;font-size:24px;line-height:1;cursor:pointer;padding:4px 8px}.pair-modal-body{padding:18px;display:flex;flex-direction:column;gap:14px;align-items:center}.pair-modal-qr{width:240px;height:240px;background:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;overflow:hidden}.pair-modal-qr img{width:100%;height:100%;display:block}.pair-modal-status{font-size:13px;color:#8a8a90}.pair-modal-error{font-size:13px;color:#fca5a5;background:#dc26262e;border:1px solid rgba(220,38,38,.4);border-radius:8px;padding:10px 12px;width:100%;text-align:center}.pair-modal-meta{width:100%;display:flex;flex-direction:column;gap:6px}.pair-modal-room{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#c4c4c8}.pair-modal-room code{font-size:16px;font-weight:700;letter-spacing:2px;color:#f5f5f8;background:#ffffff0f;padding:4px 10px;border-radius:6px}.pair-modal-url{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#0000004d;border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:8px 10px;cursor:pointer}.pair-modal-url span{flex:1;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:#c4c4c8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pair-modal-copy{appearance:none;background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#f5f5f8;padding:4px 10px;border-radius:5px;font-size:12px;cursor:pointer}.pair-modal-connected{font-size:13px;color:#c4c4c8;text-align:center;line-height:1.4}.pair-modal-connected.ok{color:#4ade80;font-weight:600}.pair-modal-actions{display:flex;gap:10px;padding:14px 18px;border-top:1px solid rgba(255,255,255,.08)}.pair-modal-btn{flex:1;appearance:none;border:1px solid rgba(255,255,255,.18);background:#ffffff0f;color:#f5f5f8;padding:10px 14px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer}.pair-modal-btn.primary{background:#2563eb;border-color:#2563eb}.pair-modal-btn:disabled{opacity:.4;cursor:not-allowed}.rec-screen{position:fixed;inset:0;background:#000;color:#fff;display:flex;flex-direction:column;z-index:100;font-family:var(--font, "Montserrat", sans-serif);overflow:hidden}.rec-scene-root{position:absolute;inset:0;background:#000;z-index:0}.rec-top-bar{position:relative;z-index:20;display:flex;align-items:center;gap:10px;padding:8px 14px;background:#000000e6;border-bottom:1px solid #1e1e2a;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.rec-top-bar::-webkit-scrollbar{display:none}.rec-exit-btn{background:#ffffff14;color:#bbb;border:1px solid #333;border-radius:6px;padding:5px 12px;font-size:12px;flex-shrink:0;cursor:pointer}.rec-exit-btn:hover{background:#ffffff24;color:#fff}.rec-progress{font-size:13px;color:#bbb;flex-shrink:0;white-space:nowrap}.rec-progress .rec-headline{color:#666}.rec-scene-ctl{display:flex;align-items:center;gap:5px;padding:2px 8px;background:#14141be6;border:1px solid #2a2a3a;border-radius:6px;flex-shrink:0}.rec-scene-label{color:#666;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.rec-scene-select{background:transparent;color:#ddd;border:none;font-size:12px;outline:none;cursor:pointer;max-width:140px}.rec-edit-scene-btn{background:#14141be6;color:#ccc;border:1px solid #2a2a3a;border-radius:6px;padding:5px 10px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;flex-shrink:0;cursor:pointer}.rec-edit-scene-btn:hover{background:#1a1a27;color:#fff}.rec-edit-scene-btn.active{background:var(--accent);color:#000;border-color:var(--accent)}.rec-mode-toggle{display:flex;gap:2px;background:#14141be6;border:1px solid #2a2a3a;border-radius:6px;padding:2px;flex-shrink:0}.rec-mode-toggle button{background:transparent;color:#888;border:none;padding:4px 9px;font-size:11px;border-radius:4px;text-transform:uppercase;letter-spacing:.05em;cursor:pointer}.rec-mode-toggle button.active{background:var(--accent);color:#000;font-weight:700}.rec-pace-ctl{display:flex;align-items:center;gap:4px;padding:2px 8px;background:#14141be6;border:1px solid #2a2a3a;border-radius:6px;flex-shrink:0}.rec-pace-btn{background:transparent;color:#bbb;border:1px solid #333;border-radius:4px;width:22px;height:22px;font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center}.rec-pace-btn:hover{background:#2a2a33;color:#fff}.rec-pace-val{color:var(--accent);font-variant-numeric:tabular-nums;font-weight:600;font-size:12px;min-width:32px;text-align:center}.rec-spacer{flex:1;min-width:8px}.rec-script-toggle{background:#14141be6;color:#ccc;border:1px solid #2a2a3a;border-radius:6px;padding:5px 10px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;flex-shrink:0;cursor:pointer}.rec-script-toggle:hover{background:#1a1a27;color:#fff}.rec-script-toggle.active{border-color:var(--accent);color:var(--accent)}.rec-save-state{font-size:11px;padding:2px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.06em;flex-shrink:0}.rec-save-idle{color:#555}.rec-save-saving{color:var(--warn, #f5a623)}.rec-save-saved{color:var(--ok, #5cb85c)}.rec-save-error{color:var(--err, #e94560)}.rec-indicator{display:flex;align-items:center;gap:8px;font-size:12px;flex-shrink:0}.rec-dot{width:12px;height:12px;border-radius:50%;background:#ff3b3b;animation:recPulse 1s infinite alternate}@keyframes recPulse{0%{opacity:1}to{opacity:.35}}.rec-dot-label{color:#ff3b3b;font-weight:700;letter-spacing:.05em}.rec-dot-time{color:#bbb;font-variant-numeric:tabular-nums}.rec-status-saved{color:var(--ok, #5cb85c);font-weight:600}.rec-status-idle{color:#555}.rec-body{flex:1;position:relative;display:flex;overflow:hidden;min-height:0}.rec-center{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:0 10%;position:relative;z-index:10;pointer-events:none}.rec-center>*{pointer-events:auto}.rec-speaker-badge{display:inline-block;background:var(--accent, #4a6fa5);color:#000;font-weight:800;letter-spacing:.18em;padding:5px 16px;border-radius:999px;font-size:13px;margin-bottom:24px;text-transform:uppercase}.rec-direction{margin-top:16px;color:#777;font-size:17px;max-width:900px;font-style:italic}.rec-upcoming{margin-top:36px;display:flex;flex-direction:column;gap:8px;max-width:900px}.rec-upcoming-line{font-size:clamp(17px,2vw,22px);color:#555}.rec-upcoming-line.upcoming-1{color:#3a3a3a}.rec-u-speaker{display:inline-block;color:var(--accent, #4a6fa5);margin-right:8px;font-weight:700;font-size:.8em}.rec-scene-active .rec-center .current-line{background:#00000094;padding:18px 28px;border-radius:12px;backdrop-filter:blur(4px);max-width:80%}.rec-asset-panel{position:absolute;top:12px;right:14px;z-index:25;background:#0a0a10e6;border:1px solid #2a2a3a;border-radius:10px;width:220px;max-height:320px;overflow-y:auto;backdrop-filter:blur(6px)}.rap-header{padding:8px 12px 6px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#666;border-bottom:1px solid #1e1e2a}.rap-list{padding:6px 0}.rap-item{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;gap:8px}.rap-item:hover{background:#ffffff08}.rap-name{font-size:12px;color:#ccc;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rap-actions{display:flex;gap:4px;flex-shrink:0}.rap-btn{background:#ffffff12;color:#aaa;border:1px solid #333;border-radius:5px;padding:3px 8px;font-size:11px;cursor:pointer}.rap-btn:hover{background:#ffffff1f;color:#fff}.rec-bottom{flex-shrink:0;background:#080810;border-top:1px solid #1e1e2a;z-index:20;position:relative}.rec-hotkeys-bar{display:flex;justify-content:center;gap:20px;padding:6px 16px;font-size:11px;color:#555;border-top:1px solid #12121a;flex-wrap:wrap}.rec-hotkeys-bar kbd{background:#12121a;border:1px solid #2a2a33;border-radius:4px;padding:1px 6px;margin-right:3px;font-family:var(--font-mono, monospace);font-size:10px;color:#aaa}.rec-empty{display:flex;align-items:center;justify-content:center;height:100vh;color:#555;font-size:15px}.rec-script-overlay{position:absolute;top:0;right:0;bottom:0;width:340px;background:#080810f5;border-left:1px solid #1e1e2a;z-index:30;display:flex;flex-direction:column;overflow:hidden;backdrop-filter:blur(8px);transform:translate(100%);transition:transform .2s ease}.rec-script-overlay.open{transform:translate(0)}.rso-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid #1e1e2a}.rso-title{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#666}.rso-close{background:transparent;color:#666;border:none;font-size:16px;cursor:pointer;padding:0 4px}.rso-close:hover{color:#fff}.rso-body{flex:1;overflow-y:auto;padding:8px 0}.rso-line{display:flex;gap:8px;padding:6px 14px;cursor:pointer;border-radius:6px;margin:0 6px 2px}.rso-line:hover{background:#ffffff0a}.rso-line.current{background:#4a6fa52e;border-left:3px solid var(--accent, #4a6fa5);padding-left:11px}.rso-line-speaker{font-size:11px;font-weight:700;color:var(--accent, #4a6fa5);min-width:42px;text-transform:uppercase;letter-spacing:.05em;padding-top:1px;flex-shrink:0}.rso-line-text{font-size:12px;color:#888;line-height:1.45}.rso-line.current .rso-line-text{color:#ddd}.rso-section-label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#333;padding:10px 14px 4px}.tl-root{height:184px;background:#080810;overflow:hidden;display:flex;flex-direction:column}.tl-scroll{flex:1;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#2a2a3a #080810}.tl-scroll::-webkit-scrollbar{height:4px}.tl-scroll::-webkit-scrollbar-track{background:#080810}.tl-scroll::-webkit-scrollbar-thumb{background:#2a2a3a;border-radius:2px}.tl-inner{position:relative;user-select:none}.tl-playhead-line{position:absolute;top:0;width:2px;background:#ff3b3bd9;pointer-events:none;z-index:10;box-shadow:0 0 4px #ff3b3b80}.tl-ruler-row{position:absolute;top:0;left:0;right:0;display:flex;background:#0b0b14;border-bottom:1px solid #1e1e2a}.tl-label-cell{display:flex;align-items:center;justify-content:space-between;padding:0 8px;border-right:1px solid #1e1e2a;background:#09090f;flex-shrink:0;gap:4px}.tl-ruler-label{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#333;justify-content:flex-start}.tl-ruler-area{position:absolute;cursor:pointer}.tl-tick{position:absolute;top:0;bottom:0;width:1px;background:#1e1e2a}.tl-tick-label{position:absolute;top:5px;left:3px;font-size:9px;color:#3a3a5a;letter-spacing:.04em;white-space:nowrap;font-variant-numeric:tabular-nums}.tl-track-row{position:absolute;left:0;right:0;display:flex;border-bottom:1px solid #0f0f18}.tl-track-row:hover{background:#ffffff03}.tl-track-name{font-size:10px;color:#444;text-transform:uppercase;letter-spacing:.06em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.tl-add-btn{background:transparent;color:#333;border:1px solid #222;border-radius:3px;width:16px;height:16px;font-size:13px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;padding:0}.tl-add-btn:hover{background:#1a1a27;color:#888;border-color:#444}.tl-track-area{position:absolute}.tl-block{position:absolute;top:4px;height:26px;border-radius:5px;cursor:grab;display:flex;align-items:center;overflow:hidden;opacity:.85;transition:opacity .1s ease;min-width:36px}.tl-block:active{cursor:grabbing;opacity:1}.tl-block:hover{opacity:.95}.tl-block-label{padding:0 6px;font-size:10px;color:#ffffffe6;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;letter-spacing:.02em;pointer-events:none}.tl-resize-handle{width:5px;height:100%;flex-shrink:0;cursor:col-resize;background:#ffffff26;position:absolute;right:0;top:0;bottom:0;border-radius:0 5px 5px 0}.tl-resize-handle:hover{background:#ffffff4d}@media (max-width: 768px){.rec-asset-panel{display:none}.rec-center{padding:0 5%}.rec-top-bar{gap:6px;padding:6px 10px}.rec-scene-ctl{display:none}.tl-root{height:140px}}.track-page{position:fixed;inset:0;background:#0a0a0f;color:#f5f5f8;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-tap-highlight-color:transparent;overflow:hidden}.track-header{padding:16px;display:flex;flex-direction:column;gap:8px;background:#0006}.track-pill{align-self:flex-start;padding:6px 14px;border-radius:999px;font-size:14px;font-weight:600;letter-spacing:.4px;text-transform:uppercase}.track-pill.ok{background:#16a34a;color:#fff}.track-pill.warn{background:#ca8a04;color:#0a0a0f}.track-pill.err{background:#dc2626;color:#fff}.track-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:13px;color:#c4c4c8}.track-meta span{font-variant-numeric:tabular-nums}.track-preview{position:relative;flex:1;background:#000;display:flex;align-items:center;justify-content:center;overflow:hidden}.track-preview video,.track-video{display:block;width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.track-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;pointer-events:none;background:linear-gradient(180deg,#0a0a0f00,#0a0a0f99)}.track-overlay-title{font-size:22px;font-weight:700;margin-bottom:8px}.track-overlay-sub{font-size:14px;color:#c4c4c8;max-width:320px;line-height:1.4}.track-error{margin:0 16px;padding:12px 14px;background:#dc26262e;color:#fca5a5;border:1px solid rgba(220,38,38,.4);border-radius:10px;font-size:13px}.track-actions{padding:16px;display:flex;flex-direction:column;gap:10px;background:#0006;padding-bottom:max(16px,env(safe-area-inset-bottom))}.track-btn{appearance:none;border:1px solid rgba(255,255,255,.18);background:#ffffff0f;color:#f5f5f8;font-size:16px;font-weight:600;padding:14px 18px;border-radius:12px;min-height:52px;cursor:pointer;touch-action:manipulation}.track-btn:active{transform:scale(.98)}.track-btn.primary{background:#2563eb;border-color:#2563eb;color:#fff}.track-btn.danger{background:#dc262633;border-color:#dc262699;color:#fca5a5}.track-card{margin:auto;padding:24px;border-radius:16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);max-width:360px;text-align:center}.track-title{font-size:20px;font-weight:700;margin-bottom:8px}.track-subtitle{font-size:14px;color:#c4c4c8;line-height:1.4}@media (min-width: 768px){.track-page{max-width:480px;margin:0 auto;border-left:1px solid rgba(255,255,255,.08);border-right:1px solid rgba(255,255,255,.08)}}
