:root{--bg:#fff;--panel:#fff;--soft:#f6f8fa;--soft2:#eef3f6;--border:#e2e8ec;--text:#243744;--secondary:#6b7f8c;--muted:#94a2ac;--accent:#087aa4;--accent-light:#e7f4fa;--accent-hover:#d9eef6;--title:#173648;--danger:#bb4b4b;--shadow:0 12px 45px #19394920;--icon-secondary:#d08b3e;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:12px;color:var(--text);color-scheme:light}
*{box-sizing:border-box}body{margin:0;overflow:hidden;background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit;background:none;border:0}button:disabled{opacity:.38;cursor:not-allowed}button:focus-visible,[role=button]:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}input:focus,select:focus,textarea:focus{outline:0;border-color:var(--accent)!important;box-shadow:0 0 0 2px #0794c51c}button,select,input{touch-action:manipulation}button svg{flex-shrink:0}svg{vertical-align:middle}input,select,textarea{color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:5px;padding:7px 9px;min-width:0}input[type=number]{font-variant-numeric:tabular-nums}input[type=number]::-webkit-inner-spin-button{opacity:.2}input[type=range]{accent-color:var(--accent);padding:0;width:100%}input[type=checkbox]{accent-color:var(--accent)}input[type=color]{padding:2px;height:31px;width:42px;cursor:pointer}kbd{font-family:inherit;font-size:10px;color:var(--secondary);border:1px solid var(--border);background:var(--soft);border-radius:4px;padding:2px 5px;white-space:nowrap}a{color:var(--accent)}.hidden{display:none!important}.push-right{margin-left:auto}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:29px;border-radius:5px;flex-shrink:0;color:var(--secondary)}.icon-button:hover{background:var(--soft2);color:var(--accent)}.icon-button.active{background:var(--accent-light);color:var(--accent)}.icon-accent{stroke:var(--icon-secondary)}.icon-fill{fill:#60a7c0;fill-opacity:.3}.primary-button{border:1px solid var(--accent);border-radius:5px;background:var(--accent);color:white;padding:8px 17px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:600}.primary-button:hover{filter:brightness(1.08)}.secondary-button{border:1px solid var(--border);background:var(--bg);border-radius:5px;padding:8px 14px;display:inline-flex;align-items:center;justify-content:center;gap:6px}.secondary-button:hover{background:var(--soft)}.text-button{color:var(--accent);padding:10px;font-weight:500}.danger{color:var(--danger)!important}.muted{color:var(--secondary)}
#app{height:100dvh;display:flex;flex-direction:column;min-width:640px}.titlebar{height:39px;min-height:39px;background:var(--title);color:#eaf5fa;display:flex;align-items:center;padding:0 15px;gap:24px}.brand{display:flex;align-items:center;gap:9px;flex:1}.brand>span:first-child{color:#89d4dd}.brand strong{font-size:20px;font-weight:650;letter-spacing:-.7px}.brand strong>span{font-weight:450;font-size:10px;letter-spacing:1.5px;margin-left:6px;color:#a9c4d2}.brand-divider{width:1px;height:16px;background:#ffffff25;margin:0 5px}.brand-caption{font-size:11px;letter-spacing:.15px;color:#c0d1db}.document-title{display:flex;align-items:center;gap:7px;font-size:11px;position:absolute;left:50%;transform:translateX(-50%);color:#d7e4eb;max-width:35%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.title-extension{color:#7da1b6}.save-dot{width:5px;height:5px;border-radius:50%;background:#74c5c0}.save-dot.unsaved{background:#edc675}.title-actions{display:flex;gap:3px;align-items:center}.title-actions .icon-button{color:#c7d9e3;width:29px;height:27px}.title-actions .icon-button:hover{background:#ffffff13}.title-actions .divider{height:15px;width:1px;background:#ffffff25;margin:0 7px}
.tabbar{min-height:37px;height:37px;display:flex;align-items:stretch;border-bottom:1px solid var(--border);background:var(--panel);padding-right:12px;gap:0}.file-tab{background:var(--accent);color:#fff;padding:0 25px;font-weight:500}.file-tab:hover{filter:brightness(1.09)}#workspace-tabs{display:flex;align-items:stretch;padding-left:10px;gap:3px}#workspace-tabs button{font-size:12px;padding:0 19px;position:relative;color:var(--secondary)}#workspace-tabs button.active{font-weight:600;color:var(--accent)}#workspace-tabs button.active:after{content:'';height:2px;background:var(--accent);position:absolute;bottom:0;left:14px;right:14px}#workspace-tabs button:hover{background:var(--soft)}.command-search{margin:auto 17px auto auto;display:flex;align-items:center;gap:8px;color:var(--muted);background:var(--soft);border:1px solid var(--border);padding:4px 7px 4px 9px;border-radius:5px;width:217px;height:25px;cursor:pointer;font-size:11px}.command-search kbd{margin-left:auto;border:0;padding:0;background:none}.user-avatar{margin:auto 0;font-size:10px;font-weight:650;background:#e5f0f5;color:#45748e;width:25px;height:25px;border-radius:50%}
.ribbon{height:100px;min-height:100px;display:flex;align-items:stretch;background:var(--panel);border-bottom:1px solid var(--border);padding:7px 10px 0;gap:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.ribbon-group{display:flex;flex-direction:column;position:relative;border-right:1px solid var(--border);padding:0 11px;margin-right:3px;flex-shrink:0}.ribbon-group:last-child{border-right:0}.ribbon-group-tools{display:flex;gap:2px;align-items:stretch;flex:1}.ribbon-group-label{font-size:10px;letter-spacing:.1px;text-align:center;color:var(--secondary);height:20px;display:flex;align-items:center;justify-content:center;gap:9px}.ribbon-button{height:69px;min-width:57px;padding:5px 7px 3px;display:flex;align-items:center;justify-content:flex-start;flex-direction:column;gap:5px;border-radius:5px;border:1px solid transparent;font-size:11px;white-space:nowrap}.ribbon-button>svg{width:28px;height:28px;color:#447f99;stroke-width:1.3}.ribbon-button>span{line-height:14px}.ribbon-button .ribbon-arrow{margin-top:-5px;line-height:8px;font-size:9px;color:var(--muted)}.ribbon-button:hover,.ribbon-small:hover{background:var(--soft2);border-color:var(--border)}.ribbon-button.active{background:var(--accent-light);border-color:#c5e4f1;color:var(--accent)}.ribbon-stack{display:flex;flex-direction:column;justify-content:center;gap:1px}.ribbon-small{height:23px;display:flex;align-items:center;gap:7px;padding:2px 7px;border:1px solid transparent;border-radius:4px;font-size:11px;white-space:nowrap}.ribbon-small svg{width:16px;height:16px;color:#4a829b}
.workspace{flex:1;min-height:0;display:flex;overflow:hidden}.pathfinder{width:238px;min-width:238px;background:var(--panel);border-right:1px solid var(--border);display:flex;flex-direction:column;z-index:2}.panel-tabs{height:42px;min-height:42px;display:flex;align-items:center;padding:0 10px;border-bottom:1px solid var(--border);gap:15px}.panel-tabs>button:not(.icon-button){height:42px;padding:0 3px;position:relative;color:var(--secondary);font-size:11px}.panel-tabs>button.active{font-weight:600;color:var(--text)}.panel-tabs>button.active:after{content:'';position:absolute;bottom:-1px;height:2px;left:0;right:0;background:var(--accent)}.panel-tabs>.icon-button{width:22px}.tree-search{margin:13px 12px 10px;height:29px;border:1px solid var(--border);border-radius:5px;display:flex;align-items:center;padding:0 7px;gap:5px;background:var(--soft)}.tree-search svg{width:14px;height:14px;color:var(--muted)}.tree-search input{border:0;box-shadow:none;background:none;padding:3px 0;width:100%;font-size:10px}.tree-search kbd{border:0;padding:0;color:var(--muted)}.tree{padding:0 0 12px;overflow:auto;flex:1;scrollbar-width:thin}.tree-heading{display:flex;align-items:center;gap:7px;padding:10px 13px;font-weight:600;font-size:11px}.tree-heading>svg{color:var(--accent);flex-shrink:0}.tree-heading>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-group{padding:9px 13px 5px;display:flex;align-items:center;color:var(--secondary);font-size:10px;letter-spacing:.2px;gap:6px}.tree-group .count{margin-left:auto;font-size:9px;background:var(--soft2);padding:1px 5px;border-radius:3px;color:var(--secondary)}.tree-row{height:31px;display:flex;align-items:center;gap:7px;padding:0 10px 0 20px;cursor:pointer;border-left:2px solid transparent;position:relative;font-size:11px;user-select:none}.tree-row:hover{background:var(--soft)}.tree-row.selected{background:var(--accent-light);border-left-color:var(--accent);color:var(--accent)}.tree-row svg{flex-shrink:0;color:#6c8c9c}.tree-row.selected svg{color:var(--accent)}.tree-row .tree-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-row .tree-eye{margin-left:auto;width:21px;height:24px;display:flex;align-items:center;justify-content:center;opacity:0;color:var(--muted);padding:0}.tree-row .tree-eye svg{width:14px;height:14px}.tree-row:hover .tree-eye,.tree-row.selected .tree-eye,.tree-row.invisible .tree-eye{opacity:1}.tree-row.invisible{opacity:.45}.tree-disclosure{width:11px!important;height:20px;padding:0;display:flex;align-items:center}.tree-disclosure svg{width:10px!important;height:10px}.tree-disclosure.expanded svg{transform:rotate(90deg)}.tree-row.feature{padding-left:45px;font-size:10px;color:var(--secondary);height:27px}.tree-row.feature>svg{width:13px;height:13px}.tree-row.feature.suppressed{text-decoration:line-through;opacity:.5}.tree-row.plane{padding-left:36px;height:27px;font-size:10px}.tree-row.plane svg{color:#9aaeb7}.tree-row .body-dot{width:8px;height:8px;border-radius:2px;flex-shrink:0;box-shadow:inset 0 0 0 1px #00000012}.tree-empty{color:var(--secondary);padding:20px;font-size:11px;line-height:1.7}.pathfinder-footer{height:33px;min-height:33px;padding:0 13px;display:flex;align-items:center;gap:7px;border-top:1px solid var(--border);font-size:10px;color:var(--secondary)}.local-indicator{width:5px;height:5px;background:#69a699;border-radius:50%}#saved-state{margin-left:auto;color:var(--muted)}.history-item{padding:10px 15px;display:flex;gap:10px;align-items:flex-start;border-bottom:1px solid var(--border)}.history-item svg{margin-top:2px;color:var(--accent)}.history-item small{display:block;color:var(--muted);font-size:10px;margin-top:3px}
.viewport{flex:1;min-width:160px;position:relative;overflow:hidden;background:#edf3f7}.viewport canvas{width:100%;height:100%;display:block;outline:none;touch-action:none}.viewport canvas.tool-sketch{cursor:crosshair}.viewport canvas.tool-move{cursor:move}.viewport canvas.tool-measure{cursor:crosshair}.viewport canvas.dragging{cursor:grabbing}.viewport #overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.viewport-heading{position:absolute;top:23px;left:24px;pointer-events:none}.eyebrow{display:flex;align-items:center;gap:7px;color:#6f8d9c;font-size:9px;font-weight:600;letter-spacing:1.3px}.live-square{height:5px;width:5px;border-radius:1px;background:#629eab}.crumb-divider{font-size:11px;color:#b5c5ce;padding:0 2px}.viewport-heading h1{font-weight:550;font-size:18px;color:#2d485a;letter-spacing:-.35px;margin:9px 0 6px}.viewport-heading>div:last-child{font-size:10px;color:#8a9ca8}.viewport-top-right{position:absolute;right:16px;top:17px;display:flex;align-items:center;gap:11px}.engine-badge{display:flex;gap:6px;align-items:center;color:#658290;font-size:9px;font-weight:550;border:1px solid #ccdde4;background:#f4f9fb9e;border-radius:12px;padding:5px 8px}.engine-badge span{width:5px;height:5px;background:#59a78d;border-radius:50%}.engine-badge.fallback span{background:#c99853}.viewport-top-right .icon-button{width:23px}.view-cube{position:absolute;top:70px;right:16px;width:92px;text-align:center;user-select:none}.view-cube>svg{width:92px;height:95px;filter:drop-shadow(0 3px 3px #718fa01a)}.cube-face{stroke:#b5c8d2;stroke-width:.9;cursor:pointer;transition:fill .12s}.cube-top{fill:#f9fcfd}.cube-front{fill:#edf4f8}.cube-right{fill:#dce9f0}.cube-face:hover{fill:#b9deee}.cube-label{font-size:9px;fill:#6e8c9d;text-anchor:middle;font-weight:650;letter-spacing:.2px}.cube-label text{cursor:pointer}.cube-home{font-size:9px;color:#7b95a5;padding:3px 6px;border:1px solid transparent;border-radius:4px}.cube-home:hover{border-color:#c3d8e3;background:#ffffff50}.viewport-tools{position:absolute;top:131px;left:16px;display:flex;flex-direction:column;background:#fffffff0;padding:4px;border:1px solid #dbe6ec;border-radius:7px;box-shadow:0 2px 10px #233e5110;gap:2px}.viewport-tools button{width:29px;height:30px;border-radius:4px;display:flex;align-items:center;justify-content:center;color:#658292}.viewport-tools button:hover,.viewport-tools button.active{background:#e8f4fa;color:#168ab4}.viewport-tools .divider{height:1px;margin:3px;background:#e1e9ed}.viewport-tools svg{width:18px;height:18px}.viewport-bottom-left{position:absolute;bottom:13px;left:14px;display:flex;align-items:center;flex-direction:column;gap:0;pointer-events:none}#triad{height:76px;width:76px}.viewport-bottom-left>span{font-size:9px;color:#899da9;margin-top:-3px;letter-spacing:.25px}.viewport-bottom-center{position:absolute;bottom:17px;left:50%;transform:translateX(-50%);display:flex;align-items:center;flex-direction:column;gap:11px;white-space:nowrap}.view-controls{display:flex;align-items:center;background:#fffffff2;border:1px solid #d7e3e9;border-radius:7px;padding:3px 5px;box-shadow:0 3px 14px #45698010;gap:3px}.view-controls .divider{width:1px;height:17px;background:var(--border);margin:0 3px}.view-controls button{display:flex;align-items:center;gap:6px;height:28px;padding:4px 8px;color:#698594;font-size:10px;border-radius:4px;white-space:nowrap}.view-controls button:hover,.view-controls button.active{background:#edf6fa;color:#157fa7}.view-controls button svg{width:16px;height:16px}.navigation-hint{font-size:9px;letter-spacing:.1px;color:#94a4ae}.navigation-hint i{font-style:normal;padding:0 6px;color:#adbac3}.viewport-bottom-right{position:absolute;right:16px;bottom:19px;display:flex;align-items:flex-end;gap:18px}#scale-bar{width:90px;text-align:center;position:relative;color:#96a8b3;font-size:9px;padding-bottom:5px}#scale-bar>div{height:5px;border-bottom:1px solid #a2b7c3;border-left:1px solid #a2b7c3;border-right:1px solid #a2b7c3;margin-top:3px}.help-button{width:22px;height:22px;border:1px solid #bacdd7;color:#8ca5b3;border-radius:50%;font-size:12px}.hover-label{position:absolute;pointer-events:none;background:#1c3845ee;color:#e4f1f5;padding:6px 9px;font-size:10px;border-radius:4px;z-index:5;white-space:nowrap}.busy-indicator{position:absolute;left:50%;top:21px;transform:translateX(-50%);display:flex;gap:8px;align-items:center;border-radius:5px;font-size:10px;color:var(--secondary);padding:8px 12px;background:var(--panel);box-shadow:var(--shadow)}.spinner{width:12px;height:12px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:none}.empty-state>*{pointer-events:auto}.empty-state h2{font-size:23px;letter-spacing:-.5px;font-weight:500;margin:20px 0 6px}.empty-state p{color:var(--secondary);font-size:12px;margin-bottom:23px}#empty-icon{color:#85b3c5;opacity:.7}.empty-state .text-button{margin-top:9px;font-size:11px}.operation-panel{position:absolute;top:114px;left:65px;width:239px;border:1px solid var(--border);border-radius:8px;background:var(--panel);box-shadow:var(--shadow);padding:14px;z-index:4}.operation-panel h3{margin:0 0 8px;font-size:12px;display:flex;align-items:center;gap:7px}.operation-panel p{font-size:11px;line-height:1.6;color:var(--secondary);margin:7px 0 12px}.operation-panel label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:9px 0;font-size:11px}.operation-panel select,.operation-panel input[type=number]{width:104px;padding:5px 7px}.operation-panel .op-actions{display:flex;gap:7px;margin-top:14px}.operation-panel .op-actions button{font-size:10px;flex:1;padding:7px}.op-value{font-size:20px;font-weight:500;color:var(--accent);font-variant-numeric:tabular-nums;margin:12px 0}.op-note{font-size:9px!important;color:var(--muted)!important}
.properties{width:260px;min-width:260px;border-left:1px solid var(--border);display:flex;flex-direction:column;background:var(--panel);z-index:2}.properties-header{height:42px;min-height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 13px 0 16px;border-bottom:1px solid var(--border);font-size:11px;font-weight:600}.properties-header .icon-button{width:22px}.inspector{flex:1;overflow-y:auto;scrollbar-width:thin}.inspector-section{padding:16px;border-bottom:1px solid var(--border)}.inspector-section>h3{margin:0 0 14px;font-size:10px;font-weight:650;letter-spacing:.45px;text-transform:uppercase;color:var(--secondary);display:flex;align-items:center;gap:6px}.inspector-section>h3 .unit-label{margin-left:auto;font-size:9px;font-weight:450;text-transform:none;color:var(--muted);letter-spacing:0}.selection-card{display:flex;align-items:center;gap:12px;margin:2px 0 17px}.selection-card>.selection-icon{display:flex;align-items:center;justify-content:center;width:42px;height:44px;background:var(--accent-light);border:1px solid #daebf2;border-radius:7px;color:var(--accent)}.selection-card h2{font-weight:550;font-size:12px;margin:0 0 5px}.selection-card small{font-size:10px;color:var(--secondary)}.assembly-summary{font-size:11px;color:var(--secondary);line-height:1.75;margin:0}.property-row{display:flex;align-items:center;gap:10px;justify-content:space-between;margin-bottom:9px;font-size:11px}.property-row:last-child{margin-bottom:0}.property-row label{color:var(--secondary);flex:1}.property-row input,.property-row select{width:125px;padding:6px 7px;font-size:11px;height:29px}.property-row input.wide{width:100%;flex:1}.property-row .readonly{font-size:11px;font-variant-numeric:tabular-nums}.property-row .readonly.muted{color:var(--muted)}.full-input{width:100%;font-size:11px;padding:7px}.xyz-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.xyz-field{position:relative;min-width:0}.xyz-field label{font-size:9px;position:absolute;left:7px;top:9px;color:var(--secondary);font-weight:600}.xyz-field input{width:100%;padding:7px 3px 7px 21px;height:30px;font-size:10px}.xyz-field input::-webkit-inner-spin-button{display:none}.xyz-field:nth-child(1) label{color:#bb7773}.xyz-field:nth-child(2) label{color:#5c9588}.xyz-field:nth-child(3) label{color:#5b8db3}.transform-label{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:var(--secondary);margin:14px 0 7px}.transform-label:first-of-type{margin-top:0}.transform-label>span{font-size:9px;color:var(--muted)}.color-swatches{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.color-swatch{width:21px;height:21px;border-radius:5px;box-shadow:inset 0 0 0 1px #00000010;border:2px solid transparent}.color-swatch.active{outline:1px solid var(--accent);border-color:var(--panel)}.material-preview{display:flex;align-items:center;gap:9px;margin-bottom:12px}.material-orb{height:29px;width:29px;border-radius:50%;box-shadow:inset -4px -3px 6px #00000025,inset 3px 3px 7px #ffffffb0}.material-preview select{flex:1;width:100%;font-size:11px}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.stat-card{border:1px solid var(--border);border-radius:6px;padding:11px 10px;background:var(--soft)}.stat-card strong{font-size:20px;font-weight:500;letter-spacing:-.5px;display:block;margin-bottom:5px}.stat-card span{font-size:10px;color:var(--secondary)}.feature-list{display:flex;flex-direction:column;gap:8px}.feature-list-item{display:flex;align-items:center;font-size:10px;gap:7px;color:var(--secondary)}.feature-list-item svg{color:var(--accent);width:14px;height:14px}.feature-list-item button{width:19px;height:20px}.feature-list-item span{flex:1}.feature-list-item input{margin:0}.feature-list-item.suppressed{opacity:.5}.inspector-tip{font-size:10px;color:var(--secondary);line-height:1.7;background:var(--soft);border:1px solid var(--border);border-radius:6px;margin:15px;padding:12px}.inspector-tip b{display:block;font-size:10px;color:var(--text);margin-bottom:5px;font-weight:600}.inspector-tip svg{color:var(--accent);margin-right:4px}.selection-count{font-size:24px;font-weight:500;margin:0 0 9px}.inspector-shortcuts{display:flex;flex-direction:column;gap:9px}.inspector-shortcuts div{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:var(--secondary)}.body-actions{display:flex;gap:6px;margin-top:12px}.body-actions button{flex:1;font-size:10px;padding:7px}.info-pill{display:inline-flex;align-items:center;gap:5px;font-size:9px;border-radius:4px;padding:4px 6px;background:#edf5f1;color:#6b9281}
.document-tabs{height:32px;min-height:32px;background:var(--soft);border-top:1px solid var(--border);display:flex;align-items:center;padding-left:12px}.document-tab{height:31px;display:flex;align-items:center;gap:8px;padding:0 16px 0 11px;font-size:10px;max-width:380px}.document-tab.active{background:var(--panel);border-top:2px solid var(--accent);border-right:1px solid var(--border);border-left:1px solid var(--border)}.document-tab>span:first-child{color:var(--accent)}.doc-type{font-size:9px;color:var(--muted);margin-left:10px}.document-tabs>.icon-button{margin-left:6px;width:26px;height:25px}.document-tab-spacer{flex:1}.mode-label{display:flex;align-items:center;gap:7px;padding:0 17px;font-size:9px;color:var(--secondary)}.mode-label>span{width:5px;height:5px;border-radius:50%;background:#79a59a}.statusbar{height:25px;min-height:25px;background:var(--panel);border-top:1px solid var(--border);display:flex;align-items:center;gap:8px;font-size:9px;color:var(--secondary);padding:0 13px}.statusbar>span:first-child{color:#699b88}.statusbar svg{width:12px;height:12px}.status-divider{width:1px;height:10px;background:var(--border);margin:0 3px}.status-spacer{flex:1}.statusbar button{font-size:9px;color:var(--secondary);padding:3px 8px;border-radius:3px}.statusbar button:hover{background:var(--soft2)}#units-button{margin-left:5px}#submit-stat{min-width:61px;text-align:right}.statusbar #snap-button.active{color:var(--accent)}
#toast-region{position:fixed;bottom:81px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:7px;z-index:100;pointer-events:none}.toast{background:#193a4a;color:#e3f2f8;border:1px solid #52738745;box-shadow:0 7px 22px #17364825;border-radius:7px;max-width:560px;font-size:11px;padding:11px 16px;line-height:1.5;display:flex;align-items:center;gap:9px;animation:toast-in .15s ease-out;pointer-events:auto}.toast.error{background:#69363c;color:#ffeded}.toast svg{flex-shrink:0}@keyframes toast-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.popup-menu{position:fixed;min-width:218px;z-index:70;border:1px solid var(--border);background:var(--panel);border-radius:7px;padding:5px;box-shadow:var(--shadow);max-height:75vh;overflow:auto}.popup-menu button{display:flex;align-items:center;gap:10px;padding:8px 10px;width:100%;font-size:11px;border-radius:4px;text-align:left}.popup-menu button:hover{background:var(--accent-light);color:var(--accent)}.popup-menu svg{width:16px;height:16px;color:var(--secondary)}.popup-menu kbd{margin-left:auto;background:none;border:0;color:var(--muted);font-size:9px}.popup-menu .separator{height:1px;background:var(--border);margin:5px}.popup-menu .menu-label{padding:6px 10px;color:var(--muted);font-size:9px;letter-spacing:.5px;text-transform:uppercase}.popup-menu .menu-check{margin-left:auto;width:13px;height:13px;color:var(--accent)}
dialog{border:1px solid var(--border);border-radius:12px;padding:0;background:var(--panel);color:var(--text);box-shadow:0 20px 100px #10263444;width:460px;max-width:calc(100vw - 40px);max-height:calc(100vh - 70px);overflow:auto}dialog::backdrop{background:#132c4260;backdrop-filter:blur(3px)}.modal-header{display:flex;align-items:flex-start;gap:12px;padding:22px 23px 17px;border-bottom:1px solid var(--border)}.modal-header>.modal-icon{width:37px;height:37px;background:var(--accent-light);color:var(--accent);border-radius:7px;display:flex;align-items:center;justify-content:center}.modal-header h2{font-size:16px;font-weight:550;margin:0 0 5px;letter-spacing:-.3px}.modal-header p{font-size:11px;color:var(--secondary);line-height:1.5;margin:0}.modal-header .icon-button{margin-left:auto;width:22px;height:22px}.modal-body{padding:21px 24px}.modal-body>p{font-size:11px;line-height:1.75;color:var(--secondary);margin:0 0 17px}.modal-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px 14px}.modal-field{display:flex;flex-direction:column;gap:6px}.modal-field.full{grid-column:1/-1}.modal-field>label{font-size:10px;color:var(--secondary)}.modal-field input,.modal-field select{width:100%;height:33px;font-size:11px}.modal-field textarea{resize:vertical;min-height:80px;font-family:ui-monospace,monospace;font-size:10px;line-height:1.6}.modal-field .field-hint{font-size:9px;color:var(--muted);line-height:1.6}.modal-note{display:flex;gap:8px;font-size:10px;line-height:1.7;color:var(--secondary);padding:12px;border:1px solid var(--border);background:var(--soft);border-radius:6px;margin-top:16px}.modal-note svg{flex-shrink:0;margin-top:1px;color:var(--accent)}.modal-actions{border-top:1px solid var(--border);padding:15px 24px;display:flex;align-items:center;justify-content:flex-end;gap:8px}.modal-actions button{font-size:11px}.form-error{color:var(--danger);font-size:11px;margin-top:12px;line-height:1.6}.shortcut-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 25px}.shortcut-grid>div{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px}.shortcut-grid>div span{color:var(--secondary)}.help-section-title{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--secondary);margin:22px 0 15px}.help-note{font-size:10px;line-height:1.8;color:var(--secondary);margin-top:20px!important}.command-palette{width:530px}.palette-search{display:flex;align-items:center;padding:15px 19px;gap:11px;border-bottom:1px solid var(--border)}.palette-search>svg{color:var(--accent)}.palette-search input{flex:1;border:0;background:none;box-shadow:none!important;font-size:13px;padding:5px 0}.palette-list{padding:6px;max-height:390px;overflow:auto}.palette-command{display:flex;align-items:center;gap:11px;width:100%;padding:12px 14px;text-align:left;border-radius:5px;font-size:12px}.palette-command svg{color:var(--accent)}.palette-command small{font-size:10px;color:var(--secondary);display:block;margin-top:3px}.palette-command:hover,.palette-command.active{background:var(--accent-light)}.palette-command kbd{margin-left:auto}.palette-footer{border-top:1px solid var(--border);padding:10px 18px;color:var(--muted);font-size:10px}.context-hint{position:absolute;font-size:9px;color:#647f90;background:#ffffffe6;border:1px solid #d7e4ec;border-radius:5px;padding:5px 8px;pointer-events:none}
[data-theme=dark]{--bg:#18232d;--panel:#19252f;--soft:#1e2d38;--soft2:#233541;--border:#2b3e4b;--text:#cfdee7;--secondary:#8da7b8;--muted:#5c7d91;--accent:#51b7dc;--accent-light:#213e4e;--accent-hover:#264b5f;--title:#112632;--shadow:0 12px 45px #0005;color-scheme:dark}[data-theme=dark] .viewport{background:#182129}[data-theme=dark] .viewport-heading h1{color:#c6dbe8}[data-theme=dark] .engine-badge{background:#172c38c9;border-color:#34515f;color:#8bafbf}[data-theme=dark] .viewport-tools,[data-theme=dark] .view-controls{background:#1d303dee;border-color:#344957}[data-theme=dark] .viewport-tools button,[data-theme=dark] .view-controls button{color:#8dabbc}[data-theme=dark] .viewport-tools button.active,[data-theme=dark] .view-controls button.active,[data-theme=dark] .viewport-tools button:hover,[data-theme=dark] .view-controls button:hover{background:#294757;color:#66c3e3}[data-theme=dark] .cube-top{fill:#355363;stroke:#577181}[data-theme=dark] .cube-front{fill:#274451;stroke:#577181}[data-theme=dark] .cube-right{fill:#213b49;stroke:#577181}[data-theme=dark] .cube-label{fill:#8faebe}[data-theme=dark] .cube-face:hover{fill:#416b80}[data-theme=dark] .info-pill{background:#1c3934;color:#7db9a8}[data-theme=dark] .primary-button{background:#197ca3;color:#e8f7ff;border-color:#197ca3}[data-theme=dark] .user-avatar{background:#274455;color:#85b9d0}[data-theme=dark] .selection-card>.selection-icon{border-color:var(--border)}[data-theme=dark] .ribbon-button>svg,[data-theme=dark] .ribbon-small svg{color:#78a9bd}
@media(min-width:1800px){.pathfinder{width:260px;min-width:260px}.properties{width:290px;min-width:290px}.ribbon-group{padding:0 17px}.ribbon-button{min-width:65px}.brand-caption{font-size:12px}}
@media(max-width:1300px){.brand-caption,.brand-divider{display:none}.pathfinder{width:215px;min-width:215px}.properties{width:235px;min-width:235px}.ribbon-group{padding:0 8px}.ribbon-button{min-width:51px;padding-left:5px;padding-right:5px}.command-search{width:170px}.command-search kbd{display:none}.viewport-heading h1{font-size:16px}.viewport-heading{left:19px}.navigation-hint{font-size:8px}.property-row input,.property-row select{width:111px}.document-title{max-width:42%}.view-controls button{padding:4px 6px}#scale-bar{display:none}}
@media(max-width:1050px){.properties{position:absolute;right:0;top:176px;bottom:57px;box-shadow:-5px 0 20px #18324218;width:260px;min-width:260px}.properties.auto-hide{display:none}.command-search{width:35px;background:none;border:0;padding:0;justify-content:center;margin-right:12px}.command-search>span:not(:first-child){display:none}#workspace-tabs button{padding:0 14px}.viewport-heading h1{font-size:17px}.statusbar #submit-stat{display:none}}
@media(max-width:760px){.pathfinder{width:182px;min-width:182px}.brand strong{font-size:18px}.document-title{display:none}.titlebar{padding:0 10px}.title-actions{gap:1px}#workspace-tabs{padding-left:4px}#workspace-tabs button{padding:0 10px;font-size:11px}.file-tab{padding:0 15px}.tree-row{font-size:10px;padding-left:12px;gap:5px}.tree-row .tree-eye{display:none}.view-cube{width:75px;right:10px;top:69px}.view-cube>svg{width:75px;height:81px}.viewport-heading{top:20px;left:15px}.viewport-heading h1{font-size:13px;max-width:200px}.viewport-heading>div:last-child{display:none}.engine-badge{font-size:8px;padding:4px 6px}.viewport-top-right{right:10px;top:13px}.viewport-top-right>.icon-button{display:none}.viewport-bottom-left{left:4px;bottom:8px}#triad{width:60px;height:60px}.navigation-hint{display:none}.view-controls button>span{display:none}.viewport-bottom-center{bottom:20px}.viewport-tools{left:10px;top:114px}.operation-panel{left:49px;width:218px}.mode-label{display:none}#status-selection{display:none}.statusbar{padding:0 7px;gap:5px}.properties{width:238px;min-width:238px}.empty-state h2{font-size:18px}.empty-state p{font-size:10px;max-width:220px;text-align:center}.ribbon{height:94px;min-height:94px}.properties{top:170px}}
