:root{--n-950: #100e0b;--n-900: #16130f;--n-850: #1c1814;--n-800: #221e19;--n-750: #2b2620;--n-700: #35302a;--n-600: #4a443c;--n-500: #6b6359;--n-450: #968c80;--n-400: #8c8377;--n-300: #ada396;--n-200: #cfc6ba;--n-100: #e8e1d8;--n-050: #f5f1ea;--viewport-bg: #141210;--ui-accent: #c97b3f;--ui-accent-hover: #de9459;--ui-accent-press: #a6612e;--ui-accent-tint: rgba(201, 123, 63, .14);--ui-accent-edge: rgba(201, 123, 63, .34);--ui-accent-on: #1a120a;--ui-danger: #c05a4a;--ui-danger-tint: rgba(192, 90, 74, .14);--ui-success: #7a9a6b;--ui-info: #6e8ca8;--ui-warning: #d2a044;--mat-oak: #c79a5e;--mat-walnut: #6b4530;--mat-maple: #e3cfa6;--mat-cherry: #a85235;--mat-pine: #dec08a;--mat-cedar: #c2895c;--mat-poplar: #d6cf9e;--mat-plywood: #c8a97a;--mat-mdf: #8c8073;--axis-x: #e05a4e;--axis-y: #6fbf73;--axis-z: #5a93d6;--axis-x-label: #e8897e;--axis-z-label: #8fb4dd;--font-sans: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI Variable Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", "Cascadia Mono", Menlo, Consolas, monospace;--ui-scale: 1;--fs-2xs: calc(10px * var(--ui-scale));--fs-xs: calc(11px * var(--ui-scale));--fs-sm: calc(12px * var(--ui-scale));--fs-md: calc(13px * var(--ui-scale));--fs-lg: calc(15px * var(--ui-scale));--fs-xl: calc(18px * var(--ui-scale));--fs-2xl: calc(24px * var(--ui-scale));--lh-tight: 1.2;--lh-base: 1.45;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--sp-1: calc(2px * var(--ui-scale));--sp-2: calc(4px * var(--ui-scale));--sp-3: calc(6px * var(--ui-scale));--sp-4: calc(8px * var(--ui-scale));--sp-5: calc(12px * var(--ui-scale));--sp-6: calc(16px * var(--ui-scale));--sp-7: calc(20px * var(--ui-scale));--sp-8: calc(24px * var(--ui-scale));--sp-9: calc(32px * var(--ui-scale));--r-sm: 3px;--r-md: 5px;--r-lg: 8px;--r-xl: 12px;--r-full: 999px;--el-1: 0 1px 2px rgba(0, 0, 0, .32);--el-2: 0 2px 6px rgba(0, 0, 0, .36), 0 1px 2px rgba(0, 0, 0, .28);--el-3: 0 8px 20px rgba(0, 0, 0, .45), 0 2px 6px rgba(0, 0, 0, .3);--el-4: 0 24px 60px rgba(0, 0, 0, .55), 0 6px 16px rgba(0, 0, 0, .35);--el-inset: inset 0 1px 0 rgba(255, 255, 255, .045);--dur-instant: 80ms;--dur-fast: .13s;--dur-base: .2s;--dur-slow: .32s;--ease-out: cubic-bezier(.2, .8, .3, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--toolbar-w: calc(60px * var(--ui-scale));--browser-w: 232px;--props-w: calc(256px * var(--ui-scale));--menu-h: calc(44px * var(--ui-scale));--status-h: calc(28px * var(--ui-scale));--bottom-h: calc(168px * var(--ui-scale));--bg: var(--n-900);--surface: var(--n-850);--surface2: var(--n-800);--border: var(--n-750);--text: var(--n-100);--text-dim: var(--n-300);--text-muted: var(--n-450);--accent: var(--ui-accent);--accent2: var(--ui-info);--accent3: var(--ui-success);--red: var(--ui-danger);--chrome-deep: var(--n-950);--surface-raised: var(--n-800);--accent-on: var(--ui-accent-on);--sketch-defined: #38bdf8;--sketch-profile: #a78bfa;--sketch-paper: rgba(12, 20, 25, .94);--sketch-grid: rgba(56, 189, 248, .18);--sketch-edge: rgba(56, 189, 248, .42)}[data-theme=light]{--n-950: #ffffff;--n-900: #fbf8f3;--n-850: #ffffff;--n-800: #f1ebe1;--n-750: #e4dcce;--n-700: #d5cabA;--n-600: #b9ac99;--n-500: #8a8071;--n-450: #696052;--n-400: #6e6558;--n-300: #524a3f;--n-200: #3a342b;--n-100: #2a241d;--n-050: #17130e;--viewport-bg: #e8e2d7;--ui-accent: #a85f27;--ui-accent-hover: #8e4f1e;--ui-accent-press: #74401a;--ui-accent-tint: rgba(168, 95, 39, .12);--ui-accent-edge: rgba(168, 95, 39, .3);--ui-accent-on: #ffffff;--ui-danger: #a8402f;--ui-danger-tint: rgba(168, 64, 47, .12);--ui-success: #4f7040;--ui-info: #4c6b87;--ui-warning: #8a6212;--mat-walnut: #5a3826;--mat-maple: #c9ad78;--mat-mdf: #7d7164;--axis-x-label: #a8362c;--axis-z-label: #2d5c8f;--sketch-defined: #087ca7;--sketch-profile: #7553a6;--sketch-paper: rgba(250, 253, 254, .96);--sketch-grid: rgba(8, 124, 167, .14);--sketch-edge: rgba(8, 124, 167, .34);--el-1: 0 1px 2px rgba(74, 56, 36, .1);--el-2: 0 2px 6px rgba(74, 56, 36, .1), 0 1px 2px rgba(74, 56, 36, .07);--el-3: 0 8px 20px rgba(74, 56, 36, .14), 0 2px 6px rgba(74, 56, 36, .09);--el-4: 0 24px 60px rgba(74, 56, 36, .18), 0 6px 16px rgba(74, 56, 36, .11);--el-inset: inset 0 1px 0 rgba(255, 255, 255, .85);--chrome-deep: #f3ede3;--surface-raised: #ffffff}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}input,select,textarea{font:inherit;color:inherit}pre,code,kbd,samp{font-family:var(--font-mono)}svg{display:block}html,body,#root{height:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--fs-md);line-height:var(--lh-base);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}:focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px;border-radius:inherit}:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--n-700);border-radius:var(--r-full);border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background-clip:content-box;background-color:var(--n-600)}*{scrollbar-width:thin;scrollbar-color:var(--n-700) transparent}.prop-input,.input-field{background:var(--surface2);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-2) var(--sp-4);color:var(--text);font-size:var(--fs-md);outline:none;min-width:0;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.prop-input{width:108px}.prop-material-cost{display:flex;width:108px;align-items:baseline;justify-content:space-between;gap:6px;padding:3px 7px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--text);cursor:pointer;font:var(--fs-sm) var(--font-mono)}.prop-material-cost:hover{border-color:var(--ui-accent-edge);background:var(--ui-accent-tint)}.prop-material-cost b{color:var(--text-muted);font:500 var(--fs-2xs) var(--font-mono)}.prop-input:hover,.input-field:hover{border-color:var(--n-700)}.prop-input:focus,.input-field:focus{border-color:var(--ui-accent);box-shadow:0 0 0 3px var(--ui-accent-tint)}.prop-select{width:108px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-2) var(--sp-4);color:var(--text);font-size:var(--fs-md);outline:none;cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238c8377' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--sp-3) center;background-size:13px;padding-right:var(--sp-7);transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.prop-select:hover{border-color:var(--n-700)}.prop-select:focus{border-color:var(--ui-accent);box-shadow:0 0 0 3px var(--ui-accent-tint)}input[type=range]{accent-color:var(--ui-accent)}input[type=checkbox]{accent-color:var(--ui-accent);cursor:pointer}.wood-appearance-preview{height:70px;display:grid;grid-template-columns:minmax(0,1fr) 34px 42px;gap:4px;margin:0 0 10px;padding:5px;overflow:hidden;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--n-900);box-shadow:var(--el-inset)}.wood-preview-face,.wood-preview-edge,.wood-preview-end{position:relative;min-width:0;overflow:hidden;border-radius:var(--r-sm);background-color:var(--n-750)}.wood-preview-face>span{position:absolute;inset:-42%;background-repeat:repeat}.wood-preview-edge{background-repeat:repeat;background-size:cover}.wood-preview-end{background-color:var(--wood-color, #ad7a45);background-image:repeating-radial-gradient(ellipse at 45% 115%,transparent 0 5px,rgba(55,31,14,.42) 6px 7px,rgba(232,194,136,.18) 8px 10px),linear-gradient(90deg,rgba(255,255,255,.08),transparent 55%)}.wood-appearance-preview label{position:absolute;left:4px;bottom:3px;z-index:1;padding:2px 3px;border-radius:2px;background:#100e0cb8;color:#ffffffdb;font:650 8px/1 var(--font-mono);letter-spacing:.05em;text-transform:uppercase;pointer-events:none}.wood-appearance-control{margin:7px 0 9px}.wood-appearance-control-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:3px;color:var(--text-dim);font-size:var(--fs-xs)}.wood-appearance-control-label strong{color:var(--ui-accent);font:600 var(--fs-2xs)/1 var(--font-mono)}.wood-appearance-control input[type=range]{width:100%;height:12px;margin:0;cursor:ew-resize}.wood-grain-direction{min-width:48px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:3px 6px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2);color:var(--text);cursor:pointer}.wood-grain-direction:hover{border-color:var(--ui-accent-edge);color:var(--ui-accent)}.wood-appearance-actions{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:8px}.wood-appearance-actions .gd-btn{min-width:0;justify-content:center;padding-inline:5px}.wood-appearance-note{margin:8px 0 3px;padding:7px 8px;border-left:2px solid var(--ui-accent-edge);background:var(--ui-accent-tint);color:var(--text-muted);font-size:var(--fs-2xs);line-height:1.45}.btn{border-radius:var(--r-md);padding:var(--sp-3) var(--sp-6);font-size:var(--fs-md);font-weight:var(--fw-semibold);border:1px solid var(--border);background:var(--surface2);color:var(--text);transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-instant) var(--ease-out)}.btn:hover{background:var(--n-700);border-color:var(--n-600)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn.primary{background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-accent-on);box-shadow:var(--el-1)}.btn.primary:hover{background:var(--ui-accent-hover);border-color:var(--ui-accent-hover)}.btn.primary:active{background:var(--ui-accent-press)}.btn.secondary{background:var(--surface2);color:var(--text)}.btn.danger{color:var(--ui-danger)}.btn.danger:hover{background:var(--ui-danger-tint);border-color:var(--ui-danger)}.modal-overlay{position:fixed;inset:0;background:#0806049e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:200}.shop-packet-modal{width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--el-4),var(--el-inset)}.shop-packet-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--border)}.shop-packet-title{display:flex;align-items:center;gap:10px}.shop-packet-title>span{width:34px;height:34px;display:grid;place-items:center;border-radius:var(--r-md);color:var(--ui-accent);background:var(--ui-accent-tint);border:1px solid var(--ui-accent-edge)}.shop-packet-title p{margin:0 0 2px;color:var(--text-muted);font-size:var(--fs-xs)}.shop-packet-title h2{margin:0;font-size:var(--fs-xl)}.shop-packet-intro{margin:0;padding:14px 18px;color:var(--text-dim);line-height:1.55}.shop-packet-presets{margin:0 18px;padding:0;border:0;display:grid;gap:8px}.shop-packet-presets legend{margin-bottom:8px;color:var(--text);font-size:var(--fs-sm);font-weight:600}.shop-packet-presets label{display:flex;gap:10px;align-items:flex-start;padding:11px 12px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.shop-packet-presets label[data-selected]{border-color:var(--ui-accent);background:var(--ui-accent-tint)}.shop-packet-presets input{margin-top:2px;accent-color:var(--ui-accent)}.shop-packet-presets label span{display:grid;gap:3px}.shop-packet-presets strong{font-size:var(--fs-md);color:var(--text)}.shop-packet-presets small{font-size:var(--fs-xs);line-height:1.4;color:var(--text-muted)}.shop-packet-options{margin:16px 18px 0;padding:12px;display:flex;flex-wrap:wrap;align-items:center;gap:16px;border:1px solid var(--border);border-radius:var(--r-md)}.shop-packet-options>div{display:flex;align-items:center;gap:8px;color:var(--text-dim);font-size:var(--fs-sm)}.shop-packet-segment{display:flex;gap:3px}.shop-packet-check{display:flex;align-items:center;gap:7px;color:var(--text-dim);font-size:var(--fs-sm);cursor:pointer}.shop-packet-check input{accent-color:var(--ui-accent)}.shop-packet-field{margin:0 18px 14px;display:grid;gap:6px;color:var(--text);font-size:var(--fs-sm);font-weight:600}.shop-packet-field input,.shop-packet-field select{min-height:36px;padding:6px 10px;font-weight:400;color:var(--text);background:var(--surface2);border:1px solid var(--border);border-radius:var(--r-sm)}.shop-packet-presets+.shop-packet-presets{margin-top:14px}.shop-packet-presets>.shop-packet-check{padding:4px 2px;border:0;background:none}.shop-packet-ready{margin:16px 18px 0;padding:12px;display:grid;gap:10px;border:1px solid var(--border);border-radius:var(--r-md)}.shop-packet-ready h3{margin:0;font-size:var(--fs-sm);font-weight:600;color:var(--text)}.shop-packet-ready>p{margin:0;font-size:var(--fs-xs);color:var(--text-muted)}.shop-packet-decide{display:grid;gap:6px;padding:10px;background:var(--surface2);border-left:2px solid var(--ui-warning);border-radius:var(--r-sm);font-size:var(--fs-sm);color:var(--text-dim)}.shop-packet-decide label{display:grid;gap:4px;font-size:var(--fs-xs)}.shop-packet-decide select{min-height:36px;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--r-sm);padding:6px}.shop-packet-decide button{justify-self:start}.shop-packet-more{margin:12px 18px 0;padding:10px 12px;display:grid;gap:10px;border:1px solid var(--border);border-radius:var(--r-md)}.shop-packet-more>summary{cursor:pointer;font-size:var(--fs-sm);font-weight:600;color:var(--text)}.shop-packet-more[open]>summary{margin-bottom:6px}.shop-packet-more .shop-packet-field{margin:0}.shop-packet-note{margin:12px 18px 0;padding:10px 12px;color:var(--text-muted);background:var(--surface2);border-left:2px solid var(--ui-info);font-size:var(--fs-xs);line-height:1.45}.shop-packet-actions{display:flex;justify-content:flex-end;gap:8px;padding:16px 18px 18px}.shaper-job-group{margin-bottom:14px}.shaper-job-group-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:0 2px 5px;border-bottom:1px solid var(--border)}.shaper-job-group-head strong{font-size:var(--fs-md);color:var(--text)}.shaper-job-group-head small{color:var(--text-muted);font-size:var(--fs-xs)}.shaper-setup-block{margin:8px 0 0;padding:8px 9px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2)}.shaper-setup-head{display:flex;align-items:center;gap:9px}.shaper-setup-head .shaper-job-copy strong{text-transform:capitalize}.shaper-first-article{margin-left:auto;padding:2px 7px;border-radius:999px;font-size:var(--fs-2xs);font-weight:600;color:var(--ui-accent);background:var(--ui-accent-tint);border:1px solid var(--ui-accent-edge)}.shaper-setup-datum{margin:6px 0 7px;padding:6px 8px;color:var(--text-dim);font-size:var(--fs-xs);line-height:1.45;background:var(--n-900);border-left:2px solid var(--ui-accent-edge);border-radius:var(--r-sm)}.modal-content{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:var(--sp-7);max-height:90vh;overflow-y:auto;color:var(--text);box-shadow:var(--el-inset),var(--el-4)}.modal-actions{display:flex;gap:var(--sp-4);justify-content:flex-end;padding-top:var(--sp-5);border-top:1px solid var(--border)}.sketch-delete-dialog{width:min(430px,calc(100vw - 32px));padding:0;overflow:hidden}.sketch-delete-dialog>header{display:flex;align-items:center;gap:10px;padding:18px 20px 14px;border-bottom:1px solid var(--border)}.sketch-delete-dialog>header>div{flex:1}.sketch-delete-dialog h2{margin:2px 0 0;font-size:var(--fs-xl)}.sketch-delete-dialog>p{margin:0;padding:18px 20px 10px;color:var(--text-dim);font-size:var(--fs-md);line-height:var(--lh-base)}.sketch-delete-mark{width:32px;height:32px;border-radius:var(--r-md);display:grid;place-items:center;color:var(--ui-danger);background:var(--ui-danger-tint)}.sketch-delete-recovery{margin:0 20px 18px;padding:9px 10px;border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-muted);background:var(--surface2);font-size:var(--fs-xs)}.sketch-delete-dialog .modal-actions{padding:12px 20px;background:var(--surface2)}.sketch-delete-dialog .gd-btn[data-variant=danger]{color:var(--ui-danger);border-color:color-mix(in srgb,var(--ui-danger) 55%,var(--border))}.modal-overlay.gd-over-tour{z-index:1100}.example-open-mark{color:var(--ui-accent);background:var(--ui-accent-tint)}.phone-notice .modal-actions,.example-open-dialog .modal-actions{flex-wrap:wrap}.share-dialog{width:min(540px,calc(100vw - 32px));max-height:calc(100dvh - 48px);display:flex;flex-direction:column}.share-dialog .share-body{display:flex;flex-direction:column;gap:12px;padding:16px 20px;overflow-y:auto;min-height:0;color:var(--text-dim);font-size:var(--fs-md);line-height:var(--lh-base)}.share-dialog .share-body p{margin:0}.share-dialog .share-fine{font-size:var(--fs-xs);color:var(--text-muted)}.share-dialog .share-field{display:grid;gap:5px;font-size:var(--fs-sm);color:var(--text-dim)}.share-dialog .share-input{width:100%;min-width:0;padding:7px 9px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2);color:var(--text)}.share-dialog .share-link-row{display:flex;align-items:center;gap:8px}.share-dialog .share-link-row svg{flex:0 0 auto;color:var(--text-muted)}.share-dialog .share-note{padding:9px 10px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2);font-size:var(--fs-xs)}.share-dialog .share-error{color:var(--ui-danger);border-color:color-mix(in srgb,var(--ui-danger) 55%,var(--border))}.share-dialog .share-mine h3{margin:4px 0 6px;font-size:var(--fs-sm);font-weight:600;color:var(--text)}.share-dialog .share-mine ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:180px;overflow-y:auto}.share-dialog .share-mine li{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--border);border-radius:var(--r-md)}.share-dialog .share-mine li>div{flex:1;min-width:0;display:flex;flex-direction:column}.share-dialog .share-mine li strong{color:var(--text);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-dialog .share-mine li span{font-size:var(--fs-xs);color:var(--text-muted)}.share-dialog .modal-actions{flex-wrap:wrap}.app-share-launch{gap:6px}@media(max-width:1340px){.app-share-launch span{display:none}}.tree-delete-button{opacity:.34}.gd-row:hover .tree-delete-button,.tree-delete-button:focus-visible{opacity:1}.component-tree{--tree-indent:14px;--tree-rail: 18px ;min-height:0;height:100%;display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--border);position:relative;overflow:hidden}.component-tree-header{flex:0 0 auto;position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px 8px;border-bottom:1px solid var(--border);background:var(--surface);color:var(--text);font-size:var(--fs-sm);font-weight:600}.component-tree-add{padding:3px 8px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--text-dim);cursor:pointer;font:500 var(--fs-xs) var(--font-sans);white-space:nowrap}.component-tree-add:hover{border-color:var(--ui-accent-edge);color:var(--text)}.component-tree-scroll{min-height:0;flex:1 1 auto;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:3px 0 12px}.component-tree-scroll:before,.component-tree-scroll:after{content:"";position:sticky;display:block;z-index:1;height:7px;pointer-events:none}.component-tree-scroll:before{top:-3px;margin-bottom:-7px;box-shadow:0 5px 8px -8px #000000e6}.component-tree-scroll:after{bottom:-12px;margin-top:-7px;box-shadow:0 -5px 8px -8px #000000e6}.component-tree-empty,.component-tree-drop-hint{padding:10px 12px;color:var(--text-muted);font-size:var(--fs-sm)}.component-tree-drop-hint{margin:2px 10px 5px;padding:7px 10px;border:1px dashed var(--border);border-radius:var(--r-sm);font-size:var(--fs-xs)}.component-tree-drop-target[data-drop-active=true]{background:linear-gradient(90deg,var(--ui-accent-tint),transparent);box-shadow:inset 2px 0 var(--ui-accent)}.component-tree-row{display:flex;align-items:center;min-width:0;gap:6px;padding-top:5px;padding-bottom:5px}.component-tree-caret{display:inline-grid;width:13px;min-width:13px;height:16px;place-items:center;color:var(--text-muted);cursor:pointer}.component-tree-caret>span{width:13px}.component-tree-grip{display:inline-grid;width:14px;height:18px;place-items:center;padding:0;border:0;border-radius:3px;color:var(--text-muted);background:transparent;cursor:grab;touch-action:none;opacity:.45}.component-tree-row:hover .component-tree-grip,.component-tree-grip:focus-visible{opacity:1;background:var(--surface2)}.component-tree-grip:active{cursor:grabbing}@media(hover:hover){.component-tree-grip{opacity:0}.component-tree-row .component-tree-visibility:not([data-off]),.component-tree-row .tree-delete-button{opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.component-tree-row:hover .component-tree-visibility,.component-tree-row:focus-within .component-tree-visibility,.component-tree-row:hover .tree-delete-button,.component-tree-row:focus-within .tree-delete-button{opacity:1}}.component-tree-icon{display:inline-flex;flex:0 0 auto;color:var(--text-dim)}.component-tree-dot{width:7px;height:7px;flex:0 0 auto;border-radius:50%}.component-tree-label{min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.component-tree-label input{width:100%;min-width:0;box-sizing:border-box;padding:2px 5px;border:1px solid var(--ui-accent);border-radius:var(--r-sm);outline:none;color:var(--text);background:var(--n-800);font:inherit}.component-tree-value{flex:0 0 auto;padding-left:8px;color:var(--text-dim);font:var(--fs-2xs) var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.component-tree-caption{flex:0 1 auto;min-width:0;overflow:hidden;max-width:88px;padding-left:8px;color:var(--text-muted);font:var(--fs-2xs) var(--font-sans);text-overflow:ellipsis;white-space:nowrap}.component-tree-visibility{width:20px!important;height:20px!important;flex:0 0 auto;margin-left:auto}.component-tree-children,.component-tree-features{border-left:1px solid color-mix(in srgb,var(--border) 75%,transparent)}.component-tree-children{margin-left:var(--tree-rail)}.component-tree-features{margin-left:calc(var(--tree-rail) + var(--tree-indent))}.component-tree-drag-label{position:absolute;z-index:4;right:10px;bottom:9px;max-width:calc(100% - 20px);padding:5px 8px;overflow:hidden;border:1px solid var(--ui-accent-edge);border-radius:var(--r-sm);color:var(--text);background:var(--surface-raised);box-shadow:var(--el-2);font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.component-tree-menu{position:fixed;z-index:300;width:204px;padding:5px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-raised);box-shadow:var(--el-4)}.component-tree-menu button{display:flex;width:100%;align-items:center;gap:7px;padding:7px 8px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--text-dim);cursor:pointer;font:var(--fs-sm) var(--font-sans);text-align:left}.component-tree-menu button:hover:not(:disabled){color:var(--text);background:var(--surface2)}.component-tree-menu button:disabled{cursor:default;opacity:.42}.component-tree-menu-label{padding:7px 8px 3px;color:var(--text-muted);font:600 var(--fs-2xs) var(--font-sans)}.component-tree-menu-danger{color:var(--ui-danger)!important}.component-tree-menu-dismiss{margin-top:3px;border-top:1px solid var(--border)!important;border-radius:0!important;color:var(--text-muted)!important}.project-shelf{position:relative;width:min(760px,calc(100vw - 28px));max-height:min(780px,calc(100dvh - 28px));display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--el-inset),var(--el-4);color:var(--text)}.project-shelf-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px 15px;border-bottom:1px solid var(--border);background:linear-gradient(105deg,color-mix(in srgb,var(--surface2) 84%,var(--ui-accent-tint)),var(--surface))}.project-shelf-title{display:flex;align-items:center;gap:11px;min-width:0}.project-shelf-mark{display:grid;width:34px;height:34px;place-items:center;flex:0 0 auto;border:1px solid var(--ui-accent-edge);border-radius:var(--r-md);background:var(--ui-accent-tint);color:var(--ui-accent)}.project-shelf-title p,.project-shelf-kicker{margin:0 0 3px;color:var(--ui-accent);font:700 var(--fs-2xs)/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase}.project-shelf-title h2{margin:0;font-size:var(--fs-xl);line-height:1.15}.project-shelf-ledger{display:grid;grid-template-columns:1.2fr;grid-auto-columns:1fr;grid-auto-flow:column;gap:1px;background:var(--border);border-bottom:1px solid var(--border)}.project-shelf-ledger>div{display:flex;min-width:0;flex-direction:column;gap:3px;padding:10px 14px;background:var(--surface2)}.project-shelf-ledger strong{display:flex;align-items:center;gap:5px;color:var(--text);font:700 var(--fs-sm)/1.2 var(--font-mono)}.project-shelf-ledger span{overflow:hidden;color:var(--text-muted);font-size:var(--fs-2xs);text-overflow:ellipsis;white-space:nowrap}.project-shelf-ledger [data-warning] strong{color:var(--ui-warning)}.project-shelf-ledger .project-shelf-protect{min-height:0;padding:2px 8px;font-size:var(--fs-2xs)}.project-shelf-current{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 16px 0;padding:12px 13px;border:1px solid var(--ui-accent-edge);border-radius:var(--r-lg);background:var(--ui-accent-tint)}.project-shelf-current>div:first-child{display:flex;min-width:0;flex-direction:column;gap:3px}.project-shelf-current strong{color:var(--text);font-size:var(--fs-md)}.project-shelf-current>div:first-child>span:last-child{color:var(--text-muted);font-size:var(--fs-xs)}.project-shelf-current-actions{display:flex;align-items:center;gap:6px;flex:0 0 auto}.project-shelf-save-form{display:grid;grid-template-columns:auto minmax(160px,1fr) auto auto;align-items:center;gap:8px;margin:10px 16px 0;padding:9px 10px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2)}.project-shelf-save-form label{color:var(--text-muted);font-size:var(--fs-xs)}.project-shelf-save-form input,.project-shelf-row-main input{width:100%;min-width:0;border:1px solid var(--ui-accent-edge);border-radius:var(--r-sm);background:var(--n-800);color:var(--text);outline:none;padding:6px 8px;font:var(--fs-sm) var(--font-sans)}.project-shelf-save-form input:focus,.project-shelf-row-main input:focus{border-color:var(--ui-accent)}.project-shelf-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:17px 16px 8px}.project-shelf-toolbar>div{display:flex;min-width:0;flex-direction:column;gap:3px}.project-shelf-subtitle{color:var(--text-muted);font-size:var(--fs-xs)}.project-shelf-file-input{display:none}.project-shelf-list{min-height:96px;max-height:272px;margin:0 16px;overflow:auto;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-raised)}.project-shelf-row{display:flex;align-items:center;gap:12px;min-height:58px;padding:9px 10px 9px 12px;border-bottom:1px solid var(--border)}.project-shelf-row:last-child{border-bottom:none}.project-shelf-row:hover{background:var(--surface2)}.project-shelf-row-main{display:flex;min-width:0;flex:1;flex-direction:column;gap:4px}.project-shelf-row-main strong{overflow:hidden;color:var(--text);font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap}.project-shelf-row-main span{display:flex;align-items:center;gap:4px;overflow:hidden;color:var(--text-muted);font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap}.project-shelf-row-actions{display:flex;align-items:center;gap:2px;flex:0 0 auto}.project-shelf-row-actions .gd-btn{margin-left:3px}.project-shelf-confirm{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex:0 0 auto;color:var(--ui-warning);font-size:var(--fs-xs)}.project-shelf-empty{display:flex;min-height:96px;align-items:center;justify-content:center;flex-direction:column;gap:5px;padding:16px;color:var(--text-muted);text-align:center;font-size:var(--fs-sm)}.project-shelf-empty svg{color:var(--ui-accent)}.project-shelf-empty strong{color:var(--text)}.project-shelf-recovery{margin:12px 16px 0;border-top:1px solid var(--border)}.project-shelf-recovery summary{display:flex;align-items:center;gap:7px;padding:10px 1px;color:var(--text-dim);cursor:pointer;font-size:var(--fs-sm)}.project-shelf-recovery summary span{margin-left:auto;color:var(--text-muted);font-size:var(--fs-xs)}.project-shelf-recovery p{margin:0 0 7px;color:var(--text-muted);font-size:var(--fs-xs);line-height:var(--lh-base)}.project-shelf-recovery-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0;border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent);color:var(--text-muted);font-size:var(--fs-xs)}.project-shelf-note{margin-top:12px;padding:11px 16px;border-top:1px solid var(--border);background:var(--surface2);color:var(--text-muted);font-size:var(--fs-xs);line-height:var(--lh-base)}.project-shelf-note b{color:var(--text-dim)}.project-shelf-import-dialog{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;padding:28px;background:#100e0beb;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);text-align:center}.project-shelf-import-dialog h3{margin:5px 0 7px;color:var(--text);font-size:var(--fs-xl)}.project-shelf-import-dialog p{max-width:370px;margin:0;color:var(--text-muted);font-size:var(--fs-md);line-height:var(--lh-base)}.project-shelf-import-dialog>div:last-child{display:flex;gap:8px}.autobuilt-sheet{position:relative;width:min(760px,calc(100vw - 28px));max-height:min(780px,calc(100dvh - 28px));display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--el-inset),var(--el-4);color:var(--text)}.autobuilt-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px 15px;border-bottom:1px solid var(--border);background:linear-gradient(105deg,color-mix(in srgb,var(--surface2) 84%,var(--ui-accent-tint)),var(--surface))}.autobuilt-title{display:flex;align-items:center;gap:11px;min-width:0}.autobuilt-mark{display:grid;width:34px;height:34px;place-items:center;flex:0 0 auto;border:1px solid var(--ui-accent-edge);border-radius:var(--r-md);background:var(--ui-accent-tint);color:var(--ui-accent)}.autobuilt-title p{margin:0 0 3px;color:var(--ui-accent);font:700 var(--fs-2xs)/1 var(--font-mono);letter-spacing:.1em}.autobuilt-title h2{margin:0;font-size:var(--fs-xl);line-height:1.15}.autobuilt-intro{margin:0;padding:13px 20px;color:var(--text-muted);font-size:var(--fs-sm);line-height:var(--lh-base);border-bottom:1px solid var(--border)}.autobuilt-intro b{color:var(--text)}.autobuilt-list{min-height:0;flex:1 1 auto;overflow:auto;padding:6px 12px 10px}.autobuilt-row{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr) 128px;align-items:center;gap:12px;padding:9px 8px;border-bottom:1px solid color-mix(in srgb,var(--border) 65%,transparent)}.autobuilt-row:last-child{border-bottom:none}.autobuilt-row-head{position:sticky;top:0;z-index:1;padding-top:9px;padding-bottom:7px;border-bottom:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.06em}.autobuilt-name{display:flex;flex-direction:column;gap:2px;min-width:0;font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text)}.autobuilt-name em{font-family:inherit;font-style:normal;font-size:var(--fs-2xs);color:var(--text-muted)}.autobuilt-source{display:flex;flex-direction:column;gap:2px;min-width:0}.autobuilt-source b{font-size:var(--fs-xs);font-weight:600;color:var(--text-dim)}.autobuilt-source b[data-confidence=low]{color:var(--ui-warning)}.autobuilt-source b[data-confidence=medium]{color:var(--ui-info)}.autobuilt-source em{font-style:normal;font-size:var(--fs-2xs);line-height:1.4;color:var(--text-muted)}.autobuilt-row[data-confidence=low]{border-left:2px solid var(--ui-warning);background:color-mix(in srgb,var(--ui-warning) 7%,transparent)}.autobuilt-row[data-confidence=medium]{border-left:2px solid color-mix(in srgb,var(--ui-info) 70%,transparent)}.autobuilt-row[data-confidence=high]{border-left:2px solid transparent}.autobuilt-warn{display:flex;align-items:flex-start;gap:8px;margin:0;padding:10px 20px;border-top:1px solid var(--border);color:var(--ui-warning);font-size:var(--fs-xs);line-height:var(--lh-base)}.autobuilt-warn svg{flex:0 0 auto;margin-top:2px}.autobuilt-error{margin:0;padding:10px 20px;border-top:1px solid var(--border);background:var(--ui-danger-tint);color:var(--ui-danger);font-size:var(--fs-xs);line-height:var(--lh-base)}.autobuilt-report{margin:0;padding:14px 20px;overflow:auto;max-height:340px;font:var(--fs-2xs)/1.55 var(--font-mono);color:var(--text-dim);white-space:pre-wrap}.autobuilt-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid var(--border);background:var(--surface2)}.autobuilt-count{margin-right:auto;color:var(--text-muted);font-size:var(--fs-xs);font-family:var(--font-mono)}.autobuilt-sheet-review{width:min(1120px,calc(100vw - 28px));max-height:min(900px,calc(100dvh - 28px))}.autobuilt-review-scroll{min-height:0;flex:1 1 auto;overflow:auto;padding:14px 16px 20px;background:color-mix(in srgb,var(--surface2) 74%,var(--surface))}.autobuilt-review-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:12px}.autobuilt-review-preview,.autobuilt-review-photo{min-height:300px;overflow:hidden;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface)}.autobuilt-review-preview{display:flex;min-width:0;flex-direction:column}.autobuilt-review-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid var(--border)}.autobuilt-review-section-head div{display:flex;min-width:0;flex-direction:column}.autobuilt-review-section-head b{font-size:var(--fs-sm)}.autobuilt-review-section-head span{color:var(--text-muted);font-size:var(--fs-2xs)}.autobuilt-review-assembly-svg{width:100%;min-height:250px;flex:1 1 auto;padding:14px;background:var(--viewport-bg)}.autobuilt-draft-sheet .autobuilt-review-assembly-svg{height:300px;max-height:40vh;flex:none}.autobuilt-draft-sheet .autobuilt-header{flex-wrap:wrap}.autobuilt-draft-sheet .autobuilt-header h2{flex:1 1 240px;margin:0;font-size:var(--fs-lg)}.autobuilt-review-assembly-stock{fill:color-mix(in srgb,var(--ui-warning) 48%,var(--surface));stroke:color-mix(in srgb,var(--ui-warning) 70%,var(--text));stroke-width:.8;vector-effect:non-scaling-stroke}.autobuilt-review-photo{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;cursor:pointer;padding:20px;color:var(--text-muted);text-align:center}.autobuilt-review-photo:hover{border-color:var(--ui-accent-edge);color:var(--text)}.autobuilt-review-photo b{color:var(--text);font-size:var(--fs-sm)}.autobuilt-review-photo span{max-width:220px;font-size:var(--fs-xs)}.autobuilt-review-photo input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.autobuilt-review-photo img{width:100%;height:100%;max-height:360px;object-fit:contain}.autobuilt-review-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:14px 0 10px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}.autobuilt-review-summary b{font-size:var(--fs-sm)}.autobuilt-review-summary span{flex:0 0 auto;color:var(--text-muted);font-size:var(--fs-2xs)}.autobuilt-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.autobuilt-review-card{min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--el-1)}.autobuilt-review-card[data-confidence=low]{border-left:2px solid var(--ui-warning)}.autobuilt-review-card[data-confidence=medium]{border-left:2px solid var(--ui-info)}.autobuilt-review-card[data-confidence=high]{border-left:2px solid var(--ui-success)}.autobuilt-review-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:11px 12px;border-bottom:1px solid var(--border)}.autobuilt-review-card>header div{min-width:0}.autobuilt-review-card>header span{color:var(--text-muted);font:var(--fs-2xs)/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.autobuilt-review-card>header h3{margin:4px 0 0;font-size:var(--fs-md);line-height:1.2}.autobuilt-review-card>header>b{flex:0 0 auto;padding:3px 7px;border-radius:var(--r-pill);background:var(--surface2);font-size:var(--fs-2xs)}.autobuilt-review-card-drawing{display:grid;height:190px;place-items:center;padding:10px;border-bottom:1px solid var(--border);background:repeating-linear-gradient(0deg,transparent 0 15px,color-mix(in srgb,var(--border) 35%,transparent) 16px),repeating-linear-gradient(90deg,transparent 0 15px,color-mix(in srgb,var(--border) 35%,transparent) 16px),var(--surface2)}.autobuilt-review-drawing{width:100%;height:100%}.autobuilt-review-stock{fill:color-mix(in srgb,var(--ui-warning) 42%,var(--surface));stroke:color-mix(in srgb,var(--ui-warning) 72%,var(--text));stroke-width:1.2;vector-effect:non-scaling-stroke}.autobuilt-review-dimension{stroke:var(--text-muted);stroke-width:.8;vector-effect:non-scaling-stroke}.autobuilt-review-size{fill:var(--text-dim);font-family:var(--font-mono)}.autobuilt-review-card-body{padding:11px 12px 12px}.autobuilt-review-chips{display:flex;flex-wrap:wrap;gap:5px}.autobuilt-review-chips span{padding:3px 6px;border-left:2px solid var(--border);background:var(--surface2);color:var(--text-dim);font-size:var(--fs-2xs)}.autobuilt-review-chips span[data-confidence=high]{border-color:var(--ui-success)}.autobuilt-review-chips span[data-confidence=medium]{border-color:var(--ui-info)}.autobuilt-review-chips span[data-confidence=low]{border-color:var(--ui-warning)}.autobuilt-review-card-body>p{min-height:34px;margin:9px 0;color:var(--text-muted);font-size:var(--fs-xs);line-height:var(--lh-base)}.autobuilt-review-choice{display:grid;grid-template-columns:1fr 1fr;gap:6px}.autobuilt-review-choice button{display:flex;align-items:center;justify-content:center;gap:5px;cursor:pointer;min-height:32px;border:1px solid var(--border);border-radius:var(--r-md);background:transparent;color:var(--text-muted);font-size:var(--fs-xs);font-weight:600}.autobuilt-review-choice button:hover{border-color:var(--ui-accent-edge);color:var(--text)}.autobuilt-review-choice button[aria-pressed=true]:first-child{border-color:var(--ui-success);background:color-mix(in srgb,var(--ui-success) 10%,transparent);color:var(--ui-success)}.autobuilt-review-choice button[aria-pressed=true]:last-child{border-color:var(--ui-warning);background:color-mix(in srgb,var(--ui-warning) 10%,transparent);color:var(--ui-warning)}.autobuilt-review-card textarea{width:100%;min-height:68px;resize:vertical;margin-top:7px;padding:8px 9px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2);color:var(--text);font-size:var(--fs-xs)}.autobuilt-review-card textarea:focus{outline:1px solid var(--ui-accent);border-color:var(--ui-accent-edge)}.autobuilt-review-question{display:flex;flex-direction:column;gap:6px;margin-top:10px;padding:9px;border:1px solid color-mix(in srgb,var(--ui-warning) 45%,var(--border));border-radius:var(--r-md);background:color-mix(in srgb,var(--ui-warning) 7%,transparent);color:var(--text-dim);font-size:var(--fs-xs)}.autobuilt-review-question>b{display:flex;align-items:center;gap:5px;color:var(--ui-warning)}.autobuilt-review-question textarea{margin-top:0}.autobuilt-review-question-wide{margin:12px 0 0}.autobuilt-review-question-wide textarea{min-height:74px;padding:8px 9px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--text)}.autobuilt-review-uncertain{margin-top:12px;padding:11px 12px;border:1px solid color-mix(in srgb,var(--ui-warning) 45%,var(--border));border-radius:var(--r-md);background:color-mix(in srgb,var(--ui-warning) 8%,transparent);color:var(--text-dim)}.autobuilt-review-uncertain>b{display:flex;align-items:center;gap:6px;color:var(--ui-warning);font-size:var(--fs-xs)}.autobuilt-review-uncertain ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 22px;margin:7px 0 0;padding-left:18px;font-size:var(--fs-xs)}@media(max-width:760px){.autobuilt-review-hero,.autobuilt-review-grid{grid-template-columns:1fr}.autobuilt-review-summary{align-items:flex-start;flex-direction:column;gap:4px}.autobuilt-review-uncertain ul{grid-template-columns:1fr}.autobuilt-review-photo{min-height:180px}}.material-cost-sheet{position:relative;width:min(720px,calc(100vw - 28px));max-height:min(760px,calc(100dvh - 28px));display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--el-inset),var(--el-4);color:var(--text)}.material-cost-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px 15px;border-bottom:1px solid var(--border);background:linear-gradient(105deg,color-mix(in srgb,var(--surface2) 84%,var(--ui-accent-tint)),var(--surface))}.material-cost-title{display:flex;align-items:center;gap:11px;min-width:0}.material-cost-mark{display:grid;width:34px;height:34px;place-items:center;flex:0 0 auto;border:1px solid var(--ui-accent-edge);border-radius:var(--r-md);background:var(--ui-accent-tint);color:var(--ui-accent)}.material-cost-title p{margin:0 0 3px;color:var(--ui-accent);font:700 var(--fs-2xs)/1 var(--font-mono);letter-spacing:.1em}.material-cost-title h2{margin:0;font-size:var(--fs-xl);line-height:1.15}.material-cost-intro{margin:0;padding:13px 20px;color:var(--text-muted);font-size:var(--fs-sm);line-height:var(--lh-base);border-bottom:1px solid var(--border)}.material-cost-intro b{color:var(--text-dim)}.material-cost-list{min-height:0;flex:1 1 auto;overflow:auto;padding:6px 12px 10px}.material-cost-row{display:grid;grid-template-columns:minmax(0,1.15fr) 118px 132px minmax(0,1fr);align-items:center;gap:10px;padding:7px 8px;border-bottom:1px solid color-mix(in srgb,var(--border) 65%,transparent)}.material-cost-row:last-child{border-bottom:none}.material-cost-row-head{position:sticky;top:0;z-index:1;padding-top:9px;padding-bottom:7px;border-bottom:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.06em}.material-cost-row[data-used=false]{color:var(--text-muted)}.material-cost-species{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden;color:var(--text);font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap}.material-cost-row[data-used=false] .material-cost-species{color:var(--text-dim)}.material-cost-species i{width:11px;height:11px;flex:0 0 auto;border:1px solid rgba(0,0,0,.28);border-radius:3px}.material-cost-mode{display:inline-flex;gap:0}.material-cost-mode .gd-btn{padding:3px 10px;border-radius:0;font-size:var(--fs-xs)}.material-cost-mode .gd-btn:first-child{border-radius:var(--r-sm) 0 0 var(--r-sm)}.material-cost-mode .gd-btn:last-child{border-radius:0 var(--r-sm) var(--r-sm) 0;margin-left:-1px}.material-cost-rate{display:flex;align-items:center;gap:5px}.material-cost-rate b{color:var(--text-muted);font:500 var(--fs-xs) var(--font-mono)}.material-cost-money{display:inline-flex;align-items:center;gap:2px;min-width:0;padding:4px 7px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--n-800)}.material-cost-money:focus-within{border-color:var(--ui-accent)}.material-cost-money>span{color:var(--text-muted);font:var(--fs-xs) var(--font-mono)}.material-cost-money input{width:100%;min-width:0;border:0;background:transparent;color:var(--text);outline:none;font:var(--fs-sm) var(--font-mono)}.material-cost-usage{display:flex;min-width:0;flex-direction:column;gap:1px;align-items:flex-end;text-align:right}.material-cost-usage strong{color:var(--text);font:700 var(--fs-sm) var(--font-mono)}.material-cost-usage span{color:var(--text-muted);font-size:var(--fs-2xs)}.material-cost-unused{font-style:italic}.material-cost-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 16px;border-top:1px solid var(--border);background:var(--surface2)}.material-cost-total{display:flex;flex-direction:column;gap:2px}.material-cost-total strong{color:var(--ui-accent);font:700 var(--fs-lg) var(--font-mono)}.material-cost-total span{color:var(--text-muted);font-size:var(--fs-xs)}.material-cost-actions{display:flex;align-items:center;gap:8px}.material-cost-note{margin:0;padding:10px 16px;border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--fs-xs);line-height:var(--lh-base)}@media(max-width:620px){.material-cost-sheet{max-height:calc(100dvh - 16px);width:calc(100vw - 16px)}.material-cost-row{grid-template-columns:minmax(0,1fr) 104px 118px}.material-cost-row>span:last-child{grid-column:1 / -1;align-items:flex-start;text-align:left}}@media(max-width:620px){.project-shelf{max-height:calc(100dvh - 16px);width:calc(100vw - 16px)}.project-shelf-header{padding:15px}.project-shelf-ledger{grid-template-columns:1fr 1fr;grid-auto-flow:row}.project-shelf-ledger>div:first-child{grid-column:1 / -1}.project-shelf-current,.project-shelf-toolbar{align-items:stretch;flex-direction:column;margin-left:12px;margin-right:12px}.project-shelf-current-actions{justify-content:stretch}.project-shelf-current-actions .gd-btn{flex:1}.project-shelf-save-form{grid-template-columns:1fr auto auto;margin-left:12px;margin-right:12px}.project-shelf-save-form label{grid-column:1 / -1}.project-shelf-list,.project-shelf-recovery{margin-left:12px;margin-right:12px}.project-shelf-row{align-items:flex-start;flex-direction:column;gap:7px}.project-shelf-row-actions,.project-shelf-confirm{width:100%;justify-content:flex-end}}.gd-panel{background:var(--surface);border:1px solid var(--border);box-shadow:var(--el-inset)}.workbench-empty-state{display:flex;flex-direction:column;gap:11px;padding:18px 13px;color:var(--text-dim)}.workbench-empty-kicker{color:var(--ui-accent);font:700 var(--fs-2xs)/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase}.workbench-empty-state h2{color:var(--text);font-size:var(--fs-xl);line-height:1.15}.workbench-empty-state p{font-size:var(--fs-sm);line-height:var(--lh-base)}.workbench-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.workbench-summary-metric{display:flex;flex-direction:column;gap:2px;padding:8px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2)}.workbench-summary-metric strong{color:var(--text);font:700 var(--fs-lg)/1 var(--font-mono)}.workbench-summary-metric span{color:var(--text-muted);font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.07em}.workbench-empty-actions{display:flex;gap:6px}.workbench-empty-actions .gd-btn{flex:1}.workbench-empty-tip{padding:9px 10px;border-left:2px solid var(--ui-accent);background:var(--ui-accent-tint);color:var(--text-muted);font-size:var(--fs-xs);line-height:var(--lh-base)}.workbench-empty-tip span{display:block;margin-bottom:3px;color:var(--ui-accent);font:700 var(--fs-2xs)/1 var(--font-mono);letter-spacing:.1em}.gd-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-5);border-radius:var(--r-md);border:1px solid transparent;background:transparent;color:var(--text-dim);font-size:var(--fs-sm);font-weight:var(--fw-medium);white-space:nowrap;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.gd-btn:hover{background:var(--n-800);color:var(--text)}.gd-btn:active{background:var(--n-700)}.gd-btn:disabled{opacity:.4;pointer-events:none}.gd-btn[data-variant=outline]{border-color:var(--border);background:var(--surface2);color:var(--text)}.gd-btn[data-variant=outline]:hover{background:var(--n-700);border-color:var(--n-600)}.gd-btn[data-variant=primary]{background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-accent-on);font-weight:var(--fw-semibold);box-shadow:var(--el-1)}.gd-btn[data-variant=primary]:hover{background:var(--ui-accent-hover);border-color:var(--ui-accent-hover)}.gd-btn[data-variant=primary]:active{background:var(--ui-accent-press)}.gd-btn[data-variant=danger]{color:var(--ui-danger)}.gd-btn[data-variant=danger]:hover{background:var(--ui-danger-tint);border-color:var(--ui-danger);color:var(--ui-danger)}.gd-btn[data-active=true]{background:var(--ui-accent-tint);border-color:var(--ui-accent-edge);color:var(--ui-accent)}.gd-btn[data-active=true]:hover{background:var(--ui-accent-tint);border-color:var(--ui-accent)}.gd-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:var(--r-md);border:1px solid transparent;background:transparent;color:var(--text-dim);transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.gd-icon-btn:hover{background:var(--n-800);color:var(--text)}.gd-icon-btn:active{background:var(--n-700)}.gd-icon-btn[data-variant=danger]:hover{background:var(--ui-danger-tint);color:var(--ui-danger)}.gd-tool-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;position:relative;width:42px;height:42px;border-radius:var(--r-lg);border:1px solid transparent;background:transparent;color:var(--text-dim);transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.gd-tool-btn:hover{background:var(--n-800);color:var(--text)}.gd-tool-btn[data-active=true]{background:var(--ui-accent-tint);border-color:var(--ui-accent-edge);color:var(--ui-accent)}.viewport-workbench-context{display:inline-flex;align-items:baseline;gap:6px;padding:3px 8px;border-left:1px solid var(--border);color:var(--text-muted);font:500 var(--fs-xs)/1 var(--font-mono);white-space:nowrap}.viewport-navigation-bar{position:absolute;z-index:14;left:50%;bottom:12px;transform:translate(-50%);display:flex;align-items:center;gap:5px;min-height:34px;max-width:calc(100% - 24px);padding:4px 6px;border:1px solid color-mix(in srgb,var(--ui-accent) 34%,var(--border));border-radius:var(--r-lg);background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:var(--el-3);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--text-dim);white-space:nowrap}.viewport-nav-button,.viewport-nav-field,.viewport-nav-number{display:inline-flex;align-items:center;gap:5px;min-height:25px;padding:0 7px;border:1px solid transparent;border-radius:var(--r-md);color:var(--text-dim);font-size:var(--fs-xs)}.viewport-nav-button{cursor:pointer}.viewport-nav-button:hover,.viewport-nav-field:hover,.viewport-nav-number:hover{background:var(--surface2);color:var(--text)}.viewport-nav-fit{color:var(--ui-accent)}.viewport-nav-field select{max-width:92px;border:0;outline:0;background:transparent;color:var(--text);font:600 var(--fs-xs)/1 var(--font-mono);cursor:pointer}.viewport-nav-number input{width:38px;border:0;outline:0;background:transparent;color:var(--text);font:600 var(--fs-xs)/1 var(--font-mono);text-align:right}.viewport-nav-number span{color:var(--text-muted);font-family:var(--font-mono)}.viewport-nav-divider{width:1px;height:18px;background:var(--border)}.viewport-nav-hint{padding:0 6px;color:var(--text-muted);font-size:var(--fs-2xs)}@media(max-width:980px){.viewport-nav-hint,.viewport-workbench-context{display:none}}.model-browser-panel{width:var(--browser-w);min-width:var(--browser-w);position:relative;flex:0 0 auto;display:flex;flex-direction:column;min-height:0;overflow:visible;box-sizing:border-box;background:var(--surface);border-right:1px solid var(--border)}.model-browser-header{height:44px;min-height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 9px 0 12px;border-bottom:1px solid var(--border);color:var(--text)}.model-browser-header>div{display:inline-flex;align-items:center;gap:8px;font-size:var(--fs-sm);font-weight:650}.model-browser-header svg{color:var(--accent)}.model-browser-panel>div:last-child{min-height:0}.variables-launcher{display:flex;align-items:center;gap:10px;margin:10px;padding:13px 12px;border:1px solid var(--ui-accent-edge);border-radius:var(--r-lg);background:var(--ui-accent-tint);color:var(--accent)}.variables-launcher>div{min-width:0;flex:1}.variables-launcher strong,.variables-launcher span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.variables-launcher strong{color:var(--text);font-size:var(--fs-sm)}.variables-launcher span{margin-top:3px;color:var(--text-muted);font-size:var(--fs-2xs)}.variables-launcher .gd-btn{flex:0 0 auto;min-height:32px;white-space:nowrap}.dock-tab{display:flex;align-items:center;gap:6px;padding:4px 9px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--text-muted);cursor:pointer;font:var(--fs-xs) var(--font-sans)}.dock-tab:hover{color:var(--text-dim);background:var(--surface2)}.dock-tab strong{font-weight:600;font-size:var(--fs-xs)}.dock-tab[data-active=true]{color:var(--text);background:var(--ui-accent-tint);box-shadow:inset 0 0 0 1px var(--ui-accent-edge)}.dock-tab[data-active=true] svg{color:var(--accent)}.dock-tab-meta{color:var(--text-muted);font-size:var(--fs-2xs);white-space:nowrap}.dock-tab-badge{min-width:16px;padding:0 4px;border-radius:var(--r-full);background:var(--ui-danger);color:var(--n-950);font:600 var(--fs-2xs) var(--font-mono);text-align:center}.console-panel{height:100%;display:flex;flex-direction:column;min-height:0}.console-toolbar{flex:0 0 auto;display:flex;align-items:center;gap:7px;padding:6px 9px;border-bottom:1px solid var(--border)}.console-filter-group{display:flex;gap:2px}.console-chip{display:flex;align-items:center;gap:5px;padding:3px 9px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--text-muted);cursor:pointer;font:var(--fs-2xs) var(--font-sans)}.console-chip span{color:var(--text-dim);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.console-chip[data-active=true]{border-color:var(--ui-accent-edge);background:var(--ui-accent-tint);color:var(--text)}.console-select,.console-search{padding:3px 7px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--n-800);color:var(--text-dim);font:var(--fs-2xs) var(--font-sans);outline:none}.console-search{flex:1 1 auto;min-width:0}.console-search:focus-visible,.console-select:focus-visible{border-color:var(--ui-accent)}.console-toolbar-actions{display:flex;gap:3px;margin-left:auto}.console-toolbar-actions .gd-icon-btn{width:26px;height:26px}.console-toolbar-actions .gd-icon-btn:disabled{opacity:.35;cursor:default}.console-log{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;padding:3px 0 8px}.console-empty{display:flex;align-items:center;gap:8px;padding:14px 12px;color:var(--text-muted);font-size:var(--fs-xs)}.console-entry{border-left:2px solid transparent}.console-entry[data-level=error]{border-left-color:var(--ui-danger)}.console-entry[data-level=warn]{border-left-color:var(--ui-warning)}.console-entry[data-level=success]{border-left-color:var(--ui-accent)}.console-entry-main{display:flex;align-items:baseline;gap:8px;width:100%;padding:4px 10px;border:0;background:transparent;color:var(--text-dim);cursor:pointer;font:var(--fs-xs) var(--font-sans);text-align:left}.console-entry-main:hover{background:var(--n-800)}.console-time{flex:0 0 auto;color:var(--text-muted);font:var(--fs-2xs) var(--font-mono);font-variant-numeric:tabular-nums}.console-level{flex:0 0 12px;text-align:center;font:600 var(--fs-xs) var(--font-mono)}.console-entry[data-level=error] .console-level{color:var(--ui-danger)}.console-entry[data-level=warn] .console-level{color:var(--ui-warning)}.console-entry[data-level=success] .console-level{color:var(--accent)}.console-entry[data-level=info] .console-level{color:var(--text-muted)}.console-category{flex:0 0 74px;overflow:hidden;color:var(--text-muted);font:var(--fs-2xs) var(--font-mono);text-overflow:ellipsis;white-space:nowrap}.console-message{flex:1 1 auto;min-width:0;color:var(--text);overflow-wrap:anywhere}.console-count{flex:0 0 auto;padding:0 5px;border-radius:var(--r-full);background:var(--surface2);color:var(--text-muted);font:var(--fs-2xs) var(--font-mono)}.console-disclosure{flex:0 0 auto;display:inline-flex;color:var(--text-muted);transition:transform var(--dur-fast) var(--ease-out)}.console-disclosure[data-open=true]{transform:rotate(90deg)}.console-detail{margin:0 10px 7px 92px;padding:7px 9px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--n-900);color:var(--text-dim);font:var(--fs-2xs) var(--font-mono);white-space:pre-wrap;overflow-x:auto}.variables-dock-resizer{height:12px;flex:0 0 12px;display:grid;place-items:center;margin-bottom:-1px;color:var(--text-muted);border-bottom:1px solid var(--border);background:var(--surface);cursor:ns-resize;touch-action:none;-webkit-user-select:none;user-select:none}.variables-dock-resizer:hover,.variables-dock[data-resizing=true] .variables-dock-resizer{color:var(--accent);background:var(--ui-accent-tint)}.variables-dock-resizer svg{pointer-events:none}.shaper-deck{flex:1;min-height:0;overflow:auto;background:var(--surface);color:var(--text)}.shaper-deck-header{display:flex;align-items:center;gap:9px;padding:12px 12px 8px;border-bottom:1px solid var(--border)}.shaper-deck-mark{width:31px;height:31px;display:grid;place-items:center;border:1px solid var(--ui-accent-edge);color:var(--accent);background:var(--ui-accent-tint);border-radius:var(--r-md)}.shaper-deck-header>div:nth-child(2){min-width:0;flex:1}.shaper-deck-header span,.shaper-kicker{display:block;color:var(--accent3);font:700 var(--fs-2xs)/1.1 var(--font-mono);letter-spacing:.07em;text-transform:uppercase}.shaper-deck-header h2{margin:2px 0 0;font-size:var(--fs-md);line-height:1.05}.shaper-deck-intro{margin:0;padding:8px 12px 10px;color:var(--text-muted);font-size:var(--fs-xs);line-height:1.45}.shaper-deck-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0 8px 8px;gap:4px;border-bottom:1px solid var(--border)}.shaper-deck-tabs button{min-height:30px;border:1px solid transparent;border-radius:var(--r-sm);background:transparent;color:var(--text-muted);display:flex;justify-content:center;align-items:center;gap:5px;font-size:var(--fs-2xs);cursor:pointer}.shaper-deck-tabs button[data-active=true]{color:var(--accent);background:var(--ui-accent-tint);border-color:var(--ui-accent-edge)}.shaper-job-list{padding:7px}.shaper-job-row{width:100%;display:flex;align-items:center;gap:8px;padding:8px;border:1px solid transparent;background:transparent;color:var(--text);text-align:left;cursor:pointer;border-radius:var(--r-md)}.shaper-job-row:hover,.shaper-job-row[data-active=true]{background:var(--surface2);border-color:var(--ui-accent-edge)}.shaper-job-ref{flex:0 0 auto;min-width:27px;color:var(--accent);font:700 var(--fs-xs) var(--font-mono)}.shaper-job-copy{min-width:0;flex:1}.shaper-job-copy strong,.shaper-job-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shaper-job-copy strong{font-size:var(--fs-xs)}.shaper-job-copy small{color:var(--text-muted);font-size:var(--fs-2xs);margin-top:2px}.shaper-job-checked{color:var(--ui-success)}.shaper-setup-card,.shaper-studio-card,.shaper-guide-card{margin:9px;padding:11px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface2)}.shaper-setup-card{display:grid;gap:10px}.shaper-face-diagram{position:relative;min-height:142px;padding:24px 13px 23px;border:1px solid color-mix(in srgb,var(--text-muted) 55%,transparent);background:repeating-linear-gradient(0deg,transparent 0 17px,color-mix(in srgb,var(--border) 62%,transparent) 18px),var(--surface);overflow:hidden}.shaper-face-diagram:before{content:"";position:absolute;left:13px;bottom:23px;width:13px;height:13px;background:var(--accent);clip-path:polygon(0 0,100% 0,0 100%)}.shaper-datum-corner{position:absolute;left:29px;bottom:24px;color:var(--accent);font:700 var(--fs-2xs) var(--font-mono)}.shaper-axis-x,.shaper-axis-y{position:absolute;color:var(--accent3);font:700 var(--fs-2xs) var(--font-mono)}.shaper-axis-x{bottom:7px;left:13px}.shaper-axis-y{left:4px;bottom:42px;writing-mode:vertical-rl;transform:rotate(180deg)}.shaper-cut-window{position:absolute;inset:34px 27% 37px 30%;display:grid;place-items:center;border:2px solid var(--ui-info);background:color-mix(in srgb,var(--ui-info) 20%,transparent);color:var(--ui-info);font:700 var(--fs-xs) var(--font-mono)}.shaper-face-diagram small{position:absolute;right:10px;bottom:7px;color:var(--text-muted);font-size:var(--fs-2xs)}.shaper-setup-copy h3,.shaper-studio-card h3,.shaper-guide-card h3{margin:4px 0;font-size:var(--fs-sm)}.shaper-setup-copy p,.shaper-studio-card p,.shaper-studio-card li,.shaper-guide-card p{margin:4px 0;color:var(--text-muted);font-size:var(--fs-xs);line-height:1.45}.shaper-setup-copy dl{margin:9px 0 0;display:grid;grid-template-columns:58px 1fr;gap:4px 8px;font-size:var(--fs-2xs)}.shaper-setup-copy dt{color:var(--text-muted)}.shaper-setup-copy dd{margin:0;color:var(--text)}.shaper-checks{display:grid;gap:4px}.shaper-checks div{display:flex;align-items:flex-start;gap:5px;padding:5px 6px;color:var(--text-muted);border-left:2px solid var(--ui-success);background:color-mix(in srgb,var(--ui-success) 7%,transparent);font-size:var(--fs-2xs)}.shaper-checks div[data-tone=attention]{border-color:var(--ui-warning);background:color-mix(in srgb,var(--ui-warning) 7%,transparent)}.shaper-setup-actions,.shaper-studio-actions{display:flex;flex-wrap:wrap;gap:6px}.shaper-setup-actions .gd-btn,.shaper-studio-actions .gd-btn{min-height:30px;font-size:var(--fs-2xs)}.shaper-studio-card ol{margin:9px 0;padding-left:18px}.shaper-revision-import{margin-top:10px;display:grid;grid-template-columns:minmax(0,1fr) 1.2fr;gap:8px;align-items:end}.shaper-revision-import label{display:grid;gap:3px;color:var(--text-muted);font-size:var(--fs-2xs)}.shaper-revision-import select,.shaper-revision-import input{min-height:30px;max-width:100%;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);font-size:var(--fs-2xs)}.shaper-revision-list{margin-top:11px;border-top:1px solid var(--border);padding-top:8px}.shaper-revision-list>strong{display:block;margin-bottom:5px;font-size:var(--fs-2xs)}.shaper-revision-list>div{display:grid;grid-template-columns:14px minmax(0,1fr);gap:5px;align-items:center;color:var(--text-muted);font-size:var(--fs-2xs)}.shaper-revision-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shaper-revision-list small{grid-column:2;color:var(--text-muted)}.shaper-guide-card{display:flex;gap:9px;color:var(--accent)}.shaper-guide-card>div{color:var(--text)}.shaper-guide-card .gd-btn{margin-top:7px}.shaper-deck-empty{min-height:156px;display:grid;place-items:center;padding:18px;text-align:center;color:var(--text-muted);font-size:var(--fs-xs)}.shaper-attribution{margin:16px 0 0;padding-top:12px;border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--fs-xs);line-height:1.5}.shaper-launch-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;margin:12px;padding:13px;border:1px solid var(--ui-accent-edge);border-radius:var(--r-lg);background:linear-gradient(135deg,var(--ui-accent-tint),transparent 62%),var(--surface2)}.shaper-launch-card h2{margin:3px 0;font-size:var(--fs-md)}.shaper-launch-card p{margin:0;color:var(--text-muted);font-size:var(--fs-xs);line-height:1.4}.shaper-launch-card .gd-btn{min-height:34px;white-space:nowrap}.shaper-launch-summary{grid-column:1 / -1;display:grid;grid-template-columns:auto 1fr auto minmax(0,1.6fr);gap:5px 8px;padding-top:10px;border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--fs-2xs)}.shaper-launch-summary strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);text-align:right}.fabrication-modal-backdrop{position:fixed;inset:0;z-index:280;display:grid;place-items:center;padding:24px;background:#000000b8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.fabrication-modal{width:min(1080px,calc(100vw - 48px));height:min(760px,calc(100dvh - 48px));display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--ui-accent-edge);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--el-4)}.fabrication-modal-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px 18px;border-bottom:1px solid var(--border);background:linear-gradient(110deg,var(--ui-accent-tint),transparent 46%),var(--chrome-deep)}.fabrication-modal-mark{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--ui-accent-edge);border-radius:var(--r-lg);color:var(--accent);background:var(--surface2)}.fabrication-modal-header span{display:block;color:var(--accent3);font:700 var(--fs-2xs)/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.fabrication-modal-header h2{margin:3px 0 2px;font-size:var(--fs-xl)}.fabrication-modal-header p{margin:0;color:var(--text-muted);font-size:var(--fs-xs)}.fabrication-modal-body{min-height:0;flex:1;overflow:hidden}.fabrication-modal-body .shaper-deck{height:100%;display:flex;flex-direction:column}.fabrication-modal-body .shaper-deck-intro{max-width:780px;padding-inline:18px;font-size:var(--fs-sm)}.fabrication-modal-body .shaper-deck-header{padding:13px 18px 10px}.fabrication-modal-body .shaper-deck-header h2{font-size:var(--fs-lg)}.fabrication-modal-body .shaper-deck-tabs{grid-template-columns:repeat(4,minmax(100px,1fr));padding:0 18px 10px}.fabrication-modal-body .shaper-deck-tabs button{min-height:38px;font-size:var(--fs-xs)}.fabrication-modal-body .shaper-job-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:14px 18px}.fabrication-modal-body .shaper-job-row{min-height:58px;border-color:var(--border);background:var(--surface2)}.fabrication-modal-body .shaper-setup-card,.fabrication-modal-body .shaper-studio-card,.fabrication-modal-body .shaper-guide-card{max-width:960px;margin:14px 18px;padding:16px}.fabrication-modal-body .shaper-setup-card{grid-template-columns:minmax(240px,.85fr) minmax(260px,1fr);align-items:start}.fabrication-modal-body .shaper-checks,.fabrication-modal-body .shaper-setup-actions{grid-column:1 / -1}.fabrication-modal-body .shaper-face-diagram{min-height:220px}.fabrication-modal-body .shaper-setup-actions .gd-btn,.fabrication-modal-body .shaper-studio-actions .gd-btn{min-height:36px;font-size:var(--fs-xs)}.cut-list-panel,.cut-list-header-actions{min-width:0}.cut-list-table{min-width:0;table-layout:fixed}.cut-list-table th,.cut-list-table td:not([colspan]){min-width:0;overflow:hidden;text-overflow:ellipsis}.cut-list-table th:first-child,.cut-list-table td:first-child{width:35%}.cut-list-table th:nth-child(2),.cut-list-table td:nth-child(2),.cut-list-table th:nth-child(3),.cut-list-table td:nth-child(3),.cut-list-table th:nth-child(4),.cut-list-table td:nth-child(4){width:10%}.cut-list-table th:nth-child(5),.cut-list-table td:nth-child(5){width:17%}.cut-list-table th:nth-child(6),.cut-list-table td:nth-child(6){width:18%}.cut-list-footer{flex-wrap:wrap;row-gap:5px;min-width:0}.cut-list-export-actions{display:flex;gap:6px;flex:0 0 auto;min-width:0;flex-wrap:wrap}.cut-list-footer-meta{display:flex;align-items:center;gap:6px;margin-left:auto;min-width:0;flex:0 1 auto;flex-wrap:wrap}.cut-list-kerf{display:inline-flex;align-items:center;gap:3px;color:var(--text-muted);font-size:var(--fs-xs);white-space:nowrap}.cut-list-kerf input{width:40px;box-sizing:border-box;background:var(--surface2);border:1px solid var(--border);border-radius:3px;color:var(--text-dim);font:inherit;padding:2px 4px;text-align:right}.cut-list-total-cost{padding:2px 5px;border:1px solid transparent;border-radius:var(--r-sm);background:transparent;color:var(--accent3);cursor:pointer;font:600 var(--fs-xs) var(--font-sans);white-space:nowrap}.cut-list-total-cost:hover{border-color:var(--ui-accent-edge);background:var(--ui-accent-tint)}.make-cut-list-workspace{min-height:0;flex:1;padding:14px;overflow:hidden;background:var(--viewport-bg)}.make-cut-list-workspace .cut-list-panel{border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--el-2)}.make-cut-list-workspace .cut-list-header{min-height:48px;padding:9px 12px!important}.make-cut-list-workspace .cut-list-header-actions{flex-wrap:wrap;justify-content:flex-end}.make-cut-list-workspace .cut-list-table-scroll{min-height:0;overflow:auto!important}.make-cut-list-workspace .cut-list-table{min-width:760px;table-layout:auto}.make-cut-list-workspace .cut-list-table th,.make-cut-list-workspace .cut-list-table td:not([colspan]){width:auto;overflow:visible;text-overflow:clip;white-space:nowrap}.make-cut-list-workspace .cut-list-footer{padding:9px 12px!important;background:var(--surface)}.model-browser-resize-handle{position:absolute;z-index:12;top:0;right:-5px;width:10px;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-muted);cursor:col-resize;touch-action:none}.model-browser-resize-handle:before{content:"";position:absolute;inset:0 4px;border-left:1px solid transparent;border-right:1px solid transparent;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.model-browser-resize-handle:hover:before,.model-browser-resize-handle:focus-visible:before,body.gd-resizing-panel .model-browser-resize-handle:before{border-color:var(--accent);background:var(--ui-accent-tint)}.model-browser-resize-handle svg{opacity:.4;transition:opacity var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.model-browser-resize-handle:hover svg,.model-browser-resize-handle:focus-visible svg,body.gd-resizing-panel .model-browser-resize-handle svg{opacity:1;color:var(--accent)}.model-browser-resize-handle:focus-visible{outline:none}body.gd-resizing-panel{cursor:col-resize;-webkit-user-select:none;user-select:none}body.gd-resizing-panel iframe,body.gd-resizing-panel canvas{pointer-events:none}@media(max-width:520px){.cut-list-header-actions{justify-content:flex-start}.cut-list-footer-meta{width:100%;margin-left:0;justify-content:space-between}}.resize-handle-tab{min-width:25px;height:19px;display:inline-flex;align-items:center;justify-content:center;gap:3px;padding:0 5px;border:1px solid currentColor;border-radius:10px;background:#12110fe6;box-shadow:0 2px 7px #00000073;color:var(--text-muted);font:750 10px/1 var(--font-mono);opacity:.9;transition:opacity var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);white-space:nowrap}.resize-handle-tab[data-axis=x]{color:#f87171}.resize-handle-tab[data-axis=y]{color:#34d399}.resize-handle-tab[data-axis=z]{color:#60a5fa}.resize-handle-tab[data-active=true]{opacity:1}.resize-handle-tab i{font-style:normal;font-weight:500;opacity:.72}.resize-handle-tab em{margin-left:1px;padding:2px 3px;border-radius:4px;background:color-mix(in srgb,currentColor 16%,transparent);color:currentColor;font:700 7px/1 var(--font-mono);letter-spacing:.04em}.resize-handle-tab[data-source=sketch]{border-style:dashed}.resize-handle-tab[data-source=extrude]{box-shadow:0 0 0 2px color-mix(in srgb,#34d399 12%,transparent),0 2px 7px #00000073}.resize-dimension-hud{width:218px;padding:9px 10px 8px;border:1px solid var(--ui-accent-edge);border-left:3px solid var(--accent);border-radius:var(--r-md);background:#151311f5;box-shadow:var(--el-3);color:var(--text);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transform:translateY(-58px)}.resize-dimension-hud[data-axis=x]{border-left-color:#ef4444}.resize-dimension-hud[data-axis=y]{border-left-color:#10b981}.resize-dimension-hud[data-axis=z]{border-left-color:#3b82f6}.resize-dimension-hud-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.resize-dimension-hud-heading>span{color:var(--text-muted);font:750 var(--fs-2xs)/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.resize-dimension-hud-heading b{color:var(--text-dim);font-size:var(--fs-2xs);font-weight:500}.resize-dimension-hud>strong{display:inline-block;color:var(--text);font:750 var(--fs-xl)/1.1 var(--font-mono)}.resize-dimension-delta{margin-left:8px;color:var(--accent3);font:600 var(--fs-xs)/1 var(--font-mono)}.resize-dimension-formula{display:block;margin-top:5px;color:var(--sketch-defined, var(--accent));font:500 var(--fs-xs)/1.3 var(--font-mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resize-dimension-snap{display:block;margin-top:6px;color:var(--accent);font-size:var(--fs-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resize-dimension-hud small{display:block;margin-top:6px;padding-top:5px;border-top:1px solid var(--border);color:var(--text-muted);font-size:9px;white-space:nowrap}.compact-resize-controller{width:178px;padding:8px;border:1px solid var(--ui-accent-edge);border-left:3px solid var(--accent);border-radius:var(--r-md);background:#151311f5;box-shadow:var(--el-3);color:var(--text);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-align:left}.compact-resize-controller[data-dragging=true]{cursor:grabbing;box-shadow:var(--el-4)}.compact-resize-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.compact-resize-grab{display:inline-flex;min-height:22px;align-items:center;gap:6px;color:var(--text);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;font:750 var(--fs-xs)/1 var(--font-sans)}.compact-resize-grab:active,.compact-resize-controller[data-dragging=true] .compact-resize-grab{cursor:grabbing}.compact-resize-grab:focus-visible{outline:1px solid var(--ui-accent);outline-offset:2px;border-radius:var(--r-sm)}.compact-resize-grab i{width:15px;height:11px;border-radius:2px;opacity:.8;background:radial-gradient(circle,var(--ui-accent) 1px,transparent 1.5px) 0 0 / 5px 5px}.compact-resize-heading>small{color:var(--text-muted);font-size:9px}.compact-resize-rows{display:grid;gap:4px}.compact-resize-row{display:grid;grid-template-columns:16px 22px minmax(0,1fr) 22px;align-items:center;gap:3px}.compact-resize-row>b{font:800 10px/1 var(--font-mono);text-align:center}.compact-resize-row>button{min-width:22px;height:22px;padding:0;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--text-dim);cursor:pointer;font:700 13px/1 var(--font-mono)}.compact-resize-row>button:hover{border-color:var(--ui-accent-edge);color:var(--text);background:var(--surface3)}.compact-resize-value,.compact-resize-row>input{min-width:0;width:100%;height:22px;box-sizing:border-box;padding:2px 4px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font:700 10px/1 var(--font-mono);text-align:center}.compact-resize-value{overflow:hidden;cursor:text;text-overflow:ellipsis;white-space:nowrap}.compact-resize-value:hover,.compact-resize-row>input:focus{border-color:var(--ui-accent);outline:none}.compact-resize-hint{display:block;margin-top:6px;color:var(--text-muted);font-size:9px;line-height:1.2}.assembly-snap-suggestion{width:max-content;max-width:min(280px,calc(100vw - 28px));padding:7px 9px;border:1px solid var(--ui-accent-edge);border-left:3px solid var(--accent);border-radius:var(--r-md);background:#151311f0;box-shadow:var(--el-3);color:var(--text);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-align:left;transform:translateY(-22px)}.assembly-snap-suggestion[data-relationship=edge]{border-left-color:#10b981}.assembly-snap-suggestion[data-relationship=corner]{border-left-color:#a78bfa}.assembly-snap-suggestion[data-relationship=center]{border-left-color:#3b82f6}.assembly-snap-suggestion>span{display:block;color:var(--accent);font:700 9px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.assembly-snap-suggestion>strong{display:block;margin-top:3px;color:var(--text);font-size:var(--fs-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.assembly-snap-suggestion>small{display:block;margin-top:4px;color:var(--text-muted);font-size:9px}.work-shelf{display:flex;flex-direction:column;min-height:36px;background:var(--surface);border-top:1px solid var(--border)}.work-shelf-header{height:35px;min-height:35px;display:flex;align-items:center;gap:12px;padding:0 10px;border-bottom:1px solid var(--border)}.work-shelf-tabs{display:flex;align-items:stretch;height:100%;gap:2px}.work-shelf-tab{display:inline-flex;align-items:center;gap:6px;padding:0 10px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);font:600 var(--fs-xs)/1 var(--font-sans);cursor:pointer}.work-shelf-tab:hover{color:var(--text);background:var(--surface2)}.work-shelf-tab[data-active=true]{color:var(--accent);border-bottom-color:var(--accent)}.work-shelf-dot{width:6px;height:6px;border-radius:50%;background:var(--ui-success);box-shadow:0 0 0 3px color-mix(in srgb,var(--ui-success) 16%,transparent)}.work-shelf-status{margin-left:auto;color:var(--text-muted);font-size:var(--fs-2xs);letter-spacing:.05em;text-transform:uppercase}.work-shelf-toggle{width:28px;height:26px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--text-dim);cursor:pointer}.work-shelf-toggle:hover{background:var(--surface2);color:var(--accent)}.work-shelf-content{min-height:0;display:flex;overflow:hidden}.work-shelf-content .bottom-panel{min-height:0}@media(max-width:1200px){:root{--browser-w: 248px}}.gd-row{transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.gd-row:hover{background:var(--n-800)}.gd-row[data-selected=true],.gd-row[data-selected=true]:hover{background:var(--ui-accent-tint)}.gd-menu-item{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-6);width:100%;padding:var(--sp-3) var(--sp-5);font-size:var(--fs-md);color:var(--text-dim);text-align:left;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.gd-menu-item:hover{background:var(--ui-accent-tint);color:var(--text)}.gd-menu{position:relative}.gd-menu-dropdown{display:none}@media(hover:hover)and (pointer:fine){.gd-menu:hover>.gd-menu-dropdown{display:block}}.gd-menu:focus-within>.gd-menu-dropdown,.gd-menu[data-open=true]>.gd-menu-dropdown{display:block}.gd-dropzone{border:2px dashed var(--border);border-radius:var(--r-lg);background:var(--surface2);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.gd-dropzone:hover{border-color:var(--ui-accent);background:var(--ui-accent-tint)}.gd-kbd{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--text-muted);letter-spacing:.02em}.gd-chip{display:inline-flex;align-items:center;gap:var(--sp-1);padding:1px var(--sp-3);border-radius:var(--r-sm);font-size:var(--fs-2xs);font-weight:var(--fw-semibold);letter-spacing:0;text-transform:none}.bottom-pane-resizer{height:12px;flex:0 0 12px;display:flex;align-items:center;justify-content:center;cursor:ns-resize;touch-action:none;-webkit-user-select:none;user-select:none;background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border);position:relative;z-index:20}.bottom-pane-resizer:before{content:"";position:absolute;inset:-5px 0}.bottom-pane-resizer-grip{width:36px;height:8px;display:flex;align-items:center;justify-content:center;border-radius:999px;color:var(--text-muted);background:var(--surface2);border:1px solid var(--border);transition:color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.bottom-pane-resizer:hover .bottom-pane-resizer-grip,.bottom-pane-resizer:focus-visible .bottom-pane-resizer-grip,.bottom-pane-resizer[data-active=true] .bottom-pane-resizer-grip{color:var(--accent);background:var(--ui-accent-tint);border-color:var(--ui-accent-edge)}.bottom-pane-resizer:focus-visible{outline:none}@media(max-width:1000px){:root{--bottom-h: 200px;--props-w: 224px}.project-panel-tab{min-height:28px}}.gd-tab{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border:1px solid transparent;border-bottom:none;border-radius:var(--r-sm) var(--r-sm) 0 0;background:none;color:var(--text-dim);font-size:var(--fs-sm);font-weight:500;font-family:inherit;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.gd-tab:hover{background:var(--surface2);color:var(--text)}.gd-tab[data-active=true]{background:var(--ui-accent-tint);border-color:var(--ui-accent-edge);color:var(--accent)}:root[data-ui-mode=tablet]{--toolbar-w: calc(68px * var(--ui-scale));--menu-h: calc(52px * var(--ui-scale));--status-h: calc(44px * var(--ui-scale));--bottom-h: calc(216px * var(--ui-scale));--tap: calc(44px * var(--ui-scale));--fs-2xs: calc(11px * var(--ui-scale));--fs-xs: calc(12px * var(--ui-scale));--fs-sm: calc(13px * var(--ui-scale));--fs-md: calc(15px * var(--ui-scale));--fs-lg: calc(17px * var(--ui-scale));--fs-xl: calc(20px * var(--ui-scale));--fs-2xl: calc(26px * var(--ui-scale))}:root[data-ui-mode=tablet] .gd-btn,:root[data-ui-mode=tablet] .gd-menu-item{min-height:var(--tap);padding-inline:var(--sp-5)}:root[data-ui-mode=tablet] .gd-icon-btn,:root[data-ui-mode=tablet] .gd-tool-btn{width:var(--tap);height:var(--tap)}:root[data-ui-mode=tablet] .gd-row>td,:root[data-ui-mode=tablet] .gd-row{min-height:38px}:root[data-ui-mode=tablet] .gd-tab{min-height:var(--tap);padding-inline:var(--sp-5)}:root[data-ui-mode=tablet] .prop-input,:root[data-ui-mode=tablet] .prop-select,:root[data-ui-mode=tablet] .input-field{min-height:var(--tap)}@keyframes tablet-surface-in-left{0%{transform:translate(-18px);opacity:.4}to{transform:translate(0);opacity:1}}@keyframes tablet-surface-in-right{0%{transform:translate(18px);opacity:.4}to{transform:translate(0);opacity:1}}@media(orientation:portrait){.app-shell[data-tablet-layout=true] .shaper-deck-header{padding:14px}.app-shell[data-tablet-layout=true] .shaper-deck-header .gd-btn{min-height:var(--tap)}.app-shell[data-tablet-layout=true] .shaper-deck-intro{padding-inline:14px;font-size:var(--fs-sm)}.app-shell[data-tablet-layout=true] .shaper-deck-tabs{padding:0 10px 10px;gap:6px}.app-shell[data-tablet-layout=true] .shaper-deck-tabs button{min-height:var(--tap);font-size:var(--fs-xs);flex-direction:column;gap:2px}.app-shell[data-tablet-layout=true] .shaper-job-list{padding:10px}.app-shell[data-tablet-layout=true] .shaper-job-row{min-height:56px;padding:10px}.app-shell[data-tablet-layout=true] .shaper-job-copy strong{font-size:var(--fs-sm)}.app-shell[data-tablet-layout=true] .shaper-setup-card,.app-shell[data-tablet-layout=true] .shaper-studio-card,.app-shell[data-tablet-layout=true] .shaper-guide-card{margin:12px;padding:14px}.app-shell[data-tablet-layout=true] .shaper-face-diagram{min-height:190px}.app-shell[data-tablet-layout=true] .shaper-setup-actions .gd-btn,.app-shell[data-tablet-layout=true] .shaper-studio-actions .gd-btn{min-height:var(--tap);flex:1 1 120px}.app-shell[data-tablet-layout=true] .shaper-revision-import{grid-template-columns:1fr}.app-shell[data-tablet-layout=true] .shaper-revision-import select,.app-shell[data-tablet-layout=true] .shaper-revision-import input{min-height:var(--tap);font-size:var(--fs-sm)}.fabrication-modal-backdrop{padding:0;align-items:end}.fabrication-modal{width:100%;height:min(88svh,760px);border-radius:var(--r-xl) var(--r-xl) 0 0}.fabrication-modal-header{padding:14px}.fabrication-modal-header p{display:none}.fabrication-modal-body .shaper-deck-header{padding:14px}.fabrication-modal-body .shaper-deck-intro{padding-inline:14px}.fabrication-modal-body .shaper-deck-tabs{padding-inline:10px}.fabrication-modal-body .shaper-job-list{grid-template-columns:1fr;padding:10px}.fabrication-modal-body .shaper-setup-card{grid-template-columns:1fr}.fabrication-modal-body .shaper-checks,.fabrication-modal-body .shaper-setup-actions{grid-column:auto}.fabrication-modal-body .shaper-setup-card,.fabrication-modal-body .shaper-studio-card,.fabrication-modal-body .shaper-guide-card{margin:12px;padding:14px}.fabrication-modal-body .shaper-face-diagram{min-height:190px}}@media(orientation:landscape)and (min-width:700px){.app-shell[data-tablet-layout=true] .fabrication-modal{width:calc(100vw - 92px);height:calc(100dvh - 36px);border-radius:var(--r-xl)}.app-shell[data-tablet-layout=true] .fabrication-modal-backdrop{align-items:center;padding:18px}.app-shell[data-tablet-layout=true] .fabrication-modal-body .shaper-job-list{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell[data-tablet-layout=true] .fabrication-modal-body .shaper-setup-card{grid-template-columns:minmax(220px,.85fr) minmax(240px,1fr)}}@keyframes tablet-surface-in-up{0%{transform:translateY(22px);opacity:.4}to{transform:translateY(0);opacity:1}}:root[data-ui-mode=tablet]{touch-action:manipulation}.gd-viewport,.gd-viewport>div,.gd-viewport canvas{touch-action:none!important}.tablet-rotate-dial{width:184px;display:flex;flex-direction:column;align-items:center;gap:7px;padding:9px;border:1px solid color-mix(in srgb,var(--ui-accent) 68%,var(--border));border-radius:var(--r-lg);background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:var(--el-4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--text);font-family:var(--font-sans);touch-action:none;-webkit-user-select:none;user-select:none}.tablet-rotate-axis{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;width:100%}.tablet-rotate-axis button{min-height:40px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--n-200);font:700 var(--fs-sm)/1 var(--font-mono);cursor:pointer;touch-action:manipulation}.tablet-rotate-axis button[data-active=true]{border-color:var(--ui-accent);background:var(--ui-accent-tint);color:var(--ui-accent)}.tablet-rotate-dial-surface{position:relative;display:grid;place-items:center;width:132px;height:132px;border:12px solid color-mix(in srgb,var(--ui-accent) 72%,var(--border));border-radius:50%;box-sizing:border-box;background:radial-gradient(circle,color-mix(in srgb,var(--surface2) 88%,transparent) 0 56%,transparent 57%);cursor:grab;touch-action:none}.tablet-rotate-dial-surface:before{content:"";position:absolute;inset:9px;border:1px dashed color-mix(in srgb,var(--ui-accent) 55%,transparent);border-radius:50%}.tablet-rotate-dial-surface[data-active=true]{cursor:grabbing;border-color:var(--ui-accent-hover);box-shadow:0 0 0 4px var(--ui-accent-tint)}.tablet-rotate-dial-axis{position:relative;z-index:1;display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--ui-accent-edge);border-radius:50%;background:var(--surface);color:var(--ui-accent);font:800 var(--fs-lg)/1 var(--font-mono)}.tablet-rotate-dial-angle{position:relative;z-index:2;padding:4px 6px;border-radius:var(--r-sm);background:var(--surface);color:var(--text);font:700 var(--fs-sm)/1 var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.tablet-rotate-dial-copy{margin:0;color:var(--n-300);font-size:var(--fs-xs);text-align:center}.tablet-rotate-dial-footer{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px;color:var(--n-400);font-size:var(--fs-2xs);line-height:1.2}.tablet-rotate-dial-footer button{flex:0 0 auto;min-height:40px;padding:0 12px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--text);font:600 var(--fs-sm)/1 var(--font-sans);cursor:pointer}.tablet-rotate-dial-footer button:disabled{opacity:.42;cursor:default}.sketch-capture{position:absolute;inset:0;z-index:8;cursor:crosshair;touch-action:none}.sketch-capture[data-face-hover=true]{cursor:cell}.sketch-selection-grip{display:block;width:9px;height:9px;box-sizing:border-box;border:2px solid #7dd3fc;background:var(--surface);box-shadow:0 0 0 2px color-mix(in srgb,#0c1822 72%,transparent),0 1px 4px #0009}.sketch-selection-grip[data-kind=center],.sketch-selection-grip[data-kind=move]{width:11px;height:11px;border-color:#f6b65f;background:#3a2a18;transform:rotate(45deg)}.sketch-selection-grip[data-kind=radius]{border-radius:50%}.sketch-live-dimension{padding:3px 7px;border:1px solid color-mix(in srgb,var(--sketch-defined) 65%,var(--border));border-radius:var(--r-sm);background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--sketch-defined);box-shadow:var(--el-2);font:600 var(--fs-xs)/1 var(--font-mono);white-space:nowrap;transform:translate(12px,-12px)}.sketch-inference-controls{display:flex;align-items:center;gap:4px;margin-left:auto;padding-left:8px;border-left:1px solid var(--border)}.sketch-inference-button{height:30px;display:flex;align-items:center;gap:5px;padding:0 8px;border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--text-muted);font-size:var(--fs-xs);cursor:pointer}.sketch-inference-button:hover{color:var(--text);background:var(--surface2)}.sketch-inference-button[data-active=true]{color:var(--sketch-defined);border-color:var(--sketch-edge);background:var(--sketch-grid)}.sketch-grid-select{height:30px;display:flex;align-items:center;gap:5px;padding:0 7px;border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-muted);background:var(--surface2);font-size:var(--fs-2xs);white-space:nowrap}.sketch-grid-select select{max-width:62px;border:0;outline:0;background:transparent;color:var(--text);font:600 var(--fs-xs)/1 var(--font-mono);cursor:pointer}.sketch-snap-hud{position:relative;width:0;height:0}.sketch-snap-marker{position:absolute;left:0;top:0;transform:translate(-50%,-50%);width:12px;height:12px;border:2px solid var(--ui-warning);border-radius:50%;background:color-mix(in srgb,var(--surface) 72%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--ui-warning) 14%,transparent)}.sketch-snap-marker[data-kind=close]{width:16px;height:16px;border-color:#34d399;box-shadow:0 0 0 4px color-mix(in srgb,#34d399 18%,transparent)}.sketch-snap-marker[data-kind=grid]{width:10px;height:10px;border-radius:1px;border-color:var(--sketch-defined);transform:translate(-50%,-50%) rotate(45deg)}.sketch-snap-label{position:absolute;left:12px;bottom:12px;padding:3px 7px;border:1px solid color-mix(in srgb,var(--ui-warning) 70%,var(--border));border-radius:var(--r-sm);background:color-mix(in srgb,var(--surface) 92%,transparent);color:var(--ui-warning);box-shadow:var(--el-2);font:650 var(--fs-xs)/1 var(--font-mono);white-space:nowrap}.sketch-snap-label[data-kind=close]{color:#34d399;border-color:#34d399}.sketch-snap-label[data-kind=grid]{color:var(--sketch-defined);border-color:var(--sketch-defined)}.sketch-origin-mark,.sketch-axis-label{display:grid;place-items:center;min-width:18px;height:18px;border:1px solid var(--border);border-radius:var(--r-full);background:var(--surface);color:var(--text-muted);box-shadow:var(--el-1);font:700 var(--fs-2xs)/1 var(--font-mono)}.sketch-axis-label[data-axis=u]{color:#d28a52;border-color:#d28a52}.sketch-axis-label[data-axis=v]{color:#5ca8c9;border-color:#5ca8c9}.sketch-face-hint{position:absolute;left:50%;bottom:24px;transform:translate(-50%);padding:7px 12px;border:1px solid var(--sketch-edge);border-radius:var(--r-full);background:var(--sketch-paper);box-shadow:var(--el-2);color:var(--sketch-defined);font-size:var(--fs-sm);font-weight:600;pointer-events:none}.sketch-kicker{color:var(--sketch-defined);font:700 var(--fs-2xs)/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase}.sketch-plane-panel{position:absolute;z-index:20;top:30px;left:50%;transform:translate(-50%);width:min(660px,calc(100% - 40px));padding:18px;border:1px solid var(--sketch-edge);border-radius:var(--r-xl);background:linear-gradient(145deg,var(--sketch-paper),var(--surface));box-shadow:var(--el-4)}.sketch-plane-copy{display:grid;grid-template-columns:1fr auto;align-items:end;gap:3px 16px;margin-bottom:14px}.sketch-plane-copy strong{font-size:var(--fs-xl);color:var(--text)}.sketch-plane-copy>span:last-child{grid-column:2;grid-row:1 / span 2;max-width:260px;color:var(--text-dim);font-size:var(--fs-sm);line-height:var(--lh-base)}.sketch-plane-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.sketch-plane-card[data-hint=true]{border-style:dashed;cursor:default;background:transparent}.sketch-plane-card[data-hint=true]:hover{transform:none;border-color:var(--border);background:transparent}@media(max-width:760px){.sketch-plane-cards{grid-template-columns:repeat(2,1fr)}}.sketch-plane-card{display:flex;align-items:center;gap:11px;padding:10px;min-width:0;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface2);color:var(--text);cursor:pointer;text-align:left;transition:border-color var(--dur-fast),transform var(--dur-fast),background var(--dur-fast)}.sketch-plane-card:hover{transform:translateY(-1px);border-color:var(--sketch-defined);background:var(--sketch-grid)}.sketch-plane-card strong,.sketch-plane-card small{display:block}.sketch-plane-card small{margin-top:2px;color:var(--text-dim)}.sketch-plane-glyph{display:grid;place-items:center;width:44px;height:34px;flex:none;border:1px solid var(--sketch-defined);color:var(--sketch-defined);background:repeating-linear-gradient(0deg,transparent 0 7px,var(--sketch-grid) 7px 8px),repeating-linear-gradient(90deg,transparent 0 7px,var(--sketch-grid) 7px 8px);font:700 var(--fs-xs)/1 var(--font-mono);transform:skewY(-5deg)}.plane-xy{transform:skew(-7deg)}.plane-yz{transform:skewY(8deg) scaleX(.78)}.sketch-plane-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px;color:var(--text-muted);font-size:var(--fs-xs)}.sketch-context-bar{position:absolute;z-index:20;top:8px;left:12px;right:12px;display:flex;flex-wrap:wrap;align-items:center;gap:12px;row-gap:4px;min-height:54px;padding:6px 8px 6px 12px;border:1px solid var(--sketch-edge);border-radius:var(--r-lg);background:var(--sketch-paper);box-shadow:var(--el-3);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.sketch-context-title{display:flex;flex:0 1 auto;flex-direction:column;min-width:0;padding-right:10px;border-right:1px solid var(--border)}.sketch-context-title strong{color:var(--text);font-size:var(--fs-md)}.sketch-context-title>span:last-child{color:var(--text-muted);font-size:var(--fs-2xs)}.sketch-tool-strip{display:flex;flex:0 0 auto;flex-wrap:wrap;align-items:stretch;gap:2px}.sketch-tool-button{min-width:54px;padding:5px 6px;display:flex;flex-direction:column;align-items:center;gap:2px;border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--text-dim);font-size:var(--fs-2xs);cursor:pointer}.sketch-tool-button:hover{color:var(--text);background:var(--surface2)}.sketch-tool-button[data-active=true]{color:var(--sketch-defined);border-color:var(--sketch-edge);background:var(--sketch-grid)}.sketch-selection-status{display:flex;align-items:center;gap:5px;min-width:max-content;padding:5px 8px;border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-muted);background:var(--surface2);font:600 var(--fs-2xs)/1 var(--font-mono)}.sketch-selection-status[data-selected=true]{color:#f6b65f;border-color:color-mix(in srgb,#f6b65f 55%,var(--border));background:color-mix(in srgb,#f6b65f 8%,var(--surface2))}.sketch-erase-status{color:var(--ui-danger);border-color:color-mix(in srgb,var(--ui-danger) 45%,var(--border));background:var(--ui-danger-tint)}.sketch-view-controls{display:flex;align-items:center;gap:2px;padding:2px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2);white-space:nowrap}.sketch-view-button{min-height:27px;padding:4px 6px;border:0;border-radius:4px;background:transparent;color:var(--text-muted);font:600 var(--fs-2xs)/1 var(--font-ui);cursor:pointer}.sketch-view-button:hover,.sketch-view-button:focus-visible{background:var(--sketch-grid);color:var(--sketch-defined);outline:0}.sketch-context-actions{display:flex;gap:5px;margin-left:auto;white-space:nowrap}.sketch-context-actions .gd-btn{display:flex;align-items:center;gap:5px}.sketch-inspector{width:var(--props-w);height:100%;display:flex;flex-direction:column;overflow:auto;background:var(--surface);border-left:1px solid var(--border)}.sketch-inspector-header{display:flex;justify-content:space-between;gap:8px;padding:14px 12px 12px;border-bottom:1px solid var(--border);background:linear-gradient(150deg,var(--sketch-grid),transparent 55%)}.sketch-inspector-header>div{display:flex;flex-direction:column;gap:2px}.sketch-inspector-header strong{color:var(--text);font-size:var(--fs-lg)}.sketch-inspector-header small{color:var(--text-muted)}.sketch-inspector-section{padding:12px;border-bottom:1px solid var(--border)}.sketch-section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;color:var(--text);font-size:var(--fs-sm);font-weight:700;text-transform:uppercase;letter-spacing:.07em}.sketch-section-heading em{color:var(--text-muted);font:500 var(--fs-2xs)/1 var(--font-mono);text-transform:none;letter-spacing:0}.sketch-inspector-empty{padding:12px;border:1px dashed var(--border);border-radius:var(--r-md);color:var(--text-muted);font-size:var(--fs-sm);line-height:var(--lh-base)}.sketch-entity-list{display:flex;flex-direction:column;gap:3px}.sketch-entity-list button{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:6px;width:100%;padding:7px;border:1px solid transparent;border-radius:var(--r-md);background:var(--surface2);color:var(--text-dim);text-align:left;cursor:pointer}.sketch-entity-list button:hover,.sketch-entity-list button[data-active=true]{border-color:var(--sketch-edge);color:var(--text)}.sketch-entity-list button[data-active=true]{background:var(--sketch-grid)}.sketch-entity-list small{color:var(--text-muted);font-size:var(--fs-2xs)}.sketch-entity-index{color:var(--sketch-defined);font-family:var(--font-mono)}.sketch-dimension-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.sketch-dimension-field,.sketch-select-field{display:flex;flex-direction:column;gap:4px;color:var(--text-dim);font-size:var(--fs-xs)}.sketch-dimension-field>div{position:relative}.sketch-dimension-field input,.sketch-select-field select{width:100%;min-height:30px;box-sizing:border-box;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2);color:var(--text);padding:5px 30px 5px 7px;font:500 var(--fs-sm)/1 var(--font-mono)}.sketch-dimension-field input:focus,.sketch-select-field select:focus{outline:1px solid var(--sketch-defined);border-color:var(--sketch-defined)}.sketch-dimension-field b{position:absolute;right:7px;top:8px;color:var(--text-muted);font:500 var(--fs-2xs)/1 var(--font-mono)}.sketch-formula-field{display:grid;gap:4px;margin-top:6px;color:var(--text-dim);font-size:var(--fs-xs)}.sketch-formula-field>span{display:flex;align-items:center;gap:5px;min-width:0}.sketch-formula-field>span b{display:inline-grid;place-items:center;min-width:19px;height:17px;border:1px solid color-mix(in srgb,var(--sketch-defined) 55%,var(--border));border-radius:3px;color:var(--sketch-defined);font:700 10px/1 var(--font-mono)}.sketch-formula-field>span small{min-width:0;margin-left:auto;overflow:hidden;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font:500 var(--fs-2xs)/1 var(--font-mono)}.sketch-formula-field input{width:100%;min-height:29px;box-sizing:border-box;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2);color:var(--text);padding:5px 7px;font:500 var(--fs-sm)/1 var(--font-mono)}.sketch-formula-field input:focus{outline:1px solid var(--sketch-defined);border-color:var(--sketch-defined)}.sketch-formula-field[data-invalid=true] input{border-color:var(--ui-danger)}.sketch-formula-field em{color:var(--ui-danger);font-size:var(--fs-2xs);line-height:var(--lh-base)}.sketch-profile-ready{padding:8px;border-left:2px solid var(--ui-success);background:color-mix(in srgb,var(--ui-success) 10%,transparent);color:var(--ui-success);font-size:var(--fs-sm)}.sketch-profile-warning{display:flex;gap:7px;align-items:flex-start;color:var(--ui-warning);font-size:var(--fs-xs);line-height:var(--lh-base)}.sketch-profile-warning svg{flex:none}.prop-note{padding:6px 8px;border-left:2px solid var(--border);border-radius:0 var(--r-sm) var(--r-sm) 0;background:color-mix(in srgb,var(--surface2) 70%,transparent);color:var(--text-muted);font-size:var(--fs-xs);line-height:var(--lh-base)}.prop-note b{color:var(--text-dim);font-weight:600}.sketch-feature-editor{display:flex;flex-direction:column;gap:9px;background:var(--sketch-grid)}.sketch-feature-editor p{margin:0;color:var(--text-muted);font-size:var(--fs-xs);line-height:var(--lh-base)}.sketch-inspector-actions,.sketch-inspector-footer{display:flex;gap:6px}.sketch-inspector-actions .gd-btn,.sketch-inspector-footer .gd-btn{flex:1;justify-content:center}.sketch-inspector-footer{margin-top:auto;padding:12px;flex-wrap:wrap;position:sticky;bottom:0;z-index:1;background:var(--surface);border-top:1px solid var(--border)}.sketch-danger-link{display:flex;align-items:center;gap:5px;margin-top:8px;padding:3px 0;border:0;background:transparent;color:var(--ui-danger);font-size:var(--fs-xs);cursor:pointer}.sketch-inspector-footer .sketch-danger-link{flex-basis:100%;justify-content:center}.sketch-feature-tablet-note{background:color-mix(in srgb,var(--sketch-grid) 62%,var(--surface))}.sketch-feature-tablet-note p{margin:0;color:var(--text-muted);font-size:var(--fs-xs);line-height:var(--lh-base)}.extrude-preview-state{display:inline-flex;align-items:center;gap:5px;color:var(--ui-success)!important}.extrude-preview-state i{width:6px;height:6px;border-radius:50%;background:var(--ui-success);box-shadow:0 0 0 3px color-mix(in srgb,var(--ui-success) 16%,transparent)}.extrude-profile-source{display:grid;grid-template-columns:58px 1fr;align-items:center;gap:7px;padding:7px 8px;border:1px solid var(--border);border-radius:var(--r-md);background:color-mix(in srgb,var(--surface2) 76%,transparent);font-size:var(--fs-xs)}.extrude-profile-source span{color:var(--text-muted)}.extrude-profile-source strong{min-width:0;overflow:hidden;color:var(--text);text-overflow:ellipsis;white-space:nowrap}.extrude-direction-toggle{display:grid;grid-template-columns:1fr 1fr;gap:4px}.extrude-direction-toggle button{min-height:28px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2);color:var(--text-dim);font-size:var(--fs-xs);cursor:pointer}.extrude-direction-toggle button[data-active=true]{border-color:var(--ui-accent-edge);background:var(--ui-accent-tint);color:var(--ui-accent)}.extrude-key-hints{display:flex;justify-content:space-between;padding-top:2px;color:var(--text-muted);font-size:var(--fs-2xs)}.extrude-key-hints span{display:flex;align-items:center;gap:4px}.extrude-key-hints kbd{min-width:24px;padding:2px 4px;border:1px solid var(--border);border-bottom-color:var(--n-500);border-radius:3px;background:var(--surface2);color:var(--text-dim);font:600 var(--fs-2xs)/1 var(--font-mono);text-align:center}.extrude-depth-control{position:relative;pointer-events:auto}.extrude-depth-flag{display:flex;align-items:stretch;min-height:34px;margin:0 0 0 54px;overflow:hidden;border:1px solid #f4a259;border-radius:6px;background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:var(--el-2);white-space:nowrap;touch-action:manipulation}.extrude-depth-actions{display:flex;align-items:stretch;border-right:1px solid color-mix(in srgb,#f4a259 42%,var(--border))}.extrude-depth-actions button{min-width:50px;border:0;padding:4px 7px;color:var(--text-dim);background:color-mix(in srgb,var(--surface2) 88%,transparent);font:700 var(--fs-2xs)/1 var(--font-ui);cursor:pointer;touch-action:manipulation}.extrude-depth-actions .extrude-depth-cancel{color:var(--text-muted)}.extrude-depth-actions .extrude-depth-commit{color:#2e1a09;background:#f4a259}.extrude-depth-actions button:hover,.extrude-depth-actions button:focus-visible{filter:brightness(1.13);outline:0}.extrude-depth-value{display:flex;align-items:center;gap:4px;padding:3px 5px 3px 7px;color:#f4a259;background:color-mix(in srgb,var(--surface) 94%,transparent)}.extrude-depth-value input{width:52px;min-width:0;border:0;outline:0;background:transparent;color:#f4a259;font:700 var(--fs-sm)/1 var(--font-mono);text-align:right}.extrude-depth-value input:focus{color:#ffd08a;text-decoration:underline;text-underline-offset:3px}.extrude-depth-value span{color:var(--text-muted);font:600 var(--fs-2xs)/1 var(--font-mono)}.extrude-depth-nudge{display:flex;flex-direction:column;width:23px;border-inline:1px solid color-mix(in srgb,#f4a259 42%,var(--border))}.extrude-depth-nudge button{flex:1;min-height:16px;padding:0;border:0;background:color-mix(in srgb,#f4a259 11%,transparent);color:#f4a259;font-size:8px;line-height:1;cursor:pointer}.extrude-depth-nudge button+button{border-top:1px solid color-mix(in srgb,#f4a259 36%,var(--border))}.extrude-depth-nudge button:hover,.extrude-depth-nudge button:focus-visible{background:color-mix(in srgb,#f4a259 26%,transparent);color:#ffe0a7;outline:0}.extrude-depth-direction{display:flex;align-items:center;padding:4px 7px;background:color-mix(in srgb,#f4a259 14%,transparent);color:var(--text-dim);font:600 var(--fs-2xs)/1 var(--font-mono);text-transform:uppercase;letter-spacing:.05em}.extrude-keypad{position:absolute;right:0;bottom:calc(100% + 9px);width:250px;padding:9px;border:1px solid color-mix(in srgb,#f4a259 62%,var(--border));border-radius:var(--r-lg);background:color-mix(in srgb,var(--surface) 97%,#1d1208);box-shadow:var(--el-4);color:var(--text);touch-action:manipulation}.extrude-keypad-title{display:flex;align-items:center;justify-content:space-between;padding:1px 2px 8px;color:#ffd08a;font:700 var(--fs-xs)/1 var(--font-mono)}.extrude-keypad-title button{min-height:28px;padding:3px 8px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--text-dim);font:700 var(--fs-2xs)/1 var(--font-ui);cursor:pointer}.extrude-keypad-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.extrude-keypad-grid button,.extrude-keypad-fractions button{min-height:38px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--text);font:700 var(--fs-sm)/1 var(--font-mono);cursor:pointer}.extrude-keypad-grid button[data-key=clear],.extrude-keypad-grid button[data-key=backspace]{color:#ffd08a;font:700 var(--fs-2xs)/1 var(--font-ui)}.extrude-keypad-grid button:hover,.extrude-keypad-grid button:focus-visible,.extrude-keypad-fractions button:hover,.extrude-keypad-fractions button:focus-visible,.extrude-keypad-title button:hover,.extrude-keypad-title button:focus-visible{border-color:#f4a259;background:color-mix(in srgb,#f4a259 16%,var(--surface2));outline:0}.extrude-keypad-fractions{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:7px}.extrude-keypad-fractions button{min-height:31px;color:#ffd08a;font-size:var(--fs-xs)}@media(pointer:coarse){.extrude-depth-flag{min-height:42px}.extrude-depth-actions button{min-width:61px}.extrude-depth-value input{width:60px;font-size:var(--fs-md)}.extrude-depth-nudge{width:29px}.extrude-keypad{width:272px;padding:10px}.extrude-keypad-grid button{min-height:46px}.extrude-keypad-fractions button{min-height:38px}}.tablet-extrude-overlay{position:absolute;inset:0;pointer-events:none;z-index:24}.tablet-extrude-palette{position:absolute;width:min(390px,calc(100% - 104px));padding:7px;border:1px solid color-mix(in srgb,#f4a259 66%,var(--border));border-radius:var(--r-lg);background:color-mix(in srgb,var(--surface) 97%,#26150a);box-shadow:0 15px 38px #0000008f;color:var(--text);pointer-events:auto;touch-action:manipulation;transition:left .18s var(--ease-out),top .18s var(--ease-out),right .18s var(--ease-out),bottom .18s var(--ease-out),transform .18s var(--ease-out)}.tablet-extrude-palette[data-dock=bottom]{left:50%;bottom:160px;transform:translate(-50%)}.tablet-extrude-palette[data-dock=top]{top:74px;left:50%;transform:translate(-50%)}.tablet-extrude-palette[data-dock=left]{left:74px;top:50%;transform:translateY(-50%)}.tablet-extrude-palette[data-dock=right]{right:30px;top:50%;transform:translateY(-50%)}.tablet-extrude-palette[data-dragging=true]{transition:none;box-shadow:0 21px 48px #000000b8;cursor:grabbing}.tablet-extrude-grab{min-height:36px;display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:7px;padding:0 7px;border-bottom:1px solid color-mix(in srgb,#f4a259 30%,var(--border));color:#ffd08a;font:700 var(--fs-xs)/1 var(--font-ui);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.tablet-extrude-grab:focus-visible{outline:1px solid #f4a259;outline-offset:-2px}.tablet-extrude-grab i{width:22px;height:4px;border-radius:999px;background:repeating-linear-gradient(90deg,#f4a259 0 4px,transparent 4px 7px);opacity:.88}.tablet-extrude-grab span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tablet-extrude-grab small{color:var(--text-muted);font:600 var(--fs-2xs)/1 var(--font-mono);text-transform:uppercase;letter-spacing:.07em}.tablet-extrude-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 112px auto auto;gap:5px;align-items:center;padding:7px 1px 5px}.tablet-extrude-profile{min-width:0;overflow:hidden;color:var(--text-dim);font-size:var(--fs-2xs);text-overflow:ellipsis;white-space:nowrap}.tablet-extrude-toolbar select,.tablet-extrude-toolbar button{min-height:31px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--text-dim);font:700 var(--fs-2xs)/1 var(--font-ui);cursor:pointer}.tablet-extrude-toolbar select{padding-inline:6px}.tablet-extrude-toolbar button{padding-inline:7px}.tablet-extrude-toolbar button:hover,.tablet-extrude-toolbar button:focus-visible{border-color:#f4a259;color:#ffd08a;outline:0}.tablet-extrude-formula{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:6px;margin:0 1px 5px;color:var(--text-muted);font-size:var(--fs-2xs)}.tablet-extrude-formula span{white-space:nowrap}.tablet-extrude-formula b{display:inline-grid;place-items:center;width:18px;height:17px;margin-right:4px;border:1px solid #f4a259;border-radius:3px;color:#ffd08a;font:700 10px/1 var(--font-mono)}.tablet-extrude-formula input{width:100%;min-height:31px;box-sizing:border-box;padding:5px 7px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--text);font:600 var(--fs-xs)/1 var(--font-mono);outline:0}.tablet-extrude-formula input:focus{border-color:#f4a259}.tablet-extrude-depth-row{display:grid;grid-template-columns:38px minmax(75px,1fr) 38px 1fr 1fr;gap:4px}.tablet-extrude-depth-row>button{min-height:43px;border:1px solid color-mix(in srgb,#f4a259 45%,var(--border));border-radius:var(--r-sm);background:var(--surface2);color:var(--text);font:700 var(--fs-sm)/1 var(--font-ui);cursor:pointer}.tablet-extrude-depth-row>button:first-child,.tablet-extrude-depth-row>button:nth-child(3){color:#ffd08a;font-size:20px}.tablet-extrude-depth-value{display:flex;align-items:center;justify-content:center;gap:4px;color:#f4a259!important;background:color-mix(in srgb,#f4a259 9%,var(--surface2))!important;font-family:var(--font-mono)!important}.tablet-extrude-depth-value span{color:var(--text-muted);font-size:var(--fs-2xs)}.tablet-extrude-direction{color:var(--text-muted)!important;font-size:var(--fs-2xs)!important}.tablet-extrude-direction[data-active=true]{border-color:#f4a259!important;background:color-mix(in srgb,#f4a259 18%,var(--surface2))!important;color:#ffd08a!important}.tablet-extrude-status{min-height:18px;margin:5px 3px 4px;color:var(--text-muted);font-size:var(--fs-2xs);line-height:1.35}.tablet-extrude-status[data-valid=false]{color:#ff8a7a}.tablet-extrude-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:5px}.tablet-extrude-actions button{min-height:42px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2);color:var(--text-dim);font:700 var(--fs-sm)/1 var(--font-ui);cursor:pointer}.tablet-extrude-actions button[data-variant=primary]{border-color:#f4a259;background:#f4a259;color:#2e1a09}.tablet-extrude-actions button:disabled{opacity:.45;cursor:not-allowed}.tablet-extrude-keypad{position:absolute;z-index:3;right:0;bottom:calc(100% + 9px);width:272px;padding:10px;border:1px solid color-mix(in srgb,#f4a259 66%,var(--border));border-radius:var(--r-lg);background:color-mix(in srgb,var(--surface) 98%,#241306);box-shadow:var(--el-4)}.tablet-extrude-keypad header{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px;color:#ffd08a;font:700 var(--fs-xs)/1 var(--font-mono)}.tablet-extrude-keypad header button{min-height:32px;padding-inline:9px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--text);font:700 var(--fs-xs)/1 var(--font-ui);cursor:pointer}.tablet-extrude-keypad input{box-sizing:border-box;width:100%;min-height:40px;margin-bottom:6px;padding-inline:10px;border:1px solid #f4a259;border-radius:var(--r-sm);background:var(--surface2);color:#ffd08a;font:700 var(--fs-md)/1 var(--font-mono)}.tablet-extrude-keypad-grid,.tablet-extrude-fractions{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.tablet-extrude-keypad-grid button,.tablet-extrude-fractions button{min-height:42px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--text);font:700 var(--fs-sm)/1 var(--font-mono);cursor:pointer}.tablet-extrude-keypad-grid button[data-key=clear],.tablet-extrude-keypad-grid button[data-key=backspace],.tablet-extrude-fractions button{color:#ffd08a;font-size:var(--fs-xs)}.tablet-extrude-fractions{margin-top:6px}.tablet-extrude-keypad button:hover,.tablet-extrude-keypad button:focus-visible{border-color:#f4a259;background:color-mix(in srgb,#f4a259 16%,var(--surface2));outline:0}@media(orientation:portrait){.tablet-extrude-palette{width:calc(100% - 88px)}.tablet-extrude-palette[data-dock=left],.tablet-extrude-palette[data-dock=right]{left:50%;right:auto;transform:translate(-50%)}.tablet-extrude-palette[data-dock=left]{top:118px}.tablet-extrude-palette[data-dock=right]{top:auto;bottom:160px}.tablet-extrude-toolbar{grid-template-columns:minmax(0,1fr) 108px auto}.tablet-extrude-toolbar button:last-child{display:none}.tablet-extrude-keypad{right:0;bottom:calc(100% + 7px)}}@media(prefers-reduced-motion:reduce){.tablet-extrude-palette{transition:none}}.help-modal-backdrop{position:fixed;inset:0;z-index:250;display:grid;place-items:center;padding:24px;background:#000000b8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.sketch-help-modal{width:min(900px,100%);height:min(680px,calc(100dvh - 48px));display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--el-4)}.sketch-help-modal>header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:16px 18px;border-bottom:1px solid var(--border);background:linear-gradient(110deg,var(--sketch-grid),transparent 48%)}.help-title-mark{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--sketch-edge);border-radius:var(--r-lg);color:var(--sketch-defined);background:var(--sketch-grid)}.sketch-help-modal h2{margin:2px 0 0;color:var(--text);font-size:var(--fs-xl)}.sketch-help-modal header p{margin:2px 0 0;color:var(--text-muted);font-size:var(--fs-xs)}.sketch-help-layout{display:grid;grid-template-columns:220px 1fr;flex:1;min-height:0}.sketch-help-layout nav{padding:10px;overflow:auto;border-right:1px solid var(--border);background:var(--n-900)}.sketch-help-layout nav button{display:grid;grid-template-columns:24px 1fr;gap:6px;width:100%;padding:9px 8px;border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--text-dim);text-align:left;cursor:pointer}.sketch-help-layout nav button span{color:var(--text-muted);font-family:var(--font-mono)}.sketch-help-layout nav button:hover,.sketch-help-layout nav button[data-active=true]{color:var(--text);background:var(--surface2)}.sketch-help-layout nav button[data-active=true]{border-color:var(--sketch-edge)}.sketch-help-layout nav button[data-active=true] span{color:var(--sketch-defined)}.sketch-help-layout article{padding:26px 34px 40px;overflow:auto;color:var(--text-dim);font-size:var(--fs-md);line-height:1.65}.sketch-help-layout article h3{margin:5px 0 14px;color:var(--text);font-size:var(--fs-2xl);line-height:1.2}.sketch-help-layout article p{margin:0 0 14px}.sketch-help-layout article ul,.sketch-help-layout article ol{padding-left:20px}.sketch-help-layout article li{margin:6px 0}.sketch-help-layout article b{color:var(--text)}.sketch-help-layout table{width:100%;border-collapse:collapse;margin:12px 0}.sketch-help-layout th,.sketch-help-layout td{padding:8px 9px;border-bottom:1px solid var(--border);text-align:left}.sketch-help-layout th{color:var(--sketch-defined);font-family:var(--font-mono);font-size:var(--fs-sm)}.help-callout{margin:18px 0;padding:12px 14px;border-left:2px solid var(--sketch-defined);background:var(--sketch-grid);color:var(--text)}@media(max-width:1320px){.sketch-tool-button span{display:none}.sketch-tool-button{min-width:34px}}@media(max-width:900px){.sketch-context-title,.sketch-context-actions .gd-btn:first-child{display:none}.sketch-context-actions .gd-btn:last-child{padding-left:7px;padding-right:7px}.sketch-help-layout{grid-template-columns:170px 1fr}.sketch-plane-copy{grid-template-columns:1fr}.sketch-plane-copy>span:last-child{grid-column:1;grid-row:auto}}.help-center-backdrop{position:fixed;inset:0;z-index:260;display:grid;place-items:center;padding:22px;background:#050504c2;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.help-center{width:min(1180px,100%);height:min(790px,calc(100dvh - 44px));display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--n-700);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--el-4),inset 0 1px color-mix(in srgb,var(--n-050) 4%,transparent)}.help-center-header{min-height:70px;display:grid;grid-template-columns:auto minmax(180px,.55fr) minmax(300px,1fr) auto;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border);background:linear-gradient(90deg,color-mix(in srgb,var(--ui-accent) 8%,transparent),transparent 32%),var(--chrome-deep)}.help-center-title-mark{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--ui-accent-edge);border-radius:var(--r-lg);color:var(--ui-accent);background:var(--ui-accent-tint)}.help-center-heading span,.help-center-kicker,.help-center-nav-label{color:var(--text-muted);font:650 var(--fs-2xs)/1.2 var(--font-mono);letter-spacing:.07em;text-transform:uppercase}.help-center-heading h2{margin:3px 0 0;color:var(--text);font-size:var(--fs-xl);line-height:1.05}.help-center-search{height:38px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:0 9px 0 11px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface2);color:var(--text-muted)}.help-center-search:focus-within{border-color:var(--ui-accent-edge);box-shadow:0 0 0 2px var(--ui-accent-tint)}.help-center-search input{min-width:0;border:0;outline:0;background:transparent;color:var(--text);font:500 var(--fs-md)/1 var(--font-sans)}.help-center-search input::placeholder{color:var(--text-muted)}.help-center-search kbd,.help-command-card kbd,.help-command-row kbd{border:1px solid var(--border);border-bottom-color:var(--n-650);border-radius:var(--r-sm);background:var(--n-850);color:var(--text-dim);font:600 var(--fs-xs)/1 var(--font-mono)}.help-center-search kbd{min-width:23px;padding:4px 5px;text-align:center}.help-center-layout{min-height:0;display:grid;grid-template-columns:246px minmax(0,1fr);flex:1}.help-center-nav{min-height:0;display:flex;flex-direction:column;gap:2px;padding:13px 10px;overflow-y:auto;border-right:1px solid var(--border);background:var(--n-900)}.help-center-nav>*{flex-shrink:0}.help-center-nav-label{padding:9px 9px 5px;color:var(--text-muted)}.help-center-nav button{width:100%;min-height:34px;display:grid;grid-template-columns:19px 1fr;align-items:center;gap:7px;padding:7px 9px;border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--text-dim);font-size:var(--fs-sm);text-align:left;cursor:pointer}.help-center-nav button:hover{background:var(--surface2);color:var(--text)}.help-center-nav button[data-active=true]{border-color:var(--ui-accent-edge);background:var(--ui-accent-tint);color:var(--ui-accent)}.help-center-nav-foot{display:flex;gap:8px;margin-top:auto;padding:12px 9px 4px;color:var(--text-muted);font-size:var(--fs-2xs);line-height:1.45}.help-center-nav-foot svg{flex:0 0 auto;color:var(--ui-accent)}.help-center-content{min-width:0;overflow-y:auto;padding:28px 34px 44px;color:var(--text-dim);font-size:var(--fs-md);line-height:1.58}.help-center-content>h3,.help-guide-page>h3{margin:5px 0 9px;color:var(--text);font-size:clamp(22px,2.4vw,30px);line-height:1.15}.help-center-lede{max-width:760px;margin:0 0 20px;color:var(--text-muted)}.help-context-card{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:19px 0 16px;overflow:hidden;border:1px solid var(--ui-accent-edge);border-radius:var(--r-lg);background:linear-gradient(115deg,var(--ui-accent-tint),transparent 65%),repeating-linear-gradient(90deg,transparent 0,transparent 31px,color-mix(in srgb,var(--ui-accent) 5%,transparent) 32px),var(--surface2);box-shadow:var(--el-inset),var(--el-2)}.help-context-card>div{min-width:0;padding:14px 15px;border-right:1px solid var(--border)}.help-context-card>div:last-child{border-right:0}.help-context-card span{display:block;margin-bottom:5px;color:var(--text-muted);font:600 var(--fs-2xs)/1 var(--font-mono);text-transform:uppercase}.help-context-card strong{display:block;overflow:hidden;color:var(--text);font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap}.help-command-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.help-command-card{min-width:0;padding:12px 13px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface2);text-align:left;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.help-command-card:hover{border-color:var(--ui-accent-edge);background:var(--ui-accent-tint);transform:translateY(-1px)}.help-command-card>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.help-command-card>div>span{color:var(--text-muted);font:600 var(--fs-2xs)/1 var(--font-mono);text-transform:uppercase}.help-command-card kbd{max-width:60%;padding:4px 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.help-command-card strong{display:block;margin-top:8px;color:var(--text);font-size:var(--fs-md)}.help-command-card p{margin:4px 0 0;color:var(--text-dim);font-size:var(--fs-sm);line-height:1.45}.help-command-card em{display:inline-flex;align-items:center;gap:4px;margin-top:9px;color:var(--ui-accent);font-size:var(--fs-2xs);font-style:normal}.help-command-card small,.help-command-row small{display:block;margin-top:5px;color:var(--ui-accent);font-size:var(--fs-2xs)}.help-command-section{margin-top:25px}.help-command-section h4{margin:0 0 8px;color:var(--text);font-size:var(--fs-md)}.help-command-table{overflow:hidden;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface2)}.help-command-row{display:flex;align-items:stretch;border-bottom:1px solid var(--border)}.help-command-row:last-child{border-bottom:0}.help-command-row-reference{min-width:0;flex:1;display:grid;grid-template-columns:minmax(140px,.55fr) minmax(240px,1.5fr) minmax(110px,.5fr) 14px;align-items:start;gap:13px;padding:11px 12px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.help-command-row-reference:hover{background:var(--ui-accent-tint)}.help-command-row-reference>strong{color:var(--text);font-size:var(--fs-sm)}.help-command-row-reference>span{color:var(--text-dim);font-size:var(--fs-sm);line-height:1.4}.help-command-row-reference>kbd{justify-self:end;max-width:100%;padding:5px 7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.help-command-row-arrow{margin-top:4px;color:var(--text-muted)}.help-command-row-reference:hover .help-command-row-arrow{color:var(--ui-accent)}.help-command-action{flex:0 0 auto;margin:8px 8px 8px 0;padding:0 10px;border:1px solid var(--ui-accent-edge);border-radius:var(--r-md);background:var(--ui-accent-tint);color:var(--ui-accent);font-size:var(--fs-xs);cursor:pointer;white-space:nowrap}.help-command-action:hover{background:color-mix(in srgb,var(--ui-accent) 18%,var(--surface2))}.help-guide-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.help-guide-results button{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;min-height:44px;padding:9px 11px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface2);color:var(--text);cursor:pointer;text-align:left}.help-guide-results button:hover{border-color:var(--ui-accent-edge);background:var(--ui-accent-tint)}.help-guide-results small{color:var(--text-muted)}.help-search-empty{min-height:240px;display:grid;place-items:center;align-content:center;gap:8px;color:var(--text-muted);text-align:center}.help-search-empty p{max-width:450px;margin:0}.help-guide-page{max-width:790px}.help-search-return{display:inline-flex;align-items:center;gap:6px;margin:0 0 18px;padding:6px 8px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2);color:var(--text-dim);font-size:var(--fs-xs);cursor:pointer}.help-search-return:hover{border-color:var(--ui-accent-edge);color:var(--ui-accent)}.help-command-focus{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;margin:16px 0 20px;padding:13px 14px;border:1px solid var(--ui-accent-edge);border-left:3px solid var(--ui-accent);border-radius:var(--r-lg);background:linear-gradient(105deg,var(--ui-accent-tint),transparent 72%),var(--surface2)}.help-command-focus>div>span{color:var(--text-muted);font:650 var(--fs-2xs)/1 var(--font-mono);text-transform:uppercase}.help-command-focus strong{display:block;margin-top:4px;color:var(--text);font-size:var(--fs-md)}.help-command-focus p{margin:3px 0 0;color:var(--text-dim);font-size:var(--fs-sm)}.help-command-focus small{display:block;margin-top:5px;color:var(--ui-accent);font-size:var(--fs-2xs)}.help-command-focus>kbd{padding:5px 7px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--n-850);color:var(--text-dim);font:600 var(--fs-xs)/1 var(--font-mono)}.help-command-focus>.gd-btn{grid-column:1 / -1;justify-self:start}.help-guide-page p{margin:0 0 14px}.help-guide-page ul,.help-guide-page ol{padding-left:21px}.help-guide-page li{margin:6px 0}.help-guide-page b{color:var(--text)}.help-guide-page code{padding:1px 4px;border-radius:var(--r-sm);background:var(--n-850);color:var(--sketch-defined);font-family:var(--font-mono)}.help-guide-page table{width:100%;margin:13px 0 18px;border-collapse:collapse}.help-guide-page th,.help-guide-page td{padding:8px 9px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.help-guide-page th{color:var(--sketch-defined);font-family:var(--font-mono);font-size:var(--fs-sm)}@media(max-width:860px){.help-center-backdrop{padding:10px}.help-center{height:calc(100dvh - 20px)}.help-center-header{grid-template-columns:auto 1fr auto}.help-center-search{grid-column:1 / -1;grid-row:2}.help-center-layout{grid-template-columns:190px minmax(0,1fr)}.help-center-content{padding:22px 20px 38px}.help-context-card{grid-template-columns:repeat(2,minmax(0,1fr))}.help-context-card>div:nth-child(2){border-right:0}.help-context-card>div:nth-child(-n+2){border-bottom:1px solid var(--border)}.help-command-grid{grid-template-columns:1fr}.help-command-row{align-items:stretch}.help-command-row-reference{grid-template-columns:minmax(0,1fr) auto 14px}.help-command-row-reference>span{grid-column:1 / -1;grid-row:2}.help-command-row-reference>kbd{grid-column:2;grid-row:1}.help-command-row-arrow{grid-column:3;grid-row:1}}@media(max-width:620px){.help-center-layout{grid-template-columns:1fr}.help-center-nav{max-height:150px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-right:0;border-bottom:1px solid var(--border)}.help-center-nav-label,.help-center-nav-foot{display:none}.help-guide-results{grid-template-columns:1fr}}@media(max-width:1150px){.sketch-inference-button span,.sketch-grid-select>span,.sketch-selection-status span{display:none}.sketch-inference-button{padding-inline:7px}.sketch-grid-select{padding-inline:4px}.sketch-selection-status{min-width:30px;justify-content:center;padding-inline:6px}}.gd-dimension-input{position:relative;display:flex;align-items:center;gap:4px;min-width:0}.gd-dimension-input input{flex:1;min-width:0;height:26px;padding:0 7px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--text);font-size:var(--fs-md);transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.gd-dimension-input input:hover{border-color:var(--n-700)}.gd-dimension-input input:focus{outline:none;border-color:var(--ui-accent);box-shadow:0 0 0 3px var(--ui-accent-tint)}.prop-input-wrap{width:88px}.prop-input-wrap input{width:100%;height:24px;padding:0 6px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--text);font:inherit;font-size:var(--fs-md)}.gd-dimension-input[data-disabled]{opacity:.55}.gd-dimension-step{display:flex;flex-direction:column;flex:none}.gd-dimension-step button{display:block;width:15px;height:9px;padding:0;border:1px solid var(--border);background:var(--surface2);color:var(--text-muted);cursor:pointer;font-size:6px;line-height:1;border-radius:2px}.gd-dimension-step button:first-child{border-bottom:none;border-radius:2px 2px 0 0}.gd-dimension-step button:last-child{border-radius:0 0 2px 2px}.gd-dimension-step button:hover{color:var(--text);border-color:var(--accent)}:root[data-ui-mode=tablet] .gd-dimension-step button{width:24px;height:16px;font-size:8px}.tablet-rail-scale{position:relative}.tablet-scale-backdrop{position:fixed;inset:0;z-index:40;border:none;background:transparent;cursor:default}.tablet-scale-popover{position:absolute;left:calc(100% + 8px);bottom:0;z-index:41;width:min(280px,calc(100vw - var(--toolbar-w) - 24px));display:flex;flex-direction:column;gap:var(--sp-4);padding:var(--sp-5);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--el-4)}.tablet-scale-heading{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-4);font-size:var(--fs-md);color:var(--text-dim)}.tablet-scale-heading strong{color:var(--text);font-variant-numeric:tabular-nums}.tablet-scale-popover input[type=range]{width:100%;accent-color:var(--accent)}.tablet-scale-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);font-size:var(--fs-2xs);color:var(--text-muted)}.sketch-dimension-field .gd-dimension-input input{padding-right:var(--sp-3)}.sketch-dimension-field .gd-dimension-input b{position:static;top:auto;right:auto;flex:none}.sketch-dimension-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.sketch-formula-field>span{flex-wrap:wrap}.sketch-formula-field>span small{margin-left:auto}.sketch-formula-field>span>label,.sketch-formula-field>span>span{min-width:0}.gd-formula-input{position:relative}.gd-formula-input input{width:100%}.gd-formula-suggestions{position:absolute;left:0;right:0;top:calc(100% + 3px);z-index:60;max-height:210px;overflow-y:auto;margin:0;padding:3px;list-style:none;border:1px solid var(--sketch-defined, var(--accent));border-radius:var(--r-md);background:var(--surface);box-shadow:var(--el-3)}.gd-formula-suggestions button{width:100%;display:flex;align-items:baseline;gap:var(--sp-3);padding:5px 7px;border:none;border-radius:var(--r-sm);background:transparent;color:var(--text);cursor:pointer;text-align:left;font:500 var(--fs-xs)/1.3 var(--font-mono)}.gd-formula-suggestions button[data-active=true]{background:var(--ui-accent-tint)}.gd-formula-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gd-formula-kind{margin-left:auto;flex:none;color:var(--text-muted);font:500 var(--fs-2xs)/1 var(--font-sans)}.gd-formula-detail{flex:none;color:var(--accent3, var(--text-dim));font-size:var(--fs-2xs)}:root[data-ui-mode=tablet] .gd-formula-suggestions button{padding:9px 10px}.gd-joint-inspection{margin:var(--sp-4) 0;padding:var(--sp-3);border:1px solid var(--border);border-radius:var(--r-md)}.gd-joint-inspection-controls,.gd-joint-steps{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.gd-joint-inspection-canvas{height:280px;border-radius:var(--r-md);overflow:hidden;margin-top:var(--sp-3)}.gd-joint-inspection p{font-size:var(--fs-sm);line-height:1.5;margin:var(--sp-2) 0}.gd-joint-steps{padding-left:var(--sp-5);font-size:var(--fs-sm);color:var(--text-dim);gap:var(--sp-5)}.gd-joint-face-confirm{display:flex;gap:var(--sp-2);align-items:center;font-size:var(--fs-md)}.gd-joint-confirm-hint{margin-right:auto;align-self:center;font-size:var(--fs-sm);color:var(--text-dim)}.gd-joint-advanced{flex-basis:100%}.gd-joint-advanced>div{display:flex;flex-wrap:wrap;gap:var(--sp-4);padding:var(--sp-3) 0}.gd-joint-steps{list-style:none;padding:0;counter-reset:joint-step;gap:var(--sp-4) var(--sp-6);margin:var(--sp-5) 0}.gd-joint-steps li{counter-increment:joint-step}.gd-joint-steps li:before{content:counter(joint-step) ". ";color:var(--text)}.gd-joint-inspection-controls button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.workflow-panel{display:flex;flex-direction:column;gap:10px;padding:14px;overflow:auto;min-height:0;color:var(--text);font-size:var(--fs-sm);line-height:1.5}.workflow-panel h3,.workflow-dialog h2{margin:0}.workflow-panel p{margin:2px 0;color:var(--text-dim)}.workflow-panel label,.workflow-dialog label{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.workflow-panel label>select,.workflow-dialog label>input,.workflow-dialog label>select{flex:1;min-width:0}.workflow-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.workflow-card,.workflow-dimension{padding:10px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2);display:flex;flex-direction:column;gap:7px;overflow-wrap:anywhere}.workflow-dimension{margin-block:3px;padding:6px 8px;gap:4px}.workflow-dimension-head{display:flex;align-items:center;gap:6px;min-width:0}.workflow-dimension-head strong{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workflow-dimension-value{flex:0 0 auto;color:var(--text-dim);font-family:var(--font-mono);font-size:var(--fs-xs);font-variant-numeric:tabular-nums}.workflow-dimension-pin{color:var(--text-muted)}.workflow-dimension-pin[data-pinned]{color:var(--ui-accent)}.workflow-result{display:flex;flex-direction:column;gap:3px;width:100%;text-align:left;padding:10px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;font:inherit}.workflow-result span{color:var(--text-dim);font-size:var(--fs-xs)}.workflow-result:hover,.workflow-result[aria-current=true]{background:var(--ui-accent-tint);border-color:var(--accent)}.workflow-link{color:var(--accent);background:none;border:0;cursor:pointer;text-align:left;padding:4px 0;font:inherit}.workflow-pass{display:flex;align-items:center;gap:7px;margin:2px 0;padding:8px 10px;border:1px solid color-mix(in srgb,var(--ui-success) 38%,transparent);border-radius:var(--r-md);background:color-mix(in srgb,var(--ui-success) 12%,transparent);color:var(--text)}.workflow-pass svg{flex:0 0 auto;color:var(--ui-success)}.workflow-inspector{display:flex;flex-direction:column;width:100%;min-width:0;overflow:auto;background:var(--surface);border-left:1px solid var(--border)}.workflow-dialog{padding:24px;width:min(540px,calc(100vw - 32px));max-height:calc(100svh - 32px);overflow:auto;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);color:var(--text);display:flex;flex-direction:column;gap:14px;box-shadow:var(--el-4)}.workflow-dialog .prop-input{width:100%;box-sizing:border-box}.workflow-search{width:min(680px,calc(100vw - 32px))}.workflow-search-results{overflow:auto;display:flex;flex-direction:column;gap:5px;min-height:0}.gd-joint-dock .modal-actions{position:sticky;bottom:calc(-1 * var(--sp-7));margin-bottom:calc(-1 * var(--sp-7));padding-block:14px calc(14px + var(--sp-7));background:var(--surface);border-top:1px solid var(--border);z-index:2}.gd-joint-dock .gd-joint-inspection-canvas{height:400px}.workflow-panel details>summary{cursor:pointer;color:var(--text);padding:5px 0}.workflow-panel button:focus-visible,.workflow-result:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:700px){.gd-joint-dock .gd-joint-inspection-canvas{height:300px}.workflow-dialog{padding:16px}}.address-notice{flex:0 0 auto;border-bottom:1px solid var(--ui-accent-edge);background:var(--ui-accent-tint);color:var(--text);font-size:var(--fs-sm)}.address-notice summary{cursor:pointer;padding:var(--sp-2) var(--sp-4)}.address-notice-content{padding:0 var(--sp-4) var(--sp-3);max-height:30vh;overflow:auto}.address-notice-content p{margin:0 0 var(--sp-2)}.address-notice-content ol{padding-left:var(--sp-5);margin:0 0 var(--sp-3)}.address-notice-content a{color:var(--accent);text-decoration:underline}@media print{.address-notice{display:none}}.origin-datum-label{color:var(--text);background:var(--surface);border:1px solid var(--ui-accent);border-radius:4px;padding:3px 5px;font:600 11px sans-serif}.component-move-inputs{padding:12px;display:grid;gap:8px;border-bottom:1px solid var(--border);font-size:var(--fs-sm)}.component-move-inputs label{display:grid;grid-template-columns:20px 1fr;align-items:center;gap:6px}.component-move-inputs p{margin:0;color:var(--text-dim)}.display-trigger{gap:5px}.display-current-style{padding-left:7px;border-left:1px solid var(--border);color:var(--text-muted);font-size:var(--fs-xs)}.display-panel{position:fixed;z-index:100;width:min(calc(388px * var(--ui-scale)),calc(100vw - 16px));display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);color:var(--text);box-shadow:var(--el-4);overflow:hidden;font-size:var(--fs-sm)}.display-panel:focus{outline:none}.display-header{display:flex;align-items:center;gap:6px;padding:10px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.display-header strong{font-size:var(--fs-md);margin-right:auto}.display-reset{font-size:var(--fs-xs)}.display-body{padding:0 14px;overflow-y:auto;overscroll-behavior:contain;min-height:0}.display-section{padding:12px 0;border-bottom:1px solid var(--border)}.display-section:last-child{border-bottom:0}.display-section h3{margin:0 0 8px;font-size:var(--fs-sm);font-weight:600;color:var(--text-muted)}.display-styles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.display-style{position:relative;cursor:pointer;min-width:0}.display-style input{position:absolute;opacity:0;width:1px;height:1px}.display-style>span{min-height:62px;padding:8px 2px;display:flex;gap:6px;align-items:center;justify-content:center;flex-direction:column;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2);text-align:center;line-height:1.3}.display-style input:checked+span{background:var(--ui-accent-tint);border-color:var(--ui-accent-edge);color:var(--accent)}.display-style:hover>span{border-color:var(--accent)}.display-style input:focus-visible+span,.display-switch-control input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.display-focus{padding:10px;margin-top:9px;border-radius:var(--r-md);background:var(--surface2)}.display-focus p{margin:0 0 8px;font-size:var(--fs-xs);line-height:1.5;overflow-wrap:anywhere;color:var(--text-muted)}.display-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;min-height:28px}.display-checkbox input{accent-color:var(--accent)}.display-switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;min-height:calc(33px * var(--ui-scale));border-radius:var(--r-sm);padding:3px 5px}.display-switch-row:hover{background:var(--surface2)}.display-switch-control{display:flex;align-items:center;gap:7px;position:relative;flex-shrink:0;color:var(--text-muted);font-size:var(--fs-xs)}.display-switch-control input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.display-switch-track{width:30px;height:18px;border-radius:20px;border:1px solid var(--text-dim);background:var(--surface2);padding:2px;pointer-events:none}.display-switch-track:after{content:"";display:block;height:12px;width:12px;border-radius:50%;background:var(--text-muted);transition:transform var(--dur-fast)}.display-switch-control input:checked+.display-switch-track{border-color:var(--accent);background:var(--ui-accent-tint)}.display-switch-control input:checked+.display-switch-track:after{transform:translate(12px);background:var(--accent)}.display-options{margin:3px 5px 9px 12px;padding:6px 0 6px 12px;border-left:2px solid var(--border)}.display-field{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,43%);gap:12px;align-items:center;min-height:calc(35px * var(--ui-scale))}.display-field>:last-child{min-width:0;width:100%}.display-field .prop-select{width:100%;max-width:none}.display-range{width:100%;accent-color:var(--accent)}.display-hint{font-size:var(--fs-xs);line-height:1.5;color:var(--text-muted);margin:5px 0}.display-disclosure{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;color:var(--text);background:none;border:0;font:inherit;font-weight:600;cursor:pointer;min-height:30px;padding:0 5px}.display-disclosure>.display-hint{display:flex;align-items:center;gap:8px;font-weight:400}.display-disclosure[aria-expanded=true] svg{transform:rotate(180deg)}.display-disclosure:focus-visible,.display-panel button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.display-measurements{border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.display-footer{flex-shrink:0;padding:8px 14px;border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--fs-xs)}:root[data-ui-mode=tablet] .display-switch-row,:root[data-ui-mode=tablet] .display-disclosure,:root[data-ui-mode=tablet] .display-field,:root[data-ui-mode=tablet] .display-checkbox{min-height:calc(44px * var(--ui-scale))}@media(max-width:600px){.display-current-style{display:none}}.move-panel{display:flex;flex-direction:column;color:var(--text);background:var(--surface);overflow:hidden;min-height:0}.move-panel header,.move-panel footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;flex-shrink:0}.move-panel header{border-bottom:1px solid var(--border)}.move-panel header>div{display:grid;gap:3px;min-width:0}.move-panel header span{color:var(--text-dim);font-size:var(--fs-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.move-panel-body{padding:12px;overflow:auto;overscroll-behavior:contain;min-height:0}.move-panel button,.move-panel select,.move-panel input{font:inherit;font-size:var(--fs-sm);color:var(--text);border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-raised);min-height:34px}.move-panel button{padding:6px 10px;cursor:pointer}.move-panel button:disabled{opacity:.45;cursor:default}.move-panel button[aria-pressed=true],.move-panel .move-apply{border-color:var(--ui-accent);background:var(--ui-accent-tint)}.move-panel :is(button,input,select,.move-pad):focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px}.move-axis-selector{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}.move-axis-selector button{padding:6px 2px}.move-pad{margin-top:10px;border:1px solid var(--border);border-radius:var(--r-md);min-height:76px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;touch-action:none;-webkit-user-select:none;user-select:none;cursor:ew-resize;background:var(--surface-raised)}.move-pad span,.move-feedback,.move-panel small{font-size:var(--fs-xs);color:var(--text-dim)}.move-nudge{display:flex;align-items:center;gap:8px;margin:8px 0 12px}.move-nudge span{flex:1;text-align:center;font-size:var(--fs-xs)}.move-deltas{display:grid;gap:6px}.move-centre{margin:6px 0 0;font-size:var(--fs-xs);color:var(--text-dim);font-variant-numeric:tabular-nums}.move-deltas label{display:grid;grid-template-columns:24px minmax(0,1fr) 18px;gap:8px;align-items:center;font-size:var(--fs-sm)}.move-deltas input{width:100%;box-sizing:border-box;padding:6px 8px;font-variant-numeric:tabular-nums}.move-entry-keys{display:flex;gap:4px;margin-top:6px}.move-entry-keys button{flex:1;padding:4px}.move-settings{display:grid;gap:8px;margin-top:12px}.move-settings>label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:var(--fs-xs)}.move-settings select{max-width:160px;padding:4px}.move-settings .move-check{justify-content:flex-start}.move-check input{min-height:0}.move-feedback{line-height:1.5;margin:10px 0 6px}.move-panel footer{border-top:1px solid var(--border)}.move-panel footer button{flex:1}.move-gizmo{overflow:visible;pointer-events:none;touch-action:none;-webkit-user-select:none;user-select:none}.move-axis{color:var(--axis-x);fill:currentColor;pointer-events:auto;cursor:grab}.move-axis[data-axis=Y]{color:var(--axis-y)}.move-axis[data-axis=Z]{color:var(--axis-z)}.move-axis:hover,.move-axis[data-active=true]{filter:drop-shadow(0 0 2px currentColor)}.move-axis text{font:600 12px system-ui;paint-order:stroke;stroke:var(--viewport-bg);stroke-width:3px;stroke-linejoin:round}.move-axis-hit{stroke:transparent;stroke-width:24px;pointer-events:stroke}.move-axis-line{stroke:currentColor;stroke-width:2px;pointer-events:none}.move-plane{fill:var(--ui-accent);fill-opacity:.14;stroke:var(--ui-accent);stroke-opacity:.65;stroke-width:1px;pointer-events:auto;cursor:move}.move-plane:hover,.move-plane[data-active=true]{fill-opacity:.35;stroke-opacity:1}.move-origin{fill:var(--surface);stroke:var(--text-dim);stroke-width:1.5px}.move-origin-link{stroke:var(--text-dim);stroke-width:1;stroke-dasharray:3 3}.move-gizmo [role=button]:focus-visible{outline:none;filter:drop-shadow(0 0 3px var(--ui-accent))}.sketch-drawing-dock{position:absolute;z-index:21;bottom:12px;left:50%;transform:translate(-50%);max-width:calc(100% - 24px);width:max-content;padding:10px;border:1px solid var(--sketch-edge);border-radius:var(--r-lg);background:var(--sketch-paper);box-shadow:var(--el-3);max-height:min(46vh,calc(100% - 24px));overflow-y:auto}.sketch-pattern-panel{max-width:640px;align-items:end}.sketch-pattern-panel .sketch-exact-field{margin-top:0}.sketch-pattern-panel .sketch-exact-field input{width:84px}.sketch-pattern-status[data-warning=true]{color:var(--ui-warning)}.sketch-step-guidance{font-size:var(--fs-md);color:var(--text);margin-bottom:8px}.sketch-drawing-actions,.sketch-precision-fields{display:flex;flex-wrap:wrap;gap:8px}.sketch-drawing-actions [aria-pressed=true]{background:var(--ui-accent-tint);border-color:var(--ui-accent-edge)}.sketch-exact-field{display:flex;align-items:end;flex-wrap:wrap;gap:6px;margin-top:8px}.sketch-exact-field label{display:flex;flex-direction:column;gap:4px;font-size:var(--fs-sm)}.sketch-exact-field input,.sketch-exact-field select,.sketch-exact-field textarea{width:110px;min-height:36px;padding:8px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);font:inherit}.sketch-exact-field select{width:auto}.sketch-exact-field textarea{width:200px;resize:vertical}.sketch-exact-field small{max-width:180px;color:var(--text-muted)}@media(max-width:900px){.sketch-context-actions .gd-btn:first-child,.sketch-context-title{display:flex}}.app-shell[data-tablet-layout=true] .sketch-drawing-dock{bottom:8px}.app-shell[data-tablet-layout=true] :is(.sketch-drawing-dock button,.sketch-drawing-dock input,.sketch-tool-button,.sketch-context-actions button,.sketch-inference-controls button,.sketch-inference-controls select){min-height:48px;min-width:48px}.app-shell[data-tablet-layout=true] .sketch-tool-button{font-size:var(--fs-sm)}.app-shell[data-tablet-layout=true] .sketch-tool-button span{display:inline}.sketch-drawing-dock{max-height:45%;overflow:auto}.tablet-extrude-palette{width:min(400px,calc(100% - 32px));padding:12px;border-color:var(--ui-accent-edge);background:var(--surface);max-height:calc(100% - 100px);overflow:auto}.tablet-extrude-grab{color:var(--text);font-size:var(--fs-md)}.tablet-extrude-toolbar{grid-template-columns:1fr 1fr;gap:8px}.tablet-extrude-profile{font-size:var(--fs-sm)}.tablet-extrude-toolbar select,.tablet-extrude-toolbar button{min-height:36px;font-size:var(--fs-sm);font-weight:500}.extrude-fx-toggle{margin:8px 0;padding:6px 0;background:transparent;border:0;color:var(--text-muted);font-size:var(--fs-sm);cursor:pointer}.extrude-field-heading{margin:8px 0;color:var(--text);font-size:var(--fs-sm)}.tablet-extrude-depth-row{grid-template-columns:44px minmax(100px,1fr) 44px;gap:8px}.tablet-extrude-depth-value strong{font-size:var(--fs-xl)}.tablet-extrude-depth-row .tablet-extrude-direction{grid-column:auto;font-size:var(--fs-sm)!important}.tablet-extrude-depth-row .tablet-extrude-direction:last-child{grid-column:2 / 4}.tablet-extrude-status{margin:12px 0;font-size:var(--fs-sm);line-height:1.5}.tablet-extrude-keypad{position:static;width:auto;margin-top:10px;box-shadow:none;background:var(--surface2);border-color:var(--border)}.tablet-extrude-actions{position:sticky;bottom:0;z-index:4;background:var(--surface);padding-block:6px}.tablet-extrude-actions button[data-variant=primary]{background:var(--ui-accent);border-color:var(--ui-accent-edge);color:var(--n-950)}.app-shell:not([data-tablet-layout=true]) .tablet-extrude-palette[data-dock=bottom]{left:auto;right:16px;bottom:16px;transform:none}.app-shell[data-tablet-layout=true] .tablet-extrude-palette :is(button,input,select){min-height:48px}@media(orientation:portrait){.tablet-extrude-palette{width:min(440px,calc(100% - 32px))}.tablet-extrude-toolbar{grid-template-columns:1fr 1fr}.tablet-extrude-toolbar button:last-child{display:block}}.extrude-direction-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.extrude-direction-row button{min-height:40px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);font-size:var(--fs-sm)!important;cursor:pointer}.tablet-extrude-palette[data-dock=bottom]{bottom:16px}.tablet-extrude-palette{max-height:calc(100% - 32px);box-sizing:border-box}.tablet-extrude-palette[data-keypad=true] .tablet-extrude-toolbar button,.tablet-extrude-palette[data-keypad=true] .extrude-fx-toggle{display:none}.tablet-extrude-palette .tablet-extrude-actions{flex-shrink:0}.tablet-extrude-depth-value{color:var(--text)!important}.gd-formula-input[data-inline-suggestions=true] .gd-formula-suggestions{position:static;width:100%;max-height:200px;margin:4px 0 8px;box-sizing:border-box}.tablet-extrude-palette .gd-formula-suggestions button{width:100%;min-height:40px;text-align:left}.app-shell[data-tablet-layout=true] .tablet-extrude-palette .gd-formula-suggestions button{min-height:48px}.extrude-autocomplete-hint{margin:6px 0 10px;color:var(--text-muted);font-size:var(--fs-xs);line-height:1.5}.tablet-extrude-formula .gd-formula-input{min-width:0}.packet-part-review{border-top:1px solid var(--n-750);padding:var(--sp-3) 0}.packet-part-review label{display:grid;gap:var(--sp-2)}.packet-part-review select,.packet-part-review button,select[aria-label="Cut extent"]{min-height:48px}.packet-part-review select{background:var(--surface);color:var(--text);border:1px solid var(--n-750);border-radius:var(--r-sm);padding:8px}.packet-part-review summary{min-height:32px;cursor:pointer;font-weight:600}.packet-part-review>button{margin:8px 0}.shop-packet-actions{position:sticky;bottom:0;background:var(--surface);z-index:2;padding:12px 18px;border-top:1px solid var(--border);flex-wrap:wrap;align-items:center}.shop-packet-error{flex:1 1 100%;margin:0;padding:8px 10px;color:var(--text);background:var(--ui-danger-tint);border-left:2px solid var(--ui-danger);font-size:var(--fs-xs);line-height:1.45;overflow-wrap:anywhere}.inspection-bar{flex:none;min-width:0;background:var(--surface);border-bottom:1px solid var(--border);padding:4px 12px;container-type:inline-size}.inspection-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:3px 0}.inspection-row strong{font-size:var(--fs-sm);min-width:92px}.inspection-slider{display:flex;align-items:center;gap:10px;flex:1 1 150px;min-width:100px;max-width:420px}.inspection-slider input{width:100%;min-width:60px;height:30px;accent-color:var(--ui-accent);touch-action:pan-y}.inspection-slider output{min-width:46px;font-variant-numeric:tabular-nums}.inspection-position{display:flex;align-items:center;gap:4px;width:120px}.inspection-position>:first-child{min-width:0;flex:1}.inspection-row select{width:58px}.inspection-badge{font-size:var(--fs-xs);color:var(--ui-accent)}.app-shell[data-tablet-layout=true] .inspection-row :is(button,input,select){min-height:44px}@media(pointer:coarse){.inspection-row :is(button,input,select){min-height:44px}}@container (max-width:560px){.inspection-row{gap:6px}.inspection-slider{order:2;flex-basis:100%;max-width:none}.inspection-row strong{margin-right:auto}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.inspection-position .gd-dimension-step{display:none}.group-inspector{padding:12px;display:flex;flex-direction:column;gap:12px}.group-inspector header,.group-member{display:flex;align-items:center;justify-content:space-between;gap:8px}.group-inspector header span,.group-inspector p{color:var(--text-dim);font-size:var(--fs-sm);line-height:1.5;margin:6px 0}.group-inspector label{display:flex;flex-direction:column;gap:6px;font-size:var(--fs-sm);margin:8px 0}.group-inspector details{border-top:1px solid var(--border);padding-top:12px}.group-inspector summary{cursor:pointer;font-weight:600}.group-actions{display:flex;flex-wrap:wrap;gap:6px}.group-member>:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis}.group-preview-actions{position:sticky;bottom:0;z-index:3;background:var(--surface);border:1px solid var(--ui-accent-edge);padding:10px;border-radius:var(--r-md)}.group-preview-actions button{margin-right:6px}.app-shell[data-tablet-layout=true] .group-inspector :is(button,select,input,summary){min-height:44px}.group-inspector .prop-input,.group-inspector .prop-select{width:100%;box-sizing:border-box}.group-inspector{gap:8px}.group-inspector [role=alert]{color:var(--ui-danger)}.group-actions .gd-btn{border:1px solid var(--border)}.group-edit-bar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-block:8px}.group-edit-bar span{flex:1 1 180px;font-size:var(--fs-sm)}.app-shell[data-tablet-layout=true] .group-edit-bar button{min-height:44px}.sketch-snap-crosshair:before,.sketch-snap-crosshair:after{content:"";position:absolute;background:var(--sketch-defined);transform:translate(-50%,-50%);left:0;top:0}.sketch-snap-crosshair:before{width:30px;height:1px}.sketch-snap-crosshair:after{width:1px;height:30px}.sketch-grid-datum{position:relative;padding:3px 6px;transform:translate(50%,-20px);white-space:nowrap;color:var(--sketch-defined);background:var(--surface);border:1px solid var(--sketch-defined);border-radius:3px;font:600 10px var(--font-mono)}.preferences-window{position:fixed;z-index:240;left:50%;top:50%;transform:translate(-50%,-50%);width:min(740px,calc(100vw - 24px));height:min(560px,calc(100dvh - 48px));display:flex;flex-direction:column;padding:0;overflow:hidden;color:var(--text);background:var(--surface);border:1px solid var(--n-700);border-radius:10px;font-size:max(13px,var(--fs-md));box-shadow:var(--el-inset),0 24px 70px #00000080}.preferences-window:focus{outline:none}.preferences-titlebar{display:flex;align-items:center;gap:8px;padding:6px 8px 6px 12px;background:var(--chrome-deep);border-bottom:1px solid var(--border);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.preferences-titlebar:active{cursor:grabbing}.preferences-titlebar svg:first-child{color:var(--text-muted)}.preferences-titlebar h2{flex:1;margin:0;font-size:var(--fs-md);font-weight:650}.preferences-layout{display:flex;flex:1;min-height:0}.preferences-layout nav{flex:0 0 150px;display:flex;flex-direction:column;gap:2px;padding:10px 8px;border-right:1px solid var(--border);background:var(--n-900);overflow:auto}.preferences-page{display:flex;align-items:center;min-height:34px;padding:6px 10px;border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--text-dim);font:600 var(--fs-sm) var(--font-sans);text-align:left;cursor:pointer}.preferences-page:hover{background:var(--surface2);color:var(--text)}.preferences-page[aria-current]{background:var(--ui-accent-tint);border-color:var(--ui-accent-edge);color:var(--accent)}.preferences-content{flex:1;min-width:0;overflow-y:auto;padding:16px 22px 22px}.preferences-content h3{margin:0 0 4px;font-size:var(--fs-lg)}.preferences-content h4{margin:20px 0 4px;color:var(--text-muted);font-size:var(--fs-sm)}.preference-blurb{margin:0 0 12px;color:var(--text-muted);font-size:var(--fs-sm);line-height:1.5}.preference-field{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:42px}.preference-field>span{flex:1}.preference-field select,.preference-field input[type=number]{width:170px;min-width:0;background:var(--surface-raised);color:var(--text);border:1px solid var(--border);border-radius:6px;min-height:34px;padding:5px 10px;font:inherit}.preference-field input[type=range]{width:170px;accent-color:var(--accent)}.preference-field input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}.preference-field [aria-invalid=true]{border-color:var(--ui-danger)}.preference-hint{color:var(--text-muted);line-height:1.55;margin:8px 0;font-size:var(--fs-sm)}.preferences-footer{display:flex;align-items:center;gap:12px;padding:10px 14px;border-top:1px solid var(--border);background:var(--n-900);color:var(--text-muted);font-size:var(--fs-xs)}.preferences-footer-note{flex:1;text-align:center}.preferences-footer-actions{display:flex;gap:6px}.preferences-footer .gd-btn{min-height:32px}.preferences-window .display-field{min-height:42px}.preferences-window .prop-select{min-height:34px;font-size:inherit}.preferences-shortcuts input[type=search]{width:100%;box-sizing:border-box;margin-bottom:6px}.preferences-shortcuts table{width:100%;border-collapse:collapse}.preferences-shortcuts td{padding:5px 4px;border-bottom:1px solid var(--n-750);font-size:var(--fs-sm);vertical-align:top}.preferences-shortcuts td:last-child{width:40%;text-align:right;color:var(--text-dim)}.preferences-shortcuts td small{color:var(--text-muted)}.preference-gesture{font-size:var(--fs-xs)}@media(max-width:600px){.preferences-window{width:calc(100vw - 16px);height:calc(100dvh - 16px)}.preferences-layout{flex-direction:column}.preferences-layout nav{flex:0 0 auto;flex-direction:row;flex-wrap:wrap;gap:4px;padding:8px;border-right:0;border-bottom:1px solid var(--border)}.preferences-page{flex:1;justify-content:center}.preferences-content{padding:14px}.preferences-footer{flex-wrap:wrap}}[data-ui-mode=tablet] .preferences-window{height:calc(100dvh - 24px)}[data-ui-mode=tablet] .preferences-window select,[data-ui-mode=tablet] .preferences-window input[type=number],[data-ui-mode=tablet] .preferences-footer .gd-btn,[data-ui-mode=tablet] .preferences-page{min-height:44px}.app-menu-strip{display:flex;align-self:stretch;align-items:center;flex:0 0 auto}.app-header-rule{flex:0 0 auto;width:1px;height:20px;margin:0 var(--sp-4);background:var(--n-700)}.app-brand{flex:0 0 auto}.workspace-tabs{display:flex;align-items:stretch;align-self:stretch;flex:0 1 auto;min-width:0}.workspace-tabs-list{display:flex;align-items:stretch;gap:2px;min-width:0}.workspace-tab{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:0;padding:0 13px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-dim);font:600 var(--fs-sm)/1 var(--font-sans);white-space:nowrap;cursor:pointer;transition:color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.workspace-tab svg{flex:0 0 auto}.workspace-tab:hover{background:var(--surface2);color:var(--text)}.workspace-tab[data-active=true]{color:var(--accent);background:var(--ui-accent-tint);border-bottom-color:var(--accent)}.app-menu-actions{flex:0 0 auto}.app-search-launch{gap:6px;min-width:164px;justify-content:flex-start;padding-inline:9px;border-color:var(--border);background:var(--surface2);color:var(--text-dim)}.app-search-launch:hover{border-color:var(--n-600)}.app-search-launch kbd{margin-left:auto}.app-save-text{white-space:nowrap}.app-drawer-toggle[data-active=true]{background:var(--ui-accent-tint);border-color:var(--ui-accent-edge);color:var(--accent)}@media(max-width:1340px){.app-search-launch{min-width:0}.app-search-launch span,.app-search-launch kbd{display:none}}@media(max-width:1000px){.app-brand>span{display:none}.workspace-tab{padding-inline:9px}}@media(max-width:760px){.workspace-tab svg{display:none}}.app-center{position:relative;display:flex;flex:1 1 auto;min-width:0;min-height:0}.tool-strip{--tb-w: calc(64px * var(--ui-scale));--tb-h: calc(50px * var(--ui-scale));position:relative;z-index:30;flex:0 0 auto;display:flex;background:var(--surface);-webkit-user-select:none;user-select:none}.tool-strip[data-orientation=vertical]{width:calc(2 * var(--tb-w) + 14px);flex-direction:column;border-right:1px solid var(--border)}.tool-strip[data-orientation=horizontal]{border-top:1px solid var(--border)}.tool-strip .ribbon-row{flex:1 1 0;min-width:0;min-height:0;padding:4px 6px;gap:3px}.tool-strip .ribbon-row[data-layout=rail]{flex-direction:column;align-items:stretch}.tool-strip .ribbon-row[data-layout=bar]{align-items:stretch;justify-content:center}.tool-strip .ribbon-row[data-layout=rail] .ribbon-panel{padding:4px 0 3px;border-right:0;border-bottom:1px solid var(--border)}.tool-strip .ribbon-row[data-layout=rail] .ribbon-panel:last-child{border-bottom:0}.tool-strip .ribbon-row[data-layout=bar] .ribbon-panel{padding:0 5px}.tool-strip .ribbon-buttons{display:grid;height:auto;gap:0}.tool-strip .ribbon-row[data-layout=rail] .ribbon-buttons{grid-template-columns:repeat(2,var(--tb-w));grid-auto-rows:var(--tb-h)}.tool-strip .ribbon-row[data-layout=bar] .ribbon-buttons{grid-auto-flow:column;grid-template-rows:repeat(2,var(--tb-h));grid-auto-columns:var(--tb-w)}.tool-strip .ribbon-button-cell{width:var(--tb-w)}.tool-strip .ribbon-button{width:var(--tb-w);height:100%;gap:3px;font-size:calc(10px * var(--ui-scale))}.tool-strip .ribbon-collapsed-button{width:var(--tb-w);height:var(--tb-h)}.tool-strip .ribbon-panel-more{justify-content:flex-start}.tool-strip .ribbon-panel-more .ribbon-button{height:var(--tb-h)}.tool-strip .ribbon-button>span{white-space:normal;overflow-wrap:normal;text-overflow:ellipsis;line-height:1.05;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.tool-strip .ribbon-caption{min-height:calc(20px * var(--ui-scale));margin-top:2px;padding-inline:8px}.tool-strip .ribbon-row[data-layout=rail] .ribbon-dropdown{top:0;left:calc(100% + 13px);margin-top:0}.tool-strip .ribbon-row[data-layout=rail]>.ribbon-panel:nth-last-child(-n+3) .ribbon-dropdown{top:auto;bottom:0}.tool-strip .ribbon-row[data-layout=bar] .ribbon-dropdown{top:auto;bottom:calc(100% + 6px);margin-top:0}.tool-strip .ribbon-row[data-layout=bar]>.ribbon-panel:nth-last-child(-n+2) .ribbon-dropdown{left:auto;right:0}.tool-strip .ribbon-row[data-layout=rail] .resize-snap-popover{top:0;left:calc(100% + 13px)}.tool-strip .ribbon-row[data-layout=bar] .resize-snap-popover{top:auto;bottom:calc(100% + 8px);left:0}.tool-strip .resize-snap-menu[data-variant=ribbon]{position:relative;height:100%}.tool-strip .resize-snap-menu[data-variant=ribbon]>summary{height:100%}.tool-strip .resize-snap-menu[data-variant=ribbon]>summary kbd{position:absolute;top:2px;right:3px;color:var(--accent);font:600 9px/1 var(--font-mono)}.tool-strip .ribbon-dropdown .resize-snap-menu[data-variant=ribbon]>summary{flex-direction:row;justify-content:flex-start;width:100%;height:auto;padding:6px 8px;gap:8px}.tool-strip .ribbon-dropdown .resize-snap-menu[data-variant=ribbon]>summary kbd{position:static;margin-left:auto}.resize-snap-menu{position:relative;flex:0 0 auto;display:flex;flex-direction:column}.resize-snap-menu>summary{list-style:none}.resize-snap-menu>summary::-webkit-details-marker{display:none}.resize-snap-popover{position:absolute;z-index:60;width:242px;padding:8px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2);box-shadow:var(--el-3);text-align:left}.resize-snap-popover-title{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:2px 3px 7px;border-bottom:1px solid var(--border);color:var(--text);font-size:var(--fs-sm);font-weight:650}.resize-snap-popover-title small{color:var(--accent3);font:600 var(--fs-2xs)/1 var(--font-sans)}.resize-snap-toggle,.resize-snap-select{min-height:31px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 4px;color:var(--text-dim);font-size:var(--fs-xs)}.resize-snap-select select{min-width:76px;height:24px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font:600 var(--fs-xs)/1 var(--font-mono)}.resize-snap-popover p{margin:6px 3px 1px;padding-top:7px;border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--fs-2xs);line-height:1.45}.view-nav{--view-button: 30px;position:absolute;z-index:14;left:calc(50% + (var(--canvas-inset-left, 0px) - var(--canvas-inset-right, 0px)) / 2);bottom:12px;transform:translate(-50%);display:flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--border);border-radius:var(--r-lg);background:color-mix(in srgb,var(--surface) 90%,transparent);box-shadow:var(--el-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.view-nav-rule{width:1px;height:18px;margin:0 2px;background:var(--border)}.view-nav-button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:var(--view-button);min-height:var(--view-button);border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--text-dim);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.view-nav-button:hover{background:var(--surface2);color:var(--text)}.view-nav-button:disabled{opacity:.38;cursor:not-allowed;background:transparent}.view-nav-button[data-active=true]{background:var(--ui-accent-tint);border-color:var(--ui-accent-edge);color:var(--accent)}.view-nav-projection{width:auto;padding:2px 6px 3px;font:600 9px/1 var(--font-sans)}.view-nav-dot{position:absolute;top:3px;right:3px;width:6px;height:6px;border-radius:50%;background:var(--accent)}.viewport-prompt{position:absolute;z-index:13;top:8px;left:50%;transform:translate(-50%);max-width:calc(100% - 250px - var(--canvas-inset-right, 0px));padding:5px 16px;border:1px solid var(--ui-accent-edge);border-radius:var(--r-full);background:color-mix(in srgb,var(--surface) 86%,var(--ui-accent));color:var(--text);font-size:var(--fs-md);font-weight:600;text-align:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none}.model-browser-header{height:calc(40px * var(--ui-scale));min-height:calc(40px * var(--ui-scale))}.project-panel-tablist{flex:0 0 auto;display:flex;gap:2px;margin:8px 8px 0;padding:2px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--n-900)}.project-panel-tab{flex:1 1 0;min-width:0;min-height:calc(28px * var(--ui-scale));display:flex;align-items:center;justify-content:center;gap:6px;padding:0 6px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--text-dim);font:600 var(--fs-xs)/1 var(--font-sans);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.project-panel-tab:hover{color:var(--text);background:var(--surface2)}.project-panel-tab[data-active=true]{color:var(--accent);background:var(--ui-accent-tint);border-color:var(--ui-accent-edge)}.project-panel-tab svg{flex:0 0 auto}.project-panel-tab span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-panel-tablist[data-count="3"] .project-panel-tab svg{display:none}.project-panel-tablist+*{margin-top:8px;border-top:1px solid var(--border)}.model-browser-panel[data-overlay=true]{position:absolute;z-index:45;top:0;bottom:var(--status-h);left:0;box-shadow:var(--el-4);border-bottom:1px solid var(--border)}.model-browser-expand,.inspector-expand-btn{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;padding:12px 0;border:0;background:var(--surface);color:var(--text-dim);cursor:pointer}.model-browser-expand{width:32px;border-right:1px solid var(--border)}.inspector-expand-btn{width:32px;border-left:1px solid var(--border)}.model-browser-expand:hover,.inspector-expand-btn:hover,.model-browser-expand[data-active=true],.inspector-expand-btn[data-active=true]{color:var(--accent);background:var(--surface2)}.model-browser-expand[data-active=true] svg,.inspector-expand-btn[data-active=true] svg{transform:rotate(180deg)}.model-browser-expand span,.inspector-expand-btn span{font:600 var(--fs-xs)/1 var(--font-sans);writing-mode:vertical-rl;transform:rotate(180deg)}.inspector-shell{position:relative;display:flex;flex-direction:column;min-height:0;background:var(--surface);border-left:1px solid var(--border)}.inspector-shell[data-placement=docked]{flex:0 0 auto;width:var(--props-w)}.inspector-shell[data-placement=overlay]{position:absolute;z-index:40;top:0;right:0;bottom:var(--status-h);width:var(--props-w);box-shadow:var(--el-4);border-bottom:1px solid var(--border)}.inspector-shell>:last-child{flex:1 1 auto;min-height:0;width:100%;border-left:0}.props-collapse-btn{position:absolute;z-index:10;left:-14px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:14px;height:44px;border:1px solid var(--border);border-right:none;border-radius:var(--r-md) 0 0 var(--r-md);background:var(--surface2);color:var(--text-dim);transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.props-collapse-btn:hover{background:var(--n-700);color:var(--text)}.move-panel[data-layout=dock]{flex:0 0 auto;max-height:72%;border-bottom:2px solid var(--ui-accent-edge)}.move-panel[data-layout=dock] header,.move-panel[data-layout=dock] footer{padding:9px 12px}.move-panel[data-layout=dock] .move-pad{min-height:60px}.move-settings:not([data-expanded=true]){display:none}.variables-dock{position:relative;z-index:10;flex:0 0 auto;display:flex;flex-direction:column;border-top:1px solid var(--border);background:var(--surface);color:var(--text);overflow:hidden}.variables-dock-content{flex:1;min-height:0;overflow:hidden}.variables-dock-content>.variables-panel{height:100%;box-sizing:border-box}.status-line{flex:0 0 auto;height:var(--status-h);display:flex;align-items:center;gap:12px;min-width:0;padding:0 6px 0 4px;border-top:1px solid var(--border);background:var(--surface);color:var(--text-dim);font-size:var(--fs-xs);white-space:nowrap;overflow:hidden}.status-dock-tabs{flex:0 0 auto;display:flex;align-items:center;gap:2px}.status-readout{flex:0 1 auto;display:flex;align-items:center;gap:14px;min-width:0;overflow:hidden}.status-item{flex:0 0 auto;display:flex;align-items:baseline;gap:5px;min-width:0}.status-item[data-grow=true]{flex:0 1 auto}.status-item b{overflow:hidden;color:var(--text);font:500 var(--fs-xs) var(--font-mono);text-overflow:ellipsis}.status-cursor{flex:0 0 auto;display:flex;gap:10px;padding-left:12px;border-left:1px solid var(--border)}.status-cursor .status-item b{min-width:6ch;text-align:right;font-variant-numeric:tabular-nums}.status-spacer{flex:1 1 0;min-width:0}.status-issues{flex:0 0 auto;display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:none;color:var(--ui-warning);font:600 var(--fs-xs) var(--font-sans);cursor:pointer}.status-issues[data-severity=error]{color:var(--ui-danger)}:root[data-ui-mode=tablet] .status-issues{align-self:stretch;min-height:44px;padding:0 10px}.status-save{flex:0 0 auto}.status-save[data-problem=true]{color:var(--ui-danger)}.status-dock-actions{flex:0 0 auto;display:flex;align-items:center;gap:2px}.status-dock-actions .gd-icon-btn{width:22px;height:22px}.dock-tab-meta{font-family:var(--font-mono)}.make-nav{display:flex;min-width:0;min-height:0;color:var(--text);font-size:var(--fs-sm)}.make-nav[data-orientation=vertical]{flex:1;flex-direction:column;gap:14px;padding:12px 8px;overflow:auto}.make-nav-group{display:flex;min-width:0}.make-nav[data-orientation=vertical] .make-nav-group{flex-direction:column;gap:2px}.make-nav h3{margin:0;padding:0 8px 4px;color:var(--text-muted);font-size:var(--fs-xs);font-weight:600}.make-nav-item{display:flex;align-items:center;gap:9px;min-width:0;min-height:calc(32px * var(--ui-scale));padding:0 9px;border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--n-200);font:500 var(--fs-sm)/1 var(--font-sans);text-align:left;white-space:nowrap;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.make-nav-item svg{flex:0 0 auto;color:var(--text-muted)}.make-nav-item>span{flex:1;overflow:hidden;text-overflow:ellipsis}.make-nav-item:hover{background:var(--surface2);color:var(--text)}.make-nav-item[aria-current=page]{background:var(--ui-accent-tint);border-color:var(--ui-accent-edge);color:var(--accent)}.make-nav-item[aria-current=page] svg{color:var(--accent)}.make-nav-count{flex:0 0 auto;min-width:18px;padding:1px 5px;border-radius:var(--r-full);background:var(--ui-warning);color:var(--n-950);font:700 var(--fs-2xs)/1.3 var(--font-mono);text-align:center}.make-nav-count[data-severity=error]{background:var(--ui-danger)}.make-nav-foot{margin-top:auto;padding-top:10px;border-top:1px solid var(--border)}.make-nav-foot p{margin:6px 9px 0;color:var(--text-muted);font-size:var(--fs-xs);line-height:1.45}.make-nav[data-orientation=horizontal]{flex:0 0 auto;flex-wrap:wrap;align-items:center;gap:4px 14px;padding:5px 8px;border-bottom:1px solid var(--border);background:var(--surface)}.make-nav[data-orientation=horizontal] .make-nav-group{flex:0 1 auto;flex-wrap:wrap;align-items:center;gap:4px}.make-nav[data-orientation=horizontal] .make-nav-item{flex:0 0 auto;margin:0}.app-shell[data-tablet-layout=true] .main-menu-bar{gap:4px!important;padding-inline:8px!important}.app-shell[data-tablet-layout=true] .app-brand{margin-right:2px!important}.app-shell[data-tablet-layout=true] .app-menu-strip{position:relative;z-index:1;overflow:visible}.app-shell[data-tablet-layout=true] .app-header-rule{margin-inline:var(--sp-2)}.app-shell[data-tablet-layout=true] .workspace-tab{min-height:var(--tap);padding-inline:10px}.app-shell[data-tablet-layout=true] .view-nav{--view-button: var(--tap);bottom:14px}.app-shell[data-tablet-layout=true] .status-dock-actions .gd-icon-btn{width:var(--tap);height:var(--tap)}.app-shell[data-tablet-layout=true] .dock-tab{min-height:calc(var(--tap) - 8px);padding-inline:12px}.app-shell[data-tablet-layout=true] .variables-dock{max-height:min(52svh,420px)}.app-shell[data-tablet-layout=true] .assembly-snap-suggestion{padding:9px 11px}.app-shell[data-tablet-layout=true] .make-nav-item,.app-shell[data-tablet-layout=true] .project-panel-tab{min-height:var(--tap)}.app-shell[data-tablet-layout=true] .model-browser-resize-handle{display:none}.tablet-surface-backdrop{position:absolute;z-index:60;inset:0;border:0;background:#0a080647;cursor:default}.app-shell[data-tablet-layout=true] .model-browser-panel[data-overlay=true]{z-index:70;bottom:0;width:min(340px,86%)!important;min-width:0!important;animation:tablet-surface-in-left var(--dur-slow) var(--ease-out)}.app-shell[data-tablet-layout=true] .inspector-shell[data-placement=docked]{width:min(calc(320px * var(--ui-scale)),38vw)}.app-shell[data-tablet-layout=true] .props-collapse-btn{left:-26px;width:26px;height:56px}.app-shell[data-tablet-layout=true] .inspector-expand-btn{width:var(--tap)}.tool-options-bar{flex:0 0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:8px 10px;border-top:2px solid var(--ui-accent-edge);background:var(--surface);color:var(--text)}.tool-options-title{display:grid;gap:2px;min-width:0;max-width:150px}.tool-options-title span{overflow:hidden;color:var(--text-dim);font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap}.tool-options-group{display:flex;align-items:center;gap:4px}.tool-options-group .prop-select{width:64px}.tool-options-group .prop-input{width:84px}.tool-options-note{order:2;flex:1 1 100%;min-width:0;margin:0;color:var(--text-dim);font-size:var(--fs-xs);line-height:1.4}.tool-options-done{margin-left:auto;border-color:var(--border)}.move-panel[data-layout=bar]{flex:0 0 auto;flex-direction:row;align-items:stretch;max-height:46%;border-top:2px solid var(--ui-accent-edge)}.move-panel[data-layout=bar] header{flex:0 0 auto;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;width:118px;border-bottom:0;border-right:1px solid var(--border)}.move-panel[data-layout=bar] header>div{width:100%}.move-panel[data-layout=bar] .move-panel-body{flex:1 1 auto;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px}.move-panel[data-layout=bar] .move-axis-selector{flex:0 0 auto;grid-template-columns:repeat(6,minmax(44px,1fr))}.move-panel[data-layout=bar] .move-pad{flex:1 1 150px;min-height:48px;margin:0;flex-direction:row;gap:10px}.move-panel[data-layout=bar] .move-nudge{flex:0 0 auto;margin:0;gap:4px}.move-panel[data-layout=bar] .move-nudge span{flex:0 0 auto;min-width:62px}.move-panel[data-layout=bar] .move-deltas{flex:0 1 auto;grid-auto-flow:column;grid-auto-columns:minmax(96px,128px)}.move-panel[data-layout=bar] .move-deltas label{grid-template-columns:auto minmax(0,1fr);gap:5px}.move-panel[data-layout=bar] .move-deltas label>span{display:none}.move-panel[data-layout=bar] .move-entry-keys{flex:0 0 auto;margin:0}.move-panel[data-layout=bar] .move-entry-keys button{min-width:44px}.move-panel[data-layout=bar] .move-settings{flex:1 1 100%;grid-auto-flow:column;justify-content:start;gap:14px;margin:0}.move-panel[data-layout=bar] .move-feedback{flex:1 1 100%;margin:0}.move-panel[data-layout=bar] small{display:none}.move-panel[data-layout=bar] footer{flex:0 0 auto;flex-direction:column;justify-content:center;gap:6px;width:132px;border-top:0;border-left:1px solid var(--border)}.move-panel[data-layout=bar] footer button{flex:0 0 auto;width:100%}:root[data-ui-mode=tablet] .move-panel button,:root[data-ui-mode=tablet] .move-panel select,:root[data-ui-mode=tablet] .move-deltas input{min-height:var(--tap)}.inspector-sheet{flex:0 0 auto;display:flex;flex-direction:column;min-height:0;border-top:1px solid var(--ui-accent-edge);background:var(--surface)}.inspector-sheet[data-stop=half]{height:44%;min-height:240px}.inspector-sheet[data-stop=full]{height:calc(100% - 264px);min-height:300px}.inspector-sheet-handle{position:relative;flex:0 0 auto;display:flex;align-items:center;gap:12px;min-height:calc(56px * var(--ui-scale));padding:10px 14px 6px;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer;touch-action:none}.inspector-sheet-handle>i{position:absolute;top:5px;left:50%;width:38px;height:4px;margin-left:-19px;border-radius:var(--r-full);background:var(--n-600)}.inspector-sheet-title{flex:1;min-width:0;display:grid;gap:2px}.inspector-sheet-title strong{overflow:hidden;font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap}.inspector-sheet-title small{overflow:hidden;color:var(--text-dim);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap}.inspector-sheet-title small[data-stock=true]{font-family:var(--font-mono)}.inspector-sheet-detail{flex:0 0 auto;color:var(--text-dim);font-size:var(--fs-sm)}.inspector-sheet-handle svg{flex:0 0 auto;color:var(--text-dim)}.inspector-sheet-body{flex:1 1 auto;min-height:0;display:flex;border-top:1px solid var(--border);overflow:hidden}.inspector-sheet-body>*{flex:1 1 auto;width:100%;min-width:0;border-left:0}.app-shell[data-tablet-layout=true][data-sketching=true] .workspace-tabs,.app-shell[data-tablet-layout=true][data-sketching=true] .app-header-rule,.app-shell[data-tablet-layout=true][data-sketching=true] .app-drawer-toggle{display:none}.app-shell[data-tablet-layout=true][data-sketching=true] .sketch-context-bar{top:8px;left:8px;right:8px;min-height:58px}.app-shell[data-tablet-layout=true][data-sketching=true] .sketch-tool-button{min-width:var(--tap);min-height:var(--tap)}@media(orientation:portrait){.app-shell[data-tablet-layout=true] .app-brand>span{display:none}.app-shell[data-tablet-layout=true] .app-history-action{display:none}.app-shell[data-tablet-layout=true] .model-browser-panel[data-overlay=true]{top:auto;right:0;width:100%!important;height:min(66%,620px);border-top:1px solid var(--ui-accent-edge);border-right:0;border-radius:var(--r-xl) var(--r-xl) 0 0;animation:tablet-surface-in-up var(--dur-slow) var(--ease-out)}.move-panel[data-layout=bar]{flex-direction:column;max-height:52%}.move-panel[data-layout=bar] header{flex-direction:row;align-items:center;width:auto;padding:8px 12px;border-right:0;border-bottom:1px solid var(--border)}.move-panel[data-layout=bar] header>div{width:auto;flex:1}.move-panel[data-layout=bar] .move-panel-body{overflow:auto}.move-panel[data-layout=bar] footer{flex-direction:row;width:auto;padding:8px 12px;border-left:0;border-top:1px solid var(--border)}.move-panel[data-layout=bar] footer button{flex:1;width:auto}}.prop-dimension{margin-bottom:9px}.prop-dimension-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:3px}.prop-dimension-head span{color:var(--text-dim);font-size:var(--fs-md)}.prop-dimension-head strong{color:var(--text);font:600 var(--fs-md) var(--font-mono);white-space:nowrap}.prop-dimension-entry{display:flex;gap:4px}.prop-dimension-entry .prop-input{flex:1 1 0;width:0;min-width:0;font-family:var(--font-mono);font-size:var(--fs-sm)}.prop-dimension-entry .prop-select{flex:0 0 auto;width:46px;padding-inline:6px 18px;background-position:right 4px center;color:var(--accent)}.prop-dimension-note{margin:2px 0 8px;color:var(--text-muted);font-size:var(--fs-xs);line-height:1.4}.prop-rotate-space{display:grid;grid-template-columns:minmax(0,1fr) 78px;gap:6px}.prop-rotate-space .gd-btn{min-width:0;padding-inline:6px}.prop-rotate-space .prop-select{width:100%}.prop-rotate-turns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.prop-rotate-turns .gd-btn{min-width:0;padding-inline:4px;gap:4px}.sketch-plane-panel{top:8px;left:calc(12px + var(--canvas-inset-left, 0px));right:calc(128px + var(--canvas-inset-right, 0px));transform:none;width:auto;padding:10px 12px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px 14px}.sketch-plane-copy{display:flex;flex-direction:column;gap:3px;margin:0}.sketch-plane-copy strong{font-size:var(--fs-lg);white-space:nowrap}.sketch-plane-copy>span:last-child{display:none}.sketch-plane-card{padding:7px 9px}.sketch-plane-foot{grid-column:1 / -1;margin-top:0}.sketch-context-bar{left:calc(12px + var(--canvas-inset-left, 0px));right:calc(12px + var(--canvas-inset-right, 0px))}@media(max-width:1180px){.sketch-plane-panel{grid-template-columns:minmax(0,1fr)}.sketch-plane-copy{flex-direction:row;align-items:baseline;gap:10px}}.app-shell[data-tablet-layout=true] .sketch-plane-panel{right:150px}.project-panel-tab{flex:1 1 auto}.status-line{container-type:inline-size}@container (max-width: 780px){.status-cursor{display:none}}@container (max-width: 680px){.status-item[data-rank="3"]{display:none}}@container (max-width: 540px){.status-item[data-rank="2"]{display:none}}.ribbon{position:relative;z-index:110;flex:0 0 auto;display:flex;flex-direction:column;background:var(--surface);border-bottom:1px solid var(--border);-webkit-user-select:none;user-select:none}.ribbon-tabs{display:flex;align-items:stretch;height:calc(27px * var(--ui-scale));padding:0 var(--sp-2);gap:1px;background:var(--chrome-deep);border-bottom:1px solid var(--border)}.ribbon-tabs .workspace-tab{padding:0 12px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.02em;border-bottom-width:2px}.ribbon-tabs .workspace-tab[data-active=true]{background:var(--surface);color:var(--accent);border-bottom-color:var(--accent)}.ribbon-tabs .workspace-tab[data-sketch]{color:var(--sketch-defined)}.ribbon-tabs .workspace-tab[data-sketch][data-active=true]{border-bottom-color:var(--sketch-defined)}.ribbon-tabs-spacer{flex:1 1 auto}.ribbon-fold{align-self:center;width:24px;height:22px}.ribbon-row{display:flex;align-items:stretch;min-height:calc(60px * var(--ui-scale));padding:2px var(--sp-2) 0;gap:3px;overflow:visible}.ribbon[data-collapsed=true][data-peek=true] .ribbon-row{position:absolute;left:0;right:0;top:100%;z-index:111;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--el-3)}.ribbon-panel{position:relative;display:flex;flex-direction:column;align-items:center;min-width:0;padding:0 5px;border-right:1px solid var(--border)}.ribbon-panel:last-child{border-right:0}.ribbon-buttons{display:flex;align-items:stretch;gap:0;height:calc(44px * var(--ui-scale))}.ribbon-button-cell{position:relative;display:flex;flex-direction:column;align-items:stretch;width:calc(64px * var(--ui-scale))}.ribbon-button-cell[data-family] .ribbon-button{height:calc(34px * var(--ui-scale))}.ribbon-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:calc(64px * var(--ui-scale));height:100%;padding:2px 2px 1px;border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--text-dim);font:500 var(--fs-2xs)/1.1 var(--font-sans);cursor:pointer;text-align:center;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.ribbon-button>span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ribbon-button svg{flex:0 0 auto;color:var(--text)}.ribbon-button:hover{background:var(--surface2);border-color:var(--border);color:var(--text)}.ribbon-button[data-active=true]{background:var(--ui-accent-tint);border-color:var(--ui-accent-edge);color:var(--accent)}.ribbon-button[data-active=true] svg{color:var(--accent)}.ribbon-button[data-command="edit.pass-through"][data-active=true]{background:color-mix(in srgb,var(--ui-danger) 14%,var(--surface));border-color:color-mix(in srgb,var(--ui-danger) 58%,var(--border));color:var(--ui-danger)}.ribbon-button[data-command="edit.pass-through"][data-active=true] svg{color:var(--ui-danger)}.ribbon-button:disabled{opacity:.38;cursor:not-allowed;background:transparent;border-color:transparent}.ribbon[data-tab=sketch] .ribbon-button[data-active=true]{background:var(--sketch-grid);border-color:var(--sketch-edge);color:var(--sketch-defined)}.ribbon[data-tab=sketch] .ribbon-button[data-active=true] svg{color:var(--sketch-defined)}.ribbon-icon-fallback{display:inline-grid;place-items:center;width:18px;height:18px;border:1px solid var(--border);border-radius:4px;font:700 var(--fs-2xs)/1 var(--font-mono)}.ribbon-collapsed-button{width:calc(54px * var(--ui-scale));gap:0}.ribbon-family-caret{display:flex;align-items:center;justify-content:center;height:calc(10px * var(--ui-scale));border:0;border-radius:3px;background:transparent;color:var(--text-muted);cursor:pointer}.ribbon-family-caret:hover{background:var(--surface2);color:var(--text)}.ribbon-caption{display:inline-flex;align-items:center;gap:3px;margin-top:1px;padding:1px 6px 2px;border:0;border-radius:3px;background:transparent;color:var(--text-muted);font:600 var(--fs-2xs)/1 var(--font-sans);cursor:pointer;white-space:nowrap}.ribbon-caption:hover,.ribbon-caption[aria-expanded=true]{background:var(--surface2);color:var(--text)}.ribbon-caption[data-finish]{color:var(--sketch-defined)}.ribbon-panel-more{justify-content:center}.ribbon-dropdown{position:absolute;z-index:130;top:100%;left:0;min-width:220px;max-height:calc(100dvh - var(--menu-h) - 120px);overflow-y:auto;margin-top:2px;padding:4px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-raised);box-shadow:var(--el-4)}.ribbon-row[data-layout=desktop]>.ribbon-panel:nth-last-child(-n+2) .ribbon-dropdown{left:auto;right:0}.ribbon-button-cell .ribbon-dropdown{top:100%}.ribbon-dropdown-group+.ribbon-dropdown-group{margin-top:4px;padding-top:4px;border-top:1px solid var(--border)}.ribbon-dropdown-label{padding:5px 8px 3px;color:var(--text-muted);font:600 var(--fs-2xs)/1 var(--font-sans)}.ribbon-dropdown-row{display:flex;width:100%;align-items:center;gap:8px;padding:6px 8px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--text-dim);font:var(--fs-sm) var(--font-sans);text-align:left;cursor:pointer;white-space:nowrap}.ribbon-dropdown-row svg{flex:0 0 auto;color:var(--text)}.ribbon-dropdown-row>span{flex:1 1 auto}.ribbon-dropdown-row:hover:not(:disabled){background:var(--ui-accent-tint);color:var(--text)}.ribbon-dropdown-row[data-active=true]{color:var(--accent)}.ribbon-dropdown-row:disabled{opacity:.42;cursor:default}.ribbon-dropdown-snap{padding:2px 4px}.ribbon .resize-snap-menu[data-variant=ribbon]{position:relative;height:100%}.ribbon .resize-snap-menu[data-variant=ribbon]>summary{list-style:none;height:100%}.ribbon .resize-snap-menu[data-variant=ribbon]>summary::-webkit-details-marker{display:none}.ribbon .resize-snap-menu[data-variant=ribbon]>summary kbd{position:absolute;top:2px;right:3px;color:var(--accent);font:600 9px/1 var(--font-mono)}.ribbon .resize-snap-menu[data-variant=ribbon] .resize-snap-popover{top:calc(100% + 6px);left:0}.ribbon-dropdown .resize-snap-menu[data-variant=ribbon]>summary{flex-direction:row;justify-content:flex-start;width:100%;height:auto;padding:6px 8px;gap:8px}.ribbon-dropdown .resize-snap-menu[data-variant=ribbon]>summary kbd{position:static;margin-left:auto}.document-tabs{display:flex;align-items:stretch;align-self:stretch;flex:1 1 auto;min-width:120px;max-width:48vw;margin-left:var(--sp-2);position:relative}.document-tab{position:relative;display:flex;align-items:center;gap:4px;min-width:0;margin-top:7px;padding:0 6px 0 10px;border:1px solid transparent;border-bottom:0;border-radius:var(--r-md) var(--r-md) 0 0;color:var(--text-dim);font:500 var(--fs-sm) var(--font-sans);cursor:pointer;-webkit-user-select:none;user-select:none}.document-tab:hover{background:var(--surface2);color:var(--text)}.document-tab[data-active=true]{background:var(--surface);border-color:var(--border);color:var(--text);font-weight:600;cursor:default}.document-tab-name{display:flex;align-items:center;flex:1 1 auto;min-width:0;overflow:hidden;white-space:nowrap}.document-tab-head{min-width:0;overflow:hidden;text-overflow:ellipsis}.document-tab-tail{flex:0 0 auto;white-space:pre}.document-tab-dirty{display:inline-block;width:6px;height:6px;margin-left:6px;border-radius:50%;background:var(--accent);vertical-align:middle}.document-tab-close{display:inline-grid;place-items:center;flex:0 0 auto;width:18px;height:18px;padding:0;border:0;border-radius:3px;background:transparent;color:var(--text-muted);cursor:pointer;opacity:0}.document-tab:hover .document-tab-close,.document-tab[data-active=true] .document-tab-close,.document-tab-close:focus-visible{opacity:1}.document-tab-close:hover{background:var(--n-700);color:var(--text)}.document-tab-rename{width:100%;min-width:0;box-sizing:border-box;padding:2px 5px;border:1px solid var(--ui-accent);border-radius:var(--r-sm);outline:none;color:var(--text);background:var(--n-800);font:inherit}.document-tab-new,.document-tabs-more>.gd-icon-btn{align-self:center;margin-left:2px}.document-tabs-more{position:relative;display:flex;align-items:center}.document-tabs-more>.gd-icon-btn{width:auto;padding:0 6px;font:600 var(--fs-xs) var(--font-mono)}.document-tabs-menu{position:absolute;top:100%;left:0;z-index:130;min-width:200px;padding:4px 0;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);box-shadow:var(--el-4)}.document-tabs[data-busy=true]{opacity:.7;pointer-events:none}@media(max-width:1000px){.document-tabs{max-width:36vw}}.sketch-palette{background:linear-gradient(150deg,var(--sketch-grid),transparent 60%)}.sketch-palette-linetype{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:8px}.sketch-palette-linetype button{min-height:28px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface2);color:var(--text-dim);font:600 var(--fs-xs) var(--font-sans);cursor:pointer}.sketch-palette-linetype button[data-active=true]{border-color:var(--sketch-edge);background:var(--sketch-grid);color:var(--sketch-defined)}.sketch-palette-linetype button:last-of-type[data-active=true]{color:var(--ui-warning);border-color:color-mix(in srgb,var(--ui-warning) 55%,var(--border));background:color-mix(in srgb,var(--ui-warning) 10%,var(--surface2))}.sketch-palette-linetype small{grid-column:1 / -1;color:var(--text-muted);font-size:var(--fs-2xs)}.sketch-palette-options{display:grid;grid-template-columns:1fr 1fr;gap:4px 10px}.sketch-palette-option{display:flex;align-items:center;gap:6px;min-height:26px;color:var(--text-dim);font-size:var(--fs-xs);cursor:pointer}.sketch-palette-option input{width:15px;height:15px;margin:0;accent-color:var(--sketch-defined)}.sketch-palette-actions{display:flex;gap:5px;margin-top:8px}.sketch-palette-actions .gd-btn{flex:1;justify-content:center}.sketch-dimension-entry{position:absolute;z-index:24;display:flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid var(--sketch-defined);border-radius:var(--r-md);background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:var(--el-3);color:var(--text);font:600 var(--fs-xs)/1 var(--font-sans)}.sketch-dimension-entry input{width:112px;padding:3px 6px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--text);font:600 var(--fs-sm)/1 var(--font-mono);text-align:right}.sketch-dimension-entry input[aria-invalid=true]{border-color:var(--ui-danger);color:var(--ui-danger)}.sketch-dimension-entry small{color:var(--text-muted);font-size:var(--fs-2xs)}.sketch-dimension-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border:1px solid color-mix(in srgb,var(--sketch-defined) 60%,var(--border));border-radius:var(--r-full);background:color-mix(in srgb,var(--surface) 90%,transparent);color:var(--sketch-defined);font:650 var(--fs-2xs)/1.2 var(--font-mono);white-space:nowrap;cursor:text;-webkit-user-select:none;user-select:none}.sketch-dimension-chip:hover{background:var(--sketch-grid)}.sketch-dimension-chip b{display:inline-grid;place-items:center;min-width:16px;height:14px;border:1px solid currentColor;border-radius:3px;font:700 9px/1 var(--font-mono)}.sketch-dimension-chip[data-driven]{border-style:dashed}.motion-panel{position:absolute;z-index:22;top:12px;left:12px;width:min(420px,calc(100% - 24px));max-height:60%;overflow:auto;display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid var(--n-750);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--el-inset),var(--el-3);font-size:var(--fs-sm)}.motion-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.motion-panel-row{display:flex;flex-wrap:wrap;align-items:end;gap:8px}.motion-panel-row input[type=range]{flex:1;min-width:160px}.motion-panel small{color:var(--text-dim)}.motion-panel[data-open=true] .motion-settings{display:none}.motion-result{margin:0;color:var(--ui-success)}.motion-result-hit{color:var(--ui-danger)}.app-shell[data-tablet-layout=true] .motion-panel button{min-height:48px}.sketch-dimension-grid.sketch-vertex-grid{grid-template-columns:1fr 1fr}.taper-section{display:flex;flex-direction:column;gap:6px}.taper-faces{display:grid;grid-template-columns:1fr 1fr;gap:4px 8px;font-size:var(--fs-xs);color:var(--text-dim)}.taper-faces label{display:flex;align-items:center;gap:5px}.sketch-linked-copies{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border);font-size:var(--fs-xs);color:var(--text-dim)}.sketch-linked-copies small{display:block;color:var(--text-muted)}.motion-panel .gd-btn[aria-pressed=true]{background:var(--ui-accent-tint);border-color:var(--ui-accent);color:var(--text)}.component-tree-row{user-select:none;-webkit-user-select:none}.app-shell:not([data-tablet-layout=true]) .tablet-extrude-palette[data-dock=bottom]{top:72px;bottom:auto}.tablet-extrude-formula select{width:100%;min-height:31px;box-sizing:border-box;padding:5px 7px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--text);font:600 var(--fs-xs)/1 var(--font-sans, inherit);color-scheme:dark light}.sketch-drawing-dock{width:min(420px,calc(100% - 24px));box-sizing:border-box}.sketch-drawing-dock .gd-btn[aria-pressed=true]{background:var(--ui-accent-tint);border-color:var(--ui-accent)}.motion-panel{z-index:45}.tablet-extrude-depth-value input{background:var(--surface);color:var(--text);border-color:var(--border)}.app-shell[data-phone=true] .app-brand>span{display:none}.app-shell[data-phone=true] .app-brand{margin-right:2px!important}.app-shell[data-phone=true] .app-header-rule,.app-shell[data-phone=true] .app-history-action,.app-shell[data-phone=true] .app-preferences-launch,.app-shell[data-phone=true] .app-help-launch{display:none}.app-shell[data-phone=true] .app-menu-actions{gap:var(--sp-2)!important}.app-shell[data-phone=true] .main-menu-bar{height:calc(var(--menu-h) + env(safe-area-inset-top,0px))!important;padding-top:env(safe-area-inset-top,0px)!important;padding-left:max(8px,env(safe-area-inset-left,0px))!important;padding-right:max(8px,env(safe-area-inset-right,0px))!important}.app-shell[data-phone=true] .status-line{height:calc(var(--status-h) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px)}.app-shell[data-phone=true] .tool-strip[data-orientation=vertical]{padding-left:env(safe-area-inset-left,0px)}.app-shell[data-phone=true] .inspector-shell[data-placement=docked]{padding-right:env(safe-area-inset-right,0px)}.app-shell[data-phone=true] :is(input:not([type=range]):not([type=checkbox]):not([type=radio]),select,textarea){font-size:max(16px,1em)}.workspace-menu{position:relative;display:flex;align-self:stretch;flex:0 1 auto;min-width:0}.workspace-menu-trigger{gap:6px}.workspace-menu-trigger svg{display:inline-block!important}.workspace-menu-list{min-width:220px;padding:4px 0;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);box-shadow:0 8px 32px #0009}.workspace-menu-item{display:grid!important;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;min-height:var(--tap);padding-block:6px}.workspace-menu-item>span{font-weight:600}.workspace-menu-item small{grid-column:2;color:var(--text-muted);font-size:var(--fs-xs)}.workspace-menu-item[aria-checked=true]{color:var(--accent);background:var(--ui-accent-tint)}.app-shell[data-phone=true] .make-nav[data-orientation=horizontal]{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.app-shell[data-phone=true] .make-nav[data-orientation=horizontal]::-webkit-scrollbar{display:none}.app-shell[data-phone=true] .make-nav[data-orientation=horizontal] .make-nav-group{flex:0 0 auto;flex-wrap:nowrap}.app-shell[data-phone=true] .make-cut-list-workspace{padding:6px}.app-shell[data-phone=true] .make-cut-list-workspace .cut-list-table th:first-child,.app-shell[data-phone=true] .make-cut-list-workspace .cut-list-table td:first-child{position:sticky;left:0;z-index:1;background:var(--surface)}.app-shell[data-tier=phone-portrait] .inspector-sheet-handle{min-height:calc(44px * var(--ui-scale));padding:8px 12px 4px}.app-shell[data-tablet-layout=false][data-tier=narrow][data-workspace=make] .ribbon-row{display:none}.workspace-menu>.gd-menu-dropdown{left:50%!important;transform:translate(-50%);max-width:calc(100vw - 16px)}.workspace-menu-list{max-width:calc(100vw - 16px)}.app-shell[data-phone=true]{overflow:hidden}.app-shell[data-phone=true] .status-line{gap:6px;padding:0 4px}.app-shell[data-phone=true] .dock-tab{padding-inline:8px}.gd-ad-layout{display:flex;flex-direction:column;width:100%;height:100vh;height:100dvh;background:var(--bg)}.gd-ad-workspace{flex:1 1 auto;min-width:0;min-height:0;position:relative;contain:layout}.gd-ad-workspace>.app-shell{height:100%!important;min-width:0}.gd-ad-rail{flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:20px;padding:16px;border-top:1px solid var(--border);background:var(--surface);color:var(--text-dim)}.gd-ad-heading{display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-size:var(--fs-xs)}.gd-ad-info{border:0;background:transparent;color:var(--text-dim);font:inherit;text-decoration:underline;cursor:pointer;padding:8px 0}.gd-ad-creative{width:728px;height:90px;flex:none;display:grid;place-items:center;border:1px dashed var(--border);background:var(--surface2);color:var(--text-dim);font-size:13px;text-align:center;pointer-events:none}.gd-ad-preview-note{display:block;margin-top:6px;font-size:11px}.gd-ad-layout[data-placement=rail]{flex-direction:row}.gd-ad-layout[data-placement=rail] .gd-ad-rail{width:192px;padding:16px;flex-direction:column;justify-content:flex-start;gap:20px;border-top:0;border-left:1px solid var(--border)}.gd-ad-layout[data-placement=rail] .gd-ad-heading{align-self:stretch}.gd-ad-layout[data-placement=rail] .gd-ad-creative{width:160px;height:600px}.gd-ad-layout[data-placement=compact] .gd-ad-rail{gap:6px;flex-direction:column;padding:6px 16px 10px}.gd-ad-layout[data-placement=compact] .gd-ad-heading{width:320px;flex-direction:row;align-items:center;justify-content:space-between;gap:8px}.gd-ad-layout[data-placement=compact] .gd-ad-info{min-height:32px;padding:4px 0}.gd-ad-layout[data-placement=compact] .gd-ad-creative{width:320px;height:50px}.gd-ad-layout[data-placement=compact] .gd-ad-preview-note{display:inline;margin-left:8px}.gd-ad-layout[data-placement=hidden] .gd-ad-rail{display:none}.gd-ad-layout:has([role=dialog],.tablet-surface-backdrop) .gd-ad-rail{visibility:hidden}@media print{.gd-ad-rail{display:none!important}.gd-ad-layout{display:block;height:auto}}
