:root{color-scheme:dark;--ost-canvas: #0f0f0f;--ost-panel: #161616;--ost-field: #1c1c1c;--ost-popover: #232323;--ost-hover: #2c2c2c;--ost-text: #f6f6f6;--ost-text-2: #a0a0a3;--ost-text-3: #6b6b6e;--ost-hairline: rgba(255, 255, 255, .11);--ost-hairline-strong: rgba(255, 255, 255, .18);--ost-purple: #6456f6;--ost-purple-hover: #7a6dff;--ost-purple-press: #5446e0;--ost-purple-soft: rgba(100, 86, 246, .16);--ost-purple-line: rgba(100, 86, 246, .42);--ost-live: #1fc9c0;--ost-walk: #fb8a5b;--ost-level: #46d08a;--ost-critical: #f2544a;--ost-white: #f6f6f6;--ost-black: #0f0f0f;--ost-font-display: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;--ost-font-ui: "Sora", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--ost-font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--ost-size-xs: 12px;--ost-size-sm: 12.5px;--ost-size-base: 14px;--ost-size-md: 16px;--ost-size-lg: 20px;--ost-size-xl: 32px;--ost-s1: 4px;--ost-s2: 8px;--ost-s3: 12px;--ost-s4: 16px;--ost-s6: 24px;--ost-s8: 32px;--ost-s12: 48px;--ost-s16: 64px;--ost-radius-sm: 7px;--ost-radius: 10px;--ost-radius-lg: 14px;--ost-radius-xl: 20px;--ost-radius-full: 999px;--ost-shadow-card: 0 12px 30px rgba(0, 0, 0, .35);--ost-shadow-popover: 0 18px 48px rgba(0, 0, 0, .55);--ost-ease: cubic-bezier(.4, 0, .2, 1)}:root{font-family:var(--ost-font-ui);--panel: var(--ost-panel);--panel-soft: var(--ost-field);--panel-2: var(--ost-popover);--panel-3: var(--ost-field);--control: var(--ost-field);--control-hover: var(--ost-hover);--control-active: var(--ost-hover);--border: var(--ost-hairline);--muted: var(--ost-text-2);--text: var(--ost-text);--blue: var(--ost-purple);--green: var(--ost-level);--radius-control: var(--ost-radius-sm);--splitter: 0px}*{box-sizing:border-box;scrollbar-width:none}*::-webkit-scrollbar{width:0;height:0}html,body{width:100%;height:100%;margin:0;overflow:hidden}#app,#dashboard{width:100%;height:100%}button,input,select{font:inherit}button{border:0;cursor:pointer}.app-shell{display:grid;grid-template-columns:var(--left-pane-width, calc((100vw - var(--splitter)) * .7)) var(--splitter) minmax(0,1fr);gap:0;padding:0;background:#070707;color:var(--text)}.workspace-left,.workspace-right{min-width:0;min-height:0}.workspace-left{position:relative;display:grid;grid-template-rows:minmax(0,1fr);gap:0}.workspace-right{display:grid;grid-template-rows:var(--preview-pane-height, 30%) var(--splitter) minmax(0,1fr);gap:0}.editor-topbar,.preview-panel,.panel{background:var(--panel);border:.5px solid var(--border);box-shadow:none}.editor-topbar{position:absolute;top:8px;left:10px;right:70px;z-index:8;min-width:0;display:grid;grid-template-columns:34px minmax(90px,140px) minmax(0,1fr);align-items:center;gap:9px;min-height:46px;padding:6px 8px;border-radius:var(--ost-radius-lg);background:#141414f0;box-shadow:var(--ost-shadow-card)}.menu-button,.toolbar-button,.icon-button,.mini-icon{display:inline-grid;place-items:center;color:#a8a8a8;background:transparent}.ui-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;line-height:1}.menu-button{width:30px;height:30px;border-radius:7px}.menu-button:hover,.toolbar-button:hover,.icon-button:hover,.mini-icon:hover{background:var(--ost-hover);color:var(--ost-text)}.toolbar-button.active{background:var(--ost-purple-soft);color:var(--ost-purple)}.app-menu{position:absolute;top:42px;left:10px;z-index:40;width:142px;display:grid;gap:2px;padding:5px;border:.5px solid var(--border);border-radius:7px;background:#151515;box-shadow:0 16px 40px #00000052}.app-menu[hidden]{display:none}.app-menu button{min-height:26px;padding:0 8px;border-radius:5px;background:transparent;color:#d8d8d8;font-size:11px;font-weight:500;text-align:left}.app-menu button:hover{background:#2a2a2a;color:#fff}.icon-lines{width:17px;height:14px;position:relative;display:block}.icon-lines:before,.icon-lines:after{content:"";position:absolute;left:0;right:0;height:2px;border-radius:999px;background:currentColor}.icon-lines:before{top:2px;box-shadow:0 6px 0 currentColor}.icon-lines:after{bottom:2px}.file-block{min-width:0;display:grid;gap:1px}.file-block strong{overflow:hidden;color:#fff;font-size:12px;line-height:1.15;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.file-block strong.inline-editing,.file-block span.inline-editing,.element-name.inline-editing{outline:1px solid var(--blue);outline-offset:2px;border-radius:4px;background:#6456f61f}.file-block span{display:none}.file-block small{overflow:hidden;color:#8f8f8f;font-size:10px;line-height:1.1;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.file-block small.is-saving{color:#c7b26a}.file-block small.is-dirty{color:#b8b8b8}.file-block small.is-saved{color:#73d982}.dashboard-shell{display:grid;grid-template-rows:58px minmax(0,1fr);background:radial-gradient(circle at 76% 18%,rgba(100,86,246,.2),transparent 38%),linear-gradient(180deg,var(--ost-panel) 0%,var(--ost-canvas) 100%);color:var(--text)}.dashboard-shell[hidden]{display:none}.dashboard-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 18px;border-bottom:1px solid var(--border);background:#0c0c0cd1}.dashboard-brand{display:inline-flex;align-items:center;gap:10px;color:#fff;font-size:14px;font-weight:600;text-decoration:none}.dashboard-brand img{width:24px;height:24px}.dashboard-actions{display:inline-flex;align-items:center;gap:8px}.dashboard-actions a,.dashboard-actions button,.new-file-form button,.file-card button{min-height:32px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border:1px solid #313131;border-radius:var(--radius-control);background:#202020;color:#f4f4f4;font-size:12px;font-weight:600;text-decoration:none}.dashboard-actions button,.new-file-form button,.file-card .primary-action{border-color:var(--ost-purple);background:var(--ost-purple);color:#fff}.dashboard-actions a:hover,.dashboard-actions button:hover,.new-file-form button:hover,.file-card button:hover{filter:brightness(1.1)}.dashboard-main{min-height:0;overflow:auto;padding:clamp(22px,4vw,48px)}.dashboard-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:24px;align-items:end;max-width:1120px;margin:0 auto 28px}.eyebrow{margin:0 0 8px;color:var(--ost-purple-hover);font-family:var(--ost-font-mono);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}.dashboard-hero h1,.dashboard-section-title h2{margin:0;color:#fff;letter-spacing:0}.dashboard-hero h1{font-size:clamp(36px,6vw,72px);line-height:.95}.dashboard-hero p{max-width:620px;margin:12px 0 0;color:var(--muted);font-size:14px;line-height:1.55}.new-file-form{display:grid;gap:8px;padding:14px;border:1px solid var(--border);border-radius:8px;background:#111111e6}.new-file-form label{color:var(--muted);font-size:11px;font-weight:600}.new-file-form div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.new-file-form input{min-width:0;height:34px;border:1px solid #313131;border-radius:var(--radius-control);background:#202020;color:#fff;padding:0 10px;outline:none}.new-file-form input:focus{border-color:var(--ost-purple)}.dashboard-section{max-width:1120px;margin:0 auto}.dashboard-section-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.dashboard-section-title h2{font-size:18px}.dashboard-section-title span{color:var(--muted);font-size:12px;font-weight:500}.file-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}.file-card,.empty-files{min-height:168px;display:grid;gap:12px;padding:14px;border:1px solid var(--border);border-radius:8px;background:#111111eb}.file-card h3{margin:0;overflow:hidden;color:#fff;font-size:16px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.file-card p,.empty-files p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.file-card-meta{display:flex;flex-wrap:wrap;gap:6px}.file-card-meta span{min-height:22px;display:inline-flex;align-items:center;padding:0 8px;border-radius:999px;background:#202020;color:#bdbdbd;font-size:10px;font-weight:600}.file-card-actions{display:flex;flex-wrap:wrap;gap:6px;align-self:end}.empty-files{grid-column:1 / -1;place-items:center;text-align:center}.top-toolbar{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:3px;overflow:auto hidden;padding:3px;border:1px solid var(--ost-hairline);border-radius:var(--ost-radius);background:var(--ost-field)}.toolbar-divider{flex:0 0 1px;width:1px;height:20px;margin:0 3px;background:#303030}.toolbar-button{flex:0 0 auto;width:30px;height:30px;border-radius:6px}.shape-tool{flex:0 0 auto;display:inline-flex;align-items:center;border-radius:7px;background:transparent}.shape-tool.active{background:#2c2c2c}.shape-tool .toolbar-button{border-radius:0}.shape-tool-main{border-radius:6px 0 0 6px!important}.shape-tool-arrow{width:22px;border-left:1px solid #303030;border-radius:0 6px 6px 0!important}.toolbar-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.floor-selector,.zoom-selector{flex:0 0 auto;max-width:180px;min-width:104px;height:30px;display:inline-flex;align-items:center;gap:6px;padding:0 8px;border-radius:6px;background:transparent;color:#d6d6d6;font-size:11px;font-weight:600}.zoom-selector{width:90px;min-width:90px;max-width:90px;justify-content:center}.floor-selector:hover,.zoom-selector:hover{background:#383838;color:#fff}.floor-selector span,.zoom-selector span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-stage{position:relative;min-width:0;min-height:0;overflow:hidden;border:1px solid var(--ost-hairline-strong);border-radius:0;background:#fff}.editor-gpu-canvas,.editor-canvas{position:absolute;inset:0;width:100%;height:100%}.editor-gpu-canvas{z-index:0}.editor-canvas{z-index:1;touch-action:none}.hud{position:absolute;left:var(--hud-left, 10px);bottom:var(--hud-bottom, 10px);z-index:2;min-height:26px;max-width:var(--hud-max-width, calc(100% - 20px) );display:flex;align-items:center;padding:0 10px;border:1px solid var(--border);border-radius:7px;background:#111111e0;color:#e8e8e8;font-size:11px;font-weight:500;pointer-events:none}.compass-widget{position:absolute;top:10px;right:12px;z-index:8;width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--ost-hairline);border-radius:50%;background:var(--ost-panel);box-shadow:var(--ost-shadow-card);pointer-events:none}.compass-dial{position:relative;width:38px;height:38px;border-radius:50%}.compass-dial span{position:absolute;left:50%;top:-1px;transform:translate(-50%);color:var(--ost-text-3);font-family:var(--ost-font-mono);font-size:8px;font-weight:500;letter-spacing:.04em;line-height:1}.compass-dial i{position:absolute;left:50%;top:50%;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:13px solid var(--ost-critical);transform:translate(-50%,-100%) rotate(var(--orientation, 0deg));transform-origin:50% 100%}.compass-dial i:before{content:"";position:absolute;left:50%;top:100%;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:13px solid var(--ost-text-3);transform:translate(-50%)}.view-badges{position:absolute;inset:0;z-index:7;pointer-events:none}.view-gizmo{position:absolute;right:14px;bottom:14px;z-index:8;display:flex;gap:8px;align-items:flex-end}.pane-view-badge{position:absolute;min-width:42px;height:24px;padding:0 10px;border-radius:7px;background:#141414e0;color:#fff;font-size:10px;font-weight:760;pointer-events:auto;box-shadow:0 8px 20px #00000029}.pane-view-badge.active{background:#2f63ff}.pane-view-badge:hover{background:#3a3a3a}.view-gizmo-cube{width:86px;height:86px;overflow:visible;filter:drop-shadow(0 12px 24px rgba(0,0,0,.22))}.gizmo-face{cursor:pointer;outline:none}.gizmo-face path{fill:#34343a;stroke:#ffffff21;stroke-width:1;transition:fill .12s ease,stroke .12s ease}.gizmo-face text{fill:#fff;font-family:var(--ost-font-display);font-size:19px;font-weight:620;text-anchor:middle;dominant-baseline:central;pointer-events:none}.gizmo-face:hover:not(.disabled) path,.gizmo-face:focus-visible path{fill:#4a4a52;stroke:#fff3}.gizmo-face.active path,.gizmo-face.active:hover path{fill:#5f59c9;stroke:#ffffff38}.gizmo-face.disabled:not(.active){cursor:not-allowed;opacity:.5}.gizmo-face-bottom text{font-size:15px;font-weight:680}.view-gizmo-toggle,.view-split-button{border:1px solid rgba(255,255,255,.08);background:#1b1b1eeb;color:#f2f2f2;box-shadow:0 10px 28px #0000002e}.view-gizmo-toggle{position:relative;width:34px;height:74px;display:grid;place-items:center;padding:0;border-radius:17px}.view-gizmo-toggle .toggle-rail{position:absolute;inset:4px;border-radius:14px;background:#1f1f23;box-shadow:inset 0 0 0 1px #ffffff14}.view-gizmo-toggle .toggle-rail:before,.view-gizmo-toggle .toggle-rail:after{content:"";position:absolute;left:50%;width:4px;height:4px;border-radius:999px;background:#ffffff57;transform:translate(-50%)}.view-gizmo-toggle .toggle-rail:before{top:12px}.view-gizmo-toggle .toggle-rail:after{bottom:12px}.view-gizmo-toggle .toggle-rail i{position:absolute;left:5px;width:20px;height:26px;border-radius:11px;background:#5f59c9;box-shadow:0 7px 18px #00000052;transition:top .14s ease}.view-gizmo-toggle.primary .toggle-rail i{top:7px}.view-gizmo-toggle.secondary .toggle-rail i{top:36px}.view-split-button{width:34px;height:34px;display:grid;place-items:center;border-radius:10px}.view-split-button .ui-icon{line-height:1}.view-split-button>span:not(.split-icon){display:none}.split-icon{width:18px;height:18px;display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);gap:2px}.split-icon i{border:2px solid currentColor;border-radius:2px}.split-icon-single i:first-child{grid-column:1 / 3;grid-row:1 / 3}.split-icon-single i:not(:first-child){display:none}.split-icon-two-vertical i:nth-child(1){grid-row:1 / 3}.split-icon-two-vertical i:nth-child(2){grid-column:2;grid-row:1 / 3}.split-icon-two-vertical i:nth-child(n+3),.split-icon-two-horizontal i:nth-child(n+3){display:none}.split-icon-two-horizontal i:nth-child(1){grid-column:1 / 3}.split-icon-two-horizontal i:nth-child(2){grid-column:1 / 3;grid-row:2}.split-icon-three-top i:nth-child(1),.split-icon-three-bottom i:nth-child(3){grid-column:1 / 3}.split-icon-three-left i:nth-child(1),.split-icon-three-right i:nth-child(3){grid-row:1 / 3}.split-icon-three-top i:nth-child(4),.split-icon-three-bottom i:nth-child(4),.split-icon-three-left i:nth-child(4),.split-icon-three-right i:nth-child(4){display:none}.split-preset-menu{min-width:236px;padding:12px}.split-menu-title{margin:2px 0 8px;color:#8f8f8f;font-size:10px;font-weight:760}.split-menu-grid{display:grid;grid-template-columns:repeat(4,42px);gap:10px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #303030}.split-menu-grid:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}.split-menu-grid button{width:42px;height:38px;display:grid;place-items:center;border-radius:8px;color:#d8d8d8}.split-menu-grid button .ui-icon{font-size:20px!important;line-height:1}.split-menu-grid button:hover,.split-menu-grid button.active{background:#3a3a3a;color:#fff}.coordinate-hud{min-height:28px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;border-top:1px solid var(--border);background:#101010;color:#e8e8e8;font-size:10px;font-weight:500;pointer-events:none}.inspector-coordinate-hud{justify-content:flex-end;text-align:right}.preview-panel{position:relative;min-width:0;min-height:0;display:block;padding:0;border-radius:0;overflow:hidden}.preview-panel.preview-expanded{position:fixed;inset:0;z-index:35;border:0}.preview-mount{width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;border:0;border-radius:0;background:#101010}.preview-expand{position:absolute;top:10px;right:10px;z-index:3;background:#141414b8}.preview-3d-controls{position:absolute;z-index:4;display:none;align-items:center;gap:8px}.preview-object-toolbar{position:absolute;z-index:4;display:none;align-items:center;gap:2px;padding:4px;border:1px solid var(--ost-hairline);border-radius:var(--ost-radius-lg);background:var(--ost-popover);box-shadow:var(--ost-shadow-popover)}.preview-panel.preview-expanded .preview-3d-controls{top:10px;right:52px;display:flex}.preview-panel.preview-expanded .preview-object-toolbar:not([hidden]){top:62px;right:52px;display:flex}.preview-control-button,.preview-segment button,.preview-object-toolbar button{min-width:32px;height:30px;display:inline-grid;place-items:center;border-radius:var(--ost-radius-sm);background:transparent;color:var(--ost-text-2);font-size:11px;font-weight:600}.preview-control-button{height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 14px;border:1px solid var(--ost-hairline);border-radius:var(--ost-radius);background:var(--ost-popover);color:var(--ost-text);box-shadow:var(--ost-shadow-popover)}.preview-control-button:hover,.preview-segment button:hover,.preview-object-toolbar button:hover{background:var(--ost-hover);color:var(--ost-text)}.preview-segment{display:inline-grid;grid-auto-flow:column;gap:2px;padding:3px;border:1px solid var(--ost-hairline);border-radius:var(--ost-radius);background:var(--ost-popover);box-shadow:var(--ost-shadow-popover)}.preview-object-toolbar{max-width:min(460px,calc(100vw - 120px))}.preview-object-toolbar button{width:34px}.preview-shape-tool{display:inline-flex;align-items:center;border-radius:7px;background:#202020}.preview-shape-tool button{border-radius:0}.preview-shape-tool button:first-child{border-radius:6px 0 0 6px}.preview-shape-arrow{width:24px!important;min-width:24px!important;border-left:1px solid #303030;border-radius:0 6px 6px 0!important}.preview-object-toolbar button.active{background:#3a3a3a;color:#fff}.preview-canvas{display:block;width:100%;height:100%;touch-action:none}.preview-label-overlay{position:absolute;inset:0;z-index:2;pointer-events:none;color:#ffffffad;font-size:11px;font-weight:600}.preview-label-overlay strong,.preview-label-overlay>span{position:absolute;left:14px;top:14px}.preview-floor-stack{position:absolute;left:14px;top:14px;display:grid;gap:4px}.preview-floor-stack span{color:#ffffff73}.preview-floor-stack span.active{color:#fff}.preview-area-label{position:absolute;left:14px;bottom:14px}.right-bottom{min-width:0;min-height:0;display:grid;grid-template-columns:var(--layers-pane-width, calc((100% - var(--splitter)) / 2)) var(--splitter) minmax(0,1fr);gap:0}.layers-panel,.inspector-panel{min-width:0;min-height:0;overflow:auto;border-radius:0;padding:0}.inspector-panel{display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden}.inspector-scroll{min-height:0;overflow:auto}.splitter{position:relative;z-index:20;background:transparent;touch-action:none;-webkit-user-select:none;user-select:none;outline:none}.splitter:focus,.splitter:focus-visible{outline:none}.splitter:after{content:"";position:absolute;background:transparent;transition:none}.splitter-vertical{cursor:col-resize}.splitter-vertical:after{top:0;bottom:0;left:1px;width:2px}.splitter-horizontal{cursor:row-resize}.splitter-horizontal:after{left:0;right:0;top:1px;height:2px}.splitter:hover:after,.splitter.active-splitter:after{background:transparent}.layers-panel{display:grid;grid-template-rows:minmax(0,1fr);overflow:hidden}.panel-section{min-height:0;overflow:auto;padding:10px;border-bottom:0;margin-bottom:0}.panel-section:last-child{border-bottom:0;margin-bottom:0}.section-title{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:13px;line-height:1;font-weight:600;margin-bottom:9px}.panel-tabs{display:inline-grid;grid-auto-flow:column;gap:2px;padding:2px;border-radius:7px;background:#1f1f1f}.panel-tabs button{width:24px;height:22px;display:inline-grid;place-items:center;border-radius:5px;color:#a8a8a8;background:transparent}.panel-tabs button:hover,.panel-tabs button.active{color:#fff;background:#3a3a3a}.section-title>span{margin-right:auto;display:inline-flex;align-items:center;gap:6px}.section-collapse{width:18px;height:18px;display:inline-grid;place-items:center;color:#a8a8a8;background:transparent;border-radius:5px;font-size:13px}.section-collapse:hover{color:#fff;background:#383838}.section-actions{display:flex;gap:4px}.icon-button{width:22px;height:22px;border-radius:6px;font-size:13px}.canvas-list{display:grid;gap:4px}.canvas-row{width:100%;min-height:28px;display:flex;align-items:center;justify-content:space-between;padding:0 8px;border-radius:7px;color:var(--muted);background:transparent;font-size:12px;font-weight:500;text-align:left}.canvas-row small{color:#777;font-size:10px;font-weight:500}.canvas-row.active{background:var(--panel-2);color:#fff}.layers-section{padding:0 10px 10px;border-top:1px solid var(--border);border-bottom:0;margin-bottom:0}.layers-section .section-title{position:sticky;top:0;z-index:4;margin:0 -10px 9px;padding:10px;background:#111111f5;border-bottom:1px solid var(--border)}.layers-list{display:grid;gap:4px}.layer-row{min-height:25px;display:grid;grid-template-columns:18px 16px minmax(0,1fr) 18px;align-items:center;gap:5px;padding:0 3px;border-radius:6px;color:var(--muted);font-size:12px;font-weight:500}.layer-group.active .layer-row{color:#fff}.layer-group.selected-group>.layer-row{background:#202636;box-shadow:inset 2px 0 0 var(--blue);color:#fff}.layer-group:focus-visible>.layer-row{outline:1px solid rgba(100,86,246,.75);outline-offset:1px}.chevron{color:#868686;padding:0}.layer-type-icon{color:#a8a8a8;display:inline-grid;place-items:center}.layer-group.is-group .layer-type-icon{color:#b8b8b8}.layer-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layer-name.inline-editing{outline:1px solid var(--blue);outline-offset:2px;border-radius:4px;background:#6456f61f}.mini-icon{width:16px;height:16px;border-radius:5px;font-size:9px}.mini-icon svg{width:12px;height:12px}.mini-icon.on{color:#fff}.element-list{margin:2px 0 6px 36px;display:grid;gap:3px}.root-element-list{min-height:4px;display:grid;gap:3px;margin:2px 0 6px}.root-element-list .element-row{padding-left:24px}.element-list.is-collapsed,.layer-group.collapsed .element-list{display:none!important}.panel-empty{margin:10px 0 0;color:#787878}.objects-list,.materials-list{display:grid;gap:4px}.element-row,.empty-row{min-height:21px;display:grid;grid-template-columns:16px minmax(0,1fr) 16px 16px;align-items:center;gap:6px;padding:0 6px;border-radius:6px;color:#a9a9a9;font-size:11px;text-align:left}.element-row{width:100%;background:transparent;position:relative;-webkit-user-select:none;user-select:none}.element-row.selected{color:#fff;background:#242424}.element-row:hover,.element-row:focus-visible{background:#1f1f1f;outline:none}.element-row.is-hidden .element-icon,.element-row.is-hidden .element-name{opacity:.42}.element-row.is-locked .element-name{color:#d2d2d2}.element-row.dragging{opacity:.68;background:#202a3f}.layer-group.drag-over>.layer-row{background:#6456f614;box-shadow:inset 0 0 0 1px #6456f680}.element-row.drop-before:before{content:"";position:absolute;left:4px;right:4px;top:-2px;height:2px;border-radius:999px;background:var(--blue)}.element-icon{color:#b5b5b5}.element-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inspector-section{padding:10px 10px 12px;margin-bottom:12px;border-bottom:1px solid var(--border)}.inspector-section:last-child{border-bottom:0;margin-bottom:0}.inspector-section h2{margin:0 0 10px;color:#fff;font-size:13px;line-height:1;font-weight:600}.inspector-section h3{margin:10px 0 7px;color:#fff;font-size:11px;font-weight:600}.inspector-row{min-height:30px;display:grid;grid-template-columns:minmax(66px,34%) minmax(0,1fr);align-items:center;gap:6px;margin-bottom:6px}.inspector-row>span,.compact-field span{color:var(--muted);font-size:11px;font-weight:500}.inspector-row strong{color:#fff;font-size:11px;font-weight:500}.control,.segmented,.status-grid,.icon-strip,.anchor-grid,.compact-field{min-height:28px;border-radius:var(--radius-control);background:var(--control);border:1px solid transparent;color:#fff}.control{width:100%;min-width:0;display:flex;align-items:center;gap:6px;padding:0 7px;font-size:11px;font-weight:500}.control input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:#fff;font-weight:500}.number-control input{flex:1 1 auto;width:auto}.control:focus-within,.compact-field:focus-within{border-color:#4e6ea8}.drag-control,.compact-field input[data-drag-kind],.number-control input[data-drag-kind]{cursor:ew-resize}select.control{appearance:none}.with-icon b{color:#bdbdbd;font-size:11px}.color-control input[type=color]{flex:0 0 auto;width:38px;height:22px;padding:0;border:1px solid #626262;border-radius:5px;background:transparent;overflow:hidden}.color-control input[type=color]::-webkit-color-swatch-wrapper{padding:0}.color-control input[type=color]::-webkit-color-swatch{border:0;border-radius:4px}.color-control .color-text{width:82px;flex:1 1 auto;min-width:0;color:#d8d8d8;text-transform:uppercase}.unit-control{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:6px}.unit-control .control{justify-content:flex-start}.unit-control select.control{appearance:auto;color:#fff}.unit-control .unit-more{justify-content:center;color:#b9b9b9;letter-spacing:1px}.inline-settings-panel{margin:8px 0 2px;padding:8px;border:1px solid var(--border);border-radius:8px;background:#141414}.inline-settings-panel h3{margin:2px 0 7px;font-size:11px}.unit-inline-row{grid-template-columns:minmax(60px,30%) minmax(0,1fr);margin-bottom:5px}.number-control em{flex:0 0 auto;overflow:hidden;color:#b9b9b9;font-style:normal;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.segmented,.status-grid,.icon-strip{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:2px;padding:2px}.segmented button,.status-grid button,.icon-strip button,.anchor-grid button{border-radius:6px;color:#a8a8a8;background:transparent;font-size:11px;font-weight:500}.segmented button.active,.status-grid button.active,.icon-strip button:hover,.anchor-grid button.active{background:#454545;color:#fff;box-shadow:inset 0 0 0 1px #5b5b5b}.dual-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px;margin-bottom:6px}.compact-field{min-width:0;display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;padding:0 7px;gap:5px}.compact-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#fff;font-size:11px;font-weight:500}.anchor-grid{width:52px;min-height:30px;display:grid;grid-template-columns:repeat(3,1fr);gap:3px;padding:6px;justify-self:start}.context-menu{position:fixed;z-index:80;min-width:152px;display:grid;gap:2px;padding:5px;border:1px solid #2b2b2b;border-radius:8px;background:#171717;box-shadow:0 18px 42px #0000006b}.material-row{min-height:28px;display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:7px;padding:0 8px;border-radius:7px;background:transparent;color:#bdbdbd;font-size:11px;font-weight:500;text-align:left}.material-row:hover{background:#202020;color:#fff}.material-row span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.material-row strong{color:#8f8f8f;font-size:10px}.material-swatch{width:17px;height:17px;border:1px solid #5a5a5a;border-radius:5px;background:var(--material)}.context-menu button{min-height:26px;display:flex;align-items:center;gap:7px;padding:0 9px;border-radius:6px;background:transparent;color:#dedede;font-size:11px;font-weight:500;text-align:left}.context-menu button.active{background:#242424;color:#fff}.context-menu button:hover{background:#303030;color:#fff}.context-menu button:disabled{cursor:not-allowed;opacity:.38}.context-menu button:disabled:hover{background:transparent;color:#dedede}.context-menu-separator{height:1px;margin:3px 2px;background:#2a2a2a}.anchor-grid button{width:6px;height:6px;min-width:6px;border-radius:50%;background:#6c6c6c;padding:0}.anchor-grid button.active{background:#fff}@media(max-width:1100px){.app-shell{grid-template-columns:var(--left-pane-width, calc((100vw - var(--splitter)) * .7)) var(--splitter) minmax(0,1fr)}.workspace-right{grid-template-rows:var(--preview-pane-height, 30%) var(--splitter) minmax(0,1fr)}.editor-topbar{grid-template-columns:32px minmax(82px,118px) minmax(0,1fr)}}.dashboard-hero h1,.dashboard-section-title h2,.file-card h3,.file-block strong,.inspector-section h2{font-family:var(--ost-font-display);letter-spacing:-.02em}.hud,.coordinate-hud,.canvas-row small,.file-block small,.with-icon b,.number-control em,.color-control .color-text{font-family:var(--ost-font-mono)}.file-block small.is-saved{color:var(--ost-level)}.preview-segment button.active,.preview-control-button.active{background:var(--ost-purple-soft);color:var(--ost-purple)}#previewEditToggle.active{background:#1fc9c029;color:var(--ost-live)}.empty-row{display:flex;align-items:center;white-space:nowrap;color:var(--ost-text-3)}.drag-control,.compact-field input[data-drag-kind],.number-control input[data-drag-kind],.control.drag-control input{cursor:ew-resize}.preview-canvas:focus,.preview-canvas:focus-visible,.preview-mount:focus,.preview-mount:focus-visible,.preview-panel:focus,.preview-panel:focus-visible{outline:none}.preview-panel.preview-expanded .preview-expand{width:40px;height:40px;border-radius:var(--ost-radius);border:1px solid var(--ost-hairline);background:var(--ost-popover);box-shadow:var(--ost-shadow-popover);color:var(--ost-text-2)}.preview-panel.preview-expanded .preview-expand:hover{background:var(--ost-hover);color:var(--ost-text)}.preview-floor-select{position:absolute;top:12px;left:14px;z-index:6;display:none;align-items:center;gap:8px;height:40px;padding:0 12px;border:1px solid var(--ost-hairline);border-radius:var(--ost-radius);background:var(--ost-popover);box-shadow:var(--ost-shadow-popover);color:var(--ost-text);font-family:var(--ost-font-ui);font-size:13px;font-weight:600;cursor:pointer}.preview-panel.preview-expanded .preview-floor-select{display:inline-flex}.preview-floor-select .ui-icon{color:var(--ost-text-2)}.preview-edit-panel{position:absolute;top:64px;right:14px;z-index:6;width:288px;max-height:calc(100% - 84px);overflow:auto;display:none;border:1px solid var(--ost-hairline);border-radius:var(--ost-radius-lg);background:var(--ost-popover);box-shadow:var(--ost-shadow-popover)}.preview-panel.preview-expanded .preview-edit-panel.is-visible{display:block}.preview-edit-panel .coordinate-hud{display:none}.preview-edit-panel .inspector-section{padding:14px}.access-gate{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:24px;background:radial-gradient(900px 520px at 50% -10%,rgba(100,86,246,.18),transparent 60%),var(--ost-canvas)}.access-card{width:min(420px,100%);display:flex;flex-direction:column;gap:14px;padding:30px;border:1px solid var(--ost-hairline);border-radius:var(--ost-radius-lg);background:var(--ost-panel);box-shadow:var(--ost-shadow-popover)}.access-brand{display:inline-flex;align-items:center;gap:9px;color:var(--ost-text);font-family:var(--ost-font-display);font-weight:600;text-decoration:none}.access-brand img{width:26px;height:26px}.access-eyebrow{margin:6px 0 0;font-family:var(--ost-font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ost-purple-hover)}.access-card h1{margin:0;font-family:var(--ost-font-display);font-size:26px;line-height:1.1;font-weight:600;letter-spacing:-.02em;color:var(--ost-text)}.access-lead{margin:0;color:var(--ost-text-2);font-size:var(--ost-size-base);line-height:1.55}.access-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:4px}.access-form input{min-width:0;height:42px;padding:0 14px;border:1px solid var(--ost-hairline);border-radius:var(--ost-radius);background:var(--ost-field);color:var(--ost-text);font:inherit;font-size:var(--ost-size-base);outline:none}.access-form input:focus{border-color:var(--ost-purple);box-shadow:0 0 0 3px var(--ost-purple-soft)}.access-form button{height:42px;padding:0 18px;border:0;border-radius:var(--ost-radius);background:var(--ost-purple);color:#fff;font:inherit;font-weight:600;cursor:pointer}.access-form button:hover{background:var(--ost-purple-hover)}.access-error{margin:0;color:var(--ost-critical);font-size:var(--ost-size-base)}.access-waitlist{margin-top:2px;color:var(--ost-text-2);font-size:var(--ost-size-base);font-weight:500;text-decoration:none}.access-waitlist:hover{color:var(--ost-purple-hover)}
