:root{--bg:#131317;--panel:#1c1c22;--panel-2:#24242c;--panel-3:#2e2e38;--line:#34343f;--ink:#ededf2;--dim:#a0a0ae;--faint:#6c6c7a;--accent:#ff7a59;--accent-ink:#1a0f0b;--accent-soft:#ff7a5924;--ok:#5fd39a;--bad:#ff6b7a;--radius:10px;--font:"Pretendard", "Malgun Gothic", "Apple SD Gothic Neo", "Noto Sans KR", system-ui, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--ink);font:14px/1.45 var(--font);margin:0}#app{height:100%}button,input{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}img{display:block}small{color:var(--dim);font-weight:400}kbd{background:var(--panel-3);min-width:76px;font:inherit;color:var(--ink);text-align:center;border-radius:5px;padding:1px 6px;font-size:12px;display:inline-block}.btn{border:1px solid var(--line);background:var(--panel-2);white-space:nowrap;border-radius:8px;align-items:center;gap:6px;height:34px;padding:0 14px;display:inline-flex}.btn:hover:not(:disabled){background:var(--panel-3);border-color:#4a4a57}.btn.ghost{background:0 0}.btn.ghost:hover:not(:disabled){background:var(--panel-2)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:700}.btn.primary:hover:not(:disabled){background:#ff8f73;border-color:#ff8f73}.btn.small{height:30px;padding:0 10px;font-size:13px}.btn.play{background:var(--ink);color:#111;border-color:var(--ink);font-weight:700}.btn.play:hover:not(:disabled){background:#fff}.btn.play.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.ib{width:34px;height:34px;color:var(--dim);background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;display:inline-grid}.ib:hover:not(:disabled){background:var(--panel-3);color:var(--ink)}.ib.small{border-radius:6px;width:26px;height:26px}.ib.quiet{opacity:0}.ib.on{color:var(--accent)}.icon{flex:none}.app{grid-template:"top top top"54px"layers center insp"minmax(0,1fr)"cuts cuts cuts"/268px minmax(0,1fr) 292px;height:100vh;display:grid}.topbar{grid-area:top}.layers{border-right:1px solid var(--line);grid-area:layers}.center{grid-area:center;min-width:0;min-height:0;position:relative}.inspector{border-left:1px solid var(--line);grid-area:insp}.cutbar{grid-area:cuts}.app.is-playing .layers,.app.is-playing .inspector,.app.is-playing .cut-settings{opacity:.45;pointer-events:none}.topbar{background:var(--panel);border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:0 12px;display:flex}.brand{letter-spacing:-.02em;white-space:nowrap;align-items:center;gap:8px;font-weight:800;display:flex}.logo{background:conic-gradient(from 200deg, var(--accent), #ffc15e, #7bd3ff, var(--accent));border-radius:6px;width:20px;height:20px;box-shadow:0 0 0 2px #ffffff0f}.file{color:var(--dim);text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.tb-center{flex:1;justify-content:center;align-items:center;gap:6px;min-width:0;display:flex}.tb-right{gap:6px;display:flex}.sep{background:var(--line);width:1px;height:22px;margin:0 6px}.clock{font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:8px;font-weight:600}.clock em{color:var(--faint);font-style:normal;font-weight:400}.panel{background:var(--panel);flex-direction:column;min-height:0;display:flex}.panel-head{border-bottom:1px solid var(--line);flex:none;align-items:center;gap:8px;height:44px;padding:0 12px;font-weight:700;display:flex}.panel-head .count{color:var(--faint);margin-left:auto;font-size:12px;font-weight:500}.panel-foot{color:var(--faint);border-top:1px solid var(--line);margin:0;padding:10px 12px;font-size:12px;line-height:1.5}.panel-foot .icon{vertical-align:-2px}.scroll{flex:1;min-height:0;overflow:auto}.thumb{background:repeating-conic-gradient(#3a3a45 0 25%, #2c2c35 0 50%) 0 0 / 10px 10px;width:34px;height:34px;color:var(--dim);border-radius:6px;flex:none;place-items:center;display:grid;overflow:hidden}.thumb img{object-fit:contain;width:100%;height:100%}.layer-list{flex:1;padding:6px;overflow:auto}.layer-row{cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:6px;min-height:44px;margin-bottom:2px;padding:4px 4px 4px 6px;display:flex}.layer-row:hover{background:var(--panel-2)}.layer-row:hover .ib.quiet{opacity:1}.layer-row.sel{background:var(--accent-soft);border-color:#ff7a5980}.layer-row.off .thumb,.layer-row.off .lname{opacity:.4}.tw{width:18px;height:18px;color:var(--dim);background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.lname{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.rename{border:1px solid var(--accent);background:var(--bg);border-radius:6px;flex:1;min-width:0;height:28px;padding:0 6px}.badge{background:var(--panel-3);color:var(--dim);border-radius:99px;flex:none;padding:1px 6px;font-size:11px}.stage{position:absolute;inset:0}.stage canvas{touch-action:none;width:100%;height:100%;display:block}.hint{border:1px solid var(--line);max-width:calc(100% - 32px);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;pointer-events:none;background:#1c1c22eb;border-radius:99px;padding:8px 14px;font-size:13px;position:absolute;bottom:12px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 6px 24px #00000059}.insp-head .insp-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.insp-head .thumb{width:28px;height:28px}.chip{background:var(--accent-soft);color:var(--accent);border-radius:99px;flex:none;padding:2px 8px;font-size:12px;font-weight:600}.section{border-bottom:1px solid var(--line);padding:14px 14px 16px}.section h4{align-items:baseline;gap:8px;margin:0 0 12px;font-size:13px;display:flex}.section h4 small{font-size:12px}.slider{grid-template-columns:64px 1fr 44px;align-items:center;gap:8px;margin-bottom:8px;display:grid}.sl-label{color:var(--dim);font-size:13px}.sl-val{text-align:right;font-variant-numeric:tabular-nums;font-size:13px}.slider input{width:100%;accent-color:var(--accent)}.btn-row{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.toggle{border:1px solid var(--line);height:34px;color:var(--dim);background:0 0;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:6px;display:inline-flex}.toggle:hover{color:var(--ink);border-color:#4a4a57}.toggle.on{background:var(--accent-soft);color:var(--ink);border-color:#ff7a5980}.variants{grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:6px;display:grid}.variant{aspect-ratio:1;border:2px solid var(--line);background:repeating-conic-gradient(#3a3a45 0 25%, #2c2c35 0 50%) 0 0 / 10px 10px;border-radius:8px;padding:4px;position:relative}.variant img{object-fit:contain;width:100%;height:100%}.variant span{text-shadow:0 1px 2px #000;font-size:11px;font-weight:700;position:absolute;top:2px;left:4px}.variant.on{border-color:var(--accent)}.fx-grid{grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:12px;display:grid}.fx{border:1px solid var(--line);color:var(--dim);background:0 0;border-radius:8px;flex-direction:column;align-items:center;gap:4px;padding:8px 2px 7px;font-size:12px;display:flex}.fx:hover{color:var(--ink);border-color:#4a4a57}.fx.on{background:var(--accent-soft);color:var(--ink);border-color:#ff7a598c}.empty-state{text-align:center;color:var(--dim);margin:auto;padding:24px}.empty-state p{color:var(--ink);line-height:1.6}.empty-icon{background:var(--accent-soft);width:52px;height:52px;color:var(--accent);border-radius:16px;place-items:center;margin:0 auto;display:grid}.howto{text-align:left;gap:7px;margin:18px 0 0;padding:0;font-size:13px;list-style:none;display:grid}.howto li{align-items:center;gap:10px;display:flex}.demo{place-items:center;width:26px;height:22px;display:grid;position:relative}.demo i{background:currentColor;border-radius:50%;width:10px;height:10px;display:block}.fx.on .demo i{background:var(--accent)}.fx:hover .demo i,.fx.on .demo i{animation-duration:var(--d,1.4s);animation-timing-function:ease-in-out;animation-iteration-count:infinite}.demo-float i{--d:1.6s}.fx:hover .demo-float i,.fx.on .demo-float i{animation-name:d-float}.demo-sway i{transform-origin:50% 0;--d:1.2s;border-radius:2px;width:4px;height:16px}.fx:hover .demo-sway i,.fx.on .demo-sway i{animation-name:d-sway}.fx:hover .demo-pulse i,.fx.on .demo-pulse i{--d:1s;animation-name:d-pulse}.demo-breathe i{transform-origin:50% 100%;border-radius:4px;width:12px;height:12px}.fx:hover .demo-breathe i,.fx.on .demo-breathe i{--d:2s;animation-name:d-breathe}.fx:hover .demo-shake i,.fx.on .demo-shake i{--d:.3s;animation-name:d-shake;animation-timing-function:linear}.demo-spin i{border-radius:2px;width:12px;height:4px}.fx:hover .demo-spin i,.fx.on .demo-spin i{--d:1.2s;animation-name:d-spin;animation-timing-function:linear}.fx:hover .demo-twinkle i,.fx.on .demo-twinkle i{--d:1.2s;animation-name:d-twinkle}@keyframes d-float{50%{transform:translateY(-6px)}}@keyframes d-sway{0%,to{transform:rotate(-24deg)}50%{transform:rotate(24deg)}}@keyframes d-pulse{0%,40%,to{transform:scale(1)}10%{transform:scale(1.45)}25%{transform:scale(1.2)}}@keyframes d-breathe{50%{transform:scale(.9,1.25)}}@keyframes d-shake{25%{transform:translate(-2px,1px)}50%{transform:translate(2px,-1px)}75%{transform:translate(-1px,-2px)}}@keyframes d-spin{to{transform:rotate(360deg)}}@keyframes d-twinkle{50%{opacity:.2}}.cutbar{background:var(--panel);border-top:1px solid var(--line)}.cut-settings{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:18px;padding:10px 14px;display:flex}.cs-title{min-width:44px;font-size:15px;font-weight:800}.cs-group{align-items:center;gap:8px;display:flex}.cs-group.grow{flex:1;min-width:220px}.cs-label{color:var(--dim);white-space:nowrap;font-size:13px}.cs-first{color:var(--dim);font-size:13px}.cs-first b{color:var(--ink)}.seg{background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:3px;display:inline-flex}.seg button{height:28px;color:var(--dim);white-space:nowrap;background:0 0;border:0;border-radius:6px;padding:0 11px}.seg button:hover:not(:disabled){color:var(--ink)}.seg button.on{background:var(--panel-3);color:var(--ink);font-weight:700;box-shadow:inset 0 0 0 1px #ff7a5999}.stepper{border:1px solid var(--line);background:var(--bg);border-radius:8px;align-items:center;display:inline-flex}.stepper button{width:30px;height:30px;color:var(--dim);background:0 0;border:0;font-size:17px}.stepper button:hover:not(:disabled){color:var(--ink)}.stepper span{text-align:center;font-variant-numeric:tabular-nums;min-width:50px}.stepper.disabled span{color:var(--faint)}.caption-input{border:1px solid var(--line);background:var(--bg);border-radius:8px;flex:1;min-width:0;height:34px;padding:0 12px}.caption-input:focus{border-color:var(--accent);outline:none}.strip{align-items:center;gap:0;padding:20px 14px 14px;display:flex;overflow-x:auto}.cut-card{background:var(--panel-2);cursor:pointer;border:2px solid #0000;border-radius:10px;flex-direction:column;flex:none;gap:5px;padding:6px;display:flex;position:relative}.cut-card:hover{border-color:#4a4a57}.cut-card.on{border-color:var(--accent);background:var(--panel-3)}.cut-card canvas{background:#fff;border-radius:5px}.cut-info{justify-content:space-between;align-items:baseline;padding:0 2px;font-size:12px;display:flex}.cut-info b{font-size:14px}.cut-info span{color:var(--dim)}.cut-cap{width:0;min-width:100%;color:var(--dim);text-overflow:ellipsis;white-space:nowrap;padding:0 2px;font-size:11px;overflow:hidden}.cut-actions{background:var(--panel-3);border:1px solid var(--line);border-radius:8px;gap:1px;padding:2px;display:none;position:absolute;top:-13px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0006}.cut-card:hover .cut-actions,.cut-card.on .cut-actions{display:flex}.app.is-playing .cut-actions{display:none!important}.cut-actions button{width:24px;height:22px;color:var(--dim);background:0 0;border:0;border-radius:5px;place-items:center;display:grid}.cut-actions button:hover:not(:disabled){background:var(--panel-2);color:var(--ink)}.cut-progress{background:#ffffff1a;border-radius:2px;height:3px;position:absolute;bottom:3px;left:6px;right:6px;overflow:hidden}.cut-progress i{background:var(--accent);height:100%;display:block}.link{color:var(--faint);white-space:nowrap;flex:none;align-items:center;gap:1px;padding:0 6px;font-size:11px;display:flex}.link.instant{color:var(--dim)}.add-cut{background:var(--accent-soft);width:92px;color:var(--accent);border:2px dashed #ff7a598c;border-radius:10px;flex-direction:column;flex:none;justify-content:center;align-self:stretch;align-items:center;gap:4px;margin-left:14px;font-weight:700;display:flex}.add-cut:hover{background:#ff7a593d;border-style:solid}.total{color:var(--faint);white-space:nowrap;flex:none;margin-left:16px;font-size:12px}.welcome{background:radial-gradient(1200px 600px at 50% -10%, #ff7a5921, transparent 60%), var(--bg);place-items:center;min-height:100%;padding:32px 16px;display:grid}.welcome-card{text-align:center;width:min(640px,100%)}.brand.big{color:var(--dim);justify-content:center;margin-bottom:22px;font-size:15px}.welcome h1{letter-spacing:-.03em;margin:0 0 14px;font-size:clamp(26px,4vw,36px);line-height:1.3}.lead{max-width:520px;color:var(--dim);margin:0 auto 28px;font-size:15px;line-height:1.65}.drop{background:var(--accent-soft);width:100%;color:var(--ink);border:2px dashed #ff7a5999;border-radius:16px;flex-direction:column;align-items:center;gap:8px;padding:38px 20px;display:flex}.drop:hover{background:#ff7a5933;border-style:solid}.drop .icon{color:var(--accent)}.drop b{font-size:17px}.drop span{color:var(--dim);font-size:13px}.welcome-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin:16px 0 34px;display:flex}.steps{grid-template-columns:repeat(3,1fr);gap:10px;margin:0;padding:0;list-style:none;display:grid}.steps li{background:var(--panel);border:1px solid var(--line);border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:16px 8px;display:flex}.steps b{background:var(--accent);width:26px;height:26px;color:var(--accent-ink);border-radius:50%;place-items:center;font-size:13px;display:grid}.steps span{font-weight:700}.steps small{font-size:12px}.drop-overlay,.busy,.modal-back{z-index:50;background:#0a0a0db8;place-items:center;display:grid;position:fixed;inset:0}.drop-overlay>div{border:3px dashed var(--accent);color:var(--accent);pointer-events:none;border-radius:20px;flex-direction:column;align-items:center;gap:8px;padding:48px 64px;font-size:18px;font-weight:700;display:flex}.drop-overlay p{margin:0}.busy{align-content:center;gap:14px}.busy p{color:var(--dim);margin:0}.spinner{border:3px solid var(--panel-3);border-top-color:var(--accent);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.toast{z-index:60;background:var(--ink);color:#111;border-radius:10px;max-width:calc(100% - 32px);padding:10px 18px;font-weight:600;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #00000073}.modal{background:var(--panel);border:1px solid var(--line);border-radius:14px;width:min(440px,100% - 32px);padding:20px;box-shadow:0 20px 60px #00000080}.modal header{justify-content:space-between;align-items:center;display:flex}.modal h3{align-items:center;gap:8px;margin:0;font-size:17px;display:flex}.modal footer{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.muted{color:var(--dim);margin:6px 0 16px}.field{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.check{align-items:center;gap:8px;display:flex}.check input{accent-color:var(--accent);width:16px;height:16px}.progress{background:var(--bg);border:1px solid var(--line);border-radius:8px;height:26px;margin-top:16px;position:relative;overflow:hidden}.progress i{background:var(--accent);transition:width .15s;position:absolute;inset:0 auto 0 0}.progress span{mix-blend-mode:difference;place-items:center;height:100%;font-size:12px;font-weight:700;display:grid;position:relative}.ok{color:var(--ok);margin:14px 0 0}.bad{color:var(--bad);margin:14px 0 0}.toggle.wide{width:100%;margin-top:6px}.wide-btn{justify-content:center;width:100%;margin-top:6px}.cut-cap.none{color:var(--faint);opacity:.6}.note{color:var(--dim);margin:0 0 10px;font-size:12.5px;line-height:1.55}.note b{color:var(--ink)}.note kbd{min-width:0}.btn.grow{flex:1;justify-content:center}.rig-steps{color:var(--faint);gap:6px;margin:0 0 10px;padding:0;font-size:13px;list-style:none;display:grid}.rig-steps li{border:1px solid #0000;border-radius:8px;align-items:baseline;gap:8px;padding:6px 8px;display:flex}.rig-steps li>b:first-child{text-align:center;width:14px;color:var(--faint);flex:none}.rig-steps li.now{color:var(--ink);background:var(--accent-soft);border-color:#ff7a5980}.rig-steps li.now>b:first-child{color:var(--accent)}.rig-steps li.done{color:var(--dim)}.rig-steps li.done>b:first-child{color:var(--ok)}.demo-wave i{transform-origin:0;border-radius:2px;width:16px;height:4px}.fx:hover .demo-wave i,.fx.on .demo-wave i{--d:1s;animation-name:d-wave}@keyframes d-wave{0%,to{transform:skewY(-18deg)}50%{transform:skewY(18deg)}}.fx:disabled{opacity:.35}.note.tight{margin:-2px 0 8px}.note.tip{background:var(--panel-2);border-radius:8px;padding:8px 10px;font-size:12px}.link-chip{border:1px solid var(--line);height:26px;color:var(--dim);white-space:nowrap;background:0 0;border-radius:99px;align-items:center;gap:6px;padding:0 10px;font-size:12px;display:inline-flex}.link-chip i{background:var(--faint);border-radius:50%;width:8px;height:8px}.link-chip.on{color:var(--ink);border-color:#5fd39a80}.link-chip.on i{background:var(--ok);box-shadow:0 0 0 3px #5fd39a33}.reimport-list{gap:8px;margin:14px 0 6px;padding:0;list-style:none;display:grid}.reimport-list li{background:var(--panel-2);border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;line-height:1.55;display:flex}.reimport-list li>.icon{margin-top:3px}.reimport-list .ok-row>.icon{color:var(--ok)}.reimport-list .add-row>.icon{color:#7bb8ff}.reimport-list .rm-row>.icon{color:var(--dim)}.reimport-list .warn-row{background:#ff6b7a1f}.reimport-list .warn-row>.icon{color:var(--bad)}.small-note{margin:8px 0 0;font-size:12px}.choice-list{gap:8px;display:grid}.choice{text-align:left;border:1px solid var(--line);background:var(--panel-2);border-radius:10px;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px;display:flex}.choice b{align-items:center;gap:6px;display:flex}.choice span{color:var(--dim);font-size:13px}.choice:hover{border-color:#4a4a57}.choice.primary-choice{background:var(--accent-soft);border-color:#ff7a5999}.choice.primary-choice:hover{background:#ff7a5938}.file{max-width:180px}.variant em{color:#fff;text-shadow:0 1px 2px #000,0 0 2px #000;text-overflow:ellipsis;white-space:nowrap;text-align:center;font-size:10px;font-style:normal;position:absolute;bottom:2px;left:3px;right:3px;overflow:hidden}.swap-row{align-items:center;gap:10px;margin:12px 0 8px;display:flex}.demo-blink i{border-radius:50%;width:14px;height:8px}.fx:hover .demo-blink i,.fx.on .demo-blink i{--d:1.6s;animation-name:d-blink}@keyframes d-blink{0%,80%,to{transform:scaleY(1)}88%{transform:scaleY(.12)}}.demo-talk i{border-radius:40%;width:12px;height:8px}.fx:hover .demo-talk i,.fx.on .demo-talk i{--d:.42s;animation-name:d-talk}@keyframes d-talk{50%{transform:scaleY(.25)}}.zoom-ctl{z-index:2;border:1px solid var(--line);background:#1c1c22e6;border-radius:9px;gap:2px;padding:3px;display:flex;position:absolute;top:10px;right:10px}.zoom-ctl button{min-width:28px;height:26px;color:var(--dim);background:0 0;border:0;border-radius:6px;font-size:15px}.zoom-ctl button:hover{background:var(--panel-3);color:var(--ink)}.zoom-ctl .zoom-val{font-variant-numeric:tabular-nums;min-width:52px;font-size:12px}.screen-chip{border:1px solid var(--line);height:26px;color:var(--dim);font-variant-numeric:tabular-nums;white-space:nowrap;background:0 0;border-radius:99px;margin-left:6px;padding:0 10px;font-size:12px}.screen-chip:hover{color:var(--ink);border-color:#4a4a57}.modal.wide{width:min(860px,100% - 32px)}.screen-grid{grid-template-columns:1fr 1fr;gap:20px;margin-top:12px;display:grid}@media (width<=760px){.screen-grid{grid-template-columns:1fr}}.preset-list{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:12px;display:grid}.preset{text-align:left;border:1px solid var(--line);background:var(--panel-2);border-radius:9px;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 11px;display:flex}.preset b{font-size:13px}.preset span{color:var(--dim);font-size:11.5px}.preset:hover{border-color:#4a4a57}.preset.on{border-color:var(--accent);background:var(--accent-soft)}.size-inputs{align-items:center;gap:8px;margin-bottom:12px;display:flex}.size-inputs input{border:1px solid var(--line);background:var(--bg);border-radius:8px;width:100px;height:32px;padding:0 8px}.screen-preview{border:1px solid var(--line);touch-action:none;border-radius:10px;width:100%;height:auto;display:block}.bg-row{align-items:center;gap:8px;display:flex}.bg-row input[type=color]{border:1px solid var(--line);background:0 0;border-radius:6px;width:38px;height:30px;padding:0}.format-tabs{grid-template-columns:1fr 1fr;gap:8px;margin:14px 0 4px;display:grid}.format-tabs button{text-align:left;border:1px solid var(--line);background:var(--panel-2);border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.format-tabs button b{font-size:14px}.format-tabs button span{color:var(--dim);font-size:11.5px}.format-tabs button.on{border-color:var(--accent);background:var(--accent-soft)}.webp-preview{border:1px solid var(--line);border-radius:8px;max-width:100%;max-height:260px;margin:10px auto 0;display:block}.field>span:first-child{white-space:nowrap;flex:none}.field .seg{flex-wrap:wrap;justify-content:flex-end}.seg button.two-line{flex-direction:column;align-items:center;height:auto;min-height:28px;padding:4px 11px;line-height:1.25;display:inline-flex}.seg button.two-line small{color:inherit;opacity:.75;font-size:10.5px}.modal{width:min(480px,100% - 32px)}.ease-anchor{position:relative}.ease-btn{border:1px solid var(--line);background:var(--bg);height:34px;color:var(--ink);border-radius:8px;align-items:center;gap:7px;padding:0 9px 0 6px;font-weight:600;display:inline-flex}.ease-btn:hover,.ease-btn.on{border-color:#ff7a59b3}.ease-btn .icon{color:var(--dim)}.ease-graph{flex:none;display:block;overflow:visible}.ease-graph .eg-line{fill:none;stroke:currentColor;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.ease-graph .eg-guide{stroke:var(--line);stroke-width:1px;stroke-dasharray:2 3}.ease-graph .eg-dot{fill:var(--accent)}.ease-btn .ease-graph{color:var(--accent)}.ease-pop{z-index:40;background:var(--panel);border:1px solid var(--line);border-radius:12px;width:432px;padding:12px;position:absolute;bottom:calc(100% + 12px);left:0;box-shadow:0 14px 40px #0000008c}.ep-head{align-items:baseline;gap:10px;margin:0 2px 10px;display:flex}.ep-head small{color:var(--faint);font-size:11.5px}.ep-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.ep-item{border:1px solid var(--line);background:var(--bg);color:var(--dim);text-align:center;border-radius:9px;flex-direction:column;align-items:center;gap:3px;padding:8px 6px 7px;display:flex}.ep-item:hover{color:var(--ink);border-color:#4a4a57}.ep-item.on{color:var(--ink);border-color:var(--accent);background:var(--accent-soft)}.ep-item.on .ease-graph{color:var(--accent)}.ep-item b{font-size:13px}.ep-item small{color:var(--faint);font-size:10.5px;line-height:1.3}.ep-power{align-items:center;gap:8px;margin:12px 4px 4px;font-size:13px;display:flex}.ep-power span{color:var(--dim);min-width:42px}.ep-power small{color:var(--faint);font-size:11px}.ep-power input{accent-color:var(--accent);flex:1}.ep-preview{background:var(--bg);border-radius:9px;align-items:center;gap:12px;margin-top:10px;padding:8px 10px;display:flex}.ep-preview .ease-graph{color:var(--ink)}.ep-track{flex:1;height:44px;position:relative}.ep-track:before{content:"";background:var(--line);height:2px;position:absolute;top:50%;left:10%;right:10%}.ep-from,.ep-to{background:var(--faint);width:2px;height:16px;margin-top:-8px;position:absolute;top:50%}.ep-from{left:10%}.ep-to{background:var(--accent);left:90%}.ep-ball{background:var(--accent);border-radius:50%;width:20px;height:20px;margin:-10px 0 0 -10px;position:absolute;top:50%;box-shadow:0 2px 8px #ff7a5973}.auto-chip{border:1px solid var(--line);height:26px;color:var(--dim);background:0 0;border-radius:99px;padding:0 10px;font-size:12px;font-weight:700}.auto-chip:hover:not(:disabled){color:var(--ink)}.auto-chip.on{background:var(--accent-soft);color:var(--accent);border-color:#ff7a5999}.auto-chip:disabled{opacity:.4}.stepper.auto span{color:var(--accent)}.stepper span{cursor:text}.stepper.disabled span{cursor:default}.stepper-input{width:58px;height:26px;color:var(--ink);text-align:center;font:inherit;font-variant-numeric:tabular-nums;background:0 0;border:0;outline:none}.stepper.mini button{width:22px;height:26px;font-size:15px}.stepper.mini span{min-width:20px}.stepper.mini .stepper-input{width:34px}button.link{cursor:pointer;font:inherit;background:0 0;border:0;border-radius:7px;gap:3px;padding:4px 5px;font-size:11px}button.link:hover{background:var(--panel-2);color:var(--ink)}button.link .ease-graph .eg-line{stroke-width:1.6px}button.link.flow{color:var(--ok)}.cut-info span.flow{color:var(--ok);font-weight:600}.rep-group{border:1.5px dashed #ffffff2e;border-radius:12px;flex-direction:column;flex:none;align-items:stretch;gap:2px;margin:0 2px -6px;padding:6px 6px 3px;display:flex}.rep-group.on{border-color:#ff7a59a6}.rep-tag{color:var(--dim);justify-content:center;align-items:center;gap:4px;padding:0 4px;font-size:11px;font-weight:700;display:flex}.rep-group.on .rep-tag{color:var(--accent)}.rep-inner{align-items:center;display:flex}.rep-ctl .rep-range{color:var(--dim);align-items:center;gap:4px;font-size:13px;display:inline-flex}.cs-label .icon{vertical-align:-2px}.loop-btn.on{background:var(--accent-soft)}.layer-row{position:relative}.layer-row.dragging{opacity:.35}.layer-row.drop-above:before,.layer-row.drop-below:after,.layer-list.drop-end:after{content:"";background:var(--accent);pointer-events:none;border-radius:2px;height:3px;position:absolute;left:4px;right:4px}.layer-row.drop-above:before{top:-3px}.layer-row.drop-below:after{bottom:-3px}.layer-row.drop-into{background:var(--accent-soft);border-color:var(--accent)}.layer-list{position:relative}.layer-list.drop-end:after{margin:2px 4px;display:block;position:static}.reset-order{height:24px;margin-left:6px;padding:0 8px;font-size:11.5px}.track-bar{flex-wrap:wrap;align-items:center;gap:14px;padding:8px 14px 0;display:flex}.track-tabs{flex-wrap:wrap;gap:4px;display:flex}.track-tab{border:1px solid var(--line);background:var(--bg);height:30px;color:var(--dim);border-bottom-color:#0000;border-radius:8px 8px 0 0;align-items:center;gap:6px;padding:0 12px;font-weight:600;display:inline-flex}.track-tab small{color:var(--faint);font-size:11px;font-weight:500}.track-tab:hover{color:var(--ink)}.track-tab.on{background:var(--panel-3);color:var(--ink);border-color:#ff7a5999}.track-tab.on .icon{color:var(--accent)}.track-opts{align-items:center;gap:8px;margin-left:auto;display:flex}.track-opts .btn{height:30px}.insp-select{border:1px solid var(--line);background:var(--bg);min-width:0;height:32px;color:var(--ink);font:inherit;border-radius:8px;flex:1;padding:0 8px;font-size:13px}.insp-select:focus{border-color:var(--accent);outline:none}.link-badge,.track-badge{place-items:center;padding:2px 5px;display:inline-grid}.link-badge{color:#78c8ff}.track-badge{color:var(--accent)}.insp-head .chip .icon{vertical-align:-1px}.order-scope{color:var(--dim);justify-content:space-between;align-items:center;gap:8px;padding:6px 10px 2px;font-size:12px;display:flex}.order-scope .seg button{height:24px;padding:0 9px;font-size:12px}.order-row{flex-wrap:wrap;align-items:center;gap:8px;margin:2px 0 10px;display:flex}.order-row .cs-label small{color:var(--faint);font-size:10.5px}.order-row .seg button{padding:0 9px;font-size:12.5px}.order-row .order-reset{height:26px;padding:0 9px;font-size:12px}.z-badge{color:var(--accent);padding:1px 5px;font-weight:700}.small-check{color:var(--ink);margin:-4px 0 6px;font-size:13px}button.link.early,.stepper.early span{color:#b99cff}.stepper.skipped span{color:var(--faint);-webkit-text-decoration:line-through #ffffff40;text-decoration:line-through #ffffff40}.appear-row{justify-content:space-between;align-items:center;gap:8px;margin:2px 0 10px;display:flex}.appear-row .seg button{height:26px;padding:0 10px;font-size:12.5px}.appear-row{flex-wrap:wrap}.appear-row .seg{flex-wrap:nowrap;margin-left:auto}.follow-check{color:var(--dim);margin:4px 0 8px;font-size:12.5px}.reset-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.reset-grid .btn{white-space:nowrap;justify-content:center;gap:4px;min-width:0;padding:0 6px;font-size:12px}.demo-gulp{overflow:hidden}.demo-gulp:before{content:"";opacity:.5;background:currentColor;border-radius:2px;height:4px;margin-top:-2px;position:absolute;top:50%;left:2px;right:2px}.demo-gulp i{--d:1.6s;width:9px;height:9px;margin-top:-4.5px;position:absolute;top:50%;left:0}.fx:hover .demo-gulp i,.fx.on .demo-gulp i{animation-name:d-gulp}@keyframes d-gulp{0%{transform:translate(-4px)scale(.6)}50%{transform:translate(9px)scale(1.15)}to{transform:translate(22px)scale(.6)}}.sfx-btn{border:1px solid var(--line);background:var(--bg);height:34px;color:var(--dim);border-radius:8px;align-items:center;gap:6px;padding:0 11px;font-weight:600;display:inline-flex}.sfx-btn:hover,.sfx-btn.on{color:var(--ink);border-color:#ffcf4ab3}.sfx-btn.has{color:#ffcf4a}.sfx-pop{z-index:40;background:var(--panel);border:1px solid var(--line);border-radius:12px;width:400px;padding:12px;position:absolute;bottom:calc(100% + 12px);left:0;box-shadow:0 14px 40px #0000008c}.sfx-group-title{color:var(--dim);margin:8px 2px 6px;font-size:12px;font-weight:700}.sfx-grid{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.sfx-item{border:1px solid var(--line);background:var(--bg);height:32px;color:var(--dim);border-radius:8px;font-size:12.5px;font-weight:600}.sfx-item:hover{color:var(--ink);border-color:#4a4a57}.sfx-item.on{color:var(--ink);background:#ffcf4a24;border-color:#ffcf4a}.sfx-active{border-top:1px solid var(--line);margin-top:10px;padding:8px 4px 0}.sfx-focus{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.sfx-focus-val{color:var(--ink);font-size:13px}.sfx-foot{gap:6px;margin-top:12px;display:flex}.sfx-badge{color:#ffcf4a;margin-left:4px;margin-right:auto;font-size:11px;font-style:normal;font-weight:700}.demo-sweat i{--d:1.6s;border-radius:50%/30% 30% 70% 70%;width:6px;height:10px}.fx:hover .demo-sweat i,.fx.on .demo-sweat i{animation-name:d-sweat}@keyframes d-sweat{0%{opacity:0;transform:translateY(-5px)scale(.3)}20%{opacity:1;transform:translateY(-4px)scale(1)}70%{opacity:1;transform:translateY(3px)scale(1)}to{opacity:0;transform:translateY(6px)scale(1)}}.layer-row.track-locked{opacity:.38;cursor:not-allowed}.layer-row.track-locked .ib{pointer-events:none}.layer-row.track-locked:hover{background:0 0}.app.tl-mode{grid-template-columns:minmax(0,1fr) 300px;grid-template-areas:"top top""center insp""cuts cuts"}.mode-switch{margin:0 6px 0 10px}.mode-switch button{height:28px;padding:0 12px;font-size:13px}.timeline{background:var(--panel);border-top:1px solid var(--line);flex-direction:column;grid-area:cuts;height:270px;display:flex}.tl-bar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:8px 14px;display:flex}.tl-bar .sep{background:var(--line);width:1px;height:22px}.tl-tip{color:var(--faint);font-size:12px}.tl-zoom{color:var(--dim);align-items:center;gap:6px;margin-left:auto;display:flex}.tl-zoom input{width:120px;accent-color:var(--accent)}.tl-scroll{flex:1;position:relative;overflow:auto}.tl-inner{min-height:100%;position:relative}.tl-ruler{z-index:4;cursor:col-resize;background:var(--panel-2);border-bottom:1px solid var(--line);height:24px;position:sticky;top:0}.tl-tick{border-left:1px solid var(--line);height:100%;color:var(--dim);pointer-events:none;padding-left:4px;font-size:10.5px;line-height:24px;position:absolute;top:0}.tl-lane{cursor:col-resize;border-bottom:1px solid #ffffff0a;height:32px;position:relative}.tl-lane-name{color:var(--faint);pointer-events:none;font-size:10px;position:absolute;top:9px;left:2px}.tl-cut{height:22px;color:var(--ink);pointer-events:none;background:#788cff38;border:1px solid #788cff80;border-radius:5px;align-items:center;gap:4px;padding-left:5px;font-size:11px;display:flex;position:absolute;top:5px;overflow:hidden}.tl-cut.odd{background:#78c8ff29;border-color:#78c8ff73}.tl-cut i{background:repeating-linear-gradient(45deg,#ffffff17 0 4px,#0000 4px 8px);position:absolute;top:0;bottom:0;left:0}.tl-cut b,.tl-cut small{position:relative}.tl-cut small{color:var(--dim);font-size:10px}.tl-clip{z-index:1;color:#15151a;white-space:nowrap;cursor:grab;border-radius:6px;align-items:center;height:24px;padding:0 9px;font-size:11.5px;font-weight:600;display:flex;position:absolute;top:4px;overflow:hidden}.tl-clip span{text-overflow:ellipsis;pointer-events:none;overflow:hidden}.tl-clip.sound{background:#5fd39a}.tl-clip.sound.loop{background:repeating-linear-gradient(90deg,#5fd39a 0 26px,#49b884 26px 28px)}.tl-clip.sound.random{background:#a594ff}.tl-clip.sound.cut{color:var(--ink);cursor:pointer;background:#5fd39a2e;border:1px dashed #5fd39a}.tl-clip.fx{background:#ffcf4a}.tl-clip.sel{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--accent)}.tl-edge{cursor:ew-resize;background:#0000002e;width:9px;position:absolute;top:0;bottom:0;right:0}.tl-hit{z-index:2;pointer-events:none;background:#fffc;border-radius:2px;height:4px;position:absolute;bottom:2px}.tl-playhead{z-index:5;background:var(--accent);pointer-events:none;width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.tl-empty{color:var(--faint);padding:14px 16px;font-size:13px}.mode-seg{margin-bottom:6px;display:flex}.mode-seg button{flex:1;padding:0 6px}.sound-list{margin:0 0 8px;padding:0;list-style:none}.sound-list li{align-items:center;gap:6px;padding:3px 0;display:flex}.sound-list em{color:var(--faint);font-size:11.5px;font-style:normal}.tl-help{color:var(--dim);margin:0;padding-left:18px;font-size:12.5px;line-height:1.75}.clip-panel .field .stepper{flex:none}.tl-clip.text{background:#8fd3ff}.tl-clip.fade{color:#fff;background:linear-gradient(90deg,#0003,#000);border:1px solid #555}.tl-clip.fade.in{background:linear-gradient(90deg,#000,#0003)}.tl-clip.fade.dip{background:linear-gradient(90deg,#0003,#000,#0003)}.tl-clip.fade.white{color:#222;background:linear-gradient(90deg,#ffffff40,#fff)}.tl-clip.fade.white.in{background:linear-gradient(90deg,#fff,#ffffff40)}.tl-clip.fade.white.dip{background:linear-gradient(90deg,#ffffff40,#fff,#ffffff40)}.tl-fades button{height:26px;padding:0 9px;font-size:12px}.tl-text{border:1px solid var(--line);background:var(--bg);width:100%;color:var(--ink);font:inherit;resize:vertical;border-radius:8px;margin-bottom:10px;padding:8px 10px}.tl-text:focus{border-color:var(--accent);outline:none}.swatches{flex-wrap:wrap;gap:6px;display:flex}.swatch{border:2px solid var(--line);cursor:pointer;border-radius:50%;width:24px;height:24px}.swatch.on{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.tl-lane-head{z-index:6;background:var(--panel-2);border-right:1px solid var(--line);width:78px;height:100%;color:var(--dim);cursor:default;align-items:center;gap:2px;padding:0 4px 0 8px;font-size:11.5px;display:flex;position:sticky;left:0}.tl-lane-head span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.tl-lane.muted .tl-clip,.tl-lane.muted .tl-hit{opacity:.3}.tl-clip-wrap{display:contents}.tl-ruler{z-index:7}.tl-corner{z-index:1;background:var(--panel-2);border-right:1px solid var(--line);width:78px;height:100%;position:sticky;left:0}.tl-ph-mark{z-index:1;background:var(--accent);clip-path:polygon(0 0,100% 0,50% 100%);pointer-events:none;width:10px;height:8px;margin-left:-5px;position:absolute;bottom:0}.tl-lane-head .ib.quiet{opacity:.5}.tl-lane-head .ib.quiet:hover{opacity:1}.tl-bar kbd{border:1px solid var(--line);min-width:0;color:var(--dim);border-radius:4px;padding:0 4px;font-size:10.5px}.tl-clip.movie{background-color:#ff9ecf}body{-webkit-user-select:none;user-select:none}input,textarea,[contenteditable]:not([contenteditable=false]){-webkit-user-select:text;user-select:text}img{-webkit-user-drag:none}.tl-vol{color:var(--dim);align-items:center;gap:6px;display:flex}.tl-vol input{width:90px;accent-color:var(--accent)}.tl-vol em{font-variant-numeric:tabular-nums;min-width:36px;font-size:12px;font-style:normal}.tl-bar .btn.on{color:var(--accent);border-color:var(--accent);background:#ff7a591f}.sound-list .norm-db{color:var(--accent);font-variant-numeric:tabular-nums}.tl-menu-wrap{position:relative}.tl-menu{z-index:30;background:var(--panel-2);border:1px solid var(--line);border-radius:10px;width:290px;max-height:60vh;padding:6px;position:absolute;bottom:calc(100% + 6px);left:0;overflow:auto;box-shadow:0 12px 32px #00000073}.tl-menu.right{left:auto;right:0}.tl-menu-head{color:var(--faint);padding:6px 8px 4px;font-size:11px}.tl-menu button{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;flex-direction:column;align-items:flex-start;gap:1px;padding:6px 8px;display:flex}.tl-menu button:hover,.tl-menu button:focus-visible{background:#ffffff12}.tl-menu button span{font-size:13px;font-weight:600}.tl-menu button em{color:var(--dim);font-size:11.5px;font-style:normal}.tl-ramp{pointer-events:none;position:absolute;top:0;bottom:0}.tl-ramp.in{background:linear-gradient(to top left,#0000 50%,#00000052 50%);left:0}.tl-ramp.out{background:linear-gradient(to top right,#0000 50%,#00000052 50%);right:0}.demo-goo:before,.demo-goo:after{content:"";background:currentColor;border-radius:50%;width:7px;height:7px;margin-top:-3.5px;position:absolute;top:50%}.demo-goo:before{left:2px}.demo-goo:after{right:2px}.demo-goo i{--d:1.8s;border-radius:2px;width:auto;height:3px;margin-top:-1.5px;position:absolute;top:50%;left:7px;right:7px}.fx:hover .demo-goo i,.fx.on .demo-goo i{animation-name:d-goo}@keyframes d-goo{0%{opacity:1;transform:scaleY(1.6)}55%{opacity:1;transform:translateY(2px)scaleY(.5)}62%{opacity:.8;transform:translateY(3px)scaleX(.2)scaleY(.4)}63%,to{opacity:0}}.demo-mosaic i{--d:1.6s;background:conic-gradient(currentColor 0 25%, transparent 0 50%, currentColor 0 75%, transparent 0) 0 0 / 8px 8px;border-radius:2px;width:16px;height:16px}.fx.on .demo-mosaic i{background:conic-gradient(var(--accent) 0 25%, transparent 0 50%, var(--accent) 0 75%, transparent 0) 0 0 / 8px 8px}.fx:hover .demo-mosaic i,.fx.on .demo-mosaic i{animation-name:d-mosaic}@keyframes d-mosaic{0%,to{background-size:8px 8px}50%{background-size:5.33px 5.33px}}.modal.tut{width:min(460px,100% - 32px)}.modal.tut h3 small{color:var(--faint);font-size:12px;font-weight:500}.tut-body{min-height:230px;padding-top:6px;animation:.22s ease-out tut-in}@keyframes tut-in{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:none}}.tut-icon{width:56px;height:56px;color:var(--accent);background:#ff7a591f;border-radius:16px;place-items:center;margin:6px 0 10px;display:grid}.tut-body h4{margin:0 0 8px;font-size:18px}.tut-body p{color:var(--ink);margin:0 0 10px;line-height:1.6}.tut-body ul{color:var(--dim);margin:0;padding-left:18px;font-size:13.5px;line-height:1.75}.tut-body kbd{border:1px solid var(--line);min-width:0;font:inherit;color:var(--ink);border-radius:4px;padding:0 5px;font-size:12px;display:inline-block}.tut-dots{justify-content:center;gap:7px;margin-top:14px;display:flex}.tut-dots button{background:var(--line);cursor:pointer;border:0;border-radius:50%;width:8px;height:8px;padding:0}.tut-dots button.on{background:var(--accent);border-radius:4px;width:22px}.modal.tut footer{justify-content:space-between}@media (prefers-reduced-motion:reduce){.tut-body{animation:none}}
