@font-face{font-family:Aether Sans;src:url(/fonts/sans.ttf)format("truetype");font-display:swap}@font-face{font-family:Aether Serif;src:url(/fonts/serif.ttf)format("truetype");font-display:swap}@font-face{font-family:Aether Mono;src:url(/fonts/mono.ttf)format("truetype");font-display:swap}@font-face{font-family:Aether Display;src:url(/fonts/display.ttf)format("truetype");font-display:swap}@font-face{font-family:Aether Handwriting;src:url(/fonts/handwriting.ttf)format("truetype");font-display:swap}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-app:#0f1014;--bg-primary:#15171c;--bg-secondary:#1a1d24;--bg-tertiary:#21252d;--bg-elevated:#272b34;--bg-glass:#1a1d24d1;--accent-primary:#6366f1;--accent-hover:#7c83ff;--accent-secondary:#22d3ee;--accent-gradient:linear-gradient(135deg, #6366f1 0%, #22d3ee 100%);--accent-glow:0 0 18px #6366f159;--success:#34d399;--danger:#f87171;--warning:#fbbf24;--text-primary:#e6e9ef;--text-secondary:#a5acbb;--text-muted:#7a8090;--border-color:#ffffff12;--border-hover:#ffffff24;--border-strong:#ffffff2e;--track-hue:230;--clip-bg:linear-gradient(180deg, #2d313b 0%, #262a33 100%);--clip-bg-selected:linear-gradient(180deg, #353a47 0%, #2d313b 100%);--playhead-color:#22d3ee;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--shadow-sm:0 1px 3px #00000080;--shadow-md:0 8px 24px #0000008c;--shadow-glow:0 4px 18px #6366f147;--transition-fast:.12s ease;--transition-normal:.2s ease;--transition-bouncy:.28s cubic-bezier(.34, 1.56, .64, 1);--text-xs:11px;--text-sm:12px;--text-base:13px;--text-md:14px;--text-lg:16px;--text-xl:18px;--text-2xl:22px;--topbar-height:52px;--sidebar-width:296px;--timeline-height:264px}html,body{height:100%}body{font-feature-settings:"cv11", "ss01";font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:var(--text-base);background:var(--bg-app);color:var(--text-primary);cursor:url(/cursors/default.svg) 2 2,auto;height:100vh;overflow:hidden}#root{flex-direction:column;height:100vh;display:flex}button,a[href],[role=button],.fx-card,.file-item,.sidebar-tab,.tool-btn,.inspector-chip,.context-menu-item,.context-menu-speed-chip,.btn{cursor:url(/cursors/pointer.svg) 8 4,pointer}button{-webkit-user-select:none;user-select:none;border:none;outline:none;font-family:inherit}input[type=text],input[type=number],textarea,[contenteditable=true]{cursor:text}input[type=color]{cursor:url(/cursors/pointer.svg) 8 4,pointer}.clip-trim-handle.left,.clip-trim-handle.right{cursor:ew-resize}.overlay-handle-corner.tl,.overlay-handle-corner.br{cursor:nwse-resize}.overlay-handle-corner.tr,.overlay-handle-corner.bl{cursor:nesw-resize}.overlay-handle-rotate{cursor:grab}.overlay-handle-rotate:active{cursor:grabbing}.clip{cursor:grab}.timeline-scroll,.timeline-content,.tracks-container,.track-row{cursor:url(/cursors/default.svg) 2 2,default}input,select,textarea{font-family:inherit}.topbar,.sidebar,.timeline-panel,.preview-panel,.canvas-overlay,.context-menu,.inspector{-webkit-user-select:none;user-select:none}.sidebar input[type=text],.sidebar input[type=number],.inspector input[type=text],.inspector input[type=number]{-webkit-user-select:text;user-select:text}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff0f padding-box padding-box;border:2px solid #0000;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#ffffff26 padding-box padding-box}.editor-layout{grid-template-columns:var(--sidebar-width) 1fr;grid-template-rows:minmax(0, 1fr) var(--timeline-height);background:#ffffff0a;flex:1;gap:1px;min-height:0;display:grid;overflow:hidden}.editor-layout>.sidebar{grid-area:1/1}.editor-layout>.preview-panel{grid-area:1/2}.editor-layout>.timeline-panel{grid-area:2/1/auto/-1}.topbar{height:var(--topbar-height);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);z-index:10;background:linear-gradient(#221735d9,#19102ed9);justify-content:space-between;align-items:center;padding:0 18px;display:flex;position:relative}.topbar-left{align-items:center;gap:14px;display:flex}.topbar-center{align-items:center;gap:10px;display:flex}.topbar-canvas-picker{align-items:center;gap:8px;display:flex}.topbar-canvas-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:700}.topbar-right{align-items:center;gap:8px;display:flex}.topbar-logo{letter-spacing:-.01em;color:var(--text-primary);align-items:center;gap:10px;font-size:18px;font-weight:800;display:flex}.topbar-logo-mark{background:var(--accent-gradient);width:30px;height:30px;box-shadow:var(--accent-glow);border-radius:9px;place-items:center;display:grid;position:relative;overflow:hidden}.topbar-logo-mark>span{z-index:1;font-size:var(--text-lg);color:#fff;letter-spacing:-.02em;font-weight:700;position:relative}.topbar-badge{color:var(--accent-hover);text-transform:uppercase;letter-spacing:.06em;background:#a06bff2e;border:1px solid #a06bff59;border-radius:999px;padding:3px 7px;font-size:9px;font-weight:700}.btn{border-radius:var(--radius-sm);transition:transform var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast), color var(--transition-fast);align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.btn:active:not(:disabled){transform:translateY(1px)}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:hover:not(:disabled){color:var(--text-primary);background:#ffffff0d}.btn-ghost:disabled{opacity:.35;color:var(--text-muted);cursor:not-allowed}.btn-secondary{color:var(--text-primary);border:1px solid var(--border-color);background:#ffffff0f}.btn-secondary:hover{border-color:var(--border-hover);background:#ffffff1a}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:var(--shadow-glow)}.btn-primary:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 8px 28px #a06bff8c}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.sidebar{background:var(--bg-secondary);flex-direction:column;display:flex;position:relative;overflow:hidden}.sidebar-tabs{z-index:1;background:var(--bg-secondary);grid-template-columns:1fr 1fr 1fr;gap:4px;padding:10px 10px 0;display:grid;position:relative}.sidebar-tab{color:var(--text-secondary);border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:color var(--transition-fast), background var(--transition-fast), border-color var(--transition-fast);background:0 0;border-bottom:2px solid #0000;justify-content:center;align-items:center;gap:6px;padding:8px 6px;font-size:12px;font-weight:600;display:flex}.sidebar-tab:hover{color:var(--text-primary);background:#ffffff08}.sidebar-tab.active{color:var(--text-primary);border-bottom-color:var(--accent-primary);background:#a06bff14}.sidebar-tab-icon{font-size:14px}.sidebar-content{flex-direction:column;flex:1;gap:16px;padding:14px;display:flex;overflow-y:auto}.sidebar-section-title{font-size:var(--text-xs);text-transform:uppercase;color:var(--text-secondary);letter-spacing:.08em;margin-bottom:8px;font-weight:700}.drop-zone{border:1.5px dashed var(--border-strong);border-radius:var(--radius-md);text-align:center;cursor:url(/cursors/pointer.svg) 8 4,pointer;transition:all var(--transition-fast);background:#ffffff05;padding:22px 14px;position:relative}.drop-zone:hover,.drop-zone.drag-over{border-color:var(--accent-primary);background:#a06bff12;transform:translateY(-1px)}.drop-zone-icon{filter:drop-shadow(0 2px 6px #a06bff4d);margin-bottom:6px;font-size:28px}.drop-zone-text{color:var(--text-primary);margin-bottom:4px;font-size:13px;font-weight:600}.drop-zone-hint{color:var(--text-muted);font-size:11px}.file-list{flex-direction:column;gap:6px;display:flex}.file-item{border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:grab;transition:background var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);background:#ffffff08;align-items:center;gap:10px;padding:8px;display:flex}.file-item:hover{border-color:var(--border-hover);background:#ffffff0f;transform:translateY(-1px)}.file-item:active{cursor:grabbing}.file-item-icon{background:var(--accent-gradient);color:#fff;border-radius:8px;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:15px;display:grid}.file-item-info{flex:1;min-width:0}.file-item-name{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.file-item-meta{color:var(--text-muted);margin-top:2px;font-size:11px}.quick-tools{flex-direction:column;gap:6px;display:flex}.tool-btn{width:100%;color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);transition:background var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);background:#ffffff0a;align-items:center;gap:10px;padding:10px 12px;font-size:13px;font-weight:500;display:flex}.tool-btn:hover:not(:disabled){border-color:var(--border-hover);background:#ffffff14;transform:translateY(-1px)}.tool-btn:disabled{opacity:.4;cursor:not-allowed}.fx-panel{flex-direction:column;gap:14px;display:flex}.fx-status{color:var(--text-muted);border-radius:var(--radius-sm);border:1px solid var(--border-color);background:#ffffff08;padding:8px 10px;font-size:11px}.fx-status strong{color:var(--accent-secondary);font-weight:700}.fx-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.fx-card{border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:url(/cursors/pointer.svg) 8 4,pointer;transition:transform var(--transition-bouncy), background var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);background:#ffffff0a;flex-direction:column;gap:4px;padding:8px;display:flex}.fx-card:hover:not(.disabled){border-color:var(--accent-primary);background:#ffffff14;transform:translateY(-2px);box-shadow:0 6px 18px #a06bff40}.fx-card.active{border-color:var(--accent-secondary);box-shadow:0 0 0 1px var(--accent-secondary), 0 6px 22px #00e0ff4d}.fx-card.disabled{opacity:.4;cursor:not-allowed}.fx-thumb{aspect-ratio:16/9;background:linear-gradient(135deg,#801ae6,#1754cf);border-radius:6px;position:relative;overflow:hidden}.fx-thumb:before,.fx-thumb:after{content:"";position:absolute;inset:0}.fx-thumb:before{background:linear-gradient(135deg,#e83030,#f4af25)}.fx-card:hover .fx-thumb:after,.fx-card.active .fx-thumb:after{animation:1.6s ease-in-out infinite fxLoop}.fx-thumb[data-kind=fade]:after{background:linear-gradient(135deg,#ab30e8,#30abe8)}.fx-thumb[data-kind=fadeblack]:after{background:#000}.fx-thumb[data-kind=fadewhite]:after{background:#fff}.fx-thumb[data-kind=dissolve]:after{opacity:0;background:repeating-conic-gradient(#ab30e8 0deg 6deg,#30abe8 6deg 12deg)}.fx-thumb[data-kind=wipeleft]:after,.fx-thumb[data-kind=wiperight]:after,.fx-thumb[data-kind=wipeup]:after,.fx-thumb[data-kind=wipedown]:after,.fx-thumb[data-kind=slideleft]:after,.fx-thumb[data-kind=slideright]:after,.fx-thumb[data-kind=slideup]:after,.fx-thumb[data-kind=slidedown]:after,.fx-thumb[data-kind=circleopen]:after,.fx-thumb[data-kind=circleclose]:after,.fx-thumb[data-kind=pixelize]:after,.fx-thumb[data-kind=radial]:after{background:linear-gradient(135deg,#ab30e8,#30abe8)}@keyframes fxLoop{0%{opacity:0;clip-path:inset(0 100% 0 0)}45%{opacity:1;clip-path:inset(0)}55%{opacity:1;clip-path:inset(0)}to{opacity:0;clip-path:inset(0 0 0 100%)}}.fx-thumb[data-kind=wipeleft]:after,.fx-card:hover .fx-thumb[data-kind=wipeleft]:after{animation-name:fxWipeLeft}.fx-thumb[data-kind=wiperight]:after,.fx-card:hover .fx-thumb[data-kind=wiperight]:after{animation-name:fxWipeRight}.fx-thumb[data-kind=wipeup]:after,.fx-card:hover .fx-thumb[data-kind=wipeup]:after{animation-name:fxWipeUp}.fx-thumb[data-kind=wipedown]:after,.fx-card:hover .fx-thumb[data-kind=wipedown]:after{animation-name:fxWipeDown}.fx-thumb[data-kind=slideleft]:after,.fx-card:hover .fx-thumb[data-kind=slideleft]:after{animation-name:fxSlideLeft}.fx-thumb[data-kind=slideright]:after,.fx-card:hover .fx-thumb[data-kind=slideright]:after{animation-name:fxSlideRight}.fx-thumb[data-kind=slideup]:after,.fx-card:hover .fx-thumb[data-kind=slideup]:after{animation-name:fxSlideUp}.fx-thumb[data-kind=slidedown]:after,.fx-card:hover .fx-thumb[data-kind=slidedown]:after{animation-name:fxSlideDown}.fx-thumb[data-kind=circleopen]:after,.fx-card:hover .fx-thumb[data-kind=circleopen]:after{animation-name:fxCircleOpen}.fx-thumb[data-kind=circleclose]:after,.fx-card:hover .fx-thumb[data-kind=circleclose]:after{animation-name:fxCircleClose}.fx-thumb[data-kind=pixelize]:after,.fx-card:hover .fx-thumb[data-kind=pixelize]:after{animation-name:fxPixelize}.fx-thumb[data-kind=radial]:after,.fx-card:hover .fx-thumb[data-kind=radial]:after{animation-name:fxRadial}.fx-thumb[data-kind=fade]:after,.fx-card:hover .fx-thumb[data-kind=fade]:after{animation-name:fxFade}.fx-thumb[data-kind=fadeblack]:after,.fx-card:hover .fx-thumb[data-kind=fadeblack]:after,.fx-thumb[data-kind=fadewhite]:after,.fx-card:hover .fx-thumb[data-kind=fadewhite]:after{animation-name:fxFadeBW}.fx-thumb[data-kind=dissolve]:after,.fx-card:hover .fx-thumb[data-kind=dissolve]:after{animation-name:fxDissolve}@keyframes fxFade{0%,to{opacity:0}45%,55%{opacity:1}}@keyframes fxFadeBW{0%,to{opacity:0}40%{opacity:0}50%{opacity:1}60%{opacity:0}}@keyframes fxDissolve{0%,to{opacity:0;filter:blur(2px)}50%{opacity:1;filter:blur()}}@keyframes fxWipeLeft{0%{clip-path:inset(0 0 0 100%)}50%{clip-path:inset(0)}to{clip-path:inset(0)}}@keyframes fxWipeRight{0%{clip-path:inset(0 100% 0 0)}50%{clip-path:inset(0)}to{clip-path:inset(0)}}@keyframes fxWipeUp{0%{clip-path:inset(100% 0 0)}50%{clip-path:inset(0)}to{clip-path:inset(0)}}@keyframes fxWipeDown{0%{clip-path:inset(0 0 100%)}50%{clip-path:inset(0)}to{clip-path:inset(0)}}@keyframes fxSlideLeft{0%{transform:translate(100%)}50%{transform:translate(0)}to{transform:translate(0)}}@keyframes fxSlideRight{0%{transform:translate(-100%)}50%{transform:translate(0)}to{transform:translate(0)}}@keyframes fxSlideUp{0%{transform:translateY(100%)}50%{transform:translateY(0)}to{transform:translateY(0)}}@keyframes fxSlideDown{0%{transform:translateY(-100%)}50%{transform:translateY(0)}to{transform:translateY(0)}}@keyframes fxCircleOpen{0%{clip-path:circle(0%)}50%{clip-path:circle(70%)}to{clip-path:circle(70%)}}@keyframes fxCircleClose{0%{clip-path:circle(70%)}50%{clip-path:circle(0%)}to{clip-path:circle(0%)}}@keyframes fxPixelize{0%{opacity:0;filter:blur(8px)contrast(2)}50%{opacity:1;filter:blur()}to{opacity:1;filter:blur()}}@keyframes fxRadial{0%{clip-path:polygon(50% 50%,50% 0,50% 0,50% 0,50% 0,50% 0,50% 0,50% 0,50% 0)}50%{clip-path:polygon(50% 50%,50% 0,100% 0,100% 100%,0 100%,0 0,50% 0,50% 0,50% 0)}to{clip-path:polygon(50% 50%,50% 0,100% 0,100% 100%,0 100%,0 0,50% 0,50% 0,50% 0)}}.fx-card-name{text-align:center;color:var(--text-secondary);text-transform:capitalize;font-size:11px;font-weight:600}.fx-card.active .fx-card-name{color:var(--accent-secondary)}.fx-duration-control{border-radius:var(--radius-sm);color:var(--text-secondary);background:#ffffff08;align-items:center;gap:8px;padding:8px 10px;font-size:11px;display:flex}.fx-duration-control input[type=range]{accent-color:var(--accent-primary);flex:1}.fx-duration-control .inspector-value{font-variant-numeric:tabular-nums;text-align:right;min-width:40px;color:var(--text-primary)}.fx-clear-btn{color:var(--text-muted);border:1px solid var(--border-color);border-radius:var(--radius-sm);transition:color var(--transition-fast), border-color var(--transition-fast);background:0 0;margin-top:4px;padding:8px;font-size:11px;font-weight:600}.fx-clear-btn:hover{color:var(--danger);border-color:var(--danger)}.preview-panel{background:radial-gradient(700px 500px at 50% 30%, #a06bff14, transparent 70%), var(--bg-primary);flex-direction:column;min-height:0;display:flex;position:relative;overflow:hidden}.preview-canvas-container{flex:1;justify-content:center;align-items:center;width:100%;min-height:0;padding:24px;display:flex}.preview-canvas-wrapper{flex:none;display:block;position:relative}.preview-canvas{border-radius:var(--radius-md);background:#000;width:100%;height:100%;display:block;box-shadow:0 0 0 1px #ffffff0f,0 20px 60px #0000008c,0 0 80px #a06bff1f}.canvas-overlay{pointer-events:none;position:absolute;inset:0}.overlay-clip-handle{pointer-events:auto;cursor:move;box-sizing:border-box;transform-origin:50%;background:0 0;border:1px dashed #ffffff40;border-radius:4px;position:absolute}.overlay-clip-handle:hover{border-color:#ffffff8c}.overlay-clip-handle.selected{border-style:solid;border-color:var(--accent-secondary);box-shadow:0 0 0 1px #00e0ff73,0 0 18px #00e0ff59}.overlay-handle-corner{background:var(--accent-secondary);pointer-events:auto;border:2px solid #fff;border-radius:3px;width:12px;height:12px;position:absolute;box-shadow:0 0 8px #00e0ff99}.overlay-handle-corner.tl{cursor:nwse-resize;top:-6px;left:-6px}.overlay-handle-corner.tr{cursor:nesw-resize;top:-6px;right:-6px}.overlay-handle-corner.bl{cursor:nesw-resize;bottom:-6px;left:-6px}.overlay-handle-corner.br{cursor:nwse-resize;bottom:-6px;right:-6px}.overlay-handle-rotate{border:2px solid var(--accent-secondary);pointer-events:auto;cursor:grab;background:#fff;border-radius:50%;width:14px;height:14px;position:absolute;top:-28px;left:50%;transform:translate(-50%);box-shadow:0 0 8px #00e0ff99}.overlay-text-editor{border:2px solid var(--accent-secondary);color:var(--text-primary);text-align:center;-webkit-user-select:text;user-select:text;cursor:text;pointer-events:auto;transform-origin:50%;background:#0f091eb3;border-radius:6px;outline:none;padding:0 8px;font-family:Aether Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:700;box-shadow:0 0 18px #00e0ff66,0 8px 24px #00000073}.overlay-handle-rotate:before{content:"";background:var(--accent-secondary);width:1px;height:14px;position:absolute;top:100%;left:50%;transform:translate(-50%)}.preview-placeholder{color:var(--text-secondary);border:1.5px dashed var(--border-strong);border-radius:var(--radius-lg);text-align:center;background:#ffffff05;flex-direction:column;align-items:center;gap:14px;width:min(440px,80%);padding:36px;display:flex}.preview-placeholder-icon{background:var(--accent-gradient);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:42px}.preview-placeholder-text{font-size:13px}.playback-controls{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--border-color);background:#0f091e99;flex-shrink:0;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;width:100%;padding:14px 18px;display:grid}.playback-controls-group{justify-content:center;align-items:center;gap:8px;display:flex}.control-btn{width:38px;height:38px;color:var(--text-primary);border:1px solid var(--border-color);transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);background:#ffffff0f;border-radius:50%;place-items:center;font-size:14px;display:grid}.control-btn:hover:not(:disabled){border-color:var(--border-hover);background:#ffffff1f;transform:scale(1.05)}.control-btn:disabled{opacity:.3;cursor:not-allowed}.play-btn{background:var(--accent-gradient);color:#fff;width:52px;height:52px;box-shadow:var(--shadow-glow);transition:transform var(--transition-bouncy), filter var(--transition-fast);border-radius:50%;place-items:center;font-size:20px;display:grid}.play-btn:hover:not(:disabled){filter:brightness(1.1);transform:scale(1.05)}.play-btn:active:not(:disabled){transform:scale(.96)}.play-btn:disabled{opacity:.45;cursor:not-allowed}.time-display{color:var(--text-primary);font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:.02em;justify-self:end;font-size:13px;font-weight:600}.timeline-panel{background:var(--bg-secondary);border-top:1px solid var(--border-color);flex-direction:column;display:flex;overflow:hidden}.timeline-toolbar{border-bottom:1px solid var(--border-color);background:#ffffff05;flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.timeline-toolbar-left,.timeline-toolbar-right{align-items:center;gap:12px;display:flex}.zoom-control{color:var(--text-secondary);align-items:center;gap:8px;font-size:12px;display:flex}.zoom-control input[type=range]{width:100px;accent-color:var(--accent-primary)}.timeline-body{flex:1;display:flex;overflow:hidden}.track-labels{border-right:1px solid var(--border-color);background:#ffffff05;flex-shrink:0;width:130px;overflow-y:auto}.track-label{height:48px;color:var(--text-secondary);border-bottom:1px solid var(--border-color);align-items:center;gap:10px;padding:0 14px;font-size:12px;font-weight:600;display:flex}.track-label-dot{background:hsl(var(--track-hue) 80% 60%);width:10px;height:10px;box-shadow:0 0 8px hsl(var(--track-hue) 80% 60% / .6);border-radius:3px}.timeline-scroll{cursor:text;flex:1;position:relative;overflow:auto}.timeline-content{position:relative}.timeline-ruler{border-bottom:1px solid var(--border-color);z-index:2;background:#ffffff08;height:26px;position:relative}.tracks-container{position:relative}.track-row{border-bottom:1px solid var(--border-color);background:linear-gradient(90deg,#0000 0 49px,#ffffff05 49px 50px) 0 0/50px 100%;height:48px;position:relative}.track-row.drag-over{outline:1px dashed var(--accent-primary);outline-offset:-1px;background:#a06bff12}.track-row:empty:after{content:""}.ghost-track-row{border:2px dashed var(--accent-secondary);pointer-events:none;z-index:5;background:#00e0ff14;border-radius:6px;height:48px;position:absolute;left:0;right:0;box-shadow:0 0 20px #00e0ff40}.ghost-track-row:after{content:"+ Drop to create new track";text-transform:uppercase;letter-spacing:.08em;color:var(--accent-secondary);font-size:11px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.new-track-drop-zone{height:48px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;transition:all var(--transition-fast);cursor:copy;border-top:2px dashed #0000;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex;position:relative}.new-track-drop-zone:hover,.new-track-drop-zone.drag-over{border-top-color:var(--accent-secondary);color:var(--accent-secondary);background:#00e0ff0f}.clip{border-radius:var(--radius-sm);background:var(--clip-bg);border-left:3px solid hsl(var(--track-hue) 70% 58%);height:40px;color:var(--text-primary);font-size:var(--text-xs);cursor:grab;-webkit-user-select:none;user-select:none;white-space:nowrap;text-overflow:ellipsis;transition:transform var(--transition-fast), box-shadow var(--transition-fast);align-items:center;padding:0 8px;font-weight:600;display:flex;position:absolute;top:4px;overflow:hidden;box-shadow:inset 0 1px #ffffff0a,0 2px 4px #00000059}.clip:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff0f,0 4px 10px #00000073}.clip:active,.clip.dragging{cursor:grabbing}.clip.dragging{box-shadow:0 0 0 2px var(--accent-secondary), 0 12px 24px #0000008c;opacity:.94;transform:translateY(-2px)scale(1.02)}.clip-fade-indicator{pointer-events:none;background:linear-gradient(90deg,#0000,#000000a6);border-top-right-radius:7px;border-bottom-right-radius:7px;position:absolute;top:0;bottom:0;right:0}.clip>span{text-overflow:ellipsis;text-shadow:0 1px 2px #00000073;pointer-events:none;letter-spacing:.01em;flex:1;overflow:hidden}.clip-trim-handle{cursor:ew-resize;z-index:2;width:8px;transition:background var(--transition-fast);background:0 0;position:absolute;top:0;bottom:0}.clip-trim-handle.left{border-radius:7px 0 0 7px;left:0}.clip-trim-handle.right{border-radius:0 7px 7px 0;right:0}.clip:hover .clip-trim-handle.left,.clip.dragging .clip-trim-handle.left{background:linear-gradient(90deg,#fff6,#0000)}.clip:hover .clip-trim-handle.right,.clip.dragging .clip-trim-handle.right{background:linear-gradient(270deg,#fff6,#0000)}.snap-indicator{background:var(--accent-secondary);z-index:9;pointer-events:none;width:1px;box-shadow:0 0 8px var(--accent-secondary);position:absolute;top:0;bottom:0}.clip.selected{background:var(--clip-bg-selected);border-left-color:var(--accent-secondary);box-shadow:0 0 0 1.5px var(--accent-secondary), 0 4px 12px #00000080}.clip.fx-drop-target{box-shadow:0 0 0 2px var(--accent-secondary), 0 0 14px #22d3ee73, 0 4px 12px #00000080;filter:brightness(1.08)}.clip-gap-slot{z-index:4;pointer-events:auto;transition:background var(--transition-fast), border-color var(--transition-fast);background:#22d3ee2e;border:1.5px dashed #22d3ee8c;border-radius:3px;position:absolute;top:2px;bottom:2px}.clip-gap-slot:hover{background:#22d3ee66;border-color:#22d3ee;box-shadow:0 0 10px #22d3ee73}.clip-fx-edge{z-index:6;pointer-events:auto;width:30%;max-width:48px;transition:background var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);background:#00e0ff2e;border:1.5px dashed #00e0ff8c;border-radius:4px;position:absolute;top:2px;bottom:2px}.clip-fx-edge-start{left:0}.clip-fx-edge-end{right:0}.clip-fx-edge:hover,.clip-fx-edge.active{background:#00e0ff73;border-color:#00e0ff;box-shadow:0 0 14px #00e0ff99}.clip-text{background:var(--clip-bg);border-left-color:var(--accent-secondary)}.clip-text.selected{background:var(--clip-bg-selected)}.playhead{background:var(--playhead-color);z-index:10;pointer-events:none;width:2px;position:absolute;top:0;bottom:0;box-shadow:0 0 8px #00e0ffb3}.playhead:before{content:"";background:var(--playhead-color);clip-path:polygon(50% 100%,0 0,100% 0);filter:drop-shadow(0 0 6px #00e0ffcc);width:16px;height:12px;position:absolute;top:-1px;left:-7px}.context-menu{background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-md);z-index:100;box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:180px;padding:6px;position:fixed}.context-menu-item{width:100%;color:var(--text-primary);transition:background var(--transition-fast);background:0 0;border-radius:6px;align-items:center;gap:10px;padding:8px 12px;font-size:13px;font-weight:500;display:flex}.context-menu-item:hover{background:var(--accent-primary)}.context-menu-item.danger{color:var(--danger)}.context-menu-item.danger:hover{background:var(--danger);color:#fff}.context-menu-submenu{border-top:1px dashed var(--border-color);border-bottom:1px dashed var(--border-color);margin:2px 0;padding:6px 10px}.context-menu-submenu-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px;font-size:11px;font-weight:700}.context-menu-speed-grid{grid-template-columns:1fr 1fr 1fr;gap:4px;display:grid}.context-menu-speed-chip{border:1px solid var(--border-color);color:var(--text-primary);cursor:url(/cursors/pointer.svg) 8 4,pointer;transition:background var(--transition-fast), border-color var(--transition-fast);font-variant-numeric:tabular-nums;background:#ffffff0d;border-radius:5px;padding:5px 6px;font-size:11px;font-weight:600}.context-menu-speed-chip:hover{border-color:var(--border-hover);background:#ffffff1f}.context-menu-speed-chip.active{background:var(--accent-gradient);color:#fff;border-color:#0000}.inspector{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#ffffff08;flex-direction:column;gap:10px;padding:12px;display:flex}.inspector-header{font-size:var(--text-xs);color:var(--text-muted);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.inspector-kind{font-size:var(--text-xs);color:var(--accent-secondary);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:6px;font-weight:700;display:inline-flex}.inspector-empty{font-size:var(--text-xs);color:var(--text-muted);padding:6px 0 2px;line-height:1.5}.inspector-hint{font-size:var(--text-xs);color:var(--text-muted);margin-top:2px;line-height:1.5}.inspector-chip-grid{grid-template-columns:1fr 1fr;gap:6px;width:100%;display:grid}.inspector-chip-row{gap:6px;width:100%;display:flex}.inspector-chip-grid .inspector-chip,.inspector-chip-row .inspector-chip{justify-content:center;align-items:center;gap:6px;display:inline-flex}.inspector-field{font-size:var(--text-sm);color:var(--text-secondary);align-items:center;gap:10px;display:flex}.inspector-field>span:first-child{width:72px;color:var(--text-primary);font-weight:500;font-size:var(--text-sm);flex-shrink:0}.inspector-field input[type=range]{accent-color:var(--accent-primary);flex:1}.inspector-field input[type=text],.inspector-field input[type=number],.inspector-field select{border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--text-sm);transition:border-color var(--transition-fast), background var(--transition-fast);background:#ffffff0a;outline:none;flex:1;padding:6px 9px}.inspector-field input[type=text]:hover,.inspector-field input[type=number]:hover,.inspector-field select:hover{border-color:var(--border-hover)}.inspector-field select{cursor:url(/cursors/pointer.svg) 8 4,pointer}.inspector-field input[type=text]:focus,.inspector-field input[type=number]:focus,.inspector-field select:focus{border-color:var(--accent-secondary);background:#ffffff0f}.inspector-field input[type=color]{border:1px solid var(--border-color);cursor:url(/cursors/pointer.svg) 8 4,pointer;background:0 0;border-radius:5px;width:36px;height:24px;padding:0}.inspector-field input[type=checkbox]{accent-color:var(--accent-primary);cursor:url(/cursors/pointer.svg) 8 4,pointer;width:16px;height:16px}.inspector-field-stack{flex-direction:column;align-items:stretch;gap:6px}.inspector-field-stack>span:first-child{width:auto}.inspector-value{font-variant-numeric:tabular-nums;text-align:right;min-width:40px;font-size:var(--text-xs);color:var(--text-muted)}.inspector-chip{border:1px solid var(--border-color);color:var(--text-secondary);font-size:var(--text-xs);border-radius:var(--radius-sm);text-transform:capitalize;cursor:url(/cursors/pointer.svg) 8 4,pointer;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);background:#ffffff0a;flex:1;padding:6px 9px;font-weight:600}.inspector-chip:hover{color:var(--text-primary);border-color:var(--border-hover);background:#ffffff12}.inspector-chip.active{background:var(--accent-gradient);color:#fff;border-color:#0000}.inspector-field-group-header{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-top:10px;margin-bottom:6px;padding-top:8px;font-weight:700;display:flex}.inspector-link-btn{color:var(--accent-secondary);cursor:url(/cursors/pointer.svg) 8 4,pointer;text-transform:none;letter-spacing:normal;background:0 0;border:none;padding:0;font-size:11px;font-weight:600}.inspector-link-btn:hover{text-decoration:underline}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes montaj-indet{0%{transform:translate(-100%)}50%{transform:translate(125%)}to{transform:translate(125%)}}.track-row-empty-hint{font-size:var(--text-xs);color:var(--text-muted);pointer-events:none;opacity:.5;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.icon-sm{flex-shrink:0;width:14px;height:14px}.icon-md{flex-shrink:0;width:16px;height:16px}.icon-lg{flex-shrink:0;width:20px;height:20px}.icon-xl{flex-shrink:0;width:24px;height:24px}button:focus-visible,a:focus-visible,[role=button]:focus-visible,.fx-card:focus-visible,.file-item:focus-visible,.sidebar-tab:focus-visible,.tool-btn:focus-visible,.inspector-chip:focus-visible,.context-menu-item:focus-visible,.context-menu-speed-chip:focus-visible,.select-trigger:focus-visible,.select-option:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:2px}button[disabled],button:disabled,.btn[disabled],.btn:disabled,.select-trigger[disabled]{opacity:.5;pointer-events:auto;cursor:not-allowed!important}*{scrollbar-color:#ffffff2e transparent;scrollbar-width:thin}.select-trigger{border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--text-sm);cursor:url(/cursors/pointer.svg) 8 4,pointer;transition:background var(--transition-fast), border-color var(--transition-fast);background:#ffffff0a;align-items:center;gap:8px;padding:6px 10px 6px 12px;font-family:inherit;font-weight:600;display:inline-flex}.select-trigger:hover{border-color:var(--border-hover);background:#ffffff14}.select-trigger[aria-expanded=true]{border-color:var(--accent-secondary);background:#ffffff14}.select-trigger-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.select-trigger-chevron{opacity:.7;transition:transform var(--transition-fast)}.select-trigger[aria-expanded=true] .select-trigger-chevron{transform:rotate(180deg)}.select-popover{z-index:200;background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);cursor:default;flex-direction:column;gap:1px;min-width:180px;max-height:360px;padding:4px;font-family:inherit;display:flex;position:fixed;overflow-y:auto}.select-option{border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--text-sm);text-align:left;cursor:url(/cursors/pointer.svg) 8 4,pointer;transition:background var(--transition-fast);background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 12px;font-weight:500;display:flex}.select-option:hover,.select-option.highlight{background:#ffffff14}.select-option.selected{color:var(--accent-secondary)}.select-option.selected.highlight{background:#22d3ee1f}.select-option-label{font-weight:600}.select-option-hint{font-size:var(--text-xs);color:var(--text-muted);font-weight:400}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:480px;max-width:92vw;max-height:90vh;box-shadow:var(--shadow-md);flex-direction:column;display:flex;overflow:hidden}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:18px 24px 14px;display:flex}.modal-title{font-size:var(--text-xl);letter-spacing:-.01em;color:var(--text-primary);margin:0;font-weight:600}.modal-close{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-secondary);cursor:url(/cursors/pointer.svg) 8 4,pointer;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.modal-close:hover{border-color:var(--border-hover);color:var(--text-primary);background:#ffffff0f}.modal-body{flex-direction:column;gap:14px;padding:18px 24px 22px;display:flex;overflow-y:auto}.modal-text{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:1.55}.modal-note{font-size:var(--text-xs);color:var(--text-muted);margin:0;line-height:1.5}.modal-alert{font-size:var(--text-sm);border-radius:var(--radius-sm);border:1px solid #0000;margin:0;padding:10px 12px;line-height:1.5}.modal-alert-warn{color:var(--warning);background:#fbbf2414;border-color:#fbbf2438}.modal-alert-danger{color:var(--danger);background:#f8717114;border-color:#f871713d}.modal-alert-success{color:var(--success);background:#34d39914;border-color:#34d3993d}.modal-section{flex-direction:column;gap:6px;display:flex}.modal-section-title{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:700}.modal-section-value{font-size:var(--text-base);color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:500}.modal-section-hint{font-size:var(--text-xs);color:var(--text-muted);line-height:1.5}.modal-chip-stack{flex-direction:column;gap:6px;display:flex}.modal-chip{border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);text-align:left;cursor:url(/cursors/pointer.svg) 8 4,pointer;transition:background var(--transition-fast), border-color var(--transition-fast);background:#ffffff08;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;font-family:inherit;display:flex}.modal-chip:hover{border-color:var(--border-hover);background:#ffffff0f}.modal-chip.active{border-color:var(--accent-secondary);background:#6366f11f}.modal-chip-label{font-size:var(--text-sm);font-weight:600}.modal-chip-hint{font-size:var(--text-xs);color:var(--text-muted);font-weight:400}.modal-chip.active .modal-chip-hint{color:var(--text-secondary)}.modal-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.modal-actions .btn{text-decoration:none}.progress-track{background:var(--bg-tertiary);border-radius:4px;width:100%;height:8px;position:relative;overflow:hidden}.progress-fill{background:var(--accent-gradient);border-radius:4px;height:100%;transition:width .3s}.progress-fill-indet{animation:1.2s ease-in-out infinite montaj-indet}
