:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font:"Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "Cascadia Mono", "SF Mono", Menlo, Consolas, monospace;--fs-xs:11px;--fs-sm:12px;--fs:13px;--fs-md:14px;--fs-lg:16px;--radius-sm:3px;--radius:5px;--radius-lg:8px;--bg:#eef0f3;--chrome:#f7f8fa;--panel:#fff;--panel-2:#f3f5f7;--border:#d9dde3;--border-strong:#c3c9d1;--text:#1c2129;--text-2:#4f5966;--text-3:#646e7a;--hover:#e9edf2;--active:#dfe5ec;--accent:#1f63d6;--accent-hover:#1a56bb;--accent-text:#fff;--accent-weak:#e3ecfb;--accent-border:#9dbcf0;--focus:#1f63d6;--danger:#c4312b;--danger-weak:#fbe9e8;--warning:#a35f00;--warning-weak:#fdf1dc;--success:#1d7a43;--success-weak:#e3f4ea;--viewport:#e7eaee;--model:#b9c3cf;--edge:#1b1f24;--hidden-edge:#8b939d;--selection:#2f7cf6;--hover-3d:#f29d38;--preview:#f2c94c;--preview-cut:#e86a5c;--cap:#d97c6a;--plane-fill:#4080e61a;--plane-edge:#6f9be0;--sketch-under:#2463d1;--sketch-full:#14181d;--sketch-over:#d22d2d;--sketch-construction:#6f8db8;--sketch-selected:#f0821e;--sketch-inactive:#5c6b80;--dimension:#1b1f24;--dimension-driven:#7d8794;--axis-x:#d33a2c;--axis-y:#2c9b45;--axis-z:#2f63d6;--icon-accent:#9ec0f4;--icon-accent-2:#c9dbf8;--icon-soft:#e3e7ec;--scrim:#12161c52;--tooltip-bg:#1f242b;--tooltip-text:#f3f5f7;--titlebar-h:40px;--cm-h:92px;--status-h:26px;--left-w:280px;--taskpane-w:36px;--touch:32px}@media (pointer:coarse){:root{--touch:44px}}:root[data-theme-resolved=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#17191d;--chrome:#1f2226;--panel:#24272c;--panel-2:#2a2e34;--border:#353a41;--border-strong:#464c55;--text:#e7e9ec;--text-2:#b1b8c2;--text-3:#858e99;--hover:#2f343b;--active:#383e46;--accent:#4d8dff;--accent-hover:#6aa0ff;--accent-text:#0b1220;--accent-weak:#1f3354;--accent-border:#3c62a3;--focus:#6aa0ff;--danger:#ff6b62;--danger-weak:#3d2221;--warning:#f0b14a;--warning-weak:#3b2e17;--success:#4cc283;--success-weak:#1b3527;--viewport:#2b2f35;--model:#9aa6b4;--edge:#0e1013;--hidden-edge:#6e7783;--selection:#4f95ff;--hover-3d:#ffaa4d;--preview:#e8c050;--preview-cut:#ef7b6d;--cap:#c46f60;--plane-fill:#6ea0ff1a;--plane-edge:#6f9be0;--sketch-under:#6aa4ff;--sketch-full:#f1f3f6;--sketch-over:#ff6b62;--sketch-construction:#8ea6c8;--sketch-selected:#ffa04a;--sketch-inactive:#9aa8bb;--dimension:#e9ecf0;--dimension-driven:#98a2ae;--icon-accent:#3f6fb8;--icon-accent-2:#2c4c7d;--icon-soft:#3a4048;--scrim:#00000080;--tooltip-bg:#e9ecf0;--tooltip-text:#15181c}.tp-panel.wide{width:380px;overflow:hidden}.assistant{flex-direction:column;flex:1;min-height:0;display:flex}.as-bar{border-bottom:1px solid var(--border);align-items:center;gap:6px;padding:6px 8px 6px 12px;display:flex}.as-bar .as-model{min-width:0;height:26px;font-size:var(--fs-sm);flex:1}.as-log{-webkit-user-select:text;user-select:text;overscroll-behavior:contain;flex-direction:column;flex:1;gap:12px;min-height:0;padding:12px;display:flex;overflow-y:auto}.as-empty{color:var(--text-2);flex-direction:column;gap:8px;margin:auto 0;display:flex}.as-empty-icon{background:var(--accent-weak);width:40px;height:40px;color:var(--accent);border-radius:10px;place-items:center;display:grid}.as-empty-title{font-size:var(--fs-md);color:var(--text);font-weight:600}.as-empty p{margin:0;line-height:1.45}.as-ideas{flex-direction:column;gap:6px;margin-top:6px;display:flex}.as-idea{text-align:left;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);color:var(--text);font-size:var(--fs-sm);padding:8px 10px;line-height:1.35}.as-idea:hover{border-color:var(--accent-border);background:var(--accent-weak)}.as-msg{overflow-wrap:anywhere;line-height:1.5}.as-user{background:var(--accent-weak);border:1px solid var(--accent-border);white-space:pre-wrap;border-radius:12px 12px 3px;align-self:flex-end;max-width:88%;padding:7px 11px}.as-bot,.as-body{flex-direction:column;gap:8px;display:flex}.as-notice{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);flex-direction:column;align-items:flex-start;gap:8px;padding:10px;display:flex}.as-notice p{margin:0}.as-text p{margin:0 0 6px}.as-text p:last-child{margin-bottom:0}.as-text ul,.as-text ol{margin:2px 0 6px;padding-left:20px}.as-text li{margin:2px 0}.as-text code{font:12px var(--font-mono);background:var(--panel-2);border:1px solid var(--border);border-radius:3px;padding:0 3px}.as-text pre{font:12px var(--font-mono);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);white-space:pre;margin:4px 0;padding:8px;overflow-x:auto}.as-steps{border-left:2px solid var(--border);flex-direction:column;gap:1px;margin:0;padding:4px 0;list-style:none;display:flex}.as-step{font-size:var(--fs-sm);color:var(--text-2);grid-template-columns:18px 1fr;align-items:center;column-gap:6px;padding:2px 8px;display:grid}.as-step-mark{place-items:center;width:16px;height:16px;display:grid}.as-step-mark .spinner{width:12px;height:12px}.as-step.done .as-step-mark{color:var(--success)}.as-step.error .as-step-mark,.as-step.error .as-step-label{color:var(--danger)}.as-step.skipped{opacity:.6}.as-step-detail{color:var(--text-3);font-size:var(--fs-xs);grid-column:2;line-height:1.35}.as-shot{border:1px solid var(--border);border-radius:var(--radius);grid-column:2;width:100%;max-width:240px;margin:4px 0}.as-foot{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.as-foot:empty{display:none}.as-meta{font-size:var(--fs-sm);color:var(--text-3)}.as-error{border-radius:var(--radius);background:var(--danger-weak);width:100%;color:var(--danger);font-size:var(--fs-sm);padding:8px 10px}.as-bottom{border-top:1px solid var(--border);flex-direction:column;gap:6px;padding:8px 10px 10px;display:flex}.as-status{font-size:var(--fs-xs);color:var(--text-3);min-height:0}.as-status:empty{display:none}.as-composer{border:1px solid var(--border-strong);background:var(--panel);border-radius:10px;flex-direction:column;gap:6px;padding:6px;display:flex}.as-row{align-items:flex-end;gap:4px;display:flex}.as-attach{flex:none;width:30px;height:30px}.as-tray{flex-wrap:wrap;gap:6px;max-height:132px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.as-tray-item{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);max-width:100%;height:34px;font-size:var(--fs-sm);align-items:center;gap:6px;padding:2px 4px 2px 2px;display:flex}.as-tray-item.reading{opacity:.75}.as-tray-item .spinner{flex:none;width:12px;height:12px}.as-tray-icon{width:28px;height:28px;color:var(--text-2);flex:none;place-items:center;display:grid}.as-tray-thumb{object-fit:cover;border-radius:3px;flex:none;width:28px;height:28px}.as-tray-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:170px;overflow:hidden}.as-tray-remove{width:20px;height:20px;color:var(--text-3);background:0 0;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.as-tray-remove:hover{background:var(--hover);color:var(--text)}.as-user-files{flex-wrap:wrap;justify-content:flex-end;gap:4px;margin:0 0 4px;padding:0;list-style:none;display:flex}.as-user-thumb{border:1px solid var(--accent-border);border-radius:6px;max-width:140px;max-height:110px;display:block}.as-user-chip{border-radius:var(--radius-sm);background:var(--panel);max-width:220px;font-size:var(--fs-sm);align-items:center;gap:4px;padding:2px 6px;display:inline-flex}.as-user-chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.assistant.as-drop{outline:2px dashed var(--accent);outline-offset:-4px;background:var(--accent-weak)}.as-composer:focus-within{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.as-input:focus,.as-input:focus-visible{outline:none}.as-input{resize:none;min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:0;flex:1;max-height:200px;padding:4px 0;line-height:1.4}.as-send{background:var(--accent);width:30px;height:30px;color:var(--accent-text);border:0;border-radius:8px;flex:none;place-items:center;display:grid}.as-send:hover{background:var(--accent-hover)}.as-send.stop{background:var(--text-2)}.as-note{font-size:var(--fs-xs);color:var(--text-3);line-height:1.35}@media (max-width:980px){.tp-panel.wide{width:min(380px, calc(100vw - var(--taskpane-w) - 12px))}}@media (max-width:760px){.app.assistant-open .taskpane{z-index:25;border-left:0;display:flex;position:absolute;inset:0}.app.assistant-open .tp-strip{display:none}.app.assistant-open .tp-panel.wide{border-left:0;width:100%;position:static}}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);font:var(--fs)/1.4 var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;margin:0;overflow:hidden}body{touch-action:manipulation}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus{outline:none}:focus-visible{outline:2px solid var(--focus);outline-offset:1px;border-radius:var(--radius-sm)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:0}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:1000;background:var(--accent);color:var(--accent-text);border-radius:var(--radius);padding:6px 10px;text-decoration:none;position:absolute;top:-40px;left:8px}.skip-link:focus{top:8px}[hidden]{display:none!important}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);background-clip:padding-box;border:2px solid #0000;border-radius:10px}::-webkit-scrollbar-track{background:0 0}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.icon{flex:none;display:block}.icon .a{fill:var(--icon-accent)}.icon .a2{fill:var(--icon-accent-2)}.icon .s{fill:var(--icon-soft)}.icon .f{fill:currentColor;stroke:none}.icon .thin{stroke-width:1px}.icon .thick{stroke-width:2.5px}.icon .nostroke{stroke:none}.icon .thick-a{stroke:var(--icon-accent);stroke-width:5px}.icon circle.f{stroke:none}.app{grid-template-rows:var(--titlebar-h) auto 1fr var(--status-h);-webkit-user-select:none;user-select:none;height:100dvh;display:grid;position:fixed;inset:0}input,textarea,[contenteditable]{-webkit-user-select:text;user-select:text}.titlebar{padding:0 8px;padding-left:max(8px, env(safe-area-inset-left));padding-right:max(8px, env(safe-area-inset-right));background:var(--chrome);border-bottom:1px solid var(--border);align-items:center;gap:6px;min-width:0;display:flex}.tb-brand{flex:none;align-items:center;gap:7px;padding-right:4px;display:flex}.tb-brand img{border-radius:5px;width:22px;height:22px}.tb-brand .name{font-weight:600;font-size:var(--fs-md);letter-spacing:.01em}.tb-brand .alpha-tag{text-transform:uppercase;letter-spacing:.06em;color:var(--accent);border:1px solid var(--accent-border);border-radius:999px;padding:0 6px;font-size:10px;font-weight:600;line-height:16px}.menubar{flex:none;align-items:center;gap:1px;display:flex}.menubar>button{border-radius:var(--radius-sm);height:28px;color:var(--text);font-size:var(--fs);background:0 0;border:0;padding:0 9px}.menubar>button:hover,.menubar>button[aria-expanded=true]{background:var(--hover)}.tb-sep{background:var(--border);flex:none;width:1px;height:20px;margin:0 4px}.quick{flex:none;align-items:center;gap:1px;display:flex}.tb-center{flex:1;justify-content:center;align-items:center;gap:6px;min-width:0;display:flex}.doc-title{text-overflow:ellipsis;white-space:nowrap;border-radius:var(--radius-sm);max-width:100%;color:var(--text);background:0 0;border:1px solid #0000;padding:2px 8px;font-weight:500;overflow:hidden}.doc-title:hover{border-color:var(--border)}.doc-state{font-size:var(--fs-xs);color:var(--text-3);white-space:nowrap}.tb-right{flex:none;align-items:center;gap:4px;display:flex}.cmd-search{position:relative}.cmd-search input{border:1px solid var(--border);background:var(--panel);border-radius:var(--radius);width:190px;height:28px;font-size:var(--fs-sm);padding:0 8px 0 28px}.cmd-search .icon{color:var(--text-3);pointer-events:none;position:absolute;top:7px;left:8px}.cmd-results{z-index:60;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius);width:300px;max-height:360px;padding:4px;position:absolute;top:32px;right:0;overflow:auto}.cmd-results [role=option]{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:8px;padding:6px 8px;display:flex}.cmd-results [role=option][aria-selected=true],.cmd-results [role=option]:hover{background:var(--accent-weak)}.cmd-results .kbd{margin-left:auto}.avatar-btn{border:1px solid var(--border);background:var(--panel-2);width:30px;height:30px;font-weight:600;font-size:var(--fs-sm);color:var(--text-2);border-radius:50%;place-items:center;padding:0;display:grid;overflow:hidden}.avatar-btn img{object-fit:cover;width:100%;height:100%}.mobile-only{display:none!important}.icon-btn{border-radius:var(--radius-sm);width:28px;min-width:28px;height:28px;color:var(--text-2);background:0 0;border:1px solid #0000;place-items:center;padding:0;display:inline-grid}.icon-btn:hover:not(:disabled){background:var(--hover);color:var(--text)}.icon-btn:active:not(:disabled){background:var(--active)}.icon-btn[aria-pressed=true]{background:var(--accent-weak);color:var(--accent);border-color:var(--accent-border)}.icon-btn:disabled{opacity:.38;cursor:default}a.icon-btn{text-decoration:none}.btn{border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--panel);height:30px;color:var(--text);white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-weight:500;display:inline-flex}.btn:hover:not(:disabled){background:var(--hover)}.btn:disabled{opacity:.45;cursor:default}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.btn.primary:hover:not(:disabled){background:var(--accent-hover)}.btn.danger{color:var(--danger)}.btn.ghost{background:0 0;border-color:#0000}.btn.ghost:hover:not(:disabled){background:var(--hover)}.btn.small{height:26px;font-size:var(--fs-sm);padding:0 9px}.kbd{font:11px var(--font-mono);color:var(--text-3);white-space:nowrap}.cm{background:var(--chrome);border-bottom:1px solid var(--border);min-width:0}.cm-tools{scrollbar-width:none;align-items:stretch;gap:0;min-height:66px;padding:4px 6px 2px;display:flex;overflow:auto hidden}.cm-tools::-webkit-scrollbar{display:none}.cm-group{border-right:1px solid var(--border);flex:none;align-items:stretch;gap:1px;padding:0 4px;display:flex}.cm-group:last-child{border-right:0}.cm-stack{flex-direction:column;justify-content:center;gap:1px;display:flex}.tool{border-radius:var(--radius-sm);min-width:52px;max-width:78px;color:var(--text);font-size:var(--fs-xs);text-align:center;background:0 0;border:1px solid #0000;flex-direction:column;justify-content:flex-start;align-items:center;gap:3px;padding:4px 4px 3px;line-height:1.15;display:flex;position:relative}.tool .lbl{white-space:normal;overflow-wrap:anywhere}.tool:hover:not(:disabled){background:var(--hover)}.tool:active:not(:disabled){background:var(--active)}.tool[aria-pressed=true]{background:var(--accent-weak);border-color:var(--accent-border)}.tool:disabled{opacity:.4;cursor:default}.tool.row{flex-direction:row;justify-content:flex-start;gap:5px;min-width:0;max-width:none;height:20px;padding:2px 6px 2px 3px}.tool.row .lbl{white-space:nowrap}.tool-split{display:flex;position:relative}.tool-split>.tool{padding-bottom:12px}.tool-caret{height:11px;color:var(--text-3);border-radius:0 0 var(--radius-sm) var(--radius-sm);background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;bottom:1px;left:1px;right:1px}.tool-caret:hover{background:var(--active);color:var(--text)}.cm-tabs{scrollbar-width:none;gap:0;padding:0 6px;display:flex;overflow-x:auto}.cm-tabs::-webkit-scrollbar{display:none}.cm-tabs [role=tab]{font-size:var(--fs-sm);color:var(--text-2);border-radius:var(--radius-sm) var(--radius-sm) 0 0;white-space:nowrap;background:0 0;border:1px solid #0000;border-bottom:0;margin-top:1px;padding:3px 12px 4px}.cm-tabs [role=tab]:hover{color:var(--text);background:var(--hover)}.cm-tabs [role=tab][aria-selected=true]{background:var(--panel);border-color:var(--border);color:var(--text);font-weight:600;position:relative;top:1px}.workspace{min-width:0;min-height:0;display:flex;position:relative}.leftpane{width:var(--left-w);background:var(--panel);border-right:1px solid var(--border);flex-direction:column;flex:none;min-width:200px;max-width:520px;min-height:0;display:flex}.lp-tabs{border-bottom:1px solid var(--border);flex:none;align-items:center;gap:2px;padding:4px 6px;display:flex}.lp-tabs [role=tab]{border-radius:var(--radius-sm);width:34px;height:28px;color:var(--text-2);background:0 0;border:1px solid #0000;place-items:center;display:grid}.lp-tabs [role=tab][aria-selected=true]{background:var(--accent-weak);border-color:var(--accent-border);color:var(--accent)}.lp-tabs [role=tab]:hover{background:var(--hover)}.lp-tabs .grow{flex:1}.lp-body{flex:1;min-height:0;position:relative;overflow:auto}.splitter{cursor:col-resize;z-index:5;touch-action:none;flex:none;width:5px;margin-left:-3px;margin-right:-2px;position:relative}.splitter:hover,.splitter.dragging{background:var(--accent-border)}.tree{outline:none;padding:4px 0 24px}.tree-filter{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);align-items:center;gap:6px;height:26px;margin:4px 8px 6px;padding:0 8px;display:flex}.tree-filter input{min-width:0;font-size:var(--fs-sm);background:0 0;border:0;flex:1}.tree-filter .icon{color:var(--text-3)}.ti{cursor:default;white-space:nowrap;border:1px solid #0000;align-items:center;gap:5px;height:24px;padding-right:8px;display:flex;position:relative}.ti:hover{background:var(--hover)}.ti[aria-selected=true]{background:var(--accent-weak);border-color:var(--accent-border)}.ti:focus-visible{outline:2px solid var(--focus);outline-offset:-2px;border-radius:0}.ti .twisty{width:14px;height:14px;color:var(--text-3);background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.ti .twisty[aria-hidden=true]{visibility:hidden}.ti .label{text-overflow:ellipsis;overflow:hidden}.ti .label .muted,.ti.suppressed .label,.ti.rolled .label{color:var(--text-3)}.ti.suppressed .icon,.ti.rolled .icon{opacity:.45}.ti.error .label{color:var(--danger)}.ti .badge{color:var(--danger);place-items:center;margin-left:auto;display:grid}.ti .badge.warn{color:var(--warning)}.ti.editing{background:var(--accent-weak)}.ti input.rename{border:1px solid var(--accent);background:var(--panel);border-radius:2px;min-width:80px;height:20px;padding:0 4px}.rollback-bar{cursor:ns-resize;touch-action:none;background:0 0;border:0;width:calc(100% - 12px);height:8px;margin:2px 6px;padding:0;display:block;position:relative}.rollback-bar:before{content:"";background:var(--accent);border-radius:2px;height:3px;position:absolute;top:3px;left:0;right:0}.rollback-bar:hover:before,.rollback-bar.dragging:before{background:var(--accent-hover);height:4px;top:2px}.tree-section-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);padding:8px 10px 4px}.pm{flex-direction:column;min-height:100%;display:flex}.pm-head{border-bottom:1px solid var(--border);background:var(--panel);z-index:2;align-items:center;gap:6px;padding:8px 8px 6px 10px;display:flex;position:sticky;top:0}.pm-head .title{font-weight:600;font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.pm-actions{border-bottom:1px solid var(--border);gap:4px;padding:6px 10px;display:flex}.pm-actions .ok{color:var(--success)}.pm-actions .cancel{color:var(--danger)}.pm-msg{border-radius:var(--radius);background:var(--panel-2);border:1px solid var(--border);font-size:var(--fs-sm);color:var(--text-2);margin:8px 10px 0;padding:8px 10px}.pm-msg.error{background:var(--danger-weak);border-color:color-mix(in srgb, var(--danger) 35%, transparent);color:var(--danger)}.pm-msg.warn{background:var(--warning-weak);color:var(--warning);border-color:color-mix(in srgb, var(--warning) 35%, transparent)}.pm-msg.info{background:var(--accent-weak);border-color:var(--accent-border);color:var(--text)}.pm-section{border-bottom:1px solid var(--border)}.pm-section>.sec-head{width:100%;font-weight:600;font-size:var(--fs-sm);text-align:left;background:0 0;border:0;align-items:center;gap:6px;padding:8px 10px;display:flex}.pm-section>.sec-head .chev{color:var(--text-3);margin-left:auto;transition:transform .12s}.pm-section[data-collapsed=true]>.sec-head .chev{transform:rotate(-90deg)}.pm-section[data-collapsed=true]>.sec-body{display:none}.pm-section>.sec-head input[type=checkbox]{margin:0}.sec-body{flex-direction:column;gap:8px;padding:2px 10px 10px;display:flex}.row{align-items:center;gap:6px;min-width:0;display:flex}.row>.grow{flex:1;min-width:0}.row-icon{color:var(--text-2);flex:none}.field-label{font-size:var(--fs-sm);color:var(--text-2)}.input,select.input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--panel);width:100%;min-width:0;height:28px;font-size:var(--fs);padding:0 7px}.input:focus{border-color:var(--accent)}.input.invalid{border-color:var(--danger);background:var(--danger-weak)}.input.expr{color:var(--accent)}.spin{flex:1;align-items:stretch;min-width:0;display:flex}.spin .input{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.spin .spin-btns{border:1px solid var(--border-strong);border-radius:0 var(--radius-sm) var(--radius-sm) 0;border-left:0;flex-direction:column;display:flex;overflow:hidden}.spin .spin-btns button{background:var(--panel-2);width:18px;color:var(--text-2);border:0;flex:1;place-items:center;padding:0;display:grid}.spin .spin-btns button:hover{background:var(--hover);color:var(--text)}.check{font-size:var(--fs);align-items:center;gap:7px;display:flex}.check input{width:15px;height:15px;accent-color:var(--accent);margin:0}.seg{border:1px solid var(--border-strong);border-radius:var(--radius);display:inline-flex;overflow:hidden}.seg button{background:var(--panel);height:28px;color:var(--text-2);border:0;align-items:center;gap:5px;padding:0 10px;display:inline-flex}.seg button+button{border-left:1px solid var(--border-strong)}.seg button[aria-pressed=true]{background:var(--accent-weak);color:var(--accent);font-weight:600}.selbox{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--panel);cursor:text;flex-direction:column;gap:1px;min-height:54px;max-height:140px;padding:2px;display:flex;overflow:auto}.selbox.active{border-color:var(--accent);outline:1px solid var(--accent);background:color-mix(in srgb, var(--accent-weak) 45%, var(--panel))}.selbox .empty{color:var(--text-3);font-size:var(--fs-sm);padding:4px 6px}.selbox .item{font-size:var(--fs-sm);border-radius:2px;align-items:center;gap:6px;padding:2px 4px 2px 6px;display:flex}.selbox .item:hover{background:var(--hover)}.selbox .item .rm{width:20px;height:20px;margin-left:auto}.relations-list{flex-direction:column;gap:2px;display:flex}.rel-btn{border-radius:var(--radius-sm);text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:8px;width:100%;padding:4px 6px;display:flex}.rel-btn:hover{background:var(--hover)}.rel-btn.on{background:var(--accent-weak);border-color:var(--accent-border)}.viewport{background:var(--viewport);touch-action:none;flex:1;min-width:0;min-height:0;position:relative;overflow:hidden}.viewport canvas.gl{outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}.viewport canvas.gl:focus-visible{outline:1px solid color-mix(in srgb, var(--focus) 45%, transparent);outline-offset:-1px}.hud{background:color-mix(in srgb, var(--panel) 88%, transparent);border:1px solid var(--border);border-radius:var(--radius);z-index:4;align-items:center;gap:1px;padding:2px;display:flex;position:absolute;top:8px;left:50%;transform:translate(-50%)}.hud .icon-btn{width:30px;height:28px}.hud .split{align-items:center;display:flex}.hud .split .caret{width:14px;min-width:14px;height:28px}.hud .sep{background:var(--border);width:1px;height:18px;margin:0 2px}.confirm-corner{z-index:4;flex-direction:column;gap:4px;display:flex;position:absolute;top:8px;right:10px}.confirm-corner button{border-radius:var(--radius);border:1px solid var(--border);background:color-mix(in srgb, var(--panel) 90%, transparent);place-items:center;width:40px;height:40px;display:grid}.confirm-corner .ok{color:var(--success)}.confirm-corner .cancel{color:var(--danger)}.confirm-corner button:hover{background:var(--hover)}.view-label{font-size:var(--fs-sm);color:var(--text-2);pointer-events:none;z-index:3;position:absolute;bottom:10px;left:84px}.triad{z-index:3;cursor:pointer;width:74px;height:74px;position:absolute;bottom:6px;left:6px}.triad text{font:600 11px var(--font)}.flyout-tree{z-index:3;max-width:260px;position:absolute;top:8px;left:8px}.flyout-tree>button{border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb, var(--panel) 90%, transparent);height:28px;font-size:var(--fs-sm);align-items:center;gap:6px;padding:0 8px;display:flex}.flyout-tree .ft-body{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);min-width:220px;max-height:50vh;margin-top:4px;overflow:auto}.flyout-tree .ft-body .tree{padding:2px 0 6px}.sketch-banner{z-index:3;font-size:var(--fs-sm);border:1px solid var(--border);background:color-mix(in srgb, var(--panel) 90%, transparent);color:var(--text-2);pointer-events:none;white-space:nowrap;border-radius:999px;padding:3px 10px;position:absolute;top:46px;left:50%;transform:translate(-50%)}.dims{pointer-events:none;z-index:2;position:absolute;inset:0;overflow:hidden}.dim-label{font:12px/16px var(--font);color:var(--dimension);white-space:nowrap;pointer-events:auto;cursor:pointer;background:color-mix(in srgb, var(--viewport) 70%, transparent);border-radius:2px;padding:0 3px;position:absolute;transform:translate(-50%,-50%)}.dim-label.driven{color:var(--dimension-driven)}.dim-label.bad{color:var(--sketch-over)}.dim-label.expr:before{content:"Σ ";color:var(--accent)}.dim-label:hover,.dim-label.selected{color:var(--sketch-selected)}.rel-badge{pointer-events:auto;cursor:pointer;background:color-mix(in srgb, var(--viewport) 82%, transparent);border:1px solid var(--border-strong);width:18px;height:18px;color:var(--text-2);border-radius:3px;place-items:center;display:grid;position:absolute;transform:translate(-50%,-50%)}.rel-badge.bad{color:var(--sketch-over);border-color:var(--sketch-over)}.rel-badge:hover,.rel-badge.selected{color:var(--sketch-selected);border-color:var(--sketch-selected)}.cursor-tip{z-index:5;pointer-events:none;font:11px var(--font-mono);color:var(--text-2);background:color-mix(in srgb, var(--panel) 85%, transparent);border:1px solid var(--border);white-space:nowrap;border-radius:3px;align-items:center;gap:4px;padding:0 4px;display:flex;position:absolute}.box-select{z-index:4;border:1px solid var(--selection);background:color-mix(in srgb, var(--selection) 10%, transparent);pointer-events:none;position:absolute}.box-select.crossing{background:color-mix(in srgb, var(--success) 10%, transparent);border-style:dashed;border-color:var(--success)}.modify-box{z-index:20;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius);flex-direction:column;gap:6px;min-width:190px;padding:6px;display:flex;position:absolute}.modify-box .mb-head{align-items:center;gap:2px;display:flex}.modify-box .mb-head .grow{font-size:var(--fs-xs);color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;flex:1;padding-left:4px;overflow:hidden}.modify-box .err{font-size:var(--fs-xs);color:var(--danger)}.ctx-toolbar{z-index:15;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius);flex-wrap:wrap;gap:1px;max-width:260px;padding:2px;display:flex;position:absolute}.viewport-empty{pointer-events:none;z-index:1;place-items:center;display:grid;position:absolute;inset:0}.loading-kernel{z-index:6;background:var(--panel);border:1px solid var(--border);font-size:var(--fs-sm);color:var(--text-2);border-radius:999px;align-items:center;gap:10px;padding:6px 12px;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.spinner{border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2.4s}}.drawing-ws{z-index:7;background:var(--viewport);cursor:grab;touch-action:none;outline:none;position:absolute;inset:0;overflow:hidden}.drawing-ws:active{cursor:grabbing}.drawing-ws:focus-visible{outline:1px solid color-mix(in srgb, var(--focus) 45%, transparent);outline-offset:-1px}.sheet-host{transform-origin:0 0;position:absolute;top:0;left:0}.paper{outline:1px solid var(--border-strong);background:#fff;position:relative}.paper svg{display:block}.view-sel{border:1px dashed var(--accent);pointer-events:none;position:absolute}.drawing-empty{border-radius:var(--radius);background:var(--panel);border:1px solid var(--border);color:var(--text-2);padding:10px 14px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sheet-tabs{align-items:stretch;height:100%;margin-right:6px;display:flex}.sheet-tabs [role=tab]{border:0;border-right:1px solid var(--border);font-size:var(--fs-sm);color:var(--text-2);background:0 0;padding:0 12px}.sheet-tabs [role=tab]:first-child{border-left:1px solid var(--border)}.sheet-tabs [role=tab][aria-selected=true]{background:var(--panel);color:var(--text);font-weight:600}.sheet-tabs [role=tab]:hover{background:var(--hover)}.taskpane{border-left:1px solid var(--border);background:var(--panel);flex:none;display:flex}.tp-strip{width:var(--taskpane-w);border-left:1px solid var(--border);flex-direction:column;order:2;align-items:center;gap:2px;padding:6px 0;display:flex}.tp-strip [role=tab]{border-radius:var(--radius-sm);width:30px;height:30px;color:var(--text-2);background:0 0;border:1px solid #0000;place-items:center;display:grid}.tp-strip [role=tab][aria-selected=true]{background:var(--accent-weak);color:var(--accent);border-color:var(--accent-border)}.tp-strip [role=tab]:hover{background:var(--hover)}.tp-strip .spacer{flex:1}.tp-panel{flex-direction:column;order:1;width:280px;display:flex;overflow:auto}.tp-panel .tp-head{border-bottom:1px solid var(--border);background:var(--panel);align-items:center;padding:8px 8px 8px 12px;font-weight:600;display:flex;position:sticky;top:0}.tp-panel .tp-head .grow{flex:1}.tp-body{flex-direction:column;gap:10px;padding:10px 12px;display:flex}.file-list{flex-direction:column;gap:2px;display:flex}.file-item{border-radius:var(--radius);text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:8px;width:100%;padding:6px 8px;display:flex}.file-item:hover{background:var(--hover)}.file-item .meta{font-size:var(--fs-xs);color:var(--text-3)}.file-item .txt{flex-direction:column;min-width:0;display:flex}.file-item .txt .n{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.file-section{font-size:var(--fs-sm);color:var(--text-2);margin:14px 0 4px;font-weight:600}.swatches{grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.swatch{aspect-ratio:1;border-radius:var(--radius);border:1px solid var(--border-strong);padding:0}.swatch[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:1px}.statusbar{font-size:var(--fs-sm);color:var(--text-2);background:var(--chrome);border-top:1px solid var(--border);white-space:nowrap;min-width:0;padding:0 6px;padding-bottom:env(safe-area-inset-bottom);align-items:center;gap:0;display:flex}.statusbar .msg{text-overflow:ellipsis;flex:1;min-width:0;padding:0 4px;overflow:hidden}.statusbar .cell{border-left:1px solid var(--border);align-items:center;gap:5px;height:18px;padding:0 10px;display:flex}.statusbar button.cell{color:inherit;background:0 0;border-top:0;border-bottom:0;border-right:0;border-radius:0}.statusbar button.cell:hover{background:var(--hover);color:var(--text)}.status-dot{background:var(--text-3);border-radius:50%;width:8px;height:8px}.status-under{color:var(--sketch-under)}.status-full{color:var(--text)}.status-over{color:var(--sketch-over)}.menu{z-index:100;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius);min-width:200px;max-width:min(360px,100vw - 16px);max-height:calc(100dvh - 16px);font-size:var(--fs);padding:4px;position:fixed;overflow:auto}.menu [role^=menuitem]{border-radius:var(--radius-sm);text-align:left;width:100%;height:28px;color:var(--text);white-space:nowrap;background:0 0;border:0;align-items:center;gap:8px;padding:0 10px 0 8px;display:flex}.menu [role^=menuitem] .ic{width:18px;color:var(--text-2);flex:none;place-items:center;display:grid}.menu [role^=menuitem] .lbl{text-overflow:ellipsis;flex:1;overflow:hidden}.menu [role^=menuitem]:hover,.menu [role^=menuitem]:focus{background:var(--accent-weak)}.menu [role^=menuitem][aria-disabled=true]{opacity:.42;cursor:default}.menu [role^=menuitem][aria-disabled=true]:hover{background:0 0}.menu .sep{background:var(--border);height:1px;margin:4px 2px}.menu .group-label{font-size:var(--fs-xs);color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;padding:6px 10px 2px}.menu .sub-caret{color:var(--text-3)}.dialog-backdrop{background:var(--scrim);z-index:200;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.dialog{background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius-lg);flex-direction:column;width:min(520px,100%);max-height:calc(100dvh - 32px);display:flex;overflow:hidden}.dialog.wide{width:min(760px,100%)}.dialog-head{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:12px 12px 10px 16px;display:flex}.dialog-head h2{font-size:var(--fs-lg);flex:1;margin:0;font-weight:600}.dialog-body{-webkit-user-select:text;user-select:text;flex-direction:column;gap:12px;padding:14px 16px;display:flex;overflow:auto}.dialog-body p{color:var(--text-2);margin:0}.dialog-foot{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:10px 16px 14px;display:flex}.dialog-foot .left{margin-right:auto}.grid-form{grid-template-columns:max-content 1fr;align-items:center;gap:8px 12px;display:grid}.table{border-collapse:collapse;width:100%;font-size:var(--fs)}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:6px 8px}.table th{color:var(--text-2);font-weight:600;font-size:var(--fs-sm)}.table td.num{font-family:var(--font-mono);font-size:var(--fs-sm)}.table input.input{height:26px}.shortcut-grid{grid-template-columns:1fr auto;gap:4px 16px;display:grid}.shortcut-grid h3{font-size:var(--fs-sm);color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;grid-column:1/-1;margin:10px 0 2px}.kbd-key{font:12px var(--font-mono);border:1px solid var(--border-strong);background:var(--panel-2);border-bottom-width:2px;border-radius:4px;padding:0 5px}.toasts{right:12px;bottom:calc(var(--status-h) + 12px);z-index:300;pointer-events:none;flex-direction:column;align-items:flex-end;gap:8px;max-width:calc(100vw - 24px);display:flex;position:fixed}.toast{pointer-events:auto;background:var(--panel);border:1px solid var(--border-strong);border-left:3px solid var(--accent);border-radius:var(--radius);align-items:flex-start;gap:10px;width:360px;max-width:100%;padding:10px 10px 10px 12px;display:flex}.toast.error{border-left-color:var(--danger)}.toast.warning{border-left-color:var(--warning)}.toast.success{border-left-color:var(--success)}.toast .body{flex:1;min-width:0}.toast .t{margin-bottom:2px;font-weight:600}.toast .m{color:var(--text-2);font-size:var(--fs-sm)}.toast .actions{gap:6px;margin-top:8px;display:flex}.tooltip{z-index:400;pointer-events:none;background:var(--tooltip-bg);color:var(--tooltip-text);border-radius:var(--radius-sm);font-size:var(--fs-sm);max-width:280px;padding:6px 8px;line-height:1.35;position:fixed}.tooltip .tt-title{justify-content:space-between;gap:8px;font-weight:600;display:flex}.tooltip .tt-title .kbd{color:inherit;opacity:.7}.tooltip .tt-desc{opacity:.85;margin-top:2px}.start{z-index:8;background:var(--viewport);place-items:center;padding:20px;display:grid;position:absolute;inset:0;overflow:auto}.start-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:18px;width:min(720px,100%);padding:22px;display:flex}.start-card h1{align-items:center;gap:10px;margin:0;font-size:20px;font-weight:600;display:flex}.start-card h1 img{border-radius:7px;width:32px;height:32px}.start-card .sub{color:var(--text-2);margin-top:-10px}.start-actions{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.start-action{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);text-align:left;flex-direction:column;align-items:flex-start;gap:6px;min-height:84px;padding:12px;display:flex}.start-action:hover{border-color:var(--accent-border);background:var(--accent-weak)}.start-action .t{font-weight:600}.start-action .d{font-size:var(--fs-sm);color:var(--text-2)}.start-section h2{font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);margin:0 0 8px;font-weight:600}.start-foot{font-size:var(--fs-sm);color:var(--text-3);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.start-foot a{color:var(--text-2)}@media (max-width:1180px){:root{--left-w:250px}.cmd-search input{width:150px}.tb-brand .name{display:none}}@media (max-width:980px){.taskpane .tp-panel{right:var(--taskpane-w);z-index:12;border-left:1px solid var(--border);background:var(--panel);position:absolute;top:0;bottom:0}.quick .hide-tablet,.doc-state{display:none}}@media (max-width:760px){:root{--titlebar-h:46px;--status-h:28px}.menubar,.quick .hide-mobile,.cmd-search,.tb-brand .alpha-tag,.tb-sep.hide-mobile{display:none!important}.mobile-only{display:inline-grid!important}.cm-tools{min-height:56px;padding:3px 4px 1px}.tool{min-width:46px;max-width:64px}.tool .lbl{font-size:10px}.cm-stack{flex-direction:row;align-items:stretch}.tool.row{flex-direction:column;min-width:46px;max-width:64px;height:auto;padding:4px}.tool.row .lbl{white-space:normal;font-size:10px}.leftpane{z-index:20;border-right:0;border-top:1px solid var(--border-strong);border-radius:12px 12px 0 0;max-width:none;height:min(52dvh,460px);transition:transform .18s;position:absolute;inset:auto 0 0;transform:translateY(105%);width:100%!important}.leftpane.open{transform:none}.leftpane .lp-tabs:before{content:"";background:var(--border-strong);border-radius:4px;width:36px;height:4px;position:absolute;top:4px;left:50%;transform:translate(-50%)}.leftpane .lp-tabs{padding-top:12px;position:relative}.splitter,.taskpane{display:none}.hud{scrollbar-width:none;max-width:calc(100% - 64px);top:6px;overflow-x:auto}.hud .hide-mobile{display:none}.confirm-corner{flex-direction:row;top:auto;bottom:12px;right:12px}.confirm-corner button{width:48px;height:48px}.statusbar .cell.hide-mobile,.view-label{display:none}.flyout-tree{display:none!important}.toasts{align-items:stretch;left:12px;right:12px}.toast{width:auto}.ctx-toolbar{max-width:calc(100% - 16px)}.sketch-banner{top:44px}}@media (prefers-reduced-motion:reduce){.leftpane{transition:none}}
