:root{color-scheme:dark;--bg:#1d2127;--panel:#282e35;--panel-alt:#242a31;--border:#3b424b;--text:#d1d6dc;--muted:#89939f;--input:#1f252c;--graph-bg:#1b2026;--node-bg:#353c45;--accent:#d0a668;--sidebar:326px;--viewport-ratio:61%;font:12px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden}body{display:flex;flex-direction:column;background:var(--bg);color:var(--text)}button,input,select{font:inherit}button{cursor:pointer;color:inherit;border:0;background:transparent}button:disabled{cursor:not-allowed;opacity:.4}button:hover{color:#f0ca8c}button:focus-visible,a:focus-visible{outline:1px solid var(--accent);outline-offset:-2px}input,select,textarea{outline:none;color:var(--text);background:var(--input);border:1px solid var(--border);border-radius:3px;padding:6px 8px}input:focus,select:focus,textarea:focus{border-color:var(--accent)}input[type=range]{accent-color:var(--accent)}a{color:inherit;text-decoration:none}svg{display:block}button.active{color:var(--accent)}[hidden]{display:none!important}.menubar{height:45px;display:flex;align-items:center;flex-shrink:0;background:#20262c;border-bottom:1px solid var(--border);padding:0 13px 0 15px;gap:20px}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap}.brand svg{width:26px;height:29px;stroke:var(--accent);stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}.brand strong{font-size:12px;letter-spacing:1.9px;color:#ece6dc;font-weight:650}.brand em{font-style:normal;font-size:9px;letter-spacing:1px;color:var(--accent);margin-left:3px}.menubar nav{display:flex;gap:1px;height:100%;align-items:center}.menubar nav button{padding:8px 9px;color:#aab2bb;font-size:11px;border-radius:3px}.menubar nav button:hover{background:#333b44;color:#e7d4b3}.project-heading{display:flex;align-items:center;justify-content:center;gap:4px;flex:1;min-width:80px;font-size:11px}.project-heading button{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:5px}.project-dot{width:5px;height:5px;background:#8eab98;border-radius:50%;margin-right:3px}.file-ext{color:#626d7a;font-size:10px}.header-right{display:flex;align-items:center;gap:10px}.quiet{color:#aab4c0;font-size:11px}.avatar{display:grid;place-items:center;border:1px solid #647a73;background:#354a43;color:#b5c5b4;border-radius:50%;height:24px;width:24px;font-size:10px}.share-btn{border:1px solid #675941;background:#3f382d;color:#dec399;font-size:11px;border-radius:4px;height:27px;padding:0 10px;display:flex;gap:7px;align-items:center}.workspacebar{height:37px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);flex-shrink:0;background:var(--panel-alt);padding:0 13px}.workspaces{display:flex;height:100%;gap:18px}.workspaces button{font-size:10px;color:var(--muted);padding:0 9px;border-bottom:2px solid transparent}.workspaces button.active{color:var(--text);border-bottom-color:var(--accent)}.workspace-right{display:flex;align-items:center;gap:15px;font-size:10px;color:var(--muted)}.workspace-right>button{font-size:10px}.workspace-right #command-btn{display:flex;align-items:center;gap:9px;border-left:1px solid var(--border);padding-left:17px}kbd{font:9px ui-monospace,SFMono-Regular,monospace;border:1px solid var(--border);border-radius:3px;padding:2px 4px;color:#9aa6b5;background:#242b33}.shelf{height:91px;flex-shrink:0;background:var(--panel);border-bottom:1px solid #161b21}.shelf-tabs{height:28px;padding:0 16px;display:flex;align-items:stretch;gap:24px;border-bottom:1px solid #353d47}.shelf-tabs button{padding:0 2px;font-size:10px;color:var(--muted);border-bottom:1px solid transparent}.shelf-tabs button.active{color:#d6bc92;border-bottom-color:#b4915c}.shelf-tools{height:61px;display:flex;align-items:center;gap:2px;padding:5px 15px;overflow:auto}.shelf-tools button{height:50px;min-width:63px;padding:5px 8px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:5px;border:1px solid transparent;border-radius:3px;font-size:9px;color:#b4bdc7;white-space:nowrap}.shelf-tools button:hover{background:#373e48;border-color:#535c65}.shelf-tools .tool-icon{font-size:25px;line-height:26px;color:#a8bac6;font-family:system-ui,sans-serif;font-weight:300}.shelf-tools .shelf-separator{height:32px;width:1px;background:var(--border);margin:0 8px}.desktop{display:grid;grid-template-columns:minmax(420px,1fr) 5px var(--sidebar);min-height:0;flex:1;gap:0;padding:4px 5px 0;background:#181d22}.left-stack{display:flex;flex-direction:column;min-height:0;min-width:0}.viewer-pane{height:var(--viewport-ratio);min-height:185px;flex-shrink:0;display:flex;flex-direction:column}.network-pane{display:flex;flex-direction:column;flex:1;min-height:160px;min-width:0}.pane{border:1px solid var(--border);background:var(--panel-alt);overflow:hidden}.pane-header{height:29px;display:flex;align-items:center;justify-content:space-between;background:var(--panel);border-bottom:1px solid var(--border);flex-shrink:0;padding-right:9px}.pane-tabs{display:flex;height:100%;min-width:0}.pane-tabs button{font-size:10px;padding:0 14px;border-right:1px solid var(--border);color:var(--muted);white-space:nowrap}.pane-tabs button.active{background:var(--panel-alt);color:#dfd3be;box-shadow:inset 0 2px var(--accent)}.pane-utilities{display:flex;align-items:center;gap:8px;font-size:9px;color:var(--muted)}.pane-utilities button{padding:2px 4px;font-size:13px}.live-dot{display:inline-block;height:4px;width:4px;background:#86af96;border-radius:50%;flex-shrink:0}.viewer-toolbar,.network-toolbar{height:31px;background:var(--panel-alt);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0;padding:0 9px}.breadcrumb{display:flex;align-items:center;gap:9px;font-size:10px;color:#84909e;white-space:nowrap;overflow:hidden}.breadcrumb>b{font-weight:500;color:#b3bcc5}.breadcrumb>span:first-child{color:#c5a86e}.breadcrumb>span:last-child{overflow:hidden;text-overflow:ellipsis}.viewport-actions{display:flex;gap:6px;align-items:center}.viewport-actions select{padding:2px 5px;font-size:9px;height:21px;background:var(--input);color:#aeb8c4;border-color:#3b444f;max-width:115px}.viewport-actions button{font-size:15px;padding:0 4px}.viewport{position:relative;flex:1;overflow:hidden;min-height:0;background:#13191e}.viewport canvas{width:100%;height:100%;display:block;touch-action:none;outline:none}.scene-overlay{position:absolute;top:24px;left:65px;pointer-events:none}.eyebrow{font-size:8px;font-weight:600;letter-spacing:2px;color:#b19b77}.scene-overlay h1{font-size:21px;letter-spacing:-.2px;font-weight:450;color:#d0d8dc;margin:7px 0 5px}.scene-overlay p{color:#717f8b;font-size:10px;margin:0}.view-tools{position:absolute;top:14px;left:10px;display:flex;flex-direction:column;align-items:center;gap:3px}.view-tools button{height:27px;width:29px;display:grid;place-items:center;color:#84929f;font-size:19px;border:1px solid transparent;border-radius:3px}.view-tools button:hover,.view-tools button.active{background:#3b454f99;color:#e7bc77;border-color:#59646b}.view-tools span{width:17px;border-top:1px solid #3a444d;margin:5px 0}.viewport-topright{position:absolute;right:16px;top:17px;display:flex;gap:12px;align-items:center;pointer-events:none}.viewport-topright>span:first-child{font-size:10px;color:#bdc9d0}.viewport-topright>span:last-child{font-size:8px;letter-spacing:1px;color:#758591;border:1px solid #45515c;border-radius:3px;padding:4px 6px}.view-stats{position:absolute;bottom:12px;right:16px;font:9px ui-monospace,SFMono-Regular,monospace;color:#82929d;display:flex;gap:14px;pointer-events:none}.view-hint{position:absolute;bottom:11px;left:67px;font-size:9px;color:#677582;pointer-events:none}.axis-widget{position:absolute;width:40px;height:50px;bottom:19px;left:15px}.axis-widget:before,.axis-widget:after{content:'';position:absolute;left:17px;top:24px;width:23px;height:1px;background:#485862;transform:rotate(-32deg);transform-origin:left center}.axis-widget:after{transform:rotate(35deg);width:24px}.axis-widget button{position:absolute;font:10px monospace;width:16px;height:16px;z-index:1;padding:0}.axis-x{color:#ca8b78;top:27px;left:26px}.axis-y{color:#84ba92;top:0;left:11px}.axis-z{color:#789abb;top:13px;left:27px}.axis-origin{position:absolute;width:1px;height:21px;background:#528665;left:17px;top:12px}.splitter{background:#171d22;position:relative;z-index:2}.splitter:hover{background:#866d43}.splitter.horizontal{height:5px;flex-shrink:0;cursor:row-resize}.splitter.vertical{cursor:col-resize}.sidebar{display:flex;flex-direction:column;min-height:0;min-width:0}.parameter-pane{flex:1;min-height:200px;display:flex;flex-direction:column}.parameter-scroll{overflow:auto;flex:1}.tree-pane{height:33%;min-height:170px;margin-top:5px;display:flex;flex-direction:column}.tree-search{display:flex;align-items:center;padding:8px 12px;gap:8px;color:#7c899a}.tree-search input{height:25px;width:100%;font-size:10px;background:#20262d}.scene-tree{flex:1;overflow:auto;padding:0 5px 6px}.tree-root{font-size:10px;color:#a0adbc;padding:5px 9px}.tree-row{display:flex;align-items:center;gap:9px;height:26px;padding:0 8px 0 22px;font-size:10px;cursor:pointer;border-radius:3px;border:1px solid transparent}.tree-row:hover{background:#3d465333}.tree-row.selected{background:#52483744;border-color:#6b5c4355}.tree-row .tree-icon{color:#9babaf;width:17px;font-size:15px;text-align:center}.tree-row .node-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-row .node-type{font:8px monospace;color:#6e7a88}.tree-row .eye{font-size:13px;color:#5e6b78}.tree-row .eye.on{color:#77c5cc}.tree-footer{height:24px;border-top:1px solid var(--border);display:flex;align-items:center;padding:0 9px;gap:7px;font-size:9px;color:#84919c}.tree-footer button{margin-left:auto;font-size:14px}.network-summary{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:9px}.divider{height:10px;width:1px;background:var(--border)}.bottom-content{flex:1;position:relative;min-height:0}.bottom-content>stratum-node-editor,.bottom-content>.data-pane{position:absolute;inset:0}.statusbar{display:flex;justify-content:space-between;align-items:center;height:23px;flex-shrink:0;padding:0 13px;font:9px ui-monospace,SFMono-Regular,monospace;color:#8593a0;background:#20262d;gap:10px}.statusbar>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.statusbar>div{display:flex;gap:17px;white-space:nowrap}.statusbar .version{color:#536171}.statusbar #backend-status{font:8px system-ui;letter-spacing:.8px;color:#a8b7a7}.muted{color:var(--muted)}.small{font-size:9px}.data-pane{overflow:auto;background:var(--graph-bg)}.data-toolbar{height:34px;display:flex;align-items:center;gap:10px;padding:0 14px;background:var(--panel-alt);border-bottom:1px solid var(--border);font-size:10px;position:sticky;top:0;z-index:1}.data-toolbar .spacer{flex:1}.data-toolbar button{font-size:10px;border:1px solid var(--border);padding:3px 8px;border-radius:3px}.data-pane table{width:100%;border-collapse:collapse;font:10px ui-monospace,monospace;text-align:right}.data-pane th,.data-pane td{padding:6px 12px;border-right:1px solid #3c455144;border-bottom:1px solid #3c455155;white-space:nowrap}.data-pane th{background:var(--panel);color:#9faebe;font-weight:500;position:sticky;top:34px}.data-pane th:first-child,.data-pane td:first-child{text-align:left;color:#a9b6c0}.data-pane tr:hover td{background:#8b76501c}.data-pane tr:nth-child(even){background:#ffffff02}.data-pane td input,.data-pane td select{width:80px;font:10px monospace;padding:3px}.empty-data{padding:27px;text-align:center;color:var(--muted);font-size:11px;line-height:1.9}.perf-bar{display:inline-block;height:7px;background:#65949a;border-radius:2px;max-width:250px}.gizmo{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.gizmo line,.gizmo circle{pointer-events:stroke;cursor:move}.gizmo text{pointer-events:none;font:10px system-ui;font-weight:bold}.gizmo line{stroke-width:3}.gizmo circle{stroke-width:2;fill:#18252bdd}.viewport-error{position:absolute;bottom:38px;left:68px;right:30px;border:1px solid #a66e45;background:#35291ee8;color:#e9bf99;padding:10px 13px;border-radius:4px;font-size:11px;line-height:1.5}.render-controls{position:absolute;right:20px;bottom:39px;background:#272e36e8;border:1px solid #49525e;padding:9px 12px;display:flex;gap:17px;align-items:center;border-radius:5px;font-size:10px}.render-controls label{display:flex;align-items:center;gap:10px}.render-controls input{width:100px;padding:0}.render-controls button{color:var(--accent)}dialog{color:var(--text);border:1px solid #5d6266;background:var(--panel-alt);border-radius:9px;box-shadow:0 24px 120px #0008;padding:0;max-height:85vh}dialog::backdrop{background:#10151bb3;backdrop-filter:blur(4px)}.palette{width:500px;margin-top:15vh;max-width:94vw}.palette-title{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1.5px;color:#9cabb9;padding:16px 20px 8px}.palette>input{font-size:15px;width:calc(100% - 32px);height:43px;margin:5px 16px 10px;background:var(--input);border-color:#5b6673}.operator-results{max-height:360px;overflow:auto}#operator-results{max-height:385px;overflow:auto;padding:0 9px 9px}.operator-result{display:flex;width:100%;text-align:left;align-items:center;gap:13px;padding:10px 12px;border-radius:4px}.operator-result.selected,.operator-result:hover{background:#61513844}.operator-result .op-icon{font-size:23px;width:29px;text-align:center}.operator-result strong{font-size:12px;font-weight:500}.operator-result small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.operator-result kbd{margin-left:auto}.palette-footer{border-top:1px solid var(--border);padding:13px 20px;font-size:10px;color:#8494a5;display:flex;gap:20px}.modal{width:680px;max-width:94vw}.modal.wide{width:900px}.modal-head{padding:18px 22px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.modal-head h2{font-size:16px;font-weight:500;margin:0}.modal-head>button{font-size:23px;line-height:18px;color:#8b9aa8}#dialog-content{padding:22px;max-height:70vh;overflow:auto;font-size:12px;line-height:1.65}.modal p{color:var(--muted)}.modal .lead{margin-top:0;font-size:12px}.modal-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:17px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 13px;border:1px solid #5a626a;border-radius:4px;font-size:11px;background:#343c45;color:var(--text);gap:8px}.btn.primary{background:#b99861;color:#1b2229;border-color:#d0b075;font-weight:600}.btn.danger{color:#dba397;border-color:#695049}.btn:hover{filter:brightness(1.12)}.preset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.preset-card{border:1px solid var(--border);border-radius:5px;text-align:left;padding:16px;background:#2b333c}.preset-card:hover{border-color:#aa8b5c;background:#383b3d}.preset-art{height:64px;display:flex;justify-content:center;align-items:center;margin:-4px -5px 11px;background:radial-gradient(ellipse at center,#769d9630,transparent 73%);color:#9baea4;font-size:49px;letter-spacing:-5px;font-family:system-ui}.preset-card strong{display:block;font-size:12px;font-weight:500;color:#d7d7d1}.preset-card small{font-size:9px;color:#8e9cab;display:block;margin-top:4px}.preset-card p{font-size:10px;line-height:1.6;margin:8px 0 0}.section-title{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:#b4a589;margin:22px 0 11px}.saved-project{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 4px;border-bottom:1px solid var(--border)}.saved-project span{display:block;font-size:10px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid label,.field-label{font-size:10px;display:flex;flex-direction:column;gap:7px;color:#a3b1be}.form-grid input{width:100%;height:35px}.notice{padding:13px 16px;border:1px solid #626151;border-radius:5px;background:#56503622;color:#c1b497;font-size:11px;margin:10px 0 15px}.notice.success{border-color:#456958;color:#a3c8b6;background:#45695822}.form-error{color:#d89d89;font-size:11px;min-height:20px;padding-top:8px}.modal hr{border:0;border-top:1px solid var(--border);margin:22px 0}.modal h3{font-size:13px;font-weight:500}.collab-tabs{display:flex;gap:8px;margin-bottom:18px}.collab-tabs button{border-bottom:1px solid transparent;color:var(--muted);font-size:11px;padding:6px 12px}.collab-tabs button.active{color:var(--accent);border-bottom-color:var(--accent)}.presence-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid #486154;background:#36443a44;border-radius:20px;font-size:10px;color:#a5c4b0;margin:3px}.invite-row{display:flex;gap:8px}.invite-row input{flex:1;min-width:0;font:11px monospace}.render-settings{display:grid;grid-template-columns:110px 1fr;gap:18px;align-items:center;font-size:11px}.render-settings input[type=range]{width:100%}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}.stat-card{padding:15px;background:#343c4444;border:1px solid var(--border);border-radius:5px}.stat-card b{display:block;font:21px ui-monospace,monospace;color:#d1ba92;margin-bottom:6px}.stat-card span{font-size:10px;color:var(--muted)}.dropdown{position:fixed;z-index:10;min-width:210px;max-height:80vh;overflow:auto;background:var(--panel);border:1px solid #545e69;box-shadow:0 10px 30px #0007;border-radius:5px;padding:5px}.dropdown button{display:flex;justify-content:space-between;gap:28px;text-align:left;padding:8px 10px;width:100%;font-size:11px;border-radius:3px}.dropdown button:hover{background:#5c523e55}.dropdown .separator{border-top:1px solid var(--border);margin:5px}.dropdown small{color:var(--muted);font-size:10px}.toast{position:fixed;bottom:80px;left:50%;transform:translateX(-50%);background:#343d47f5;border:1px solid #667683;box-shadow:0 9px 30px #0007;color:#d7e0e3;border-radius:6px;font-size:11px;z-index:30;padding:11px 19px;max-width:650px}.toast.error{border-color:#aa7753;color:#f1c8a4}.maximized .network-pane,.maximized .horizontal{display:none}.maximized .viewer-pane{height:100%}.theme-light{color-scheme:light;--bg:#d4d9de;--panel:#e7eaed;--panel-alt:#edf0f2;--border:#c1c8ce;--text:#313c48;--muted:#71808b;--input:#fafbfc;--graph-bg:#e1e6ea;--node-bg:#f3f6f8}.theme-light .menubar{background:#dce1e5}.theme-light .brand strong{color:#263744}.theme-light .menubar nav button{color:#516373}.theme-light .workspacebar,.theme-light .shelf{color:#4a5b68}.theme-light .shelf-tools button{color:#526675}.theme-light .shelf-tools .tool-icon{color:#6b8492}.theme-light .desktop,.theme-light .splitter{background:#bec6ce}.theme-light .pane-tabs button.active{color:#7b5c2f}.theme-light .tree-search input{background:var(--input)}.theme-light .statusbar{background:#dde3e8;color:#607483}.theme-light .preset-card{background:#e5e9ec}.theme-light .preset-card strong{color:#394955}.theme-light .btn:not(.primary){background:#e1e7eb}.theme-light kbd{background:#eef1f4}.theme-light .dropdown button:hover{background:#c4ad8344}*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-thumb{background:#56616b77;border-radius:9px}*::-webkit-scrollbar-track{background:transparent}@media(max-width:1150px){:root{--sidebar:288px}.menubar{gap:13px}.menubar nav button{padding:7px 6px}.file-ext,.workspace-right #save-status{display:none}.pane-tabs button{padding:0 10px}.scene-overlay{top:17px}.scene-overlay h1{font-size:18px}.project-heading{justify-content:flex-start}.scene-overlay p{display:none}.header-right{gap:8px}.header-right .quiet span{display:none}}@media(max-width:850px){.desktop{grid-template-columns:minmax(320px,1fr) 4px 250px}.menubar nav button{font-size:10px;padding:6px 4px}.menubar{padding:0 7px;gap:8px}.brand strong{font-size:10px;letter-spacing:1px}.brand{gap:5px}.brand svg{width:22px}.header-right .avatar,.project-heading,.workspace-right #command-btn{display:none}.shelf-tools button{min-width:57px}.viewport-topright #render-label{display:none}.view-stats{font-size:8px;right:9px;bottom:7px}.view-hint{display:none}.pane-tabs button{font-size:9px;padding:0 7px}.preset-grid{grid-template-columns:repeat(2,1fr)}.viewport-actions select{max-width:89px}.pane-utilities #renderer-badge{display:none}}@media(max-width:650px){.desktop{grid-template-columns:1fr}.sidebar,.vertical{display:none}.menubar nav button[data-menu="Nodes"],.menubar nav button[data-menu="Render"]{display:none}.header-right{margin-left:auto}.header-right .share-btn span{display:none}.workspacebar{padding:0 5px}.workspaces{gap:3px}.workspace-right{gap:4px}.scene-overlay{left:54px}.shelf-tabs{gap:18px;overflow:auto}.shelf-tools{padding-left:7px}.viewport-ratio{--viewport-ratio:60%}.statusbar #memory-status{display:none}.preset-grid{grid-template-columns:1fr 1fr}.stat-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}}
