:root{--bg0:#0d0f12;--bg1:#13161b;--bg2:#1a1e25;--surface:#1e2229;--surface2:#252b34;--border:#2a3040;--border2:#323b4a;--text-pri:#e8eaf0;--text-sec:#9ba3b5;--text-dim:#637085;--ember:#f97316;--ember-dim:#7c3a14;--blue:#3b82f6;--blue-dim:#1e3a5f;--accent:#f97316;--accent-glow:#f9731626;--green:#22c55e;--red:#ef4444;--amber:#f59e0b;--panel-handle:#2a3040;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--bg0:#f0f2f5;--bg1:#e8eaed;--bg2:#fff;--surface:#fff;--surface2:#f5f7fa;--border:#d1d9e6;--border2:#b8c4d6;--text-pri:#1a202c;--text-sec:#4a5568;--text-dim:#a0aec0;--ember:#ea6c0a;--ember-dim:#fde2c8;--blue:#2563eb;--blue-dim:#c8d8f5;--accent:#ea6c0a;--accent-glow:#ea6c0a1f;--green:#16a34a;--red:#dc2626;--amber:#d97706;--panel-handle:#d1d9e6;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%}body{background:var(--bg0);color:var(--text-pri);font-family:Geist,system-ui,-apple-system,sans-serif;font-size:13px;overflow:hidden}.dock-zone{background:var(--bg1);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.dock-dragover{outline:2px solid var(--ember);outline-offset:-2px}.dock-tabs{background:var(--bg0);border-bottom:1px solid var(--border);flex-shrink:0;min-height:29px;display:flex}.dock-tab{color:var(--text-dim);cursor:grab;letter-spacing:.02em;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:5px;padding:6px 12px;font-family:inherit;font-size:11px;font-weight:500;transition:color .15s,border-color .15s;display:flex}.dock-tab:hover{color:var(--text-sec)}.dock-tab.active{color:var(--text-pri);border-bottom-color:var(--ember);cursor:pointer}.dock-tab-icon{flex-shrink:0;font-size:11px}.dock-body{flex:1;min-height:0;overflow-y:auto}.dock-empty{color:var(--text-dim);text-align:center;padding:16px 12px;font-size:11px;font-style:italic}.topbar{background:var(--bg1);border-bottom:1px solid var(--border);z-index:100;flex-shrink:0;align-items:center;height:40px;display:flex}.topbar-logo{border-right:1px solid var(--border);align-items:center;gap:7px;height:100%;padding:0 14px;display:flex}.topbar-flame{width:18px;height:18px}.topbar-brand{letter-spacing:.02em;font-size:12px;font-weight:600}.topbar-brand-blue{color:var(--blue)}.topbar-brand-ember{color:var(--ember)}.topbar-menus{height:100%;display:flex}.topbar-menu{height:100%;color:var(--text-sec);cursor:pointer;background:0 0;border:none;align-items:center;padding:0 12px;font-family:inherit;font-size:12px;transition:all .15s;display:flex}.topbar-menu:hover{color:var(--text-pri);background:var(--surface)}.topbar-center{flex:1;justify-content:center;align-items:center;gap:2px;display:flex}.mode-btn{cursor:pointer;color:var(--text-sec);letter-spacing:.03em;background:0 0;border:1px solid #0000;border-radius:4px;padding:4px 14px;font-family:inherit;font-size:11px;font-weight:500;transition:all .15s}.mode-btn:hover{color:var(--text-pri);background:var(--surface2)}.mode-btn.active{background:var(--ember);color:#fff;border-color:var(--ember)}.mode-btn.play-style{color:var(--green);border-color:var(--border2);background:var(--surface)}.mode-btn.play-style:hover{border-color:var(--green);background:#22c55e1a}.mode-btn.pause-style{color:var(--amber);border-color:var(--border2);background:var(--surface)}.mode-btn.pause-style:hover{border-color:var(--amber);background:#f59e0b1a}.mode-btn.stop-style{color:var(--red);border-color:var(--border2);background:var(--surface)}.mode-btn.stop-style:hover{border-color:var(--red);background:#ef44441a}.topbar-right{border-left:1px solid var(--border);align-items:center;gap:8px;padding:0 12px;display:flex}.topbar-theme{border:1px solid var(--border2);background:var(--surface);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;transition:all .15s;display:flex}.topbar-theme:hover{background:var(--surface2)}.topbar-action{cursor:pointer;border:1px solid var(--border2);background:var(--surface);color:var(--text-sec);border-radius:5px;padding:4px 12px;font-family:inherit;font-size:11px;font-weight:500;transition:all .15s}.topbar-action:hover{color:var(--text-pri);border-color:var(--text-dim)}.topbar-publish{cursor:pointer;background:linear-gradient(135deg, var(--blue) 0%, var(--ember) 100%);color:#fff;letter-spacing:.03em;border:none;border-radius:5px;padding:4px 14px;font-family:inherit;font-size:11px;font-weight:600;transition:opacity .15s}.topbar-publish:hover{opacity:.85}.activity-bar{background:var(--bg1);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;align-items:center;gap:2px;width:44px;padding:8px 0;display:flex}.act-btn{cursor:pointer;width:32px;height:32px;color:var(--text-dim);background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;font-size:15px;transition:all .15s;display:flex;position:relative}.act-btn:hover{color:var(--text-sec);background:var(--surface)}.act-btn.active{color:var(--ember);background:var(--accent-glow)}.act-btn.active:before{content:"";background:var(--ember);border-radius:0 2px 2px 0;width:3px;height:20px;position:absolute;left:-8px}.act-sep{background:var(--border);width:24px;height:1px;margin:4px 0}.act-bottom{margin-top:auto}.editor-overlay{pointer-events:none;z-index:2;position:absolute;inset:0}.editor-overlay-canvas{pointer-events:auto;position:absolute;inset:0}.canvas-panel{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.canvas-toolbar{background:var(--bg1);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:2px;height:34px;padding:0 8px;display:flex}.canvas-tool{cursor:pointer;width:26px;height:26px;color:var(--text-dim);background:0 0;border:none;border-radius:5px;justify-content:center;align-items:center;font-size:13px;transition:all .15s;display:flex}.canvas-tool:hover{color:var(--text-sec);background:var(--surface)}.canvas-tool.active{color:var(--ember);background:var(--accent-glow)}.canvas-sep{background:var(--border);width:1px;height:18px;margin:0 4px}.canvas-info{color:var(--text-dim);align-items:center;gap:10px;margin-left:auto;font-family:JetBrains Mono,monospace;font-size:10px;display:flex}.canvas-mode{letter-spacing:.05em}.canvas-mode-edit{color:var(--text-dim)}.canvas-mode-play{color:var(--green)}.canvas-mode-pause{color:var(--amber)}.canvas-area{background:var(--bg0);flex:1;min-height:0;position:relative;overflow:hidden}.canvas-iframe{border:0;width:100%;height:100%;display:block;position:absolute;inset:0}.lm-field{position:relative}.lm-summary{background:var(--bg0);border:1px solid var(--border);color:var(--text-pri);cursor:pointer;text-align:left;border-radius:4px;flex:1;justify-content:space-between;align-items:center;gap:4px;min-width:0;padding:3px 7px;font-family:JetBrains Mono,monospace;font-size:11px;transition:border .15s;display:flex}.lm-summary:hover{border-color:var(--border2)}.lm-summary:focus{border-color:var(--ember);outline:none}.lm-summary-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lm-arrow{color:var(--text-dim);flex-shrink:0;font-size:9px}.lm-dropdown{z-index:20;background:var(--bg1);border:1px solid var(--border);border-radius:4px;max-height:320px;margin-top:2px;position:absolute;left:10px;right:10px;overflow-y:auto;box-shadow:0 4px 12px #00000040}.lm-quick-buttons{gap:4px;padding:6px 8px 4px;display:flex}.lm-btn{background:var(--bg0);border:1px solid var(--border);color:var(--text-sec);cursor:pointer;border-radius:3px;flex:1;padding:2px 0;font-size:10px;transition:background .1s,color .1s}.lm-btn:hover{background:var(--surface);color:var(--text-pri)}.lm-layer-list{padding:2px 0}.lm-layer-row{cursor:pointer;color:var(--text-pri);align-items:center;gap:6px;padding:2px 8px;font-size:11px;transition:background .1s;display:flex}.lm-layer-row:hover{background:var(--surface)}.lm-check{accent-color:var(--ember);flex-shrink:0;margin:0}.lm-layer-index{color:var(--text-dim);text-align:right;flex-shrink:0;width:14px;font-family:JetBrains Mono,monospace;font-size:9px}.lm-layer-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lm-separator{background:var(--border);height:1px;margin:4px 8px}.lm-manage-btn{border:1px solid var(--border);width:calc(100% - 16px);color:var(--text-sec);cursor:pointer;background:0 0;border-radius:3px;margin:4px 8px 6px;padding:3px 0;font-size:10px;transition:background .1s,color .1s;display:block}.lm-manage-btn:hover{background:var(--surface);color:var(--text-pri)}.lm-manage-section{padding:0 8px 8px}.lm-manage-row{align-items:center;gap:4px;padding:2px 0;display:flex}.lm-manage-index{color:var(--text-dim);text-align:right;flex-shrink:0;width:14px;font-family:JetBrains Mono,monospace;font-size:9px}.lm-manage-input{background:var(--bg0);border:1px solid var(--border);color:var(--text-pri);border-radius:3px;outline:none;flex:1;min-width:0;padding:2px 6px;font-size:10px;transition:border .15s}.lm-manage-input:focus{border-color:var(--ember)}.lm-manage-remove{width:18px;height:18px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;transition:background .1s,color .1s;display:flex}.lm-manage-remove:hover{background:var(--surface2);color:var(--red)}.lm-manage-add{border:1px dashed var(--border);width:100%;color:var(--text-dim);cursor:pointer;background:0 0;border-radius:3px;margin-top:4px;padding:3px 0;font-size:10px;transition:background .1s,color .1s;display:block}.lm-manage-add:hover{background:var(--surface);color:var(--text-sec);border-color:var(--border2)}.comp-section{border-bottom:1px solid var(--border)}.comp-header{cursor:pointer;justify-content:space-between;align-items:center;padding:6px 10px;transition:background .1s;display:flex}.comp-header:hover{background:var(--surface)}.comp-title{letter-spacing:.05em;text-transform:uppercase;color:var(--text-sec);font-size:11px;font-weight:600}.comp-header-actions{align-items:center;gap:6px;display:flex}.comp-remove{color:#0000;cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;width:16px;height:16px;font-size:9px;transition:all .1s;display:flex}.comp-header:hover .comp-remove{color:var(--text-dim)}.comp-remove:hover{background:var(--surface2);color:var(--red)!important}.comp-toggle{color:var(--text-dim);font-size:10px}.comp-fields{padding:2px 0 6px}.comp-json{color:var(--text-dim);white-space:pre-wrap;word-break:break-word;max-height:120px;margin:0;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:10px;line-height:1.4;overflow-y:auto}.ce-row{align-items:center;gap:8px;padding:2px 10px;display:flex}.ce-label{color:var(--text-sec);text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;width:70px;font-size:11px;overflow:hidden}.ce-input{background:var(--bg0);border:1px solid var(--border);color:var(--text-pri);border-radius:4px;outline:none;flex:1;width:100%;padding:3px 7px;font-family:JetBrains Mono,monospace;font-size:11px;transition:border .15s}.ce-input:focus{border-color:var(--ember)}.ce-select{cursor:pointer}.ce-check{accent-color:var(--ember)}.ce-handle{color:var(--text-dim);font-size:10px}.ce-group-label{color:var(--text-sec);padding:4px 10px 1px;font-size:10px}.ce-group-row{align-items:center;gap:4px;padding:2px 10px;display:flex}.ce-group-field{flex:1;align-items:center;gap:3px;min-width:0;display:flex}.ce-axis-label{color:var(--text-sec);text-align:center;flex-shrink:0;width:10px;font-size:10px}.ce-color-swatch{border:1px solid var(--border2);cursor:pointer;background:0 0;border-radius:4px;width:28px;height:22px;padding:0}.ce-alpha-slider{height:4px;accent-color:var(--ember);cursor:pointer;flex:1}.ce-alpha-value{color:var(--text-dim);text-align:right;flex-shrink:0;width:30px;font-family:JetBrains Mono,monospace;font-size:10px}.ce-drop-target{border-radius:4px;transition:background .15s}.ce-drag-over{background:var(--accent-glow);outline:1px dashed var(--ember);outline-offset:-1px}.ce-handle-wrap{flex:1;min-width:0;position:relative}.ce-handle-wrap .ce-input{width:100%}.ce-drop-hint{color:var(--text-dim);pointer-events:none;font-size:9px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.ce-drop-active{color:var(--ember);font-weight:500}.ce-color-channels{padding-top:0}.add-comp-wrap{padding:6px;position:relative}.add-comp-btn{border:1px dashed var(--border2);text-align:center;width:100%;color:var(--text-dim);cursor:pointer;background:0 0;border-radius:5px;padding:5px;font-family:inherit;font-size:11px;transition:all .15s;display:block}.add-comp-btn:hover{color:var(--text-sec);border-color:var(--text-dim)}.add-comp-menu{background:var(--surface);border:1px solid var(--border2);z-index:10;border-radius:6px;max-height:300px;padding:4px 0;position:absolute;top:100%;left:6px;right:6px;overflow-y:auto;box-shadow:0 4px 16px #0000004d}.add-comp-cat{letter-spacing:.08em;color:var(--text-dim);text-transform:uppercase;padding:6px 10px 2px;font-size:9px;font-weight:600}.add-comp-item{text-align:left;width:100%;color:var(--text-pri);cursor:pointer;background:0 0;border:none;padding:4px 10px;font-family:inherit;font-size:12px;transition:background .1s;display:block}.add-comp-item:hover{background:var(--accent-glow);color:var(--ember)}.right-panel{background:var(--bg1);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.right-tabs{background:var(--bg0);border-bottom:1px solid var(--border);flex-shrink:0;display:flex}.right-tab{color:var(--text-dim);cursor:pointer;letter-spacing:.02em;border-bottom:2px solid #0000;padding:6px 14px;font-size:11px;font-weight:500;transition:all .15s}.right-tab.active{color:var(--text-pri);border-bottom-color:var(--ember)}.right-body{flex:1;overflow-y:auto}.right-empty{color:var(--text-dim);text-align:center;padding:16px 12px;font-size:11px;font-style:italic}.entity-header{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:8px 10px;display:flex}.entity-header-icon{font-size:16px}.entity-header-name{color:var(--text-pri);font-size:12px;font-weight:600}.entity-header-meta{color:var(--text-dim);font-size:10px}.inspector-section{border-bottom:1px solid var(--border);padding:8px 0}.inspector-header{justify-content:space-between;align-items:center;padding:0 10px 6px;display:flex}.inspector-title{letter-spacing:.05em;text-transform:uppercase;color:var(--text-sec);font-size:11px;font-weight:600}.field-row{align-items:center;gap:8px;padding:3px 10px;display:flex}.field-label{color:var(--text-sec);flex-shrink:0;width:56px;font-size:11px}.field-input{background:var(--bg0);border:1px solid var(--border);color:var(--text-pri);border-radius:4px;outline:none;flex:1;width:100%;padding:3px 7px;font-family:JetBrains Mono,monospace;font-size:11px;transition:border .15s}.field-input:focus{border-color:var(--ember)}.field-row-2{align-items:center;gap:4px;padding:3px 10px;display:flex}.field-label-2{text-align:center;flex-shrink:0;width:14px;font-size:11px}.inspector-actions{gap:6px;padding:6px 10px 0;display:flex}.inspector-btn{cursor:pointer;border:1px solid var(--border2);background:var(--surface);color:var(--text-sec);border-radius:4px;padding:3px 10px;font-family:inherit;font-size:11px;transition:all .15s}.inspector-btn:hover{color:var(--text-pri);border-color:var(--text-dim)}.inspector-btn.danger:hover{color:var(--red);border-color:var(--red)}.inspector-json{color:var(--text-dim);white-space:pre-wrap;word-break:break-word;max-height:120px;margin:0;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:10px;line-height:1.4;overflow-y:auto}.add-comp{border:1px dashed var(--border2);text-align:center;width:calc(100% - 12px);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:5px;margin:6px;padding:5px;font-family:inherit;font-size:11px;transition:all .15s;display:block}.add-comp:hover{color:var(--text-sec);border-color:var(--text-dim)}.assets-panel{background:var(--bg1);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.assets-tabs{background:var(--bg0);border-bottom:1px solid var(--border);flex-shrink:0;display:flex}.assets-tab{color:var(--text-dim);cursor:pointer;letter-spacing:.02em;border-bottom:2px solid #0000;padding:6px 14px;font-size:11px;font-weight:500}.assets-tab.active{color:var(--text-pri);border-bottom-color:var(--ember)}.assets-toolbar{border-bottom:1px solid var(--border);flex-shrink:0;padding:6px 8px}.assets-filter{background:var(--bg0);border:1px solid var(--border);width:100%;color:var(--text-pri);cursor:pointer;border-radius:4px;padding:3px 6px;font-family:inherit;font-size:11px}.assets-body{flex:1;overflow-y:auto}.assets-empty{color:var(--text-dim);text-align:center;padding:16px 12px;font-size:11px;font-style:italic}.assets-grid{grid-template-columns:repeat(2,1fr);gap:6px;padding:8px;display:grid}.asset-thumb{background:var(--bg0);border:1px solid var(--border);cursor:pointer;border-radius:5px;transition:all .15s;position:relative;overflow:hidden}.asset-thumb:hover{border-color:var(--ember)}.asset-thumb:hover .asset-thumb-remove{opacity:1}.asset-thumb-color{aspect-ratio:1;justify-content:center;align-items:center;display:flex}.asset-thumb-icon{font-size:20px}.asset-thumb-name{color:var(--text-sec);text-overflow:ellipsis;white-space:nowrap;padding:3px 6px;font-size:9px;overflow:hidden}.asset-kind-badge{letter-spacing:.04em;text-transform:uppercase;color:var(--text-sec);background:#00000080;border-radius:3px;padding:1px 4px;font-size:8px;font-weight:600;position:absolute;top:3px;left:3px}.asset-thumb-remove{width:16px;height:16px;color:var(--text-dim);cursor:pointer;opacity:0;background:#00000080;border:none;border-radius:3px;justify-content:center;align-items:center;font-size:8px;transition:all .1s;display:flex;position:absolute;top:3px;right:3px}.asset-thumb-remove:hover{background:var(--red);color:#fff}.assets-footer{border-top:1px solid var(--border);flex-shrink:0;padding:6px 8px}.assets-import-btn{border:1px solid var(--border2);background:var(--surface);width:100%;color:var(--text-sec);cursor:pointer;border-radius:5px;padding:6px;font-family:inherit;font-size:11px;font-weight:500;transition:all .15s}.assets-import-btn:hover{color:var(--ember);border-color:var(--ember);background:var(--accent-glow)}.scripts-content{height:100%;position:relative}.scripts-popout-toggle{z-index:2;border:1px solid var(--border2);background:var(--bg1);width:24px;height:24px;color:var(--text-dim);cursor:pointer;opacity:.6;border-radius:4px;justify-content:center;align-items:center;font-size:14px;transition:all .15s;display:flex;position:absolute;top:6px;right:10px}.scripts-popout-toggle:hover{opacity:1;color:var(--text-pri);border-color:var(--text-dim)}.scripts-popout-msg{height:100%;color:var(--text-dim);justify-content:center;align-items:center;gap:12px;font-size:12px;font-style:italic;display:flex}.scripts-dock-btn{cursor:pointer;border:1px solid var(--border2);background:var(--surface);color:var(--text-sec);border-radius:4px;padding:3px 10px;font-family:inherit;font-size:11px;transition:all .15s}.scripts-dock-btn:hover{color:var(--text-pri);border-color:var(--text-dim)}.settings-overlay{z-index:1000;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.settings-card{background:var(--panel-bg,#1e1e1e);color:var(--panel-fg,#d4d4d4);border:1px solid var(--panel-border,#333);border-radius:6px;flex-direction:column;width:480px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);display:flex;overflow:auto}.settings-header{border-bottom:1px solid var(--panel-border,#333);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.settings-title{margin:0;font-size:14px;font-weight:600}.settings-close{color:var(--panel-fg,#d4d4d4);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:18px}.settings-body{flex-direction:column;gap:16px;padding:16px;display:flex}.settings-row{flex-direction:column;gap:6px;display:flex}.settings-row>label{color:var(--panel-muted,#aaa);font-size:12px}.settings-row>select,.settings-row>input{background:var(--input-bg,#2d2d2d);color:var(--panel-fg,#d4d4d4);border:1px solid var(--panel-border,#444);border-radius:4px;padding:6px 8px;font-size:13px}.settings-row .help{color:var(--panel-muted,#888);font-size:11px}.settings-status{color:var(--panel-muted,#aaa);padding:4px 0;font-size:12px}.settings-status.error{color:#e76f6f}.settings-actions{border-top:1px solid var(--panel-border,#333);justify-content:flex-end;gap:8px;padding:12px 16px;display:flex}.settings-actions button{background:var(--button-bg,#2d2d2d);color:var(--panel-fg,#d4d4d4);border:1px solid var(--panel-border,#444);cursor:pointer;border-radius:4px;padding:6px 14px;font-size:13px}.settings-actions button:disabled{opacity:.5;cursor:not-allowed}.settings-actions button.primary{background:var(--blue,#2b78c4);color:#fff;border-color:#0000}.statusbar{background:var(--bg0);border-top:1px solid var(--border);flex-shrink:0;align-items:center;gap:16px;height:22px;padding:0 10px;display:flex}.status-item{color:var(--text-dim);align-items:center;gap:5px;font-family:JetBrains Mono,monospace;font-size:10px;display:flex}.status-dot{border-radius:50%;width:5px;height:5px}.status-dot.green{background:var(--green)}.status-dot.amber{background:var(--amber)}.status-ember{color:var(--ember);font-weight:500}.status-error{color:var(--red)}.vault-overlay{z-index:200;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.vault-modal{background:var(--bg1);border:1px solid var(--border2);border-radius:10px;flex-direction:column;width:680px;max-width:90vw;max-height:80vh;display:flex;overflow:hidden;box-shadow:0 8px 40px #00000080}.vault-header{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:10px;padding:12px 16px;display:flex}.vault-title{color:var(--text-pri);font-size:14px;font-weight:600}.vault-subtitle{color:var(--text-dim);font-size:11px}.vault-close{width:24px;height:24px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:5px;justify-content:center;align-items:center;margin-left:auto;font-size:12px;transition:all .1s;display:flex}.vault-close:hover{background:var(--surface2);color:var(--text-pri)}.vault-toolbar{border-bottom:1px solid var(--border);flex-shrink:0;gap:6px;padding:8px 16px;display:flex}.vault-search{background:var(--bg0);border:1px solid var(--border);color:var(--text-pri);border-radius:5px;outline:none;flex:1;padding:5px 10px;font-family:inherit;font-size:12px;transition:border .15s}.vault-search:focus{border-color:var(--ember)}.vault-search::placeholder{color:var(--text-dim)}.vault-filter{background:var(--bg0);border:1px solid var(--border);color:var(--text-pri);cursor:pointer;border-radius:5px;padding:5px 8px;font-family:inherit;font-size:11px}.vault-body{flex:1;min-height:0;overflow-y:auto}.vault-empty{text-align:center;color:var(--text-dim);padding:32px 16px;font-size:12px;font-style:italic}.vault-list{padding:4px 0}.vault-item{align-items:center;gap:10px;padding:6px 16px;transition:background .1s;display:flex}.vault-item:hover{background:var(--surface)}.vault-item.imported{opacity:.6}.vault-item-thumb{border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;display:flex}.vault-item-info{flex:1;min-width:0}.vault-item-name{color:var(--text-pri);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;overflow:hidden}.vault-item-meta{color:var(--text-dim);gap:8px;margin-top:1px;font-size:10px;display:flex}.vault-item-kind{text-transform:uppercase;letter-spacing:.04em;font-weight:500}.vault-item-tags{flex-wrap:wrap;gap:4px;margin-top:2px;display:flex}.vault-tag{background:var(--surface2);color:var(--text-dim);border-radius:3px;padding:0 4px;font-size:9px}.vault-import-btn{border:1px solid var(--border2);background:var(--surface);color:var(--text-sec);cursor:pointer;border-radius:5px;flex-shrink:0;padding:4px 12px;font-family:inherit;font-size:11px;font-weight:500;transition:all .15s}.vault-import-btn:hover:not(:disabled){color:var(--ember);border-color:var(--ember);background:var(--accent-glow)}.vault-import-btn.imported{color:var(--green);cursor:default;background:0 0;border-color:#0000}.vault-footer{border-top:1px solid var(--border);flex-shrink:0;padding:8px 16px}.vault-upload-btn{border:1px dashed var(--border2);width:100%;color:var(--text-dim);cursor:pointer;background:0 0;border-radius:5px;padding:6px;font-family:inherit;font-size:11px;transition:all .15s}.vault-upload-btn:hover{color:var(--text-sec);border-color:var(--text-dim)}.entity-tree{flex:1;overflow-y:auto}.entity-tree-section{padding:6px 0}.entity-tree-header{letter-spacing:.08em;color:var(--text-dim);text-transform:uppercase;padding:6px 12px 3px;font-size:10px;font-weight:600}.tree-root-drop{min-height:20px}.tree-item{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:4px;align-items:center;gap:6px;margin:1px 4px;padding:3px 12px 3px 8px;font-size:12px;transition:background .1s;display:flex}.tree-item:hover{background:var(--surface)}.tree-item.selected{background:var(--surface2);color:var(--ember)}.tree-item.drop-target{outline:1.5px solid var(--ember);outline-offset:-1.5px;background:var(--accent-glow)}.tree-item.dragging{opacity:.4}.tree-arrow{width:12px;color:var(--text-dim);text-align:center;cursor:default;flex-shrink:0;font-size:9px}.tree-arrow.has-children{cursor:pointer}.tree-arrow.has-children:hover{color:var(--text-sec)}.tree-icon{flex-shrink:0;font-size:13px}.tree-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tree-child-count{color:var(--text-dim);background:var(--surface);border-radius:8px;padding:0 5px;font-size:9px;line-height:16px}.tree-empty{color:var(--text-dim);padding:4px 12px;font-size:11px;font-style:italic}.tree-add{border:1px dashed var(--border2);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:5px;align-items:center;gap:6px;margin:4px;padding:4px 12px;font-family:inherit;font-size:11px;transition:all .15s;display:flex}.tree-add:hover{color:var(--text-sec);border-color:var(--text-dim)}.tree-unparent-zone{border:1px dashed var(--border2);height:24px;color:var(--text-dim);opacity:0;border-radius:4px;justify-content:center;align-items:center;margin:2px 4px;font-size:10px;transition:opacity .15s;display:flex}.tree-unparent-zone.visible{opacity:1}.tree-unparent-zone.drop-hover{border-color:var(--ember);color:var(--ember);background:var(--accent-glow)}.app{flex-direction:column;height:100vh;display:flex}.settings-gate{color:var(--panel-fg,#d4d4d4);text-align:center;z-index:999;background:#0000008c;justify-content:center;align-items:center;padding:32px;font-size:14px;display:flex;position:fixed;inset:0}.settings-gate p{max-width:480px;line-height:1.5}.settings-gate code{background:#ffffff14;border-radius:3px;padding:1px 6px;font-family:ui-monospace,monospace}.workspace{flex:1;min-height:0;display:flex;overflow:hidden}.panel-area{flex:1;min-width:0;display:flex;overflow:hidden}.center-col{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.handle-v{background:var(--panel-handle);cursor:col-resize;flex-shrink:0;width:4px;transition:background .15s}.handle-v:hover{background:var(--ember)}.handle-h{background:var(--panel-handle);cursor:row-resize;flex-shrink:0;height:4px;transition:background .15s}.handle-h:hover{background:var(--ember)}.console-list{font-family:JetBrains Mono,monospace;font-size:11px}.console-line{border-bottom:1px solid #0000;gap:8px;padding:2px 12px;line-height:1.6;display:flex}.console-line:hover{background:var(--surface)}.cl-arrow{text-align:center;width:14px;color:var(--text-dim);flex-shrink:0}.console-line:has(.cl-arrow:first-child) .cl-arrow{color:var(--blue)}.cl-msg{color:var(--text-sec);word-break:break-word;white-space:pre-wrap;flex:1}.cl-error{background:#ef44440d}.cl-error .cl-msg{color:var(--red)}.cl-warn{background:#f59e0b0d}.cl-warn .cl-msg{color:var(--amber)}.cl-debug .cl-msg{color:var(--text-dim)}
