:root{color-scheme:dark;--bg:#111318;--panel:#171a20;--panel2:#1d2129;--panel3:#232833;--line:#2d3340;--line2:#383f4d;--text:#eef2f8;--muted:#9099a8;--accent:#73a6ff;--accent2:#5c8ee9;--accent-soft:#20304a;--green:#62c99a;--red:#ef7d7d;--yellow:#e4b85f;--purple:#a98ae8;--track-label:118px;--row-h:58px}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden}body{font-family:Inter,Pretendard,Noto Sans KR,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text);font-size:13px}button,input,select,textarea{font:inherit;color:inherit}button,.file-label,select{cursor:pointer}button{border:0}.app-shell{height:100vh;display:flex;flex-direction:column;min-width:1050px}.topbar{height:58px;flex:0 0 58px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 14px;border-bottom:1px solid var(--line);background:#13161b}.brand{display:flex;align-items:center;gap:11px}.back-link{width:32px;height:32px;border:1px solid var(--line);border-radius:8px;display:grid;place-items:center;color:var(--muted);text-decoration:none;font-size:16px}.back-link:hover{color:#fff;background:var(--panel2)}.brand-title{font-size:15px;font-weight:800;letter-spacing:.01em}.brand-sub{font-size:10px;color:var(--muted);margin-top:1px}.top-actions{display:flex;align-items:center;gap:7px}.project-name{width:180px;background:#101217;border:1px solid var(--line);border-radius:7px;padding:8px 10px;outline:none}.project-name:focus{border-color:#597aa9}.aspect-control{display:flex;align-items:center;gap:6px;height:34px;padding:0 7px 0 9px;border:1px solid var(--line);border-radius:7px;background:var(--panel2);color:var(--muted);font-size:10px}.aspect-control select{border:0;background:transparent;color:#e5eaf2;outline:none;padding:0 2px;font-weight:700}.aspect-control select option{background:#1d2129;color:#eef2f8}.tool-btn,.small-btn,.icon-btn,.danger-outline-btn{border:1px solid var(--line);background:var(--panel2);border-radius:7px;padding:8px 10px;color:#d9dfe9}.tool-btn:hover,.small-btn:hover,.icon-btn:hover,.danger-outline-btn:hover{background:#292f3a}.primary-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:7px;padding:9px 15px;background:var(--accent2);color:#fff;font-weight:750;text-decoration:none}.primary-btn:hover{background:#6b9aed}.workspace{--left-panel:250px;--right-panel:270px;--timeline-panel:290px;flex:1;min-height:0;position:relative;display:grid;grid-template-columns:var(--left-panel) minmax(320px,1fr) var(--right-panel);grid-template-rows:minmax(180px,1fr) var(--timeline-panel);grid-template-areas:"media center inspector" "timeline timeline timeline"}.panel{background:var(--panel);min-width:0}.media-panel{grid-area:media;border-right:1px solid var(--line);overflow:auto}.inspector-panel{grid-area:inspector;border-left:1px solid var(--line);overflow:auto}.editor-center{grid-area:center;min-width:0;min-height:0;background:#0d0f13;overflow:hidden}.timeline-panel{grid-area:timeline;border-top:1px solid var(--line);background:#13161b;min-height:0;overflow:hidden}.workspace-resizer{position:absolute;z-index:60;touch-action:none;user-select:none}.workspace-resizer:after{content:"";position:absolute;background:transparent;transition:background .12s}.workspace-resizer-left{left:calc(var(--left-panel) - 4px);top:0;bottom:var(--timeline-panel);width:8px;cursor:col-resize}.workspace-resizer-left:after{top:0;bottom:0;left:3px;width:2px}.workspace-resizer-right{right:calc(var(--right-panel) - 4px);top:0;bottom:var(--timeline-panel);width:8px;cursor:col-resize}.workspace-resizer-right:after{top:0;bottom:0;right:3px;width:2px}.workspace-resizer-bottom{left:0;right:0;bottom:calc(var(--timeline-panel) - 4px);height:8px;cursor:row-resize}.workspace-resizer-bottom:after{left:0;right:0;top:3px;height:2px}.workspace-resizer:hover:after,.workspace-resizer.is-dragging:after{background:#67a9ff}body.workspace-resizing{cursor:grabbing;user-select:none}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:14px;border-bottom:1px solid var(--line)}.panel-head h2{font-size:13px;margin:0 0 3px}.panel-head p{font-size:10px;color:var(--muted);margin:0}.small-btn{padding:6px 8px;font-size:11px}.file-label{display:inline-flex;align-items:center;justify-content:center}.drop-zone{margin:12px;border:1px dashed #3b4351;border-radius:9px;padding:24px 12px;text-align:center;color:var(--muted);background:#14171d;transition:.16s}.drop-zone:hover,.drop-zone.drag{border-color:var(--accent);background:#182238}.drop-zone .drop-icon{width:34px;height:34px;margin:0 auto 9px;border-radius:10px;background:#202631;display:grid;place-items:center;color:#b8c8e2;font-size:18px}.drop-zone strong{display:block;color:#d8dde6;margin-bottom:4px;font-size:12px}.drop-zone span{font-size:10px}.media-list{padding:0 10px 12px}.media-item{display:grid;grid-template-columns:58px 1fr;gap:9px;padding:8px;border-radius:8px;margin-bottom:5px;border:1px solid transparent;cursor:grab}.media-item:hover{background:var(--panel2);border-color:var(--line)}.media-thumb{width:58px;height:40px;border-radius:5px;background:#0d0f13;object-fit:cover}.media-thumb.placeholder{display:grid;place-items:center;color:var(--muted)}.media-name{font-size:11px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-meta{font-size:9px;color:var(--muted);margin-top:3px;line-height:1.4}.engine-card{margin:4px 12px 14px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#14171d}.engine-row{display:flex;justify-content:space-between;font-size:10px}.engine-row strong{color:var(--yellow)}.engine-card p{margin:5px 0 0;color:var(--muted);font-size:9px}.preview-panel{height:100%;display:flex;flex-direction:column}.preview-toolbar{height:45px;display:flex;justify-content:space-between;align-items:center;padding:0 12px;border-bottom:1px solid var(--line);background:#14171d}.timecode{font-variant-numeric:tabular-nums;color:#d5dbe5;font-size:11px}.time-sep{padding:0 5px;color:#5d6470}.preview-tools{display:flex;gap:6px;align-items:center}.icon-btn{padding:6px 8px;font-size:10px}.play-btn{width:34px;height:30px;border-radius:7px;background:var(--accent2);color:#fff}.preview-stage{flex:1;min-width:0;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:12px 16px;background:repeating-conic-gradient(#121419 0 25%,#101217 0 50%) 0/22px 22px}#previewCanvas{display:block;flex:0 0 auto;width:0;height:0;max-width:none;max-height:none;background:#000;outline:1px solid #303744;box-shadow:0 12px 28px #00000059}.preview-empty{position:absolute;text-align:center;color:var(--muted);pointer-events:none}.preview-empty-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;margin:0 auto 10px;background:#191d24;border:1px solid var(--line)}.preview-empty strong{display:block;color:#d8dee8;margin-bottom:4px}.preview-empty span{font-size:10px}.scrub-row{height:44px;display:flex;align-items:center;gap:16px;padding:0 12px;border-top:1px solid var(--line);background:#14171d}.scrub-row>input{flex:1}.scrub-row label{display:flex;align-items:center;gap:8px;font-size:9px;color:var(--muted)}.scrub-row label input{width:80px}input[type=range]{accent-color:var(--accent)}.empty-inspector{padding:18px 14px;color:var(--muted);font-size:11px;line-height:1.7}.inspector-form{padding:13px}.hidden{display:none!important}.inspector-form label{display:block;font-size:10px;color:var(--muted);margin-bottom:10px}.inspector-form input,.inspector-form select,.inspector-form textarea{width:100%;margin-top:5px;background:#11141a;border:1px solid var(--line);border-radius:6px;padding:7px;outline:none}.inspector-form input:focus,.inspector-form select:focus,.inspector-form textarea:focus{border-color:#5f7fae}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 9px}.inspector-section{margin:8px -13px 12px;padding:12px 13px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#14171d}.inspector-section h3{font-size:10px;margin:0 0 9px;color:#cfd6e1}.danger-btn{width:100%;padding:8px;border-radius:6px;background:#3c2024;color:#ffb5b5;border:1px solid #5a292f}.timeline-head{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;border-bottom:1px solid var(--line)}.timeline-actions{display:flex;align-items:center;gap:7px}.divider{height:20px;width:1px;background:var(--line);margin:0 3px}.zoom-label,.timeline-note{font-size:9px;color:var(--muted)}.timeline-head select{background:var(--panel2);border:1px solid var(--line);border-radius:6px;padding:5px}.timeline-scroll{height:calc(100% - 42px);overflow:auto;position:relative}.timeline{position:relative;min-width:100%;min-height:100%;width:1800px;padding-top:27px}.ruler{position:absolute;left:var(--track-label);right:0;top:0;height:27px;border-bottom:1px solid var(--line);background:#111419}.ruler-mark{position:absolute;bottom:0;height:100%;border-left:1px solid #353c47;color:#78818e;font-size:8px;padding:3px 0 0 4px}.tracks{position:relative}.track-row{height:var(--row-h);display:grid;grid-template-columns:var(--track-label) 1fr;border-bottom:1px solid #262c35}.track-label{padding:9px 10px;border-right:1px solid var(--line);background:#15181e}.track-label strong{display:block;font-size:10px}.track-label span{display:block;font-size:8px;color:var(--muted);margin-top:3px}.track-lane{position:relative;background:#111419}.track-lane:nth-child(2n){background:#12151a}.clip{position:absolute;top:7px;height:43px;border-radius:5px;border:1px solid #5074ab;background:#263c5c;color:#dbe9ff;overflow:hidden;user-select:none;cursor:grab;box-shadow:0 3px 7px #0000002e}.clip.overlay{border-color:#6d5a9b;background:#3a3052;color:#eadfff}.clip.image{border-color:#4b8a70;background:#26483b;color:#d8f5e8}.clip.audio{border-color:#3d8d84;background:#20433f;color:#c7fff4}.clip.subtitle{border-color:#9b7c39;background:#4c3d20;color:#fff0c3}.clip.selected{outline:2px solid #d6e4ff;outline-offset:1px}.clip-body{height:100%;padding:6px 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:9px;font-weight:700;display:flex;align-items:center}.transition-badge{position:absolute;right:8px;top:4px;padding:2px 5px;border-radius:4px;background:#090d14b8;border:1px solid rgba(148,184,255,.35);color:#cfe0ff;font-size:7px;font-weight:800;text-transform:uppercase;pointer-events:none}.handle{position:absolute;top:0;bottom:0;width:7px;background:#ffffff24;cursor:ew-resize;z-index:2}.handle.left{left:0}.handle.right{right:0}.playhead{position:absolute;top:0;bottom:0;left:var(--track-label);width:1px;background:#ef6a65;z-index:20;pointer-events:none}.playhead:before{content:"";position:absolute;top:0;left:-5px;width:11px;height:9px;background:#ef6a65;border-radius:2px 2px 6px 6px}.playhead span{position:absolute;top:0;left:0}.timeline-snap-guide{position:absolute;top:0;bottom:0;width:1px;background:#67d4ff;box-shadow:0 0 0 1px #67d4ff2e;z-index:19;pointer-events:none;opacity:0;transition:opacity .08s}.timeline-snap-guide.is-visible{opacity:1}.timeline-snap-guide:before{content:"SNAP";position:absolute;top:3px;left:4px;padding:2px 4px;border-radius:4px;background:#163947;color:#8fe7ff;font-size:7px;font-weight:800;letter-spacing:.05em}.toast-root{position:fixed;right:16px;bottom:16px;display:grid;gap:8px;z-index:100}.toast{min-width:260px;max-width:380px;padding:11px 13px;border-radius:8px;background:#232833;border:1px solid #3a424f;color:#eef2f7;box-shadow:0 12px 30px #0000004d;font-size:11px}.toast.error{border-color:#69383d;color:#ffc2c2}.toast.ok{border-color:#34614e;color:#bcebd6}.modal{position:fixed;inset:0;background:#05070ac7;display:grid;place-items:center;z-index:200;backdrop-filter:blur(4px)}.modal-card{width:min(420px,calc(100% - 30px));background:#1b1f27;border:1px solid var(--line2);border-radius:14px;padding:24px;box-shadow:0 30px 80px #0000007a;text-align:center}.modal-icon{width:50px;height:50px;margin:0 auto 12px;border-radius:14px;background:var(--accent-soft);display:grid;place-items:center;color:#a8c8ff;font-size:22px}.modal-card h2{margin:0 0 6px;font-size:18px}.modal-card p{margin:0;color:var(--muted);font-size:11px}.progress-track{height:8px;border-radius:999px;background:#101319;margin:20px 0 8px;overflow:hidden}.progress-track span{display:block;width:0;height:100%;background:linear-gradient(90deg,#5b8ee8,#7db2ff);transition:width .2s}.render-percent{font-size:10px;color:var(--muted);min-height:16px}.modal-actions{display:flex;justify-content:center;gap:8px;margin-top:18px}.danger-outline-btn{color:#ffb7b7;border-color:#5a3035;background:#2a1c20}.result-card{width:min(720px,calc(100% - 30px))}.result-card video{width:100%;max-height:58vh;background:#000;margin-top:15px;border-radius:8px}@media(max-width:1200px){.workspace{grid-template-columns:220px minmax(450px,1fr) 240px}}
