*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{display:flex;flex-direction:column}.multicam-panel{display:flex;flex-direction:column;height:100%;background:var(--bg-secondary, #1a1a1a);color:var(--text-primary, #e0e0e0);overflow-y:auto;font-size:13px}.multicam-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-color, #333);background:var(--bg-tertiary, #252525)}.multicam-header h2{margin:0;font-size:14px;font-weight:600}.settings-btn{padding:4px 10px;font-size:12px;background:var(--bg-secondary, #1a1a1a);border:1px solid var(--border-color, #444);border-radius:4px;cursor:pointer;color:var(--text-primary, #e0e0e0)}.settings-btn:hover{background:var(--bg-hover, #333)}.multicam-section{padding:12px 16px;border-bottom:1px solid var(--border-color, #333)}.section-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.section-header h3{margin:0;font-size:12px;font-weight:600;text-transform:uppercase;color:var(--text-secondary, #888);flex:1}.camera-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.multicam-camera-card{background:var(--bg-tertiary, #252525);border:2px solid transparent;border-radius:6px;padding:8px;cursor:pointer;transition:all .15s ease}.multicam-camera-card:hover{background:var(--bg-hover, #2a2a2a)}.multicam-camera-card.selected{border-color:var(--accent-primary, #4a9eff)}.multicam-camera-card.master{border-color:var(--accent-success, #51cf66)}.camera-thumbnail{position:relative;aspect-ratio:16 / 9;background:#000;border-radius:4px;overflow:hidden;margin-bottom:6px}.camera-thumbnail img{width:100%;height:100%;object-fit:cover}.camera-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #666);font-size:14px;font-weight:700}.master-badge{position:absolute;top:4px;right:4px;background:var(--accent-success, #51cf66);color:#000;font-size:10px;font-weight:700;padding:2px 5px;border-radius:3px}.camera-info{display:flex;flex-direction:column;gap:4px}.camera-name{font-size:11px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.camera-role{font-size:10px;padding:2px 4px;background:var(--bg-secondary, #1a1a1a);border:1px solid var(--border-color, #444);border-radius:3px;color:var(--text-primary, #e0e0e0)}.sync-offset{font-size:10px;color:var(--text-secondary, #888)}.camera-actions{display:flex;gap:4px;margin-top:6px}.btn-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary, #1a1a1a);border:1px solid var(--border-color, #444);border-radius:4px;color:var(--text-primary, #e0e0e0);cursor:pointer;font-size:11px;font-weight:700}.btn-icon:hover{background:var(--bg-hover, #333)}.btn-icon.btn-danger:hover{background:var(--accent-danger, #ff6b6b);color:#fff}.btn-small{padding:4px 10px;font-size:11px;border:none;border-radius:4px;cursor:pointer;font-weight:500}.btn-primary{background:var(--accent-primary, #4a9eff);color:#fff}.btn-primary:hover:not(:disabled){background:#3a8eef}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-success{background:var(--accent-success, #51cf66);color:#000}.btn-success:hover{background:#41bf56}.btn-danger{background:var(--accent-danger, #ff6b6b);color:#fff}.add-camera-dropdown{position:relative}.add-camera-btn{width:100%;min-height:80px;background:var(--bg-tertiary, #252525);border:2px dashed var(--border-color, #444);border-radius:6px;color:var(--text-secondary, #888);cursor:pointer;font-size:12px}.add-camera-btn:hover{border-color:var(--accent-primary, #4a9eff);color:var(--accent-primary, #4a9eff)}.add-camera-empty{padding:20px;text-align:center;color:var(--text-secondary, #666);font-size:11px}.dropdown-menu{position:absolute;top:100%;left:0;right:0;background:var(--bg-tertiary, #252525);border:1px solid var(--border-color, #444);border-radius:6px;box-shadow:0 4px 12px #0000004d;z-index:100;max-height:200px;overflow-y:auto;margin-top:4px}.dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:none;border:none;color:var(--text-primary, #e0e0e0);cursor:pointer;font-size:12px;text-align:left}.dropdown-item:hover{background:var(--bg-hover, #333)}.dropdown-thumb{width:40px;height:24px;object-fit:cover;border-radius:3px}.progress-container{display:flex;align-items:center;gap:10px;margin:8px 0}.progress-label{font-size:11px;color:var(--text-secondary, #888);white-space:nowrap}.progress-bar{flex:1;height:6px;background:var(--bg-tertiary, #252525);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:var(--accent-primary, #4a9eff);transition:width .2s ease}.progress-fill.error{background:var(--accent-danger, #ff6b6b)}.progress-text{font-size:11px;color:var(--text-secondary, #888);min-width:35px;text-align:right}.analysis-summary{display:flex;gap:16px;font-size:11px;color:var(--text-secondary, #888)}.transcript-viewer{max-height:150px;overflow-y:auto;background:var(--bg-tertiary, #252525);border-radius:4px;padding:8px}.transcript-empty{text-align:center;padding:20px;color:var(--text-secondary, #666);font-size:11px}.transcript-entry{display:flex;align-items:flex-start;gap:8px;padding:4px 0;border-bottom:1px solid var(--border-color, #333)}.transcript-entry:last-child{border-bottom:none}.transcript-time{font-size:10px;color:var(--accent-primary, #4a9eff);font-family:monospace;min-width:40px}.transcript-speaker{width:80px;padding:2px 4px;font-size:10px;background:var(--bg-secondary, #1a1a1a);border:1px solid var(--border-color, #444);border-radius:3px;color:var(--text-primary, #e0e0e0)}.transcript-text{flex:1;font-size:11px;color:var(--text-primary, #e0e0e0)}.style-select{padding:4px 8px;font-size:11px;background:var(--bg-secondary, #1a1a1a);border:1px solid var(--border-color, #444);border-radius:4px;color:var(--text-primary, #e0e0e0)}.edl-section{flex:1;min-height:0}.edl-preview{display:flex;flex-direction:column;gap:8px}.edl-empty{text-align:center;padding:30px 20px;color:var(--text-secondary, #666);font-size:11px}.edl-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:10px}.edl-legend-item{display:flex;align-items:center;gap:4px}.edl-legend-color{width:12px;height:12px;border-radius:2px}.edl-timeline{position:relative;height:40px;background:var(--bg-tertiary, #252525);border-radius:4px;overflow:hidden}.edl-clip{position:absolute;top:4px;bottom:4px;border-radius:3px;display:flex;align-items:center;padding:0 4px;min-width:20px;overflow:hidden}.edl-clip-label{font-size:9px;font-weight:500;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.edl-time-markers{display:flex;justify-content:space-between;font-size:10px;color:var(--text-secondary, #666);font-family:monospace}.warning-message{padding:8px;background:#ffd6001a;border:1px solid rgba(255,214,0,.3);border-radius:4px;color:#ffd600;font-size:11px;margin-top:8px}.error-message{padding:8px;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:4px;color:var(--accent-danger, #ff6b6b);font-size:11px;margin-top:8px}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--bg-secondary, #1a1a1a);border:1px solid var(--border-color, #444);border-radius:8px;width:400px;max-width:90vw;max-height:80vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid var(--border-color, #333)}.modal-header h3{margin:0;font-size:14px;font-weight:600}.btn-close{background:none;border:none;color:var(--text-secondary, #888);font-size:18px;cursor:pointer;padding:4px 8px}.btn-close:hover{color:var(--text-primary, #e0e0e0)}.modal-body{padding:16px}.settings-section{margin-bottom:20px}.settings-section:last-child{margin-bottom:0}.settings-section label{display:block;font-size:12px;font-weight:500;margin-bottom:8px;color:var(--text-primary, #e0e0e0)}.settings-section select,.settings-section textarea{width:100%;padding:8px;font-size:12px;background:var(--bg-tertiary, #252525);border:1px solid var(--border-color, #444);border-radius:4px;color:var(--text-primary, #e0e0e0);resize:vertical}.settings-hint{margin-top:4px;font-size:10px;color:var(--text-secondary, #666)}.api-key-status{display:flex;align-items:center;gap:10px}.api-key-set{color:var(--accent-success, #51cf66);font-size:12px}.api-key-input{display:flex;gap:8px}.api-key-input input{flex:1;padding:8px;font-size:12px;background:var(--bg-tertiary, #252525);border:1px solid var(--border-color, #444);border-radius:4px;color:var(--text-primary, #e0e0e0)}.transcript-panel{display:flex;flex-direction:column;height:100%;background:var(--bg-secondary, #1a1a1a);color:var(--text-primary, #e0e0e0);font-size:13px;overflow:hidden}.transcript-header{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid var(--border-color, #333);background:var(--bg-tertiary, #252525)}.transcript-header h2{margin:0;font-size:13px;font-weight:600}.transcript-header-actions{display:flex;align-items:center;gap:8px}.marker-toggle{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--text-secondary, #888);cursor:pointer}.marker-toggle input{margin:0}.marker-toggle span{user-select:none}.transcript-search{position:relative;padding:8px 12px;border-bottom:1px solid var(--border-color, #333)}.transcript-search input{width:100%;padding:6px 28px 6px 10px;font-size:12px;background:var(--bg-tertiary, #252525);border:1px solid var(--border-color, #444);border-radius:4px;color:var(--text-primary, #e0e0e0)}.transcript-search input:focus{outline:none;border-color:var(--accent-primary, #4a9eff)}.transcript-search input::placeholder{color:var(--text-secondary, #666)}.search-clear{position:absolute;right:18px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-secondary, #666);cursor:pointer;padding:2px 6px;font-size:14px}.search-clear:hover{color:var(--text-primary, #e0e0e0)}.transcript-clip-info{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--bg-tertiary, #252525);border-bottom:1px solid var(--border-color, #333)}.clip-name{font-size:11px;font-weight:500;color:var(--text-primary, #e0e0e0);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60%}.transcript-status{font-size:10px;padding:2px 6px;border-radius:3px}.transcript-status.ready{background:#51cf6633;color:var(--accent-success, #51cf66)}.transcript-status.transcribing{background:#4a9eff33;color:var(--accent-primary, #4a9eff)}.transcript-status.error{background:#ff6b6b33;color:var(--accent-danger, #ff6b6b)}.transcript-actions{padding:8px 12px;border-bottom:1px solid var(--border-color, #333)}.btn-transcribe{width:100%;padding:8px 12px;font-size:12px;font-weight:500;background:var(--accent-primary, #4a9eff);color:#fff;border:none;border-radius:4px;cursor:pointer}.btn-transcribe:hover:not(:disabled){background:#3a8eef}.btn-transcribe:disabled{opacity:.5;cursor:not-allowed}.btn-transcribe.btn-secondary{background:var(--bg-tertiary, #252525);border:1px solid var(--border-color, #444);color:var(--text-primary, #e0e0e0)}.btn-transcribe.btn-secondary:hover{background:var(--bg-hover, #333)}.btn-transcribe.btn-cancel,.btn-transcribe.btn-danger{background:#ff6b6b33;border:1px solid rgba(255,107,107,.4);color:var(--accent-danger, #ff6b6b)}.btn-transcribe.btn-cancel:hover,.btn-transcribe.btn-danger:hover{background:#ff6b6b4d}.transcript-btn-row{display:flex;gap:8px}.transcript-btn-row .btn-transcribe{flex:1}.transcript-language{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border-color, #333)}.transcript-language label{font-size:11px;color:var(--text-secondary, #888)}.transcript-language select{flex:1;padding:4px 8px;font-size:12px;background:var(--bg-tertiary, #252525);border:1px solid var(--border-color, #444);border-radius:4px;color:var(--text-primary, #e0e0e0);cursor:pointer}.transcript-language select:focus{outline:none;border-color:var(--accent-primary, #4a9eff)}.transcript-language select:disabled{opacity:.5;cursor:not-allowed}.transcript-message{padding:6px 12px;background:#4a9eff1a;border-bottom:1px solid var(--border-color, #333);font-size:11px;color:var(--accent-primary, #4a9eff);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.transcript-progress{height:3px;background:var(--bg-tertiary, #252525)}.transcript-progress-bar{height:100%;background:var(--accent-primary, #4a9eff);transition:width .2s ease}.transcript-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:8px 0}.transcript-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:100px;padding:20px;text-align:center;color:var(--text-secondary, #666)}.transcript-empty p{margin:0;font-size:12px}.transcript-block{padding:10px 12px;border-bottom:1px solid var(--border-color, #2a2a2a);overflow:hidden}.transcript-block-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.transcript-speaker{font-size:11px;font-weight:600;color:var(--text-secondary, #888)}.transcript-speaker:before{content:"...";margin-right:6px;letter-spacing:2px}.transcript-time{font-size:10px;color:var(--text-secondary, #666);font-family:monospace}.transcript-words{line-height:1.8;word-break:normal;overflow-wrap:normal;white-space:normal}.transcript-word{display:inline-block;padding:2px 3px;margin:1px;border-radius:3px;font-size:13px;color:var(--text-primary, #e0e0e0);cursor:pointer;transition:background .1s ease,color .1s ease;white-space:nowrap}.transcript-word:hover{background:#ffffff1a}.transcript-word.active{background:#fbbf24;color:#000;font-weight:600;border-radius:3px;animation:word-pulse .5s ease}@keyframes word-pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.transcript-word.highlighted{background:#fbbf244d;color:#fbbf24}.transcript-word.highlighted.active{background:#fbbf24;color:#000}.transcript-entry{padding:10px 12px;border-bottom:1px solid var(--border-color, #2a2a2a);cursor:pointer;transition:background .15s ease}.transcript-entry:hover{background:var(--bg-hover, #252525)}.transcript-entry.active{background:#4a9eff1a;border-left:3px solid var(--accent-primary, #4a9eff)}.transcript-entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.transcript-text{font-size:12px;line-height:1.5;color:var(--text-primary, #e0e0e0)}.transcript-footer{padding:8px 12px;border-top:1px solid var(--border-color, #333);background:var(--bg-tertiary, #252525)}.transcript-hint{font-size:10px;color:var(--text-secondary, #666)}.transcript-content::-webkit-scrollbar{width:6px}.transcript-content::-webkit-scrollbar-track{background:var(--bg-secondary, #1a1a1a)}.transcript-content::-webkit-scrollbar-thumb{background:var(--border-color, #444);border-radius:3px}.transcript-content::-webkit-scrollbar-thumb:hover{background:var(--text-secondary, #666)}.analysis-panel{display:flex;flex-direction:column;height:100%;background:var(--bg-secondary, #1a1a1a);color:var(--text-primary, #e0e0e0);font-size:13px;overflow:hidden}.analysis-header{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid var(--border-color, #333);background:var(--bg-tertiary, #252525)}.analysis-header h2{margin:0;font-size:13px;font-weight:600}.analysis-clip-info{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--bg-tertiary, #252525);border-bottom:1px solid var(--border-color, #333)}.analysis-clip-info .clip-name{font-size:11px;font-weight:500;color:var(--text-primary, #e0e0e0);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60%}.analysis-status{font-size:10px;padding:2px 6px;border-radius:3px}.analysis-status.ready{background:#51cf6633;color:var(--accent-success, #51cf66)}.analysis-status.analyzing{background:#4a9eff33;color:var(--accent-primary, #4a9eff)}.analysis-status.error{background:#ff6b6b33;color:var(--accent-danger, #ff6b6b)}.analysis-actions{padding:8px 12px;border-bottom:1px solid var(--border-color, #333)}.analysis-btn-row{display:flex;gap:8px}.btn-analyze{flex:1;padding:8px 12px;font-size:12px;font-weight:500;background:var(--accent-primary, #4a9eff);color:#fff;border:none;border-radius:4px;cursor:pointer}.btn-analyze:hover:not(:disabled){background:#3a8eef}.btn-analyze:disabled{opacity:.5;cursor:not-allowed}.btn-analyze.btn-secondary{background:var(--bg-tertiary, #252525);border:1px solid var(--border-color, #444);color:var(--text-primary, #e0e0e0)}.btn-analyze.btn-secondary:hover{background:var(--bg-hover, #333)}.btn-analyze.btn-danger{background:#ff6b6b33;border:1px solid rgba(255,107,107,.4);color:var(--accent-danger, #ff6b6b)}.btn-analyze.btn-danger:hover{background:#ff6b6b4d}.analysis-progress-section{padding:8px 12px;display:flex;flex-direction:column;gap:8px;border-bottom:1px solid var(--border-color, #333)}.analysis-progress{height:4px;background:var(--bg-tertiary, #252525);border-radius:2px;overflow:hidden}.analysis-progress-bar{height:100%;background:var(--accent-primary, #4a9eff);transition:width .2s ease}.btn-analyze.btn-cancel{background:#ff6b6b26;border:1px solid rgba(255,107,107,.3);color:var(--accent-danger, #ff6b6b)}.btn-analyze.btn-cancel:hover{background:#ff6b6b40}.analysis-stats{flex:1;overflow-y:auto;padding:12px}.stat-section{margin-bottom:16px}.stat-section h3{margin:0 0 8px;font-size:11px;font-weight:600;color:var(--text-secondary, #888);text-transform:uppercase;letter-spacing:.5px}.stat-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.stat-label{width:60px;font-size:11px;color:var(--text-secondary, #888)}.stat-bar-container{flex:1;height:8px;background:var(--bg-tertiary, #252525);border-radius:4px;overflow:hidden}.stat-bar{height:100%;border-radius:4px;transition:width .3s ease}.stat-bar.focus{background:linear-gradient(90deg,#22c55e,#4ade80)}.stat-bar.motion{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.stat-value{width:40px;text-align:right;font-size:11px;font-weight:500;color:var(--text-primary, #e0e0e0)}.analysis-legend{padding:12px;border-top:1px solid var(--border-color, #333);background:var(--bg-tertiary, #252525)}.analysis-legend h3{margin:0 0 8px;font-size:11px;font-weight:600;color:var(--text-secondary, #888);text-transform:uppercase;letter-spacing:.5px}.legend-items{display:flex;flex-wrap:wrap;gap:12px}.legend-item{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-secondary, #aaa)}.legend-color{width:12px;height:12px;border-radius:2px}.legend-color.focus{background:#22c55e}.legend-color.motion{background:#3b82f6}.legend-color.face{background:#eab308}.analysis-realtime{padding:12px;background:var(--bg-primary, #141414);border-bottom:1px solid var(--border-color, #333)}.analysis-realtime h3{margin:0 0 10px;font-size:11px;font-weight:600;color:var(--text-secondary, #888);text-transform:uppercase;letter-spacing:.5px}.realtime-grid{display:flex;flex-direction:column;gap:8px}.realtime-item{display:flex;align-items:center;gap:8px}.realtime-label{width:85px;font-size:11px;color:var(--text-secondary, #888)}.realtime-bar-container{flex:1;height:10px;background:var(--bg-tertiary, #252525);border-radius:5px;overflow:hidden}.realtime-bar{height:100%;border-radius:5px;transition:width .1s ease-out}.realtime-item.focus .realtime-bar{background:linear-gradient(90deg,#22c55e,#4ade80);box-shadow:0 0 6px #22c55e66}.realtime-item.motion .realtime-bar{background:linear-gradient(90deg,#3b82f6,#60a5fa);box-shadow:0 0 6px #3b82f666}.realtime-item.local-motion .realtime-bar{background:linear-gradient(90deg,#8b5cf6,#a78bfa);box-shadow:0 0 6px #8b5cf666}.realtime-value{width:40px;text-align:right;font-size:12px;font-weight:600;color:var(--text-primary, #e0e0e0)}.realtime-item.focus .realtime-value{color:#4ade80}.realtime-item.motion .realtime-value{color:#60a5fa}.realtime-item.local-motion .realtime-value,.realtime-item.local-motion .realtime-label{color:#a78bfa}.realtime-item.faces{justify-content:space-between}.realtime-item.faces .realtime-value.face-count{width:auto;font-size:14px;color:#fbbf24}.realtime-item.scene-cut{margin-top:4px}.scene-cut-badge{padding:3px 8px;font-size:10px;font-weight:600;background:#ef444433;color:#f87171;border:1px solid rgba(239,68,68,.4);border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.analysis-realtime.analysis-outside{opacity:.6}.realtime-placeholder{display:flex;align-items:center;justify-content:center;height:40px;color:var(--text-secondary, #666);font-size:11px;font-style:italic}.analysis-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:100px;padding:20px;text-align:center;color:var(--text-secondary, #666)}.analysis-empty p{margin:0;font-size:12px}.analysis-footer{padding:8px 12px;border-top:1px solid var(--border-color, #333);background:var(--bg-tertiary, #252525)}.analysis-hint{font-size:10px;color:var(--text-secondary, #666)}.analysis-stats::-webkit-scrollbar{width:6px}.analysis-stats::-webkit-scrollbar-track{background:var(--bg-secondary, #1a1a1a)}.analysis-stats::-webkit-scrollbar-thumb{background:var(--border-color, #444);border-radius:3px}.analysis-stats::-webkit-scrollbar-thumb:hover{background:var(--text-secondary, #666)}.ai-chat-panel{display:flex;flex-direction:column;height:100%;background:var(--bg-secondary);color:var(--text-primary)}.ai-chat-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);flex-shrink:0}.ai-chat-header h2{margin:0;font-size:14px;font-weight:600}.ai-chat-controls{display:flex;gap:8px;align-items:center}.model-select{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);padding:4px 8px;font-size:12px;cursor:pointer}.model-select:hover{border-color:var(--accent)}.btn-clear{background:transparent;border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);padding:4px 8px;font-size:11px;cursor:pointer;transition:all .15s}.btn-clear:hover:not(:disabled){border-color:var(--accent);color:var(--text-primary)}.btn-clear:disabled{opacity:.5;cursor:not-allowed}.ai-chat-empty{flex:1;display:flex;align-items:center;justify-content:center}.ai-chat-no-key{text-align:center;padding:24px}.ai-chat-no-key p{color:var(--text-secondary);margin:0 0 16px}.ai-chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.ai-chat-welcome{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-secondary)}.ai-chat-welcome p{margin:0 0 4px}.welcome-hint{font-size:11px;opacity:.7}.ai-chat-message{padding:10px 12px;border-radius:8px;max-width:90%}.ai-chat-message.user{background:#3a4550;color:var(--text-primary);align-self:flex-end;border-bottom-right-radius:4px;border:1px solid #4a5560}.ai-chat-message.assistant{background:var(--bg-tertiary);align-self:flex-start;border-bottom-left-radius:4px}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:10px;opacity:.7}.message-role{font-weight:600;text-transform:uppercase;letter-spacing:.5px}.message-content{font-size:13px;line-height:1.5;user-select:text;-webkit-user-select:text;cursor:text}.message-content p{margin:0 0 4px}.message-content p:last-child{margin-bottom:0}.typing-indicator{display:inline-flex;gap:4px}.typing-indicator span{width:6px;height:6px;background:var(--text-secondary);border-radius:50%;animation:typing 1.4s infinite ease-in-out both}.typing-indicator span:nth-child(1){animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.ai-chat-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#f87171;padding:10px 12px;border-radius:6px;font-size:12px;display:flex;align-items:center;gap:8px}.error-icon{flex-shrink:0}.ai-chat-input-area{display:flex;gap:8px;padding:12px 16px;background:var(--bg-tertiary);border-top:1px solid var(--border-color);flex-shrink:0}.ai-chat-input{flex:1;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);padding:8px 12px;font-size:13px;font-family:inherit;resize:none;line-height:1.4}.ai-chat-input:focus{outline:none;border-color:var(--accent)}.ai-chat-input::placeholder{color:var(--text-secondary)}.btn-send{background:var(--accent);border:none;border-radius:6px;color:#fff;padding:8px 16px;font-size:12px;font-weight:500;cursor:pointer;transition:background .15s;align-self:flex-end}.btn-send:hover:not(:disabled){background:var(--accent-hover)}.btn-send:disabled{opacity:.5;cursor:not-allowed}.editor-mode-toggle{display:flex;align-items:center;gap:4px;cursor:pointer;font-size:11px;color:var(--text-secondary)}.editor-mode-toggle input{cursor:pointer}.editor-mode-toggle .toggle-label{user-select:none}.editor-mode-toggle input:checked+.toggle-label{color:var(--accent)}.tool-calls{margin-top:8px;display:flex;flex-direction:column;gap:4px}.tool-call{display:flex;flex-direction:column;gap:2px;padding:6px 8px;background:#0003;border-radius:4px;border-left:2px solid var(--accent)}.tool-call-name{font-size:11px;font-weight:600;color:var(--accent);font-family:monospace}.tool-call-args{font-size:10px;color:var(--text-secondary);font-family:monospace;word-break:break-all;user-select:text;-webkit-user-select:text}.ai-chat-message.tool-result{background:#0000004d;border:1px solid var(--border-color);padding:8px;max-width:95%;align-self:center}.tool-result-header{display:flex;align-items:center;gap:6px;margin-bottom:6px;font-size:11px}.tool-icon{font-size:12px}.tool-name{font-weight:600;color:var(--accent);font-family:monospace}.tool-result-content{font-size:10px;font-family:monospace;color:var(--text-secondary);margin:0;padding:6px;background:#0003;border-radius:4px;overflow-x:auto;max-height:150px;overflow-y:auto;white-space:pre-wrap;word-break:break-word;user-select:text;-webkit-user-select:text;cursor:text}.tool-action{font-size:12px;color:var(--accent);font-style:italic;animation:pulse 1.5s infinite}.ai-video-panel{display:flex;flex-direction:column;height:100%;background:var(--bg-secondary);color:var(--text-primary)}.panel-tabs-row{display:flex;align-items:center;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);flex-shrink:0;padding-right:8px}.panel-tabs{display:flex;flex:1}.panel-tab{padding:10px 16px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s}.panel-tab:hover{color:var(--text-primary);background:#ffffff08}.panel-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.provider-select,.service-select{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);padding:4px 8px;font-size:11px;cursor:pointer;flex-shrink:0}.provider-select:hover,.service-select:hover{border-color:var(--accent)}.no-key-hint{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:16px}.ai-video-empty{flex:1;display:flex;align-items:center;justify-content:center}.ai-video-no-key{text-align:center;padding:24px}.no-key-icon{font-size:32px;display:block;margin-bottom:12px}.ai-video-no-key p{color:var(--text-secondary);margin:0 0 16px}.btn-settings{background:var(--accent);border:none;border-radius:4px;color:#fff;padding:8px 16px;font-size:12px;cursor:pointer;transition:background .15s}.btn-settings:hover{background:var(--accent-hover)}.ai-video-content{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:16px}.generation-tabs{display:flex;gap:4px;background:var(--bg-tertiary);border-radius:6px;padding:4px}.generation-tabs .tab{flex:1;padding:8px 12px;background:transparent;border:none;border-radius:4px;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s}.generation-tabs .tab:hover:not(:disabled){color:var(--text-primary)}.generation-tabs .tab.active{background:var(--accent);color:#fff}.generation-tabs .tab:disabled{opacity:.5;cursor:not-allowed}.aspect-ratio-row{display:flex;flex-direction:column;gap:6px}.aspect-ratio-row>label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.aspect-ratio-options{display:flex;gap:4px}.aspect-btn{flex:1;padding:8px 12px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s}.aspect-btn:hover:not(:disabled){border-color:var(--accent);color:var(--text-primary)}.aspect-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.aspect-btn:disabled{opacity:.5;cursor:not-allowed}.image-inputs{display:grid;grid-template-columns:1fr 1fr;gap:12px}.image-cropper-group{display:flex;flex-direction:column;gap:6px}.image-cropper-group label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.image-cropper{position:relative;background:var(--bg-tertiary);border:2px dashed var(--border-color);border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .15s,background .15s;overflow:hidden}.image-cropper:hover{border-color:var(--accent);background:rgba(var(--accent-rgb),.05)}.image-cropper.has-image{border-style:solid;cursor:grab}.image-cropper.has-image:active,.image-cropper.dragging{cursor:grabbing}.image-cropper-viewport{position:absolute;inset:0;overflow:hidden;display:flex;align-items:center;justify-content:center}.image-cropper-viewport img{width:100%;height:100%;object-fit:cover;pointer-events:none;user-select:none;transition:transform .05s ease-out}.image-cropper .drop-hint{font-size:11px;color:var(--text-secondary)}.image-cropper .cropper-buttons{position:absolute;top:4px;right:4px;display:flex;gap:4px;z-index:10}.image-cropper .fit-image,.image-cropper .clear-image{width:20px;height:20px;background:#000000b3;border:none;border-radius:4px;color:#fff;font-size:12px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.image-cropper .fit-image:hover{background:var(--accent)}.image-cropper .clear-image:hover{background:#ef4444e6}.image-cropper .zoom-indicator{position:absolute;bottom:4px;left:4px;background:#000000b3;color:#fff;font-size:10px;padding:2px 6px;border-radius:3px;pointer-events:none}.image-cropper .crop-hint{position:absolute;bottom:4px;right:4px;background:#0009;color:#fffc;font-size:9px;padding:2px 6px;border-radius:3px;pointer-events:none;opacity:0;transition:opacity .15s}.image-cropper:hover .crop-hint{opacity:1}.btn-use-current{padding:6px 10px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:10px;cursor:pointer;transition:all .15s}.btn-use-current:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:#fff}.btn-use-current:disabled{opacity:.5;cursor:not-allowed}.input-group{display:flex;flex-direction:column;gap:6px}.input-group label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.prompt-input{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);padding:10px 12px;font-size:13px;font-family:inherit;resize:none;line-height:1.4}.prompt-input:focus{outline:none;border-color:var(--accent)}.prompt-input::placeholder{color:var(--text-secondary)}.prompt-input.negative{font-size:12px;padding:8px 10px}.params-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.param-group{display:flex;flex-direction:column;gap:4px}.param-group label{font-size:10px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.param-group select,.param-group input[type=number]{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);padding:6px 8px;font-size:12px;cursor:pointer}.param-group select:hover,.param-group input[type=number]:hover{border-color:var(--accent)}.param-group select:focus,.param-group input[type=number]:focus{outline:none;border-color:var(--accent)}.param-group.cfg-slider{grid-column:span 2}.param-group input[type=range]{width:100%;height:4px;background:var(--bg-tertiary);border-radius:2px;cursor:pointer;-webkit-appearance:none}.param-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;background:var(--accent);border-radius:50%;cursor:pointer}.timeline-option{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--bg-tertiary);border-radius:6px;cursor:pointer;transition:background .15s}.timeline-option:hover{background:#ffffff0d}.timeline-option input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.timeline-option span{font-size:12px;color:var(--text-secondary)}.credit-info{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--bg-tertiary);border-radius:6px;font-size:12px}.credit-balance{display:flex;align-items:center;gap:6px}.balance-amount{color:var(--success, #22c55e);font-weight:500}.balance-loading{color:var(--text-secondary)}.btn-refresh-balance{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:14px;padding:2px 4px;border-radius:3px;transition:all .15s}.btn-refresh-balance:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.btn-refresh-balance:disabled{opacity:.5;cursor:not-allowed}.credit-cost{color:var(--text-secondary)}.credit-link{color:var(--accent);text-decoration:none;font-size:11px}.credit-link:hover{text-decoration:underline}.btn-generate{width:100%;padding:12px 16px;background:var(--accent);border:none;border-radius:6px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}.btn-generate:hover:not(:disabled){background:var(--accent-hover)}.btn-generate:disabled{opacity:.5;cursor:not-allowed}.ai-video-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#f87171;padding:10px 12px;border-radius:6px;font-size:12px;display:flex;align-items:center;gap:8px}.error-icon{flex-shrink:0;width:18px;height:18px;background:#ef4444;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}.jobs-section{margin-top:8px;border-top:1px solid var(--border-color);padding-top:16px}.jobs-section h3{font-size:12px;font-weight:600;margin:0 0 12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.jobs-list{display:flex;flex-direction:column;gap:10px}.job-item{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:10px 12px}.job-item.completed{border-color:#22c55e4d}.job-item.failed{border-color:#ef44444d}.job-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.job-type{font-size:10px;font-weight:600;background:var(--bg-secondary);padding:2px 6px;border-radius:3px;color:var(--text-secondary)}.job-status{font-size:11px;flex:1}.job-status.pending{color:var(--text-secondary)}.job-status.processing{color:var(--accent);animation:pulse 1.5s infinite}.job-status.completed{color:#22c55e}.job-status.failed{color:#ef4444}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.btn-remove{width:18px;height:18px;background:transparent;border:1px solid var(--border-color);border-radius:3px;color:var(--text-secondary);font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center}.btn-remove:hover{background:#ef444433;border-color:#ef4444;color:#ef4444}.job-prompt{font-size:12px;color:var(--text-primary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.job-error{font-size:11px;color:#ef4444;margin-top:6px}.job-result{margin-top:10px;display:flex;flex-direction:column;gap:8px}.job-result video{width:100%;border-radius:6px;background:#000}.btn-download{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:11px;text-decoration:none;cursor:pointer;transition:all .15s}.btn-download:hover{background:var(--accent);border-color:var(--accent);color:#fff}.ai-video-history{flex:1;overflow-y:auto;padding:16px}.history-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;text-align:center}.history-empty p{color:var(--text-primary);margin:0 0 4px;font-size:14px}.history-empty span{color:var(--text-secondary);font-size:12px}.history-list{display:flex;flex-direction:column;gap:12px}.history-item{display:flex;gap:12px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:10px;cursor:grab;transition:all .15s}.history-item:hover{border-color:var(--accent)}.history-item:active{cursor:grabbing}.history-preview{position:relative;width:120px;height:68px;flex-shrink:0;border-radius:4px;overflow:hidden;background:#000}.history-preview video{width:100%;height:100%;object-fit:cover;cursor:pointer}.history-preview-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--text-secondary);background:var(--bg-secondary)}.play-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:32px;height:32px;background:#000000b3;border:none;border-radius:50%;color:#fff;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.8;transition:all .15s}.play-overlay:hover{opacity:1;background:var(--accent)}.history-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.history-prompt{font-size:12px;color:var(--text-primary);line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.history-meta{display:flex;gap:8px;align-items:center;font-size:10px}.history-type{background:var(--bg-secondary);padding:2px 6px;border-radius:3px;color:var(--text-secondary);font-weight:600}.history-date{color:var(--text-secondary)}.history-added{color:#22c55e;font-weight:500}.history-actions{display:flex;gap:6px;margin-top:auto}.btn-add-timeline{padding:4px 8px;background:var(--accent);border:none;border-radius:3px;color:#fff;font-size:10px;font-weight:500;cursor:pointer;transition:background .15s}.btn-add-timeline:hover{background:var(--accent-hover)}.btn-remove-history{width:20px;height:20px;background:transparent;border:1px solid var(--border-color);border-radius:3px;color:var(--text-secondary);font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center}.btn-remove-history:hover{background:#ef444433;border-color:#ef4444;color:#ef4444}.dock-container{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;position:relative;overflow:hidden}.dock-container.dragging{cursor:grabbing;user-select:none}.dock-root{flex:1;display:flex;min-width:0;min-height:0}.dock-split{display:flex;flex:1;min-width:0;min-height:0}.dock-split.horizontal{flex-direction:row}.dock-split.vertical{flex-direction:column}.dock-split.resizing{cursor:col-resize;user-select:none}.dock-split.vertical.resizing{cursor:row-resize}.dock-split-child{display:flex;min-width:0;min-height:0;overflow:hidden}.dock-resize-handle{flex-shrink:0;background:var(--border-color);transition:background .15s}.dock-resize-handle.horizontal{width:4px;cursor:col-resize}.dock-resize-handle.vertical{height:4px;cursor:row-resize}.dock-resize-handle:hover,.dock-split.resizing .dock-resize-handle{background:var(--accent)}.dock-tab-pane{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg-secondary);position:relative}.dock-tab-pane.drop-target{outline:2px solid var(--accent);outline-offset:-2px}.dock-tab-bar{display:flex;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);min-height:32px;flex-shrink:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.dock-tab-bar::-webkit-scrollbar{display:none}.dock-tab-bar.middle-dragging{cursor:grabbing;user-select:none}.dock-tab-handle{display:flex;align-items:center;justify-content:center;padding:0 8px;height:32px;background:transparent;border-right:1px solid var(--border-color);color:var(--text-secondary);font-size:10px;letter-spacing:-2px;cursor:grab;user-select:none;transition:background .15s,color .15s}.dock-tab-handle:hover{background:var(--bg-hover);color:var(--text-primary)}.dock-tab-handle:active{cursor:grabbing}.dock-tab-handle.hold-glow{animation:holdGlow .5s ease-out forwards;cursor:grabbing}.dock-tab-handle.hold-ready{box-shadow:0 0 16px 6px #00d4ffcc,inset 0 0 10px #00d4ff4d;background:#00d4ff33;cursor:grabbing}.dock-tab-handle.hold-fade{animation:holdGlowFade .5s ease-out forwards}.dock-tab{display:flex;align-items:center;padding:0 16px;height:32px;background:transparent;border:none;border-right:1px solid var(--border-color);color:var(--text-secondary);font-size:12px;cursor:grab;white-space:nowrap;transition:background .15s,color .15s;user-select:none;position:relative}.dock-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.dock-tab.active{background:var(--bg-secondary);color:var(--text-primary);border-bottom:2px solid var(--accent);margin-bottom:-1px}.dock-tab.dragging{opacity:.5}@keyframes holdGlow{0%{box-shadow:0 0 #00d4ff00;background:transparent}to{box-shadow:0 0 12px 4px #00d4ff99,inset 0 0 8px #00d4ff33;background:#00d4ff26}}@keyframes holdGlowFade{0%{box-shadow:0 0 12px 4px #00d4ff99,inset 0 0 8px #00d4ff33;background:#00d4ff26}to{box-shadow:0 0 #00d4ff00;background:transparent}}.dock-tab.hold-glow{animation:holdGlow .5s ease-out forwards;cursor:grabbing}.dock-tab.hold-ready{box-shadow:0 0 16px 6px #00d4ffcc,inset 0 0 10px #00d4ff4d;background:#00d4ff33;cursor:grabbing}.dock-tab.hold-fade{animation:holdGlowFade .5s ease-out forwards}.dock-tab-title{font-weight:500}.dock-tab-close{display:flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:8px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:3px;font-size:14px;line-height:1;padding:0;opacity:.6;transition:opacity .15s,background .15s}.dock-tab-close:hover{opacity:1;background:#ffffff1a;color:var(--text-primary)}.dock-tab.active .dock-tab-close{opacity:.8}.dock-tab[draggable=true]{cursor:grab}.dock-tab[draggable=true]:active{cursor:grabbing}.dock-tab.drop-target-tab{border-left:2px solid var(--accent);margin-left:-2px}.dock-tab.drop-target-tab:before{content:"";position:absolute;left:-1px;top:4px;bottom:4px;width:2px;background:var(--accent);border-radius:1px}.dock-panel-content{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;position:relative}.dock-panel-content-inner{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:auto;transform-origin:top left;font-size:calc(1em * var(--panel-zoom, 1))}.dock-panel-content-inner>*{flex:1;min-height:0}.dock-panel-content-inner canvas,.dock-panel-content-inner video{font-size:1rem}.dock-zoom-indicator{position:absolute;bottom:8px;right:8px;background:#000000b3;color:var(--accent);padding:4px 8px;border-radius:4px;font-size:11px;font-weight:500;pointer-events:none;z-index:50}.dock-drop-overlay{position:absolute;background:#00d4ff26;border:2px dashed var(--accent);pointer-events:none;z-index:100}.dock-drop-overlay.left{top:0;left:0;width:50%;height:100%}.dock-drop-overlay.right{top:0;right:0;width:50%;height:100%}.dock-drop-overlay.top{top:0;left:0;width:100%;height:50%}.dock-drop-overlay.bottom{bottom:0;left:0;width:100%;height:50%}.dock-drop-overlay.center{inset:10%;width:auto;height:auto}.dock-tab-slots-overlay{position:absolute;top:0;left:0;right:0;height:32px;display:flex;align-items:center;padding:0 4px;pointer-events:none;z-index:100;background:#0000004d;gap:4px}.dock-tab-slot{width:40px;height:24px;border:2px dashed var(--border-color);border-radius:4px;background:transparent;transition:all .15s ease;flex-shrink:0}.dock-tab-slot.active{border-color:var(--accent);background:#00d4ff40;box-shadow:0 0 8px #00d4ff66;transform:scale(1.1)}.dock-drag-preview{position:fixed;background:var(--bg-tertiary);border:1px solid var(--accent);border-radius:4px;padding:6px 12px;font-size:12px;color:var(--text-primary);pointer-events:none;z-index:10000;box-shadow:0 4px 12px #0000004d}.floating-panel{position:fixed;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 8px 32px #0006;display:flex;flex-direction:column;overflow:hidden;min-width:200px;min-height:100px}.floating-panel.dragging{opacity:.9;box-shadow:0 12px 48px #00000080}.floating-panel-header{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);cursor:grab;user-select:none}.floating-panel-header:active{cursor:grabbing}.floating-panel-drag-handle{color:var(--text-secondary);font-size:10px;letter-spacing:-2px}.floating-panel-title{font-size:13px;font-weight:500;color:var(--text-primary)}.floating-panel-content{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.floating-panel-content>*{flex:1;min-height:0}.floating-panel-resize{position:absolute;bottom:0;right:0;width:16px;height:16px;cursor:se-resize;background:linear-gradient(135deg,transparent 50%,var(--border-color) 50%);opacity:.5;transition:opacity .15s}.floating-panel-resize:hover{opacity:1}.panel-placeholder{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);font-size:14px}:root{--bg-primary: #0a0a0a;--bg-secondary: #141414;--bg-tertiary: #1a1a1a;--bg-hover: #252525;--border-color: #333;--text-primary: #f0f0f0;--text-secondary: #888;--accent: #888;--accent-hover: #aaa;--accent-timeline: #00d4ff;--accent-timeline-hover: #00b8e6;--danger: #ff4444;--success: #44ff44;--warning: #ffaa00}*{box-sizing:border-box}body{margin:0;padding:0;background:var(--bg-primary);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;overflow:hidden;user-select:none;-webkit-user-select:none}input,textarea{user-select:text;-webkit-user-select:text}.app{display:flex;flex-direction:column;height:100vh;width:100vw;overflow:hidden}.toolbar{display:flex;align-items:center;gap:0;padding:0 12px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);min-height:32px;flex-shrink:0}.toolbar-section{display:flex;align-items:center;gap:8px;padding:0 12px}.toolbar-spacer{flex:1}.toolbar-center{display:flex;align-items:center;gap:12px;justify-content:center}.toolbar-right{margin-left:0}.toolbar-right .version{color:var(--text-secondary);font-size:11px;margin-right:12px;opacity:.7}.toolbar-project{display:flex;align-items:center;height:32px;padding:0 12px 0 4px;border-right:1px solid var(--border-color)}.toolbar-project .project-name{font-weight:600;font-size:13px;color:var(--text-primary);cursor:pointer;padding:4px 8px;border-radius:3px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar-project .project-name:hover{background:var(--bg-hover)}.toolbar-project .project-name-input{font-size:13px;font-weight:600;padding:4px 8px;border-radius:3px;border:1px solid var(--accent);background:var(--bg-primary);color:var(--text-primary);width:150px}.toolbar-project .restore-permission-btn{font-size:12px;font-weight:500;padding:4px 12px;border-radius:4px;border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;transition:all .15s ease}.toolbar-project .restore-permission-btn:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.toolbar-project .restore-permission-btn:disabled{opacity:.6;cursor:not-allowed}.menu-bar{display:flex;align-items:center;height:32px}.menu-item{position:relative}.menu-trigger{background:transparent;border:none;color:var(--text-secondary);font-size:13px;padding:6px 12px;cursor:pointer;height:32px;transition:background .1s,color .1s}.menu-trigger:hover,.menu-trigger.active{background:var(--bg-hover);color:var(--text-primary)}.menu-dropdown{position:absolute;top:100%;left:0;min-width:200px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;box-shadow:0 4px 16px #0006;z-index:10000;padding:4px 0;overflow:visible}.menu-dropdown-wide{min-width:220px}.menu-option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 16px;background:transparent;border:none;color:var(--text-primary);font-size:13px;cursor:pointer;text-align:left;transition:background .1s}.menu-option:hover{background:var(--bg-hover)}.menu-option:disabled,.menu-option.disabled{color:var(--text-muted);cursor:default}.menu-option:disabled:hover,.menu-option.disabled:hover{background:transparent}.menu-option .shortcut{color:var(--text-muted);font-size:11px;margin-left:24px}.menu-option .menu-hint{color:var(--text-muted);font-size:10px;margin-left:auto;padding-left:12px}.menu-option.checked{color:var(--accent)}.menu-option.project-item{padding-right:8px}.menu-option .delete-btn{background:transparent;border:none;color:var(--text-muted);font-size:16px;cursor:pointer;padding:2px 6px;border-radius:3px;opacity:0;transition:opacity .1s,background .1s}.menu-option:hover .delete-btn{opacity:1}.menu-option .delete-btn:hover{background:#f443;color:var(--danger)}.menu-separator{height:1px;background:var(--border-color);margin:4px 0}.menu-submenu{padding:0}.menu-label{display:block;padding:8px 16px 4px;font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.menu-empty{display:block;padding:8px 16px;font-size:12px;color:var(--text-muted);font-style:italic}.menu-info{display:block;padding:4px 16px 8px;font-size:11px;color:var(--text-secondary)}.menu-sublabel{display:block;padding:6px 16px 2px;font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px}.menu-subseparator{height:1px;margin:4px 12px;background:var(--border-color)}.menu-item-with-submenu{position:relative}.menu-item-with-submenu>.menu-option{display:flex;justify-content:space-between;align-items:center}.menu-item-with-submenu>.menu-option:after{content:"▶";font-size:8px;color:var(--text-muted);margin-left:12px}.menu-nested-submenu{display:none;position:absolute;left:100%;top:-4px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 8px 24px #00000080;min-width:140px;padding:4px 0;z-index:1001}.menu-item-with-submenu:hover>.menu-nested-submenu{display:block}.project-name.no-project{color:var(--text-secondary);cursor:default;font-style:italic}.project-name.no-project:hover{background:transparent}.menu-slider{display:flex;align-items:center;padding:8px 16px;gap:8px}.menu-slider input[type=range]{flex:1;height:4px;appearance:none;background:var(--bg-tertiary);border-radius:2px;cursor:pointer}.menu-slider input[type=range]::-webkit-slider-thumb{appearance:none;width:12px;height:12px;border-radius:50%;background:var(--accent);cursor:pointer}.menu-slider input[type=range]::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--accent);cursor:pointer;border:none}.menu-slider .slider-value{font-size:11px;color:var(--text-muted);min-width:36px;text-align:right}.eq-container{display:flex;gap:4px;padding:8px 16px;justify-content:center}.eq-band{display:flex;flex-direction:column;align-items:center;gap:4px}.eq-slider{writing-mode:vertical-lr;direction:rtl;width:20px;height:80px;appearance:none;background:var(--bg-tertiary);border-radius:2px;cursor:pointer}.eq-slider::-webkit-slider-thumb{appearance:none;width:16px;height:8px;border-radius:2px;background:var(--accent);cursor:pointer}.eq-slider::-moz-range-thumb{width:16px;height:8px;border-radius:2px;background:var(--accent);cursor:pointer;border:none}.eq-label{font-size:9px;color:var(--text-muted);text-align:center}.status{font-size:12px}.status.ready{color:var(--success)}.status.loading{color:var(--warning)}.project-section{position:relative}.project-name{font-size:14px;color:var(--text-primary);cursor:pointer;padding:4px 8px;border-radius:4px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-name:hover{background:var(--bg-hover)}.project-name-input{font-size:14px;padding:4px 8px;border-radius:4px;border:1px solid var(--accent);background:var(--bg-primary);color:var(--text-primary);width:150px}.project-buttons{display:flex;gap:4px}.project-menu{position:absolute;top:100%;left:0;margin-top:4px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;min-width:280px;max-height:300px;overflow-y:auto;z-index:1000;box-shadow:0 4px 12px #0000004d}.project-menu-header{padding:8px 12px;font-size:12px;color:var(--text-secondary);border-bottom:1px solid var(--border-color)}.project-menu-empty{padding:16px;text-align:center;color:var(--text-secondary);font-size:13px}.project-menu-item{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;border-bottom:1px solid var(--border-color)}.project-menu-item:last-child{border-bottom:none}.project-menu-item:hover{background:var(--bg-hover)}.project-menu-name{flex:1;font-size:13px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-menu-date{font-size:11px;color:var(--text-secondary)}.project-menu-delete{width:20px;height:20px;padding:0;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:16px;line-height:1;border-radius:4px;opacity:0;transition:opacity .15s}.project-menu-item:hover .project-menu-delete{opacity:1}.project-menu-delete:hover{background:#f003;color:#ff6b6b}.main-content{display:flex;flex:1;overflow:hidden}.left-column{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.slots-area{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg-secondary);overflow:hidden}.resize-handle{width:4px;background:var(--border-color);cursor:col-resize;flex-shrink:0;transition:background .2s}.resize-handle:hover,.resizing .resize-handle{background:var(--accent)}.resizing{cursor:col-resize;user-select:none}.right-column{width:360px;flex-shrink:0;display:flex;flex-direction:column;background:var(--bg-secondary)}.effects-section{flex:1;overflow-y:auto}.floating-preview{position:fixed;z-index:1000;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 8px 32px #00000080;overflow:hidden;min-width:280px;max-width:800px}.floating-preview-header{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);cursor:grab;user-select:none;font-size:13px;font-weight:500}.floating-preview-header:active{cursor:grabbing}.drag-handle{color:var(--text-secondary);font-size:12px;letter-spacing:-2px}.dragging-preview{cursor:grabbing;user-select:none}.dragging-preview .floating-preview{opacity:.95;box-shadow:0 12px 48px #0009}.preview-container{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000;height:100%;width:100%;overflow:hidden;position:relative}.preview-stats{position:absolute;top:8px;right:8px;font-size:11px;color:var(--text-secondary);background:#000000d9;padding:4px 8px;border-radius:4px;z-index:10;cursor:pointer;font-family:SF Mono,Consolas,monospace;user-select:none;backdrop-filter:blur(4px);transition:all .15s ease}.preview-stats:hover{background:#000000f2}.preview-stats-compact{min-width:80px}.preview-stats-expanded{min-width:200px;padding:8px 12px}.stats-header{margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.15)}.stats-section{margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.08)}.stats-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.stats-label{font-size:9px;text-transform:uppercase;letter-spacing:.5px;opacity:.5;margin-bottom:4px}.stats-row{display:flex;justify-content:space-between;gap:12px;font-size:10px;line-height:1.6}.stats-bar-container{height:4px;background:#ffffff1a;border-radius:2px;margin:4px 0;display:flex;overflow:hidden}.stats-bar{height:100%;transition:width .2s ease}.stats-bar-import{background:#4af}.stats-bar-render{background:#4f4}.stats-bar-submit{background:#fa4}.preview-canvas-wrapper{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#111}.preview-canvas-wrapper.show-transparency-grid .preview-canvas{background-color:#404040;background-image:linear-gradient(45deg,#303030 25%,transparent 25%),linear-gradient(-45deg,#303030 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#303030 75%),linear-gradient(-45deg,transparent 75%,#303030 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0px}.preview-canvas{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;background:#000;display:block}.loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--text-secondary)}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.panel-header h3,.panel-header h4{margin:0;font-size:14px;font-weight:600}.panel-empty{padding:24px 16px;text-align:center;color:var(--text-secondary)}.layer-panel{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.slots-panel .panel-header{display:flex;justify-content:space-between;align-items:center}.slot-count{font-size:12px;color:var(--text-secondary)}.grid-controls{display:flex;gap:4px}.grid-btn{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:14px;width:28px;height:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.grid-btn:hover{background:var(--accent);border-color:var(--accent);color:#000}.slots-grid-with-triggers{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:8px;display:grid;grid-auto-rows:min-content;gap:6px;align-content:start}.row-trigger-btn,.column-trigger-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:11px;font-weight:600;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center}.column-trigger-btn{height:28px}.row-trigger-btn:hover,.column-trigger-btn:hover{background:var(--accent);border-color:var(--accent);color:#000}.row-trigger-btn:active,.column-trigger-btn:active{transform:scale(.95)}.row-trigger-btn.active,.column-trigger-btn.active{background:var(--accent);border-color:var(--accent);color:#000;box-shadow:0 0 10px var(--accent)}.slot-item{position:relative;aspect-ratio:1;background:var(--bg-tertiary);border:2px dashed var(--border-color);border-radius:6px;overflow:hidden;cursor:pointer;transition:all .2s;display:flex;flex-direction:column}.slot-item.empty{opacity:.4}.slot-item.has-layer{border-style:solid;opacity:.6}.slot-item.has-media{opacity:1;border-color:var(--border-color)}.slot-item:hover{border-color:#555;opacity:1}.slot-item.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.slot-item.dragging{opacity:.5;transform:scale(.95)}.slot-item.drag-over{border-color:var(--accent);border-style:solid;background:#00d4ff1a}.slot-item.column-highlight,.slot-item.row-highlight{border-color:var(--accent);box-shadow:0 0 12px var(--accent),inset 0 0 20px #00d4ff33;opacity:1}.slot-item[draggable=true]{cursor:grab}.slot-item[draggable=true]:active{cursor:grabbing}.slot-header{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;background:transparent;font-size:22px;position:absolute;top:0;left:0;right:0;z-index:1}.slot-number{color:var(--text-secondary);font-weight:600;text-shadow:0 1px 3px rgba(0,0,0,.8)}.slot-preview{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#000}.slot-thumbnail{width:100%;height:100%;object-fit:cover}.slot-empty-media{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);font-size:20px;transition:all .2s}.slot-empty-media:hover{background:var(--bg-hover);color:var(--accent)}.slot-placeholder{width:100%;height:100%;display:flex;align-items:flex-start;justify-content:flex-end;padding:4px 6px;cursor:pointer}.slot-placeholder:hover{background:var(--bg-hover)}.slot-add{font-size:32px;color:var(--text-secondary);opacity:0;cursor:pointer;transition:opacity .15s,color .15s,transform .15s}.slot-placeholder:hover .slot-add{opacity:.6}.slot-add:hover{opacity:1!important;color:var(--accent);transform:scale(1.2)}.slot-controls{position:absolute;bottom:4px;right:4px;z-index:1}.btn-clear{background:#00000080;border:none;color:var(--danger);cursor:pointer;font-size:20px;padding:4px 8px;line-height:1;border-radius:4px;text-shadow:0 1px 3px rgba(0,0,0,.8)}.btn-clear:hover{color:#f66;background:#000000b3}.visibility-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:2px;font-size:20px;line-height:1;text-shadow:0 1px 3px rgba(0,0,0,.8)}.visibility-btn.visible{color:var(--accent)}.layer-settings{padding:12px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.control-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.control-row:last-child{margin-bottom:0}.control-row label{min-width:70px;font-size:12px;color:var(--text-secondary)}.control-row input[type=range]{flex:1;height:4px;-webkit-appearance:none;background:var(--bg-primary);border-radius:2px;cursor:pointer}.control-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;background:var(--accent);border-radius:50%;cursor:pointer}.control-row input[type=range]::-moz-range-thumb{width:14px;height:14px;background:var(--accent);border-radius:50%;cursor:pointer;border:none}.control-row span{min-width:40px;text-align:right;font-size:12px;color:var(--text-secondary)}.control-row select{flex:1;padding:4px 8px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:12px;cursor:pointer}.control-row select:focus{outline:none;border-color:var(--accent)}.effects-panel{display:flex;flex-direction:column;height:100%}.effect-add select{padding:4px 8px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:12px;cursor:pointer}.effects-list{flex:1;overflow-y:auto;padding:8px}.effect-item{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;margin-bottom:8px;overflow:hidden;transition:opacity .15s}.effect-item.bypassed{opacity:.5}.effect-item.bypassed .effect-params{pointer-events:none}.effect-header{display:flex;align-items:center;padding:8px 12px;background:var(--bg-secondary);gap:8px}.effect-bypass-btn{background:none;border:none;padding:4px;cursor:pointer;color:var(--accent-color);border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .15s}.effect-bypass-btn:hover{background:var(--bg-tertiary)}.effect-bypass-btn.bypassed{color:var(--text-secondary)}.effect-name{font-weight:500;text-transform:capitalize;flex:1}.effect-params{padding:8px 12px}.effect-quality-section{margin-top:8px;border-top:1px solid var(--border-color);padding-top:8px}.effect-quality-header{display:flex;align-items:center;gap:6px;cursor:pointer;padding:4px 0;user-select:none}.effect-quality-header:hover{color:var(--accent-color)}.effect-quality-toggle{font-size:10px;width:12px}.effect-quality-title{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);flex:1}.effect-quality-reset{font-size:10px;padding:2px 6px;opacity:.7}.effect-quality-reset:hover{opacity:1}.effect-quality-params{padding:8px 0 0 18px}.effect-quality-warning{font-size:10px;color:var(--warning-color, #f0ad4e);margin-top:8px;opacity:.8}.btn-xs{font-size:10px;padding:2px 6px;border-radius:3px}.effect-info{margin:0;font-size:12px;color:var(--text-secondary)}.transform-section{padding:12px;border-top:1px solid var(--border-color);background:var(--bg-tertiary)}.transform-section h4{margin:0 0 12px;font-size:13px;color:var(--text-secondary)}.export-panel{display:flex;flex-direction:column;height:100%}.export-panel .panel-header{padding:12px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.export-panel .panel-header h3{margin:0;font-size:14px}.export-form{padding:12px;display:flex;flex-direction:column;gap:12px}.export-section{display:flex;flex-direction:column;gap:8px}.export-section-header{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;padding-bottom:4px;border-bottom:1px solid var(--border-color);margin-bottom:4px}.info-icon-wrapper{position:relative;margin-left:4px}.info-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;font-size:11px;font-style:italic;font-family:Georgia,serif;color:#666;cursor:pointer;border-radius:50%;transition:all .2s ease}.info-icon:hover{color:#aaa;background:#ffffff14;transform:scale(1.1)}.info-tooltip{position:absolute;left:50%;top:calc(100% + 8px);transform:translate(-50%);width:200px;padding:8px 10px;background:#555;color:#ddd;font-size:11px;font-style:normal;font-weight:400;line-height:1.4;border-radius:6px;box-shadow:0 4px 12px #0006;z-index:100}.info-tooltip:before{content:"";position:absolute;left:50%;top:-6px;transform:translate(-50%);border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #555}.export-panel .control-row{display:flex;align-items:center;gap:8px}.export-panel .control-row label{display:flex;align-items:center;min-width:80px;font-size:12px;color:var(--text-secondary)}.export-panel select,.export-panel input[type=text]{flex:1;padding:6px 8px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:12px}.export-input-group{flex:1;display:flex;align-items:center;min-width:0}.export-input-group input{flex:1;min-width:60px;border-radius:4px 0 0 4px;text-overflow:ellipsis;overflow:hidden}.export-extension{padding:6px 8px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-left:none;border-radius:0 4px 4px 0;color:var(--text-secondary);font-size:12px}.export-extension-select{padding:6px 20px 6px 8px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-left:none;border-radius:0 4px 4px 0;color:var(--text-secondary);font-size:12px;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M3 4.5L6 8l3-3.5H3z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 4px center;width:auto;flex-shrink:0}.export-extension-select:hover{background-color:var(--bg-hover);color:var(--text-primary)}.export-extension-select:focus{outline:none;border-color:var(--accent-color)}.export-summary{padding:10px;background:var(--bg-tertiary);border-radius:4px;font-size:11px;color:var(--text-secondary);display:flex;flex-direction:column;gap:4px}.export-error{padding:10px;background:#ef44441a;border:1px solid var(--danger);border-radius:4px;color:var(--danger);font-size:12px}.export-start-btn{width:100%;padding:10px;background:var(--accent);color:var(--bg-primary);border:none;border-radius:4px;font-weight:600;cursor:pointer}.export-start-btn:hover{background:var(--accent-hover)}.export-start-btn:disabled{opacity:.5;cursor:not-allowed}.export-progress-container{padding:12px;display:flex;flex-direction:column;gap:12px}.export-progress-bar{height:8px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden}.export-progress-fill{height:100%;background:var(--accent);transition:width .1s ease-out}.export-progress-info{display:flex;justify-content:space-between;font-size:12px;color:var(--text-secondary)}.export-eta{text-align:center;font-size:13px;color:var(--text-primary)}.export-cancel-btn{width:100%;padding:8px;background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:4px;cursor:pointer}.export-cancel-btn:hover{background:var(--bg-hover)}.clip-properties-panel{display:flex;flex-direction:column;height:100%}.clip-properties-panel .panel-header{padding:12px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.clip-properties-panel .panel-header h3{margin:0;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.properties-content{flex:1;overflow-y:auto;padding:8px}.properties-section{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;padding:12px;margin-bottom:8px}.properties-section h4{margin:0 0 10px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary)}.properties-section .control-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.properties-section .control-row:last-child{margin-bottom:0}.properties-section .control-row label{min-width:20px;font-size:11px;color:var(--text-secondary)}.properties-section .control-row input[type=range]{flex:1}.properties-section .control-row .value{min-width:45px;text-align:right;font-size:11px;font-family:SF Mono,Monaco,Consolas,monospace;color:var(--text-primary)}.properties-section .control-row select{flex:1;padding:4px 8px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:12px}.properties-actions{padding:8px;text-align:center}.properties-actions .btn{width:100%}.properties-panel{display:flex;flex-direction:column;height:100%}.properties-panel .panel-header{padding:8px 12px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.properties-panel .panel-header h3{margin:0;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.properties-tabs{display:flex;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);min-height:32px;flex-shrink:0}.properties-tabs .tab-btn{display:flex;align-items:center;gap:6px;padding:0 16px;height:32px;background:transparent;border:none;border-right:1px solid var(--border-color);color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}.properties-tabs .tab-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.properties-tabs .tab-btn.active{background:var(--bg-secondary);color:var(--text-primary);border-bottom:2px solid var(--accent);margin-bottom:-1px}.properties-tabs .tab-btn .badge{background:var(--accent);color:#000;font-size:10px;font-weight:600;padding:1px 5px;border-radius:8px;min-width:16px;text-align:center}.properties-panel .properties-content{flex:1;overflow-y:auto;padding:0}.properties-tab-content{padding:8px}.properties-tab-content.effects-tab .effect-add-row{margin-bottom:8px}.properties-tab-content.effects-tab .effect-add-row select{width:100%;padding:6px 10px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:12px}.properties-tab-content.masks-tab .section-header-with-button{margin-bottom:8px}.properties-tab-content.transcript-tab{display:flex;flex-direction:column;gap:8px}.transcript-tab-actions{display:flex;gap:6px;margin-top:6px}.transcript-progress-bar{height:4px;background:var(--bg-tertiary);border-radius:2px;overflow:hidden}.transcript-progress-fill{height:100%;background:var(--accent);transition:width .3s ease}.transcript-progress-text{font-size:11px;color:var(--text-secondary)}.transcript-search-input{width:100%;padding:6px 10px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:12px}.transcript-content-embedded{flex:1;min-height:100px;max-height:200px;overflow-y:auto;padding:8px;background:var(--bg-tertiary);border-radius:4px}.transcript-empty-state{color:var(--text-secondary);font-size:12px;text-align:center;padding:20px}.transcript-words-flow{display:flex;flex-wrap:wrap;gap:4px;line-height:1.6}.transcript-word-inline{cursor:pointer;padding:1px 2px;border-radius:2px;font-size:12px;transition:background .15s}.transcript-word-inline:hover{background:var(--bg-hover)}.transcript-word-inline.active{background:var(--accent);color:var(--bg-primary)}.transcript-word-inline.highlighted{background:#ffc8004d}.transcript-status-bar{font-size:11px;color:var(--text-secondary);text-align:right}.text-tab{display:flex;flex-direction:column}.text-tab .text-content-input{width:100%;min-height:80px;padding:8px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:13px;font-family:inherit;resize:vertical}.text-tab .text-content-input:focus{outline:none;border-color:var(--accent)}.text-tab .button-group{display:flex;gap:2px}.text-tab .button-group button{flex:1;padding:6px 8px;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);font-size:11px;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.text-tab .button-group button:first-child{border-radius:4px 0 0 4px}.text-tab .button-group button:last-child{border-radius:0 4px 4px 0}.text-tab .button-group button:not(:first-child){border-left:none}.text-tab .button-group button:hover{background:var(--bg-hover)}.text-tab .button-group button.active{background:var(--accent);color:#000;border-color:var(--accent)}.text-tab .unit{font-size:11px;color:var(--text-secondary);margin-left:4px}.text-tab .checkbox-label{display:flex;align-items:center;gap:6px;font-size:12px;cursor:pointer}.text-tab .checkbox-label input[type=checkbox]{width:14px;height:14px;cursor:pointer}.text-tab .text-preview{padding:16px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;min-height:60px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draggable-label{cursor:ew-resize!important;user-select:none;padding:2px 4px;border-radius:3px;transition:background-color .15s ease}.draggable-label:hover{background:var(--bg-tertiary);color:var(--accent-color)}.draggable-label.dragging{background:var(--accent-color);color:#fff}.properties-tab-content.analysis-tab{display:flex;flex-direction:column;gap:8px}.analysis-tab-actions{display:flex;gap:6px}.analysis-progress-bar{height:4px;background:var(--bg-tertiary);border-radius:2px;overflow:hidden}.analysis-progress-fill{height:100%;background:var(--accent);transition:width .3s ease}.analysis-progress-text{font-size:11px;color:var(--text-secondary)}.analysis-realtime-grid{display:flex;flex-direction:column;gap:6px}.analysis-metric{display:flex;align-items:center;gap:8px}.analysis-metric .metric-label{width:60px;font-size:11px;color:var(--text-secondary)}.analysis-metric .metric-bar{flex:1;height:8px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden}.analysis-metric .metric-fill{height:100%;transition:width .15s ease}.analysis-metric .metric-fill.focus{background:#4ade80}.analysis-metric .metric-fill.motion{background:#60a5fa}.analysis-metric .metric-value{width:40px;font-size:11px;text-align:right}.analysis-stats-grid{display:flex;flex-direction:column;gap:4px}.analysis-stats-grid .stat-row{display:flex;justify-content:space-between;font-size:11px}.analysis-stats-grid .stat-row span:first-child{color:var(--text-secondary)}.analysis-empty-state{color:var(--text-secondary);font-size:12px;text-align:center;padding:20px}.properties-panel .panel-header{display:flex;align-items:center;gap:8px}.clip-type-badge{font-size:10px;padding:2px 6px;border-radius:4px;background:var(--bg-hover);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.volume-tab .section-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.volume-tab .section-header-row h4{margin:0;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary)}.eq-section{padding-bottom:16px}.eq-bands{display:flex;gap:4px;margin-bottom:8px}.eq-band{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.eq-band-kf{height:20px;display:flex;align-items:center}.eq-band-value{font-size:9px;font-family:SF Mono,monospace;color:var(--text-secondary);text-align:center;min-width:28px}.eq-slider{writing-mode:vertical-lr;direction:rtl;height:100px;width:18px;margin:0;cursor:pointer}.eq-band-label{font-size:9px;color:var(--text-secondary);text-align:center}.eq-scale{display:flex;justify-content:space-between;font-size:9px;color:var(--text-secondary);padding:0 4px}.btn{padding:6px 12px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:13px;cursor:pointer;transition:all .2s}.btn:hover:not(:disabled){background:var(--bg-hover);border-color:#444}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-active{background:var(--accent);border-color:var(--accent);color:#000}.btn-active:hover:not(:disabled){background:var(--accent-hover)}.btn-export{background:linear-gradient(135deg,#00d4ff,#00a8cc);border-color:#00d4ff;color:#000;font-weight:600}.btn-export:hover:not(:disabled){background:linear-gradient(135deg,#00e8ff,#00b8e6);border-color:#00e8ff;border-color:var(--accent-hover)}.btn-sm{padding:4px 8px;font-size:12px}.btn-danger{color:var(--danger)}.btn-danger:hover:not(:disabled){background:var(--danger);border-color:var(--danger);color:#fff}.btn-reload-all{background:var(--warning);border-color:var(--warning);color:#000;font-weight:500}.btn-reload-all:hover{background:#c80;border-color:#c80}.midi-unsupported{font-size:12px;color:var(--text-secondary)}input[type=checkbox]{width:16px;height:16px;margin-right:8px;cursor:pointer}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#444}@media(max-width:1200px){.right-column{width:320px}}@media(max-width:900px){.main-content{flex-direction:column}.slots-area{flex:1;min-height:300px}.right-column{width:100%;border-left:none;border-top:1px solid var(--border-color);max-height:250px}.floating-preview{width:280px!important;left:8px!important;top:60px!important}}.slot-item.group-0{--group-color: #ff6b6b}.slot-item.group-1{--group-color: #4ecdc4}.slot-item.group-2{--group-color: #ffe66d}.slot-item.group-3{--group-color: #95e1d3}.slot-item.group-4{--group-color: #dda0dd}.slot-item.group-5{--group-color: #87ceeb}.slot-item.in-group{border:3px solid var(--group-color);border-radius:6px;margin:0}.slot-item.in-group.group-left{border-right:none;border-top-right-radius:0;border-bottom-right-radius:0;margin-right:-3px;z-index:1}.slot-item.in-group.group-right{border-left:none;border-top-left-radius:0;border-bottom-left-radius:0}.slot-item.in-group.group-middle{border-left:none;border-right:none;border-radius:0;margin-left:-3px;margin-right:-3px}.slot-item.group-highlight{box-shadow:0 0 20px var(--group-color),0 0 40px var(--group-color);z-index:2}.slot-item.group-highlight.group-left{box-shadow:-5px 0 20px var(--group-color),0 -5px 20px var(--group-color),0 5px 20px var(--group-color)}.slot-item.group-highlight.group-right{box-shadow:5px 0 20px var(--group-color),0 -5px 20px var(--group-color),0 5px 20px var(--group-color)}.drop-zone-indicator{position:absolute;top:0;bottom:0;width:50%;pointer-events:none;z-index:5;transition:all .15s}.drop-zone-indicator.left{left:0;border-right:2px dashed rgba(255,255,255,.3)}.drop-zone-indicator.right{right:0;border-left:2px dashed rgba(255,255,255,.3)}.drop-zone-indicator.active{background:#00d4ff33}.drop-zone-indicator.left.active{border-right-color:var(--accent)}.drop-zone-indicator.right.active{border-left-color:var(--accent)}.slot-item.copy-mode{border-color:var(--success);background:#44ff441a}.slot-item.copy-mode:after{content:"+";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:32px;font-weight:700;color:var(--success);text-shadow:0 2px 4px rgba(0,0,0,.5);z-index:10;pointer-events:none}.slot-item.drop-zone-left{border-left-color:var(--accent);border-left-width:4px}.slot-item.drop-zone-right{border-right-color:var(--accent);border-right-width:4px}.view-tabs{display:flex;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);padding:0 8px}.tab-btn{padding:10px 20px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.tab-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.tab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}.timeline-container{display:flex;flex-direction:column;height:100%;background:var(--bg-primary)}.timeline-container.timeline-empty{justify-content:center;align-items:center}.timeline-empty-message{text-align:center;color:var(--text-secondary)}.timeline-empty-message p{margin:0}.timeline-empty-message p:first-child{font-size:16px;color:var(--text-primary);margin-bottom:8px}.timeline-empty-message .hint{font-size:13px}.timeline-toolbar{display:flex;align-items:center;gap:8px;padding:4px 12px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);flex-shrink:0;min-height:36px}.timeline-controls{display:flex;gap:4px}.timeline-time{font-family:monospace;font-size:13px;color:var(--text-primary);background:var(--bg-primary);padding:4px 8px;border-radius:4px;min-width:140px;text-align:center}.duration-display{cursor:pointer;padding:1px 4px;border-radius:3px;transition:background .15s}.duration-display:hover{background:var(--accent-primary);color:#fff}.duration-input{font-family:monospace;font-size:13px;width:70px;padding:1px 4px;border:1px solid var(--accent-primary);border-radius:3px;background:var(--bg-secondary);color:var(--text-primary);text-align:center;outline:none}.timeline-zoom{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary)}.timeline-zoom .btn-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border-radius:4px;color:var(--text-secondary);opacity:.6}.timeline-zoom .btn-icon:hover{opacity:1;background:var(--bg-hover)}.timeline-zoom .btn-icon.btn-active{color:var(--accent);opacity:1;background:#00ffff1a}.timeline-inout-controls{display:flex;align-items:center;gap:4px}.timeline-inout-controls .btn-sm{min-width:24px;padding:4px 8px;font-weight:700}.timeline-inout-controls .btn-active{background:#f59e0b;color:#fff}.timeline-tracks-controls{margin-left:auto;display:flex;gap:8px}.timeline-body{display:flex;flex-direction:row;flex:1;overflow:hidden;position:relative}.timeline-body-content{display:flex;flex-direction:column;flex:1;overflow:hidden;position:relative}.timeline-header-row{display:flex;position:sticky;top:0;z-index:20;background:var(--bg-tertiary);flex-shrink:0}.timeline-header-row .ruler-header{width:150px;flex-shrink:0;height:30px;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--text-secondary);background:var(--bg-tertiary);border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.time-ruler-wrapper{flex:1;overflow:hidden;height:30px;border-bottom:1px solid var(--border-color)}.timeline-scroll-wrapper{flex:1;overflow:hidden;position:relative}.timeline-content-row{display:flex;flex:1;align-items:flex-start}.track-headers{width:150px;flex-shrink:0;background:var(--bg-secondary);border-right:1px solid var(--border-color)}.ruler-header{height:30px;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--text-secondary);background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.track-header{display:flex;align-items:center;justify-content:space-between;padding:0;border-bottom:1px solid var(--border-color);background:var(--bg-tertiary);position:relative}.track-header.video{background:linear-gradient(90deg,rgba(0,150,255,.1),transparent)}.track-header.audio{background:linear-gradient(90deg,rgba(0,255,150,.1),transparent)}.track-header.dimmed,.track-lane.dimmed{opacity:.4}.track-name{font-size:12px;font-weight:500;color:var(--text-primary);cursor:text}.track-name-input{font-size:12px;font-weight:500;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--accent-timeline);border-radius:2px;padding:0 4px;width:80px;outline:none}.track-controls{display:flex;flex-direction:row;align-items:center;gap:2px;margin-left:auto;position:absolute;right:4px;top:50%;transform:translateY(-50%)}.track-pick-whip{display:flex;align-items:center;justify-content:center;width:18px;height:18px;cursor:grab;opacity:.5;transition:opacity .15s,transform .15s;color:#e5c07b}.track-pick-whip:hover{opacity:1;transform:scale(1.1)}.track-pick-whip.dragging{cursor:grabbing;opacity:1;transform:scale(1.2)}.track-pick-whip.has-parent{opacity:1;color:#e5c07b}.track-pick-whip.has-children{opacity:.8;color:#98c379}.track-pick-whip.has-parent.has-children{opacity:1;color:#e5c07b}.track-pick-whip-icon{width:14px;height:14px}.btn-icon{background:none;border:none;font-size:10px;cursor:pointer;opacity:.7;padding:1px 3px;line-height:1}.btn-icon:hover{opacity:1}.btn-icon.muted,.btn-icon.hidden{opacity:.3}.btn-icon.solo-active{color:#ffc107;opacity:1;font-weight:700}.timeline-tracks{flex:1;position:relative;overflow-x:hidden;overflow-y:visible}.time-ruler{height:30px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);position:relative;cursor:pointer}.time-ruler:hover{background:var(--bg-hover)}.time-marker{position:absolute;top:0;height:100%;border-left:1px solid var(--border-color)}.time-marker.main{border-left-color:#555}.time-marker.sub{border-left-color:#333;height:50%;top:50%}.time-label{position:absolute;top:4px;left:4px;font-size:10px;color:var(--text-secondary);white-space:nowrap}.track-lane{position:relative;border-bottom:1px solid var(--border-color);background:var(--bg-secondary);min-width:100%}.track-lane.video{background:repeating-linear-gradient(90deg,var(--bg-secondary),var(--bg-secondary) calc(var(--grid-size, 50px) - 1px),#1a1a2e calc(var(--grid-size, 50px) - 1px),#1a1a2e var(--grid-size, 50px))}.track-lane.audio{background:repeating-linear-gradient(90deg,var(--bg-secondary),var(--bg-secondary) calc(var(--grid-size, 50px) - 1px),#1a2e1a calc(var(--grid-size, 50px) - 1px),#1a2e1a var(--grid-size, 50px))}.timeline-clip{position:absolute;top:4px;bottom:4px;border-radius:4px;cursor:grab;overflow:hidden;transition:box-shadow .15s;background:linear-gradient(180deg,#374151,#1f2937);border:1px solid #4b5563}.timeline-clip.video{background:linear-gradient(180deg,#2563eb,#1d4ed8);border:1px solid #3b82f6}.timeline-clip.audio{background:linear-gradient(180deg,#16a34a,#15803d);border:1px solid #22c55e}.timeline-clip.text{background:linear-gradient(180deg,#9333ea,#7c3aed);border:1px solid #a855f7}.timeline-clip.text .clip-content{background:linear-gradient(180deg,#9333eae6,#7c3aedd9)}.clip-text-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;background:#fff3;border-radius:3px;font-size:10px;font-weight:700;margin-right:4px;flex-shrink:0}.timeline-clip.loading.text{background:#9333ea4d!important;border-color:#a855f7cc!important}.timeline-clip.loading{background:#3b82f64d!important;border:2px dashed #3b82f6!important;box-shadow:none!important}.timeline-clip.loading.audio{background:#22c55e4d!important;border-color:#22c55ecc!important}.timeline-clip.loading .clip-thumbnails,.timeline-clip.loading .clip-waveform{display:none}.timeline-clip.loading .clip-content{background:transparent!important}.timeline-clip.loading .clip-name{opacity:.8}.timeline-clip.loading:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);animation:clip-loading-shimmer 1.5s infinite}@keyframes clip-loading-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.clip-loading-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:clip-spinner .8s linear infinite;margin-right:6px;flex-shrink:0}.clip-proxy-progress{position:absolute;top:0;left:0;right:0;height:3px;background:#00000080;z-index:10}.clip-proxy-progress-bar{height:100%;background:linear-gradient(90deg,#22c55e,#4ade80);transition:width .2s ease-out;box-shadow:0 0 4px #22c55e99}.clip-proxy-badge{position:absolute;top:2px;right:2px;background:#22c55e;color:#000;font-size:9px;font-weight:700;padding:1px 4px;border-radius:2px;z-index:10}.clip-proxy-generating{position:absolute;top:2px;right:2px;display:flex;align-items:center;gap:3px;z-index:10}.clip-proxy-generating .proxy-percent{font-size:8px;color:#fbbf24;font-weight:700}.proxy-fill-badge{position:relative;width:14px;height:14px;border-radius:2px;overflow:hidden;font-size:9px;font-weight:700;line-height:14px;text-align:center}.proxy-fill-bg{position:absolute;inset:0;background:#fbbf2433;color:#fbbf2466;display:flex;align-items:center;justify-content:center}.proxy-fill-progress{position:absolute;bottom:0;left:0;right:0;background:#fbbf24;color:#000;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;transition:height .3s ease-out}.timeline-clip.has-proxy{border-color:#22c55e!important}.timeline-clip.generating-proxy{border-color:#fbbf24!important}.clip-reversed-badge{position:absolute;top:2px;right:20px;background:#f97316;color:#000;font-size:10px;font-weight:700;padding:1px 4px;border-radius:2px;z-index:10}.timeline-clip.reversed{border-color:#f97316!important}.timeline-clip.reversed .clip-thumbnails{transform:scaleX(-1)}.clip-reload-badge{position:absolute;top:2px;left:2px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;padding:1px 5px;border-radius:2px;z-index:10;cursor:help}.timeline-clip.needs-reload{opacity:.6;border-color:#ef4444!important}.timeline-clip.needs-reload .clip-thumbnails{filter:grayscale(1)}.clip-linked-group-badge{position:absolute;top:2px;right:38px;background:#8b5cf6;color:#fff;font-size:10px;font-weight:700;padding:1px 4px;border-radius:2px;z-index:10}.timeline-clip.linked-group{border-color:#8b5cf6!important;box-shadow:0 0 6px #8b5cf666}.pick-whip{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:6px;cursor:grab;opacity:.8;transition:opacity .15s,transform .15s;flex-shrink:0;pointer-events:auto;color:#e5c07b}.pick-whip:hover{opacity:1;transform:scale(1.15);color:#f0d090}.pick-whip.dragging{cursor:grabbing;opacity:1}.pick-whip.has-parent{opacity:1;color:#98c379}.pick-whip.has-parent:hover{color:#ef4444}.pick-whip-icon{color:inherit}.parent-child-link-shadow{stroke:#0006;stroke-width:5;stroke-linecap:round;filter:blur(2px);transform:translate(1px,2px)}.parent-child-link{stroke:#e5c07b;stroke-width:3;stroke-linecap:round;fill:none;filter:drop-shadow(0 1px 1px rgba(0,0,0,.3))}.parent-child-link-endpoint,.parent-child-link-start{fill:#d4a84b;stroke:#b8922f;stroke-width:1.5;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.parent-child-link-group:hover .parent-child-link{stroke:#f0d090;stroke-width:3.5}.parent-child-link-group:hover .parent-child-link-shadow{stroke-width:6}.parent-child-link-group:hover .parent-child-link-endpoint,.parent-child-link-group:hover .parent-child-link-start{fill:#f0d090;stroke:#d4a84b;r:6}.timeline-clip.has-parent{border-color:#e5c07b!important;box-shadow:0 0 6px #e5c07b4d}.timeline-clip.has-parent:after{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background:#e5c07b;opacity:.6}@keyframes clip-spinner{to{transform:rotate(360deg)}}.clip-transcript-markers{position:absolute;bottom:0;left:0;right:0;height:4px;pointer-events:none;z-index:5}.transcript-marker{position:absolute;bottom:0;height:4px;background:#fbbf24;border-radius:1px 1px 0 0;opacity:.9;pointer-events:auto;cursor:pointer;transition:opacity .1s,height .1s}.transcript-marker:hover{opacity:1;height:6px;background:#f59e0b}.clip-transcribing-indicator{position:absolute;bottom:0;left:0;right:0;height:3px;background:#0006;z-index:6}.transcribing-progress{height:100%;background:linear-gradient(90deg,#a855f7,#d946ef);transition:width .2s ease-out;box-shadow:0 0 4px #a855f799}.clip-analysis-overlay{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}.analysis-overlay-canvas{display:block;position:absolute;bottom:0;left:0}.analysis-position-indicator{position:absolute;top:0;bottom:0;width:1px;pointer-events:none;z-index:10}.analysis-indicator-line{position:absolute;top:0;bottom:0;width:1px;background:#fffc;box-shadow:0 0 4px #ffffff80}.analysis-indicator-values{position:absolute;top:-16px;left:4px;display:flex;gap:6px;font-size:9px;font-weight:600;white-space:nowrap}.analysis-indicator-values .focus-value{color:#4ade80;text-shadow:0 0 2px rgba(0,0,0,.8)}.analysis-indicator-values .motion-value{color:#60a5fa;text-shadow:0 0 2px rgba(0,0,0,.8)}.analysis-legend-labels{position:absolute;top:2px;right:4px;display:flex;gap:8px;font-size:8px;font-weight:500;pointer-events:none;z-index:4}.analysis-legend-labels .legend-focus{color:#4ade80;text-shadow:0 0 2px rgba(0,0,0,.9)}.analysis-legend-labels .legend-motion{color:#60a5fa;text-shadow:0 0 2px rgba(0,0,0,.9)}.analysis-legend-labels .legend-progress{color:#fbbf24;font-weight:700;text-shadow:0 0 2px rgba(0,0,0,.9)}.clip-analyzing-indicator{position:absolute;bottom:0;left:0;right:0;height:3px;background:#0006;z-index:6}.analyzing-progress{height:100%;background:linear-gradient(90deg,#22c55e,#4ade80);transition:width .2s ease-out;box-shadow:0 0 4px #22c55e99}.clip-waveform-indicator{position:absolute;bottom:0;left:0;right:0;height:4px;background:#0006;z-index:6}.waveform-progress{height:100%;background:linear-gradient(90deg,#ef4444,#f87171,#ef4444);background-size:200% 100%;animation:waveform-progress-pulse 1s ease-in-out infinite;box-shadow:0 0 4px #ef444499}@keyframes waveform-progress-pulse{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.timeline-clip.audio.generating-waveform{border-color:#ef4444!important}.timeline-clip.has-transcript:before{content:"T";position:absolute;top:2px;left:2px;background:#a855f7;color:#fff;font-size:8px;font-weight:700;padding:1px 3px;border-radius:2px;z-index:10}.timeline-clip.image{background:linear-gradient(180deg,#9333ea,#7c3aed);border:1px solid #a855f7}.timeline-clip:hover{box-shadow:0 2px 8px #0000004d}.timeline-clip.selected{box-shadow:0 0 0 2px var(--accent-timeline)}.timeline-clip.dragging{opacity:.9;cursor:grabbing;box-shadow:0 4px 12px #0006;z-index:100}.timeline-clip.linked-dragging{opacity:.9;box-shadow:0 4px 12px #0006;z-index:99}.timeline-clip.forcing-overlap{box-shadow:0 0 0 2px #ef4444,0 4px 12px #ef444480}.timeline-tracks.dragging-clip{cursor:grabbing;user-select:none}.timeline-tracks.marquee-selecting{cursor:crosshair}.marquee-selection{position:absolute;background:#3b82f626;border:1px solid rgba(59,130,246,.6);border-radius:2px;pointer-events:none;z-index:1000}.timeline-container,.timeline-container *{user-select:none!important;-webkit-user-select:none!important}.track-lane.drag-target{background:#3b82f626}.track-lane.external-drag-target{background:#22c55e26}.timeline-clip-preview{position:absolute;top:4px;bottom:4px;border-radius:4px;background:#22c55e80;border:2px dashed #22c55e;pointer-events:none;display:flex;align-items:center;justify-content:center}.timeline-clip-preview .clip-content{padding:4px 8px}.timeline-clip-preview .clip-name{color:#fff;font-size:11px;font-weight:500;text-shadow:0 1px 2px rgba(0,0,0,.5)}.timeline-clip-preview.audio{background:#3b82f680;border-color:#3b82f6cc}.track-lane.new-track-preview{background:#3b82f61a;border:2px dashed rgba(59,130,246,.5);border-radius:4px;margin-top:4px;position:relative}.new-track-drop-zone{height:36px;margin-top:4px;border:2px dashed rgba(255,255,255,.3);border-radius:4px;background:#ffffff0d;display:flex;align-items:center;justify-content:center;position:relative;transition:all .15s ease}.new-track-drop-zone .drop-zone-label{font-size:11px;color:#ffffff80;font-weight:500;pointer-events:none;z-index:1}.new-track-drop-zone.video{border-color:#2563eb66}.new-track-drop-zone.audio{border-color:#16a34a66}.new-track-drop-zone.active,.new-track-drop-zone:hover{background:#ffffff1a}.new-track-drop-zone.video.active,.new-track-drop-zone.video:hover{border-color:#2563ebcc;background:#2563eb26}.new-track-drop-zone.audio.active,.new-track-drop-zone.audio:hover{border-color:#16a34acc;background:#16a34a26}.new-track-drop-zone.active .drop-zone-label,.new-track-drop-zone:hover .drop-zone-label{color:#fffc}.new-track-drop-zone .timeline-clip-preview{position:absolute;top:4px;bottom:4px;border-radius:3px;pointer-events:none}.clip-content{position:relative;z-index:5;padding:4px 8px;height:auto;display:flex;flex-direction:column;justify-content:flex-start;background:linear-gradient(to bottom,rgba(0,0,0,.5) 0%,rgba(0,0,0,.2) 50%,transparent 100%);pointer-events:none}.clip-name-row{display:flex;flex-direction:row;align-items:center;gap:2px}.clip-name{font-size:11px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 3px rgba(0,0,0,.8)}.clip-duration{font-size:9px;color:#fffc;text-shadow:0 1px 2px rgba(0,0,0,.8)}.clip-thumbnails{position:absolute;inset:0;display:flex;overflow:hidden;opacity:.85}.clip-thumb{height:100%;width:auto;object-fit:cover;flex-shrink:0;pointer-events:none}.timeline-clip.video .clip-thumbnails,.timeline-clip.image .clip-thumbnails{background:#0000004d}.timeline-clip.audio .clip-thumbnails{background:linear-gradient(180deg,#16a34a,#15803d)}.trim-handle{position:absolute;top:0;bottom:0;width:10px;cursor:ew-resize;background:#fff3;opacity:0;transition:opacity .15s,background .15s;z-index:10}.trim-handle:hover{background:#ffffff80}.trim-handle.left{left:0;border-radius:4px 0 0 4px}.trim-handle.right{right:0;border-radius:0 4px 4px 0}.timeline-clip.trimming,.timeline-clip.linked-trimming{z-index:100;box-shadow:0 0 0 2px #f59e0b}.timeline-clip.trimming .trim-handle,.timeline-clip.linked-trimming .trim-handle{opacity:1;background:#f59e0b}.timeline-clip:hover .trim-handle{opacity:1}.playhead{position:absolute;top:0;width:2px;min-height:100%;height:max-content;z-index:30;pointer-events:none;transform:translate(-1px)}.playhead-head{width:14px;height:14px;background:var(--danger);border-radius:3px;transform:translate(-6px);cursor:grab;pointer-events:auto;position:sticky;top:4px;z-index:35}.playhead-head:hover{background:#f66}.playhead-head:active{cursor:grabbing}.playhead-line{width:2px;min-height:calc(100vh - 50px);height:100%;background:var(--danger);margin-top:-2px}.timeline-navigator{height:16px;background:var(--bg-primary);border-top:1px solid var(--border-color);padding:3px 14px 3px 150px;flex-shrink:0}.timeline-navigator-track{height:100%;background:#1a1a1a;border-radius:5px;position:relative;cursor:pointer}.timeline-navigator-thumb{position:absolute;top:0;height:100%;background:#3a3a3a;border:none;border-radius:5px;cursor:grab;display:flex;align-items:center;justify-content:space-between;transition:background .1s}.timeline-navigator-thumb:hover{background:#444}.timeline-navigator-thumb.dragging{cursor:grabbing;background:#4a4a4a}.timeline-navigator-handle{width:14px;height:100%;cursor:ew-resize;display:flex;align-items:center;justify-content:center;transition:opacity .15s}.timeline-navigator-handle:hover:before{background:#666}.timeline-navigator-handle-left{border-radius:5px 0 0 5px}.timeline-navigator-handle-right{border-radius:0 5px 5px 0}.timeline-navigator-handle:before{content:"";width:6px;height:6px;background:#2a2a2a;border-radius:50%}.timeline-navigator-grip{flex:1;display:flex;align-items:center;justify-content:center}.timeline-navigator-grip:before,.timeline-navigator-grip:after{display:none}.vertical-scrollbar{width:14px;background:var(--bg-primary);border-left:1px solid var(--border-color);flex-shrink:0;padding:2px}.vertical-scrollbar-track{width:100%;height:100%;background:var(--bg-tertiary);border-radius:4px;position:relative;cursor:pointer}.vertical-scrollbar-thumb{position:absolute;left:0;width:100%;background:#2a2a2a;border-radius:4px;cursor:grab;display:flex;flex-direction:column;align-items:center;transition:background .1s}.vertical-scrollbar-thumb:hover{background:#3a3a3a}.vertical-scrollbar-thumb.dragging{cursor:grabbing;background:#444}.vertical-scrollbar-handle{width:100%;height:10px;cursor:ns-resize;display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity .15s}.vertical-scrollbar-handle:hover{opacity:1;background:#ffffff1a}.vertical-scrollbar-handle-top{border-radius:4px 4px 0 0}.vertical-scrollbar-handle-bottom{border-radius:0 0 4px 4px}.vertical-scrollbar-handle:before{content:"";width:6px;height:6px;background:#000;border-radius:50%}.vertical-scrollbar-grip{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.vertical-scrollbar-grip:before,.vertical-scrollbar-grip:after{content:"";width:6px;height:2px;background:var(--text-secondary);border-radius:1px;opacity:.5}.snap-line{position:absolute;top:0;bottom:0;width:2px;background:var(--success, #4ade80);z-index:99;pointer-events:none;box-shadow:0 0 8px var(--success, #4ade80)}.work-area-overlay{position:absolute;top:24px;bottom:0;background:#00000080;pointer-events:none;z-index:10}.work-area-overlay:after{content:"";position:absolute;top:0;bottom:0;width:100%;background:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(0,0,0,.1) 10px,rgba(0,0,0,.1) 20px)}.in-out-marker{position:absolute;top:0;bottom:0;z-index:95;pointer-events:none}.in-out-marker .marker-flag{position:absolute;top:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#fff;border-radius:2px;cursor:pointer;pointer-events:auto}.in-marker .marker-flag{background:#f59e0b;left:0;border-radius:0 2px 2px 0}.out-marker .marker-flag{background:#f59e0b;right:0;border-radius:2px 0 0 2px}.in-out-marker .marker-line{position:absolute;top:16px;bottom:0;width:2px;background:#f59e0b}.in-marker .marker-line{left:0}.out-marker .marker-line{right:0}.in-out-marker .marker-flag:hover{transform:scale(1.1);box-shadow:0 0 6px #f59e0b99}.in-out-marker.dragging .marker-flag{transform:scale(1.2);box-shadow:0 0 8px #f59e0bcc}.in-out-marker.dragging .marker-line{width:3px;box-shadow:0 0 6px #f59e0b80}.timeline-ram-preview{display:flex;align-items:center;gap:6px}.ram-preview-progress{width:80px;height:6px;background:var(--bg-primary);border-radius:3px;overflow:hidden}.ram-preview-progress-bar{height:100%;background:linear-gradient(90deg,#22c55e,#4ade80);border-radius:3px;transition:width .1s ease-out}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#f66}.ram-preview-indicator{position:absolute;top:0;height:4px;background:linear-gradient(90deg,#22c55e,#4ade80);opacity:.8;pointer-events:none;z-index:90}.ram-preview-progress-text{position:absolute;top:6px;font-size:10px;font-weight:700;color:#22c55e;background:#000000b3;padding:2px 6px;border-radius:3px;pointer-events:none;z-index:95;white-space:nowrap}.playback-cache-indicator{position:absolute;top:0;height:3px;background:#22c55e;opacity:.6;pointer-events:none;z-index:89}.clip-waveform{position:absolute;inset:0;overflow:hidden}.waveform-container{position:relative;width:100%;height:100%;display:flex;align-items:center}.waveform-bar{position:absolute;bottom:50%;transform:translateY(50%);background:#22c55ecc;border-radius:1px}.timeline-clip.audio .waveform-bar{background:#fff9}.waveform-canvas{position:absolute;top:0;left:0;pointer-events:none}.clip-mixdown-waveform{position:absolute;bottom:2px;left:0;right:0;height:30px;overflow:hidden;opacity:.7;pointer-events:none;z-index:5}.clip-mixdown-waveform .waveform-canvas{filter:hue-rotate(180deg)}.clip-mixdown-indicator{position:absolute;bottom:4px;left:4px;font-size:9px;color:var(--text-secondary);background:#00000080;padding:2px 6px;border-radius:3px;z-index:6}.track-header{cursor:default;transition:background .15s}.track-header:hover{background:var(--bg-hover)}.media-panel{display:flex;flex-direction:column;height:100%;background:var(--bg-secondary);transition:background .15s ease,box-shadow .15s ease;position:relative}.media-panel.drop-target{background:#4a90e21a}.media-panel-drop-overlay{position:absolute;inset:0;background:#4a90e226;border:3px dashed var(--accent-color);border-radius:8px;display:flex;align-items:center;justify-content:center;z-index:100;pointer-events:none;animation:dropPulse 1.5s ease-in-out infinite}@keyframes dropPulse{0%,to{background:#4a90e21a}50%{background:#4a90e240}}.drop-overlay-content{display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--accent-color)}.drop-overlay-content svg{animation:dropBounce .8s ease-in-out infinite}@keyframes dropBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.drop-overlay-content span{font-size:16px;font-weight:600;text-shadow:0 1px 3px rgba(0,0,0,.5)}.media-panel-header{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);flex-shrink:0}.media-panel-title{font-weight:600;font-size:13px}.media-panel-count{font-size:11px;color:var(--text-secondary);margin-right:auto}.media-panel-actions{display:flex;gap:4px}.media-panel-content{flex:1;overflow:auto}.media-panel-table-wrapper{min-width:650px}.media-column-headers{display:flex;align-items:center;padding:4px 0;border-bottom:1px solid var(--border-color);background:var(--bg-tertiary);position:sticky;top:0;z-index:10;font-size:10px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.media-col{flex-shrink:0;padding:0 6px;font-size:11px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.media-col-name{display:flex;align-items:center;gap:6px;overflow:hidden;position:relative;flex-shrink:0}.media-col-resize-handle{position:absolute;right:-1px;top:2px;bottom:2px;width:3px;cursor:col-resize;background:var(--border-color);border-radius:1px;transition:background .15s;z-index:5}.media-col-resize-handle:hover,.media-col-resize-handle:active{background:var(--accent-color)}.media-column-headers .media-col{cursor:grab;user-select:none;transition:background .1s,opacity .1s;position:relative}.media-column-headers .media-col:active{cursor:grabbing}.media-column-headers .media-col.dragging{opacity:.5}.media-column-headers .media-col.drag-over{background:#4a90e24d}.media-col-duration{width:56px;text-align:right}.media-col-resolution{width:80px;text-align:right}.media-col-fps{width:40px;text-align:right}.media-col-container{width:60px;text-align:center}.media-col-codec{width:56px;text-align:center}.media-col-size{width:70px;text-align:right;padding-right:12px}.media-panel-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);text-align:center;padding:20px}.media-panel-empty .drop-icon{margin-bottom:12px;opacity:.4}.media-panel-empty .drop-icon svg{stroke:currentColor}.media-panel-empty .hint{font-size:12px;margin-top:8px;opacity:.7}.media-item-list{padding:4px 0}.media-item{display:flex;align-items:center;padding:4px 0;cursor:pointer;transition:background .1s;border-left:2px solid transparent}.media-item:hover{background:var(--bg-hover)}.media-item.selected{background:#00d4ff26;border-left-color:var(--accent)}.media-item.no-file{opacity:.5;cursor:not-allowed}.media-item.no-file .media-col-name:after{content:" (reload required)";font-size:10px;color:var(--text-secondary)}.media-item-icon{font-size:16px;flex-shrink:0;width:20px;text-align:center}.media-item-thumbnail{width:32px;height:18px;object-fit:cover;border-radius:2px;flex-shrink:0}.media-item-name{flex:1;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:2px 4px;border-radius:3px;cursor:default;color:var(--text-primary);min-width:0}.media-item-name.editable{cursor:text}.media-item-name.editable:hover{background:#ffffff1a}.media-item-rename{flex:1;background:var(--bg-primary);border:1px solid var(--accent);border-radius:2px;padding:2px 6px;font-size:12px;color:var(--text-primary);outline:none}.media-item-info{font-size:10px;color:var(--text-secondary);flex-shrink:0;display:none}.media-item-proxy-badge{background:#22c55e;color:#000;font-size:9px;font-weight:700;padding:1px 5px;border-radius:3px;margin-left:4px;flex-shrink:0}.media-item-proxy-generating{display:flex;align-items:center;gap:4px;margin-left:4px;flex-shrink:0}.media-item-proxy-generating .proxy-percent{font-size:9px;color:#fbbf24;font-weight:700}.media-item.drag-target{background:var(--accent)!important;outline:2px dashed var(--accent);outline-offset:-2px}.media-item.dragging{opacity:.5}.add-dropdown-container{position:relative}.add-dropdown-trigger.active{background:var(--bg-hover)}.add-dropdown-menu{position:absolute;top:100%;right:0;margin-top:4px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 16px #0006;min-width:180px;z-index:1000;overflow:hidden}.add-dropdown-item{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:12px;color:var(--text-primary);cursor:pointer;transition:background .1s}.add-dropdown-item:hover{background:var(--bg-hover)}.add-dropdown-icon{width:20px;text-align:center;font-size:14px}.add-dropdown-hint{margin-left:auto;font-size:10px;color:var(--text-muted);font-style:italic}.add-dropdown-separator{height:1px;background:var(--border-color);margin:4px 0}.media-context-menu{position:fixed;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 16px #0006;min-width:160px;z-index:10000;overflow:hidden}.media-context-menu button{display:block;width:100%;padding:8px 12px;text-align:left;background:none;border:none;color:var(--text-primary);font-size:12px;cursor:pointer;transition:background .1s}.media-context-menu button:hover{background:var(--bg-hover)}.media-context-menu button.danger{color:var(--danger)}.media-context-menu button.danger:hover{background:#ff444426}.context-menu-divider{height:1px;background:var(--border-color);margin:4px 0}.precision-slider{flex:1;height:20px;cursor:ew-resize;display:flex;align-items:center}.precision-slider-track{width:100%;height:4px;background:var(--bg-primary);border-radius:2px;position:relative}.precision-slider-fill{position:absolute;top:0;left:0;height:100%;background:var(--accent);border-radius:2px;pointer-events:none}.precision-slider-thumb{position:absolute;top:50%;width:12px;height:12px;background:var(--accent);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 1px 3px #0000004d}.precision-slider:hover .precision-slider-thumb{box-shadow:0 0 0 3px #00d4ff4d}.precision-slider:active{cursor:grabbing}.precision-slider:active .precision-slider-thumb{background:var(--accent-hover);box-shadow:0 0 0 4px #00d4ff66}.draggable-number{display:inline-block;padding:2px 6px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:3px;color:var(--accent);font-family:monospace;font-size:11px;cursor:ew-resize;user-select:none;min-width:50px;text-align:right;transition:border-color .15s ease,background .15s ease}.draggable-number:hover{border-color:var(--accent);background:var(--bg-secondary)}.draggable-number:active{background:var(--accent);color:var(--bg-primary);cursor:grabbing}.keyframe-toggle{width:18px;height:18px;padding:2px;background:transparent;border:1px solid var(--border-color);border-radius:3px;cursor:pointer;color:var(--text-secondary);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.keyframe-toggle:hover{border-color:var(--accent);color:var(--accent)}.keyframe-toggle.has-keyframes{color:#f59e0b;border-color:#f59e0b}.keyframe-toggle.has-keyframes:hover{color:#fbbf24;border-color:#fbbf24}.keyframe-toggle.recording{background:#f59e0b;color:#000;border-color:#f59e0b;animation:keyframe-recording-pulse 1s ease-in-out infinite}.keyframe-toggle.recording:hover{background:#fbbf24;border-color:#fbbf24}@keyframes keyframe-recording-pulse{0%,to{opacity:1}50%{opacity:.6}}.keyframe-toggle-placeholder{width:18px;height:18px;flex-shrink:0}.keyframe-diamond{position:absolute;width:8px;height:8px;background:#f59e0b;transform:translate(calc(-50% - 3px)) rotate(45deg) translateY(-50%);top:50%;cursor:pointer;z-index:5;transition:background .1s ease,box-shadow .1s ease,transform .1s ease}.keyframe-diamond:hover{background:#fbbf24;box-shadow:0 0 6px #f59e0b;transform:translate(calc(-50% - 3px)) rotate(45deg) translateY(-50%) scale(1.2)}.keyframe-diamond.selected{background:#ef4444;box-shadow:0 0 8px #ef4444}.keyframe-diamond.dragging{background:#22d3ee;box-shadow:0 0 10px #22d3ee;transform:translate(calc(-50% - 3px)) rotate(45deg) translateY(-50%) scale(1.3)}.keyframe-diamond.easing-linear{border-radius:0}.keyframe-diamond.easing-ease-in{border-radius:50% 0 0 50%;background:linear-gradient(135deg,#a855f7,#f59e0b)}.keyframe-diamond.easing-ease-in:hover{background:linear-gradient(135deg,#c084fc,#fbbf24)}.keyframe-diamond.easing-ease-in.selected{background:linear-gradient(135deg,#ef4444,#f87171)}.keyframe-diamond.easing-ease-out{border-radius:0 50% 50% 0;background:linear-gradient(135deg,#f59e0b,#22d3ee)}.keyframe-diamond.easing-ease-out:hover{background:linear-gradient(135deg,#fbbf24,#67e8f9)}.keyframe-diamond.easing-ease-out.selected{background:linear-gradient(135deg,#f87171,#ef4444)}.keyframe-diamond.easing-ease-in-out{border-radius:50%;background:linear-gradient(135deg,#a855f7,#22d3ee)}.keyframe-diamond.easing-ease-in-out:hover{background:linear-gradient(135deg,#c084fc,#67e8f9)}.keyframe-diamond.easing-ease-in-out.selected{background:linear-gradient(135deg,#ef4444,#f87171)}.keyframe-context-menu{background:#1e1e1e;border:1px solid #3a3a3a;border-radius:6px;padding:4px 0;min-width:140px;box-shadow:0 4px 12px #0009}.keyframe-context-menu .context-menu-title{padding:6px 12px;font-size:11px;color:#888;border-bottom:1px solid #3a3a3a;margin-bottom:4px}.keyframe-context-menu .context-menu-item{padding:6px 12px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#ddd}.keyframe-context-menu .context-menu-item:hover{background:#2a2a2a}.keyframe-context-menu .context-menu-item.active{color:#f59e0b}.keyframe-context-menu .context-menu-item .checkmark{color:#22c55e;font-size:14px}.clip-expand-arrow{cursor:pointer;transition:transform .2s ease;color:var(--text-secondary);font-size:10px;margin-right:4px}.clip-expand-arrow:hover{color:var(--text-primary)}.clip-expand-arrow.expanded{transform:rotate(90deg)}.clip-expand-arrow.has-keyframes{color:#f59e0b}.timeline-clip.has-keyframes .clip-content{border-left:2px solid #f59e0b}.timeline-clip.expanded{overflow:visible;z-index:10}.clip-property-rows{position:absolute;left:0;right:0;top:100%;background:#000000d9;border:1px solid var(--border-color);border-top:none;border-radius:0 0 4px 4px;z-index:3;overflow:hidden}.property-group{border-bottom:1px solid var(--border-color)}.property-group:last-child{border-bottom:none}.property-group-header{display:flex;align-items:center;height:18px;padding:0 8px;margin:0;box-sizing:border-box;cursor:pointer;background:var(--bg-tertiary);font-size:10px;color:var(--text-secondary);user-select:none;border-bottom:1px solid rgba(255,255,255,.05)}.property-group-header:hover{background:var(--bg-hover);color:var(--text-primary)}.property-group-arrow{margin-right:4px;transition:transform .15s ease}.property-group-arrow.expanded{transform:rotate(90deg)}.property-row{display:flex;align-items:center;height:18px;padding:0 8px 0 20px;background:var(--bg-secondary);border-bottom:1px solid rgba(255,255,255,.05)}.property-row:last-child{border-bottom:none}.property-label{width:50px;font-size:9px;color:var(--text-secondary);text-transform:uppercase;flex-shrink:0}.keyframe-track{flex:1;height:100%;position:relative}.keyframe-track-row .keyframe-track{position:absolute;inset:0}.keyframe-track-line{position:absolute;top:50%;left:0;right:0;height:1px;background:#ffffff1a}.track-header-top{display:flex;align-items:center;justify-content:flex-start;padding:0 30px 0 8px;margin:0;box-sizing:border-box;position:relative;width:100%}.track-header-main{display:flex;align-items:center;gap:4px}.track-expand-arrow{cursor:pointer;transition:transform .2s ease;color:var(--text-secondary);font-size:10px;flex-shrink:0}.track-expand-arrow:hover{color:var(--text-primary)}.track-expand-arrow.expanded{transform:rotate(90deg)}.track-expand-arrow.has-keyframes{color:#f59e0b}.track-header.expanded{flex-direction:column;align-items:stretch;padding:0}.track-header.expanded .track-header-top{flex-shrink:0}.track-clip-row{position:relative;width:100%;flex-shrink:0;margin:0;padding:0;box-sizing:border-box}.track-property-labels{background:#0006;border-top:1px solid var(--border-color);width:100%;box-sizing:border-box;margin:0;padding:0}.property-label-row{height:18px;display:flex;align-items:center;padding:0 8px;box-sizing:border-box;font-size:9px;color:var(--text-secondary);text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.05)}.property-label-row.sub{padding-left:20px}.property-label-row.flat{padding-left:8px;border-bottom:1px solid rgba(255,255,255,.05);display:flex;align-items:center;gap:4px}.property-label-row.flat .property-label{flex-shrink:0;min-width:45px}.property-label-row.flat.dragging{background:#00d4ff1a}.property-keyframe-controls{display:flex;align-items:center;gap:1px;margin-left:auto}.kf-nav-btn,.kf-add-btn{background:none;border:none;color:var(--text-secondary);font-size:8px;padding:2px 3px;cursor:pointer;opacity:.6;transition:opacity .1s}.kf-nav-btn:hover,.kf-add-btn:hover{opacity:1;color:var(--accent-timeline)}.kf-nav-btn.disabled{opacity:.2;cursor:default}.kf-add-btn{font-size:10px;color:var(--text-secondary)}.kf-add-btn.has-keyframe{color:var(--accent-timeline);opacity:1}.property-value{font-size:9px;color:var(--accent-timeline);font-family:monospace;min-width:40px;text-align:right;cursor:ns-resize;padding:0 4px;border-radius:2px;user-select:none}.property-value:hover{background:#00d4ff1a}.property-label-group{border-bottom:1px solid var(--border-color);box-sizing:border-box;margin:0;padding:0}.property-label-group:last-child{border-bottom:none}.track-property-tracks{background:#0006;border-top:1px solid var(--border-color);position:relative;width:100%;box-sizing:border-box;margin-top:1px;padding:0}.keyframe-track-row{height:18px;position:relative;box-sizing:border-box;border-bottom:1px solid rgba(255,255,255,.05);margin:0;padding:0}.keyframe-track-row.group-header{background:var(--bg-tertiary)}.keyframe-track-row.flat{border-bottom:1px solid rgba(255,255,255,.05)}.keyframe-track-group{border-bottom:1px solid var(--border-color);box-sizing:border-box;margin:0;padding:0}.keyframe-track-group:last-child{border-bottom:none}.track-lane.expanded{display:flex;flex-direction:column;align-items:stretch;overflow:visible}.curve-editor-svg{display:block;background:#0000004d;border-top:1px solid var(--border-color)}.curve-editor-grid{stroke:var(--border-color);stroke-width:.5;opacity:.3}.curve-editor-grid-major{stroke:var(--border-color);stroke-width:1;opacity:.5}.curve-editor-curve{fill:none;stroke:#f59e0b;stroke-width:2}.curve-editor-keyframe{fill:#f59e0b;stroke:var(--bg-primary);stroke-width:2;cursor:pointer;transition:r .1s ease}.curve-editor-keyframe:hover{r:6}.curve-editor-keyframe.selected{fill:#ef4444;stroke:#fff}.curve-editor-handle{fill:#22d3ee;stroke:var(--bg-primary);stroke-width:1;cursor:pointer}.curve-editor-handle:hover{fill:#67e8f9}.curve-editor-handle-line{stroke:#22d3ee;stroke-width:1;opacity:.6}.curve-editor-value-label{font-size:9px;fill:var(--text-secondary)}.curve-editor-header{position:relative;display:flex;flex-direction:column;justify-content:space-between;background:#0000004d;border-top:1px solid var(--border-color)}.curve-editor-close-btn{position:absolute;top:2px;right:2px;width:16px;height:16px;padding:0;background:transparent;border:none;color:var(--text-secondary);font-size:14px;line-height:1;cursor:pointer;opacity:.6;transition:opacity .1s}.curve-editor-close-btn:hover{opacity:1;color:var(--text-primary)}.curve-editor-y-axis{position:relative;width:100%;height:100%}.curve-editor-tick{position:absolute;right:4px;transform:translateY(-50%)}.curve-editor-tick-label{font-size:9px;color:var(--text-secondary);font-family:monospace}.property-label-row.flat.curve-expanded{background:#f59e0b1a;border-left:2px solid #f59e0b}.keyframe-track-row.flat.curve-expanded{flex-direction:column}.keyframe-track-row.flat.curve-expanded .keyframe-track{flex-shrink:0}.preview-container{position:relative;overflow:hidden}.preview-controls{position:absolute;top:8px;left:8px;display:flex;align-items:center;gap:8px;z-index:20}.preview-edit-btn{padding:4px 10px;background:#0009;border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:11px;cursor:pointer;transition:all .15s}.preview-edit-btn:hover{background:#000c;color:var(--text-primary);border-color:#555}.preview-edit-btn.active{background:var(--accent);border-color:var(--accent);color:#000}.preview-zoom-label{font-size:11px;color:var(--text-secondary);background:#0009;padding:4px 8px;border-radius:4px;font-family:monospace}.preview-reset-btn{padding:4px 8px;background:#0009;border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:11px;cursor:pointer;transition:all .15s}.preview-reset-btn:hover{background:#000c;color:var(--text-primary)}.preview-comp-selector{position:absolute;top:8px;right:8px;display:flex;align-items:center;gap:4px;z-index:20}.preview-comp-dropdown-wrapper{position:relative}.preview-comp-dropdown-btn{display:flex;align-items:center;gap:6px;padding:4px 10px;background:#0009;border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:11px;cursor:pointer;transition:all .15s}.preview-comp-dropdown-btn:hover{background:#000c;color:var(--text-primary);border-color:#555}.preview-comp-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-comp-arrow{font-size:8px;opacity:.7}.preview-comp-dropdown{position:absolute;top:100%;left:0;margin-top:4px;min-width:160px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 12px #0006;padding:4px 0;z-index:100}.preview-comp-option{display:block;width:100%;padding:6px 12px;background:transparent;border:none;color:var(--text-secondary);font-size:11px;text-align:left;cursor:pointer;transition:all .15s}.preview-comp-option:hover{background:var(--bg-hover);color:var(--text-primary)}.preview-comp-option.active{color:var(--accent);background:#00d4ff1a}.preview-comp-separator{height:1px;background:var(--border-color);margin:4px 0}.preview-add-btn{padding:4px 8px;background:#0009;border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:14px;font-weight:700;cursor:pointer;transition:all .15s;line-height:1}.preview-add-btn:hover{background:var(--accent);border-color:var(--accent);color:#000}.preview-close-btn{padding:4px 8px;background:#0009;border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:14px;font-weight:700;cursor:pointer;transition:all .15s;line-height:1}.preview-close-btn:hover{background:#c53030;border-color:#c53030;color:#fff}.preview-overlay{position:absolute;top:0;left:0;pointer-events:auto;z-index:10}.preview-edit-hint{position:absolute;bottom:8px;left:50%;transform:translate(-50%);font-size:10px;color:var(--text-secondary);background:#000000b3;padding:4px 12px;border-radius:4px;white-space:nowrap;z-index:20}.preview-canvas-wrapper{transform-origin:center center;transition:transform .1s ease-out}.preview-controls-bottom{position:absolute;bottom:8px;left:8px;display:flex;align-items:center;gap:8px;z-index:20}.preview-transparency-toggle{display:flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;background:#0009;border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:11px;cursor:pointer;transition:all .15s ease}.preview-transparency-toggle:hover{background:#000c;color:var(--text-primary);border-color:#555}.preview-transparency-toggle.active{background:#00d4ff33;border-color:var(--accent);color:var(--accent)}.preview-quality-dropdown-wrapper{position:relative}.preview-quality-dropdown-btn{display:flex;align-items:center;gap:6px;padding:4px 10px;background:#0009;border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:11px;cursor:pointer;transition:all .15s}.preview-quality-dropdown-btn:hover{background:#000c;color:var(--text-primary);border-color:#555}.preview-quality-label{min-width:45px}.preview-quality-dropdown{position:absolute;bottom:100%;left:0;margin-bottom:4px;min-width:120px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 12px #0006;padding:4px 0;z-index:100}.preview-quality-option{display:block;width:100%;padding:6px 12px;background:transparent;border:none;color:var(--text-secondary);font-size:11px;text-align:left;cursor:pointer;transition:all .15s}.preview-quality-option:hover{background:var(--bg-hover);color:var(--text-primary)}.preview-quality-option.active{color:var(--accent);background:#00d4ff1a}.preview-quality-desc{opacity:.6;margin-left:4px}.timeline-context-menu,.media-context-menu{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 8px 24px #00000080;min-width:180px;padding:4px 0;font-size:12px}.context-menu-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;cursor:pointer;transition:background .1s;color:var(--text-primary)}.context-menu-item:hover{background:var(--bg-hover)}.context-menu-item.disabled{color:var(--text-secondary);cursor:not-allowed;opacity:.5}.context-menu-item.disabled:hover{background:transparent}.context-menu-item.danger{color:#ef4444}.context-menu-item.danger:hover{background:#ef444426}.context-menu-separator{height:1px;background:var(--border-color);margin:4px 0}.context-menu-item.has-submenu{position:relative}.submenu-arrow{font-size:8px;color:var(--text-secondary)}.context-submenu{display:none;position:absolute;left:100%;top:-4px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 8px 24px #00000080;min-width:160px;padding:4px 0}.context-menu-item.has-submenu:hover .context-submenu{display:block}.masks-section .section-header-with-button{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.masks-section .section-header-with-button h4{margin:0}.mask-add-menu-container{position:relative}.btn-add{background:var(--accent);color:#000;border:none;padding:4px 10px;font-size:11px;font-weight:600;cursor:pointer;border-radius:4px}.btn-add:hover{background:var(--accent-hover)}.mask-add-menu{position:absolute;top:100%;right:0;margin-top:4px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;min-width:120px;z-index:100;box-shadow:0 4px 12px #0000004d}.mask-add-menu button{display:block;width:100%;text-align:left;padding:8px 12px;background:none;border:none;color:var(--text-primary);cursor:pointer;font-size:12px}.mask-add-menu button:hover{background:var(--bg-hover)}.mask-add-menu button:first-child{border-radius:6px 6px 0 0}.mask-add-menu button:last-child{border-radius:0 0 6px 6px}.mask-empty{color:var(--text-secondary);font-size:12px;padding:12px 0;text-align:center}.mask-list{display:flex;flex-direction:column;gap:4px}.mask-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;overflow:hidden}.mask-item.active{border-color:var(--accent)}.mask-item-header{display:flex;align-items:center;gap:6px;padding:8px;cursor:pointer}.mask-item-header:hover{background:var(--bg-hover)}.mask-expand-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:10px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;padding:0}.mask-expand-btn:hover{color:var(--text-primary)}.mask-name{flex:1;font-size:12px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mask-name-input{flex:1;font-size:12px;padding:2px 6px;border:1px solid var(--accent);border-radius:3px;background:var(--bg-primary);color:var(--text-primary);outline:none}.mask-mode-select{font-size:10px;padding:2px 4px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:3px;color:var(--text-primary);cursor:pointer}.mask-edit-btn,.mask-delete-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:3px;display:flex;align-items:center;justify-content:center}.mask-edit-btn:hover{background:var(--bg-hover);color:var(--accent)}.mask-delete-btn:hover{background:#ef444426;color:#ef4444}.mask-item-properties{padding:8px 12px 12px;background:var(--bg-primary);border-top:1px solid var(--border-color)}.mask-item-properties .control-row{margin-bottom:6px}.mask-item-properties .control-row:last-of-type{margin-bottom:8px}.mask-item-properties label{font-size:11px;min-width:60px}.mask-item-properties .value{font-size:10px;min-width:45px}.mask-item-properties input[type=checkbox]{width:14px;height:14px;cursor:pointer;accent-color:var(--accent)}.mask-info{font-size:10px;color:var(--text-secondary);margin-top:4px}.mask-overlay-svg{pointer-events:auto;z-index:50}.mask-overlay-svg text{text-shadow:0 1px 2px rgba(0,0,0,.8)}.mask-shape-tools{display:flex;gap:4px;margin-bottom:8px;padding:6px;background:var(--bg-tertiary);border-radius:6px}.mask-tool-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.mask-tool-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--accent)}.mask-tool-btn.active{background:var(--accent);color:#000;border-color:var(--accent)}.mask-tool-btn.cancel{margin-left:auto;color:#ef4444}.mask-tool-btn.cancel:hover{background:#ef444433;border-color:#ef4444}.mask-draw-hint{font-size:11px;color:var(--accent);background:#00d4ff1a;padding:6px 10px;border-radius:4px;margin-bottom:8px;text-align:center}.multicam-dialog-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10001}.multicam-dialog{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;width:480px;max-width:90vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #00000080}.multicam-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color)}.multicam-dialog-header h2{margin:0;font-size:16px;color:var(--text-primary)}.dialog-close-btn{background:none;border:none;color:var(--text-secondary);font-size:20px;cursor:pointer;padding:4px 8px;line-height:1}.dialog-close-btn:hover:not(:disabled){color:var(--text-primary)}.dialog-close-btn:disabled{opacity:.5;cursor:not-allowed}.multicam-dialog-content{padding:20px;overflow-y:auto;flex:1}.multicam-section{margin-bottom:20px}.multicam-section h3{margin:0 0 8px;font-size:13px;color:var(--text-primary);font-weight:600}.section-hint{font-size:11px;color:var(--text-secondary);margin:0 0 12px}.section-hint.warning{color:#f59e0b}.multicam-method-selector{display:flex;gap:12px;margin-bottom:8px}.method-option{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .15s ease}.method-option:hover:not(:has(input:disabled)){border-color:var(--accent)}.method-option.selected{border-color:var(--accent);background:#3b82f61a}.method-option:has(input:disabled){opacity:.5;cursor:not-allowed}.method-option input[type=radio]{display:none}.method-option .method-icon{font-size:24px}.method-option .method-label{font-size:12px;font-weight:600;color:var(--text-primary)}.method-option .method-count{font-size:10px;color:var(--text-secondary)}.transcript-word-count{margin-left:auto;font-size:10px;color:var(--text-secondary);background:var(--bg-secondary);padding:2px 6px;border-radius:4px}.multicam-warning{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#f87171;padding:12px;border-radius:6px;font-size:12px;text-align:center}.multicam-clip-list{display:flex;flex-direction:column;gap:8px}.multicam-clip-list.no-audio{opacity:.7}.multicam-clip-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:all .15s ease}.multicam-clip-item:hover{border-color:var(--accent)}.multicam-clip-item.disabled{cursor:default;opacity:.6}.multicam-clip-item input[type=radio]{margin:0;accent-color:var(--accent)}.multicam-clip-item .clip-icon{font-size:16px}.multicam-clip-item .clip-name{flex:1;font-size:12px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.master-badge{background:#8b5cf6;color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:3px}.no-audio-badge{background:#6b7280;color:#fff;font-size:10px;padding:2px 6px;border-radius:3px}.multicam-progress-section{margin-top:16px}.multicam-progress{height:6px;background:var(--bg-tertiary);border-radius:3px;overflow:hidden;margin-bottom:8px}.multicam-progress-bar{height:100%;background:linear-gradient(90deg,#8b5cf6,#a78bfa);border-radius:3px;transition:width .2s ease-out}.progress-label{font-size:11px;color:var(--text-secondary);text-align:center;display:block}.multicam-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#f87171;padding:10px 12px;border-radius:6px;font-size:12px;margin-top:16px}.multicam-dialog-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid var(--border-color)}.multicam-dialog-footer .btn-cancel{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);padding:8px 16px;border-radius:6px;font-size:13px;cursor:pointer;transition:all .15s ease}.multicam-dialog-footer .btn-cancel:hover:not(:disabled){background:var(--bg-hover)}.multicam-dialog-footer .btn-cancel:disabled{opacity:.5;cursor:not-allowed}.multicam-dialog-footer .btn-sync{background:#8b5cf6;border:none;color:#fff;padding:8px 20px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease}.multicam-dialog-footer .btn-sync:hover:not(:disabled){background:#7c3aed}.multicam-dialog-footer .btn-sync:disabled{opacity:.5;cursor:not-allowed}.welcome-overlay-backdrop{position:fixed;inset:0;background:transparent;display:flex;align-items:center;justify-content:center;z-index:10002;backdrop-filter:blur(10px);transition:backdrop-filter .2s ease-in;animation:welcome-backdrop-in .4s ease-in-out .5s both}@keyframes welcome-backdrop-in{0%{backdrop-filter:blur(0px)}to{backdrop-filter:blur(10px)}}.welcome-overlay-backdrop.closing{backdrop-filter:blur(0px)}.welcome-overlay-backdrop.closing .welcome-overlay{opacity:0;transform:scale(.96);transition:opacity .2s ease-in,transform .2s ease-in}.welcome-overlay{background:linear-gradient(165deg,#1e1e1ef2,#0f0f0ffa);border:1px solid rgba(255,255,255,.06);border-radius:24px;width:400px;max-width:90vw;padding:40px 36px 32px;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:0 0 0 1px #ffffff05,0 40px 80px #00000080,0 0 120px #0000004d;animation:welcome-overlay-in .3s ease-out .9s both}@keyframes welcome-overlay-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.welcome-tagline{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600;letter-spacing:.5px;margin-bottom:28px;animation:welcome-fade-in .4s ease-out 1s both}.welcome-tag-local{color:#ff6b6b}.welcome-tag-private{color:#4dabf7}.welcome-tag-free{color:#51cf66}.welcome-tag-dot{color:#fff3;font-weight:400}@keyframes welcome-fade-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.welcome-title{margin:0 0 8px;font-size:36px;font-weight:700;letter-spacing:-1.5px;line-height:1;overflow:hidden}.welcome-title-master{color:#fff;display:inline-block;animation:welcome-title-master-in .4s cubic-bezier(.16,1,.3,1) 1.05s both}@keyframes welcome-title-master-in{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.welcome-title-selects{color:#ffffffb3;display:inline-block;animation:welcome-title-selects-in .4s cubic-bezier(.16,1,.3,1) 1.15s both}@keyframes welcome-title-selects-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.welcome-subtitle{margin:0 0 36px;font-size:14px;color:#ffffff59;font-weight:400;letter-spacing:.2px;animation:welcome-fade-up .4s ease-out 1.25s both}@keyframes welcome-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.welcome-folder-card{width:100%;margin-bottom:24px;animation:welcome-fade-up .4s ease-out 1.3s both}.welcome-folder-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding:0 4px}.welcome-folder-card-label{font-size:12px;font-weight:600;color:#fff9;letter-spacing:.3px}.welcome-folder-card-optional{font-size:10px;font-weight:500;color:#ffffff40;text-transform:uppercase;letter-spacing:.5px}.welcome-folder-btn{width:100%;display:flex;align-items:center;gap:14px;padding:14px 16px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:14px;cursor:pointer;transition:all .2s ease;text-align:left}.welcome-folder-btn:hover:not(:disabled){background:#ffffff0f;border-color:#ffffff1a}.welcome-folder-btn:hover:not(:disabled) .welcome-folder-btn-arrow{opacity:.6;transform:translate(2px)}.welcome-folder-btn:disabled{opacity:.5;cursor:not-allowed}.welcome-folder-btn.has-folder{background:#ffffff0d;border-color:#ffffff14}.welcome-folder-btn-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border-radius:10px;flex-shrink:0}.welcome-folder-btn-icon svg{color:#ffffff80}.welcome-folder-btn.has-folder .welcome-folder-btn-icon{background:#64c8641a}.welcome-folder-btn.has-folder .welcome-folder-btn-icon svg{color:#64c864b3}.welcome-folder-btn-text{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.welcome-folder-name{font-size:14px;font-weight:500;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.welcome-folder-change{font-size:11px;color:#ffffff59}.welcome-folder-btn-arrow{flex-shrink:0;color:#ffffff40;opacity:.4;transition:all .2s ease}.welcome-folder-buttons{display:flex;flex-direction:column;gap:10px}.welcome-folder-btn-secondary{background:transparent;border-color:#ffffff0a}.welcome-folder-btn-secondary:hover:not(:disabled){background:#ffffff08}.welcome-folder-btn-secondary .welcome-folder-btn-icon{background:#ffffff08}.welcome-enter{display:inline-flex;align-items:center;gap:10px;padding:0;background:none;border:none;cursor:pointer;color:#fff6;font-size:13px;font-weight:500;transition:all .2s ease;animation:welcome-fade-up .4s ease-out 1.4s both}.welcome-enter:hover{color:#ffffffb3}.welcome-enter:hover kbd{background:#ffffff1f;border-color:#ffffff26;color:#fffc}.welcome-enter kbd{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 6px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:6px;font-family:inherit;font-size:14px;color:#ffffff80;transition:all .2s ease}.welcome-note{margin:0;padding:14px 16px;background:#ffffff08;border-radius:12px;font-size:13px;color:#fff6;line-height:1.5}.welcome-error{margin-top:10px;padding:0 4px;font-size:12px;color:#ff6b6b;text-align:left}.info-content{text-align:center;padding:8px 0}.info-description{font-size:13px;color:#aaa;line-height:1.6;margin:0 0 20px}.info-features{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.info-feature{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#ffffff08;border-radius:8px;font-size:12px;color:#ccc}.info-feature-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:linear-gradient(135deg,#ffd70026,#ffd7000d);border:1px solid rgba(255,215,0,.3);border-radius:6px;font-size:10px;font-weight:700;color:gold;flex-shrink:0}.info-version{font-size:11px;color:#666;margin-top:8px}.relink-dialog{max-width:500px;width:90%}.relink-title{font-size:20px;font-weight:600;color:#fff;margin:0 0 4px;text-align:center}.relink-subtitle{font-size:13px;color:#888;margin:0 0 16px;text-align:center}.relink-file-list{max-height:300px;overflow-y:auto;background:#0000004d;border-radius:8px;margin-bottom:12px}.relink-file-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.05);cursor:pointer;transition:background .15s}.relink-file-item:hover{background:#ffffff0d}.relink-file-item:last-child{border-bottom:none}.relink-file-item.found{cursor:default}.relink-status-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:12px;font-weight:700;flex-shrink:0}.relink-status-icon.missing{background:#ff646433;color:#ff6464}.relink-status-icon.found{background:#64ff6433;color:#64ff64}.relink-status-icon.searching{background:#ffc86433;color:#ffc864}.relink-file-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.relink-file-name{font-size:13px;color:#eee;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.relink-file-path{font-size:11px;color:#666;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.relink-pick-hint{font-size:11px;color:#888;flex-shrink:0}.relink-searched{font-size:11px;color:#666;margin-bottom:12px;padding:0 4px}.relink-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.relink-actions-right{display:flex;gap:8px}.relink-btn{padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;background:#ffffff1a;color:#ccc}.relink-btn:hover:not(:disabled){background:#ffffff26;color:#fff}.relink-btn:disabled{opacity:.5;cursor:not-allowed}.relink-btn-primary{background:#ffd70033;color:gold}.relink-btn-primary:hover:not(:disabled){background:#ffd7004d}.relink-btn-secondary{background:#6496ff26;color:#8af}.relink-btn-secondary:hover:not(:disabled){background:#6496ff40}.saved-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10000;padding:16px 32px;background:#000000d9;border:2px solid #ffd700;border-radius:12px;font-size:24px;font-weight:600;color:gold;text-shadow:0 0 10px rgba(255,215,0,.5);box-shadow:0 0 30px #ffd7004d,0 4px 20px #00000080;animation:saved-toast-flash .6s ease-out forwards;pointer-events:none}@keyframes saved-toast-flash{0%{opacity:0;transform:translate(-50%,-50%) scale(.8)}25%{opacity:1;transform:translate(-50%,-50%) scale(1)}70%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.95)}}
