:root{--bg-0:#000;--bg-1:#0c0c0e;--bg-2:#141417;--bg-3:#1c1c20;--bg-4:#26262b;--bg-5:#313137;--line:#ffffff12;--line-2:#ffffff1f;--line-3:#fff3;--fg:#f5f5f7;--fg-2:#a6a6ae;--fg-3:#8b8b95;--fg-4:#6b6b74;--accent-strong:#0b6fc4;--accent-strong-hover:#0a64b0;--accent:#0a95ff;--accent-2:#3aa9ff;--accent-soft:#0a95ff29;--pink:#ee2a7b;--violet:#8b5cf6;--teal:#14b8a6;--amber:#f59e0b;--green:#22c55e;--red:#ef4444;--grad:linear-gradient(100deg, #f9ce34 -10%, #ee2a7b 45%, #6228d7 110%);--grad-btn:linear-gradient(100deg, #d01f6a -10%, #a73baf 55%, #6228d7 110%);--grad-soft:linear-gradient(100deg, #f9ce342e, #ee2a7b2e, #6228d72e);--c-video:#4b5563;--c-overlay:#3b82f6;--c-text:#8b5cf6;--c-audio:#0d9488;--c-sfx:#d97706;--r-xs:6px;--r-sm:8px;--r:12px;--r-lg:16px;--r-xl:22px;--shadow:0 10px 40px #0000008c;--shadow-sm:0 4px 14px #0006;--ease:cubic-bezier(.2, .8, .2, 1);--font:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:"JetBrains Mono", ui-monospace, "SF Mono", Consolas, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg-1);color:var(--fg);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;font-size:13px;line-height:1.4;overflow:hidden}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:default;opacity:.4}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none}::selection{background:#0a95ff59}*{scrollbar-width:thin;scrollbar-color:var(--bg-5) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--bg-5);background-clip:content-box;border:3px solid #0000;border-radius:10px}::-webkit-scrollbar-thumb:hover{background-color:#45454d}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-corner{background:0 0}.tabular{font-variant-numeric:tabular-nums}.btn{background:var(--bg-4);height:34px;color:var(--fg);white-space:nowrap;transition:background .15s var(--ease), transform .15s var(--ease), box-shadow .15s var(--ease);border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.btn:hover:not(:disabled){background:var(--bg-5)}.btn:active:not(:disabled){transform:scale(.97)}.btn.sm{gap:5px;height:28px;padding:0 11px;font-size:12px}.btn.lg{height:42px;padding:0 20px;font-size:14px}.btn.ghost{background:0 0}.btn.ghost:hover:not(:disabled){background:var(--bg-4)}.btn.white{color:#000;background:#fff}.btn.white:hover:not(:disabled){background:#e8e8ea}.btn.accent{background:var(--accent-strong);color:#fff}.btn.accent:hover:not(:disabled){background:var(--accent-strong-hover)}.btn.danger{color:#fca5a5;background:#ef444424}.btn.danger:hover:not(:disabled){background:#ef44443d}.btn.grad{background:var(--grad-btn);color:#fff;box-shadow:0 6px 22px #ee2a7b47}.btn.grad:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 8px 28px #ee2a7b6b}.btn.block{width:100%}.icon-btn{width:32px;height:32px;color:var(--fg-2);transition:background .12s var(--ease), color .12s var(--ease), transform .12s var(--ease);border-radius:10px;flex-shrink:0;place-items:center;display:inline-grid}.icon-btn:hover:not(:disabled){background:var(--bg-4);color:var(--fg)}.icon-btn:active:not(:disabled){transform:scale(.94)}.icon-btn.sm{border-radius:8px;width:26px;height:26px}.icon-btn.on{color:var(--fg);background:var(--bg-4)}.icon-btn.accent-on{color:var(--accent)}.chip{background:var(--bg-3);height:28px;color:var(--fg-2);white-space:nowrap;transition:all .12s var(--ease);border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:0 11px;font-size:12px;font-weight:600;display:inline-flex}.chip:hover{color:var(--fg);background:var(--bg-4)}.chip.on{color:#000;background:#fff}.seg{background:var(--bg-3);border-radius:10px;gap:2px;padding:3px;display:flex}.seg button{height:28px;color:var(--fg-2);white-space:nowrap;transition:all .12s var(--ease);border-radius:8px;flex:1;justify-content:center;align-items:center;gap:6px;padding:0 8px;font-size:12px;font-weight:600;display:inline-flex}.seg button:hover{color:var(--fg)}.seg button.on{background:var(--bg-5);color:var(--fg);box-shadow:0 1px 3px #0006}.input,.select,.textarea{background:var(--bg-3);border:1px solid var(--line);width:100%;height:34px;color:var(--fg);transition:border-color .12s var(--ease), background .12s var(--ease);-webkit-user-select:text;user-select:text;border-radius:10px;padding:0 11px}.input:hover,.select:hover,.textarea:hover{border-color:var(--line-2)}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);background:var(--bg-2)}.textarea{resize:vertical;height:auto;min-height:74px;padding:10px 11px;line-height:1.45}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23a6a6ae' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:30px}.select option{background:var(--bg-3)}.range{--p:50%;appearance:none;cursor:pointer;background:0 0;width:100%;height:24px;margin:0}.range::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--accent) var(--p), var(--fg-4) var(--p));border-radius:4px;height:4px}.range::-moz-range-track{background:linear-gradient(to right, var(--accent) var(--p), var(--fg-4) var(--p));border-radius:4px;height:4px}.range::-webkit-slider-thumb{appearance:none;width:16px;height:16px;transition:transform .12s var(--ease);background:#fff;border-radius:50%;margin-top:-6px;box-shadow:0 1px 4px #00000080}.range::-moz-range-thumb{background:#fff;border:0;border-radius:50%;width:16px;height:16px}.range:hover::-webkit-slider-thumb{transform:scale(1.12)}.range.center{background:0 0}.range.center::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--fg-4) min(var(--p), 50%), var(--accent) min(var(--p), 50%), var(--accent) max(var(--p), 50%), var(--fg-4) max(var(--p), 50%))}.toggle{background:var(--bg-5);width:40px;height:24px;transition:background .18s var(--ease);border-radius:999px;flex-shrink:0;position:relative}.toggle:after{content:"";width:16px;height:16px;transition:transform .18s var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0006}.toggle.on{background:var(--accent)}.toggle.on:after{transform:translate(16px)}.kbd{background:var(--bg-4);border:1px solid var(--line-2);min-width:20px;height:20px;color:var(--fg-2);font-size:11px;font-weight:600;font-family:var(--font);border-bottom-width:2px;border-radius:5px;justify-content:center;align-items:center;padding:0 5px;display:inline-flex}.spinner{border:2px solid #ffffff2e;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:translateY(6px)scale(.98)}}.muted{color:var(--fg-2)}.faint{color:var(--fg-3)}.grad-text{background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text}.tooltip{z-index:1000;pointer-events:none;color:#0c0c0e;box-shadow:var(--shadow-sm);white-space:nowrap;animation:fade-in .12s var(--ease);background:#f5f5f7;border-radius:8px;align-items:center;gap:8px;padding:5px 9px;font-size:12px;font-weight:600;display:flex;position:fixed}.tooltip .kbd{color:#444;background:#00000014;border-color:#00000026;height:18px}.toasts{z-index:900;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast{pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line-2);min-width:260px;max-width:440px;box-shadow:var(--shadow);animation:pop-in .22s var(--ease);background:#242429f5;border-radius:14px;align-items:flex-start;gap:10px;padding:11px 14px;display:flex}.toast .t-title{font-weight:600}.toast .t-body{color:var(--fg-2);margin-top:2px;font-size:12px}.toast .t-icon{flex-shrink:0;margin-top:1px}.modal-backdrop{z-index:800;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade-in .18s var(--ease);background:#0000009e;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal{background:var(--bg-2);border:1px solid var(--line-2);border-radius:var(--r-xl);box-shadow:var(--shadow);max-height:calc(100vh - 48px);animation:pop-in .24s var(--ease);overflow:auto}.menu{z-index:950;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--line-2);min-width:200px;box-shadow:var(--shadow);animation:pop-in .14s var(--ease);background:#1e1e22fa;border-radius:12px;padding:6px;position:fixed}.menu button{width:100%;height:32px;color:var(--fg);text-align:left;border-radius:8px;align-items:center;gap:10px;padding:0 10px;font-size:13px;display:flex}.menu button:hover:not(:disabled){background:var(--bg-4)}.menu button .kbd{margin-left:auto}.menu button.danger{color:#fca5a5}.menu .sep{background:var(--line);height:1px;margin:5px 4px}input::placeholder,textarea::placeholder{color:var(--fg-3);opacity:1}.toasts.top{top:64px;bottom:auto}.toast.passive{pointer-events:none}.toast .t-action{pointer-events:auto;flex-shrink:0;align-self:center;margin-left:4px}.toast .t-check{color:var(--fg-2);pointer-events:auto;align-items:center;gap:6px;margin-top:6px;font-size:12px;display:flex}.editor{grid-template-columns:minmax(0,1fr);grid-template-rows:54px minmax(0, 1fr) 6px min(var(--tl-h,300px), max(160px, calc(100% - 280px)));background:var(--bg-1);height:100%;display:grid}.editor-upper{--rail-w:76px;--lib-w:300px;--insp-w:340px;grid-template-columns:var(--rail-w) var(--lib-w) minmax(0, 1fr) var(--insp-w);grid-template-rows:minmax(0,1fr);gap:0;min-height:0;display:grid;position:relative}.panel-resizer{z-index:20;cursor:col-resize;touch-action:none;width:9px;position:absolute;top:0;bottom:-18px}.panel-resizer.library{left:calc(var(--rail-w) + var(--lib-w) - 5px)}.panel-resizer.inspector{right:calc(var(--insp-w) - 4px)}.panel-resizer:after{content:"";width:1px;transition:background .15s var(--ease), box-shadow .15s var(--ease);background:0 0;position:absolute;top:0;bottom:-18px;left:4px}.panel-resizer:hover:after,.panel-resizer:focus-visible:after,.panel-resizer.dragging:after{background:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 40%, transparent)}html.col-resizing,html.col-resizing *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}.topbar{border-bottom:1px solid var(--line);background:var(--bg-1);align-items:center;gap:10px;min-width:0;padding:0 14px 0 10px;display:flex}.brand{letter-spacing:-.01em;transition:background .12s var(--ease);border-radius:12px;align-items:center;gap:9px;padding:4px 8px 4px 4px;font-size:15px;font-weight:800;display:flex}.brand:hover{background:var(--bg-3)}.logo{background:var(--grad);border-radius:9px;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid;box-shadow:0 4px 14px #ee2a7b59}.logo svg{margin-left:2px}.brand .pro{background:var(--bg-4);color:var(--fg-2);letter-spacing:.04em;border-radius:6px;padding:2px 6px;font-size:10px;font-weight:800}.tb-divider{background:var(--line-2);width:1px;height:22px;margin:0 4px}.project-name{align-items:center;gap:6px;min-width:0;max-width:320px;display:flex}.project-name input{text-overflow:ellipsis;-webkit-user-select:text;user-select:text;background:0 0;border:1px solid #0000;border-radius:8px;width:100%;min-width:60px;padding:5px 8px;font-weight:600}.project-name input:hover{background:var(--bg-3)}.project-name input:focus{background:var(--bg-3);border-color:var(--accent)}.save-state{color:var(--fg-3);white-space:nowrap;align-items:center;gap:5px;font-size:12px;display:flex}.media-load{animation:fade-in .2s var(--ease);padding:0 4px}@media (max-width:1280px){.media-load{display:none}}.tb-center{flex:1;justify-content:center;gap:4px;display:flex}.tb-right{align-items:center;gap:8px;display:flex}.gpu-chip{background:var(--bg-3);border:1px solid var(--line);height:32px;color:var(--fg-2);white-space:nowrap;max-width:280px;transition:all .12s var(--ease);border-radius:999px;align-items:center;gap:8px;padding:0 12px 0 10px;font-size:12px;font-weight:600;display:inline-flex}.gpu-chip:hover{background:var(--bg-4);color:var(--fg)}.gpu-chip .dot{background:var(--green);border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 0 3px #22c55e2e}.gpu-chip.cpu .dot{background:var(--amber);box-shadow:0 0 0 3px #f59e0b2e}.gpu-chip .name{text-overflow:ellipsis;overflow:hidden}.gpu-chip b{color:var(--fg);font-weight:700}.rail{scrollbar-width:none;border-right:1px solid var(--line);background:var(--bg-1);flex-direction:column;align-items:center;gap:4px;min-height:0;padding:10px 0;display:flex;overflow:hidden auto;container:rail/size}.rail-item{width:62px;color:var(--fg-3);transition:all .14s var(--ease);border-radius:12px;flex-direction:column;align-items:center;gap:5px;padding:8px 0 7px;font-size:11px;font-weight:600;display:flex}.rail-item:hover{color:var(--fg);background:var(--bg-3)}.rail-item.on{color:var(--fg);background:var(--bg-4)}.rail-item.on svg{color:#fff}.rail-item>svg{flex-shrink:0}@container rail (height<=500px){.rail-item{gap:2px;padding:4px 0 3px;font-size:10px}}@container rail (height<=380px){.rail-item{padding:7px 0}.rail-label{display:none}}.rail-spacer{flex:1}.panel{background:var(--bg-2);border-right:1px solid var(--line);flex-direction:column;min-width:0;min-height:0;display:flex}.panel.right{border-right:0;border-left:1px solid var(--line)}.panel-head{flex-shrink:0;align-items:center;gap:8px;height:52px;padding:0 14px 0 16px;display:flex}.panel-head h2{letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;flex:1;margin:0;font-size:15px;font-weight:700;overflow:hidden}.panel-body{flex:1;min-height:0;padding:0 14px 18px;overflow:hidden auto}.panel-sub{text-transform:uppercase;letter-spacing:.06em;color:var(--fg-3);align-items:center;gap:8px;margin:18px 2px 10px;font-size:11px;font-weight:700;display:flex}.panel-sub:first-child{margin-top:4px}.panel-sub .grow{flex:1}.hint{background:var(--bg-3);color:var(--fg-2);border-radius:12px;gap:10px;padding:12px;font-size:12px;line-height:1.5;display:flex}.hint svg{color:var(--accent);flex-shrink:0;margin-top:1px}.dropzone{border:1.5px dashed var(--line-3);text-align:center;color:var(--fg-2);transition:all .15s var(--ease);background:#ffffff04;border-radius:16px;flex-direction:column;align-items:center;gap:10px;padding:26px 16px;display:flex}.dropzone.over,.dropzone:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--fg)}.dropzone .dz-icon{background:var(--grad-soft);color:#fff;border-radius:14px;place-items:center;width:46px;height:46px;display:grid}.dropzone strong{color:var(--fg);font-size:14px}.dropzone small{color:var(--fg-3)}.filter-row{flex-wrap:wrap;gap:6px;margin:2px 0 12px;display:flex}.media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.media-card{aspect-ratio:1;background:var(--bg-3);cursor:grab;border:1px solid var(--line);transition:transform .15s var(--ease), border-color .15s var(--ease);border-radius:12px;position:relative;overflow:hidden}.media-card:hover{border-color:var(--line-3)}.media-card:active{cursor:grabbing}.media-card img{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.media-card .mc-audio{background:linear-gradient(160deg,#0f766e,#134e4a);place-items:center;width:100%;height:100%;display:grid}.media-card .mc-badge{background:#000000a6;border-radius:6px;padding:2px 6px;font-size:11px;font-weight:600;position:absolute;bottom:6px;right:6px}.media-card .mc-kind{background:#0000008c;border-radius:7px;place-items:center;width:22px;height:22px;display:grid;position:absolute;top:6px;left:6px}.media-card .mc-name{white-space:nowrap;text-overflow:ellipsis;opacity:0;transition:opacity .15s var(--ease);background:linear-gradient(#0000,#000000bf);padding:18px 52px 6px 8px;font-size:11px;font-weight:600;position:absolute;bottom:-18px;left:0;right:0;overflow:hidden}.media-card:hover .mc-name{opacity:1}.media-card .mc-add{color:#000;opacity:0;width:28px;height:28px;transition:all .15s var(--ease);box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;place-items:center;display:grid;position:absolute;top:6px;right:6px;transform:scale(.8)}.media-card:hover .mc-add{opacity:1;transform:scale(1)}.media-card .mc-more{opacity:0;width:28px;height:28px;transition:opacity .15s var(--ease);background:#0009;border-radius:50%;place-items:center;display:grid;position:absolute;top:6px;right:38px}.media-card:hover .mc-more{opacity:1}.media-card .mc-state{color:var(--fg-2);background:#0000008c;place-items:center;font-size:11px;display:grid;position:absolute;inset:0}.media-card.used:after{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px;position:absolute;bottom:6px;left:6px;box-shadow:0 0 0 2px #0009}.audio-row{transition:background .12s var(--ease);cursor:grab;border-radius:12px;align-items:center;gap:10px;padding:8px;display:flex}.audio-row:hover{background:var(--bg-3)}.audio-row .ar-play{background:var(--bg-4);width:36px;height:36px;color:var(--fg);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.audio-row .ar-play.sfx{background:linear-gradient(150deg,#b45309,#78350f)}.audio-row .ar-play.music{background:linear-gradient(150deg,#0f766e,#134e4a)}.audio-row .ar-meta{flex:1;min-width:0}.audio-row .ar-name{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.audio-row .ar-sub{color:var(--fg-3);font-size:11px}.text-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.text-card{border:1px solid var(--line);height:74px;transition:all .15s var(--ease);background:#1a1a1f radial-gradient(circle at 30% 20%,#ffffff0f,#0000 60%);border-radius:12px;place-items:center;padding:6px;display:grid;position:relative;overflow:hidden}.text-card:hover{border-color:var(--line-3);transform:translateY(-1px)}.text-card .tc-label{color:var(--fg-3);font-size:10px;font-weight:600;position:absolute;bottom:5px;left:8px}.text-card .tc-sample{white-space:nowrap;text-overflow:ellipsis;border-radius:5px;max-width:100%;padding:2px 6px;line-height:1.2;overflow:hidden}.fx-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.fx-card{text-align:center;color:var(--fg-2);transition:all .12s var(--ease);border-radius:12px;flex-direction:column;align-items:stretch;gap:6px;padding:4px;font-size:11px;font-weight:600;display:flex}.fx-card:hover{color:var(--fg);background:var(--bg-3)}.fx-card.on{color:var(--fg)}.fx-card.on .fx-thumb{box-shadow:0 0 0 2px #fff}.fx-thumb{aspect-ratio:1;background:var(--bg-4);border-radius:10px;position:relative;overflow:hidden}.fx-thumb img{object-fit:cover;width:100%;height:100%;display:block}.fx-thumb .none{color:var(--fg-3);place-items:center;display:grid;position:absolute;inset:0}.tp,.tp .sa,.tp .sb{position:absolute;inset:0}.tp .sa{background:linear-gradient(135deg,#f97316,#db2777)}.tp .sb{background:linear-gradient(135deg,#2563eb,#7c3aed)}.tp .sa:after,.tp .sb:after{content:"";background:#ffffff59;border-radius:50%;width:34%;height:34%;position:absolute;top:30%;left:22%}.tp .sb:after{border-radius:6px;width:30%;height:26%;top:40%;left:46%}.tp.fade .sb{opacity:.5}.tp.dipBlack .sb,.tp.dipWhite .sb,.tp.flash .sb{opacity:0}.tp.dipBlack .sa,.tp.dipWhite .sa,.tp.flash .sa{opacity:.4}.tp.slideLeft .sb{transform:translate(50%)}.tp.slideRight .sb{transform:translate(-50%)}.tp.slideUp .sb{transform:translateY(50%)}.tp.slideDown .sb{transform:translateY(-50%)}.tp.pushLeft .sa{transform:translate(-50%)}.tp.pushLeft .sb,.tp.pushRight .sa{transform:translate(50%)}.tp.pushRight .sb{transform:translate(-50%)}.tp.wipeRight .sb{clip-path:inset(0 50% 0 0)}.tp.wipeDown .sb{clip-path:inset(0 0 50%)}.tp.squeeze .sb{clip-path:inset(0 0 0 50%)}.tp.zoomIn .sb{opacity:.55;transform:scale(1.4)}.tp.zoomOut .sb{transform:scale(.6)}.tp.circle .sb{clip-path:circle(32%)}.tp.heart .sb{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s-7.5-4.6-9.6-9.2C1 8.6 2.9 5 6.4 5c2.1 0 3.6 1.2 4.6 2.7C12 6.2 13.5 5 15.6 5 19.1 5 21 8.6 19.6 11.8 17.5 16.4 12 21 12 21z'/%3E%3C/svg%3E") 50%/66% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s-7.5-4.6-9.6-9.2C1 8.6 2.9 5 6.4 5c2.1 0 3.6 1.2 4.6 2.7C12 6.2 13.5 5 15.6 5 19.1 5 21 8.6 19.6 11.8 17.5 16.4 12 21 12 21z'/%3E%3C/svg%3E") 50%/66% no-repeat}.tp.blur .sa{filter:blur(3px)}.tp.blur .sb{opacity:.5;filter:blur(3px)}.tp.pixelate .sb{-webkit-mask:repeating-conic-gradient(#000 0 25%, transparent 0 50%) 0 0 / 14px 14px;-webkit-mask:repeating-conic-gradient(#000 0 25%, transparent 0 50%) 0 0 / 14px 14px;mask:repeating-conic-gradient(#000 0 25%, transparent 0 50%) 0 0 / 14px 14px}.tp.glitch .sb{clip-path:inset(28% 0 38%);transform:translate(9%)}.tp.spin .sb{transform:rotate(-40deg)scale(.72)}.tp.swirl .sb{opacity:.75;transform:rotate(25deg)scale(.85)}.fx-card:hover .tp .sb,.fx-card.on .tp .sb{animation-duration:1.6s;animation-timing-function:cubic-bezier(.65,0,.35,1);animation-iteration-count:infinite}.tp.fade .sb{animation-name:tp-fade}.tp.dipBlack,.tp.dipWhite,.tp.flash{background:#000}.tp.dipWhite,.tp.flash{background:#fff}.tp.dipBlack .sb,.tp.dipWhite .sb,.tp.flash .sb{animation-name:tp-dip}.tp.dipBlack .sa,.tp.dipWhite .sa,.tp.flash .sa{animation:none}.fx-card:hover .tp.dipBlack .sa,.fx-card:hover .tp.dipWhite .sa,.fx-card:hover .tp.flash .sa,.fx-card.on .tp.dipBlack .sa,.fx-card.on .tp.dipWhite .sa,.fx-card.on .tp.flash .sa{animation:1.6s cubic-bezier(.65,0,.35,1) infinite tp-dip-out}.tp.slideLeft .sb{animation-name:tp-slide-l}.tp.slideRight .sb{animation-name:tp-slide-r}.tp.slideUp .sb{animation-name:tp-slide-u}.tp.slideDown .sb{animation-name:tp-slide-d}.tp.pushLeft .sb{animation-name:tp-slide-l}.tp.pushRight .sb{animation-name:tp-slide-r}.fx-card:hover .tp.pushLeft .sa,.fx-card.on .tp.pushLeft .sa{animation:1.6s cubic-bezier(.65,0,.35,1) infinite tp-push-l}.fx-card:hover .tp.pushRight .sa,.fx-card.on .tp.pushRight .sa{animation:1.6s cubic-bezier(.65,0,.35,1) infinite tp-push-r}.tp.wipeRight .sb{animation-name:tp-wipe-r}.tp.wipeDown .sb{animation-name:tp-wipe-d}.tp.squeeze .sb{animation-name:tp-wipe-r}.tp.zoomIn .sb{animation-name:tp-zoom-in}.tp.zoomOut .sb{animation-name:tp-zoom-out}.tp.circle .sb{animation-name:tp-circle}.tp.heart .sb{animation-name:tp-heart}.tp.blur .sb{animation-name:tp-blur}.tp.pixelate .sb{animation-name:tp-pix}.tp.glitch .sb{animation-name:tp-glitch}.tp.spin .sb,.tp.swirl .sb{animation-name:tp-spin}@keyframes tp-fade{0%,15%{opacity:0}55%,to{opacity:1}}@keyframes tp-dip{0%,45%{opacity:0}75%,to{opacity:1}}@keyframes tp-dip-out{0%,10%{opacity:1}40%,to{opacity:0}}@keyframes tp-slide-l{0%,10%{opacity:1;transform:translate(100%)}60%,to{opacity:1;transform:none}}@keyframes tp-slide-r{0%,10%{opacity:1;transform:translate(-100%)}60%,to{opacity:1;transform:none}}@keyframes tp-slide-u{0%,10%{opacity:1;transform:translateY(100%)}60%,to{opacity:1;transform:none}}@keyframes tp-slide-d{0%,10%{opacity:1;transform:translateY(-100%)}60%,to{opacity:1;transform:none}}@keyframes tp-push-l{0%,10%{transform:none}60%,to{transform:translate(-100%)}}@keyframes tp-push-r{0%,10%{transform:none}60%,to{transform:translate(100%)}}@keyframes tp-wipe-r{0%,10%{opacity:1;clip-path:inset(0 100% 0 0)}60%,to{opacity:1;clip-path:inset(0)}}@keyframes tp-wipe-d{0%,10%{opacity:1;clip-path:inset(0 0 100%)}60%,to{opacity:1;clip-path:inset(0)}}@keyframes tp-zoom-in{0%,10%{opacity:0;transform:scale(1.8)}60%,to{opacity:1;transform:none}}@keyframes tp-zoom-out{0%,10%{opacity:0;transform:scale(.4)}60%,to{opacity:1;transform:none}}@keyframes tp-circle{0%,10%{opacity:1;clip-path:circle(0%)}60%,to{opacity:1;clip-path:circle(75%)}}@keyframes tp-blur{0%,10%{opacity:0;filter:blur(8px)}60%,to{opacity:1;filter:none}}@keyframes tp-glitch{0%,20%{opacity:0;clip-path:inset(28% 0 38%);transform:none}25%{opacity:1;clip-path:inset(10% 0 55%);transform:translate(8%)}30%{opacity:0;transform:translate(-6%)}35%{opacity:1;clip-path:inset(40% 0 20%);transform:translate(4%)skew(8deg)}40%,to{opacity:1;clip-path:inset(0);transform:none}}@keyframes tp-heart{0%,10%{opacity:1;-webkit-mask-size:0%;mask-size:0%}60%,to{opacity:1;-webkit-mask-size:340%;mask-size:340%}}@keyframes tp-pix{0%,10%{opacity:0}35%,55%{opacity:1;-webkit-mask-image:repeating-conic-gradient(#000 0 25%, transparent 0 50%);-webkit-mask-image:repeating-conic-gradient(#000 0 25%, transparent 0 50%);mask-image:repeating-conic-gradient(#000 0 25%, transparent 0 50%)}56%,to{opacity:1;-webkit-mask-image:none;mask-image:none}}@keyframes tp-spin{0%,10%{opacity:0;transform:rotate(-180deg)scale(.4)}60%,to{opacity:1;transform:none}}.preview{background:var(--bg-0);flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.stage{flex:1;grid-template:minmax(0,1fr)/minmax(0,1fr);place-items:unsafe center;min-height:0;padding:18px 18px 6px;display:grid;position:relative;overflow:hidden}.stage.panning,.stage.panning *{cursor:grabbing!important}.stage-box.zoomed,.stage-box.zoomed canvas{border-radius:2px}.stage-zoom-badge{z-index:3;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;height:24px;animation:pop-in .16s var(--ease);background:#0000009e;border:0;border-radius:999px;padding:0 10px;font-size:11.5px;font-weight:700;position:absolute;top:12px;right:14px}.stage-zoom-badge:hover{background:#000c}.zoom-ctl{background:var(--bg-3);border-radius:10px;align-items:center;gap:1px;height:30px;padding:0 2px;display:flex;position:relative}.zoom-level{min-width:46px;height:24px;color:var(--fg-2);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 4px;font-size:12px;font-weight:700}.zoom-level:hover{color:var(--fg);background:var(--bg-4,#ffffff0f)}.stage-box{border-radius:10px;position:relative;overflow:visible;box-shadow:0 0 0 1px #ffffff12,0 20px 60px #0009}.stage-box canvas{background:#000;border-radius:10px;width:100%;height:100%;display:block}.stage-empty{text-align:center;color:var(--fg-3);pointer-events:none;place-items:center;padding:20px;display:grid;position:absolute;inset:0}.stage-empty .se-inner{pointer-events:auto;flex-direction:column;align-items:center;gap:10px;display:flex}.stage-empty strong{color:var(--fg);font-size:15px}.stage-badge{z-index:3;gap:6px;display:flex;position:absolute;top:12px;left:14px}.stage-badge span{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);height:24px;color:var(--fg-2);background:#141417cc;border-radius:999px;align-items:center;gap:5px;padding:0 9px;font-size:11px;font-weight:600;display:inline-flex}.playerbar{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;height:56px;padding:0 14px;display:grid}.pb-left,.pb-right{align-items:center;gap:4px;display:flex}.pb-right{justify-content:flex-end}.pb-center{align-items:center;gap:6px;display:flex}.timecode{font-variant-numeric:tabular-nums;color:var(--fg);white-space:nowrap;padding:0 6px;font-size:13px;font-weight:600}.timecode .tot{color:var(--fg-3);font-weight:500}.play-btn{color:#000;width:42px;height:42px;transition:transform .12s var(--ease), background .12s var(--ease);background:#fff;border-radius:50%;place-items:center;display:grid;box-shadow:0 4px 16px #ffffff1f}.play-btn:hover{transform:scale(1.06)}.play-btn:active{transform:scale(.95)}.vol{align-items:center;gap:4px;display:flex}.vol .range{width:76px}.meter{background:var(--bg-4);border-radius:3px;width:6px;height:24px;position:relative;overflow:hidden}.meter i{background:linear-gradient(#ef4444 0%,#f59e0b 20%,#22c55e 40% 100%) bottom/100% 24px;position:absolute;bottom:-18px;left:0;right:0}.overlay{z-index:2;position:absolute;inset:0}.gizmo{cursor:move;touch-action:none;border:1.5px solid #fff;position:absolute;top:0;left:0;box-shadow:0 0 0 1px #00000059}.gizmo .h{background:#fff;border-radius:50%;width:12px;height:12px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 4px #00000080}.gizmo .h.nw{cursor:nwse-resize;top:0;left:0}.gizmo .h.ne{cursor:nesw-resize;top:0;left:100%}.gizmo .h.sw{cursor:nesw-resize;top:100%;left:0}.gizmo .h.se{cursor:nwse-resize;top:100%;left:100%}.gizmo .rot{color:#000;cursor:grab;background:#fff;border-radius:50%;place-items:center;width:22px;height:22px;margin-left:-11px;display:grid;position:absolute;top:-34px;left:50%;box-shadow:0 1px 4px #00000080}.gizmo .rot:after{content:"";background:#fff;width:1.5px;height:12px;position:absolute;top:22px;left:50%}.guide{pointer-events:none;z-index:3;background:#ff3db8;position:absolute}.guide.v{width:1px;top:0;bottom:-18px}.guide.h{height:1px;left:0;right:0}.stage.cropping{padding-top:66px}#crop-bar-slot{z-index:6;position:absolute;top:0;left:0;right:0}.crop-bar{z-index:5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line-2);box-shadow:var(--shadow);animation:pop-in .18s var(--ease);background:#18181beb;border-radius:14px;align-items:center;gap:6px;padding:6px;display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%)}.crop-box{cursor:move;touch-action:none;border:1.5px solid #fff;position:absolute;box-shadow:0 0 0 9999px #0000009e}.crop-clip{position:absolute;overflow:hidden}.crop-box .grid{pointer-events:none;background-image:linear-gradient(90deg,#ffffff59 1px,#0000 1px),linear-gradient(#ffffff59 1px,#0000 1px);background-position:-1px -1px;background-size:33.333% 33.333%;position:absolute;inset:0}.crop-box .ch{background:#fff;position:absolute}.crop-box .ch.nw,.crop-box .ch.ne,.crop-box .ch.sw,.crop-box .ch.se{background:0 0;width:18px;height:18px}.crop-box .ch.nw{cursor:nwse-resize;border-top:4px solid #fff;border-left:4px solid #fff;top:-3px;left:-3px}.crop-box .ch.ne{cursor:nesw-resize;border-top:4px solid #fff;border-right:4px solid #fff;top:-3px;right:-3px}.crop-box .ch.sw{cursor:nesw-resize;border-bottom:4px solid #fff;border-left:4px solid #fff;bottom:-3px;left:-3px}.crop-box .ch.se{cursor:nwse-resize;border-bottom:4px solid #fff;border-right:4px solid #fff;bottom:-3px;right:-3px}.crop-box .ch.n,.crop-box .ch.s{cursor:ns-resize;border-radius:2px;width:26px;height:4px;margin-left:-13px;left:50%}.crop-box .ch.n{top:-3px}.crop-box .ch.s{bottom:-3px}.crop-box .ch.w,.crop-box .ch.e{cursor:ew-resize;border-radius:2px;width:4px;height:26px;margin-top:-13px;top:50%}.crop-box .ch.w{left:-3px}.crop-box .ch.e{right:-3px}.insp-tabs{flex-shrink:0;gap:4px;padding:0 14px 10px;display:flex;overflow-x:auto}.insp-tabs button{height:30px;color:var(--fg-2);white-space:nowrap;transition:all .12s var(--ease);background:0 0;border-radius:999px;padding:0 10px;font-size:12px;font-weight:600}.insp-tabs button:hover{color:var(--fg);background:var(--bg-3)}.sect{border-bottom:1px solid var(--line);margin-bottom:12px;padding:4px 0 14px}.sect:last-child{border-bottom:0}.sect-title{color:var(--fg);align-items:center;gap:8px;margin:6px 0 12px;font-size:12px;font-weight:700;display:flex}.sect-title .grow{flex:1}.field{grid-template-columns:82px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:34px;display:grid}.field+.field{margin-top:4px}.field>label{color:var(--fg-2);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.field .num{background:var(--bg-3);text-align:right;font-variant-numeric:tabular-nums;width:52px;height:26px;color:var(--fg);-webkit-user-select:text;user-select:text;border:1px solid #0000;border-radius:7px;padding:0 6px;font-size:12px}.field .num:focus{border-color:var(--accent);outline:none}.field-end{align-items:center;gap:4px;display:flex}.kf-btn{width:22px;height:22px;color:var(--fg-3);transition:all .12s var(--ease);border-radius:6px;place-items:center;display:grid}.kf-btn:hover{color:var(--fg);background:var(--bg-4)}.kf-btn.has,.kf-btn.on{color:var(--amber)}.kf-nav{width:16px;height:22px;color:var(--fg-2);place-items:center;display:grid}.kf-nav:hover:not(:disabled){color:var(--fg)}.kf-nav:disabled{opacity:.3}.kf-btn.on svg{fill:var(--amber)}.row{align-items:center;gap:8px;display:flex}.row.wrap{flex-wrap:wrap}.row.between{justify-content:space-between}.stack{flex-direction:column;gap:8px;display:flex}.swatches{flex-wrap:wrap;gap:6px;display:flex}.swatch{width:24px;height:24px;transition:transform .12s var(--ease);border:2px solid #ffffff1f;border-radius:50%;position:relative}.swatch:hover{transform:scale(1.1)}.swatch.on{box-shadow:0 0 0 2px var(--bg-2), 0 0 0 4px #fff}.swatch.custom{background:conic-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red);overflow:hidden}.swatch.custom input{opacity:0;cursor:pointer;position:absolute;inset:0}.aspect-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.aspect-card{background:var(--bg-3);color:var(--fg-2);transition:all .12s var(--ease);border:1px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:12px 6px 10px;font-size:12px;font-weight:700;display:flex}.aspect-card:hover{color:var(--fg);background:var(--bg-4)}.aspect-card.on{color:var(--fg);background:var(--bg-4);border-color:#fff}.aspect-card .shape{border:2px solid;border-radius:4px}.aspect-card small{color:var(--fg-3);text-align:center;font-size:10px;font-weight:500;line-height:1.2}.opt-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.opt{background:var(--bg-3);height:54px;color:var(--fg-2);transition:all .12s var(--ease);border:1px solid #0000;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:11px;font-weight:600;display:flex}.opt:hover{color:var(--fg);background:var(--bg-4)}.opt.on{color:var(--fg);background:var(--bg-4);border-color:#fff}.speed-pills{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.empty-insp{flex-direction:column;gap:4px;display:flex}.h-resizer{cursor:row-resize;background:var(--bg-1);position:relative}.h-resizer:after{content:"";background:var(--bg-5);width:40px;height:3px;transition:background .12s var(--ease);border-radius:3px;margin:-1.5px 0 0 -20px;position:absolute;top:50%;left:50%}.h-resizer:hover:after,.h-resizer.dragging:after{background:var(--accent)}.popover{z-index:850;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--line-2);width:360px;box-shadow:var(--shadow);animation:pop-in .16s var(--ease);background:#18181bfa;border-radius:18px;padding:16px;position:fixed}.perf-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:7px 0;font-size:12px;display:flex}.perf-row:last-child{border-bottom:0}.perf-row span:first-child{color:var(--fg-2)}.perf-row b{text-align:right;font-weight:600}.badge{letter-spacing:.03em;text-transform:uppercase;border-radius:6px;align-items:center;gap:4px;height:20px;padding:0 7px;font-size:10px;font-weight:800;display:inline-flex}.badge.hw{color:#86efac;background:#22c55e29}.badge.sw{color:#fcd34d;background:#f59e0b29}.badge.no{background:var(--bg-4);color:var(--fg-3)}.badge.nv{color:#a3e635;background:#76b9002e}.voice-engine-chip{background:var(--bg-3);height:24px;color:var(--fg-2);border-radius:999px;align-items:center;gap:5px;padding:0 9px;font-size:11px;font-weight:600;display:inline-flex}.voice-panel{flex-direction:column;gap:10px;display:flex}.voice-panel .panel-sub{margin:8px 0 0}.voice-script{min-height:112px;font-size:13.5px}.voice-script-foot,.voice-gender,.voice-emotions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.voice-script-foot{margin-top:-4px}.voice-script-foot .grow{flex:1}.voice-tag{height:24px;font-family:var(--mono);padding:0 9px;font-size:11px}.voice-count{color:var(--fg-3);font-size:11px}.voice-note{color:var(--fg-3);text-transform:none;letter-spacing:0;margin:0;font-size:11px;font-weight:500;line-height:1.45}.voice-gender .chip{text-transform:none;letter-spacing:0;height:24px;padding:0 9px;font-size:11px}.voice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.voice-card{background:var(--bg-3);text-align:left;min-width:0;transition:all .12s var(--ease);border:1px solid #0000;border-radius:12px;align-items:flex-start;gap:9px;padding:8px;display:flex;position:relative}.voice-card:hover{background:var(--bg-4)}.voice-card.on{border-color:var(--accent);background:var(--accent-soft)}.vc-avatar{color:#fff;background:linear-gradient(150deg,#475569,#1e293b);border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;font-size:13px;font-weight:700;display:grid}.voice-card[data-gender=male] .vc-avatar{background:linear-gradient(150deg,#2563eb,#1e3a8a)}.voice-card[data-gender=female] .vc-avatar{background:linear-gradient(150deg,#db2777,#831843)}.vc-meta{flex-direction:column;min-width:0;display:flex}.vc-name{font-size:12.5px;font-weight:600}.vc-style{color:var(--fg-3);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:10.5px;line-height:1.3;display:-webkit-box;overflow:hidden}.vc-del{color:var(--fg-3);opacity:0;border-radius:6px;padding:3px;position:absolute;top:4px;right:4px}.voice-card:hover .vc-del{opacity:1}.vc-del:hover{color:var(--red);background:var(--bg-5)}.voice-block{background:var(--bg-2);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:8px;padding:10px;display:flex}.voice-label{color:var(--fg-2);font-size:11px;font-weight:600}.voice-row{align-items:center;gap:10px;display:flex}.voice-row>.voice-label{flex-shrink:0;width:64px}.voice-row>.select,.voice-row>.seg{flex:1}.voice-row.two>*{flex:1;min-width:0}.voice-busy{color:var(--fg-2);flex-direction:column;gap:6px;font-size:12px;display:flex}.progress.indeterminate i{width:35%;animation:voice-slide 1.4s var(--ease) infinite}@keyframes voice-slide{0%{transform:translate(-100%)}to{transform:translate(300%)}}.voice-log{font-family:var(--mono);color:var(--fg-3);white-space:pre-wrap;word-break:break-all;max-height:44px;margin:0;font-size:10px;line-height:1.4;overflow:hidden}.voice-error svg{color:var(--amber)}.voice-actions{gap:8px;display:flex}.voice-actions .btn{flex:1}.voice-setup{background:var(--grad-soft);border:1px solid var(--line-2);border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex}.voice-setup p{color:var(--fg-2);margin:0;font-size:12px;line-height:1.5}.voice-setup code,.voice-panel .hint code{font-family:var(--mono);font-size:11px}.audio-row .ar-play.voice{background:linear-gradient(150deg,#7c3aed,#4c1d95)}.fsearch{flex-direction:column;gap:6px;margin-bottom:10px;display:flex}.fsearch-bar{background:var(--bg-2);height:34px;color:var(--fg-3);border-radius:10px;align-items:center;gap:6px;padding:0 4px 0 10px;display:flex}.fsearch-bar input{min-width:0;height:100%;color:var(--fg);background:0 0;border:0;outline:none;flex:1;font-size:12.5px}.fsearch-hits{flex-direction:column;gap:4px;max-height:320px;display:flex;overflow:auto}.fsearch-hit{border-radius:8px;align-items:center;gap:8px;padding:4px;display:flex}.fsearch-hit:hover{background:var(--bg-2)}.fsearch-hit img,.fsearch-thumb{object-fit:cover;background:var(--bg-2);border-radius:6px;flex:none;width:44px;height:44px}.fsearch-info{flex:1;min-width:0}.fsearch-name{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.fsearch-why{color:var(--fg-2);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.notes-overlay{pointer-events:none;z-index:6;position:absolute;inset:0}.notes-overlay.drawing{pointer-events:auto;cursor:crosshair;background:#0000001f}.note-box{border:2px solid #fb7185;border-radius:6px;position:absolute;box-shadow:0 0 0 1px #00000059}.note-box.focus{border-color:#fda4af;box-shadow:0 0 0 3px #fb718559}.note-box.draft{border-style:dashed;border-color:#fff}.note-box>span{color:#fff;white-space:nowrap;text-overflow:ellipsis;background:#be123ceb;border-radius:6px;max-width:240px;padding:2px 7px;font-size:11px;font-weight:600;position:absolute;bottom:calc(100% + 4px);left:-2px;overflow:hidden}.note-row.resolved{opacity:.55}.note-reply{background:var(--bg-2);color:var(--fg-2);border-radius:8px;padding:6px 8px;font-size:12px;line-height:1.4}.note-reply b{color:var(--fg);margin-right:4px}.ramp-presets{flex-wrap:wrap;gap:6px;display:flex}.ramp-graph{background:var(--bg-2);border:1px solid var(--line);touch-action:none;-webkit-user-select:none;user-select:none;border-radius:8px;width:100%;height:auto;margin-top:10px;display:block}.ramp-graph line{stroke:var(--line-2);stroke-width:.5px}.ramp-graph line.one{stroke:var(--fg-3);stroke-dasharray:3 3}.ramp-graph line.head{stroke:var(--amber);stroke-width:1px}.ramp-graph text{fill:var(--fg-3);font-size:7px;font-family:var(--mono)}.ramp-graph polyline{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linejoin:round}.ramp-graph circle{fill:var(--bg-1);stroke:var(--accent);stroke-width:2px;cursor:grab}.ramp-graph circle:hover{fill:var(--accent)}.ramp-keys{flex-direction:column;gap:6px;margin-top:8px;display:flex}.ramp-key{grid-template-columns:1fr 1fr auto auto;align-items:center;gap:6px;font-size:12px;display:grid}.ramp-key label{color:var(--fg-3);align-items:center;gap:4px;display:flex}.ramp-key input,.ramp-key select{border:1px solid var(--line);background:var(--bg-3);width:100%;min-width:0;color:var(--fg);border-radius:6px;padding:3px 6px;font-size:12px}.plane-overlay{z-index:7;pointer-events:none;position:absolute;inset:0}.plane-overlay svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.plane-overlay polygon{fill:#b98cff29;stroke:#b98cff;stroke-width:2px;vector-effect:non-scaling-stroke}.plane-handle{pointer-events:auto;cursor:grab;background:#8b5cf6;border:2px solid #fff;border-radius:50%;width:16px;height:16px;margin:-8px 0 0 -8px;padding:0;position:absolute;box-shadow:0 0 0 1px #0006}.plane-handle:active{cursor:grabbing}.trk-dot.plane{background:#b98cff}.scope-nums{color:var(--fg-2);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 10px;font-size:11.5px;display:flex}.bin-body:focus{outline:none}.bin-tools{align-items:center;gap:6px;margin:2px 0 8px;display:flex}.bin-search{flex:1;align-items:center;min-width:0;display:flex;position:relative}.bin-search>svg{color:var(--fg-3);pointer-events:none;position:absolute;left:8px}.bin-search .input{width:100%;height:30px;padding-left:26px;font-size:12px}.bin-search .icon-btn{position:absolute;right:4px}.bin-labelf.on{background:#ffffff0f}.seg-mini{border:1px solid var(--line-2);border-radius:8px;flex-shrink:0;display:inline-flex;overflow:hidden}.seg-mini button{width:28px;height:28px;color:var(--fg-3);place-items:center;display:grid}.seg-mini button.on{color:var(--fg);background:var(--bg-4)}.bin-kinds{flex:1;gap:4px;min-width:0;margin:0 0 4px}.bin-kinds .chip.sm{height:26px;padding:0 9px;font-size:11.5px}.bin-info{box-sizing:border-box;background:var(--bg-2);border:1px solid var(--line);border-radius:10px;gap:10px;height:82px;margin-bottom:8px;padding:8px;display:flex;overflow:hidden}.bin-info-thumb{background:var(--bg-4);width:64px;height:64px;color:var(--fg-2);border-radius:8px;flex-shrink:0;place-items:center;display:grid;overflow:hidden}.bin-info-thumb img{object-fit:cover;width:100%;height:100%}.bin-info-text{flex-direction:column;gap:2px;min-width:0;display:flex}.bin-info-text b{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;font-size:12.5px;display:flex;overflow:hidden}.bin-info-text b i{border-radius:2px;flex-shrink:0;width:9px;height:9px}.bin-info-text small{color:var(--fg-2);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.bin-info.empty .bin-info-thumb{color:var(--fg-3);background:var(--bg-3)}.bin-info.empty b{color:var(--fg-2)}.bin-info-used{color:var(--green)!important}.bin-crumbs{align-items:center;gap:2px;min-width:0;margin-bottom:8px;display:flex;overflow:hidden}.bin-list{border-radius:10px;flex-direction:column;gap:1px;min-height:80px;display:flex}.bin-list.over,.bin-grid.over{outline:2px dashed var(--accent);outline-offset:2px}.bin-row{cursor:default;-webkit-user-select:none;user-select:none;border-radius:7px;align-items:center;gap:6px;min-height:34px;padding:2px 8px 2px 4px;display:flex}.bin-row:hover{background:#ffffff0a}.bin-row.on{background:var(--accent-soft);box-shadow:inset 0 0 0 1px #0a95ff59}.bin-row.busy{opacity:.6}.bin-twirl{width:16px;height:16px;color:var(--fg-3);transition:transform .12s var(--ease);border-radius:4px;flex-shrink:0;place-items:center;display:grid}button.bin-twirl:hover{color:var(--fg)}.bin-twirl.open{transform:rotate(90deg)}.bin-label{border-radius:2px;flex-shrink:0;width:10px;height:14px;box-shadow:inset 0 0 0 1px #00000059}.bin-label:hover{outline:1px solid #fff9}.bin-ic{background:var(--bg-3);width:30px;height:22px;color:var(--fg-2);border-radius:4px;flex-shrink:0;place-items:center;display:grid;overflow:hidden}.bin-ic img{object-fit:cover;pointer-events:none;width:100%;height:100%}.bin-ic.k-folder{color:#e4d84c;background:0 0}.bin-ic.k-comp,.bin-ic.k-sequence{color:#f0abfc}.bin-ic.k-audio{color:#5eead4}.bin-name{flex-direction:column;flex:1;min-width:0;line-height:1.2;display:flex}.bin-name b{white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.bin-name small{color:var(--fg-3);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;overflow:hidden}.bin-rename{height:22px;padding:0 6px;font-size:12px}.bin-used{background:var(--green);border-radius:50%;flex-shrink:0;width:6px;height:6px}.bin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-height:80px;display:grid}.bin-card{aspect-ratio:1;background:var(--bg-3);border:1px solid var(--line);border-top:3px solid var(--label);cursor:grab;border-radius:12px;position:relative;overflow:hidden}.bin-card.on{border-color:var(--accent);border-top-color:var(--label);box-shadow:0 0 0 1px var(--accent)}.bin-card.busy{opacity:.6}.bin-thumb{width:100%;height:100%;color:var(--fg-2);place-items:center;display:grid}.bin-thumb img{object-fit:cover;pointer-events:none;width:100%;height:100%}.bin-thumb.k-folder{color:#e4d84c}.bin-thumb.k-comp,.bin-thumb.k-sequence{color:#f0abfc;background:linear-gradient(160deg,#c026d340,#6228d733)}.bin-thumb.k-audio{color:#5eead4;background:linear-gradient(160deg,#0f766e,#134e4a)}.bin-card-name{white-space:nowrap;text-overflow:ellipsis;background:linear-gradient(#0000,#000c);padding:18px 8px 6px;font-size:11px;font-weight:600;position:absolute;bottom:-18px;left:0;right:0;overflow:hidden}.bin-card-sub{color:var(--fg-2);font-size:10.5px;position:absolute;top:8px;left:8px}.bin-card .mc-badge{background:#000000a6;border-radius:6px;padding:2px 6px;font-size:11px;font-weight:600;position:absolute;top:6px;right:6px}.bin-card .mc-add{color:#000;opacity:0;width:26px;height:26px;transition:opacity .15s var(--ease);background:#fff;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:24px;right:6px}.bin-card:hover .mc-add{opacity:1}.bin-pop{z-index:320;flex-direction:column;gap:8px;padding:10px;display:flex;position:fixed}.bin-pop-title{color:var(--fg-2);font-size:12px;font-weight:700}.bin-labels{grid-template-columns:repeat(8,1fr);gap:5px;display:grid}.bin-swatch{aspect-ratio:1;border-radius:5px;box-shadow:inset 0 0 0 1px #00000059}.bin-swatch:hover{outline:2px solid #fff}.bin-folders{flex-direction:column;max-height:280px;display:flex;overflow:auto}.bin-folder-opt{height:28px;color:var(--fg-2);text-align:left;border-radius:6px;align-items:center;gap:6px;font-size:12px;display:flex}.bin-folder-opt:hover{background:var(--bg-4);color:var(--fg)}.bin-folder-opt svg{color:#e4d84c}.clip.labelled:after{content:"";background:var(--label);z-index:3;pointer-events:none;width:4px;position:absolute;top:0;bottom:-18px;left:0}.bin-status{height:28px;color:var(--fg-3);background:var(--bg-2);border-top:1px solid var(--line-2);white-space:nowrap;align-items:center;gap:4px;margin-top:6px;padding:0 8px;font-size:11.5px;display:flex;position:sticky;bottom:-18px;overflow:hidden}.bin-status b{color:var(--fg);text-overflow:ellipsis;align-items:center;gap:6px;font-weight:600;display:inline-flex;overflow:hidden}.bin-status b i{border-radius:50%;flex-shrink:0;width:8px;height:8px}.bin-kinds .chip.sm{padding:0 8px}.voice-footer{z-index:3;background:var(--bg-2);border-top:1px solid var(--line-2);flex-direction:column;gap:6px;margin:8px -14px -18px;padding:8px 14px 18px;display:flex;position:sticky;bottom:-18px}.voice-footer-line{align-items:center;min-height:18px;font-size:11.5px;display:flex}.voice-chip{color:var(--fg-2);font-weight:600}.voice-chip.reason{color:var(--fg-3);font-weight:500}.bin-label{position:relative}.bin-label:after{content:"";position:absolute;inset:-5px -7px}.proj-actions{z-index:3;background:var(--bg-2);border-top:1px solid var(--line-2);margin:8px -14px -18px;padding:8px 14px 18px;position:sticky;bottom:-18px}.preview{position:relative}.source-view{z-index:40;background:var(--bg-1);flex-direction:column;gap:8px;padding:8px 12px 10px;display:flex;position:absolute;inset:0}.sv-tabs{align-items:center;gap:4px;display:flex}.sv-tab{height:26px;color:var(--fg-2);border-radius:13px;padding:0 12px;font-size:12px;font-weight:600}.sv-tab.on{background:var(--accent);color:#fff}.sv-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--fg-3);flex:1;margin-left:10px;font-size:12px;overflow:hidden}.sv-stage{background:#000;border-radius:8px;flex:1;place-items:center;min-height:0;display:grid;overflow:hidden}.sv-stage video{max-width:100%;max-height:100%}.sv-controls,.sv-actions{color:var(--fg-2);align-items:center;gap:10px;font-size:12px;display:flex}.sv-read{color:var(--fg);font-weight:600}.sv-grow{flex:1}.sv-bar{cursor:pointer;touch-action:none;height:28px;position:relative}.sv-track{background:var(--bg-5);border-radius:2px;height:4px;position:absolute;top:12px;left:0;right:0}.sv-range{background:var(--accent);opacity:.55;border-radius:2px;height:8px;position:absolute;top:10px}.sv-mark{background:var(--accent);cursor:ew-resize;border-radius:2px;width:8px;height:20px;margin-left:-4px;position:absolute;top:4px}.sv-head{pointer-events:none;background:#fff;width:2px;margin-left:-1px;position:absolute;top:2px;bottom:2px}.mark-bar{background:var(--accent);pointer-events:none;height:3px;position:absolute;bottom:0;left:0;right:0}.timeline{background:var(--bg-1);border-top:1px solid var(--line);flex-direction:column;min-height:0;display:flex}.tl-toolbar{border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:2px;height:44px;padding:0 10px;display:flex}.tl-toolbar .sep{background:var(--line-2);width:1px;height:20px;margin:0 6px}.tl-toolbar .grow{flex:1}.tl-toolbar .zoom{align-items:center;gap:4px;display:flex}.tl-toolbar .zoom .range{width:110px}.tl-toolbar .tl-time{font-variant-numeric:tabular-nums;color:var(--fg-2);white-space:nowrap;margin-left:6px;font-size:12px}.tl-main{flex:1;min-height:0;position:relative}.tl-scroll{overscroll-behavior:contain;position:absolute;inset:0;overflow:auto}.tl-canvas{min-height:100%;position:relative}.tl-ruler{z-index:30;height:var(--ruler-h,30px);background:var(--bg-1);border-bottom:1px solid var(--line);display:flex;position:sticky;top:0}.tl-corner{z-index:7;width:var(--head-w);background:var(--bg-1);border-right:1px solid var(--line);flex-shrink:0;justify-content:flex-start;align-items:center;gap:6px;padding:0 8px;display:flex;position:sticky;left:0}.tl-corner-label{letter-spacing:.02em;font-size:11px;font-weight:600}.tl-add-track{border:1px dashed var(--line-3)}.tl-ticks{cursor:text;flex:1;position:relative}.tick{background:var(--fg-4);pointer-events:none;width:1px;height:5px;position:absolute;bottom:0}.tick.major{background:var(--fg-3);height:10px}.tick-label{color:var(--fg-3);font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none;font-size:10px;font-weight:600;position:absolute;top:5px;transform:translate(4px)}.tl-rows{padding:10px 0 40px;position:relative}.tl-row{margin-bottom:6px;display:flex;position:relative}.tl-rows>.tl-row{z-index:auto;position:relative;inset:auto}.tl-head{z-index:20;width:var(--head-w);background:var(--bg-1);border-right:1px solid var(--line);color:var(--fg-3);flex-shrink:0;align-items:center;gap:4px;min-width:0;padding:0 4px 0 8px;display:flex;position:sticky;left:0}.tl-head .th-ic{opacity:.8;flex-shrink:0;place-items:center;display:grid}.tl-head .th-name{min-width:0;color:var(--fg-2);white-space:nowrap;text-overflow:ellipsis;cursor:default;-webkit-user-select:none;user-select:none;flex:1;font-size:11.5px;font-weight:600;overflow:hidden}.tl-row.main .tl-head .th-name{color:var(--fg)}.tl-head .th-input{border:1px solid var(--accent);background:var(--bg-3);min-width:0;height:22px;color:var(--fg);border-radius:6px;outline:none;flex:1;padding:0 6px;font-size:11.5px;font-weight:600}.tl-head .th-mag{width:18px;height:18px;color:var(--accent);background:var(--accent-soft);border-radius:5px;flex-shrink:0;place-items:center;display:grid;position:relative}.tl-head .th-mag:after{content:"";position:absolute;inset:-3px}.tl-head .th-btns{flex-shrink:0;display:flex}.tl-head .icon-btn.xs{border-radius:6px;width:24px;height:24px}.tl-head .icon-btn.off{color:var(--red)}.tl-head.locked{background:repeating-linear-gradient(135deg, var(--bg-1) 0 6px, var(--bg-2) 6px 12px)}.tl-lane{flex:1;position:relative}.tl-row.main .tl-lane:before{content:"";background:#ffffff04;border-radius:10px;position:absolute;inset:0}.tl-row.drop-target .tl-lane{background:#0a95ff14;border-radius:10px}.tl-row.locked .tl-lane{background:repeating-linear-gradient(135deg,#0000 0 8px,#ffffff09 8px 16px);border-radius:8px}.tl-row.locked .clip{cursor:not-allowed}.tl-row:not(.main) .tl-lane{background:#ffffff03;border-radius:8px}.tl-empty-free{left:calc(var(--head-w) + 12px);height:100%;color:var(--fg-3);pointer-events:none;white-space:nowrap;align-items:center;padding:0 4px;font-size:11.5px;display:inline-flex;position:sticky}.tl-add-row{margin:2px 0 6px;display:flex}.tl-add-row .tl-lane{align-items:center;height:34px;display:flex}.tl-add-btn{border:1px dashed var(--line-3);height:30px;color:var(--fg-3);transition:all .12s var(--ease);left:calc(var(--head-w) + 8px);border-radius:9px;align-items:center;gap:7px;margin-left:8px;padding:0 12px;font-size:12px;font-weight:600;display:inline-flex;position:sticky}.tl-add-btn:hover{color:var(--fg);border-color:var(--fg-2);background:var(--bg-3)}.tl-empty-main{border:1.5px dashed var(--line-3);color:var(--fg-2);min-width:340px;transition:all .15s var(--ease);border-radius:12px;align-items:center;gap:10px;padding:0 18px;font-weight:600;display:flex;position:absolute;top:0;bottom:0;left:8px}.tl-empty-main:hover{border-color:var(--accent);color:var(--fg);background:var(--accent-soft)}.tl-empty-main .plus{color:#000;background:#fff;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.clip{background:var(--bg-4);cursor:grab;touch-action:none;transition:box-shadow .12s var(--ease), filter .12s var(--ease);border-radius:8px;position:absolute;top:0;bottom:0;overflow:hidden}.clip:hover{filter:brightness(1.08)}.clip.selected{z-index:5}.clip.dragging{cursor:grabbing;opacity:.85;z-index:3}.clip.ghosted{opacity:.35}.clip canvas.strip{pointer-events:none;height:100%;position:absolute;top:0}.clip .c-shade{pointer-events:none;background:linear-gradient(#0000006b,#0000 45% 70%,#00000059);position:absolute;inset:0}.clip .c-label{white-space:nowrap;pointer-events:none;text-shadow:0 1px 2px #0009;align-items:center;gap:5px;font-size:11px;font-weight:600;display:flex;position:absolute;top:5px;left:8px;right:8px;overflow:hidden}.clip .c-label .nm{text-overflow:ellipsis;background:#00000040;border-radius:4px;padding:0 4px;overflow:hidden}.clip .c-tag{background:#0000008c;border-radius:5px;flex-shrink:0;align-items:center;gap:3px;height:17px;padding:0 5px;font-size:10px;display:inline-flex}.clip .c-dur{pointer-events:none;font-variant-numeric:tabular-nums;background:#0000008c;border-radius:5px;padding:1px 5px;font-size:10px;font-weight:600;position:absolute;bottom:5px;right:7px}.clip.overlay{background:#1e3a8a}.clip.overlay:after{content:"";pointer-events:none;border-radius:8px;position:absolute;inset:0;box-shadow:inset 0 0 0 1.5px #60a5fa8c}.clip.text{background:linear-gradient(#7c3aed,#6d28d9)}.clip.audio{background:#134e4a}.clip.audio.sfx{background:#78350f}.clip canvas.wave{pointer-events:none;height:100%;position:absolute;top:0}.clip.muted-clip{filter:saturate(.4)brightness(.8)}.clip svg.fades{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.clip .fade-h{cursor:ew-resize;opacity:0;width:12px;height:12px;transition:opacity .12s var(--ease);z-index:2;background:#fff;border-radius:50%;margin-left:-6px;position:absolute;top:3px;box-shadow:0 1px 3px #00000080}.clip:hover .fade-h,.clip.selected .fade-h{opacity:1}.clip .sel-frame{pointer-events:none;z-index:2;border-radius:8px;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #fff}.clip .trim{z-index:3;cursor:ew-resize;place-items:center;width:24px;display:grid;position:absolute;top:0;bottom:0}.clip .trim.l{left:0}.clip .trim.r{right:0}.clip .trim i{width:4px;height:45%;max-height:26px;transition:background .12s var(--ease);background:#fff0;border-radius:3px}.clip:hover .trim i{background:#ffffff8c}.clip.selected .trim{background:#fff}.clip.selected .trim i{background:#000;width:2px}.clip.selected .trim.l{border-radius:8px 0 0 8px}.clip.selected .trim.r{border-radius:0 8px 8px 0}.kf-dots{pointer-events:none;z-index:2;height:10px;position:absolute;bottom:3px;left:0;right:0}.kf-dots i{background:var(--amber);border-radius:1.5px;width:8px;height:8px;margin-left:-4px;position:absolute;transform:rotate(45deg);box-shadow:0 0 0 1.5px #0009}.tr-zone{z-index:3;pointer-events:none;background:repeating-linear-gradient(135deg,#ffffff29 0 4px,#ffffff0a 4px 8px);border-radius:6px;position:absolute;top:0;bottom:0;box-shadow:inset 0 0 0 1px #ffffff40}.tr-btn{z-index:4;border:1px solid var(--line-3);width:24px;height:24px;color:var(--fg-2);box-shadow:var(--shadow-sm);transition:all .12s var(--ease);background:#1e1e22eb;border-radius:7px;place-items:center;margin:-12px 0 0 -12px;display:grid;position:absolute;top:50%}.tr-btn:hover{color:#000;background:#fff;transform:scale(1.1)}.tr-btn.has{color:#000;background:#fff}.tr-btn.sel{box-shadow:0 0 0 2px var(--accent), var(--shadow-sm)}.playhead{z-index:14;pointer-events:none;width:0;position:absolute;top:0;bottom:0}.tl-ruler .playhead{z-index:6}.tl-head-bg{top:0;left:0;bottom:var(--tl-sb,0px);width:var(--head-w);z-index:15;background:var(--bg-1);border-right:1px solid var(--line);pointer-events:none;position:absolute}.ruler-comp-end{z-index:1;pointer-events:none;background:repeating-linear-gradient(135deg,#0000006b 0 6px,#0000004d 6px 12px);border-left:2px solid #ffffff59;position:absolute;top:0;bottom:0;right:0}.playhead:before{content:"";background:#fff;width:2px;position:absolute;top:0;bottom:0;left:-1px;box-shadow:0 0 6px #0009}.playhead .knob{pointer-events:auto;cursor:ew-resize;width:14px;height:18px;margin-left:-7px;position:sticky;top:0}.playhead .knob:before{content:"";clip-path:polygon(0 0,100% 0,100% 60%,50% 100%,0 60%);background:#fff;border-radius:3px 3px 7px 7px;width:14px;height:14px;position:absolute;top:4px;left:0}.snap-line{z-index:7;pointer-events:none;background:#facc15;width:1px;position:absolute;top:0;bottom:0;box-shadow:0 0 4px #facc15cc}.drop-line{background:var(--accent);z-index:7;pointer-events:none;border-radius:3px;width:3px;position:absolute;box-shadow:0 0 10px #0a95ffb3}.drop-ghost{border:1.5px dashed var(--accent);z-index:7;pointer-events:none;background:#0a95ff40;border-radius:8px;position:absolute}.marquee{border:1px solid var(--accent);z-index:9;pointer-events:none;background:#0a95ff1a;border-radius:2px;position:absolute}.tl-sel-live{display:inline-flex}.tl-sel-pill{background:var(--accent-soft);height:22px;color:var(--accent-2);white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:11px;align-items:center;gap:4px;margin-left:8px;padding:0 4px 0 10px;font-size:11.5px;font-weight:600;display:inline-flex}.tl-sel-pill button{width:16px;height:16px;color:inherit;border-radius:8px;place-items:center;display:grid}.tl-sel-pill button:hover{color:var(--fg);background:#ffffff1f}.drop-newtrack{background:var(--accent);z-index:12;pointer-events:none;border-radius:3px;height:4px;position:absolute;box-shadow:0 0 12px #0a95ffcc}.drop-newtrack span{background:var(--accent-strong);color:#fff;white-space:nowrap;border-radius:6px;padding:1px 7px;font-size:10.5px;font-weight:700;position:absolute;bottom:6px;left:0}.drag-hint{z-index:31;border:1px solid var(--line-3);color:var(--fg);white-space:nowrap;pointer-events:none;box-shadow:var(--shadow-sm);background:#0e0e10eb;border-radius:7px;padding:3px 8px;font-size:11px;font-weight:600;position:absolute;transform:translateY(-100%)}.tl-range{top:var(--ruler-h,30px);z-index:7;pointer-events:none;background:#0a95ff1f;position:absolute;bottom:0;box-shadow:inset 2px 0 #22c55e,inset -2px 0 #ef4444}.ruler-range{background:#0a95ff4d;position:absolute;top:0;bottom:0;box-shadow:inset 2px 0 #22c55e,inset -2px 0 #ef4444}.ruler-range .rg-h{cursor:ew-resize;z-index:2;width:11px;height:16px;position:absolute;top:2px}.ruler-range .rg-h.in{background:#22c55e;border-radius:0 6px 6px 0;left:-1px}.ruler-range .rg-h.out{background:#ef4444;border-radius:6px 0 0 6px;right:-1px}.playhead .knob .ph-h{cursor:ew-resize;opacity:.55;width:9px;height:14px;transition:opacity .12s var(--ease), transform .12s var(--ease);position:absolute;top:3px}.playhead .knob .ph-h.in{background:#22c55e;border-radius:5px 0 0 5px;margin-right:1px;right:100%}.playhead .knob .ph-h.out{background:#ef4444;border-radius:0 5px 5px 0;margin-left:1px;left:100%}.playhead .knob:hover .ph-h,.playhead .knob .ph-h:hover{opacity:1}.tl-range-bar{white-space:nowrap;background:#0a95ff1f;border:1px solid #0a95ff59;border-radius:10px;align-items:center;gap:4px;margin-left:8px;padding:3px 4px 3px 10px;font-size:12px;display:inline-flex}.tl-range-bar .rb-len{font-variant-numeric:tabular-nums;margin-right:4px}.tl-range-bar .rb-btn{height:24px;color:var(--fg);background:var(--bg-3);border-radius:7px;padding:0 9px;font-size:11.5px;font-weight:600}.tl-range-bar .rb-btn:hover{background:var(--bg-4)}.tl-marker{z-index:3;cursor:pointer;align-items:center;gap:3px;max-width:160px;height:18px;display:flex;position:absolute;top:19px}.tl-marker .mk-flag{background:#fbbf24;flex-shrink:0;width:2px;height:18px;position:relative}.tl-marker .mk-flag:after{content:"";clip-path:polygon(0 0,100% 50%,0 100%);background:#fbbf24;width:9px;height:8px;position:absolute;top:0;left:2px}.tl-marker .mk-name{color:#fde68a;white-space:nowrap;text-overflow:ellipsis;background:#fbbf2429;border-radius:4px;max-width:130px;margin-left:9px;padding:0 5px;font-size:10px;font-weight:700;overflow:hidden}.tl-marker:hover .mk-name{background:#fbbf244d}.tl-marker.on-clip .mk-flag,.tl-marker.on-clip .mk-flag:after{background:#2dd4bf}.tl-marker.on-clip .mk-flag:before{content:"";background:#2dd4bf;border-radius:50%;width:6px;height:6px;position:absolute;bottom:-2px;left:-2px}.tl-marker.on-clip .mk-name{color:#99f6e4;background:#2dd4bf29}.tl-marker.on-clip:hover .mk-name{background:#2dd4bf4d}.tl-marker .mk-input{background:var(--bg-3);width:120px;height:18px;color:var(--fg);border:1px solid #fbbf24;border-radius:4px;outline:none;margin-left:9px;padding:0 5px;font-size:10.5px}.tl-note{color:#fecdd3;z-index:4;cursor:pointer;background:#fb718538;border:1px solid #fb7185bf;border-radius:5px;align-items:center;min-width:16px;height:16px;padding:0 2px;display:flex;position:absolute;top:2px}.tl-note.focus{background:#fb718580}.kf-area{margin:-2px 0 8px;position:relative}.kf-block{border-left:2px solid var(--amber);margin-left:0;position:relative}.kf-row{display:flex;position:relative}.kf-row+.kf-row .kf-lane{border-top:1px solid #ffffff09}.kf-head{background:var(--bg-2);gap:4px;padding-left:10px;font-size:11px}.kf-title .kf-head{background:var(--bg-3);padding-left:2px}.kf-twirl{width:18px;height:18px;color:var(--amber);border-radius:5px;flex-shrink:0;place-items:center;display:grid}.kf-name{min-width:0;color:var(--fg);white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:700;overflow:hidden}.kf-head .icon-btn.xs{border-radius:5px;width:20px;height:20px}.kf-head .icon-btn.xs.on{color:var(--amber);background:#f59e0b24}.kf-label{min-width:0;color:var(--fg-2);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.kf-empty{color:var(--fg-3)}.kf-value{text-align:right;font-variant-numeric:tabular-nums;min-width:42px;color:var(--accent-2);cursor:ew-resize;-webkit-user-select:none;user-select:none;border-bottom:1px dotted #3aa9ff80;flex-shrink:0;line-height:1.2}.kf-value.keyed{color:#fbbf24;border-bottom-color:#fbbf2480}.kf-input{border:1px solid var(--accent);background:var(--bg-3);width:52px;height:18px;color:var(--fg);text-align:right;border-radius:4px;outline:none;padding:0 4px;font-size:11px}.kf-nav{flex-shrink:0;display:flex}.kf-navb{width:15px;height:18px;color:var(--fg-3);border-radius:4px;place-items:center;display:grid}.kf-navb:disabled{opacity:.3}.kf-navb:not(:disabled):hover{color:var(--fg);background:var(--bg-4)}.kf-toggle.has{color:#f59e0b99}.kf-toggle.on{color:var(--amber)}.kf-toggle.on svg{fill:var(--amber)}.kf-lane{cursor:default;flex:1;position:relative}.kf-bar{pointer-events:none;background:#f59e0b12;border-radius:4px;position:absolute;top:3px;bottom:3px}.kf-title .kf-bar{background:#f59e0b29}.kf-key{cursor:grab;z-index:2;place-items:center;width:16px;height:16px;margin:-8px 0 0 -8px;display:grid;position:absolute;top:50%}.kf-key svg path{fill:#c9c9d1;stroke:#000000bf;stroke-width:.9px}.kf-key:hover svg path{fill:#fff}.kf-key.on svg path{fill:var(--amber);stroke:#fff3c4}.kf-key:active{cursor:grabbing}.kf-marquee{z-index:5;pointer-events:none;background:#f59e0b1a;border:1px solid #f59e0be6;position:absolute}.kf-dialog{z-index:300;flex-direction:column;gap:8px;width:236px;padding:10px;display:flex;position:fixed}.kf-dialog-head{color:var(--amber);align-items:center;gap:6px;font-size:12.5px;font-weight:700;display:flex}.kf-field{color:var(--fg-2);grid-template-columns:48px 1fr;align-items:center;gap:8px;font-size:12px;display:grid}.kf-field .select{height:28px;font-size:12px}.kf-num{align-items:center;gap:4px;display:flex}.kf-num .input{flex:1;min-width:0;height:28px;font-size:12px}.kf-num em{color:var(--fg-3);min-width:10px;font-style:normal}.kf-dots i{pointer-events:auto;cursor:grab}.kf-dots i:after{content:"";position:absolute;inset:-4px}.kf-twirl-btn{z-index:3;color:#ffffff8c;opacity:0;background:#00000059;border-radius:4px;place-items:center;width:15px;height:15px;transition:opacity .12s,transform .15s;display:grid;position:absolute;bottom:3px;left:3px}.clip:hover .kf-twirl-btn,.clip.selected .kf-twirl-btn,.kf-twirl-btn.has,.kf-twirl-btn.on{opacity:1}.kf-twirl-btn.has{color:var(--amber)}.kf-twirl-btn.on{color:var(--amber);transform:rotate(90deg)}.tl-comp-end{z-index:6;pointer-events:none;background:repeating-linear-gradient(135deg,#0000006b 0 6px,#0000004d 6px 12px);border-left:2px solid #ffffff59;position:absolute;top:0;bottom:0;right:0}.multi-summary{color:var(--fg-3);margin:-2px 0 12px;font-size:12px}.multi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.multi-grid .btn{white-space:nowrap;text-overflow:ellipsis;justify-content:flex-start;gap:7px;min-width:0;height:36px;padding:0 10px;overflow:hidden}.multi-grid .btn svg{flex-shrink:0}.multi-locked{margin-bottom:10px}.drag-badge{z-index:60;background:var(--accent);color:#fff;white-space:pre;pointer-events:none;font-variant-numeric:tabular-nums;height:22px;box-shadow:var(--shadow-sm);border-radius:11px;padding:0 8px;font-size:11.5px;font-weight:600;line-height:22px;position:fixed}.drag-badge.blocked{background:var(--red)}.drag-badge .nosnap{opacity:.85;font-weight:500;text-decoration:line-through}.old-slot{border:1px dashed var(--line-3);pointer-events:none;z-index:1;background:#ffffff0a;border-radius:6px;position:absolute;top:3px;bottom:3px}.timeline.tl-copying,.timeline.tl-copying *{cursor:copy!important}.timeline.tl-blocked,.timeline.tl-blocked *{cursor:no-drop!important}.timeline.tl-razor .clip,.timeline.tl-razor .clip *{cursor:crosshair!important}.kf-twirl-btn:after{content:"";position:absolute;inset:-5px}.tl-toolbar input.range{height:24px}:root{--cur-trim-in:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24'><g fill='none' stroke-linecap='round' stroke-linejoin='round'><g stroke='%23111' stroke-width='4.6'><path d='M8 5v14M8 5h4M8 19h4'/><path d='M10 12h9M16 9l3 3-3 3'/></g><g stroke='%23ff4d4f' stroke-width='2.2'><path d='M8 5v14M8 5h4M8 19h4'/><path d='M10 12h9M16 9l3 3-3 3'/></g></g></svg>") 12 12;--cur-trim-out:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24'><g fill='none' stroke-linecap='round' stroke-linejoin='round'><g stroke='%23111' stroke-width='4.6'><path d='M16 5v14M16 5h-4M16 19h-4'/><path d='M14 12H5M8 9l-3 3 3 3'/></g><g stroke='%23ff4d4f' stroke-width='2.2'><path d='M16 5v14M16 5h-4M16 19h-4'/><path d='M14 12H5M8 9l-3 3 3 3'/></g></g></svg>") 12 12;--cur-ripple-in:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24'><g fill='none' stroke-linecap='round' stroke-linejoin='round'><g stroke='%23111' stroke-width='4.6'><path d='M8 5v14M8 5h4M8 19h4'/><path d='M10 12h9M16 9l3 3-3 3'/></g><g stroke='%23ffd23f' stroke-width='2.2'><path d='M8 5v14M8 5h4M8 19h4'/><path d='M10 12h9M16 9l3 3-3 3'/></g></g></svg>") 12 12;--cur-ripple-out:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24'><g fill='none' stroke-linecap='round' stroke-linejoin='round'><g stroke='%23111' stroke-width='4.6'><path d='M16 5v14M16 5h-4M16 19h-4'/><path d='M14 12H5M8 9l-3 3 3 3'/></g><g stroke='%23ffd23f' stroke-width='2.2'><path d='M16 5v14M16 5h-4M16 19h-4'/><path d='M14 12H5M8 9l-3 3 3 3'/></g></g></svg>") 12 12;--cur-roll:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24'><g fill='none' stroke-linecap='round' stroke-linejoin='round'><g stroke='%23111' stroke-width='4.6'><path d='M10 5v14M14 5v14'/><path d='M3 12h5M5 9l-3 3 3 3'/><path d='M16 12h5M19 9l3 3-3 3'/></g><g stroke='%23ffffff' stroke-width='2.2'><path d='M10 5v14M14 5v14'/><path d='M3 12h5M5 9l-3 3 3 3'/><path d='M16 12h5M19 9l3 3-3 3'/></g></g></svg>") 12 12;--cur-slip:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24'><g fill='none' stroke-linecap='round' stroke-linejoin='round'><g stroke='%23111' stroke-width='4.6'><path d='M6 5v14M18 5v14'/><path d='M9 12h6M12 9l-3 3 3 3M12 9l3 3-3 3'/></g><g stroke='%23ffffff' stroke-width='2.2'><path d='M6 5v14M18 5v14'/><path d='M9 12h6M12 9l-3 3 3 3M12 9l3 3-3 3'/></g></g></svg>") 12 12;--cur-slide:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24'><g fill='none' stroke-linecap='round' stroke-linejoin='round'><g stroke='%23111' stroke-width='4.6'><path d='M7 7h10v10H7z'/><path d='M2 12h3M4 10l-2 2 2 2M19 12h3M20 10l2 2-2 2'/></g><g stroke='%23ffffff' stroke-width='2.2'><path d='M7 7h10v10H7z'/><path d='M2 12h3M4 10l-2 2 2 2M19 12h3M20 10l2 2-2 2'/></g></g></svg>") 12 12;--cur-razor:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24'><g fill='none' stroke-linecap='round' stroke-linejoin='round'><g stroke='%23111' stroke-width='4.6'><path d='M5 19L19 5M5 5l5 5'/><path d='M12 3v2M12 8v2M12 14v2M12 19v2'/></g><g stroke='%23ffffff' stroke-width='2.2'><path d='M5 19L19 5M5 5l5 5'/><path d='M12 3v2M12 8v2M12 14v2M12 19v2'/></g></g></svg>") 12 12}.clip .trim.l{cursor:var(--cur-trim-in), ew-resize}.clip .trim.r{cursor:var(--cur-trim-out), ew-resize}.tl-tool-ripple .clip .trim.l{cursor:var(--cur-ripple-in), ew-resize}.tl-tool-ripple .clip .trim.r{cursor:var(--cur-ripple-out), ew-resize}.tl-tool-roll .clip .trim{cursor:var(--cur-roll), col-resize}.tl-tool-slip .clip{cursor:var(--cur-slip), ew-resize}.tl-tool-slide .clip{cursor:var(--cur-slide), ew-resize}.tl-tool-track .clip,.tl-tool-trackBack .clip{cursor:e-resize}.timeline.tl-razor,.timeline.tl-razor *{cursor:var(--cur-razor), crosshair!important}.tl-row.locked .clip,.tl-row.locked .clip .trim{cursor:not-allowed}.tl-tools{background:var(--bg-3);border-radius:8px;gap:2px;margin-right:8px;padding:2px;display:inline-flex}.tl-tools .icon-btn.tool{border-radius:6px;width:28px;height:28px}.tl-tools .icon-btn.tool:hover{background:var(--bg-5)}.tl-tools .icon-btn.tool.on{background:var(--accent);color:#fff}.razor-line{z-index:25;pointer-events:none;filter:drop-shadow(0 0 1px #000);border-left:1px dashed #fff;width:0;position:absolute}.razor-line span{border:1px solid var(--line-3);color:var(--fg);white-space:nowrap;font-variant-numeric:tabular-nums;background:#0e0e10eb;border-radius:6px;padding:1px 6px;font-size:10.5px;font-weight:600;position:absolute;top:-2px;left:4px}.drag-hint.trim-chip{z-index:70;position:fixed;transform:translate(-50%,-100%)}.drag-hint.trim-chip.limit{background:var(--red);border-color:var(--red);color:#fff}.clip.limit-l{box-shadow:inset 2px 0 0 var(--red)}.clip.limit-r{box-shadow:inset -2px 0 0 var(--red)}.tr-btn{opacity:0;margin:0 0 0 -12px;top:auto;bottom:3px}.tl-row:hover .tr-btn,.tr-btn.has,.tr-btn.sel,.tr-btn:focus-visible{opacity:1}.drop-newtrack span{margin-left:8px;top:50%;bottom:auto;left:100%;transform:translateY(-50%)}.drop-newtrack .bar-ghost{height:30px;position:absolute;top:-15px;bottom:auto}.drag-badge{background:var(--accent-strong,#0b6fc4)}.old-slot{border-color:#ffffff59}.clip.lifted{opacity:.92;box-shadow:0 22px 46px #000000b3,0 0 0 2px #fffffff2}.tl-head .th-resize{cursor:ns-resize;z-index:3;height:5px;position:absolute;bottom:-2px;left:0;right:0}.tl-head .th-resize:hover{background:var(--accent);opacity:.6}.tl-head .th-solo{background:var(--amber);color:#111;text-align:center;border-radius:4px;flex-shrink:0;width:16px;height:16px;font-size:10px;font-weight:800;line-height:16px}.head-drop{background:var(--accent);z-index:30;pointer-events:none;border-radius:3px;height:4px;position:absolute;box-shadow:0 0 12px #0a95ffcc}.tl-head{cursor:grab}.tl-head button,.tl-head input{cursor:pointer}.clip.connected{box-shadow:inset 0 2px 0 var(--accent)}.clip .link-chip{z-index:4;background:var(--accent);color:#fff;border-radius:5px;place-items:center;width:16px;height:16px;display:grid;position:absolute;top:3px;left:3px}.clip .link-count{z-index:4;background:var(--accent);color:#fff;border-radius:8px;height:16px;padding:0 6px;font-size:10px;font-weight:700;line-height:16px;position:absolute;top:3px;right:4px}.clip.link-family{outline:2px solid var(--accent);outline-offset:-2px;background-color:var(--accent-soft)}.link-line{border-left:1.5px solid var(--accent);z-index:13;pointer-events:none;width:0;position:absolute}.link-line i{background:var(--accent);border-radius:3px;width:6px;height:6px;position:absolute;bottom:-3px;left:-4.5px}.clip .vol-line{pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.vol-line .vl-line{fill:none;stroke:#ffd666d9;stroke-width:1.3px}.vol-line:not(.on) .vl-line{stroke:#ffd66673}.vol-line .vl-hit{fill:none;stroke:#0000;pointer-events:stroke;cursor:ns-resize}.vol-line .vl-pt{fill:#ffd666;stroke:#0009;stroke-width:1px;pointer-events:all;cursor:move}.vol-line.locked .vl-pt{pointer-events:none}.vol-line .vl-pt.sel{fill:#fff}.vol-line .vl-tip{fill:#fff;paint-order:stroke;stroke:#000c;stroke-width:3px;pointer-events:none;font-size:11px}.home{background:radial-gradient(1200px 500px at 85% -10%, #6228d729, transparent 60%), radial-gradient(900px 420px at 0% 0%, #ee2a7b1a, transparent 60%), var(--bg-1);-webkit-user-select:none;user-select:none;height:100%;overflow-y:auto}.home-top{z-index:5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#0c0c0eb8;align-items:center;gap:12px;height:64px;padding:0 28px;display:flex;position:sticky;top:0}.brand.static:hover{background:0 0}.home-main{max-width:1180px;margin:0 auto;padding:44px 28px 80px}.hero{flex-direction:column;gap:30px;display:flex}.eyebrow{background:var(--bg-3);border:1px solid var(--line);height:28px;color:var(--fg-2);border-radius:999px;align-items:center;gap:7px;padding:0 12px;font-size:12px;font-weight:600;display:inline-flex}.hero h1{letter-spacing:-.035em;margin:18px 0 14px;font-size:clamp(32px,4.4vw,54px);font-weight:800;line-height:1.04}.hero p{max-width:640px;color:var(--fg-2);margin:0;font-size:15px;line-height:1.6}.start-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.start-card{background:var(--bg-2);border:1px solid var(--line);text-align:left;min-height:150px;transition:all .18s var(--ease);border-radius:20px;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:18px;padding:18px;display:flex}.start-card:hover{border-color:var(--line-3);background:var(--bg-3);box-shadow:var(--shadow);transform:translateY(-3px)}.start-card .sc-shape{align-items:center;height:58px;display:flex}.start-card .shape{border:2.5px solid #fff;border-radius:7px}.start-card .sc-text{flex-direction:column;gap:3px;display:flex}.start-card strong{letter-spacing:-.01em;font-size:18px;font-weight:800}.start-card span{color:var(--fg-2);font-size:12px}.start-card.import{background:var(--grad-soft), var(--bg-2);border:1.5px dashed var(--line-3)}.start-card.import:hover,.start-card.import.over{border-color:#fff}.start-card .sc-icon{background:var(--grad);border-radius:14px;place-items:center;width:46px;height:46px;display:grid;box-shadow:0 6px 22px #ee2a7b59}.recents{margin-top:54px}.sec-head{align-items:center;gap:10px;margin-bottom:16px;display:flex}.sec-head h2{letter-spacing:-.01em;margin:0;font-size:18px}.sec-head .count{color:var(--fg-2);background:var(--bg-3);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:700}.recents-empty{background:var(--bg-2);border:1px solid var(--line);color:var(--fg-3);border-radius:18px;align-items:center;gap:14px;padding:22px;display:flex}.recents-empty div{flex-direction:column;gap:2px;display:flex}.recents-empty strong{color:var(--fg)}.recents-empty span{color:var(--fg-2);font-size:13px}.proj-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;display:grid}.proj-card{background:var(--bg-2);border:1px solid var(--line);cursor:pointer;transition:all .18s var(--ease);border-radius:16px;overflow:hidden}.proj-card:hover{border-color:var(--line-3);box-shadow:var(--shadow);transform:translateY(-3px)}.pc-thumb{height:150px;color:var(--fg-3);background:#000;place-items:center;display:grid;position:relative}.pc-thumb img{max-width:100%;max-height:100%;display:block}.pc-aspect{color:var(--fg-2);background:#000000a6;border-radius:6px;padding:2px 7px;font-size:10px;font-weight:700;position:absolute;top:8px;left:8px}.pc-del{width:28px;height:28px;color:var(--fg-2);opacity:0;transition:all .15s var(--ease);background:#000000a6;border-radius:9px;place-items:center;display:grid;position:absolute;top:8px;right:8px}.proj-card:hover .pc-del{opacity:1}.pc-del:hover{background:var(--red);color:#fff}.pc-meta{flex-direction:column;gap:3px;padding:12px 14px 14px;display:flex}.pc-meta strong{white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.pc-meta span{color:var(--fg-3);font-size:12px}.features{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:54px;display:grid}.feature{border:1px solid var(--line);background:#14141799;border-radius:18px;gap:14px;padding:18px;display:flex}.feature .f-icon{background:var(--bg-4);border-radius:12px;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid}.feature div:last-child{flex-direction:column;gap:3px;display:flex}.feature strong{font-size:14px}.feature span{color:var(--fg-2);font-size:12.5px;line-height:1.5}@media (max-width:980px){.start-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.features{grid-template-columns:1fr}}.home{isolation:isolate;position:relative}.home-top,.home-main{z-index:1;position:relative}.home-top{z-index:5}.home-aura{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.home-aura i{opacity:.55;will-change:transform;border-radius:50%;width:70vmax;height:70vmax;position:absolute}.home-aura i:first-child{background:radial-gradient(circle,#ee2a7b38,#0000 62%);animation:22s ease-in-out infinite alternate aura-a;top:-35vmax;left:-25vmax}.home-aura i:nth-child(2){background:radial-gradient(circle,#6228d747,#0000 62%);animation:26s ease-in-out infinite alternate aura-b;top:-30vmax;right:-30vmax}.home-aura i:nth-child(3){background:radial-gradient(circle,#0a95ff24,#0000 62%);animation:30s ease-in-out infinite alternate aura-c;bottom:-50vmax;left:20vmax}@keyframes aura-a{to{transform:translate(18vmax,10vmax)scale(1.15)}}@keyframes aura-b{to{transform:translate(-16vmax,14vmax)scale(.9)}}@keyframes aura-c{to{transform:translate(-10vmax,-12vmax)scale(1.2)}}.hero-copy>*{animation:rise-in .7s var(--ease-out) backwards}.hero-copy>:nth-child(2){animation-delay:70ms}.hero-copy>:nth-child(3){animation-delay:.14s}.grad-text.shimmer{background-image:linear-gradient(100deg,#f9ce34 -10%,#ee2a7b 30%,#6228d7 60%,#ee2a7b 80%,#f9ce34 110%);background-size:220% 100%;animation:7s ease-in-out infinite alternate text-shimmer}@keyframes text-shimmer{to{background-position:100% 0}}.start-card{isolation:isolate;transform:perspective(800px) rotateX(var(--ry,0deg)) rotateY(var(--rx,0deg)) translateY(var(--lift,0px));transition:transform .35s var(--spring-soft), border-color .18s var(--ease), background .18s var(--ease), box-shadow .25s var(--ease);animation:card-in .6s var(--ease-out) backwards;animation-delay:calc(.12s + var(--i,0) * 60ms);position:relative;overflow:hidden}.start-card:hover{--lift:-4px;transform:perspective(800px) rotateX(var(--ry,0deg)) rotateY(var(--rx,0deg)) translateY(var(--lift,0px))}.start-card:active{transition-duration:.1s;transform:perspective(800px)scale(.97)}.start-card:after{content:"";z-index:-1;background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%), #ffffff1c, transparent 62%);opacity:0;transition:opacity .25s var(--ease);position:absolute;inset:0}.start-card:hover:after{opacity:1}@keyframes card-in{0%{opacity:0;transform:translateY(18px)scale(.96)}}.start-card .shape{transition:transform .4s var(--spring), border-color .2s var(--ease), box-shadow .3s var(--ease)}.start-card:hover .shape{background:var(--grad);border-color:#0000;transform:scale(1.08);box-shadow:inset 0 0 0 2.5px #fff,0 6px 22px #ee2a7b73}.start-card .sc-icon{transition:transform .4s var(--spring)}.start-card.import:hover .sc-icon,.start-card.import.over .sc-icon{transform:translateY(-3px)rotate(-6deg)scale(1.06)}.start-card.import.over{box-shadow:0 0 0 4px #ee2a7b40, var(--shadow);border-color:#fff}.proj-card{animation:card-in .5s var(--ease-out) backwards;animation-delay:calc(var(--i,0) * 45ms);transition:transform .35s var(--spring-soft), border-color .18s var(--ease), box-shadow .25s var(--ease)}.proj-card:active{transition-duration:.1s;transform:scale(.97)}.pc-thumb{overflow:hidden}.pc-thumb img{transition:transform .6s var(--ease-out)}.proj-card:hover .pc-thumb img{transform:scale(1.05)}.pc-play{opacity:0;width:46px;height:46px;transition:opacity .2s var(--ease), transform .35s var(--spring);background:#fff;border-radius:50%;place-items:center;margin:-23px 0 0 -23px;display:grid;position:absolute;top:50%;left:50%;transform:scale(.6);box-shadow:0 8px 26px #00000080}.pc-play svg{margin-left:2px}.proj-card:hover .pc-play{opacity:1;transform:none}.feature{animation:card-in .6s var(--ease-out) backwards;animation-delay:calc(.2s + var(--i,0) * 50ms);transition:border-color .2s var(--ease), transform .35s var(--spring-soft)}.feature:hover{border-color:var(--line-3);transform:translateY(-2px)}.feature .f-icon{transition:transform .4s var(--spring), background .2s var(--ease)}.feature:hover .f-icon{background:var(--grad-soft), var(--bg-4);transform:rotate(-8deg)scale(1.08)}@media (hover:none){.start-card:hover,.feature:hover{--lift:0px;transform:none}.start-card:after{display:none}}@media (max-width:640px){.home-top{height:calc(56px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 16px 0}.home-top .gpu-chip .gpu-model{display:none}.home-main{padding:24px 16px calc(56px + env(safe-area-inset-bottom))}.hero{gap:22px}.eyebrow{height:auto;min-height:28px;padding:6px 12px;font-size:11.5px}.hero h1{margin:14px 0 10px;font-size:38px}.hero p{font-size:14px;line-height:1.55}.start-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.start-card{border-radius:18px;gap:14px;min-height:0;padding:14px}.start-card .sc-shape{height:44px}.start-card strong{font-size:16px}.start-card.import{flex-direction:row;order:-1;grid-column:1/-1;justify-content:flex-start;align-items:center}.recents,.features{margin-top:36px}.proj-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pc-thumb{height:128px}.pc-meta{padding:10px 12px 12px}}.cap-banner{background:color-mix(in srgb, var(--amber,#f5a524) 14%, var(--bg-2,#18181b));border:1px solid var(--amber,#f5a524);z-index:2;border-radius:10px;align-items:flex-start;gap:10px;max-width:880px;margin:0 auto 12px;padding:10px 12px;font-size:12.5px;display:flex;position:relative}.cap-banner ul{flex-direction:column;flex:1;gap:4px;margin:0;padding:0;list-style:none;display:flex}.cap-banner{box-sizing:border-box;width:100%}.export{padding:22px 24px 24px}.ex-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.ex-head h2{letter-spacing:-.02em;margin:0 0 4px;font-size:20px}.ex-head .faint{font-size:12px}.ex-setup{grid-template-columns:250px minmax(0,1fr);gap:24px;display:grid}.ex-preview{flex-direction:column;gap:12px;display:flex}.ex-thumb{width:100%;max-height:340px;color:var(--fg-3);border:1px solid var(--line);background:#000;border-radius:14px;place-items:center;display:grid;overflow:hidden}.ex-thumb img{object-fit:contain;width:100%;height:100%;display:block}.ex-engine{color:#fcd34d;background:#f59e0b1a;border:1px solid #f59e0b40;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.ex-engine.hw{color:#86efac;background:#22c55e1a;border-color:#22c55e47}.ex-engine div{flex-direction:column;gap:1px;min-width:0;display:flex}.ex-engine b{color:var(--fg);font-size:12.5px}.ex-engine span{color:var(--fg-2);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.ex-form{flex-direction:column;gap:16px;min-width:0;display:flex}.ex-field>label{text-transform:uppercase;letter-spacing:.06em;color:var(--fg-3);margin-bottom:8px;font-size:11px;font-weight:700;display:block}.ex-opts{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.ex-opts .opt{text-align:left;align-items:flex-start;gap:3px;height:58px;padding:0 12px}.ex-opts .opt b{color:var(--fg);align-items:center;gap:5px;font-size:13px;display:flex}.ex-opts .opt span{color:var(--fg-3);font-size:11px;font-weight:500}.ex-opts .opt:disabled{opacity:.4}.ex-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:2px;padding-top:14px;display:flex}.ex-running{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:20px 0 8px;display:flex}.ring{width:132px;height:132px;position:relative}.ring span{letter-spacing:-.02em;place-items:center;font-size:26px;font-weight:800;display:grid;position:absolute;inset:0}.ex-phase{margin-top:6px;font-size:15px;font-weight:600}.ex-stats{color:var(--fg-2);flex-wrap:wrap;justify-content:center;gap:14px;font-size:12px;display:flex}.ex-done{animation:rise-in .5s var(--ease-out);flex-direction:column;gap:16px;display:flex;position:relative}.ring svg{filter:drop-shadow(0 0 14px #ee2a7b59)}.ring svg circle:last-child{transition:stroke-dashoffset .3s var(--ease-out)}.burst{z-index:5;pointer-events:none;width:0;height:0;position:absolute;top:34%;left:50%}.burst i{opacity:0;border-radius:2px;width:8px;height:12px;margin:-6px 0 0 -4px;animation:1.5s cubic-bezier(.15,.7,.3,1) forwards burst;position:absolute}.burst i.s1{border-radius:50%;width:9px;height:9px}.burst i.s2{width:4px;height:15px}@keyframes burst{0%{opacity:1;transform:translate(0, 0) rotate(0deg) scale(var(--s))}45%{opacity:1;transform:translate(var(--x), var(--y)) rotate(calc(var(--r) * .6)) scale(var(--s))}to{opacity:0;transform:translate(calc(var(--x) * 1.12), calc(var(--y) + 130px)) rotate(var(--r)) scale(var(--s))}}.ex-done video{object-fit:contain;background:#000;border-radius:14px;width:100%;max-height:420px;display:block}.shortcuts{padding:22px 24px 26px}.sc-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 28px;display:grid}.sc-group h3{text-transform:uppercase;letter-spacing:.06em;color:var(--fg-3);margin:16px 0 8px;font-size:11px;font-weight:700}.sc-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:6px 0;font-size:13px;display:flex}.sc-row span:first-child{color:var(--fg-2)}.sc-keys{gap:4px;display:flex}.err-boundary{color:var(--text,#eee);flex-direction:column;justify-content:center;align-items:flex-start;gap:10px;padding:20px;display:flex}.err-boundary.root{text-align:center;background:var(--bg,#0c0c0e);z-index:9999;align-items:center;position:fixed;inset:0}.err-boundary h2{margin:0;font-size:16px}.err-boundary p{opacity:.8;max-width:520px;margin:0;font-size:13px}.err-boundary code{opacity:.7;word-break:break-word;margin-top:6px;font-size:11px;display:block}.err-actions{flex-wrap:wrap;gap:8px;display:flex}.shortcuts{flex-direction:column;max-height:calc(100vh - 48px);display:flex}.sc-search{background:var(--bg-3);border:1px solid var(--line-2);height:34px;color:var(--fg-3);border-radius:8px;align-items:center;gap:8px;margin-top:14px;padding:0 10px;display:flex}.sc-search:focus-within{border-color:var(--accent)}.sc-search input{min-width:0;color:var(--fg);background:0 0;border:0;outline:none;flex:1;font-size:13px}.sc-chips{flex-wrap:wrap;gap:6px;margin:10px 0 4px;display:flex}.sc-focus{border:1px solid var(--line);border-radius:8px;margin:8px 0 0;padding:6px 12px;font-size:12.5px}.sc-focus summary{cursor:pointer;color:var(--fg-2);font-weight:600}.sc-focus dl{grid-template-columns:max-content 1fr;gap:6px 14px;margin:8px 0 4px;display:grid}.sc-focus dt{color:var(--fg);font-weight:600}.sc-focus dd{color:var(--fg-2);margin:0}.shortcuts .sc-grid{flex:1;align-content:start;min-height:0;max-height:calc(100vh - 300px);padding-right:6px;overflow:auto}.sc-group h3{background:var(--bg-2);z-index:1;margin:8px 0 0;padding:8px 0 6px;position:sticky;top:0}.sc-row mark{background:var(--accent-soft);color:var(--fg);border-radius:3px}.sc-badge{vertical-align:1px;background:var(--bg-5);height:16px;color:var(--fg-2);border-radius:8px;margin-left:8px;padding:0 6px;font-size:10px;font-style:normal;font-weight:700;line-height:16px;display:inline-block}.sc-badge.new{background:var(--accent-soft);color:var(--accent-2)}.sc-badge.changed{color:#f5a623;background:#f5a6232e}.sc-was{display:none}.sc-none{grid-column:1/-1;padding:24px 0}.sc-foot{align-items:center;gap:16px;margin-top:14px;display:flex}.sc-foot .link-btn{color:var(--fg-2);font-size:12px;text-decoration:underline}.sc-print-head,.sc-print-foot{display:none}@media (max-width:700px){.shortcuts .sc-grid{grid-template-columns:minmax(0,1fr)}.sc-touch{order:-1}.sc-focus dl{grid-template-columns:1fr}}@media print{@page{size:A4 landscape;margin:10mm}body>:not(.modal-backdrop){display:none!important}.modal-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;animation:none;display:block;position:static;background:#fff!important}.modal{box-shadow:none;color:#000;border:0;max-height:none;background:#fff!important;width:auto!important}.shortcuts{color:#000;max-height:none;padding:0}.sc-head .icon-btn,.sc-head .faint,.sc-search,.sc-chips,.sc-foot .btn,.sc-foot .link-btn,.sc-touch{display:none!important}.sc-print-head{margin:0 0 2mm;font-size:12pt;font-weight:700;display:block}.sc-print-foot{margin-top:4mm;font-size:8.5pt;display:block}.sc-focus{color:#000;break-inside:avoid;border:1px solid #000;margin-bottom:3mm;padding:2mm 3mm;font-size:7.5pt;line-height:1.2}.sc-focus dl{grid-template-columns:max-content 1fr max-content 1fr;gap:1px 4mm;margin:1mm 0 0;display:grid}.sc-focus dt,.sc-focus dd,.sc-focus summary{color:#000}.shortcuts .sc-grid{column-count:3;column-gap:8mm;max-height:none;display:block;overflow:visible}.sc-group{margin-bottom:1.5mm}.sc-row{break-inside:avoid}.sc-group h3{break-after:avoid;color:#000;background:0 0;border-bottom:1px solid #000;margin:0 0 1mm;padding:0;font-size:10pt;position:static}.sc-row{color:#000;border-bottom:0;gap:6px;padding:.6px 0;font-size:7.5pt;line-height:1.15}.sc-row span:first-child{color:#000}.sc-row .kbd{color:#000;box-shadow:none;background:0 0;border:1px solid #000;border-radius:2px;padding:0 3px;font:7pt/1.1 ui-monospace,Consolas,monospace}.sc-badge{color:#000;background:0 0;margin-left:4px;padding:0;font-size:8.5pt;font-weight:400}.sc-badge.new:before{content:"(new)"}.sc-badge.new{font-size:0}.sc-badge.new:before,.sc-badge.focus{font-size:8.5pt}.sc-badge.changed{font-size:0}.sc-badge.changed .sc-was{font-size:8.5pt;display:inline}}.topbar.ro{box-shadow:inset 0 -2px 0 var(--amber,#f5a524)}.ro-banner.inline{z-index:auto;max-width:340px;box-shadow:none;white-space:nowrap;border-radius:999px;padding:2px 6px 2px 10px;font-size:11.5px;position:static;overflow:hidden;transform:none}.ro-banner.inline span{text-overflow:ellipsis;overflow:hidden}.ro-banner{z-index:400;background:color-mix(in srgb, var(--amber,#f5a524) 18%, var(--bg-2,#18181b));border:1px solid var(--amber,#f5a524);max-width:min(720px,100vw - 24px);color:var(--text,#eee);border-radius:10px;align-items:center;gap:10px;padding:8px 12px;font-size:12.5px;display:flex;position:fixed;top:60px;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #0006}.sc-keys{flex-wrap:wrap;justify-content:flex-end}.sc-keys .kbd{white-space:nowrap}.ex-overrun{color:var(--amber);margin-top:4px;font-size:12px;font-weight:600}.ex-overrun .link-btn{color:var(--amber);text-decoration:underline}.confirm-scrim{z-index:9000;background:#0000008c;place-items:center;display:grid;position:fixed;inset:0}.confirm-box{background:var(--bg-3,#1c1c20);border:1px solid var(--line-2);border-radius:12px;width:min(380px,100vw - 32px);padding:18px;box-shadow:0 20px 60px #0009}.confirm-box h3{margin:0 0 6px;font-size:14px}.confirm-box p{color:var(--fg-2);margin:0 0 14px;font-size:12.5px}.confirm-actions{justify-content:flex-end;gap:8px;margin-top:10px;display:flex}@property --spin{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes ai-spin{to{--spin:360deg}}@keyframes ai-shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-7px)}40%,60%{transform:translate(7px)}}@keyframes ai-pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes ai-slide-in{0%{opacity:0;transform:translateY(-10px)scale(.98)}}.grow{flex:1;min-width:0}.icon-btn.danger-h:hover:not(:disabled){color:#fca5a5;background:#ef444424}.input.sm{height:28px;padding:0 8px;font-size:12.5px}.agent-av{border-radius:50%;flex-shrink:0;place-items:center;display:inline-grid;position:relative}.agent-av .av-core{background:var(--av-bg);color:#fff;letter-spacing:-.02em;border-radius:50%;place-items:center;width:100%;height:100%;font-weight:800;display:grid;box-shadow:inset 0 0 0 1px #ffffff24}.agent-av.busy:before{content:"";background:conic-gradient(from var(--spin), #f9ce34, #ee2a7b, #6228d7, transparent 75%, #f9ce34);border-radius:50%;animation:1.4s linear infinite ai-spin;position:absolute;inset:-3px;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 2px),#000 calc(100% - 2px));mask:radial-gradient(farthest-side,#0000 calc(100% - 2px),#000 calc(100% - 2px))}.agent-av.paused .av-core{filter:grayscale(.85)brightness(.7)}.agent-av.paused:after{content:"";background:var(--amber);width:9px;height:9px;box-shadow:0 0 0 2px var(--bg-2);border-radius:50%;position:absolute;bottom:-1px;right:-1px}.ai-btn{background:linear-gradient(var(--bg-3), var(--bg-3)) padding-box, var(--grad) border-box;height:34px;color:var(--fg);white-space:nowrap;transition:transform .15s var(--ease), box-shadow .15s var(--ease);border:1px solid #0000;border-radius:999px;align-items:center;gap:7px;padding:0 14px 0 11px;font-size:12.5px;font-weight:700;display:inline-flex}.ai-btn:hover{box-shadow:0 4px 18px #ee2a7b40}.ai-btn:active{transform:scale(.97)}.ai-btn>svg{color:#f9a8d4}.ai-btn.live{background:linear-gradient(var(--bg-3), var(--bg-3)) padding-box, linear-gradient(var(--line-2), var(--line-2)) border-box;padding:0 14px 0 5px}.ai-btn.live.busy{background:linear-gradient(var(--bg-3), var(--bg-3)) padding-box, conic-gradient(from var(--spin), #f9ce34, #ee2a7b, #6228d7, #f9ce34) border-box;animation:2.4s linear infinite ai-spin}.ai-btn.live.paused{background:linear-gradient(var(--bg-3), var(--bg-3)) padding-box, linear-gradient(#f59e0b99, #f59e0b99) border-box}.ai-btn.open{box-shadow:0 0 0 3px #ee2a7b2e}.ai-avs{display:flex}.ai-avs .agent-av+.agent-av{margin-left:-7px}.ai-avs .agent-av .av-core{box-shadow:0 0 0 2px var(--bg-3)}.ai-btn-text{text-align:left;flex-direction:column;max-width:170px;line-height:1.1;display:flex}.ai-btn-text b{text-overflow:ellipsis;font-size:12px;overflow:hidden}.ai-btn-text small{color:var(--fg-3);text-overflow:ellipsis;font-size:10.5px;font-weight:600;overflow:hidden}.ai-btn.busy .ai-btn-text small{color:#f9a8d4}.ai-panel{flex-direction:column;gap:12px;width:404px;max-height:calc(100vh - 80px);padding:14px;display:flex;top:60px;right:14px}.ai-head{align-items:center;gap:10px;display:flex}.ai-head .logo{width:32px;height:32px}.ai-title{font-size:14px;font-weight:800}.ai-hub{color:var(--fg-3);align-items:center;gap:6px;font-size:11.5px;display:flex}.ai-hub i{background:var(--fg-4);border-radius:50%;width:7px;height:7px}.ai-hub.online i{background:var(--green);box-shadow:0 0 8px #22c55eb3}.ai-hub.offline i,.ai-hub.checking i{background:var(--amber);animation:1.2s infinite ai-pulse}.ai-agents{flex-direction:column;gap:6px;display:flex}.ai-agent{background:var(--bg-3);border:1px solid var(--line);border-radius:14px;align-items:center;gap:10px;padding:10px;display:flex}.ai-agent.paused{border-color:#f59e0b4d}.aa-main{flex:1;min-width:0}.aa-name{align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.aa-access{color:#7cc4ff;background:#0a95ff24;border-radius:6px;align-items:center;gap:4px;height:19px;padding:0 7px;font-size:10.5px;font-weight:700;display:inline-flex}.aa-access.view{background:var(--bg-5);color:var(--fg-2)}.aa-access:hover{filter:brightness(1.2)}.aa-sub{color:var(--fg-3);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:11.5px;overflow:hidden}.ai-agent.paused .aa-sub{color:#fcd34d}.aa-bar{background:var(--bg-5);border-radius:4px;height:4px;margin-top:6px;overflow:hidden}.aa-bar i{background:var(--grad);height:100%;transition:width .3s var(--ease);border-radius:4px;display:block}.ai-empty{background:var(--grad-soft);border:1px solid #ee2a7b33;border-radius:14px;gap:10px;padding:12px;font-size:12px;display:flex}.ai-empty>svg{color:#f9a8d4;flex-shrink:0;margin-top:1px}.ai-empty b{margin-bottom:2px;font-size:13px;display:block}.ai-empty span{color:var(--fg-2)}.ai-others{color:var(--fg-3);flex-direction:column;gap:2px;padding:0 2px;font-size:11.5px;display:flex}.ai-others>span{letter-spacing:.05em;text-transform:uppercase;margin-bottom:2px;font-size:10.5px;font-weight:700}.ao-row{align-items:center;gap:8px;display:flex}.ao-more{color:var(--fg-3);align-self:flex-start;margin-top:2px;font-size:11.5px;font-weight:600}.ao-more:hover{color:#fca5a5}.ao-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--fg-2);flex:1;overflow:hidden}.ai-follow{justify-content:space-between;align-items:center;gap:10px;padding:0 2px;display:flex}.ai-follow b{font-size:12.5px;display:block}.ai-follow span{color:var(--fg-3);font-size:11.5px}.ai-compose{background:var(--bg-1);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:8px;padding:10px;display:flex}.ai-compose .textarea{resize:none;background:0 0;border:0;min-height:52px;padding:2px 2px 0}.ai-compose .textarea:focus{background:0 0}.ai-pin{color:var(--fg-3);cursor:pointer;align-items:center;gap:6px;font-size:11.5px;display:inline-flex}.ai-pin input{accent-color:var(--accent)}.ai-feed{border-top:1px solid var(--line);flex-direction:column;gap:4px;min-height:60px;max-height:340px;margin:0 -6px;padding:10px 6px 2px;display:flex;overflow-y:auto}.fi-system{background:var(--bg-3);color:var(--fg-3);text-align:center;border-radius:999px;align-self:center;max-width:100%;margin:4px 0;padding:3px 10px;font-size:11px}.fi-call{border-radius:10px;align-items:flex-start;gap:9px;padding:6px 8px;font-size:12px;display:flex}.fi-call.link{cursor:pointer}.fi-call.link:hover{background:var(--bg-3)}.fi-call.quiet{opacity:.6;padding-top:3px;padding-bottom:3px}.fc-icon{background:var(--bg-4);width:24px;height:24px;color:var(--fg-2);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.fi-call.running .fc-icon{color:#f9a8d4;background:#ee2a7b29}.fi-call.error .fc-icon{color:#fca5a5;background:#ef444424}.fi-call.quiet .fc-icon{background:0 0;width:20px;height:20px}.fc-main{flex:1;min-width:0;padding-top:3px}.fi-call.quiet .fc-main{padding-top:1px}.fc-title{color:var(--fg);font-weight:600}.fc-count{color:var(--fg-3);margin-left:6px;font-size:10.5px;font-weight:700}.fc-detail{color:var(--fg-3);word-break:break-word;margin-top:1px;font-size:11.5px}.fi-call.error .fc-detail{color:#fca5a5}.fc-state{color:var(--fg-3);padding-top:5px}.fi-call.running .fc-state{color:#f9a8d4}.fi-call.error .fc-state{color:#fca5a5}.fi-bubble{max-width:88%;margin:4px 0;font-size:12.5px;line-height:1.45}.fi-bubble .fb-text{white-space:pre-wrap;word-break:break-word;-webkit-user-select:text;user-select:text;border-radius:14px;padding:8px 11px}.fi-bubble .fb-meta{color:var(--fg-3);margin-top:3px;font-size:10.5px}.fi-bubble.me{text-align:right;align-self:flex-end}.fi-bubble.me .fb-text{background:var(--accent-strong);color:#fff;text-align:left;border-bottom-right-radius:5px}.fi-bubble.agent{align-self:flex-start;align-items:flex-end;gap:8px;display:flex}.fi-bubble.agent .fb-text{background:var(--bg-4);border-bottom-left-radius:5px}.fi-bubble.agent.success .fb-text{background:#22c55e24;box-shadow:inset 0 0 0 1px #22c55e40}.fi-bubble.agent.question .fb-text{background:#0a95ff24;box-shadow:inset 0 0 0 1px #0a95ff4d}.pair-stack{z-index:1100;flex-direction:column;gap:10px;width:min(392px,100vw - 32px);display:flex;position:fixed;top:68px;right:16px}.pair-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--line-2);animation:ai-slide-in .28s var(--ease);background:#16161af7;border-radius:20px;padding:16px;position:relative;overflow:hidden;box-shadow:0 18px 60px #0009,0 0 0 1px #ee2a7b14}.pair-card:before{content:"";background:var(--grad);height:3px;position:absolute;inset:0 0 auto}.pair-card[data-shake]{animation:ai-shake .5s var(--ease)}.pq-head{align-items:center;gap:11px;display:flex}.pq-who{flex-direction:column;flex:1;min-width:0;line-height:1.3;display:flex}.pq-who b{font-size:14.5px}.pq-who span{color:var(--fg-2);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.pq-who em{color:var(--fg);font-style:normal;font-weight:600}.pq-label{color:var(--fg-2);align-items:center;gap:6px;margin:16px 0 8px;font-size:12px;font-weight:600;display:flex}.pq-label svg{color:var(--green)}.pq-code{background:var(--bg-1);border:1px solid var(--line-2);width:100%;transition:border-color .15s var(--ease);border-radius:14px;align-items:center;gap:6px;padding:10px;display:flex}.pq-code:hover{border-color:var(--line-3)}.pq-digit{background:var(--bg-3);width:42px;height:52px;font-family:var(--mono);color:#fff;-webkit-user-select:text;user-select:text;border-radius:10px;place-items:center;font-size:27px;font-weight:700;display:grid;box-shadow:inset 0 -2px #00000059,inset 0 0 0 1px #ffffff0f}.pq-digit:nth-child(3){margin-right:12px;position:relative}.pq-digit:nth-child(3):after{content:"";background:var(--fg-4);border-radius:2px;width:8px;height:3px;position:absolute;right:-13px}.pq-copy{width:30px;height:30px;color:var(--fg-2);border-radius:9px;place-items:center;margin-left:auto;display:grid}.pq-code:hover .pq-copy{background:var(--bg-4);color:var(--fg)}.pq-meta{color:var(--fg-3);justify-content:space-between;align-items:center;gap:10px;margin-top:9px;font-size:11.5px;display:flex}.pq-timer{font-variant-numeric:tabular-nums;align-items:center;gap:6px;display:inline-flex}.pq-timer i{background:conic-gradient(var(--accent) calc(var(--p) * 360deg), var(--bg-5) 0);border-radius:50%;width:12px;height:12px}.pq-wrong{color:#fca5a5;font-weight:600}.pq-foot{align-items:center;gap:8px;margin-top:14px;display:flex}.pq-foot .seg{flex:1}.pq-note{color:var(--fg-3);margin-top:10px;font-size:11px;line-height:1.4}.pair-card.done{align-items:center;gap:12px;display:flex}.pair-card.done:not(.ok):before{background:var(--bg-5)}.pair-card.done.ok:before{background:var(--green)}.pq-done{color:var(--fg-2);flex-direction:column;flex:1;gap:2px;font-size:12px;display:flex}.pq-done b{color:var(--fg);font-size:14px}.pq-check{color:#86efac;width:30px;height:30px;animation:pop-in .3s var(--ease);background:#22c55e2e;border-radius:50%;place-items:center;display:grid}.connect{padding:22px 24px 18px}.cn-head{align-items:flex-start;gap:14px;display:flex}.cn-head h2{letter-spacing:-.02em;margin:0 0 4px;font-size:20px}.cn-head p{color:var(--fg-2);margin:0;font-size:13px;line-height:1.5}.cn-head>div:nth-child(2){flex:1}.cn-icon{background:var(--grad);color:#fff;border-radius:14px;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid;box-shadow:0 8px 24px #ee2a7b59}.cn-warn{color:#fcd34d;background:#f59e0b1a;border:1px solid #f59e0b47;border-radius:12px;align-items:flex-start;gap:10px;margin-top:16px;padding:11px 13px;font-size:12.5px;display:flex}.cn-warn svg{flex-shrink:0;margin-top:1px}.cn-warn span{color:var(--fg-2)}.cn-warn code{font-family:var(--mono);color:var(--fg)}.cn-steps{flex-direction:column;gap:18px;margin:20px 0 0;padding:0;list-style:none;display:flex}.cn-steps li{gap:14px;display:flex}.cn-num{background:var(--bg-4);border-radius:50%;flex-shrink:0;place-items:center;width:26px;height:26px;margin-top:1px;font-size:12.5px;font-weight:800;display:grid}.cn-body{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.cn-title{padding-top:3px;font-size:14px;font-weight:700}.cn-link{background:var(--bg-1);border:1px solid var(--line-2);border-radius:12px;align-items:center;gap:10px;padding:6px 6px 6px 12px;display:flex}.cn-link>svg{color:#f9a8d4;flex-shrink:0}.cn-link code{min-width:0;font-family:var(--mono);white-space:nowrap;text-overflow:ellipsis;-webkit-user-select:all;user-select:all;flex:1;font-size:12.5px;overflow:hidden}.cn-brief{flex-direction:column;gap:8px;display:flex}.cn-chips{flex-wrap:wrap;gap:6px;display:flex}.cn-prompt{min-height:64px;font-size:12.5px}.cn-tabs{flex-wrap:wrap;gap:4px;display:flex}.cn-tabs button{height:30px;color:var(--fg-2);border-radius:9px;align-items:center;gap:6px;padding:0 12px;font-size:12.5px;font-weight:600;display:inline-flex}.cn-tabs button:hover{color:var(--fg);background:var(--bg-3)}.cn-tabs button.on{color:var(--fg);background:var(--bg-4)}.cn-setup{background:var(--bg-1);border:1px solid var(--line);border-radius:12px;padding:12px}.cn-sub{letter-spacing:.05em;text-transform:uppercase;color:var(--fg-3);font-size:11px;font-weight:700}.cn-setup pre{font-family:var(--mono);color:#e6e6ea;white-space:pre-wrap;word-break:break-all;-webkit-user-select:text;user-select:text;background:#050506;border-radius:9px;margin:0;padding:10px 12px;font-size:12.5px;line-height:1.5}.cn-approve{color:var(--fg-2);align-items:flex-start;gap:14px;font-size:12.5px;line-height:1.55;display:flex}.cn-approve b,.cn-approve i{color:var(--fg)}.cn-code-demo{background:var(--bg-1);border:1px solid var(--line-2);border-radius:10px;flex-shrink:0;gap:3px;padding:6px;display:flex}.cn-code-demo span{background:var(--bg-3);width:20px;height:26px;font-family:var(--mono);color:#fff;border-radius:5px;place-items:center;font-size:13px;font-weight:700;display:grid}.cn-code-demo span:nth-child(3){margin-right:5px}.cn-ok{color:#86efac;align-items:center;gap:6px;margin-top:8px;font-size:12px;display:flex}.cn-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding-top:14px;display:flex}.cn-sec{color:var(--fg-3);flex-wrap:wrap;gap:14px;font-size:11.5px;display:flex}.cn-sec span{align-items:center;gap:5px;display:inline-flex}.cn-sec svg{color:var(--green)}.agent-glow{pointer-events:none;z-index:2;background:conic-gradient(from var(--spin), #f9ce34, #ee2a7b, #6228d7, #0a95ff, #f9ce34);-webkit-mask-composite:xor;animation:ai-spin 3s linear infinite, fade-in .3s var(--ease);border-radius:13px;padding:2px;position:absolute;inset:-3px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.agent-glow:after{content:"";border-radius:inherit;background:inherit;filter:blur(14px);opacity:.55;position:absolute;inset:0}.agent-pill{z-index:4;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line-2);max-width:calc(100% - 140px);height:34px;box-shadow:var(--shadow-sm);white-space:nowrap;animation:pop-in .22s var(--ease);transition:opacity .4s var(--ease);background:#141417e0;border-radius:999px;align-items:center;gap:8px;padding:0 5px 0 6px;font-size:12px;display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%)}.agent-pill.done{opacity:.55}.agent-pill b{font-weight:700}.ap-label{color:var(--fg-2);text-overflow:ellipsis;min-width:0;overflow:hidden}.ap-bar{background:var(--bg-5);border-radius:4px;flex-shrink:0;width:54px;height:4px;overflow:hidden}.ap-bar i{background:var(--grad);height:100%;transition:width .3s var(--ease);display:block}.ap-stop{background:var(--bg-4);width:24px;height:24px;color:var(--fg-2);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.ap-stop:hover{color:#fcd34d;background:#f59e0b33}.clip.agent-touched:after{content:"";border-radius:inherit;pointer-events:none;animation:agent-touch 1.8s var(--ease) forwards;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #ee2a7b,0 0 14px #ee2a7b99}@keyframes agent-touch{0%{opacity:0;background:#ee2a7b59}15%{opacity:1}to{opacity:0;background:#ee2a7b00}}.ver-btn{height:30px;color:var(--fg-2);white-space:nowrap;transition:background .12s var(--ease), color .12s var(--ease);border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.ver-btn:hover,.ver-btn.on{background:var(--bg-3);color:var(--fg)}.ver-count{background:var(--bg-5);min-width:18px;height:18px;color:var(--fg);border-radius:999px;place-items:center;padding:0 5px;font-size:10.5px;font-weight:800;display:inline-grid}.ver-pop{width:380px;max-height:calc(100vh - 90px);overflow-y:auto}.ver-name{gap:8px;display:flex}.ver-empty{background:var(--bg-3);color:var(--fg-2);border-radius:12px;gap:10px;margin-top:12px;padding:12px;font-size:12px;line-height:1.5;display:flex}.ver-empty svg{color:var(--accent);flex-shrink:0;margin-top:1px}.ver-list{flex-direction:column;gap:4px;margin-top:10px;display:flex}.ver-row{border:1px solid #0000;border-radius:12px;align-items:center;gap:10px;padding:7px;display:flex;position:relative}.ver-row:hover{background:var(--bg-3)}.ver-row.current{background:#0a95ff0f;border-color:#0a95ff59}.ver-thumb{background:var(--bg-4);width:40px;height:52px;color:var(--fg-3);border-radius:8px;flex-shrink:0;place-items:center;display:grid;overflow:hidden}.ver-thumb img{object-fit:cover;width:100%;height:100%}.ver-main{flex:1;min-width:0}.ver-title{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex;overflow:hidden}.ver-cur{color:#7cc4ff;background:#0a95ff29;border-radius:5px;align-items:center;gap:3px;padding:1px 6px;font-size:10px;font-weight:700;display:inline-flex}.ver-meta{color:var(--fg-3);white-space:nowrap;align-items:center;gap:6px;margin-top:2px;font-size:11.5px;display:flex;overflow:hidden}.ver-author{background:var(--bg-5);color:var(--fg-2);border-radius:5px;align-items:center;gap:3px;padding:1px 6px;font-size:10.5px;font-weight:700;display:inline-flex}.ver-author.ai{color:#f9a8d4;background:#ee2a7b29}.ver-note{color:var(--fg-2);margin-top:3px;font-size:11.5px;line-height:1.4}.ver-actions{background:linear-gradient(90deg, transparent, var(--bg-3) 22px);opacity:0;pointer-events:none;transition:opacity .12s var(--ease);border-radius:10px;padding:2px 2px 2px 26px;display:flex;position:absolute;top:6px;right:6px}.ver-row.current .ver-actions{background:linear-gradient(90deg,#0000,#18222d 22px)}.ver-row:hover .ver-actions,.ver-row:focus-within .ver-actions{pointer-events:auto;opacity:1}.assistant-panel{z-index:860;flex-direction:column;gap:10px;width:400px;max-width:calc(100vw - 28px);padding:12px;display:flex;top:60px;bottom:14px;right:14px}.as-btn.on,.as-btn.busy{color:var(--pink)}.as-head{align-items:center;gap:8px;display:flex}.cn-icon.sm{border-radius:10px;width:30px;height:30px}.as-title{flex-direction:column;flex:1;font-size:14px;font-weight:800;display:flex}.as-title small{color:var(--fg-3);font-size:11px;font-weight:600}.as-setup{background:var(--bg-3);border:1px solid var(--line);color:var(--fg-2);border-radius:12px;flex-direction:column;gap:8px;max-height:55%;padding:10px;font-size:12px;display:flex;overflow-y:auto}.as-setup label{flex-direction:column;gap:4px;font-weight:600;display:flex}.as-setup small{color:var(--fg-3);font-weight:500;line-height:1.4}.as-setup a{color:var(--accent-2)}.as-ok{color:var(--green);margin-left:6px;font-weight:700}.as-keyrow{gap:6px;display:flex}.as-keyrow .input{flex:1;min-width:0}.as-hints{flex-wrap:wrap;gap:5px;display:flex}.as-opts{flex-wrap:wrap;gap:6px 14px;display:flex}.as-setup .as-check{flex-direction:row;align-items:center;gap:6px}.as-check .num{width:52px}.as-log{flex-direction:column;flex:1;gap:8px;min-height:120px;padding:2px;display:flex;overflow-y:auto}.as-empty{color:var(--fg-3);flex-direction:column;align-items:flex-start;gap:10px;font-size:12.5px;line-height:1.5;display:flex}.as-item{white-space:pre-wrap;word-break:break-word;align-items:flex-start;gap:8px;font-size:13px;line-height:1.45;display:flex}.as-item.user{background:var(--accent-strong);border-radius:14px 14px 4px;align-self:flex-end;max-width:88%;padding:7px 11px}.as-item.assistant{background:var(--bg-3);border-radius:14px 14px 14px 4px;padding:7px 11px}.as-item.tool{color:var(--fg-2);background:var(--bg-2);border:1px solid var(--line);border-radius:9px;padding:5px 8px;font-size:11.5px}.as-item.tool.error{border-color:#ef444466}.as-tool{flex-direction:column;min-width:0;display:flex}.as-tool code{color:var(--fg-3);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}.as-item.info{color:var(--fg-3);font-size:12px}.as-item.error{color:#fca5a5;background:#ef44441a;border-radius:10px;padding:7px 11px}.as-dot{place-items:center;margin-top:2px;display:grid}.as-foot{flex-direction:column;gap:6px;display:flex}.as-usage{color:var(--fg-3);font-size:11px}.as-inputrow{align-items:flex-end;gap:8px;display:flex}.as-inputrow textarea{resize:none;background:var(--bg-3);border:1px solid var(--line-2);color:var(--fg);font:inherit;border-radius:12px;flex:1;padding:8px 10px;font-size:13px}.as-note{gap:6px;display:flex}.spin{animation:.9s linear infinite as-spin}@keyframes as-spin{to{transform:rotate(360deg)}}.cn-alt{color:var(--fg-2);flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;font-size:12.5px;display:flex}.paste-preview{background:var(--bg-3);border:1px solid var(--line);border-radius:12px;margin-top:10px;padding:10px 12px;font-size:12.5px}.paste-preview ol{color:var(--fg-2);max-height:180px;margin:8px 0 0;padding-left:20px;font-family:JetBrains Mono,Consolas,monospace;font-size:11.5px;overflow-y:auto}.paste-error{margin-top:8px}:root{--spring:cubic-bezier(.34, 1.56, .64, 1);--spring-soft:cubic-bezier(.22, 1.25, .36, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.5, 0, .75, 0)}@keyframes rise-in{0%{opacity:0;transform:translateY(16px)}}button,[role=button],.media-card,.audio-row,.start-card,.proj-card{-webkit-tap-highlight-color:transparent;touch-action:manipulation}[data-drag-source]{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.btn{transition:background .15s var(--ease), transform .3s var(--spring), box-shadow .2s var(--ease), filter .2s var(--ease)}.btn:active:not(:disabled){transition-duration:80ms;transform:scale(.95)}.icon-btn{transition:background .14s var(--ease), color .14s var(--ease), transform .3s var(--spring)}.icon-btn:active:not(:disabled){transition-duration:80ms;transform:scale(.88)}.chip,.opt,.aspect-card,.fx-card,.text-card,.rail-item,.tr-btn{transition:background .14s var(--ease), color .14s var(--ease), border-color .14s var(--ease), box-shadow .18s var(--ease), transform .32s var(--spring)}.chip:active,.opt:active,.aspect-card:active,.fx-card:active,.text-card:active,.rail-item:active{transition-duration:80ms;transform:scale(.94)}.swatch{transition:transform .28s var(--spring), box-shadow .2s var(--ease)}.swatch:active{transform:scale(.85)}.swatch.on{animation:swatch-on .35s var(--spring)}@keyframes swatch-on{0%{transform:scale(.7)}}.press-hold{filter:brightness(1.12);transition:transform .28s var(--ease-out), filter .28s var(--ease-out)!important;transform:scale(.96)!important}.btn.grad{isolation:isolate;position:relative;overflow:hidden}.btn.grad:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(105deg,#0000 30%,#ffffff6b 50%,#0000 70%);position:absolute;inset:0;transform:translate(-130%)}.btn.grad:hover:not(:disabled):after{transition:transform .85s var(--ease-out);transform:translate(130%)}.rail{position:relative}.rail-item{z-index:1;position:relative}.rail-item.on{background:0 0}.rail-ind{background:var(--bg-4);pointer-events:none;border-radius:12px;position:absolute;top:0}.rail-ind:before{content:"";background:var(--grad);border-radius:0 3px 3px 0;width:3px;position:absolute;top:22%;bottom:22%;left:-7px}.rail-ind.ready{transition:transform .42s var(--spring-soft), height .3s var(--ease-out)}.rail-item.on svg{animation:icon-pop .42s var(--spring)}@keyframes icon-pop{0%{transform:scale(.7)rotate(-8deg)}60%{transform:scale(1.12)}}.filter-row{position:relative}.filter-row .chip{z-index:1;position:relative}.filter-row .chip.on{color:#000;background:0 0}.chip-ind{pointer-events:none;background:#fff;border-radius:999px;position:absolute;top:0;left:0}.chip-ind.ready{transition:transform .38s var(--spring-soft), width .3s var(--ease-out)}.insp-tabs{position:relative}.insp-tabs button{z-index:1;position:relative}.insp-tabs.fade-end{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 36px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 36px),#0000)}.insp-tabs button.on{color:#000;background:0 0}.tab-ind{pointer-events:none;background:#fff;border-radius:999px;height:30px;position:absolute;top:0;left:0}.tab-ind.ready{transition:transform .4s var(--spring-soft), width .3s var(--ease-out)}.seg{position:relative}.seg button{z-index:1;position:relative}.seg button.on{box-shadow:none;background:0 0}.seg-ind{background:var(--bg-5);pointer-events:none;border-radius:8px;position:absolute;top:0;left:0;box-shadow:0 1px 3px #0006}.seg-ind.ready{transition:transform .38s var(--spring-soft), width .3s var(--ease-out)}.panel-swap{min-height:0;animation:panel-in .34s var(--ease-out);flex-direction:column;flex:1;display:flex}@keyframes panel-in{0%{opacity:0;transform:translateY(10px)}}.tab-swap{animation:tab-in .3s var(--ease-out)}@keyframes tab-in{0%{opacity:0;transform:translate(12px)}}.media-card,.text-card,.fx-card,.audio-row{animation:item-in .46s var(--ease-out) backwards;animation-delay:calc(var(--i,0) * 26ms)}@keyframes item-in{0%{opacity:0;transform:translateY(12px)scale(.95)}}.media-card{transition:transform .32s var(--spring), border-color .15s var(--ease), box-shadow .25s var(--ease)}.media-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px #00000073}.media-card:active{transform:scale(.97)}.media-card img{transition:transform .6s var(--ease-out);animation:fade-in .45s var(--ease-out)}.media-card:hover img{transform:scale(1.07)}.media-card .mc-add{transition:opacity .18s var(--ease), transform .32s var(--spring), background .15s var(--ease)}.media-card .mc-add:hover{transform:scale(1.12)!important}.media-card.used:after{animation:dot-in .4s var(--spring)}@keyframes dot-in{0%{transform:scale(0)}}.mc-state.shimmer{background:linear-gradient(110deg,#0009 30%,#ffffff1a 50%,#0009 70%) 0 0/260% 100%;animation:1.35s linear infinite shimmer}@keyframes shimmer{0%{background-position:150% 0}to{background-position:-60% 0}}.text-card:hover{box-shadow:0 10px 24px #0006}.fx-card .fx-thumb{transition:box-shadow .2s var(--ease), transform .35s var(--spring)}.fx-card:hover .fx-thumb{transform:translateY(-2px)}.fx-card.on .fx-thumb{animation:fx-on .4s var(--spring)}@keyframes fx-on{0%{transform:scale(.88)}}.audio-row{transition:background .14s var(--ease), transform .3s var(--spring)}.audio-row:active{transform:scale(.985)}.audio-row.playing{background:#14b8a61a;box-shadow:inset 0 0 0 1px #14b8a640}.audio-row .ar-play{transition:transform .3s var(--spring), filter .15s}.audio-row .ar-play:hover{filter:brightness(1.15);transform:scale(1.08)}.audio-row .ar-play:active{transform:scale(.9)}.ar-grip{color:var(--fg-3);opacity:0;transition:opacity .15s var(--ease);cursor:grab;flex-shrink:0}.audio-row:hover .ar-grip{opacity:1}.eq{flex-shrink:0;align-items:flex-end;gap:2px;height:14px;display:inline-flex}.eq i{background:#5eead4;border-radius:2px;width:3px;height:40%;animation:.9s ease-in-out infinite eq}.eq i:nth-child(2){animation-delay:-.3s}.eq i:nth-child(3){animation-delay:-.6s}@keyframes eq{0%,to{height:25%}50%{height:100%}}.range-wrap{align-items:center;min-width:0;display:flex;position:relative}.range-bubble{color:#000;font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none;z-index:5;animation:bubble-in .2s var(--spring);transform-origin:50% 100%;background:#fff;border-radius:7px;padding:3px 7px;font-size:11px;font-weight:700;position:absolute;bottom:calc(100% + 2px);transform:translate(-50%);box-shadow:0 4px 12px #0006}.range-bubble:after{content:"";border:4px solid #0000;border-top-color:#fff;margin-left:-4px;position:absolute;top:100%;left:50%}@keyframes bubble-in{0%{opacity:0;transform:translate(-50%)translateY(4px)scale(.6)}}.range::-webkit-slider-thumb{transition:transform .25s var(--spring), box-shadow .2s var(--ease)}.range-wrap.dragging .range::-webkit-slider-thumb{transform:scale(1.25);box-shadow:0 0 0 6px #0a95ff38,0 1px 4px #00000080}.toggle:after{transition:transform .34s var(--spring), width .2s var(--ease-out)}.toggle:active:after{width:21px}.toggle.on:active:after{transform:translate(11px)}.play-btn{transition:transform .3s var(--spring), background .12s var(--ease), box-shadow .3s var(--ease);position:relative}.play-btn .pi{transition:transform .36s var(--spring), opacity .16s var(--ease-out);place-items:center;display:grid;position:absolute;inset:0}.play-btn .pause{opacity:0;transform:scale(.4)rotate(-90deg)}.play-btn.playing .play{opacity:0;transform:scale(.4)rotate(90deg)}.play-btn.playing .pause{opacity:1;transform:none}.play-btn.playing{box-shadow:0 0 0 5px #ffffff17,0 4px 16px #ffffff24}.save-state{animation:fade-in .25s var(--ease-out)}.save-state .draw{animation:check-pop .55s var(--spring)}@keyframes check-pop{0%{opacity:0;transform:scale(0)rotate(-35deg)}60%{transform:scale(1.35)}}.toast{cursor:pointer;touch-action:pan-y;animation:toast-in .46s var(--spring-soft);transition:transform .3s var(--ease-out), opacity .3s var(--ease-out)}.toast.leaving{animation:toast-out .22s var(--ease-in) forwards}.toast.leaving[data-swiped]{animation:none}@keyframes toast-in{0%{opacity:0;transform:translateY(18px)scale(.92)}}@keyframes toast-out{to{opacity:0;transform:translateY(12px)scale(.95)}}.menu{animation:menu-in .2s var(--spring-soft);transform-origin:0 0}@keyframes menu-in{0%{opacity:0;transform:scale(.94)translateY(-4px)}}.modal{animation:modal-in .36s var(--spring-soft)}@keyframes modal-in{0%{opacity:0;transform:translateY(16px)scale(.96)}}.popover{animation:modal-in .3s var(--spring-soft)}.clip .sel-frame{animation:sel-in .26s var(--spring)}@keyframes sel-in{0%{opacity:.3;box-shadow:inset 0 0 0 6px #ffffff59}}.clip.selected .trim{animation:trim-in .3s var(--spring)}.clip.selected .trim.l{transform-origin:0}.clip.selected .trim.r{transform-origin:100%}@keyframes trim-in{0%{transform:scaleX(0)}}.clip.trimming .c-dur{color:#000;transform-origin:100% 100%;transition:transform .2s var(--spring);background:#fff;transform:scale(1.12)}.clip.lifted{z-index:30;cursor:grabbing;box-shadow:0 20px 44px #000000a6,0 0 0 2px #ffffffe6}.tl-dragging .clip:not(.lifted){transition:transform .28s var(--ease-out), box-shadow .12s var(--ease), filter .12s var(--ease)}.tl-dragging .tr-btn,.tl-dragging .tr-zone{opacity:0}.clip.moving{z-index:20;cursor:grabbing;box-shadow:0 14px 30px #0000008c,0 0 0 2px #ffffffbf}.clip.press-hold{transform:scale(.97)!important}.clip.drop-hover{filter:brightness(1.18);box-shadow:0 0 0 2px var(--accent), 0 0 26px #0a95ff99}.clip.drop-hover:before{content:"";z-index:3;pointer-events:none;background:linear-gradient(100deg,#0000 30%,#ffffff47 50%,#0000 70%) 0 0/250% 100%;animation:1.1s linear infinite shimmer;position:absolute;inset:0}.tr-btn{animation:pop .35s var(--spring) backwards}.tr-btn:hover svg{transition:transform .35s var(--spring);transform:rotate(90deg)}.tl-cut-drag .tr-btn{box-shadow:0 0 0 3px #0a95ff40, var(--shadow-sm);transform:scale(1.15)}.tr-btn.drop-hover{background:var(--accent-strong);color:#fff;border-color:#0000;box-shadow:0 0 0 5px #0a95ff4d,0 0 26px #0a95ffbf;transform:scale(1.5)!important}@keyframes pop{0%{transform:scale(0)}}.drop-slot{z-index:6;pointer-events:none;animation:slot-in .26s var(--spring);transform-origin:0;background:#0a95ff24;border:2px dashed #3aa9fff2;border-radius:9px;position:absolute;top:0;bottom:0;box-shadow:inset 0 0 24px #0a95ff59,0 0 18px #0a95ff40}.drop-slot.reorder{box-shadow:none;z-index:1;background:#ffffff0d;border-color:#ffffff80}@keyframes slot-in{0%{opacity:0;transform:scaleX(.5)}}.drop-ghost{animation:slot-in .22s var(--spring);box-shadow:0 0 18px #0a95ff59}.tl-row.drop-target .tl-lane{animation:1.3s ease-in-out infinite lane-pulse;box-shadow:inset 0 0 0 1px #0a95ff66}@keyframes lane-pulse{50%{background:#0a95ff24}}.snap-line{animation:snap-in .2s var(--spring)}@keyframes snap-in{0%{opacity:0;transform:scaleY(0)}}.cut-flash{z-index:9;pointer-events:none;width:2px;animation:cut-flash .65s var(--ease-out) forwards;background:#fff;margin-left:-1px;position:absolute;top:30px;bottom:0;box-shadow:0 0 14px 4px #ffffffa6}.cut-flash span{color:#000;width:26px;height:26px;animation:cut-icon .65s var(--spring) forwards;background:#fff;border-radius:50%;place-items:center;margin-left:-13px;display:grid;position:absolute;top:6px;left:50%;box-shadow:0 4px 14px #00000080}@keyframes cut-flash{0%{opacity:1;transform:scaleY(.15)}30%{opacity:1;transform:none}to{opacity:0}}@keyframes cut-icon{0%{transform:scale(0)rotate(-120deg)}40%{transform:scale(1.15)rotate(0)}75%{opacity:1}to{opacity:0;transform:scale(.9)}}.clip-exit{z-index:9;pointer-events:none;animation:clip-exit .34s var(--ease-in) forwards;background:#3f3f46;border-radius:8px;position:absolute;box-shadow:inset 0 0 0 2px #ffffff40}.clip-exit.overlay{background:#1e3a8a}.clip-exit.text{background:#6d28d9}.clip-exit.audio{background:#134e4a}.clip-exit.sfx{background:#78350f}@keyframes clip-exit{0%{opacity:.95;transform:none}to{opacity:0;filter:blur(3px);transform:scale(.75,.35)}}.playhead .knob:before{transition:transform .25s var(--spring);transform-origin:50% 30%}.playhead .knob:hover:before,.playhead.scrubbing .knob:before{transform:scale(1.25)}.ph-bubble{color:#000;font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none;animation:bubble-x .22s var(--spring);background:#fff;border-radius:6px;padding:2px 7px;font-size:11px;font-weight:700;position:absolute;top:2px;left:16px;box-shadow:0 4px 12px #00000073}@keyframes bubble-x{0%{opacity:0;transform:translate(-6px)scale(.8)}}.stage-box{transition:box-shadow .25s var(--ease)}.stage-box.drop-over{box-shadow:0 0 0 2px var(--accent), 0 0 44px #0a95ff73, 0 20px 60px #0009}.stage-drop-point{z-index:4;pointer-events:none;width:0;height:0;position:absolute}.stage-drop-point:before,.stage-drop-point:after{content:"";background:#ffffffd9;position:absolute;box-shadow:0 0 6px #0009}.stage-drop-point:before{width:28px;height:1px;top:-.5px;left:-14px}.stage-drop-point:after{width:1px;height:28px;top:-14px;left:-.5px}.stage-drop-point i{border:2px solid #fff;border-radius:50%;width:48px;height:48px;animation:1.1s ease-out infinite ring-pulse;position:absolute;top:-24px;left:-24px;box-shadow:0 0 0 4px #0a95ff73,0 0 18px #0a95ff99}@keyframes ring-pulse{0%{opacity:1;transform:scale(.75)}to{opacity:.35;transform:scale(1.25)}}.stage-drop-clip{z-index:4;pointer-events:none;box-shadow:0 0 0 2px var(--accent), 0 0 30px #0a95ff99;animation:fade-in .15s var(--ease-out);background:#0a95ff24;border-radius:4px;position:absolute;top:0;left:0}.overlay{touch-action:none}.gizmo{animation:gizmo-in .24s var(--spring)}@keyframes gizmo-in{0%{opacity:0;outline:6px solid #ffffff40}}.gizmo .h,.gizmo .rot{transition:transform .25s var(--spring), box-shadow .2s var(--ease)}.gizmo .h:hover{transform:translate(-50%,-50%)scale(1.3)}.gizmo .rot:hover{transform:rotate(45deg)scale(1.1)}.overlay.pinching .gizmo{box-shadow:0 0 0 1px #00000059,0 0 0 5px #ffffff38}.guide{animation:snap-in .18s var(--spring)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.spinner,[style*=spin]{animation-duration:.9s!important;animation-iteration-count:infinite!important}}html.is-dragging,html.is-dragging *{cursor:grabbing!important}.drag-ghost{z-index:2000;pointer-events:none;will-change:transform;position:fixed;top:0;left:0}.dg-body{animation:ghost-in .3s var(--spring);flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.drag-ghost .dg-body{flex-direction:column-reverse}@keyframes ghost-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.55)}}.dg-card{background:var(--bg-3);color:var(--fg);transition:transform .25s var(--spring), box-shadow .2s var(--ease);border-radius:14px;position:relative;overflow:hidden;box-shadow:0 20px 50px #0009,0 0 0 1.5px #ffffffd9}.dg-body.ok .dg-card{box-shadow:0 16px 40px #0000008c, 0 0 0 2px var(--accent), 0 0 26px #0a95ff99;transform:scale(.86)}.dg-card img{object-fit:cover;width:100%;height:100%;display:block}.dg-fill{background:linear-gradient(135deg,#f97316,#db2777,#2563eb);width:100%;height:100%}.dg-card.media{width:136px;height:86px}.dg-card .dg-name{white-space:nowrap;text-overflow:ellipsis;background:linear-gradient(#0000,#000000c7);align-items:center;gap:4px;padding:16px 8px 6px;font-size:11px;font-weight:700;display:flex;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.dg-card.media .dg-name{padding-right:44px}.dg-card .dg-sub{z-index:1;font-variant-numeric:tabular-nums;background:#000000a6;border-radius:6px;padding:1px 6px;font-size:10.5px;font-weight:700;position:absolute;bottom:6px;right:6px}.dg-card.filter{border-radius:22px;width:88px;height:88px}.dg-card.transition{width:96px;height:96px}.dg-card.transition .fx-card{height:100%;padding:0;animation:none}.dg-card.transition .fx-thumb{aspect-ratio:auto;border-radius:0;height:100%}.dg-card.text{background:#1a1a1f radial-gradient(circle at 30% 20%,#8b5cf659,#0000 65%);place-items:center;min-width:128px;max-width:240px;min-height:64px;padding:12px 18px;display:grid}.dg-sample{white-space:nowrap;text-overflow:ellipsis;border-radius:5px;max-width:100%;padding:2px 6px;overflow:hidden}.dg-corner{color:#ffffff8c;position:absolute;top:7px;right:7px}.dg-card.pill{background:linear-gradient(150deg,#0f766e,#134e4a);border-radius:999px;align-items:center;gap:10px;min-width:160px;max-width:250px;padding:8px 16px 8px 8px;display:flex}.dg-card.pill.sfx{background:linear-gradient(150deg,#b45309,#78350f)}.dg-icon{background:#ffffff29;border-radius:50%;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.dg-text{flex-direction:column;min-width:0;display:flex}.dg-text b{white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.dg-text small{color:#ffffffb3;font-variant-numeric:tabular-nums;font-size:11px}.dg-hint{border:1px solid var(--line-2);color:var(--fg-2);white-space:nowrap;box-shadow:var(--shadow-sm);transition:background .15s var(--ease), color .15s var(--ease), border-color .15s var(--ease);animation:fade-in .2s var(--ease-out) 80ms backwards;background:#141418f0;border-radius:999px;padding:5px 11px;font-size:12px;font-weight:700}.dg-hint.ok{background:var(--accent-strong);color:#fff;animation:hint-ok .3s var(--spring);border-color:#0000}.dg-hint.no{color:var(--fg-3)}@keyframes hint-ok{0%{transform:scale(.85)}}.fly-chip{z-index:2000;pointer-events:none;background:var(--bg-4);border-radius:14px;width:56px;height:56px;position:fixed;top:0;left:0;overflow:hidden;box-shadow:0 14px 32px #0000008c,0 0 0 2px #fff}.fly-chip img{object-fit:cover;width:100%;height:100%;display:block}.fly-chip.audio{background:linear-gradient(150deg,#14b8a6,#134e4a);border-radius:50%}.fly-chip.sfx{background:linear-gradient(150deg,#f59e0b,#78350f);border-radius:50%}.fly-chip.text{background:linear-gradient(#8b5cf6,#6d28d9)}.drop-veil{z-index:700;pointer-events:none;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in .2s var(--ease-out);transition:background .25s var(--ease), backdrop-filter .25s var(--ease);background:radial-gradient(#0a95ff33,#0000009e 72%);place-items:center;padding:24px;display:grid;position:fixed;inset:0}.dv-ants{width:calc(100% - 28px);height:calc(100% - 28px);transition:opacity .2s var(--ease);position:absolute;inset:14px;overflow:visible}.dv-ants rect{fill:none;stroke:var(--accent-2);stroke-width:2.5px;stroke-dasharray:12 10;vector-effect:non-scaling-stroke;animation:.9s linear infinite ants}@keyframes ants{to{stroke-dashoffset:-22px}}.dv-card{text-align:center;border:1px solid var(--line-2);max-width:min(440px,100vw - 48px);box-shadow:var(--shadow), 0 0 60px #0a95ff33;animation:dv-in .45s var(--spring);transition:transform .35s var(--spring-soft);background:#0e0e11f0;border-radius:26px;flex-direction:column;align-items:center;gap:10px;padding:28px 36px 24px;display:flex}@keyframes dv-in{0%{opacity:0;transform:translateY(18px)scale(.9)}}.dv-icon{background:var(--grad);border-radius:19px;place-items:center;width:62px;height:62px;animation:1.5s ease-in-out infinite dv-bob;display:grid;box-shadow:0 12px 32px #ee2a7b73}@keyframes dv-bob{50%{transform:translateY(-6px)}}.dv-card strong{letter-spacing:-.01em;font-size:17px}.dv-sub{color:var(--fg-2);font-size:13px}.dv-chips{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:2px;display:flex}.dv-chips span{background:var(--bg-4);height:26px;animation:item-in .35s var(--spring) backwards;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.dv-chips span:nth-child(2){animation-delay:60ms}.dv-chips span:nth-child(3){animation-delay:.12s}.drop-veil.subtle{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0000001f;place-items:start center;padding-top:12vh}.drop-veil.subtle .dv-ants{opacity:0}.drop-veil.subtle .dv-card{transform:scale(.86)}.editor{touch-action:pan-x pan-y}.clip{touch-action:pan-x pan-y;-webkit-touch-callout:none}.clip .trim,.clip .fade-h,.h-resizer,.playhead .knob,.sheet-top,.timeline:not(.centered) .tl-ticks{touch-action:none}@media (pointer:coarse){.when-mouse{display:none}}@media not all and (pointer:coarse){.when-touch{display:none}}@media (pointer:coarse){.icon-btn{width:38px;height:38px}.icon-btn.sm{width:32px;height:32px}.menu{min-width:230px}.menu button{gap:12px;height:46px;font-size:14px}.media-card .mc-add,.media-card .mc-more{opacity:1;transform:none}.media-card .mc-name,.pc-del{opacity:1}.ar-grip{display:none}.clip .trim{width:20px}.clip .trim i{width:5px}.clip .fade-h{width:18px;height:18px;margin-left:-9px}.clip:not(.selected) .fade-h{display:none}.tr-btn{width:30px;height:30px;margin:-15px 0 0 -15px}.playhead .knob{width:28px;margin-left:-14px}.playhead .knob:before{left:7px}.range{height:30px}.range::-webkit-slider-thumb{width:22px;height:22px;margin-top:-9px}.gizmo .h{width:18px;height:18px}.gizmo .h:after{content:"";position:absolute;inset:-14px}.gizmo .rot{width:30px;height:30px;margin-left:-15px;top:-48px}.gizmo .rot:after{height:18px;top:30px}.crop-box .ch.nw,.crop-box .ch.ne,.crop-box .ch.sw,.crop-box .ch.se{width:26px;height:26px}.input,.textarea,.project-name input{font-size:16px}}@media (max-width:1280px){.editor-upper{--rail-w:68px;--lib-w:264px;--insp-w:292px}.rail-item{width:58px;font-size:10.5px}.topbar .brand>span,.gpu-chip .gpu-model{display:none}}@media (max-width:1120px){.editor-upper{--rail-w:64px;--lib-w:236px;--insp-w:268px}.rail-item{width:54px}.tb-divider,.ver-btn>span:not(.ver-count),.ai-btn-text{display:none}.tl-toolbar .zoom .range{width:76px}.playerbar .vol .range{width:54px}}.editor.compact{grid-template-rows:auto minmax(0, 1fr) 14px var(--tl-h-c,clamp(196px, 36dvh, 420px)) auto;height:100dvh}.topbar.compact{height:calc(52px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 8px 0 4px;gap:4px}.topbar.compact .project-name{flex:auto;max-width:none}.topbar.compact .project-name input{padding:6px;font-size:15px}.topbar.compact .grow{flex:0}.topbar.compact .btn.grad{flex-shrink:0;height:34px;padding:0 13px;font-size:13px}.topbar.compact .save-state{justify-content:center;width:18px}.ai-btn.compact{height:34px;padding:0 6px}.editor.compact .stage{padding:10px 12px 4px}.playerbar.compact{grid-template-columns:1fr auto 1fr;height:54px;padding:0 8px 0 14px;display:grid}.playerbar.compact .timecode{padding:0;font-size:12.5px}.playerbar.compact .play-btn{width:44px;height:44px}.playerbar.compact .pb-right{justify-content:flex-end;gap:0;display:flex}.editor.compact .h-resizer{background:var(--bg-1);border-top:1px solid var(--line)}.editor.compact .h-resizer:after{width:44px;height:4px;margin:-2px 0 0 -22px}.timeline.centered{border-top:0}.timeline.centered .tl-toolbar{display:none}.timeline.centered .tl-head,.timeline.centered .tl-corner{visibility:hidden;border:0;position:static}.timeline.centered .tl-add-btn{margin-left:0;position:relative;left:0}.timeline.centered .tl-empty-main{min-width:250px;padding:0 14px;font-size:12.5px;left:0}.timeline.centered .tl-rows{padding-top:12px}.timeline.centered .tl-scroll{scrollbar-width:none}.timeline.centered .tl-scroll::-webkit-scrollbar{display:none}.playhead.fixed{z-index:40;pointer-events:none;position:absolute;top:0;bottom:0}.playhead.fixed .knob{pointer-events:none;position:absolute;top:0}.playhead.fixed:before{width:2px;box-shadow:0 0 8px #000000b3,0 0 0 .5px #0006}.tl-add-end{z-index:2;aspect-ratio:1;color:#000;animation:pop .4s var(--spring);background:#fff;border-radius:12px;place-items:center;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 6px 18px #00000073}.tl-add-end:active{transform:translateY(-50%)scale(.9)}.dock{z-index:5;background:var(--bg-1);border-top:1px solid var(--line);padding:4px 4px calc(4px + env(safe-area-inset-bottom));position:relative}.dock-row{scrollbar-width:none;animation:dock-in .34s var(--ease-out);align-items:stretch;gap:2px;display:flex;overflow-x:auto}.dock-row::-webkit-scrollbar{display:none}.dock-row.root{justify-content:space-around}.dock-btn{min-width:60px;height:56px;color:var(--fg-2);transition:color .15s var(--ease), background .15s var(--ease), transform .3s var(--spring);animation:dock-btn-in .4s var(--spring) backwards;animation-delay:calc(var(--i,0) * 24ms);border-radius:14px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:4px;padding:0 4px;font-size:10.5px;font-weight:600;display:flex}.dock-btn:active:not(:disabled){transition-duration:80ms;transform:scale(.88)}.dock-btn.on{color:#fff;background:var(--bg-4)}.dock-btn.on .dock-ic{animation:icon-pop .4s var(--spring)}.dock-btn.danger{color:#fca5a5}.dock-btn:disabled{opacity:.35}.dock-ic{place-items:center;display:grid}.dock-back{width:46px;color:var(--fg);background:var(--bg-3);animation:dock-btn-in .35s var(--spring) backwards;border-radius:14px;flex:none;place-items:center;margin-right:4px;display:grid}@keyframes dock-in{0%{opacity:0;transform:translateY(8px)}}@keyframes dock-btn-in{0%{opacity:0;transform:translateY(14px)scale(.85)}}.sheet-scrim{z-index:640;animation:fade-in .22s var(--ease-out);background:#00000073;position:fixed;inset:0}.sheet{z-index:650;height:min(58dvh,640px);padding-bottom:env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid var(--line-2);animation:sheet-up .46s var(--spring-soft);transition:transform .34s var(--spring-soft), height .38s var(--ease-out);background:#141417fa;border-radius:22px 22px 0 0;flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -20px 60px #0000008c}.sheet.full{height:calc(100dvh - 56px - env(safe-area-inset-top))}.sheet.dragging{transition:none}.sheet.closing{transition:transform .24s var(--ease-in);transform:translateY(105%)}@keyframes sheet-up{0%{transform:translateY(100%)}}.sheet-top{cursor:grab;flex-shrink:0;place-items:center;height:24px;display:grid}.sheet-grab i{background:var(--fg-4);width:40px;height:5px;transition:background .15s var(--ease), width .25s var(--spring);border-radius:3px;display:block}.sheet-top:active .sheet-grab i,.sheet.dragging .sheet-grab i{background:var(--fg-2);width:56px}.sheet-close{z-index:2;position:absolute;top:6px;right:10px}.sheet-body{flex-direction:column;flex:1;min-height:0;display:flex}.sheet .panel{background:0 0;border:0;flex:1;min-height:0}.sheet .panel-head{touch-action:none;height:44px;padding-right:52px}.sheet .panel-body{overscroll-behavior:contain}.sheet .media-grid,.sheet .text-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sheet .fx-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.sheet .aspect-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media (min-width:600px){.sheet .media-grid,.sheet .text-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.sheet .fx-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (max-width:959px){.popover,.ai-panel,.ver-pop{animation:sheet-up .42s var(--spring-soft);border-radius:22px;overflow:auto;top:auto!important;left:8px!important;right:8px!important;bottom:calc(8px + env(safe-area-inset-bottom))!important;width:auto!important;max-height:min(82dvh,680px)!important}.modal-backdrop{place-items:end stretch;padding:0}.modal{max-height:94dvh;padding-bottom:env(safe-area-inset-bottom);animation:sheet-up .44s var(--spring-soft);border-radius:24px 24px 0 0;width:100%!important}.ex-setup{grid-template-columns:1fr}.ex-thumb{max-height:190px}.ex-opts{grid-template-columns:repeat(2,minmax(0,1fr))}.pair-stack{top:calc(8px + env(safe-area-inset-top));width:auto;left:8px;right:8px}.toasts{bottom:calc(86px + env(safe-area-inset-bottom));width:calc(100% - 24px)}.toast{width:100%;min-width:0}}.preview{container:preview/inline-size}@container preview (width<=860px){.playerbar:not(.compact) .vol .range,.playerbar:not(.compact) .meter{display:none}}@container preview (width<=760px){.playerbar:not(.compact) [aria-label="Save frame as PNG"],.playerbar:not(.compact) [aria-label=Loop],.playerbar:not(.compact) .zoom-ctl [aria-label=Zoom\ out],.playerbar:not(.compact) .zoom-ctl [aria-label=Zoom\ in]{display:none}}@container preview (width<=640px){.playerbar:not(.compact) [aria-label="Go to start"],.playerbar:not(.compact) [aria-label="Go to end"],.playerbar:not(.compact) .timecode .tot,.playerbar:not(.compact) .pb-aspect{display:none}}@container preview (width<=520px){.playerbar:not(.compact) .zoom-ctl,.playerbar:not(.compact) [aria-label=Previous\ frame],.playerbar:not(.compact) [aria-label=Next\ frame]{display:none}}:root{--c-motion:#c026d3;--tk-com:#6b7280;--tk-str:#a5d6a7;--tk-num:#f9a875;--tk-kw:#c792ea;--tk-lit:#ff9cac;--tk-kit:#7fdbff;--tk-ctx:#ffcb6b;--tk-fn:#82aaff;--tk-prop:#e2e8f0;--tk-type:#4ec9b0}.mg-filters .chip-dot{background:var(--cat,var(--fg-3));width:7px;height:7px;box-shadow:0 0 8px var(--cat,transparent);border-radius:50%}.chip.on .chip-dot{box-shadow:none}.mg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.mg-tile{cursor:grab;animation:item-in .46s var(--ease-out) backwards;animation-delay:calc(var(--i,0) * 26ms);position:relative}.mg-tile:active{cursor:grabbing}.mg-thumb{border:1px solid var(--line);transition:transform .32s var(--spring), border-color .15s var(--ease), box-shadow .25s var(--ease);background:#09090b;border-radius:12px;max-height:260px;margin:0 auto;position:relative;overflow:hidden}.mg-thumb canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.mg-tile:hover .mg-thumb{border-color:color-mix(in srgb, var(--cat) 55%, transparent);box-shadow:0 12px 28px #00000073, 0 0 0 1px color-mix(in srgb, var(--cat) 40%, transparent), 0 10px 30px -8px color-mix(in srgb, var(--cat) 45%, transparent);transform:translateY(-2px)}.mg-tile:active .mg-thumb{transform:scale(.97)}.mg-badge{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid color-mix(in srgb, var(--cat) 50%, transparent);background:#0000008c;border-radius:999px;align-items:center;gap:4px;height:20px;padding:0 7px 0 6px;font-size:10px;font-weight:700;display:inline-flex;position:absolute;top:6px;left:6px}.mg-badge svg{color:var(--cat)}.mg-gpu{letter-spacing:.04em;color:#f9a8d4;background:#0009;border-radius:6px;align-items:center;gap:3px;height:18px;padding:0 6px;font-size:9.5px;font-weight:800;display:inline-flex;position:absolute;bottom:6px;left:6px}.mg-broken{color:#fca5a5;background:#28000099;place-content:center;justify-items:center;gap:6px;font-size:11px;font-weight:700;display:grid;position:absolute;inset:0}.mg-tile .mc-add{color:#000;opacity:0;width:28px;height:28px;transition:all .15s var(--ease);box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:6px;right:6px;transform:scale(.8)}.mg-tile:hover .mc-add{opacity:1;transform:scale(1)}.mg-tools{opacity:0;transition:opacity .15s var(--ease);gap:3px;display:flex;position:absolute;top:6px;right:6px}.mg-tools .icon-btn{color:#fff;background:#0009}.mg-tile:hover .mg-tools{opacity:1}.mg-name{color:var(--fg-2);white-space:nowrap;text-overflow:ellipsis;transition:color .15s var(--ease);margin-top:6px;font-size:12px;font-weight:600;overflow:hidden}.mg-tile:hover .mg-name{color:var(--fg)}.mg-new{border:1.5px dashed var(--line-3);color:var(--fg-2);text-align:center;max-height:260px;transition:all .2s var(--ease);animation:item-in .46s var(--ease-out) backwards;border-radius:12px;place-content:center;justify-items:center;gap:4px;padding:10px;display:grid}.mg-new b{color:var(--fg);font-size:12.5px}.mg-new small{color:var(--fg-3);font-size:10.5px}.mg-new-ic{background:var(--grad-soft);color:#fff;border-radius:12px;place-items:center;width:40px;height:40px;margin-bottom:4px;display:grid}.mg-new:hover{color:var(--fg);background:var(--bg-3);border-color:#fff}.mt-card .fx-thumb canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.mt-new-tag{text-transform:uppercase;letter-spacing:.08em;color:#fff;background:var(--grad);border-radius:999px;padding:2px 6px;font-size:9px;font-weight:800}.mt-tools{opacity:0;transition:opacity .15s var(--ease);gap:2px;display:flex;position:absolute;top:4px;right:4px}.mt-tools .icon-btn{color:#fff;background:#000000a6}.mt-card:hover .mt-tools{opacity:1}.mt-new .fx-thumb{border:1.5px dashed var(--line-3);background:0 0}.dg-card .dg-tthumb{object-fit:cover;width:100%;height:100%}.mg-card{background:radial-gradient(120% 140% at 0% 0%, color-mix(in srgb, var(--cat) 22%, transparent), transparent 60%), var(--bg-3);border:1px solid color-mix(in srgb, var(--cat) 28%, var(--line));border-radius:12px;margin-bottom:12px;padding:12px 12px 11px;position:relative}.mg-card p{color:var(--fg);margin:8px 0 6px;font-size:12.5px;line-height:1.45}.mg-card small{color:var(--fg-3);font-size:11px}.mg-card-top{justify-content:space-between;align-items:center;display:flex}.mg-cat{color:var(--cat);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:5px;font-size:11px;font-weight:700;display:inline-flex}.mg-dur{color:var(--fg-2);font-size:11px}.mg-lang{color:var(--fg-2);font-size:11px;font-weight:700}.code-err{color:#fca5a5;animation:rise-in .3s var(--ease-out);background:#ef44441a;border:1px solid #ef44444d;border-radius:10px;align-items:flex-start;gap:9px;margin-bottom:12px;padding:10px 11px;font-size:12px;display:flex}.code-err svg{flex-shrink:0;margin-top:1px}.code-err b{color:#fecaca;margin-bottom:2px;display:block}.code-err span{color:#fca5a5;font-family:var(--mono);word-break:break-word;font-size:11.5px}.pf{margin-bottom:12px}.pf:last-child{margin-bottom:0}.pf-label{color:var(--fg-2);align-items:center;gap:8px;margin-bottom:6px;font-size:12px;display:flex}.pf-hint{color:var(--fg-3);align-items:center;gap:4px;margin-left:auto;font-size:10.5px;display:inline-flex}.pf .field+.field{margin-top:4px}.tr-motion .tr-preview{aspect-ratio:16/10;border:1px solid var(--line);background:#000;border-radius:12px;margin-bottom:6px;position:relative;overflow:hidden}.tr-motion .tr-preview canvas{width:100%;height:100%;position:absolute;inset:0}.tr-motion .pf-group{margin-top:8px}.code-view{border:1px solid var(--line);background:#0b0b0e;border-radius:10px;overflow:auto}.code-view pre{font:11.5px/18px var(--mono);min-width:max-content;margin:0;padding:8px 0}.code-view .cl{padding-right:12px;display:flex}.code-view .ln{text-align:right;width:34px;color:var(--fg-3);-webkit-user-select:none;user-select:none;flex-shrink:0;padding-right:10px}.code-view .lc{white-space:pre;color:#d4d4d8}.code-view .cl.err,.ce-hl .cl.err{background:#ef444429;box-shadow:inset 2px 0 #ef4444}.tk-com{color:var(--tk-com);font-style:italic}.tk-str{color:var(--tk-str)}.tk-num{color:var(--tk-num)}.tk-kw{color:var(--tk-kw)}.tk-lit{color:var(--tk-lit)}.tk-kit{color:var(--tk-kit)}.tk-ctx{color:var(--tk-ctx)}.tk-fn{color:var(--tk-fn)}.tk-prop{color:var(--tk-prop)}.tk-type{color:var(--tk-type)}.mg-handles{pointer-events:none;z-index:3;position:absolute;inset:0}.mg-h{pointer-events:auto;cursor:grab;touch-action:none;width:30px;height:30px;animation:gizmo-in .3s var(--spring);border-radius:50%;place-items:center;margin:-15px 0 0 -15px;display:grid;position:absolute}.mg-h:before{content:"";transition:transform .25s var(--spring), background .15s var(--ease);background:#0a95ff47;border:2px solid #fff;border-radius:50%;position:absolute;inset:3px;box-shadow:0 0 0 1px #00000059,0 4px 14px #00000080}.mg-h i{background:#fff;border-radius:50%;width:6px;height:6px;position:relative}.mg-h:hover:before,.mg-h.on:before{background:#0a95ff8c;transform:scale(1.18)}.mg-h.on{cursor:grabbing}.mg-h-label{white-space:nowrap;color:#fff;opacity:0;transition:opacity .15s var(--ease);pointer-events:none;background:#000000b8;border-radius:6px;padding:2px 7px;font-size:10.5px;font-weight:700;position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%)}.mg-h:hover .mg-h-label,.mg-h.on .mg-h-label,.mg-handles.dragging .mg-h.on .mg-h-label{opacity:1}.mg-ring{pointer-events:none;border:1.5px dashed #ffffffbf;border-radius:50%;position:absolute;box-shadow:0 0 0 1px #00000040}.mg-knob{pointer-events:auto;cursor:ew-resize;touch-action:none;width:14px;height:14px;transition:transform .25s var(--spring);background:#fff;border-radius:4px;margin:-7px 0 0 -7px;position:absolute;box-shadow:0 2px 8px #00000080}.mg-knob:hover,.mg-knob.on{transform:scale(1.3)}@media (pointer:coarse){.mg-h{width:44px;height:44px;margin:-22px 0 0 -22px}.mg-h:before{inset:9px}.mg-knob{width:22px;height:22px;margin:-11px 0 0 -11px}}.clip.motion{--mc:var(--c-motion);background:linear-gradient(180deg, #ffffff14, transparent 55%), linear-gradient(120deg, color-mix(in srgb, var(--mc) 72%, #000) 0%, color-mix(in srgb, var(--mc) 42%, #000) 100%);border-color:color-mix(in srgb, var(--mc) 60%, #fff 0%)}.clip.motion .c-motion{pointer-events:none;opacity:.35;background:repeating-linear-gradient(115deg,#0000 0 14px,#ffffff0f 14px 15px);position:absolute;inset:0}.clip.motion.selected .c-motion{opacity:.6;background:linear-gradient(100deg,#0000 30%,#ffffff2e 50%,#0000 70%) 0 0/200% 100%,repeating-linear-gradient(115deg,#0000 0 14px,#ffffff0f 14px 15px);animation:2.4s linear infinite mg-sheen}@keyframes mg-sheen{0%{background-position:200% 0,0 0}to{background-position:-200% 0,0 0}}.clip.motion .c-label svg{color:#fff;filter:drop-shadow(0 0 4px var(--mc))}.ce{--ce-lh:20px;--ce-pad:12px;border:1px solid var(--line);min-height:0;font:13px/var(--ce-lh) var(--mono);background:#0a0a0d;border-radius:12px;flex:1;grid-template-columns:46px minmax(0,1fr);display:grid;position:relative;overflow:hidden}.ce-gutter{border-right:1px solid var(--line);color:var(--fg-3);text-align:right;-webkit-user-select:none;user-select:none;background:#0d0d11;overflow:hidden}.ce-gutter>div{padding:var(--ce-pad) 10px var(--ce-pad) 0;will-change:transform}.ce-gutter .err{color:#f87171;font-weight:700}.ce-body{position:relative;overflow:hidden}.ce-hl{padding:var(--ce-pad);font:inherit;line-height:var(--ce-lh);color:#d4d4d8;white-space:pre;pointer-events:none;tab-size:2;will-change:transform;min-width:100%;margin:0;position:absolute;top:0;left:0}.ce-hl .cl{height:var(--ce-lh);padding-right:40px}.ce-input{width:100%;height:100%;padding:var(--ce-pad);resize:none;color:#0000;caret-color:#fff;font:inherit;line-height:var(--ce-lh);white-space:pre;tab-size:2;-webkit-user-select:text;user-select:text;background:0 0;border:0;outline:none;margin:0;position:absolute;inset:0;overflow:auto}.ce-input::selection{color:#0000;background:#0a95ff59}.studio{z-index:900;background:radial-gradient(80% 60% at 100% 0%, #6228d724, transparent 60%), radial-gradient(60% 50% at 0% 100%, #ee2a7b1a, transparent 60%), var(--bg-1);animation:studio-in .34s var(--ease-out);flex-direction:column;display:flex;position:fixed;inset:0}@keyframes studio-in{0%{opacity:0;transform:scale(.985)translateY(10px)}}.studio-head{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;display:flex}.studio-head .grow{flex:1}.studio-title{align-items:center;gap:9px;font-size:14px;display:flex}.studio-logo{background:var(--grad);color:#fff;border-radius:9px;place-items:center;width:30px;height:30px;display:grid;box-shadow:0 6px 18px #ee2a7b59}.studio-name{width:220px;height:32px}.studio-kinds button small{color:var(--fg-3);margin-left:2px;font-size:9.5px;font-weight:800}.studio-kind{color:var(--fg-2);background:var(--bg-3);border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700}.studio-head .btn.on{background:var(--bg-4)}.studio-body{flex:1;grid-template-columns:minmax(0,1fr) minmax(320px,440px);gap:14px;min-height:0;padding:14px 16px 16px;display:grid}.studio-code{flex-direction:column;gap:8px;min-height:0;display:flex}.studio-bar{align-items:center;gap:8px;display:flex}.studio-bar .grow{flex:1}.select.sm{max-width:280px;height:30px;font-size:12px}.studio-status{border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.studio-status.ok{color:#86efac;background:#22c55e1f}.studio-status.bad{color:#fca5a5;animation:nudge-x .35s var(--ease);background:#ef444424}@keyframes nudge-x{25%{transform:translate(-3px)}75%{transform:translate(3px)}}.studio-error{color:#fca5a5;font:12px/1.45 var(--mono);background:#ef44441a;border:1px solid #ef444447;border-radius:10px;align-items:flex-start;gap:8px;padding:9px 11px;display:flex}.studio-error svg{flex-shrink:0;margin-top:2px}.studio-foot{color:var(--fg-3);align-items:center;gap:5px;font-size:11px;display:flex}.studio-side{flex-direction:column;gap:10px;min-height:0;display:flex}.studio-stage{border:1px solid var(--line-2);background:#000;border-radius:14px;flex-shrink:0;max-width:100%;max-height:58vh;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 20px 60px #0000008c}.studio-stage canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.studio-wait{color:var(--fg-3);place-items:center;font-size:12px;display:grid;position:absolute;inset:0}.studio-transport{align-items:center;gap:10px;font-size:11.5px;display:flex}.studio-transport .range{flex:1}.studio-params,.studio-docs{background:var(--bg-2);border:1px solid var(--line);border-radius:12px;flex:1;min-height:0;padding:12px;overflow:auto}.studio-docs pre{font:11px/1.55 var(--mono);color:#cbd5e1;white-space:pre-wrap;margin:0}.studio-panes{margin:10px 16px 0}.studio.compact .studio-head{padding:max(10px, env(safe-area-inset-top)) 12px 10px;gap:8px}.studio.compact .studio-name{flex:1;width:auto;min-width:120px}.studio.compact .studio-kinds{order:5;width:100%}.studio.compact .studio-title b{display:none}.studio.compact .studio-body{padding:10px 12px max(12px, env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr)}.studio.compact .ce{font-size:12.5px}.studio.compact .studio-stage{max-height:46dvh}@media (prefers-reduced-motion:reduce){.mg-tile,.mg-new,.studio,.clip.motion.selected .c-motion{animation:none}}:root{--c-comp:#c026d3;--c-mask:#22d3ee;--c-roto-add:#22c55e;--c-roto-remove:#f43f5e}.small-note{margin-top:6px;font-size:11px;line-height:1.45}.sub-title{letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);margin:12px 0 6px;font-size:10.5px;font-weight:700}.badge-ai{letter-spacing:.04em;color:#fff;background:var(--grad);border-radius:6px;margin-left:4px;padding:1px 6px;font-size:9.5px;font-weight:800}.spin{vertical-align:-2px;animation:1s linear infinite spin}.mask-list{flex-direction:column;gap:6px;margin-top:10px;display:flex}.mask-row{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg-3);transition:border-color .15s var(--ease)}.mask-row.sel{border-color:color-mix(in srgb, var(--c-mask) 60%, transparent);box-shadow:0 0 0 1px color-mix(in srgb, var(--c-mask) 25%, transparent)}.mask-row.off .mask-name{opacity:.5}.mask-head{align-items:center;gap:2px;padding:4px 4px 4px 8px;display:flex}.mask-name{background:0 0;border:1px solid #0000;border-radius:6px;flex:1;min-width:0;height:26px;padding:0 6px;font-size:12px;font-weight:600}.mask-name:focus{border-color:var(--accent);background:var(--bg-2);outline:none}.mask-body{flex-direction:column;gap:2px;padding:4px 10px 10px;display:flex}.mask-body .select{margin-bottom:6px}.roto-box{border-radius:var(--r-sm);background:var(--bg-3);margin-top:10px;padding:10px}.roto-frames{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.roto-frames .chip{font-variant-numeric:tabular-nums;height:24px;font-size:11px}.cutout-run{margin:12px 0 4px}.progress{background:var(--bg-4);border-radius:3px;height:6px;overflow:hidden}.progress i{background:var(--grad);height:100%;transition:width .25s var(--ease);border-radius:3px;display:block}.key-swatch{border-radius:8px;flex-shrink:0;width:34px;height:30px}.lm-sect{border-bottom:1px solid var(--line)}.lm-head{width:100%;height:38px;color:var(--fg);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 2px;font-size:12.5px;font-weight:700;display:flex}.lm-head .grow{flex:1}.lm-chev{color:var(--fg-3);transition:transform .18s var(--ease)}.lm-sect.open .lm-chev{transform:rotate(90deg)}.lm-dot{background:var(--accent);border-radius:50%;width:6px;height:6px}.lm-body{animation:pop-in .16s var(--ease);padding:0 2px 14px}.tint-row{justify-content:space-between;margin:6px 0 2px;font-size:12px}.tint-row .swatch{border-radius:6px;width:28px;height:22px}.curve-tabs{flex-wrap:wrap;gap:3px;margin-bottom:8px;display:flex}.curve-tabs button{border:1px solid var(--line);background:var(--bg-3);height:24px;color:var(--fg-2);cursor:pointer;border-radius:6px;padding:0 7px;font-size:10.5px;font-weight:700}.curve-tabs button.set{color:var(--cc)}.curve-tabs button.on{border-color:var(--cc,var(--accent));color:var(--fg);background:var(--bg-4)}.curve-editor{aspect-ratio:1;border-radius:var(--r-sm);border:1px solid var(--line);touch-action:none;cursor:crosshair;background:#0d0d10;width:100%;display:block}.curve-grid line{stroke:#ffffff12;stroke-width:1px}.curve-ref{stroke:#ffffff29;stroke-dasharray:3 4}.curve-line{fill:none;stroke-width:2px;pointer-events:none}.curve-pt{fill:#0d0d10;stroke:#fff;stroke-width:2px;cursor:grab}.curve-pt:hover{fill:#fff}.wheels{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.wheel{flex-direction:column;align-items:center;gap:4px;min-width:0;display:flex}.wheel-disc{aspect-ratio:1;border:2px solid var(--bg-4);touch-action:none;cursor:crosshair;border-radius:50%;width:100%;position:relative;box-shadow:inset 0 0 0 1px #00000080}.wheel-puck{pointer-events:none;border:2px solid #fff;border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;position:absolute;box-shadow:0 0 0 1.5px #0009}.wheel-label{color:var(--fg-2);font-size:11px;font-weight:600}.wheel-luma{width:100%}.hue-chip{border-radius:3px;height:6px;margin-bottom:6px}.comp-card{border-radius:var(--r);background:color-mix(in srgb, var(--c-comp) 16%, var(--bg-3));border:1px solid color-mix(in srgb, var(--c-comp) 35%, transparent);align-items:center;gap:10px;padding:10px 12px;display:flex}.comp-card>svg{color:#f0abfc;flex-shrink:0}.comp-card>div{flex-direction:column;flex:1;min-width:0;display:flex}.comp-card small{color:var(--fg-2);font-size:11px}.comp-name{background:0 0;border:1px solid #0000;border-radius:6px;height:26px;margin-left:-4px;padding:0 4px;font-size:13px;font-weight:700}.comp-name:focus{border-color:var(--accent);background:var(--bg-2);outline:none}.precomp-row{border-radius:var(--r-sm);background:var(--bg-3);align-items:center;gap:8px;margin-top:6px;padding:7px 8px;display:flex}.precomp-row>svg{color:#f0abfc}.precomp-row .grow{flex-direction:column;flex:1;min-width:0;display:flex}.precomp-row b{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.precomp-row small{color:var(--fg-3);font-size:10.5px}.precomp-row.open{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--c-comp) 55%, transparent)}.tool-overlay{touch-action:none}.tool-svg{pointer-events:none;position:absolute;inset:0;overflow:visible}.mask-tool{cursor:default}.mask-tool.drawing{cursor:crosshair}.mask-outline{fill:color-mix(in srgb, var(--c-mask) 6%, transparent);stroke:#facc15;stroke-width:1.5px;stroke-dasharray:5 4;vector-effect:non-scaling-stroke}.mask-outline.sel{stroke:var(--c-mask);stroke-dasharray:none;stroke-width:2px;fill:color-mix(in srgb, var(--c-mask) 10%, transparent)}.mask-outline.sub{stroke:#fb7185}.mask-outline.off{opacity:.4}.mask-outline.draft{stroke:#fff;stroke-dasharray:4 3;fill:#ffffff0f}polyline.mask-outline{fill:none}.mask-handle,.mask-vertex{border:2px solid var(--c-mask);touch-action:none;background:#fff;border-radius:3px;width:12px;height:12px;margin:-6px 0 0 -6px;position:absolute;box-shadow:0 1px 4px #00000080}.mask-handle{cursor:move}.mask-handle.nw,.mask-handle.se{cursor:nwse-resize}.mask-handle.ne,.mask-handle.sw{cursor:nesw-resize}.mask-handle.n,.mask-handle.s{cursor:ns-resize}.mask-handle.e,.mask-handle.w{cursor:ew-resize}.mask-vertex{cursor:grab;border-radius:50%}.mask-vertex.pending{background:var(--c-mask);pointer-events:none;border-color:#fff}.mask-vertex.close{border-color:var(--c-mask);background:#fff;width:16px;height:16px;margin:-8px 0 0 -8px}.roto-tool{cursor:none}.roto-stroke{fill:none;stroke-width:6px;stroke-linecap:round;stroke-linejoin:round;opacity:.85}circle.roto-stroke{stroke-width:3px}.roto-stroke.add{stroke:var(--c-roto-add);fill:none}.roto-stroke.remove{stroke:var(--c-roto-remove)}.roto-stroke.live{opacity:1;filter:drop-shadow(0 0 4px #0009)}.roto-cursor{border:2px solid var(--c-roto-add);pointer-events:none;border-radius:50%;width:22px;height:22px;margin:-11px 0 0 -11px;position:absolute;box-shadow:0 0 0 1px #0009}.roto-cursor.remove{border-color:var(--c-roto-remove)}.roto-cursor:after{content:"+";color:#fff;text-shadow:0 1px 2px #000;place-items:center;font-size:13px;font-weight:800;display:grid;position:absolute;inset:0}.roto-cursor.remove:after{content:"−"}.eyedropper{cursor:crosshair}.eyedrop-swatch{width:36px;height:36px;box-shadow:var(--shadow-sm);pointer-events:none;border:2px solid #fff;border-radius:10px;position:absolute;bottom:12px;right:12px}.tool-bar{white-space:nowrap}.tool-bar .tb-label{color:var(--fg-2);align-items:center;gap:5px;padding:0 6px 0 4px;font-size:12px;font-weight:700;display:inline-flex}.tool-bar .chip{gap:5px}.clip.comp{background:linear-gradient(180deg, #ffffff12, transparent 55%), linear-gradient(120deg, color-mix(in srgb, var(--c-comp) 62%, #000), color-mix(in srgb, var(--c-comp) 36%, #000))}.clip.comp .c-comp{pointer-events:none;opacity:.4;background:repeating-linear-gradient(90deg,#0000 0 22px,#ffffff12 22px 23px),repeating-linear-gradient(0deg,#0000 0 9px,#0000001f 9px 10px);position:absolute;inset:0}.clip.comp:after{content:"";box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--c-comp) 70%, #fff 10%);pointer-events:none;border-radius:8px;position:absolute;inset:0}.clip.matte-source{opacity:.62;background-image:repeating-linear-gradient(135deg,#00000040 0 6px,#0000 6px 12px)}.c-badges{pointer-events:auto;gap:3px;display:flex;position:absolute;bottom:5px;left:7px}.c-badge{color:#fff;background:#0000008c;border-radius:5px;place-items:center;min-width:16px;height:16px;padding:0 3px;font-size:9.5px;font-weight:700;display:inline-grid}.c-badge.matte{color:#111;text-transform:uppercase;letter-spacing:.04em;background:#facc15e6}.comp-crumbs{background:color-mix(in srgb, var(--c-comp) 14%, var(--bg-1));border-bottom:1px solid color-mix(in srgb, var(--c-comp) 35%, transparent);height:34px;animation:pop-in .18s var(--ease);flex-shrink:0;align-items:center;gap:6px;padding:0 10px;display:flex}.crumb{height:24px;color:var(--fg-2);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:5px;padding:0 8px;font-size:12px;font-weight:700;display:inline-flex}button.crumb:hover{color:var(--fg);background:#ffffff14}.crumb.here{color:#f5d0fe;cursor:default}.crumb-note{white-space:nowrap;text-overflow:ellipsis;margin-left:auto;font-size:11px;overflow:hidden}@media (max-width:959px){.crumb-note{display:none}.wheels{gap:6px}}.comp-tabs{background:var(--bg-1);border-bottom:1px solid var(--line);scrollbar-width:none;flex-shrink:0;align-items:flex-end;gap:2px;height:32px;padding:0 8px;display:flex;overflow-x:auto}.comp-tab{max-width:220px;height:27px;color:var(--fg-3);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-bottom:0;border-radius:8px 8px 0 0;flex-shrink:0;align-items:center;gap:6px;padding:0 8px 0 10px;font-size:12px;font-weight:600;display:inline-flex}.comp-tab span{text-overflow:ellipsis;overflow:hidden}.comp-tab small{color:var(--fg-3);font-size:10px;font-weight:600}.comp-tab:hover{color:var(--fg);background:#ffffff0a}.comp-tab.on{color:var(--fg);background:color-mix(in srgb, var(--c-comp) 16%, var(--bg-2));border-color:color-mix(in srgb, var(--c-comp) 45%, transparent)}.comp-tab.seq.on{background:var(--bg-3);border-color:var(--line-2)}.comp-tab-x{width:16px;height:16px;color:var(--fg-3);border-radius:4px;place-items:center;display:grid}.comp-tab-x:hover{color:var(--fg);background:#ffffff1a}.comp-nav{white-space:nowrap;align-self:center;align-items:center;gap:2px;margin-left:10px;display:inline-flex}.comp-nav-step{align-items:center;display:inline-flex}.comp-tabs-end{align-self:center;align-items:center;gap:4px;margin-left:auto;padding-left:8px;display:inline-flex}.comp-settings{flex-direction:column;gap:14px;display:flex}.comp-settings h2{align-items:center;gap:8px;display:flex}.cs-field{grid-template-columns:92px 1fr;align-items:center;gap:12px;font-size:12.5px;display:grid}.cs-field>span:first-child{color:var(--fg-2);font-weight:600}.cs-presets{grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.cs-preset{border:1px solid var(--line-2);background:var(--bg-2);color:var(--fg-2);border-radius:9px;flex-direction:column;align-items:center;gap:3px;padding:8px 2px 6px;display:flex}.cs-preset i{border:1.5px solid;border-radius:3px;max-width:34px;height:22px;display:block}.cs-preset b{font-size:11.5px}.cs-preset small{color:var(--fg-3);font-size:9.5px}.cs-preset.on{color:var(--fg);border-color:var(--accent);background:var(--accent-soft)}.cs-dur{grid-template-columns:auto 1fr;align-items:center;gap:6px 10px;display:grid}.cs-dur small{grid-column:1/-1}.cs-dur .input.bad{border-color:var(--red)}.cs-check{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.cs-bg{align-items:center;gap:8px;display:flex}.cs-bg input[type=color]{border:1px solid var(--line-2);background:0 0;border-radius:6px;width:36px;height:28px;padding:0}.cs-bg small{line-height:1.3}.cs-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}@media (max-width:600px){.cs-presets{grid-template-columns:repeat(3,1fr)}.cs-field{grid-template-columns:1fr;gap:6px}}.pf-choices{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.pf-opts{grid-template-columns:1fr 1fr;gap:8px;display:grid}.pf-opt{border:1px solid var(--line-2);background:var(--bg-2);color:var(--fg-2);text-align:left;border-radius:11px;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;display:flex}.pf-opt b{color:var(--fg);font-size:13px}.pf-opt small{color:var(--fg-3);font-size:11.5px;line-height:1.35}.pf-opt.on{border-color:var(--accent);background:var(--accent-soft)}.pf-check{white-space:normal;align-items:flex-start;font-size:12.5px}.pf-check input{margin-top:2px}.pf-check small{margin-top:2px;display:block}.pf-warn{color:var(--amber);background:color-mix(in srgb, var(--amber) 12%, transparent);border-radius:9px;padding:9px 11px;font-size:12px}.pf-busy{z-index:400}.pf-busy .modal{flex-direction:column;gap:10px;display:flex}.pf-busy-head{align-items:center;gap:9px;font-size:13.5px;display:flex}.pf-busy-head b{flex:1}.pf-bar{background:var(--bg-4);border-radius:999px;height:6px;overflow:hidden}.pf-bar i{border-radius:inherit;background:var(--accent);height:100%;transition:width .2s var(--ease);display:block}.pf-bar i.indeterminate{width:35%;animation:pf-slide 1.1s var(--ease) infinite}@keyframes pf-slide{0%{transform:translate(-100%)}to{transform:translate(300%)}}.pf-detail{white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.file-btn{height:30px;color:var(--fg-2);border-radius:9px;align-items:center;gap:5px;max-width:220px;padding:0 9px;font-size:12.5px;font-weight:600;display:inline-flex}.file-btn:hover{background:var(--bg-3);color:var(--fg)}.file-btn span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.missing-chip{height:26px;color:var(--amber);background:color-mix(in srgb, var(--amber) 14%, transparent);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:0 9px;font-size:12px;font-weight:600;display:inline-flex}.missing-chip:hover{background:color-mix(in srgb, var(--amber) 22%, transparent)}.bin-row.missing .bin-name b,.bin-card.missing .bin-card-name{color:var(--amber)}:root{--c-3d:#f97316}.clip.scene3d{background:linear-gradient(180deg, #ffffff14, transparent 55%), linear-gradient(120deg, color-mix(in srgb, var(--c-3d) 66%, #000) 0%, color-mix(in srgb, var(--c-3d) 34%, #000) 100%);border-color:color-mix(in srgb, var(--c-3d) 60%, #fff 0%)}.clip.scene3d .c-3d{pointer-events:none;opacity:.32;background:repeating-linear-gradient(90deg,#0000 0 17px,#ffffff17 17px 18px),repeating-linear-gradient(0deg,#0000 0 7px,#00000024 7px 8px);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 10%,#000 100%);mask-image:linear-gradient(#0000 10%,#000 100%)}.clip.scene3d.selected .c-3d{opacity:.55}.clip.scene3d .c-label svg{color:#fff;filter:drop-shadow(0 0 4px var(--c-3d))}.m3-filters{margin-bottom:12px}.m3-group{margin-bottom:16px}.m3-group .panel-sub{align-items:center;gap:6px;display:flex}.m3-sub-hint{letter-spacing:0;text-transform:none;color:var(--fg-3);margin-left:auto;font-size:10.5px;font-weight:500}.m3-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.m3-tile{cursor:grab;animation:item-in .46s var(--ease-out) backwards;animation-delay:calc(var(--i,0) * 22ms);position:relative}.m3-tile:active{cursor:grabbing}.m3-thumb{aspect-ratio:1;border:1px solid var(--line);transition:transform .32s var(--spring), border-color .15s var(--ease), box-shadow .25s var(--ease);background:radial-gradient(circle at 50% 38%,#2a2a32 0%,#141418 62%,#0d0d10 100%);border-radius:12px;place-items:center;display:grid;position:relative;overflow:hidden}.m3-tile.fx .m3-thumb{background:radial-gradient(circle,#1d1830 0%,#0c0b12 70%)}.m3-thumb img{object-fit:contain;width:100%;height:100%;transition:transform .4s var(--spring);display:block}.m3-wait{color:var(--fg-3)}.m3-tile:hover .m3-thumb{border-color:color-mix(in srgb, var(--c-3d) 55%, transparent);box-shadow:0 12px 26px #00000073, 0 10px 28px -10px color-mix(in srgb, var(--c-3d) 50%, transparent);transform:translateY(-2px)}.m3-tile:hover .m3-thumb img{transform:scale(1.07)rotate(-3deg)}.m3-tile:active .m3-thumb{transform:scale(.96)}.m3-badge{letter-spacing:.05em;text-transform:uppercase;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000080;border-radius:999px;align-items:center;height:16px;padding:0 6px;font-size:9px;font-weight:800;display:inline-flex;position:absolute;top:5px;left:5px}.m3-tile .mc-add{color:#000;opacity:0;width:26px;height:26px;transition:all .15s var(--ease);box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:5px;right:5px;transform:scale(.8)}.m3-tile:hover .mc-add,.m3-tile .mc-add:focus-visible{opacity:1;transform:scale(1)}.m3-tile .mg-tools{opacity:0;transition:opacity .15s var(--ease);gap:3px;display:flex;position:absolute;top:5px;right:5px}.m3-tile .mg-tools .icon-btn{color:#fff;background:#0009}.m3-tile:hover .mg-tools{opacity:1}.m3-name{text-align:center;color:var(--fg-2);white-space:nowrap;text-overflow:ellipsis;transition:color .15s var(--ease);margin-top:5px;font-size:11.5px;font-weight:600;overflow:hidden}.m3-tile:hover .m3-name{color:var(--fg)}.m3-new{aspect-ratio:1;border:1.5px dashed var(--line-3);color:var(--fg-2);text-align:center;transition:all .2s var(--ease);animation:item-in .46s var(--ease-out) backwards;border-radius:12px;place-content:center;justify-items:center;gap:2px;padding:6px;display:grid}.m3-new .mg-new-ic{border-radius:10px;width:32px;height:32px;margin-bottom:2px}.m3-new b{color:var(--fg);font-size:11.5px}.m3-new small{color:var(--fg-3);font-size:10px;line-height:1.25}.m3-new:hover{color:var(--fg);background:var(--bg-3);border-color:#fff}.m3-kits{gap:6px;display:grid}.m3-kit{text-align:left;background:var(--bg-3);border:1px solid var(--line);transition:all .15s var(--ease);border-radius:12px;gap:2px;padding:10px 12px;display:grid}.m3-kit b{color:var(--fg);font-size:12.5px}.m3-kit small{color:var(--fg-3);font-size:11px}.m3-kit:hover{background:var(--bg-4);border-color:color-mix(in srgb, var(--c-3d) 60%, transparent)}.m3-kit:active{transform:scale(.98)}.m3-plate{background:var(--bg-3);border:1px solid var(--line);color:var(--fg-2);border-radius:12px;gap:8px;margin-bottom:14px;padding:10px 12px;font-size:12px;display:grid}.m3-plate.free,.m3-plate.warn{align-items:flex-start;gap:8px;line-height:1.45;display:flex}.m3-plate.free svg,.m3-plate.warn svg{flex-shrink:0;margin-top:2px}.m3-plate.warn{color:#fcd34d;background:#f59e0b14;border-color:#f59e0b4d}.m3-plate-name{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:130px;color:var(--fg);display:inline-block;overflow:hidden}.m3-plate .trk{border:0;margin:0;padding:0}.obj-list{gap:3px;display:grid}.obj-row{cursor:pointer;transition:background .12s var(--ease), border-color .12s var(--ease);border:1px solid #0000;border-radius:10px;align-items:center;gap:9px;padding:5px 6px;display:flex}.obj-row:hover{background:var(--bg-3)}.obj-row.on{background:var(--bg-3);border-color:color-mix(in srgb, var(--c-3d) 55%, transparent)}.obj-row.hidden .obj-thumb,.obj-row.hidden .obj-text{opacity:.42}.obj-thumb{width:34px;height:34px;color:var(--fg-3);background:#121216;border-radius:8px;flex-shrink:0;place-items:center;display:grid;overflow:hidden}.obj-thumb img{object-fit:contain;width:100%;height:100%}.obj-text{flex:1;min-width:0;display:grid}.obj-text b,.obj-text small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.obj-text b{color:var(--fg);font-size:12.5px;font-weight:600}.obj-text small{color:var(--fg-3);font-size:11px}.obj-editor{animation:rise-in .3s var(--ease-out)}.obj-head{gap:6px;margin-bottom:4px}.obj-name{flex:1;min-width:0;height:32px;font-weight:600}.m3-lights{gap:8px;margin-top:12px;display:grid}.m3-light{background:var(--bg-3);border-radius:10px;gap:4px;padding:10px;display:grid}.m3-light .select.sm{width:auto;height:26px}.scrub{background:var(--bg-3);min-width:0;height:28px;transition:border-color .12s var(--ease);border:1px solid #0000;border-radius:8px;align-items:center;display:flex;overflow:hidden}.scrub:hover{border-color:var(--line-2)}.scrub:focus-within{border-color:var(--accent)}.scrub-l{color:var(--fg-3);cursor:ew-resize;-webkit-user-select:none;user-select:none;touch-action:none;white-space:nowrap;align-self:stretch;align-items:center;padding:0 7px;font-size:11px;font-weight:700;display:flex}.scrub-l:hover{color:var(--fg)}.scrub-n{width:100%;min-width:0;height:100%;color:var(--fg);font-variant-numeric:tabular-nums;text-align:right;background:0 0;border:0;outline:0;flex:1;padding:0 7px 0 0;font-size:12px}.vec3{margin-bottom:10px}.vec3-l{color:var(--fg-2);margin-bottom:5px;font-size:12px;font-weight:500}.vec3-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;display:grid}.sel-field .select{width:100%}.trk-kinds{flex-wrap:wrap;gap:5px;margin-bottom:10px;display:flex}.trk-kinds .chip{gap:4px;height:26px;padding:0 10px}.trk-kinds .chip.ok:not(.on){color:#86efac}.trk-kinds .chip.ok svg{color:#22c55e}.trk-kinds .chip.on.ok svg{color:#15803d}.trk-events{margin-top:10px}.trk-chips{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.trk-events .trk-chips{max-height:184px;overflow:auto}.trk-chips .chip{gap:5px;height:24px;padding:0 8px;font-size:11px}.trk-dot{background:var(--fg-3);border-radius:50%;width:7px;height:7px}.trk-dot.gesture{background:#f472b6}.trk-dot.hand{background:#fb923c}.trk-dot.face{background:#facc15}.trk-dot.head{background:#a3e635}.trk-dot.pose{background:#38bdf8}.trk-dot.person{background:#a78bfa}.trk-t{font-variant-numeric:tabular-nums;color:var(--fg-3);font-weight:500}.chip.on .trk-t{color:#555}.vis-list{flex-direction:column;gap:2px;max-height:220px;margin-top:6px;display:flex;overflow:auto}.vis-row{border-radius:6px;align-items:center;gap:6px;min-height:26px;display:flex}.vis-row:hover{background:var(--bg-2)}.vis-name{min-width:0;height:26px;color:var(--fg);cursor:pointer;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:6px;padding:0 6px;font-size:11px;display:flex}.vis-name b{color:var(--fg-3);flex:none;font-weight:600}.vis-name span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trk-dot.text{background:#ffd84d}.trk-dot.object{background:#38e1ff}.stage-box canvas.trk-overlay{pointer-events:none;background:0 0;width:100%;height:100%;position:absolute;inset:0}.m3-parts-bar{flex-wrap:wrap;gap:4px;display:flex}.m3-parts-bar .chip{gap:3px;height:24px;padding:0 8px;font-size:11px}.m3-stage{touch-action:none;background:radial-gradient(circle at 50% 36%,#2c2c35 0%,#141418 58%,#0a0a0c 100%)}.m3-stage canvas{cursor:grab}.m3-stage canvas:active{cursor:grabbing}.m3-stage-tools{gap:4px;display:flex;position:absolute;top:8px;right:8px}.m3-stage-tools .icon-btn{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000073}.m3-dims{font-variant-numeric:tabular-nums;color:#ffffffc7;pointer-events:none;background:#0000006b;border-radius:999px;padding:2px 8px;font-size:11px;position:absolute;bottom:9px;left:10px}.m3-studio .studio-side>.small-note{text-align:center;margin:-4px 0 0}.m3-settings{align-content:start;gap:10px;display:grid}.m3-settings .field{margin-bottom:0}.m3-warnings{color:#fcd34d;gap:2px;display:grid}.m3-tile.on .m3-thumb{border-color:var(--c-3d);box-shadow:0 0 0 2px color-mix(in srgb, var(--c-3d) 70%, transparent), 0 10px 28px -10px color-mix(in srgb, var(--c-3d) 60%, transparent)}.m3-tile.on .m3-name{color:var(--fg)}.m3-tile.on .mc-add{opacity:1;transform:scale(1)}.m3-picked{color:var(--fg-2);background:color-mix(in srgb, var(--c-3d) 12%, var(--bg-2));border:1px solid color-mix(in srgb, var(--c-3d) 40%, transparent);animation:item-in .3s var(--ease-out);border-radius:12px;align-items:center;gap:8px;margin:2px 0 12px;padding:8px 8px 8px 10px;font-size:11.5px;line-height:1.35;display:flex}.m3-picked>span{flex:1;min-width:0}.m3-picked svg{vertical-align:-1px}.obj-zone{transition:background .15s var(--ease), box-shadow .15s var(--ease);border-radius:14px;position:relative}.obj-zone.drop-over{background:color-mix(in srgb, var(--c-3d) 10%, transparent);box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--c-3d) 70%, transparent)}.obj-empty{border:1px dashed var(--line-2);color:var(--fg-3);border-radius:12px;align-items:center;gap:10px;padding:14px 12px;font-size:12px;display:flex}.obj-empty svg{flex-shrink:0}.obj-drop-hint{text-align:center;color:var(--c-3d);margin-top:6px;font-size:11.5px;font-weight:600}.obj-quick{gap:5px;max-width:150px;padding-left:4px}.obj-quick-thumb{background:#121216;border-radius:6px;flex-shrink:0;place-items:center;width:20px;height:20px;display:grid;overflow:hidden}.obj-quick-thumb img{object-fit:contain;width:100%;height:100%}.obj-quick-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.m3-picker{flex-direction:column;gap:10px;width:380px;max-width:calc(100vw - 16px);max-height:min(560px,100vh - 16px);padding:12px;display:flex}.m3p-head b{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;overflow:hidden}.m3p-search{background:var(--bg-3);border:1px solid var(--line);height:34px;color:var(--fg-3);border-radius:10px;align-items:center;gap:8px;padding:0 10px;display:flex}.m3p-search:focus-within{border-color:color-mix(in srgb, var(--c-3d) 60%, transparent)}.m3p-search input{min-width:0;height:100%;color:var(--fg);font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:13px}.m3p-kinds{flex-wrap:wrap;gap:5px;display:flex}.m3p-picked{gap:5px;font-size:11px;display:grid}.m3p-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;min-height:0;margin:-2px;padding:2px;display:grid;overflow-y:auto}.m3p-tile{color:var(--fg-2);cursor:pointer;background:0 0;border:0;justify-items:center;gap:4px;padding:0;display:grid}.m3p-tile.wide{background:color-mix(in srgb, var(--c-3d) 10%, var(--bg-3));border:1px solid color-mix(in srgb, var(--c-3d) 45%, transparent);text-align:left;border-radius:12px;grid-template-columns:44px minmax(0,1fr);place-items:center start;gap:10px;padding:5px}.m3p-thumb{aspect-ratio:1;border:1px solid var(--line);width:100%;transition:transform .25s var(--spring), border-color .12s var(--ease);background:radial-gradient(circle at 50% 38%,#2a2a32 0%,#141418 62%,#0d0d10 100%);border-radius:10px;place-items:center;display:grid;overflow:hidden}.m3p-tile.wide .m3p-thumb{width:44px}.m3p-thumb img{object-fit:contain;width:100%;height:100%}.m3p-tile:hover .m3p-thumb,.m3p-tile:focus-visible .m3p-thumb{border-color:color-mix(in srgb, var(--c-3d) 60%, transparent);transform:translateY(-1px)}.m3p-tile.on .m3p-thumb{border-color:var(--c-3d);box-shadow:0 0 0 2px color-mix(in srgb, var(--c-3d) 60%, transparent)}.m3p-name{text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:10.5px;font-weight:600;overflow:hidden}.m3p-tile.wide .m3p-name{text-align:left;color:var(--fg);gap:2px;font-size:12.5px;display:grid}.m3p-name small{color:var(--fg-3);align-items:center;gap:4px;font-size:10.5px;font-weight:500;display:flex}.m3-picker.sheetish{width:min(420px,100vw - 16px)}.trk-q{background:var(--bg-3);border:1px solid var(--line);border-radius:12px;gap:7px;margin-top:10px;padding:9px 10px 10px;display:grid}.trk-q-head{color:var(--fg-2);justify-content:space-between;align-items:center;font-size:11.5px;font-weight:700;display:flex}.trk-q-head>span{align-items:center;gap:6px;display:inline-flex}.trk-q-more-btn{color:var(--fg-3);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:3px;padding:2px 6px;font-size:11px;font-weight:600;display:inline-flex}.trk-q-more-btn:hover{color:var(--fg)}.trk-q-more-btn svg{transition:transform .2s var(--ease)}.trk-q-more-btn.on svg{transform:rotate(180deg)}.trk-q .seg button{font-size:11.5px}.trk-q-more{animation:item-in .25s var(--ease-out);gap:8px;padding-top:4px;display:grid}.trk-q-more .field{min-height:0;margin:0;display:block}.trk-q-more .field>label{color:var(--fg-3);white-space:normal;margin-bottom:4px;font-size:11px;display:block}.parts-box{gap:6px;margin:10px 0 4px;display:grid}.pp{gap:8px;display:grid}.pp-quick,.pp-mats{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.pp-mats>.faint{margin-right:2px;font-size:11px}.pp-tree{background:var(--bg-3);border:1px solid var(--line);border-radius:12px;max-height:300px;padding:4px;overflow-y:auto}.pp-row{border-radius:7px;align-items:center;gap:2px;min-height:26px;display:flex}.pp-row:hover{background:#ffffff0d}.pp-twist{width:18px;height:18px;color:var(--fg-3);cursor:pointer;background:0 0;border:0;flex-shrink:0;place-items:center;padding:0;display:grid}.pp-twist svg{transition:transform .15s var(--ease)}.pp-twist.open svg{transform:rotate(90deg)}.pp-pick{min-width:0;color:var(--fg-2);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:7px;padding:3px 6px 3px 2px;font-size:12px;display:flex}.pp-row.on .pp-pick{color:var(--fg)}.pp-box{border:1.5px solid var(--line-2);color:#fff;width:15px;height:15px;transition:background .12s var(--ease), border-color .12s var(--ease);border-radius:4px;flex-shrink:0;place-items:center;display:grid}.pp-box.all,.pp-box.some{background:var(--accent);border-color:var(--accent)}.pp-box.some{background:color-mix(in srgb, var(--accent) 55%, transparent)}.pp-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px;box-shadow:0 0 0 1px #00000059}.pp-dot.group{background:conic-gradient(coral,#26a69a,#42a5f5,#ec407a,coral)}.pp-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.pp-count{color:var(--fg-3);margin-left:auto;font-size:10.5px}.stage-box canvas.trk-overlay.parts{image-rendering:pixelated}.trk-looks{gap:6px;margin-top:10px;display:grid}.wrap-row.off{opacity:.55}.parts-box .field,.pp .field{display:block}.pp .field>label{margin-bottom:4px;display:block}.fxp{flex-direction:column;gap:6px;display:flex;position:relative}.fx-bar{z-index:5;background:var(--bg-1);padding-bottom:6px;position:sticky;top:0}.fx-bar-btns{align-items:center;gap:6px;display:flex}.fx-bar-btns .grow{flex:1}.fx-icon{width:24px;min-width:24px;height:24px;color:var(--fg-3);background:0 0;border-radius:6px;place-items:center;font-size:11px;font-weight:700;display:inline-grid}.fx-icon:hover:not(:disabled){background:var(--bg-4);color:var(--fg)}.fx-icon.lit{color:var(--fg)}.fx-icon:disabled{opacity:.35;cursor:default}.fxp button:focus-visible,.fxp [tabindex]:focus-visible,.fx-pop input:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.fx-group{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg-2)}.fx-group-head{width:100%;min-height:32px;color:var(--fg-2);text-align:left;background:0 0;align-items:center;gap:6px;padding:0 8px;display:flex}.fx-group-head b{color:var(--fg);white-space:nowrap;font-size:12px;font-weight:600}.fx-sum{color:var(--fg-2);white-space:nowrap;text-overflow:ellipsis;min-width:0;margin-left:auto;font-size:11px;overflow:hidden}.fx-group-body{border-top:1px solid var(--line);padding:4px 10px 8px}.fx-order{color:var(--fg-2);text-transform:none;align-items:center;gap:8px;margin-top:6px;font-size:11px;font-weight:600;display:flex}.fx-order em{color:var(--fg-3);margin-left:auto;font-style:normal}.fx-stack{flex-direction:column;gap:4px;display:flex;position:relative}.fx-entry{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg-2)}.fx-entry.sel{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.fx-entry.in-group.sel{box-shadow:inset 3px 0 0 var(--accent)}.fx-head{cursor:default;-webkit-user-select:none;user-select:none;touch-action:none;align-items:center;gap:2px;min-height:32px;padding:0 4px;display:flex}.fx-head:hover{background:var(--bg-3);border-radius:var(--r-sm)}.fx-grip,.fx-pin,.fx-grip-gap{width:16px;color:var(--fg-3);cursor:grab;place-items:center;display:inline-grid}.fx-pin{cursor:default}.fx-grip-gap{width:4px}.fx-twirl{width:20px;height:24px;color:var(--fg-2);background:0 0;place-items:center;display:inline-grid}.fx-fx{min-width:24px;height:18px;color:var(--accent-2);background:var(--accent-soft);border-radius:4px;margin:0 6px 0 2px;padding:0 4px;font-size:10px;font-style:italic;font-weight:800}.fx-fx:not(.on){color:var(--fg-3);background:var(--bg-4);text-decoration:line-through}.fx-name{text-align:left;min-width:0;color:var(--fg);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;flex:auto;font-size:12px;font-weight:600;overflow:hidden}.fx-name small{color:var(--fg-2);margin-left:6px;font-size:10px;font-weight:500}.fx-offtag{border:1px solid var(--line-3);border-radius:4px;padding:0 4px}.fx-entry.off .fx-name{color:var(--fg-2)}.fx-head .fx-sum{flex:0 auto;max-width:36%;margin:0 4px}.fx-body{border-top:1px solid var(--line);padding:4px 10px 10px 12px}.fx-entry.off .fx-params{opacity:.8}.fx-gcard-unused>.fx-gbody{border-top:1px solid var(--line)}.fx-gcard-unused .fx-entry.in-group .fx-head{background:var(--bg-3);border-radius:0}.fx-gcard-unused .fx-entry.in-group:first-child{border-top:0}.fx-insert{background:var(--accent);height:2px;box-shadow:0 0 0 3px var(--accent-soft);border-radius:2px;margin:-3px 0}body.fx-dragging,body.fx-dragging .fx-head{cursor:grabbing}.fx-param{grid-template-columns:22px 84px minmax(0,1fr) 22px;align-items:center;gap:4px;min-height:28px;display:grid}.fx-stop,.fx-stop-gap{width:22px;height:22px;color:var(--fg-3);opacity:.55;cursor:not-allowed;background:0 0;place-items:center;display:inline-grid}.fx-plabel{text-align:left;color:var(--fg-2);white-space:nowrap;text-overflow:ellipsis;justify-self:start;font-size:12px;overflow:hidden}.fx-param.changed .fx-plabel{text-align:left;color:var(--fg);justify-self:start}.fx-pbody{justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.fx-track{appearance:none;--p:0%;background:0 0;flex:1;min-width:40px;height:14px}.fx-track::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--accent) var(--p), var(--fg-4) var(--p));border-radius:2px;height:4px}.fx-track::-webkit-slider-thumb{appearance:none;background:#fff;border-radius:50%;width:12px;height:12px;margin-top:-4px;box-shadow:0 1px 3px #00000080}.fx-scrub{text-align:right;font-variant-numeric:tabular-nums;min-width:62px;color:var(--fg);cursor:ew-resize;border-bottom:1px dotted var(--accent);-webkit-user-select:none;user-select:none;touch-action:none;border-radius:5px;padding:2px 6px;font-size:12px;position:relative}.fx-scrub:hover{background:var(--bg-3)}.fx-scrub.dragging{background:var(--accent);color:#fff;border-bottom-color:#0000}.fx-badge{background:var(--bg-5);color:var(--fg);border-radius:4px;padding:1px 4px;font-size:10px;font-style:normal;position:absolute;top:-2px;left:-34px}.fx-scrub-input{text-align:right;background:var(--bg-0);width:72px;height:24px;color:var(--fg);border:1px solid var(--accent);border-radius:5px;padding:0 6px;font-size:12px}.fx-reset{width:22px;height:22px;color:var(--fg-3);background:0 0;border-radius:5px;place-items:center;display:inline-grid}.fx-reset.lit{color:var(--fg)}.fx-reset:disabled{opacity:.25;cursor:default}.fx-check{width:16px;height:16px;accent-color:var(--accent)}.fx-swatch{border:1px solid var(--line-3);cursor:pointer;border-radius:5px;width:20px;height:20px;position:relative;overflow:hidden}.fx-swatch input{opacity:0;cursor:pointer;position:absolute;inset:0}.fx-hex{color:var(--fg-2);font-variant-numeric:tabular-nums;font-size:12px}.fx-select{max-width:100%}.fx-text{width:100%}.fx-subhead{color:var(--fg-2);margin:8px 0 2px;font-size:11px;font-weight:600}.fx-note{color:var(--fg-2);flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;font-size:11px;display:flex}.fx-empty{text-align:center;border:1px dashed var(--line-3);border-radius:var(--r);color:var(--fg-2);flex-direction:column;align-items:center;gap:8px;padding:18px 10px;display:flex}.fx-empty b{color:var(--fg);font-size:13px}.fx-empty p{max-width:240px;margin:0;font-size:11px}.fx-chips{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.fx-chip{background:var(--bg-4);height:26px;color:var(--fg);border-radius:999px;padding:0 10px;font-size:11px;font-weight:600}.fx-chip:hover{background:var(--bg-5)}.fx-pop{z-index:30;background:var(--bg-3);border:1px solid var(--line-3);border-radius:var(--r-sm);box-shadow:var(--shadow);padding:6px;position:absolute;top:36px;left:0;right:0}.fx-pop-search{background:var(--bg-1);color:var(--fg-3);border-radius:6px;align-items:center;gap:6px;padding:0 6px;display:flex}.fx-pop-search input{height:30px;color:var(--fg);background:0 0;border:0;flex:1;font-size:12px}.fx-pop-list{max-height:320px;margin-top:4px;overflow:auto}.fx-pop-cat{letter-spacing:.04em;text-transform:uppercase;color:var(--fg-2);padding:8px 6px 2px;font-size:10px;font-weight:700}.fx-pop-item{width:100%;min-height:28px;color:var(--fg);text-align:left;background:0 0;border-radius:6px;align-items:center;gap:8px;padding:0 8px;font-size:12px;display:flex}.fx-pop-item.on,.fx-pop-item:hover{background:var(--bg-5)}.fx-pop-item em{color:var(--fg-2);margin-left:auto;font-size:10px;font-style:normal}.fx-pop-item.preset{padding:0}.fx-preset-apply{min-height:28px;color:var(--fg);text-align:left;background:0 0;flex:1;align-items:center;gap:8px;padding:0 8px;font-size:12px;display:flex}.fx-pop-empty{color:var(--fg-2);padding:12px 8px;font-size:11px}.fx-pop-save{gap:6px;margin-top:6px;display:flex}.fx-pop-save input{background:var(--bg-1);border:1px solid var(--line-2);height:28px;color:var(--fg);border-radius:6px;flex:1;padding:0 8px;font-size:12px}@media (hover:none) and (pointer:coarse){.fx-head{min-height:44px}.fx-icon,.fx-reset,.fx-stop{width:32px;height:32px}.fx-param{grid-template-columns:0 76px minmax(0,1fr) 32px;min-height:40px}.fx-stop,.fx-stop-gap{display:none}}.fx-fx.unsupported{color:#1a1100;background:var(--amber);font-style:normal}.fx-fx.error{color:#fff;background:var(--red);font-style:normal}.fx-offtag.amber{color:var(--amber);border-color:var(--amber)}.fx-offtag.red{color:var(--red);border-color:var(--red)}.fx-banner{color:var(--fg);border:1px solid var(--amber);background:#f59e0b1f;border-radius:6px;flex-direction:column;gap:4px;margin:2px 0 8px;padding:8px 10px;font-size:11px;display:flex}.fx-banner.error{border-color:var(--red);background:#ef44441f}.fx-banner-actions{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.fx-multi{color:var(--fg-2);background:var(--bg-3);border-radius:6px;padding:6px 8px;font-size:11px}.sect-embed{padding:2px 0 6px}.fxl-search{height:32px;margin-bottom:8px}.fxl-search input{height:30px;color:var(--fg);background:0 0;border:0;flex:1;font-size:12px}.fxl-chips{flex-wrap:wrap;gap:4px;margin:6px 0;display:flex}.fxl-chips .chip{height:24px;padding:0 9px;font-size:11px}.fxl-list{flex-direction:column;gap:2px;display:flex}.fxl-item{background:var(--bg-2);cursor:grab;min-height:32px;color:var(--fg);border-radius:6px;align-items:center;gap:8px;padding:0 4px 0 10px;font-size:12px;display:flex}.fxl-item:hover{background:var(--bg-4)}.fxl-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.fxl-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.fxl-item em{color:var(--fg-2);font-size:10px;font-style:normal}.fx-stop.lit{color:var(--accent-2);opacity:1;cursor:pointer}.fx-stop:not(:disabled){cursor:pointer;opacity:.8}.fx-keynav{flex:none;align-items:center;gap:0;display:inline-flex}.fx-keynav button{width:18px;height:22px;color:var(--fg-2);background:0 0;place-items:center;display:inline-grid}.fx-keynav button.on{color:var(--accent-2)}.fx-keynav button:disabled{opacity:.3}.fx-chip-over{z-index:6;color:var(--fg);border:1px solid var(--line-3);pointer-events:auto;background:#141417d9;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:600;position:absolute;bottom:8px;left:8px}.fx-chip-over.warn{border-color:var(--amber);color:var(--amber)}html.is-dragging .toasts,html.is-dragging .toast{pointer-events:none}.fx-fx{min-width:28px;min-height:24px}.fx-stop,.fx-stop-gap,.fx-reset{width:24px;height:24px}.fx-param{grid-template-columns:24px 84px minmax(0,1fr) 24px}.fx-keynav button{width:22px;height:24px}.fx-groups{display:contents}@media (max-width:959px){.fx-groups{flex-direction:column;order:9;gap:6px;margin-top:8px;display:flex}}.fx-twirl,.fx-keynav button{width:24px}.scopes{border-top:1px solid var(--line-2);background:var(--bg-1);flex-direction:column;flex:none;height:188px;display:flex}.scopes-bar{align-items:center;gap:2px;height:26px;padding:0 8px;font-size:11.5px;display:flex}.scopes-bar strong{color:var(--fg-2);margin-right:8px;font-weight:700}.scopes-bar .grow{flex:1}.scopes-tab{height:20px;color:var(--fg-3);border-radius:5px;padding:0 8px;font-size:11.5px;font-weight:600}.scopes-tab:hover{color:var(--fg);background:var(--bg-3)}.scopes-tab.on{color:var(--fg);background:var(--bg-4)}.scopes-grid{flex:1;grid-template-columns:minmax(0,1fr);gap:6px;min-height:0;padding:0 8px 8px;display:grid}.scopes-grid[data-n="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}.scope-canvas{border:1px solid var(--line);border-radius:6px;width:100%;min-width:0;height:100%;min-height:0;display:block}.wheels.four{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}.wheel-head{align-items:center;gap:2px;width:100%;display:flex}.wheel-head .wheel-label{flex:1}.wheel-head .fx-stop,.wheel-head .fx-reset{width:20px;height:20px}.wheel .wheel-disc{width:min(100%,118px)}.wheel-nums{grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;width:100%;display:grid}.wheel-num{color:var(--fg-3);flex-direction:column;align-items:center;gap:0;font-size:10px;display:flex}.wheel-num b{font-size:9.5px;font-weight:700}.wheel-num.R b{color:#ff6b6b}.wheel-num.G b{color:#4ade80}.wheel-num.B b{color:#60a5fa}.wheel-num .fx-scrub{text-align:center;width:100%;min-width:0;padding:0 1px;font-size:11px}.wheel.changed .wheel-label{color:var(--fg)}.cmp-before{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.cmp-before[data-off]{visibility:hidden!important}.cmp-divider{cursor:ew-resize;z-index:6;touch-action:none;width:18px;margin-left:-9px;position:absolute;top:0;bottom:0}.cmp-divider i{background:#fff;width:2px;position:absolute;top:0;bottom:0;left:8px;box-shadow:0 0 0 1px #00000080}.cmp-tag{color:#fff;pointer-events:none;white-space:nowrap;background:#000000a6;border-radius:999px;padding:2px 7px;font-size:11px;font-weight:700;position:absolute;top:8px}.cmp-tag.l{right:14px}.cmp-tag.r{left:14px}.cmp-tag.bypass{z-index:6;left:8px}.acct-btn{position:relative}.acct-btn.on-plan{color:var(--fg)}.acct-dot{background:var(--green);width:7px;height:7px;box-shadow:0 0 0 2px var(--bg-2);border-radius:50%;position:absolute;bottom:5px;right:5px}.acct-panel{z-index:900;background:var(--bg-2);border:1px solid var(--line-2);border-radius:var(--r);width:320px;max-width:calc(100vw - 16px);max-height:calc(100vh - 70px);box-shadow:var(--shadow);padding:16px;position:fixed;overflow:auto}.acct-form{flex-direction:column;gap:10px;display:flex}.acct-form h3{margin:0;font-size:15px}.acct-form h4{color:var(--fg-2);margin:4px 0 2px;font-size:12px;font-weight:600}.acct-form input{border-radius:var(--r-sm);background:var(--bg-3);border:1px solid var(--line-2);height:36px;color:var(--fg);font:inherit;padding:0 12px;font-size:13px}.acct-sub{color:var(--fg-3);margin:0;font-size:12px;line-height:1.5}.acct-msg{color:var(--fg-2);margin:0;font-size:12px;line-height:1.5}.acct-msg.err{color:var(--red)}.acct-links{justify-content:space-between;gap:8px;font-size:12px;display:flex}.acct-who{align-items:center;gap:10px;display:flex}.acct-who>div:last-child{flex-direction:column;min-width:0;display:flex}.acct-who b,.acct-who span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.acct-who span{color:var(--fg-3);font-size:12px}.acct-avatar{background:var(--grad-btn);color:#fff;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.acct-rows{grid-template-columns:auto 1fr;gap:6px 14px;margin:0;font-size:12.5px;display:grid}.acct-rows dt{color:var(--fg-3)}.acct-rows dd{text-align:right;margin:0}.acct-badge{background:var(--bg-4);border-radius:999px;padding:1px 9px;font-size:11.5px;font-weight:600;display:inline-block}.acct-badge.basic{background:var(--accent-soft);color:var(--accent-2)}.acct-badge.pro,.acct-badge.max{background:var(--grad-soft);color:var(--fg)}.acct-devices{flex-direction:column;gap:4px;display:flex}.acct-dev{border-radius:var(--r-xs);background:var(--bg-3);justify-content:space-between;gap:8px;padding:6px 9px;font-size:12px;display:flex}.acct-dev i{color:var(--fg-3);font-style:normal}.acct-dev.off{opacity:.5}.acct-dev.me i{color:var(--green)}.acct-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.acct-actions .btn.accent{flex:1;justify-content:center}.acct-upgrade{flex-direction:column;gap:12px;padding:20px;display:flex}.acct-upgrade p{color:var(--fg-2);margin:0;line-height:1.55}.ex-res-lock{opacity:.55}.ex-res-note{color:var(--fg-3);margin:8px 0 0;font-size:12px}
