@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/d-stance/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/d-stance/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/d-stance/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/d-stance/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/d-stance/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/d-stance/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/d-stance/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/d-stance/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/d-stance/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/d-stance/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/d-stance/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/d-stance/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--scene-bg-0: #0e0e0e;--scene-bg-1: #1e1e1e;--scale-0: var(--scene-bg-0);--scale-1: var(--scene-bg-1);--scale-2: #2e2e2e;--scale-3: #404040;--scale-4: #525252;--scale-5: #666666;--scale-6: #808080;--scale-7: #a0a0a0;--scale-8: #c0c0c0;--scale-9: #e0e0e0;--scale-10: #ffffff;--bg-canvas: #000;--bg-panel: rgba(14, 14, 14, .86);--bg-input: rgba(255, 255, 255, .05);--bg-input-focus: rgba(255, 255, 255, .07);--bg-hover: rgba(255, 255, 255, .05);--bg-option: var(--scale-1);--accent: var(--scale-6);--accent-secondary: var(--scale-7);--accent-text: var(--scale-9);--accent-soft: rgba(255, 255, 255, .08);--accent-mid: rgba(255, 255, 255, .12);--accent-strong: rgba(255, 255, 255, .18);--accent-border: rgba(255, 255, 255, .35);--danger: #f87171;--danger-soft: rgba(239, 68, 68, .2);--text-1: var(--scale-9);--text-2: var(--scale-8);--text-3: rgba(255, 255, 255, .45);--text-4: rgba(255, 255, 255, .28);--border-1: rgba(255, 255, 255, .1);--border-2: rgba(255, 255, 255, .07);--border-3: rgba(255, 255, 255, .06);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 12px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--font-ui: "Inter Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono: "JetBrains Mono Variable", "SF Mono", "Fira Code", monospace;--text-xs: 11px;--text-sm: 12px;--text-md: 13px;--blur-panel: blur(16px) saturate(1.1);--transition-fast: .15s;--ease-spring: cubic-bezier(.32, .72, 0, 1);--ease-exit: cubic-bezier(.4, 0, 1, 1);--motion-in: .42s;--motion-fade-in: .24s;--motion-out: .2s;--motion-blur: 10px;--motion-amount: 1}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden;background:var(--bg-canvas);font-family:var(--font-ui)}button,input,select{font-family:inherit}canvas{display:block;width:100%;height:100%}.lucide{flex-shrink:0;display:block}.panel{position:fixed;z-index:10;background:var(--bg-panel);backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);border:1px solid var(--border-2);border-radius:var(--radius-lg);color:var(--text-2);font-size:var(--text-md);-webkit-user-select:none;user-select:none;box-shadow:0 8px 28px #00000061,0 2px 8px #00000040}.panel-header{padding:10px 14px 8px;font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-4);border-bottom:1px solid var(--border-3)}.panel-top{top:var(--space-3);left:50%;transform:translate(-50%);width:fit-content;height:52px;display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-4)}.wordmark{font-family:var(--font-ui);font-size:14px;font-weight:550;letter-spacing:-.03em;color:var(--text-3);line-height:1;white-space:nowrap;padding:0 2px}.wordmark-mark{display:inline-block;height:1.5em;width:auto;margin-right:.06em;vertical-align:-.07em}.wordmark-dot{display:inline-block;margin:0 .02em;color:var(--text-4);font-weight:500}.motion-pop{--motion-dy: 6px;opacity:0;filter:blur(var(--motion-blur));transform:translateY(calc(var(--motion-dy) * var(--motion-amount))) scale(calc(1 - .04 * var(--motion-amount)));visibility:hidden;pointer-events:none;transition:opacity var(--motion-out) var(--ease-exit),filter var(--motion-out) var(--ease-exit),transform var(--motion-out) var(--ease-exit),visibility 0s linear var(--motion-out)}.motion-pop[data-open=true]{opacity:1;filter:none;transform:none;visibility:visible;pointer-events:auto;transition:opacity var(--motion-fade-in) ease-out,filter var(--motion-in) var(--ease-spring),transform var(--motion-in) var(--ease-spring),visibility 0s}@keyframes motion-pop-in{0%{opacity:0;filter:blur(var(--motion-blur));transform:translateY(calc(var(--motion-dy, 6px) * var(--motion-amount))) scale(calc(1 - .04 * var(--motion-amount)))}}@keyframes motion-pop-out{to{opacity:0;filter:blur(var(--motion-blur));transform:translateY(calc(var(--motion-dy, 6px) * var(--motion-amount))) scale(calc(1 - .04 * var(--motion-amount)))}}@keyframes motion-scrim-in{0%{background-color:transparent}}@keyframes motion-scrim-out{to{background-color:transparent}}@keyframes motion-fade-in{0%{opacity:0}}@keyframes motion-fade-out{to{opacity:0}}@keyframes motion-hold{to{--motion-hold: 1}}@media(prefers-reduced-motion:reduce){:root{--motion-amount: 0;--motion-blur: 0px}}.segmented{position:relative;display:flex;padding:3px;border:1px solid var(--border-1);border-radius:999px;background:var(--bg-input)}.floating-pill{position:fixed;z-index:10;display:flex;align-items:center;gap:8px;height:34px;padding:0 18px;border:1px solid var(--border-1);border-radius:999px;background:var(--bg-panel);backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);-webkit-user-select:none;user-select:none;box-shadow:0 8px 28px #00000061,0 2px 8px #00000040}.floating-pill--top-right{top:var(--space-3);right:var(--space-3)}.floating-pill--bottom{bottom:var(--space-3);left:50%;translate:-50%;z-index:11}.floating-pill--bottom .render-mode-list{top:auto;bottom:calc(100% + 6px);--motion-dy: 4px;transform-origin:bottom right}.floating-pill--bottom .render-mode-chevron{transform:rotate(180deg)}.floating-pill--bottom .render-mode-chevron--open{transform:none}.floating-pill--bottom .quality-tooltip{top:auto;bottom:calc(100% + 8px);transform:translate(-50%) translateY(4px)}.floating-pill--bottom .quality-tooltip--visible{transform:translate(-50%) translateY(0)}.render-mode{position:relative;display:flex;align-items:center;height:100%}.floating-pill-btn{display:flex;align-items:center;gap:6px;padding:6px 0;border:none;border-radius:999px;background:none;color:var(--text-2);font-size:var(--text-sm);font-weight:500;cursor:pointer;white-space:nowrap;transition:color var(--transition-fast)}.floating-pill-btn:hover{color:var(--accent-text)}.floating-pill-btn .shape-btn-icon{opacity:.85}.gizmo-dock{position:fixed;z-index:10;bottom:var(--space-3);left:50%;translate:-50%;pointer-events:none;transition:bottom var(--motion-in) var(--ease-spring)}.segmented--floating{--motion-dy: 8px;transform-origin:bottom center;background:var(--bg-panel);backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);-webkit-user-select:none;user-select:none;box-shadow:0 8px 28px #00000061,0 2px 8px #00000040}.floating-pill--bottom~.gizmo-dock{bottom:calc(var(--space-3) + 34px + var(--space-2))}.segmented-indicator{position:absolute;top:3px;bottom:3px;left:3px;width:calc((100% - 6px) / 3);border-radius:999px;background:var(--accent-strong);box-shadow:inset 0 1px #ffffff14;transition:transform .22s cubic-bezier(.3,.9,.4,1);pointer-events:none}.segmented-btn{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:6px;width:88px;padding:6px 10px 8px;border:none;border-radius:999px;background:none;color:var(--text-3);cursor:pointer;transition:color var(--transition-fast)}.segmented-btn:hover{color:var(--text-2)}.segmented-btn--active,.segmented-btn:hover .shape-btn-key,.segmented-btn--active .shape-btn-key{color:var(--accent-text)}.segmented-btn .shape-btn-key{bottom:3px;right:6px}.panel-label{font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-4);margin-right:var(--space-1);white-space:nowrap}.top-panel-shapes{display:flex;gap:6px}.top-panel-history{display:flex;gap:var(--space-1);margin-right:var(--space-1)}.history-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius-md);border:1px solid var(--border-1);background:var(--bg-input);color:var(--text-2);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.history-btn:hover:not(:disabled){background:var(--accent-mid);border-color:var(--accent-border);color:var(--accent-text)}.history-btn:active:not(:disabled){background:var(--accent-strong)}.history-btn:disabled{opacity:.25;cursor:not-allowed}.top-panel-divider{width:1px;height:24px;background:var(--border-1);margin:0 var(--space-1)}.shape-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:var(--radius-md);border:1px solid var(--border-1);background:var(--bg-input);color:var(--text-2);font-size:var(--text-md);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);white-space:nowrap}.shape-btn:hover:not(:disabled){background:var(--accent-mid);border-color:var(--accent-border);color:var(--accent-text)}.shape-btn:active:not(:disabled){background:var(--accent-strong)}.shape-btn:disabled{opacity:.35;cursor:not-allowed}.shape-btn--active{background:var(--accent-mid);border-color:var(--accent-border);color:var(--accent-text)}.shape-btn-icon{display:flex;align-items:center;line-height:1;opacity:.85}.shape-btn-label{font-size:var(--text-sm);font-weight:500}.shape-btn--icon{position:relative;padding:8px 9px}.shape-btn-key{position:absolute;bottom:1px;right:3px;font-size:8px;line-height:1;color:var(--text-4);pointer-events:none}.shape-btn--icon:hover .shape-btn-key{color:var(--accent-text)}[cmdk-overlay]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#0006}[cmdk-dialog]{position:fixed;z-index:100;top:18%;left:50%;translate:-50%;width:420px;max-width:calc(100vw - 32px)}[cmdk-dialog][data-state=closed]{animation:motion-hold var(--motion-out) forwards}[cmdk-dialog][data-state=open] [cmdk-root]{animation:motion-pop-in var(--motion-in) var(--ease-spring)}[cmdk-dialog][data-state=closed] [cmdk-root]{animation:motion-pop-out var(--motion-out) var(--ease-exit) forwards}[cmdk-overlay][data-state=open]{animation:motion-fade-in var(--motion-in) ease-out}[cmdk-overlay][data-state=closed]{animation:motion-fade-out var(--motion-out) var(--ease-exit) forwards}[cmdk-root]{--motion-dy: -8px;transform-origin:top center;background:var(--bg-panel);backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);border:1px solid var(--border-1);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 16px 48px #00000080}[cmdk-input]{width:100%;padding:14px 16px;border:none;border-bottom:1px solid var(--border-3);background:transparent;outline:none;color:var(--text-1);font-size:var(--text-md)}[cmdk-input]::placeholder{color:var(--text-4)}[cmdk-list]{max-height:320px;overflow-y:auto;padding:6px}[cmdk-empty]{padding:16px;text-align:center;color:var(--text-4);font-size:var(--text-sm)}[cmdk-item]{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-md);color:var(--text-2);font-size:var(--text-md);cursor:pointer}[cmdk-item][data-selected=true]{background:var(--accent-mid);color:var(--accent-text)}.cmdk-item-label{flex:1}[cmdk-item] kbd{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--text-4);border:1px solid var(--border-1);border-radius:var(--radius-sm);padding:1px 6px}.quality-track{position:relative;width:118px;height:20px;display:flex;align-items:center;cursor:pointer;touch-action:none}.quality-rail{position:absolute;top:0;right:6px;bottom:0;left:6px;display:flex;align-items:center}.quality-track-line{position:absolute;left:0;right:0;height:2px;border-radius:999px;background:var(--border-1)}.quality-track-fill{position:absolute;left:0;height:2px;border-radius:999px;background:var(--accent-strong);pointer-events:none;transition:width .35s cubic-bezier(.34,1.56,.64,1)}.quality-track:has(.quality-thumb--dragging) .quality-track-fill{transition:none}.quality-dot{position:absolute;top:50%;width:2px;height:2px;margin-left:-1px;margin-top:-1px;border-radius:999px;background:var(--border-1);opacity:.55;pointer-events:none}.quality-thumb{position:absolute;top:50%;width:12px;height:12px;margin-left:-6px;margin-top:-6px;border-radius:50%;background:var(--accent-text);border:2px solid var(--accent-strong);box-shadow:0 0 0 1px #00000040,0 2px 6px #0000004d;pointer-events:none;transition:left .35s cubic-bezier(.34,1.56,.64,1)}.quality-thumb--dragging{transition:none}.quality-tooltip{position:absolute;top:calc(100% + 8px);transform:translate(-50%) translateY(-4px);padding:4px 8px;border-radius:var(--radius-sm);background:#141414f0;border:1px solid var(--border-2);color:var(--text-2);font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;white-space:nowrap;pointer-events:none;opacity:0;filter:blur(calc(var(--motion-blur) * .4));transition:opacity var(--transition-fast),filter var(--motion-out) var(--ease-exit),transform .22s cubic-bezier(.34,1.56,.64,1)}.quality-tooltip--visible{opacity:1;filter:none;transform:translate(-50%) translateY(0);transition:opacity var(--transition-fast),filter var(--motion-in) var(--ease-spring),transform .22s cubic-bezier(.34,1.56,.64,1)}.render-mode-trigger{gap:6px}.render-mode-chevron{opacity:.55;transition:transform var(--transition-fast)}.render-mode-chevron--open{transform:rotate(180deg)}.render-mode-list{position:absolute;top:calc(100% + 6px);right:0;min-width:136px;background:var(--bg-panel);backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);border:1px solid var(--border-2);border-radius:var(--radius-md);padding:var(--space-1);display:flex;flex-direction:column;gap:2px;z-index:20;--motion-dy: -4px;transform-origin:top right}.render-mode-option{display:flex;align-items:center;gap:6px;padding:6px 10px;border:none;border-radius:var(--radius-sm);background:none;color:var(--text-2);font-size:var(--text-sm);cursor:pointer;text-align:left;transition:background var(--transition-fast),color var(--transition-fast)}.render-mode-option:hover{background:var(--bg-hover);color:var(--accent-text)}.render-mode-option--active{background:var(--accent-soft);color:var(--accent-text)}.render-mode-option .shape-btn-label{flex:1}.render-mode-check{margin-left:auto;opacity:.8}.panel-left{left:var(--space-3);top:15vh;width:230px;height:70vh;max-height:70vh;display:flex;flex-direction:column;overflow:hidden}.scene-list{flex:1;min-height:0;overflow:hidden}.scene-list .react-arborist{width:100%}.scene-list [role=treeitem]{display:flex;align-items:stretch}.scene-drop-cursor{height:1px;background:var(--scale-6);z-index:2}.scene-item-rename-input{flex:1;min-width:0;height:22px;margin:0 -5px;padding:0 4px;font:inherit;font-size:var(--text-md);color:var(--text-1);background:transparent;border:1px solid var(--accent);border-radius:3px;outline:none}.scene-item--root .scene-item-rename-input{font-weight:600}.scene-item-icon--spacer{width:20px;flex-shrink:0}.scene-item--root .scene-item-name{font-weight:600}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track,::-webkit-scrollbar-corner{background:transparent}::-webkit-scrollbar-thumb,::-webkit-scrollbar-thumb:hover,::-webkit-scrollbar-thumb:active{background:#00000080;border:1px solid rgba(255,255,255,.08);border-radius:3px}.scene-empty{padding:var(--space-4) 14px;font-size:var(--text-sm);color:var(--text-4);line-height:1.6}.scene-item{display:flex;align-items:center;gap:var(--space-2);flex:1;min-width:0;height:100%;padding:0 var(--space-3);cursor:pointer;transition:background .1s}.scene-item:hover:not(.scene-item--selected):not(.scene-item--drop-target){background:var(--bg-hover)}.scene-item--selected{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}.scene-item--drop-target{background:var(--accent-mid);box-shadow:inset 0 0 0 1px var(--accent-border)}.scene-item--drop-target.scene-item--selected{box-shadow:inset 2px 0 0 var(--accent),inset 0 0 0 1px var(--accent-border)}.scene-item--dragging{opacity:.35}.scene-item--dragging.scene-item--selected{background:transparent;box-shadow:none}.scene-list:has(.scene-item--dragging) .scene-item:hover:not(.scene-item--drop-target):not(.scene-item--selected){background:transparent}.scene-item-icon{display:flex;align-items:center;opacity:.7;flex-shrink:0}.scene-item-name{flex:1;font-size:var(--text-md);color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scene-item--selected .scene-item-name{color:var(--accent-text)}.scene-item-remove{flex-shrink:0;width:20px;height:20px;border:none;background:none;color:var(--text-4);line-height:1;cursor:pointer;border-radius:3px;display:flex;align-items:center;justify-content:center;transition:background .1s,color .1s;opacity:0}.scene-item:hover .scene-item-remove{opacity:1}.scene-item-remove:hover{background:var(--danger-soft);color:var(--danger)}.panel-right{top:15vh;height:70vh;max-height:70vh;right:var(--space-3);width:220px;display:flex;flex-direction:column;overflow:hidden}.props-shape-name{padding:10px 14px 6px;font-size:var(--text-md);font-weight:600;color:var(--text-1)}.props-shape-extra{margin-left:8px;font-size:var(--text-sm);font-weight:400;color:var(--text-3)}.props-content{flex:1;min-height:0;padding:var(--space-1) 14px var(--space-3);display:flex;flex-direction:column;gap:6px;overflow-y:auto}.props-section-title{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-4);margin-top:var(--space-2);margin-bottom:2px}.prop-row{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:var(--space-2);min-height:28px}.prop-label{font-size:var(--text-sm);color:var(--text-3);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prop-input{width:100%;background:var(--bg-input);border:1px solid var(--border-2);border-radius:5px;padding:5px var(--space-2);color:var(--text-1);font-size:var(--text-sm);font-family:var(--font-mono);font-variant-numeric:tabular-nums;outline:none;transition:border-color var(--transition-fast),background var(--transition-fast);min-width:0}.prop-input:focus{border-color:var(--accent-border);background:var(--bg-input-focus)}.prop-input::-webkit-inner-spin-button,.prop-input::-webkit-outer-spin-button{opacity:.4}.panel-header--tabs{display:flex;gap:var(--space-3);padding:0 14px}.panel-tab{padding:10px 0 8px;border:none;background:none;font:inherit;font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-4);cursor:pointer;transition:color var(--transition-fast)}.panel-tab:hover:not(.panel-tab--active){color:var(--text-3)}.panel-tab--active{color:var(--text-1)}.panel-tab-divider{width:1px;align-self:center;height:14px;background:var(--border-1)}.code-view{flex:1;min-height:0;display:flex;flex-direction:column}.code-langs{display:flex;gap:var(--space-1);padding:var(--space-2) 10px;border-bottom:1px solid var(--border-3);overflow-x:auto;scrollbar-width:none;cursor:grab;touch-action:none}.code-langs::-webkit-scrollbar{display:none}.code-langs:active{cursor:grabbing}.code-lang{padding:3px 10px;border:none;border-radius:var(--radius-sm);background:none;color:var(--text-3);font-size:var(--text-xs);font-weight:500;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);white-space:nowrap;flex-shrink:0}.code-lang:hover:not(.code-lang--active){color:#ffffffb3}.code-lang--active{background:var(--accent-strong);color:var(--accent-text)}.code-body{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;-webkit-user-select:text;user-select:text}.code-copy-btn{position:absolute;top:var(--space-2);right:var(--space-2);z-index:1;padding:3px 10px;border:1px solid var(--border-1);border-radius:5px;background:var(--bg-panel);color:var(--text-3);font-size:var(--text-xs);font-weight:500;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);white-space:nowrap}.code-copy-btn:hover{background:var(--accent-mid);border-color:var(--accent-border);color:var(--accent-text)}.code-pre{flex:1;min-height:0;margin:0;padding:10px var(--space-3);font-family:var(--font-mono);font-size:10.5px;line-height:1.55;color:var(--scale-7);overflow:auto;white-space:pre;-moz-tab-size:2;tab-size:2}.code-pre .shiki{margin:0;background:transparent!important;font-family:inherit;font-size:inherit;line-height:inherit;white-space:pre}.scene-object-collapse{flex-shrink:0;width:20px;height:16px;border:none;background:none;color:var(--text-4);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:color .1s}.scene-object-collapse:hover{color:#ffffffb3}.scene-object-empty{padding:6px 14px var(--space-2);font-size:var(--text-xs);color:#fff3}.scene-item--op{opacity:.75}.scene-item--op:hover{opacity:1}.scene-item--op.scene-item--selected{opacity:1;background:var(--accent-soft);border-left-color:var(--accent-secondary)}.scene-item-icon--op{opacity:.9;color:var(--accent-secondary)}.mask-icon{display:block;flex-shrink:0;background-color:currentColor;mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain}.op-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px}.op-picker-btn{display:flex;align-items:center;justify-content:center;height:40px;padding:0;border:1px solid transparent;border-radius:var(--radius-md);background:#ffffff08;color:var(--text-3);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.op-picker-btn:hover:not(.op-picker-btn--active){color:var(--text-1);background:#ffffff12}.op-picker-btn--active{color:var(--accent-secondary);background:var(--accent-soft);border-color:var(--accent-secondary)}.scene-item-name--op{font-size:var(--text-xs);color:var(--accent-secondary)}.scene-add-object{padding:var(--space-2) 10px;border-top:1px solid var(--border-3)}.add-object-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:6px;padding:6px var(--space-3);border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-md);background:#ffffff08;color:#fff6;font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.add-object-btn:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent-text);border-style:solid}.add-object-btn:disabled{opacity:.3;cursor:not-allowed}.prop-select{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='rgba(255,255,255,0.3)'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:24px;cursor:pointer}.prop-select option{background:var(--bg-option);color:var(--text-2)}.props-op-hint{font-size:var(--text-xs);color:var(--text-4);margin-top:var(--space-1);line-height:1.5}.image-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#00000073}.image-dialog-overlay[data-state=open]{animation:motion-scrim-in var(--motion-in) ease-out}.image-dialog-overlay[data-state=closed]{animation:motion-scrim-out var(--motion-out) var(--ease-exit) forwards;pointer-events:none}.image-dialog-overlay[data-state=open] .image-dialog{animation:motion-pop-in var(--motion-in) var(--ease-spring)}.image-dialog-overlay[data-state=closed] .image-dialog{animation:motion-pop-out var(--motion-out) var(--ease-exit) forwards}.image-dialog{--motion-dy: 8px;width:360px;max-width:calc(100vw - 32px);padding:16px;display:flex;flex-direction:column;gap:10px;background:var(--bg-panel);backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);border:1px solid var(--border-1);border-radius:var(--radius-lg);box-shadow:0 16px 48px #00000080;color:var(--text-2);font-size:var(--text-sm)}.image-dialog-title{font-size:var(--text-md);color:var(--text-1)}.image-dialog-preview{display:flex;align-items:center;justify-content:center;height:220px;border:1px solid var(--border-3);border-radius:var(--radius-md);background:var(--scale-0);overflow:hidden}.image-crop-stage{position:relative;flex:none;touch-action:none;user-select:none;-webkit-user-select:none}.image-crop-stage canvas{display:block;width:100%;height:100%;image-rendering:auto;pointer-events:none}.image-crop-box{position:absolute;box-sizing:border-box;border:1px solid var(--accent-text);box-shadow:0 0 0 9999px #0000008c;pointer-events:none}.image-crop-handle{position:absolute;width:7px;height:7px;background:var(--accent-text);border:1px solid rgba(0,0,0,.6);border-radius:1px}.image-crop-handle[data-corner=nw]{top:-4px;left:-4px}.image-crop-handle[data-corner=ne]{top:-4px;right:-4px}.image-crop-handle[data-corner=sw]{bottom:-4px;left:-4px}.image-crop-handle[data-corner=se]{bottom:-4px;right:-4px}.image-dialog-link{padding:0;border:0;background:none;color:var(--text-2);font:inherit;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.image-dialog-link:hover{color:var(--text-1)}.image-dialog-row{display:flex;align-items:center;gap:10px;min-height:20px}.image-dialog-row span{width:72px;color:var(--text-3)}.ui-range{--frac: 0;--fill: calc(6px + (100% - 12px) * var(--frac));flex:1;height:20px;margin:0;padding:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;cursor:pointer;touch-action:none}.ui-range:focus-visible{outline:none}.ui-range:disabled{opacity:.5;cursor:default}.ui-range::-webkit-slider-runnable-track{height:2px;border-radius:999px;background:linear-gradient(to right,var(--accent-strong) var(--fill),var(--border-1) var(--fill))}.ui-range::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;margin-top:-5px;border-radius:50%;background:var(--accent-text);border:2px solid var(--accent-strong);box-shadow:0 0 0 1px #00000040,0 2px 6px #0000004d}.ui-range::-moz-range-track{height:2px;border-radius:999px;background:var(--border-1)}.ui-range::-moz-range-progress{height:2px;border-radius:999px;background:var(--accent-strong)}.ui-range::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--accent-text);border:2px solid var(--accent-strong);box-shadow:0 0 0 1px #00000040,0 2px 6px #0000004d}.ui-check{position:relative;flex:none;width:14px;height:14px;margin:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;border:1px solid var(--border-1);border-radius:var(--radius-sm);background:var(--bg-input);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.ui-check:hover:not(:disabled){background:var(--bg-hover);border-color:var(--accent-border)}.ui-check:checked{background:var(--accent-mid);border-color:var(--accent-border)}.ui-check:checked:after{content:"";position:absolute;left:4px;top:1px;width:3px;height:7px;border:solid var(--accent-text);border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}.ui-check:focus-visible{outline:1px solid var(--accent-border);outline-offset:1px}.ui-check:disabled{opacity:.5;cursor:default}.image-dialog-hint{margin:0;font-size:var(--text-xs);color:var(--text-4)}.image-dialog-actions{display:flex;justify-content:flex-end;gap:8px}.image-dialog-btn{padding:6px 12px;border:1px solid var(--border-1);border-radius:var(--radius-md);background:var(--bg-input);color:var(--text-2);font-size:var(--text-sm);cursor:pointer}.image-dialog-btn:hover:not(:disabled){background:var(--bg-hover)}.image-dialog-btn:disabled{opacity:.5;cursor:default}.image-dialog-btn--primary{background:var(--accent-mid);color:var(--accent-text)}.no-webgpu{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;width:100%;height:100vh;font-family:var(--font-mono);font-size:1.2rem;color:#f44;background:var(--bg-canvas)}.no-webgpu small{font-size:.85rem;color:#888}.mobile-gate{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:16px;background:radial-gradient(circle at 50% 40%,#161616 0%,var(--bg-canvas) 70%);font-family:var(--font-ui)}.mobile-gate-card{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:340px;padding:28px 24px 24px;text-align:center;background:var(--bg-panel);backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);border:1px solid var(--border-2);border-radius:var(--radius-lg);box-shadow:0 8px 28px #00000061,0 2px 8px #00000040}.logo-spinner{display:block;margin:2px 0 4px}.mobile-gate-title{margin:0;font-size:17px;font-weight:600;letter-spacing:-.01em;color:var(--text-1)}.mobile-gate-text{margin:0;font-size:var(--text-md);line-height:1.5;color:var(--text-3)}.mobile-gate-btn{display:inline-flex;align-items:center;gap:6px;height:34px;margin-top:4px;padding:0 16px;border:1px solid var(--border-1);border-radius:999px;background:var(--bg-input);color:var(--text-2);font:inherit;font-size:var(--text-md);cursor:pointer;transition:background var(--transition-fast)}.mobile-gate-btn:hover{background:var(--bg-hover);color:var(--text-1)}.toast{--motion-dy: 8px;position:fixed;bottom:24px;left:50%;translate:-50%;z-index:1000;padding:10px 16px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#141414eb;color:#f0f0f0;font-size:13px;white-space:nowrap}.toast.motion-pop,.toast.motion-pop[data-open=true]{pointer-events:none}
