:root{--z-hover-tip: 70;--z-dialog: 100;--z-dialog-confirm: 110;--z-dialog-top: 120;--z-field-spin: 130}.dialog-backdrop{position:fixed;inset:0;z-index:var(--z-dialog);display:grid;place-items:center;padding:22px;background:var(--g-scrim)}.dialog-backdrop.tier-confirm{z-index:var(--z-dialog-confirm)}.dialog-backdrop.tier-top{z-index:var(--z-dialog-top)}.dialog-panel.size-sm{max-width:520px}.dialog-panel.size-sm .dialog-body{display:grid;gap:13px;padding:16px 24px 22px}.dialog-panel{display:flex;flex-direction:column;overflow:hidden;width:100%;max-height:min(820px,calc(100vh - 44px));color:var(--g-text);background:var(--g-surface);border:1px solid var(--g-line-strong);border-radius:var(--g-radius-lg);box-shadow:var(--g-shadow-dialog)}.dialog-panel:focus-visible{outline:2px solid var(--g-focus);outline-offset:-3px}.dialog-panel.size-md{max-width:760px}.dialog-panel.size-lg{max-width:1080px}.dialog-panel.size-xl{max-width:1200px}.dialog-panel.tall{height:min(880px,calc(100vh - 44px));max-height:none}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex:none;padding:22px 24px 16px;border-bottom:1px solid rgba(255,255,255,.1)}.dialog-head-copy{min-width:0}.dialog-panel.dense .dialog-head{align-items:center;gap:16px;padding:13px 20px 12px}.dialog-panel.dense .dialog-head-copy{flex:1 1 auto}.dialog-panel.dense .dialog-head h2{margin:1px 0 0;font-size:15px}.dialog-panel.dense .dialog-head p{margin-top:3px;max-width:none;font-size:12px;line-height:1.4}.dialog-kicker{display:block;color:var(--g-text-dim);font-size:11px;font-weight:400}.dialog-head h2{margin:4px 0 6px;color:#fff;font-size:15px}.dialog-head p{max-width:75ch;color:#ffffffa8;font-size:13px;line-height:1.5}.dialog-close{width:32px;height:32px;flex:none;color:var(--g-text-dim);background:transparent;border:1px solid transparent;border-radius:var(--g-radius);cursor:pointer;font-size:19px;line-height:1}.dialog-close:hover{color:var(--g-text);background:var(--g-surface-2)}.dialog-backdrop.maximised{padding:12px}.dialog-panel.resizable{position:relative}.dialog-resize{position:absolute;z-index:5;touch-action:none}.dialog-resize.n,.dialog-resize.s{left:16px;right:16px;height:7px;cursor:ns-resize}.dialog-resize.n{top:0}.dialog-resize.s{bottom:0}.dialog-resize.e,.dialog-resize.w{top:16px;bottom:16px;width:7px;cursor:ew-resize}.dialog-resize.e{right:0}.dialog-resize.w{left:0}.dialog-resize.ne,.dialog-resize.nw,.dialog-resize.se,.dialog-resize.sw{width:16px;height:16px}.dialog-resize.ne{top:0;right:0;cursor:nesw-resize}.dialog-resize.sw{bottom:0;left:0;cursor:nesw-resize}.dialog-resize.nw{top:0;left:0;cursor:nwse-resize}.dialog-resize.se{bottom:0;right:0;cursor:nwse-resize}.dialog-resize.se:after{content:"";position:absolute;right:5px;bottom:5px;width:7px;height:7px;border-right:2px solid rgba(255,255,255,.32);border-bottom:2px solid rgba(255,255,255,.32);border-bottom-right-radius:var(--g-radius-sm)}.dialog-max{display:grid;place-items:center;width:32px;height:32px;flex:none;color:#ffffffc7;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:var(--g-radius-lg);cursor:pointer}.dialog-max:hover{color:#fff;background:#ffffff1f}.dialog-backdrop.docked{position:static;inset:auto;z-index:auto;display:flex;flex:1;min-width:0;min-height:0;padding:0;background:none;backdrop-filter:none}.dialog-backdrop.docked>.dialog-panel{flex:1;width:100%;height:100%;max-width:none;max-height:none;border:0;border-radius:0;box-shadow:none}.numeric-dialog .nd-body{display:flex;flex-direction:column;gap:12px;padding:4px 18px 18px;color:var(--g-text)}.numeric-dialog .nd-tabs{display:flex;gap:4px;border-bottom:1px solid var(--g-line);padding-bottom:2px}.numeric-dialog .nd-tab{appearance:none;border:0;background:transparent;color:var(--g-text-dim);font:inherit;font-size:13px;padding:7px 12px;border-radius:var(--g-radius) var(--g-radius) 0 0;cursor:pointer;border-bottom:2px solid transparent}.numeric-dialog .nd-tab:hover{background:var(--g-surface-2);color:var(--g-text)}.numeric-dialog .nd-tab.active{color:var(--g-text);border-bottom-color:var(--g-text);background:var(--g-surface-2)}.numeric-dialog .nd-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.numeric-dialog .nd-field{display:flex;flex-direction:column;gap:4px;min-width:0}.numeric-dialog .nd-field>span{font-size:11px;color:var(--g-text-dim)}.numeric-dialog .nd-field input,.numeric-dialog .nd-field select{font:inherit;font-variant-numeric:tabular-nums;padding:7px 9px;border-radius:var(--g-radius);border:1px solid var(--g-line);background:var(--g-well);color:var(--g-text);min-width:0}.numeric-dialog .nd-field input:disabled{opacity:.5}.numeric-dialog .nd-field input[type=range]{padding:0;border:0;background:transparent;accent-color:var(--g-accent)}.numeric-dialog .nd-field>span:has(.rf-value){display:flex;align-items:baseline;justify-content:space-between;gap:8px}.numeric-dialog .rf-value{color:var(--g-text);font-variant-numeric:tabular-nums;text-transform:none;letter-spacing:0;font-size:13px}.numeric-dialog .nd-check{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--g-text);cursor:pointer}.numeric-dialog .nd-check input{margin-top:2px;flex:none}.numeric-dialog .nd-anchor{display:flex;align-items:center;gap:12px}.numeric-dialog .nd-anchor-label{font-size:11px;color:var(--g-text-dim)}.numeric-dialog .nd-anchor-grid{display:grid;grid-template-columns:repeat(3,16px);grid-template-rows:repeat(3,16px);gap:4px}.numeric-dialog .nd-anchor-dot{appearance:none;border:1px solid var(--g-line);background:var(--g-well);border-radius:var(--g-radius-sm);padding:0;cursor:pointer}.numeric-dialog .nd-anchor-dot:hover{border-color:var(--g-line-strong)}.numeric-dialog .nd-anchor-dot.active{background:var(--g-accent);border-color:var(--g-accent)}.numeric-dialog .nd-facts{margin:0;padding:10px 12px;list-style:none;display:flex;flex-direction:column;gap:4px;border-radius:var(--g-radius);background:var(--g-surface-2);color:var(--g-text);font-size:13px;font-variant-numeric:tabular-nums}.numeric-dialog .nd-facts:empty{display:none}.numeric-dialog .nd-link{appearance:none;border:0;padding:0;background:none;font:inherit;color:var(--g-text);text-decoration:underline;cursor:pointer}.numeric-dialog .nd-note{margin:0;font-size:12px;line-height:1.45;color:var(--g-text-dim)}.numeric-dialog .nd-refusal{margin:0;padding:9px 11px;border-radius:var(--g-radius);border-left:3px solid var(--g-danger);background:var(--g-surface-2);color:var(--g-text);font-size:13px}.numeric-dialog .nd-warning{padding:9px 11px;border-radius:var(--g-radius);border-left:3px solid var(--g-warn);background:var(--g-surface-2);color:var(--g-text);font-size:13px}.numeric-dialog .nd-warning strong{display:block;margin-bottom:4px;font-weight:600}.numeric-dialog .nd-warning ul{margin:0;padding-left:16px;display:flex;flex-direction:column;gap:2px;color:var(--g-text-dim)}.numeric-dialog .nd-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.numeric-dialog .nd-body+.nd-actions{padding:0 18px 18px}.numeric-dialog .nd-btn{appearance:none;font:inherit;font-size:13px;padding:8px 14px;border-radius:var(--g-radius);border:1px solid transparent;background:var(--g-surface-2);color:var(--g-text);cursor:pointer}.numeric-dialog .nd-btn:hover:not(:disabled){border-color:transparent;background:var(--g-surface-3)}.numeric-dialog .nd-btn:disabled{opacity:.45;cursor:not-allowed}.numeric-dialog .nd-btn.primary{background:var(--g-accent);border-color:var(--g-accent);color:var(--g-accent-ink);font-weight:500}.numeric-dialog .nd-btn.primary:hover:not(:disabled){background:var(--g-accent-hover);border-color:var(--g-accent-hover);color:var(--g-text)}.dialog-backdrop.construct-dialog,.dialog-backdrop.parallel-dialog{place-items:start end;padding-top:72px;background:#00000024;backdrop-filter:none}.dialog-backdrop.construct-dialog{padding-right:0}.dialog-backdrop.construct-dialog>.dialog-panel{width:var(--g-inspector);max-width:var(--g-inspector);border-top-right-radius:0;border-bottom-right-radius:0}.dialog-backdrop.construct-dialog .nd-body{flex:1 1 auto;min-height:0;overflow-y:auto}.numeric-dialog.draw-entry .dialog-panel{max-width:340px}.numeric-dialog .de-pair{display:flex;align-items:center;gap:8px}.numeric-dialog .de-fields{display:flex;flex-direction:column;gap:10px;flex:1;min-width:0}.numeric-dialog .de-field{flex-direction:row;align-items:center;gap:10px}.numeric-dialog .de-field>span{flex:0 0 92px;text-align:right}.numeric-dialog .de-field input{flex:1;width:100%}.numeric-dialog .de-link{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;color:var(--g-text-dim);background:transparent;border:1px solid transparent;border-radius:var(--g-radius);cursor:pointer}.numeric-dialog .de-link svg{width:16px;height:16px}.numeric-dialog .de-link:hover,.numeric-dialog .de-link.on{color:var(--g-accent-text);border-color:var(--g-line)}.numeric-dialog.draw-entry-grid .dialog-panel{max-width:420px}.numeric-dialog .de-group{margin:0;padding:8px 12px 12px;border:1px solid var(--g-line);border-radius:var(--g-radius);min-width:0}.numeric-dialog .de-group>legend{padding:0 6px;font-size:12px;color:var(--g-text)}.numeric-dialog .de-field>.de-skew-slider{flex:1 1 auto;display:flex;flex-direction:column;gap:2px;min-width:0;text-align:left}.numeric-dialog .de-skew-ends{display:flex;justify-content:space-between;font-size:11px}.numeric-dialog .de-field.de-skew>input[type=number]{flex:0 0 72px;width:72px}.divide-dialog .nd-tab{white-space:nowrap;padding-inline:9px}.canvas-surface{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;margin-bottom:var(--g-glass-band)}.canvas-surface>#canvas-wrap{min-height:0;margin-bottom:0}:root{--workspace-tools-height: 43px}.workspace-tools{display:flex;flex:none;align-items:center;gap:12px;height:var(--workspace-tools-height);min-width:0;padding:2px 6px;overflow-x:auto;overscroll-behavior:contain;scrollbar-width:thin;background:var(--g-surface);border-bottom:1px solid rgba(255,255,255,.12);font-size:13px}.workspace-action{display:inline-flex;flex:none;align-items:center;gap:4px;min-width:28px;height:28px;min-height:28px;padding:0 5px;border:1px solid transparent;border-radius:var(--g-radius);background:var(--g-surface-2);color:var(--g-text);font:inherit;white-space:nowrap;cursor:pointer}.workspace-action svg{flex:none}.workspace-action:hover:not(:disabled),.workspace-action:focus-visible{border-color:transparent;background:var(--g-surface-3);outline:none}.workspace-action:disabled,.workspace-action[aria-disabled=true]{color:var(--g-text-dim);cursor:default}.workspace-action:disabled svg,.workspace-action[aria-disabled=true] svg{opacity:.6}.workspace-tools[data-compact=true] .workspace-action{width:28px;padding:0;gap:0;justify-content:center}.workspace-tools[data-compact=true] .workspace-action span{display:none}.gp-stats{display:flex;flex:none;gap:18px;flex-wrap:wrap;justify-content:flex-end;color:#fff9;font-size:11px;text-align:right}.gp-stats span{display:grid;gap:1px;line-height:1.25}.gp-stats strong{color:#fff;font-size:13px}.glass-palette .dialog-panel.dense .dialog-head-copy{flex:none}.gp-toolbar{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:6px;overflow-x:auto;scrollbar-width:thin}.gp-tool-group{flex:none;display:flex;align-items:center;gap:4px}.gp-tool-group+.gp-tool-group{margin-left:4px;padding-left:10px;border-left:1px solid rgba(255,255,255,.12)}.gp-tool-label{margin-right:2px;color:var(--g-text-dim);font-size:11px;font-weight:600;white-space:nowrap}.gp-tool{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;color:var(--g-text);background:var(--g-surface-2);border:1px solid transparent;border-radius:var(--g-radius);cursor:pointer;font:500 13px var(--g-font-ui);white-space:nowrap}.gp-tool svg{flex:none;width:15px;height:15px;color:inherit}.gp-tool:hover:not(:disabled){color:var(--g-text);background:var(--g-surface-3);border-color:transparent}.gp-tool:disabled{opacity:.45;cursor:default}.gp-main{flex:1;min-height:0;display:grid;grid-template-columns:290px minmax(0,1fr)}.gp-body{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 10px minmax(0,1fr)}.gp-rail{min-height:0;display:flex;flex-direction:column;gap:18px;padding:14px 14px 14px 16px;overflow-y:auto;border-right:1px solid rgba(255,255,255,.1)}.gp-rail-section{flex:none;display:grid;gap:8px}.gp-rail-heading{margin:0;color:#ffffff80;font-size:11px;font-weight:600}.gp-rail-glass{flex:1 1 auto;min-height:180px;display:flex;flex-direction:column}.gp-side-list{flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:4px}.gp-side{min-height:0;overflow:hidden;display:flex;flex-direction:column}.gp-stage-wrap{flex:1 1 auto;min-height:150px;min-width:0;display:flex}.gp-library-head h3{margin:0;color:#fff;font-size:12px}.gp-chosen{color:#ffffffb8;font-size:12px;line-height:1.45}.gp-pick{display:flex;flex-wrap:wrap;gap:4px}.gp-pick button{flex:1 1 auto;text-align:center;white-space:nowrap}.gp-pick-piece,.gp-scheme{width:100%;min-width:0;min-height:30px;padding:0 6px;color:var(--g-text);background:var(--g-surface-2);border:1px solid transparent;border-radius:var(--g-radius);font:500 13px var(--g-font-ui)}.gp-pick button,.gp-clear{min-height:29px;padding:0 10px;color:var(--g-text);background:var(--g-surface-2);border:1px solid transparent;border-radius:var(--g-radius);cursor:pointer;font:500 12px var(--g-font-ui);text-align:left}.gp-pick button:hover:not(:disabled),.gp-clear:hover:not(:disabled){color:#fff;background:var(--g-surface-3)}.gp-pick button:disabled,.gp-clear:disabled{opacity:.4;cursor:default}.gp-clear{text-align:center;color:var(--g-danger);background:var(--g-danger-soft);border-color:var(--g-danger-line)}.gp-clear:disabled{color:var(--g-text-dim);background:transparent;border-color:var(--g-line)}.gp-order button:hover:not(.on){color:var(--g-text);background:var(--g-surface-2)}.gp-inpanel{display:grid;gap:3px}.gp-scheme-mapping{display:grid;gap:8px;margin-bottom:12px;padding:8px;border:1px solid var(--g-line);border-radius:var(--g-radius)}.gp-scheme-mapping label{display:grid;gap:4px;color:var(--g-text);font-size:11px}.gp-scheme-mapping select{width:100%;min-width:0}.gp-inpanel-row-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px}.gp-code{display:grid;justify-items:center;gap:2px}.gp-code-label{color:#ffffff9e;font-size:11px}.gp-code input{width:42px;padding:3px 4px;border:1px solid rgba(255,255,255,.22);border-radius:var(--g-radius);background:#00000047;color:var(--g-text);font:inherit;font-size:11px;text-align:center;text-transform:uppercase}.gp-code input:focus{border-color:var(--g-accent);outline:none}.gp-inpanel-row{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;padding:6px;color:var(--g-text);background:transparent;border:1px solid transparent;border-radius:var(--g-radius);cursor:pointer;font:inherit;text-align:left}.gp-inpanel-row:hover{background:#ffffff12;border-color:#ffffff1f}.gp-inpanel-row>span{display:grid;gap:1px;min-width:0}.gp-inpanel-row strong{overflow:hidden;color:#fff;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.gp-inpanel-row span span{color:#ffffff8c;font-size:11px}.gp-inpanel-row .glass-swatch,.gp-bare-chip{width:34px;height:24px;border-radius:var(--g-radius);border:1px solid rgba(255,255,255,.2)}.gp-bare-chip{background:repeating-linear-gradient(45deg,rgba(255,255,255,.1),rgba(255,255,255,.1) 4px,transparent 4px,transparent 8px)}.gp-library{min-height:0;display:flex;flex-direction:column;gap:8px}.gp-library-head{display:flex;align-items:center;gap:12px;min-height:30px}.gp-library-head>span{color:#ffffff80;font-size:11px}.gp-samples{display:flex;align-items:center;gap:8px;margin-left:auto;color:#ffffffa8;font-size:12px}.gp-samples select{height:28px;padding:0 7px;border:1px solid var(--g-line);border-radius:var(--g-radius);background:#ffffff0f;color:var(--g-text)}.gp-filters{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 12px}.gp-card-wrap{position:relative}.gp-card-wrap>.gp-card{width:100%}.gp-card-edit{position:absolute;top:5px;left:5px;z-index:2;padding:2px 8px;color:#fff;background:#000000b8;border:1px solid rgba(255,255,255,.32);border-radius:var(--g-radius);cursor:pointer;font:500 11px var(--g-font-ui)}.gp-card-edit:hover{border-color:#ffffff80}.gp-search{min-height:33px;width:100%;color:var(--g-text);background:#ffffff12;border:1px solid rgba(255,255,255,.14);border-radius:var(--g-radius);padding:5px 10px;font:inherit;font-size:12px}.gp-kinds{display:flex;flex-wrap:wrap;gap:4px}.gp-kind{padding:5px 10px;color:var(--g-text-dim);background:transparent;border:1px solid transparent;border-radius:var(--g-radius);cursor:pointer;font:500 12px var(--g-font-ui)}.gp-kind:hover{color:var(--g-text)}.gp-kind:hover:not(.on){background:var(--g-surface-2)}.gp-kind.on{color:var(--g-text);background:var(--g-surface-3);border-color:transparent}.gp-kind-note{padding:8px 11px;color:#ffffffb8;background:var(--g-surface-2);border-left:3px solid var(--g-line-strong);border-radius:0 var(--g-radius) var(--g-radius) 0;font-size:12px;line-height:1.5}.gp-kind-note strong{color:#fff}.gp-families{flex:1;min-height:0;overflow-y:auto;padding-right:4px}.gp-family:first-child h4{margin-top:0}.gp-family h4{position:sticky;top:0;z-index:1;margin:7px 0 5px;padding:3px 0;color:#ffffff80;background:var(--g-surface);font-size:11px;font-weight:600}.gp-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:7px}.gp-card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;height:104px;padding:0;overflow:hidden;color:var(--g-text);background:var(--g-surface-2);border:1px solid var(--g-line);border-radius:var(--g-radius);cursor:pointer;font:inherit;text-align:left;content-visibility:auto;contain-intrinsic-size:116px 104px}.gp-card:hover{border-color:var(--g-line-strong)}.gp-card.worn,.gp-card.worn:hover{border-color:var(--g-accent);box-shadow:inset 0 0 0 1px var(--g-accent)}.gp-inpanel-row.worn,.gp-inpanel-row.worn:hover{border-color:var(--g-accent);background:var(--g-accent-soft)}.gp-card:hover .gp-card-copy{padding-bottom:8px}.gp-card .glass-swatch{position:absolute;inset:0;width:100%;height:100%;display:block}.gp-card-copy{position:relative;display:grid;gap:1px;min-width:0;padding:16px 8px 7px;background:linear-gradient(to top,#000000e0 42%,#0000008c 72%,#0000)}.gp-card-copy strong{overflow:hidden;color:#fff;font-size:11px;line-height:1.2;text-shadow:0 1px 2px rgba(0,0,0,.6);font-weight:500}.gp-card-copy>span{color:#ffffff9e;font-size:11px}.gp-card-badges{position:absolute;top:31px;right:5px;left:5px;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:3px}.gp-card-grain,.gp-card-used{padding:2px 5px;border-radius:var(--g-radius-sm);background:#0000009e;font-size:11px;font-weight:500;line-height:1.3;white-space:nowrap}.gp-card-grain,.gp-card-used{color:var(--g-text)}.gp-none{padding:14px 2px;color:#ffffff8c;font-size:12px}.gp-scheme-none{color:#ffffff8c;font-size:11px;line-height:1.45}.gp-scheme-bar{flex:none;display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:9px 20px;background:var(--g-surface-2);border-top:1px solid rgba(255,255,255,.1)}.gp-scheme-words{flex:1 1 320px;display:grid;gap:2px;min-width:0}.gp-scheme-say{color:#fff;font-size:13px;font-weight:500;line-height:1.4}.gp-scheme-caveat{color:#ffffffad;font-size:11px;font-weight:500;line-height:1.45}.gp-scheme-apply,.gp-scheme-cancel{flex:none;min-height:30px;padding:0 14px;border-radius:var(--g-radius);cursor:pointer;font:500 13px var(--g-font-ui)}.gp-scheme-apply{color:var(--g-accent-ink);background:var(--g-accent);border:1px solid var(--g-accent);border-color:var(--g-accent)}.gp-scheme-apply:hover:not(:disabled){background:var(--g-accent-hover)}.gp-scheme-apply:disabled{opacity:.45;cursor:default}.gp-scheme-cancel{color:var(--g-text);background:#ffffff12;border:1px solid rgba(255,255,255,.14)}.gp-scheme-cancel:hover{color:#fff;background:#ffffff1f}.gp-order{display:flex;gap:4px;min-width:0}.gp-order button{flex:0 1 auto;min-width:0;padding:5px 10px;color:var(--g-text-dim);background:transparent;border:1px solid transparent;border-radius:var(--g-radius);cursor:pointer;font:500 12px var(--g-font-ui);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gp-order button:hover:not(:disabled){color:#fff}.gp-order button.on{color:var(--g-text);background:var(--g-surface-3);border-color:transparent}.gp-order button:disabled{opacity:.45;cursor:default}.glass-palette{font-size:13px}.gp-body{gap:0;padding:12px;overflow:hidden}.gp-side{min-width:0;padding-right:8px}.gp-library{min-width:0;padding-left:8px}.gp-library>.own-glass{min-height:0;overflow-y:auto}.gp-stage-wrap{min-height:180px;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:var(--g-radius-lg)}.gp-library-head h3,.gp-chosen,.gp-inpanel-row strong,.glass-palette .gp-main input,.glass-palette .gp-main select,.glass-palette .gp-main button{font-size:13px}.gp-cards{grid-template-columns:repeat(auto-fill,minmax(128px,1fr))}.gp-card{height:144px;contain-intrinsic-size:128px 144px}.gp-card .glass-swatch{height:84px}.gp-card-copy{height:60px;flex:none;padding:6px 8px;align-content:center;background:var(--g-surface-2)}.gp-card:hover .gp-card-copy{padding-bottom:6px}.gp-card-copy strong{font-size:12px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.gp-card-copy>span,.gp-inpanel-row span span{font-size:12px}.gp-preview-loading{display:grid;place-items:center;width:100%;color:var(--g-text-dim);background:#0b0c0e}.gp-divider{position:relative;cursor:col-resize;touch-action:none}.gp-divider:after{content:"";position:absolute;top:50%;left:3px;width:3px;height:48px;margin-top:-24px;border-radius:var(--g-radius-sm);background:var(--g-line)}.gp-divider:hover:after,.gp-divider:focus-visible:after{background:var(--g-accent)}.gp-body[data-stacked=true]{display:flex;flex-direction:column;overflow-y:auto;gap:14px}.gp-body[data-stacked=true] .gp-side{flex:none;height:530px;padding:0}.gp-body[data-stacked=true] .gp-library{flex:none;min-height:450px;max-height:650px;padding:0}.gp-body[data-stacked=true] .gp-divider{display:none}@media(max-width:960px){.gp-main{display:flex;flex-direction:column;overflow-y:auto}.gp-rail{flex:none;overflow:visible;border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}.gp-rail-glass{flex:none;min-height:0}.gp-side-list{max-height:220px}.gp-main>.gp-body{flex:none;min-height:640px}}@media(max-width:700px){.gp-stats{display:none}}.gp-mine:not(:has(.gp-cards,.gp-mine-bulk)){display:none}.gp-mine-bulk{display:flex;flex-wrap:wrap;align-items:end;gap:8px;margin:0 0 10px}.gp-mine-bulk button{min-height:30px;padding:4px 10px;border:1px solid transparent;border-radius:var(--g-radius);background:var(--g-surface-2);color:var(--g-text);font:inherit;font-size:13px;cursor:pointer}.gp-mine-bulk button:hover:not(:disabled){border-color:transparent;background:var(--g-surface-3)}.gp-mine-bulk button.primary{color:var(--g-accent-ink);background:var(--g-accent);border-color:var(--g-accent);font-weight:500}.gp-mine-bulk label{display:grid;gap:4px;font-size:13px;color:var(--g-text-dim)}.gp-mine-bulk input,.gp-mine-bulk select{height:30px;padding:0 8px;border:1px solid var(--g-line);border-radius:var(--g-radius);background:#ffffff0f;color:var(--g-text);font:inherit;font-size:13px}.gp-mine-bulk input{width:96px}.gp-mine-progress{align-self:center;font-size:13px;color:var(--g-text)}.gp-card-tools{position:absolute;top:5px;left:5px;z-index:2;display:flex;gap:4px}.gp-card-tools .gp-card-edit{position:static}.gp-card-delete{display:grid;place-items:center;padding:2px 6px}.gp-card-delete svg{width:11px;height:11px}.gp-card-delete:hover{border-color:var(--g-danger-line)}.gp-card-reset,.gp-card-icon{display:grid;place-items:center;padding:2px 6px}.gp-card-reset svg,.gp-card-icon svg{width:11px;height:11px}.gp-tidy{padding:4px 18px 16px;font-size:13px;line-height:1.45}.gp-tidy p{margin:0 0 8px}.gp-tidy-groups{margin:0 0 4px;padding-left:18px;font-size:13px;line-height:1.45}.gp-tidy-refusal{color:var(--g-danger)}.gp-tidy-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.gp-tidy-actions button{min-height:32px;padding:5px 14px;border:1px solid transparent;border-radius:var(--g-radius);background:var(--g-surface-2);color:var(--g-text);font:inherit;font-size:13px;cursor:pointer}.gp-tidy-actions button.primary{color:var(--g-accent-ink);background:var(--g-accent);border-color:var(--g-accent);font-weight:500}.gp-tidy-actions button.danger{color:var(--g-danger);border-color:var(--g-danger-line)}.gp-piece-menu-title{display:flex;align-items:center;gap:8px;margin-bottom:4px;padding:5px 10px 8px;border-bottom:1px solid var(--g-line);color:var(--g-text-dim);font-size:12px;font-weight:600}.gp-piece-menu-title .glass-swatch{flex:none;width:24px;height:17px;border-radius:var(--g-radius-sm);border:1px solid var(--g-line)}.own-glass{display:flex;flex-direction:column;gap:12px;container-type:inline-size;container-name:own-glass;padding:10px 12px;border:1px solid var(--g-line);border-radius:var(--g-radius-lg);background:transparent}.own-glass label{display:grid;gap:4px;min-width:0;color:#fffc;font-size:13px}.own-glass input[type=text],.own-glass select{width:100%;min-width:0;min-height:32px;padding:5px 8px;color:var(--g-text);background:#ffffff12;border:1px solid rgba(255,255,255,.16);border-radius:var(--g-radius);font:inherit;font-size:13px}.own-glass input[type=color]{width:100%;height:32px;padding:2px;background:#ffffff12;border:1px solid rgba(255,255,255,.16);border-radius:var(--g-radius);cursor:pointer}.own-glass .own-glass-grain{display:flex;align-items:center;gap:6px;min-height:32px;color:#fffc;font-size:13px;cursor:pointer}.own-glass-actions{grid-column:1 / -1;display:flex;align-items:center;justify-content:flex-end;gap:8px}.own-glass-actions button{min-height:30px;padding:5px 12px;color:var(--g-text);background:var(--g-surface-2);border:1px solid transparent;border-radius:var(--g-radius);font:inherit;font-size:13px;cursor:pointer}.own-glass-actions button:hover{border-color:transparent;background:var(--g-surface-3)}.own-glass-actions button.primary{color:var(--g-accent-ink);background:var(--g-accent);border-color:var(--g-accent);font-weight:500}.own-glass-actions button.danger{color:var(--g-danger);border-color:var(--g-danger-line)}.own-glass-error{flex:1;margin:0;color:var(--g-danger);font-size:13px}.own-glass-layout{display:grid;grid-template-columns:minmax(160px,210px) minmax(0,1fr);gap:14px;align-items:start}.own-glass-fields{display:grid;grid-template-columns:70px minmax(0,1fr);gap:8px 10px;align-items:end}.own-glass-name{order:-1;grid-column:1 / -1}.own-glass-grain,.own-glass-optics,.own-glass-surface{grid-column:1 / -1}.own-glass-second{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}.own-glass .own-glass-second input[type=color]{flex:none;width:70px}.own-glass-optics{display:grid;gap:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.16)}.own-glass-optics-head,.own-glass-range>span{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}.own-glass-optics-head button,.own-glass-preview-controls button{min-height:28px;padding:4px 8px;border:1px solid transparent;border-radius:var(--g-radius);background:var(--g-surface-2);color:var(--g-text);font:inherit;font-size:13px;cursor:pointer}.own-glass-range output{font-variant-numeric:tabular-nums}.own-glass-range input{width:100%;height:24px;margin:0;accent-color:var(--g-accent)}.own-glass-preview{display:flex;flex-direction:column;gap:8px;min-width:0}.own-glass-stage{height:220px;border:1px solid rgba(255,255,255,.2);border-radius:var(--g-radius);overflow:hidden;background:var(--g-well)}.own-glass-preview-controls{display:flex;gap:6px}.own-glass-preview-controls select{flex:1;min-height:28px;padding:4px 6px}.own-glass-preview-loading,.own-glass-preview-fallback{display:grid;place-items:center;min-height:220px;font-size:13px}@container own-glass (max-width: 520px){.own-glass-layout{grid-template-columns:minmax(0,1fr)}.own-glass-stage{height:180px}}.own-glass-photo{grid-column:1 / -1;display:grid;gap:8px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.16)}.own-glass-photo-label{color:#fffc;font-size:13px}.own-glass-photo-row,.own-glass-photo-size{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.own-glass-photo-size{align-items:end}.own-glass-photo-size label{width:116px}.own-glass-photo-row button{min-height:30px;padding:4px 10px;border:1px solid transparent;border-radius:var(--g-radius);background:var(--g-surface-2);color:var(--g-text);font:inherit;font-size:13px;cursor:pointer}.own-glass-photo-row button:hover:not(:disabled){border-color:transparent;background:var(--g-surface-3)}.own-glass-photo-thumb{position:relative;flex:none;width:84px;overflow:hidden;border:1px solid rgba(255,255,255,.2);border-radius:var(--g-radius);background:#fff}.own-glass-photo-thumb img{display:block;width:100%;height:auto}.own-glass-photo-thumb svg{position:absolute;inset:0;width:100%;height:100%}.own-glass-photo-thumb polygon{fill:none;stroke:var(--g-select);stroke-width:2;filter:drop-shadow(0 0 1px rgba(0,0,0,.8))}.own-glass-photo-row button[aria-pressed=true]{border-color:transparent;background:var(--g-surface-3);color:var(--g-text)}.own-glass-photo-row button.own-glass-photo-thumb{width:64px;min-height:0;padding:0;border-color:var(--g-line-strong);background:#fff}.own-glass-photo-row button.own-glass-photo-thumb[aria-pressed=true]{border-color:var(--g-accent);box-shadow:0 0 0 1px var(--g-accent);background:#fff}.own-glass-photo-thumb[data-unused=true] img{opacity:.35}.own-glass-corners-block{display:grid;gap:6px}.own-glass-corners{position:relative;width:100%;max-height:340px;overflow:hidden;border:1px solid rgba(255,255,255,.2);border-radius:var(--g-radius);background:#fff;touch-action:none;user-select:none}.own-glass-corners img{display:block;width:100%;height:100%;object-fit:fill;pointer-events:none}.own-glass-corners svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.own-glass-corners-shade{fill:#0a0c1080;pointer-events:none}.own-glass-corners-edge{fill:none;stroke:var(--g-select);stroke-width:2;pointer-events:none}.own-glass-corner{fill:var(--g-select);stroke:#0b0c0e;stroke-width:2;cursor:grab}.own-glass-corner:active{cursor:grabbing}.own-glass-corner:focus-visible{outline:none;stroke:#fff;stroke-width:3}.own-glass-corner[aria-disabled=true]{cursor:progress;opacity:.6}.own-glass-corners-actions{display:flex;gap:6px}.own-glass-corners-actions button,.own-glass-link{min-height:30px;padding:4px 10px;border:1px solid transparent;border-radius:var(--g-radius);background:var(--g-surface-2);color:var(--g-text);font:inherit;font-size:13px;cursor:pointer}.own-glass-link{display:grid;place-items:center;width:32px;min-height:32px;padding:0}.own-glass-link svg{width:15px;height:15px}.own-glass-link.on{border-color:var(--g-line-strong);color:var(--g-accent-text)}.own-glass-photo-status{margin:0;color:var(--g-warn);font-size:13px}.own-glass[data-dropping=true]{outline:2px dashed var(--g-accent);outline-offset:2px}.own-glass input[type=color]:disabled{cursor:default}.photo-surface{display:grid;gap:8px;padding:10px;border:1px solid rgba(255,255,255,.16);border-radius:var(--g-radius)}.photo-surface-actions{display:flex;gap:8px;flex-wrap:wrap}.photo-surface button{min-height:30px;padding:4px 8px;font:inherit;font-size:13px;color:var(--g-text);background:var(--g-surface-2);border:1px solid transparent;border-radius:var(--g-radius);cursor:pointer}.photo-surface button[aria-pressed=true]{border-color:transparent;background:var(--g-surface-3);color:var(--g-text)}.photo-normal-preview{display:grid;gap:6px;justify-items:center}.photo-normal-preview canvas{display:block;max-width:100%;width:auto;height:150px;object-fit:contain;background:#8080ff;border-radius:var(--g-radius)}.photo-normal-preview span{font-size:13px;color:var(--g-text-dim)}.photo-arrange{display:grid;gap:8px;padding:10px;border:1px solid rgba(255,255,255,.16);border-radius:var(--g-radius)}.photo-arrange button{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:4px 8px;font:inherit;font-size:13px;color:var(--g-text);background:var(--g-surface-2);border:1px solid transparent;border-radius:var(--g-radius);cursor:pointer}.photo-arrange button[aria-pressed=true]{border-color:transparent;background:var(--g-surface-3);color:var(--g-text)}.photo-arrange button:disabled{opacity:.45;cursor:default}.photo-arrange-who{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}.photo-arrange-buttons{display:flex;flex-wrap:wrap;gap:6px}.photo-arrange-edge{margin:0;font-size:13px;color:var(--g-warn)}.own-glass-sides{display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px;min-height:32px;color:#fffc;font-size:13px}.own-glass-sides>span{margin-right:auto}.own-glass-sides label{display:flex;align-items:center;gap:5px;cursor:pointer}.gk-own{flex:none;display:grid;gap:6px;padding:10px 20px 0}.gk-own h4{margin:0;color:#ffffff8c;font-size:11px;font-weight:600}.gk-controls{flex:none;display:flex;align-items:center;gap:10px;padding:10px 20px 0}.gk-search{flex:1;min-width:0;padding:8px 11px;color:var(--g-text);background:#ffffff0f;border:1px solid rgba(255,255,255,.16);border-radius:var(--g-radius-lg);font:400 13px var(--g-font-ui)}.gk-search::placeholder{color:#ffffff6b}.gk-count{flex:none;color:#ffffffa8;font-size:11px}.gk-kinds{flex:none;display:flex;flex-wrap:wrap;gap:4px;padding:8px 20px 0}.gk-kind{padding:5px 10px;color:var(--g-text-dim);background:transparent;border:1px solid transparent;border-radius:var(--g-radius);cursor:pointer;font:500 12px var(--g-font-ui)}.gk-kind:hover{color:var(--g-text)}.gk-kind:hover:not(.on){background:var(--g-surface-2)}.gk-kind.on{color:var(--g-text);background:var(--g-surface-3);border-color:transparent}.gk-staged{flex:none;display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin:9px 20px 0;padding:7px 10px;color:#ffffffb8;background:var(--g-surface-2);border:1px solid var(--g-line);border-radius:var(--g-radius-lg);font-size:11px}.gk-staged>span:first-child{color:#fff9;font-weight:600;font-size:11px}.gk-staged-chip{display:inline-flex;align-items:center;gap:5px;padding:2px 8px 2px 3px;color:#fff;background:var(--g-surface-2);border:1px solid transparent;border-radius:var(--g-radius)}.gk-staged-chip .glass-swatch{width:18px;height:14px;border-radius:var(--g-radius-sm)}.gk-families{flex:1;min-height:0;overflow-y:auto;padding:4px 20px 8px}.gk-family:first-child h4{margin-top:0}.gk-family h4{position:sticky;top:0;z-index:1;margin:7px 0 5px;padding:3px 0;color:#ffffff80;background:var(--g-surface);font-size:11px;font-weight:600}.gk-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:7px}.gk-card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;height:104px;padding:0;overflow:hidden;color:var(--g-text);background:var(--g-surface-2);border:1px solid var(--g-line);border-radius:var(--g-radius);cursor:pointer;font:inherit;text-align:left;content-visibility:auto;contain-intrinsic-size:116px 104px}.gk-card:hover{border-color:var(--g-line-strong)}.gk-card.here{border-color:var(--g-accent);box-shadow:inset 0 0 0 1px var(--g-accent)}.gk-card .glass-swatch{position:absolute;inset:0;width:100%;height:100%;display:block}.gk-card-here{position:absolute;top:5px;right:5px;padding:2px 6px;color:var(--g-accent-ink);background:var(--g-accent);border-radius:var(--g-radius-sm);font:500 11px var(--g-font-ui)}.gk-card-copy{position:relative;display:grid;gap:1px;min-width:0;padding:16px 8px 7px;background:linear-gradient(to top,#000000e0 42%,#0000008c 72%,#0000)}.gk-card-copy strong{color:#fff;font-size:11px;line-height:1.2}.gk-card-copy>span{color:#ffffffb8;font-size:11px}.gk-none{margin:12px 0;color:#ffffffad;font-size:12px}.gk-foot{flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 20px 12px;border-top:1px solid rgba(255,255,255,.09);color:#ffffffb8;font-size:12px}.gk-library{flex:none;padding:7px 12px;color:var(--g-text);background:var(--g-surface-3);border:1px solid var(--g-line-strong);border-radius:var(--g-radius-lg);cursor:pointer;font:500 12px var(--g-font-ui)}.gk-library:hover{background:#424242}.gk-card{height:144px;contain-intrinsic-size:116px 144px}.gk-card .glass-swatch{height:84px}.gk-card-copy{height:60px;flex:none;padding:6px 8px;align-content:center;background:var(--g-surface-2)}.gk-card-copy strong{font-size:13px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.gk-card-copy>span{font-size:12px}.gk-own{min-height:0;overflow-y:auto;align-content:start}.gk-own-toggle{justify-self:start;min-height:28px;padding:3px 10px;border:1px solid transparent;border-radius:var(--g-radius);background:var(--g-surface-2);color:var(--g-text);font:inherit;font-size:13px;cursor:pointer}.gk-own:has(.own-glass){flex:1}#inspector.measure-panel{min-height:0;overflow-x:hidden;gap:14px;background:var(--g-surface)}#inspector.measure-panel>*{flex:none;min-width:0}.measure-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}#inspector .measure-heading h2{display:flex;align-items:center;gap:8px;border:0;padding:0;color:var(--g-text);font-size:13px;font-weight:600}.measure-snap{display:inline-flex;align-items:center;gap:4px;flex:none;color:var(--g-text-dim);font-size:13px;white-space:nowrap}.measure-snap[data-enabled=true] svg{color:var(--g-accent-text)}.measure-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:3px;border:1px solid var(--g-line);border-radius:var(--g-radius-lg);background:var(--g-well)}.measure-modes button{display:flex;align-items:center;justify-content:center;gap:4px;min-height:35px;padding:5px 2px;border:1px solid transparent;border-radius:var(--g-radius);background:transparent;color:var(--g-text-dim);font:500 13px var(--g-font-ui);cursor:pointer}.measure-modes button svg{flex:none}.measure-modes button:hover{color:var(--g-text);background:var(--g-surface-2)}.measure-modes button[aria-pressed=true]{background:var(--g-surface-3);color:var(--g-text)}.measure-modes button:focus-visible,.measure-actions button:focus-visible{outline:2px solid var(--g-focus);outline-offset:2px}.measure-reading{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-height:98px;padding:5px 0 13px;border-bottom:1px solid var(--g-line)}.measure-reading-label{color:var(--g-text-dim);font-size:13px;font-weight:500}.measure-reading-value{max-width:100%;color:var(--g-text);font:600 30px/1.15 var(--g-font-ui);letter-spacing:-.8px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;user-select:text}.measure-reading-state{color:var(--g-text-dim);font-size:13px}.measure-instruction{display:grid;grid-template-columns:23px minmax(0,1fr);align-items:start;gap:8px;min-height:65px}.measure-step{display:flex;align-items:center;justify-content:center;height:23px;border:1px solid var(--g-line);border-radius:50%;background:var(--g-surface-2);color:var(--g-text);font-size:13px;font-weight:600}.measure-instruction strong{display:block;margin:2px 0 5px;font-size:13px;font-weight:600}.measure-instruction p{color:var(--g-text-dim);font-size:13px;line-height:1.5}.measure-actions{position:relative;display:flex;flex-direction:column;gap:6px}.measure-actions button{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:36px;padding:7px;border:1px solid transparent;border-radius:var(--g-radius);font:500 13px var(--g-font-ui);cursor:pointer;background:var(--g-surface-2)}.measure-actions .measure-new{background:var(--g-accent);border-color:var(--g-accent);color:var(--g-accent-ink)}.measure-copy{background:transparent;color:var(--g-text)}.measure-copy:hover:not(:disabled){background:var(--g-surface-2)}.measure-copy:disabled{color:var(--g-text-dim);opacity:.45;cursor:default}.measure-copy-status{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.measure-details{display:flex;flex-direction:column;gap:8px;padding:13px 0;border-top:1px solid var(--g-line);border-bottom:1px solid var(--g-line);font-size:13px}.measure-details>div{display:flex;align-items:baseline;justify-content:space-between;gap:13px}.measure-details dt{flex:none;color:var(--g-text-dim)}.measure-details dd{text-align:right;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.measure-endpoints{display:flex;flex-direction:column;gap:13px}.measure-endpoints h3{margin-bottom:1px;color:var(--g-text-dim);font-size:13px;font-weight:600}.measure-endpoint{display:flex;align-items:center;gap:13px}.measure-endpoint-label{display:flex;align-items:center;justify-content:center;flex:none;width:23px;height:23px;border:1px solid var(--g-line);border-radius:var(--g-radius);background:var(--g-surface-2);color:var(--g-text);font-size:13px;font-weight:500}.measure-endpoint dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));flex:1;min-width:0;gap:8px}.measure-endpoint dl>div{display:flex;flex-direction:column;gap:3px;min-width:0;font-size:13px}.measure-endpoint dt{color:var(--g-text-dim);font-size:13px}.measure-endpoint dd{overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.measure-centreline{padding-top:13px;border-top:1px solid var(--g-line);color:var(--g-text-dim);font-size:13px;line-height:1.5}.measure-shortcuts{display:flex;flex-direction:column;gap:7px;color:var(--g-text-dim);font-size:13px}.measure-shortcuts>div{display:grid;grid-template-columns:39px minmax(0,1fr);align-items:center;gap:7px}.measure-shortcuts kbd{display:inline-flex;align-items:center;justify-content:center;min-width:32px;padding:2px 4px;border:1px solid var(--g-line);border-radius:var(--g-radius-sm);background:var(--g-surface-2);color:var(--g-text);font:13px var(--g-font-ui)}@media(max-height:760px){#inspector.measure-panel{gap:13px}.measure-reading{min-height:90px;padding-bottom:13px}.measure-instruction{min-height:58px}.measure-details{padding:13px 0;gap:7px}}.measure-targets{grid-template-columns:repeat(2,minmax(0,1fr))}.measure-object-reading{display:flex;flex-direction:column;gap:16px;padding:6px 0 16px;border-bottom:1px solid var(--g-line)}.measure-object-values{display:flex;flex-direction:column;gap:18px}.measure-object-values>div{display:flex;flex-direction:column;gap:5px}.measure-object-values dt{font-size:13px;color:var(--g-text-dim)}.measure-object-values dd{color:var(--g-text);font:600 24px/1.25 var(--g-font-ui);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;user-select:text}.motif-picker .nd-body{flex:1 1 auto;min-height:0;overflow:hidden}.motif-picker .motif-find{display:grid;gap:8px}.motif-picker .motif-search{width:100%;min-height:30px;padding:4px 10px;font:inherit;font-size:12px}.motif-picker .motif-subjects{display:flex;flex-wrap:wrap;gap:4px}.motif-picker .motif-subject{padding:4px 9px;color:var(--g-text-dim);background:transparent;border:1px solid transparent;border-radius:var(--g-radius);cursor:pointer;font:500 12px var(--g-font-ui)}.motif-picker .motif-subject:hover{color:var(--g-text)}.motif-picker .motif-subject:hover:not(.on){background:var(--g-surface-2)}.motif-picker .motif-subject.on{color:var(--g-text);background:var(--g-surface-3)}.motif-picker .motif-browse{display:grid;align-content:start;gap:16px;flex:1 1 auto;min-height:140px;overflow-y:auto;padding-right:4px}.motif-picker .motif-section-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.motif-picker .motif-section-head h3{flex:1;margin:0;color:var(--g-text-dim);font:600 12px var(--g-font-ui)}.motif-picker .motif-none{margin:0;color:var(--g-text-dim);font-size:12px}.motif-dialog .motif-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px}.motif-dialog .motif-pick{appearance:none;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 6px 6px;border:1px solid var(--g-line);border-radius:var(--g-radius);background:var(--g-bg);color:var(--g-text-dim);font:inherit;font-size:12px;cursor:pointer}.motif-dialog .motif-pick:hover{color:var(--g-text);background:var(--g-surface-2)}.motif-dialog .motif-pick.on{color:var(--g-text);border-color:var(--g-accent);box-shadow:inset 0 0 0 1px var(--g-accent)}.motif-dialog .motif-pick svg{width:56px;height:56px}.motif-dialog .motif-pick .motif-line path{fill:none;stroke:currentColor;stroke-width:1.4px}.motif-dialog .artwork-picture{display:flex;align-items:center;justify-content:center}.motif-dialog .artwork-picture svg{display:block;width:56px;height:56px}.save-motif-dialog .artwork-picture{padding:12px;border:1px solid var(--g-line);border-radius:var(--g-radius);background:var(--g-bg)}.save-motif-dialog .artwork-picture svg{width:100%;height:160px}.motif-import{position:relative;cursor:pointer;display:inline-flex;align-items:center}.motif-import input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.motif-rename{display:flex;align-items:end;gap:8px;margin-top:12px}.motif-rename .nd-field{flex:1;min-width:0}.motif-dialog .motif-own{position:relative;display:flex}.motif-dialog .motif-own .motif-pick{flex:1;min-width:0}.motif-dialog .motif-own .motif-pick span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.motif-dialog .motif-remove{position:absolute;top:3px;right:3px;width:20px;height:20px;padding:0;border:1px solid var(--g-line);border-radius:50%;background:var(--g-surface-2);color:var(--g-text-dim);font:inherit;font-size:13px;line-height:1;cursor:pointer}.motif-dialog .motif-remove:hover{color:var(--g-text)}.motif-dialog .motif-add{border-style:dashed;justify-content:center}.motif-dialog .motif-add input[type=file]{display:none}.motif-dialog .motif-add-mark{font-size:26px;line-height:56px;height:56px}.motif-dialog .lettering-preview{width:100%;height:72px;margin:4px 0}.motif-dialog .lettering-preview path{fill:none;stroke:var(--g-text);stroke-width:1.2px}.picture-dialog .picture-preview{display:flex;align-items:center;justify-content:center;height:min(40vh,340px);padding:8px;border:1px solid var(--g-line);border-radius:var(--g-radius);background:var(--g-surface-2);overflow:hidden}.picture-dialog .picture-preview img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.picture-dialog .picture-preview.ground-clear{background-color:#fff;background-image:conic-gradient(#d4d4d8 25%,#fff 0 50%,#d4d4d8 0 75%,#fff 0);background-size:16px 16px}.import-dialog{font-family:var(--g-font-ui, system-ui, sans-serif)}.import-dialog .id-content{display:contents}.import-dialog:has(.id-content.dragging) .dialog-panel{border-color:var(--g-accent);box-shadow:0 0 0 1px var(--g-accent),var(--g-shadow-dialog)}.import-dialog .id-spacer{flex:1}.import-dialog .id-file{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.import-dialog .id-btn{background:var(--g-surface-2);color:var(--g-text);border:1px solid transparent;border-radius:var(--g-radius);padding:6px 12px;font-size:12px;font-family:inherit;cursor:pointer}.import-dialog .id-primary{background:var(--g-accent);color:var(--g-accent-ink);border:1px solid var(--g-accent);border-radius:var(--g-radius);padding:7px 14px;font-size:12px;font-weight:500;font-family:inherit;cursor:pointer}.import-dialog .id-btn:disabled,.import-dialog .id-primary:disabled{opacity:.4;cursor:default}.import-dialog .id-drop{flex:none;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;margin:18px;padding:28px 22px;border:1px dashed var(--g-line);border-radius:var(--g-radius-lg);background:var(--g-surface)}.import-dialog .id-content.dragging .id-drop{border-color:var(--g-accent);border-style:solid}.import-dialog .id-drop-lead{font-size:13px}.import-dialog .id-busy{flex:none;margin:0 18px 18px;padding:10px 12px;background:var(--g-surface);border:1px solid var(--g-line);border-left:3px solid var(--g-line-strong);border-radius:var(--g-radius);font-size:12px}.import-dialog .id-error{flex:none;display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin:0 18px 18px;padding:10px 12px;background:var(--g-danger-soft);border-left:4px solid var(--g-danger);border-radius:var(--g-radius);font-size:12px}.import-dialog .id-error-head{font-weight:600}.import-dialog .id-error-msg{line-height:1.5;white-space:pre-wrap}.import-dialog .id-body{flex:1;min-height:0;display:flex;align-items:stretch}.import-dialog .id-preview-wrap{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px;padding:14px;border-right:1px solid var(--g-line)}.import-dialog .id-preview{flex:1;min-height:260px;display:flex;align-items:center;justify-content:center;background:var(--g-paper);border:1px solid var(--g-line);border-radius:var(--g-radius);padding:8px;overflow:hidden}.import-dialog .id-svg,.import-dialog .id-svg svg{width:100%;height:100%;display:block}.import-dialog .id-svg .face{fill:#fff;stroke:none}.import-dialog .id-preview-none{font-size:12px;color:var(--g-text-dim);text-align:center;padding:0 20px}.import-dialog .id-caption{font-size:11px;opacity:.6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-dialog .id-report{width:330px;flex:none;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:8px}.import-dialog .id-report h3{font-size:12px;font-weight:600;opacity:.75;border-bottom:1px solid var(--g-line);padding-bottom:4px;margin-top:4px}.import-dialog .id-warn{display:flex;flex-direction:column;gap:4px;padding:9px 10px;background:var(--g-warn-soft);border-left:4px solid var(--g-warn);border-radius:var(--g-radius);font-size:12px;line-height:1.5}.import-dialog .id-warn-head{font-weight:600}.import-dialog .id-facts{display:flex;flex-direction:column;gap:4px}.import-dialog .id-fact{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:12px}.import-dialog .id-fact .k{opacity:.7;min-width:0}.import-dialog .id-fact .v{font-variant-numeric:tabular-nums;font-weight:600;text-align:right;white-space:nowrap}.import-dialog .id-fact.lead .v{font-size:13px;color:var(--g-text)}.import-dialog .id-fact .u{font-weight:400;opacity:.6;margin-left:5px;font-size:11px}.import-dialog .id-skipped{display:flex;flex-direction:column;gap:6px}.import-dialog .id-skipped-head{font-size:12px;font-weight:600;color:var(--g-warn)}.import-dialog .id-skipped ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:3px}.import-dialog .id-skipped li{font-size:12px;padding:5px 8px;background:var(--g-warn-soft);border-left:3px solid var(--g-warn);border-radius:var(--g-radius-sm);font-variant-numeric:tabular-nums}.import-dialog .id-ok{font-size:12px;opacity:.75}.import-dialog .id-scale{display:flex;flex-direction:column;gap:4px;font-size:12px}.import-dialog .id-inline{display:flex;gap:6px}.import-dialog .id-inline input{flex:1;min-width:0;background:var(--g-surface-2);color:var(--g-text);border:1px solid var(--g-line);border-radius:var(--g-radius);padding:6px;font-size:13px;font-family:inherit}.import-dialog .id-scale-error{font-size:12px;color:var(--g-danger)}.import-dialog .id-foot{flex:none;display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--g-surface);border-top:1px solid var(--g-line)}@media(max-width:900px){.import-dialog .id-body{flex-direction:column}.import-dialog .id-report{width:auto}.import-dialog .id-preview-wrap{border-right:none;border-bottom:1px solid var(--g-line)}.import-dialog .id-foot{flex-wrap:wrap}}.id-assumptions{margin:4px 0 6px;padding-left:18px;display:flex;flex-direction:column;gap:3px}.new-panel .np-body{display:grid;grid-template-columns:222px minmax(0,1fr) 216px;gap:16px;height:min(520px,calc(100vh - 190px));min-height:340px;padding:4px 18px 0;color:var(--g-text)}.new-panel .np-shapes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:86px;gap:6px;align-content:start}.new-panel .np-shape{appearance:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:0;padding:6px 4px;border:1px solid var(--g-line);border-radius:var(--g-radius);background:var(--g-bg);color:var(--g-text-dim);font:inherit;font-size:11px;line-height:1.2;text-align:center;cursor:pointer}.new-panel .np-shape:hover{color:var(--g-text);background:var(--g-surface-2)}.new-panel .np-shape[aria-checked=true]{color:var(--g-text);border-color:var(--g-accent);box-shadow:inset 0 0 0 1px var(--g-accent)}.new-panel .np-shape svg{flex:none;width:44px;height:40px}.new-panel .np-shape path{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linejoin:round}.new-panel .np-middle{display:flex;flex-direction:column;gap:8px;min-width:0;min-height:0}.new-panel .np-stage{position:relative;flex:1;min-height:0;border-radius:var(--g-radius);background:var(--g-paper);overflow:hidden}.new-panel .np-stage svg{position:absolute;inset:0;display:block;width:100%;height:100%}.new-panel .np-stage.stale svg{opacity:.35}.new-panel .np-face{fill:var(--g-unassigned)}.new-panel .np-face.border{fill:color-mix(in srgb,var(--g-unassigned) 86%,var(--g-lead))}.new-panel .np-leads{fill:none;stroke:var(--g-lead);stroke-width:1.25px;stroke-linejoin:round}.new-panel .np-dim path{fill:none;stroke:var(--g-paper-ink);stroke-width:1px;opacity:.55}.new-panel .np-dim .np-springing{stroke-dasharray:3 3;opacity:.4}.new-panel .np-dim text{fill:var(--g-paper-ink);font-family:var(--g-font-ui);font-size:11px;font-variant-numeric:tabular-nums}.new-panel .np-said{display:flex;flex-direction:column;gap:4px;min-height:38px;font-size:12px;line-height:1.4}.new-panel .np-said p{margin:0}.new-panel .np-facts{color:var(--g-text-dim);font-variant-numeric:tabular-nums}.new-panel .np-warning,.new-panel .np-refusal{padding-left:8px;color:var(--g-text)}.new-panel .np-warning{border-left:3px solid var(--g-warn)}.new-panel .np-refusal{border-left:3px solid var(--g-danger)}.new-panel .np-fields{display:flex;flex-direction:column;gap:10px;min-width:0}.new-panel .np-choice{display:flex;gap:2px;padding:2px;border:1px solid var(--g-line);border-radius:var(--g-radius);background:var(--g-well)}.new-panel .np-choice button{appearance:none;flex:1;min-width:0;padding:5px 6px;border:0;border-radius:var(--g-radius-sm);background:transparent;color:var(--g-text-dim);font:inherit;font-size:12px;cursor:pointer}.new-panel .np-choice button:hover:not(:disabled){color:var(--g-text)}.new-panel .np-choice button[aria-pressed=true]{background:var(--g-surface-3);color:var(--g-text)}.new-panel .np-choice button:disabled{cursor:not-allowed;opacity:.45}.new-panel .np-foot{padding:14px 18px 18px}@media(max-width:880px){.new-panel .np-body{grid-template-columns:minmax(0,1fr);height:auto;overflow-y:auto}.new-panel .np-shapes{grid-template-columns:repeat(auto-fill,minmax(84px,1fr))}.new-panel .np-stage{flex:none;height:300px}}.workflow-tabs{display:flex;flex:none;align-items:center;gap:3px;height:34px;padding:3px;border:1px solid rgba(255,255,255,.12);border-radius:var(--g-radius-lg);background:#ffffff0a}.workflow-tab{display:inline-flex;align-items:center;gap:7px;height:100%;padding:0 16px;border:0;border-radius:var(--g-radius);background:transparent;color:var(--g-text);font:inherit;font-size:14px;font-weight:500;white-space:nowrap;cursor:pointer}.workflow-tab:hover,.workflow-tab:focus-visible{background:#ffffff14;outline:none}.workflow-tab.on{background:var(--g-surface-3);color:var(--g-text)}.workflow-tab.on:hover{background:var(--g-surface-3)}@media(max-width:1440px){.workflow-tab{gap:6px;padding:0 10px}}.command-menu{align-items:start;padding-top:max(22px,12vh)}.command-menu .dialog-panel{max-height:calc(88vh - 22px)}.command-menu .dialog-body{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:12px 16px 16px}.command-search{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--g-line-strong);border-radius:var(--g-radius);color:var(--g-text);background:var(--g-well)}.command-search input{flex:1;min-width:0;padding:2px;border:0;background:transparent;color:var(--g-text);font:inherit;font-size:13px;outline:none}.command-search input::placeholder{color:var(--g-text-dim);font-size:12px}.command-context,.command-footer{display:flex;justify-content:space-between;gap:12px;padding-block:10px;color:var(--g-text-dim);font-size:11px}.command-results{max-height:min(420px,48vh);min-height:80px;overflow-y:auto;overscroll-behavior:contain}.command-result{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;margin:3px 0;text-align:left;border:1px solid transparent;border-radius:var(--g-radius);background:transparent;color:var(--g-text);cursor:pointer}.command-result.is-active{border-color:transparent;background:var(--g-accent-soft)}.command-result-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.command-result-title{font-size:13px;font-weight:500}.command-result-detail,.command-result-reason{font-size:11px;line-height:1.45;color:var(--g-text-dim)}.command-result[aria-disabled=true]{cursor:default}.command-result[aria-disabled=true] .command-result-title{color:var(--g-text-dim)}.command-result-reason{color:var(--g-warn)}.command-result kbd{flex:none;padding:3px 6px;border:1px solid rgba(255,255,255,.15);border-radius:var(--g-radius-sm);color:var(--g-text-dim);font-size:11px}.command-empty{padding:20px 12px;color:var(--g-text-dim);font-size:13px}.command-footer{justify-content:flex-start;border-top:1px solid rgba(255,255,255,.1);padding-bottom:0}.command-footer span{display:flex;align-items:center;gap:5px}.vh-toolbar{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:14px 26px;background:#ffffff09;border-bottom:1px solid rgba(255,255,255,.08)}.vh-toolbar div{display:grid;gap:3px}.vh-toolbar strong{color:#fff;font-size:13px}.vh-toolbar span{color:#ffffff91;font-size:11px}.vh-checkpoint,.vh-version-actions button,.vh-restore-confirm button{min-height:34px;padding:0 11px;color:#ffffffdb;background:var(--g-surface-2);border:1px solid transparent;border-radius:var(--g-radius);cursor:pointer;font:inherit;font-size:12px;font-weight:500}.vh-checkpoint{color:var(--g-accent-ink);background:var(--g-accent);border-color:var(--g-accent)}.vh-list{display:grid;gap:1px;margin:0;padding:0;overflow:auto;list-style:none}.vh-version{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 26px;background:#ffffff06;border-bottom:1px solid rgba(255,255,255,.07)}.vh-version:hover{background:#ffffff0e}.vh-version-main{display:grid;gap:3px;min-width:0}.vh-version-main strong{color:#fff;font-size:13px}.vh-version-main>span:last-child{overflow:hidden;color:#ffffffa3;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.vh-kind{color:#ffffff8c;font-size:11px;font-weight:500}.vh-kind.checkpoint{color:var(--g-text)}.vh-version-actions,.vh-restore-confirm{display:flex;flex:none;align-items:center;justify-content:flex-end;gap:6px}.vh-version-actions .restore{color:#fff;background:var(--g-surface-3);border-color:transparent}.vh-restore-confirm{flex-wrap:wrap;max-width:310px}.vh-restore-confirm span{width:100%;color:var(--g-danger);font-size:11px;text-align:right}.vh-restore-confirm .danger{color:var(--g-danger);background:var(--g-danger-soft);border-color:var(--g-danger-line)}.vh-empty{display:grid;gap:5px;padding:42px 26px;color:#ffffffa6;text-align:center}.vh-empty strong{color:#fff;font-size:13px}.vh-empty span{font-size:12px}@media(max-width:620px){.dialog-backdrop.version-history{padding:12px}.vh-toolbar,.vh-version{padding-inline:17px}.vh-toolbar,.vh-version{align-items:flex-start;flex-direction:column}.vh-version-actions,.vh-restore-confirm{width:100%;justify-content:flex-start}.vh-restore-confirm span{text-align:left}}.ps-storage{margin:0;padding:12px 26px;color:#ffffff9e;font-size:11px;line-height:1.45;background:#ffffff09;border-bottom:1px solid rgba(255,255,255,.08)}.ps-empty{display:grid;gap:4px;padding:32px 26px;color:#ffffffa3;font-size:12px}.ps-empty strong{color:#fff;font-size:13px}.ps-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin:0;padding:18px 26px 24px;overflow:auto;list-style:none}.ps-card{display:grid;grid-template-rows:auto 1fr auto;gap:8px;min-width:0;padding:10px;background:var(--g-surface-2);border:1px solid var(--g-line);border-radius:var(--g-radius-lg)}.ps-card.current{border-color:var(--g-accent)}.ps-thumb{position:relative;display:grid;place-items:center;aspect-ratio:4 / 3;overflow:hidden;background:#00000047;border-radius:var(--g-radius)}.ps-thumb>div{position:absolute;inset:6px}.ps-thumb svg{display:block;width:100%;height:100%}.ps-thumb>span{color:#ffffff80;font-size:11px}.ps-facts{display:grid;gap:3px;min-width:0}.ps-facts strong{overflow:hidden;color:#fff;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.ps-facts span{color:#fff9;font-size:11px}.ps-actions,.ps-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.ps-confirm span{flex-basis:100%;color:#ffffffbf;font-size:11px}.ps-actions button,.ps-confirm button{min-height:30px;padding:0 10px;color:#ffffffdb;background:var(--g-surface-3);border:1px solid transparent;border-radius:var(--g-radius);cursor:pointer;font:inherit;font-size:12px;font-weight:500}.ps-actions .open{color:#fff;background:var(--g-surface-3);border-color:transparent}.ps-actions .danger,.ps-confirm .danger{color:var(--g-danger);border-color:var(--g-danger-line)}.ps-now{padding:0 4px;color:var(--g-accent-text);font-size:11px;font-weight:500}.shortcuts-overlay .so-columns{display:grid;grid-template-columns:1fr 1fr;gap:4px 28px;padding:18px 22px 20px;overflow-y:auto}.shortcuts-overlay h3{margin:14px 0 6px;color:#ffffff7a;font-size:11px;font-weight:600}.shortcuts-overlay dl{margin:0;display:grid;gap:5px}.shortcuts-overlay dl>div{display:flex;gap:10px;align-items:baseline}.shortcuts-overlay dt{flex:none;min-width:118px;color:var(--g-text);font-family:ui-monospace,monospace;font-size:11px;font-weight:500}.shortcuts-overlay dd{margin:0;color:#ffffffbd;font-size:12px;line-height:1.4}@media(max-width:700px){.shortcuts-overlay .so-columns{grid-template-columns:1fr}}.print-dialog .pd-sheets{display:flex;align-items:center;gap:14px;padding:10px 12px;border-radius:var(--g-radius);background:var(--g-surface-2)}.print-dialog .pd-sheets svg{width:120px;max-height:130px;flex:none}.print-dialog .pd-tiles-pattern{fill:#f1cc7517;stroke:#f1cc75bf;stroke-dasharray:6 4}.print-dialog .pd-tiles-page{fill:#ffffff0d;stroke:#ffffff6b}.print-dialog .pd-tiles-number{fill:#fff;font-weight:600}.print-dialog .pd-sheet-count{margin:0;font-size:13px;line-height:1.45;color:var(--g-text)}.print-dialog .pd-more{border-top:1px solid var(--g-line);padding-top:10px}.print-dialog .pd-more summary{font-size:13px;color:var(--g-text-dim);cursor:pointer}.print-dialog .pd-more[open] summary{margin-bottom:10px;color:var(--g-text)}.print-dialog .pd-more .nd-row+.nd-row,.print-dialog .pd-more .nd-row+.nd-note{margin-top:10px}.print-dialog .pd-hint{margin:0;font-size:13px;color:var(--g-text-dim)}.print-dialog .pd-link{appearance:none;border:0;padding:0;background:none;font:inherit;color:var(--g-text);text-decoration:underline;cursor:pointer}.print-dialog .pd-border select{font:inherit;padding:3px 6px;border-radius:var(--g-radius);border:1px solid var(--g-line);background:var(--g-well);color:var(--g-text)}#inspector .plan-panel{display:flex;flex-direction:column;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--g-line)}#inspector .plan-key{display:flex;flex-direction:column;gap:5px}#inspector .plan-key-row{display:grid;grid-template-columns:18px 42px minmax(0,1fr) auto;align-items:center;gap:8px;font-size:13px}#inspector .plan-swatch{width:18px;height:18px;border-radius:var(--g-radius-sm);border:1px solid var(--g-line-strong)}#inspector .plan-swatch.bare{background:repeating-linear-gradient(45deg,transparent 0 3px,var(--g-line-strong) 3px 5px)}#inspector .plan-key-row input{width:42px;padding:4px 6px;font-size:13px;font-weight:600;text-align:center}#inspector .plan-key-row input::placeholder{color:var(--g-text-dim);font-weight:600}#inspector .plan-key-letter{text-align:center;color:var(--g-text-dim)}#inspector .plan-key-name{min-width:0;margin:0 -4px;padding:3px 4px;border:0;border-radius:var(--g-radius-sm);background:none;color:var(--g-text);font:inherit;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}#inspector .plan-key-name:hover,#inspector .plan-key-name:focus-visible{background:var(--g-surface-2);outline:none}#inspector .plan-key-row.on .plan-key-name{background:var(--g-surface-3);color:var(--g-accent-text)}#inspector .plan-key-count{color:var(--g-text-dim);font-variant-numeric:tabular-nums}#inspector .plan-check{flex-direction:row;align-items:center;gap:8px;font-size:13px}#inspector .plan-panel-action,#inspector .plan-panel-print{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;border-radius:var(--g-radius);font:inherit;font-size:13px;cursor:pointer}#inspector .plan-panel-action{border:1px solid transparent;background:var(--g-surface-2);color:var(--g-text)}#inspector .plan-panel-print{border:1px solid transparent;background:var(--g-accent);color:var(--g-accent-ink);font-weight:500}#inspector .plan-panel-action:hover:not(:disabled),#inspector .plan-panel-action:focus-visible,#inspector .plan-panel-print:focus-visible{border-color:var(--g-line-strong);outline:none}#inspector .plan-panel-action:disabled,#inspector .plan-panel-print:disabled{opacity:.4;cursor:default}.document-properties .docp-body{flex:1 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:14px;padding:4px 18px 18px;color:var(--g-text)}.document-properties datalist{display:none}.document-properties .docp-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.document-properties .docp-field{display:flex;flex-direction:column;gap:4px;min-width:0}.document-properties .docp-wide{width:100%}.document-properties .docp-block{display:flex;flex-direction:column;gap:4px}.document-properties .docp-field>span{font-size:11px;color:var(--g-text-dim)}.document-properties .docp-field input,.document-properties .docp-field textarea{font:inherit;font-size:13px;padding:7px 9px;border-radius:var(--g-radius);border:1px solid var(--g-line);background:var(--g-well);color:var(--g-text);min-width:0;width:100%;box-sizing:border-box}.document-properties .docp-field textarea{resize:vertical;line-height:1.45}.document-properties .docp-field input:focus,.document-properties .docp-field textarea:focus{outline:none;border-color:var(--g-accent)}.document-properties .docp-field input::placeholder,.document-properties .docp-field textarea::placeholder{color:var(--g-text-dim);opacity:.85}.document-properties .docp-help{font-style:normal;font-size:12px;line-height:1.45;color:var(--g-text-dim)}.document-properties .docp-preview{display:flex;flex-direction:column;gap:8px;padding:11px 13px;border-radius:var(--g-radius);border:1px solid var(--g-line);background:var(--g-surface-2)}.document-properties .docp-preview h3{margin:0;font-size:11px;color:var(--g-text-dim);font-weight:600}.document-properties .docp-heading{display:flex;flex-direction:column;gap:3px;margin:0;padding-bottom:8px;border-bottom:1px solid var(--g-line)}.document-properties .docp-heading>span{font-size:15px;font-weight:600;color:var(--g-text);word-break:break-word}.document-properties .docp-heading>em{font-style:normal;font-size:12px;line-height:1.45;color:var(--g-text-dim)}.document-properties .docp-stamp{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:3px;font-size:13px;color:var(--g-text)}.document-properties .docp-stamp-note{color:var(--g-text-dim)}.document-properties .docp-preview-empty{margin:0;font-size:13px;line-height:1.5;color:var(--g-text-dim)}.document-properties .docp-note{margin:0;font-size:12px;line-height:1.5;color:var(--g-text-dim)}.document-properties .docp-note strong{color:var(--g-text);font-weight:600}.document-properties .docp-actions{flex:none;display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px 18px 16px;border-top:1px solid var(--g-line)}.document-properties .docp-state{margin-right:auto;font-size:12px;color:var(--g-text-dim)}.document-properties .docp-btn{appearance:none;font:inherit;font-size:13px;padding:8px 14px;border-radius:var(--g-radius);border:1px solid transparent;background:var(--g-surface-2);color:var(--g-text);cursor:pointer}.document-properties .docp-btn:hover:not(:disabled){border-color:transparent;background:var(--g-surface-3)}.document-properties .docp-btn:disabled{opacity:.45;cursor:not-allowed}.document-properties .docp-btn.primary{background:var(--g-accent);border-color:var(--g-accent);color:var(--g-accent-ink);font-weight:500}.document-properties .docp-btn.primary:hover:not(:disabled){background:var(--g-accent-hover);border-color:var(--g-accent-hover);color:var(--g-text)}.drawing-properties .dp-body{display:flex;flex-direction:column;gap:18px;padding:4px 18px 18px;color:var(--g-text)}.drawing-properties .dp-group{display:flex;flex-direction:column;gap:10px}.drawing-properties .dp-group h3{margin:0;font-size:11px;color:var(--g-text-dim);font-weight:600}.drawing-properties .dp-shapes{display:grid;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:10px}.drawing-properties .dp-shape{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:var(--g-radius);border:1px solid var(--g-line);background:var(--g-surface-2)}.drawing-properties .dp-shape-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.drawing-properties .dp-shape-head strong{color:var(--g-text);font-size:13px;font-weight:600}.drawing-properties .dp-shape-head span{color:var(--g-text-dim);font-size:11px;font-variant-numeric:tabular-nums}.drawing-properties .dp-preview{width:100%;height:78px;display:block}.drawing-properties .dp-preview path{fill:none;stroke:var(--g-accent-text);stroke-width:2.2;stroke-linejoin:round;vector-effect:non-scaling-stroke}.drawing-properties .dp-shape-fields{display:flex;flex-direction:column;gap:6px}.drawing-properties .dp-field{display:grid;grid-template-columns:minmax(0,1fr) 88px;align-items:center;gap:8px}.drawing-properties .dp-field>span{display:flex;align-items:baseline;gap:5px;font-size:12px;color:var(--g-text-dim);min-width:0}.drawing-properties .dp-field>span em{font-style:normal;font-size:11px;color:var(--g-text-dim);opacity:.85}.drawing-properties .dp-field input{font:inherit;font-size:13px;font-variant-numeric:tabular-nums;padding:6px 8px;border-radius:var(--g-radius);border:1px solid var(--g-line);background:var(--g-well);color:var(--g-text);min-width:0}.drawing-properties .dp-check{display:flex;align-items:flex-start;gap:9px;font-size:13px;color:var(--g-text);cursor:pointer}.drawing-properties .dp-check input{margin-top:2px;flex:none;accent-color:var(--g-accent)}.drawing-properties .dp-check span{display:flex;flex-direction:column;gap:2px}.drawing-properties .dp-check em{font-style:normal;font-size:12px;line-height:1.4;color:var(--g-text-dim)}.drawing-properties .dp-note{margin:0;font-size:12px;line-height:1.45;color:var(--g-text-dim)}.drawing-properties .dp-method{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:10px}.drawing-properties .dp-method-label{font-size:13px;color:var(--g-text)}.drawing-properties .dp-method-choice{display:flex;gap:6px;flex-wrap:wrap}.drawing-properties .dp-choice{appearance:none;padding:6px 11px;border-radius:var(--g-radius);border:1px solid var(--g-line);background:var(--g-surface-2);color:var(--g-text);font:inherit;font-size:12px;cursor:pointer}.drawing-properties .dp-choice:hover{border-color:var(--g-line-strong)}.drawing-properties .dp-choice.on{background:var(--g-surface-3);border-color:var(--g-line-strong);color:var(--g-text);font-weight:500}.drawing-properties .dp-lock{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 62px;align-items:center;gap:12px}.drawing-properties .dp-dial{width:58px;height:58px;justify-self:end}.drawing-properties .dp-dial-ring{fill:none;stroke:var(--g-line);stroke-width:1}.drawing-properties .dp-dial-spoke{stroke:var(--g-accent-text);stroke-width:1.4;stroke-linecap:round}.drawing-properties .dp-actions{display:flex;justify-content:flex-end;gap:8px;padding:0 18px 18px}.drawing-properties .dp-btn{appearance:none;padding:8px 15px;border-radius:var(--g-radius);border:1px solid transparent;background:var(--g-surface-2);color:var(--g-text);font:inherit;font-size:13px;cursor:pointer}.drawing-properties .dp-btn:hover{border-color:transparent;background:var(--g-surface-3)}.drawing-properties .dp-btn.primary{background:var(--g-accent);border-color:var(--g-accent);color:var(--g-accent-ink);font-weight:500}.split-workspace{flex:1;display:flex;min-width:0;min-height:0;container:split-workspace / inline-size}.split-workspace[data-preview=true]:not([data-stacked=true]) .workspace-tools{position:relative;z-index:3;width:100cqw}.split-workspace[data-preview=true]:not([data-stacked=true])>.split-preview-divider,.split-workspace[data-preview=true]:not([data-stacked=true])>.split-preview-pane{margin-top:var(--workspace-tools-height)}.split-preview-pane{display:flex;flex-grow:0;flex-shrink:0;min-width:0;min-height:0;overflow:hidden;background:var(--g-surface)}.split-preview-divider{position:relative;flex:0 0 7px;background:var(--g-surface);border-inline:1px solid rgba(255,255,255,.1);cursor:col-resize;touch-action:none}.split-preview-divider:after{content:"";position:absolute;inset:45% 2px;background:#ffffff4d;border-radius:var(--g-radius-sm)}.split-preview-divider:hover,.split-preview-divider:focus-visible{background:var(--g-accent);outline:none}.split-workspace[data-stacked=true]{flex-direction:column}.split-workspace[data-stacked=true]>#workspace{min-height:0}.split-workspace[data-stacked=true]>.split-preview-divider{cursor:row-resize;border-inline:0;border-block:1px solid rgba(255,255,255,.1)}.split-workspace[data-stacked=true]>.split-preview-divider:after{inset:2px 45%}.split-preview-loading{flex:1;display:grid;place-items:center;color:var(--g-text);font-size:12px}.window-sim-pane{display:flex;flex:1;flex-direction:column;min-width:0;min-height:0}.ws-pane-head{display:flex;flex:none;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.1)}.ws-pane-head h2{flex:1;margin:0;color:var(--g-text);font-size:13px;font-weight:600}.ws-pane-head button{display:grid;place-items:center;width:28px;height:28px;padding:0;border:1px solid transparent;border-radius:var(--g-radius);background:transparent;color:var(--g-text);cursor:pointer}.ws-pane-head button:hover{border-color:transparent;background:var(--g-surface-2)}.ws-pane-head button.ws-glass-settings{display:flex;gap:6px;align-items:center;width:auto;padding:0 10px;font:inherit;font-size:13px;white-space:nowrap}.window-sim-pane .ws-controls{flex:none;gap:8px;padding:10px 12px;max-height:45%;overflow-y:auto}.window-sim-pane .ws-group{flex-wrap:wrap;gap:5px}.window-sim-pane .ws-group>span{flex-basis:100%}.window-sim-pane .ws-group button{padding:5px 8px}.window-sim-pane .ws-spacer{display:none}.window-sim-pane .ws-absent{flex-basis:100%;flex-wrap:wrap}.window-sim-pane .ws-status{padding:8px 10px;font-size:11px}.split-workspace[data-stacked=true] .window-sim-pane{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,42%);grid-template-rows:auto minmax(0,1fr)}.split-workspace[data-stacked=true] .ws-pane-head{grid-column:1 / -1}.split-workspace[data-stacked=true] .ws-controls{min-height:0;max-height:none;align-content:start;border-top:0;border-left:1px solid rgba(255,255,255,.1)}#workspace.colourway-workspace{flex-direction:column;min-height:0}#workspace.colourway-workspace>.canvas-surface{min-height:0}.colourway-bar{display:flex;flex:none;align-items:center;flex-wrap:nowrap;gap:6px;padding:0;color:var(--g-text);font-size:inherit}.colourway-bar label{font-weight:600;margin-right:0;color:var(--g-text-dim)}.colourway-bar select{flex:none;width:auto;min-width:90px;max-width:180px;height:28px;min-height:28px;border:1px solid transparent;border-radius:var(--g-radius);padding:2px 5px;background:var(--g-surface-2);color:inherit;font:inherit;field-sizing:content}.colourway-name form{display:flex;flex-direction:column;gap:10px}.colourway-name input{width:100%}.cw-name-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:8px}.cw-status{display:inline-flex;align-items:center;justify-content:center;width:18px;flex:none;color:var(--g-text-dim)}.cw-status.is-dirty{color:var(--g-warn)}.cw-name-actions .primary{background:var(--g-accent);color:var(--g-accent-ink)}.cw-error{margin:0;color:var(--g-warn);font-size:12px}:root{--g-bg: #1b1b1b;--g-surface: #242424;--g-surface-2: #2e2e2e;--g-surface-3: #383838;--g-well: #1a1a1a;--g-line: #333333;--g-line-strong: #454545;--g-text: #e6e6e6;--g-text-dim: #a8a8a8;--g-scrim: rgba(0, 0, 0, .55);--g-accent: #2b6de6;--g-accent-hover: #245fcf;--g-accent-ink: #ffffff;--g-accent-text: #7aa8ff;--g-accent-soft: rgba(43, 109, 230, .22);--g-focus: #7aa8ff;--g-warn: #e8b64c;--g-warn-soft: rgba(232, 182, 76, .14);--g-warn-line: rgba(232, 182, 76, .45);--g-danger: #f07a7a;--g-danger-soft: rgba(240, 122, 122, .14);--g-danger-line: rgba(240, 122, 122, .45);--g-ok: #5fbf8a;--g-paper: #f3f1ec;--g-paper-ink: #2c2a35;--g-lead: #14141f;--g-grid-minor: #c9c6bd;--g-grid-major: #b3afa3;--g-piece-number: #3c3a4d;--g-paper-halo: rgba(243, 241, 236, .85);--g-grain: #8a8798;--g-handle: #fff;--g-handle-ink: #14141f;--g-mark-warn: #e9c46a;--g-mark-danger: #e63946;--g-snap-node: #2a9d8f;--g-mark-graph: #2a9d8f;--g-select: #2b6de6;--g-pen: #2b6de6;--g-fold: #0e8f7f;--g-guide: #1f7f9c;--g-annotation: #1b1b22;--g-unassigned: #ffffff;--g-face-hover: brightness(.94);--g-face-warn: #ffe8a3;--g-face-block: #ffb3ba;--g-font-ui: "Segoe UI Variable Text", "Segoe UI", -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", sans-serif;--g-radius-sm: 3px;--g-radius: 5px;--g-radius-lg: 8px;--g-shadow-pop: 0 8px 24px rgba(0, 0, 0, .45);--g-shadow-dialog: 0 18px 50px rgba(0, 0, 0, .55)}:root[data-theme=night]{--g-bg: #141414;--g-surface: #1c1c1c;--g-surface-2: #262626;--g-surface-3: #303030;--g-well: #121212;--g-line: #2a2a2a;--g-line-strong: #3c3c3c;--g-text: #e0e0e0;--g-text-dim: #a0a0a0;--g-paper: #15171e;--g-paper-ink: #e6e4dd;--g-lead: #e9e7e0;--g-grid-minor: #23262f;--g-grid-major: #2f333e;--g-piece-number: #cdcbc4;--g-paper-halo: rgba(21, 23, 30, .85);--g-grain: #8f8c9d;--g-handle: #f4f3ef;--g-select: #5a8ff0;--g-pen: #7aa8ff;--g-fold: #2fbfae;--g-guide: #4bb8d6;--g-annotation: #e6e4dd;--g-unassigned: #262a33;--g-face-hover: brightness(1.12);--g-face-warn: #4b3d1c;--g-face-block: #522028}h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:600}strong,b{font-weight:600}button,select,input,textarea{font-family:var(--g-font-ui);font-variant-numeric:tabular-nums}button{transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .05s ease}button:not(:disabled):active{transform:translateY(1px)}:where(button,input,select,textarea,a,[tabindex]):focus-visible{outline:2px solid var(--g-focus);outline-offset:2px}::selection{background:var(--g-accent);color:var(--g-accent-ink)}:where(input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file]),select,textarea){color:var(--g-text);background-color:var(--g-well);border:1px solid var(--g-line);border-radius:var(--g-radius)}:where(input[type=checkbox],input[type=radio],input[type=range]){accent-color:var(--g-accent)}:root{scrollbar-color:var(--g-line-strong) transparent}*{box-sizing:border-box;margin:0}html,body,#root{height:100%;font-family:var(--g-font-ui);font-variant-numeric:tabular-nums;color-scheme:dark}select option,select optgroup{color:#1d1d1d;background:#f5f5f5}#app{height:100%;display:flex;flex-direction:column;overflow:hidden;background:var(--g-bg)}#body{flex:1;display:flex;min-height:0;min-width:0;background:var(--g-surface)}:root{--g-rail: 48px;--g-inspector: clamp(236px, 16vw, 280px)}:root{--g-dock: 46px}#tools{flex:none;display:flex;align-items:center;gap:10px;width:100%;min-width:0;height:var(--g-dock);padding:0 10px;background:var(--g-surface);border-top:1px solid rgba(255,255,255,.11)}#tools .tool-icon{display:block;flex:none;stroke:currentColor}#rail{width:var(--g-rail);flex:none;display:flex;flex-direction:column;min-height:0;background:var(--g-surface);border-right:1px solid rgba(255,255,255,.08)}#rail .rail-list{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;padding:7px 0}#rail .rail-group{display:grid;justify-items:center;gap:1px}#rail .rail-divider{height:0;margin:4px 12px;border:0;border-top:1px solid rgba(255,255,255,.11)}.rail-tool{display:grid;place-items:center;width:32px;height:30px;padding:0;color:var(--g-text-dim);background:transparent;border:1px solid transparent;border-radius:var(--g-radius);cursor:pointer}.rail-tool:hover{color:var(--g-text);background:var(--g-surface-2);border-color:transparent}.rail-tool.active{color:var(--g-accent-ink);border-color:var(--g-accent);background:var(--g-accent)}.rail-tool .tool-icon{width:18px;height:18px}svg.lucide{stroke-width:1.5}.rail-tool.rail-group-tool{position:relative}.rail-tool.rail-group-tool:after{content:"";position:absolute;right:2px;bottom:2px;border-style:solid;border-width:0 0 5px 5px;border-color:transparent transparent currentColor transparent;opacity:.75}.rail-flyout{position:fixed;z-index:var(--z-hover-tip);display:grid;gap:2px;min-width:168px;padding:5px;background:var(--g-surface);border:1px solid var(--g-line-strong);border-radius:var(--g-radius-lg);box-shadow:var(--g-shadow-pop)}.rail-flyout button{display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:9px;padding:6px 8px;color:var(--g-text);background:transparent;border:1px solid transparent;border-radius:var(--g-radius);font-size:13px;text-align:left;cursor:pointer}.rail-flyout button:hover,.rail-flyout button:focus-visible{background:var(--g-surface-3);outline:none}.rail-flyout button.on{border-color:transparent;background:var(--g-accent-soft)}.rail-flyout .tool-icon{width:17px;height:17px}.rail-flyout kbd{min-width:20px;padding:2px 5px;color:var(--g-text-dim);background:#ffffff14;border:1px solid rgba(255,255,255,.16);border-radius:var(--g-radius-sm);font:500 11px var(--g-font-ui, system-ui, sans-serif);text-align:center}#tools .tool-body{flex:1;min-width:0;height:100%;display:flex;align-items:center;gap:12px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.tool-active{flex:none;display:flex;align-items:center;gap:7px;height:28px;padding-right:12px;border-right:1px solid rgba(255,255,255,.1)}.tool-active-icon{width:16px;height:16px;color:var(--g-text)}.tool-active h2{margin:0;color:#fff;font:600 13px var(--g-font-ui);white-space:nowrap}.tool-selection-actions{flex:none;display:flex;align-items:center;gap:10px}.tool-selection-actions>.tool-opts-label{color:var(--g-text-dim)}.tool-align-buttons,.tool-pathfinder-buttons{display:flex;align-items:stretch;gap:3px;min-width:0}.tool-align-buttons button,.tool-pathfinder-buttons button{min-height:28px;padding:3px 7px;color:#ffffffc7;background:transparent;border:1px solid transparent;border-radius:var(--g-radius);font:500 11px var(--g-font-ui);white-space:nowrap;cursor:pointer}.tool-align-buttons button:hover:not(:disabled),.tool-pathfinder-buttons button:hover:not(:disabled){color:#fff;background:var(--g-surface-2);border-color:transparent}.tool-align-buttons button:disabled,.tool-pathfinder-buttons button:disabled{color:#ffffff8c;cursor:not-allowed}.tool-key{min-width:20px;padding:2px 4px;color:#fff9;background:#ffffff14;border:1px solid rgba(255,255,255,.14);border-bottom-width:2px;border-radius:var(--g-radius-sm);font:500 11px var(--g-font-ui);text-align:center}.tool-pick{flex:none;margin:0}.tool-pick-buttons{display:flex;gap:3px}.tool-pick-buttons button{display:grid;justify-items:center;gap:2px;padding:5px 10px;color:#ffffffb8;background:transparent;border:1px solid transparent;border-radius:var(--g-radius);font:500 11px var(--g-font-ui);cursor:pointer}.tool-pick-buttons button:hover{color:#fff}.tool-pick-buttons button.active{color:var(--g-text);border-color:transparent;background:var(--g-surface-3)}.tool-pick-buttons .tool-icon{width:14px;height:14px}.tool-opts{flex:none;display:flex;align-items:center;gap:4px;margin:0}.tool-fold{display:grid;gap:8px}.tool-opts-head{display:flex;align-items:baseline;gap:8px;min-width:0}.tool-opts-head .tool-opts-note{margin:0;min-width:0}.tool-opts-label{margin:0 4px 2px;color:#ffffff80;font-size:11px;font-weight:600}.tool-opt{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:0 7px;color:var(--g-text-dim);background:transparent;border:1px solid transparent;border-radius:var(--g-radius);font:500 12px var(--g-font-ui);text-align:left;cursor:pointer}.tool-opt:hover{color:var(--g-text);background:var(--g-surface-2);border-color:transparent}.tool-opt .tool-icon{width:14px;height:14px}.tool-opt-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-opt.on{color:var(--g-text);background:var(--g-surface-3)}.tool-opt.on .tool-icon{color:var(--g-accent-text)}.tool-opt-field{display:flex;align-items:center;gap:6px;min-height:28px;padding:0 4px 0 8px;color:#ffffff9e;font-size:11px;font-weight:400}.tool-opt-field-label{overflow:hidden;color:#ffffff9e;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.tool-opt-field select{min-height:26px;width:auto;padding:2px 6px;color:var(--g-text);background:#ffffff14;border:1px solid rgba(255,255,255,.13);border-radius:var(--g-radius);font:400 12px var(--g-font-ui)}.tool-opt-action{margin:0;padding:4px 8px;justify-self:start;color:#ffffffd9;background:var(--g-surface-2);border:1px solid transparent;border-radius:var(--g-radius);font:500 12px var(--g-font-ui);cursor:pointer}.tool-opt-action:hover{color:#fff;background:var(--g-surface-3)}.fold-presets{display:flex;flex-wrap:wrap;gap:4px}.fold-chip{display:grid;gap:1px;padding:4px 8px;color:var(--g-text-dim);background:var(--g-surface-2);border:1px solid var(--g-line);border-radius:var(--g-radius);font:500 11px var(--g-font-ui);text-align:left;cursor:pointer}.fold-chip:hover{color:var(--g-text);border-color:var(--g-line-strong)}.fold-chip.on{color:var(--g-text);border-color:var(--g-line-strong);background:var(--g-surface-3)}.fold-chip.current{color:var(--g-text);border-color:var(--g-line-strong);border-style:dashed;background:transparent}.fold-lines{display:flex;gap:4px}.fold-line-btn{display:grid;gap:1px;padding:4px 8px;color:var(--g-text-dim);background:transparent;border:1px solid var(--g-line);border-radius:var(--g-radius);font:500 11px var(--g-font-ui);text-align:left;cursor:pointer}.fold-line-btn:hover{color:var(--g-text);border-color:var(--g-line-strong)}.fold-line-btn.on{color:var(--g-text);background:var(--g-surface-3)}.fold-glyph{display:block}.fold-glyph-line{stroke:currentColor;stroke-width:.7;fill:none;opacity:.4;stroke-dasharray:2 2}.fold-glyph-motif{stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;fill:none}.tool-opt-field input[type=number]{width:68px;min-height:26px;padding:2px 6px;color:var(--g-text);background:#ffffff14;border:1px solid rgba(255,255,255,.13);border-radius:var(--g-radius);font:400 12px var(--g-font-ui)}.tool-opt-slider{display:flex;align-items:center;gap:7px;color:#ffffff9e;font-size:11px;font-weight:400}.tool-opt-slider .tool-opt-field-label{font-size:11px}.tool-opt-slider-value{min-width:46px;color:var(--g-text);font-variant-numeric:tabular-nums;font-weight:500}.tool-opt-slider input[type=range]{width:130px;accent-color:var(--g-accent)}.tool-opts-note{margin:2px 4px 0;color:#ffffff8f;font-size:11px;line-height:1.4}.tool-canvas{gap:2px}.tool-fold-trigger{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 8px;color:#ffffffd1;background:var(--g-surface-2);border:1px solid var(--g-line);border-radius:var(--g-radius);font:500 12px var(--g-font-ui);white-space:nowrap;cursor:pointer}.tool-fold-trigger:hover,.tool-fold-trigger[aria-expanded=true]{color:#fff;border-color:var(--g-line-strong)}.tool-fold-trigger.on{color:var(--g-text);border-color:var(--g-line-strong);background:var(--g-surface-3)}.tool-fold-trigger.on .fold-glyph-motif{stroke:var(--g-accent-text)}.tool-fold-trigger .tool-icon{width:13px;height:13px}.tool-fold-pop{position:fixed;z-index:60;width:max-content;max-width:calc(100vw - 16px);padding:12px;overflow:auto;overscroll-behavior:contain;background:var(--g-surface);border:1px solid var(--g-line-strong);border-radius:var(--g-radius-lg);box-shadow:var(--g-shadow-pop)}#workspace{position:relative;display:flex;flex:1;min-width:0}#canvas{flex:1;min-width:0;background:var(--g-paper);touch-action:none}:root{--g-glass-band: 40px}.glass-band{position:absolute;left:0;right:0;bottom:0;z-index:6;height:var(--g-glass-band);display:flex;flex-direction:row;align-items:center;gap:6px;padding:3px 8px;background:color-mix(in srgb,var(--g-surface) 96%,transparent);border-top:1px solid var(--g-line)}.glass-band .gs-scroll{flex:0 1 auto;min-width:0;display:flex;flex-direction:row;align-items:center;gap:6px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;padding-bottom:2px}.glass-band .gs-slot{position:relative;flex:0 0 auto;width:36px;height:22px;padding:0;border:1px solid var(--g-line);border-radius:var(--g-radius-sm);background:var(--g-surface-2);cursor:pointer;overflow:hidden;display:grid;place-items:center;color:var(--g-text)}.glass-band .gs-slot:hover{border-color:var(--g-text)}.glass-band .gs-slot.held{outline:2px solid var(--g-accent);outline-offset:-2px;border-color:var(--g-accent)}.glass-band .gs-slot svg{width:100%;height:100%;display:block}.glass-band .gs-count{position:absolute;right:1px;bottom:1px;padding:0 3px;border-radius:var(--g-radius-sm);background:#0000008c;color:#fff;font-size:10px;font-weight:600;line-height:12px;pointer-events:none}.glass-band .gs-remover-mark,.glass-band .gs-todo-mark{width:100%;height:100%;border-radius:var(--g-radius-sm)}.glass-band .gs-remover-mark{background:repeating-linear-gradient(-45deg,transparent 0 5px,color-mix(in srgb,var(--g-text) 45%,transparent) 5px 7px)}.glass-band .gs-todo-mark{border:1px dashed color-mix(in srgb,var(--g-text) 45%,transparent)}.glass-band .gs-more{font-size:15px;line-height:1;opacity:.8}.glass-band .gs-cell{position:relative;flex:0 0 auto;display:block}.glass-band .gs-drop{position:absolute;top:-3px;right:-3px;width:16px;height:16px;padding:0;display:grid;place-items:center;color:var(--g-danger);background:var(--g-danger-soft);border:1px solid var(--g-danger-line);border-radius:50%;font:500 11px/1 var(--g-font-ui);cursor:pointer;opacity:0}.glass-band .gs-cell:hover .gs-drop,.glass-band .gs-drop:focus-visible{opacity:1}.glass-band .gs-drop:hover{color:#fff;background:#f07a7a3d}.glass-band .gs-unknown{border-style:dashed;border-color:color-mix(in srgb,var(--g-warn) 70%,transparent)}.glass-band .gs-unknown-mark{color:var(--g-warn);font:600 14px/1 var(--g-font-ui)}#canvas[data-tool=select],#canvas[data-tool=direct-select]{cursor:default}#canvas[data-tool=split],#canvas[data-tool=delete],#canvas[data-tool=knife],#canvas[data-tool=pen],#canvas[data-tool=curvature],#canvas[data-tool=freehand],#canvas[data-tool=smooth],#canvas[data-tool=shaper],#canvas[data-tool=shape-builder],#canvas[data-tool=arc],#canvas[data-tool=offset]{cursor:crosshair}#canvas[data-tool=fill]{cursor:not-allowed}#canvas[data-tool=fill][data-fill-target=yes]{cursor:cell}#canvas[data-tool=fill][data-fill-empty=yes]{cursor:help}#canvas[data-tool=shape-builder][data-builder=add]{cursor:copy}#canvas[data-tool=shape-builder][data-builder=subtract]{cursor:alias}#canvas[data-tool=shape-builder][data-builder=no-regions]{cursor:not-allowed}#canvas .face{stroke:none}#canvas .face.unassigned{fill:var(--g-unassigned)}#canvas .face.void{fill:transparent}#canvas .grid-line.minor{stroke:var(--g-grid-minor)}#canvas .grid-line.major{stroke:var(--g-grid-major)}#canvas .grain-arrow{fill:var(--g-grain)}#canvas .face.unassigned.warn{fill:var(--g-face-warn)!important}#canvas .face.unassigned.block{fill:var(--g-face-block)!important}#canvas .finding-hatch.warn{fill:var(--g-mark-warn)}#canvas .finding-hatch.block{fill:var(--g-mark-danger)}#canvas .face-finding{opacity:.7}#canvas .face.selected{stroke:var(--g-select);stroke-width:calc(2px * var(--mm-per-px));stroke-dasharray:calc(5px * var(--mm-per-px)) calc(3px * var(--mm-per-px))}#canvas .shape-builder-region{fill:color-mix(in srgb,var(--g-select) 14%,transparent);stroke:color-mix(in srgb,var(--g-select) 72%,var(--g-lead));stroke-width:calc(1.8px * var(--mm-per-px));stroke-dasharray:calc(5px * var(--mm-per-px)) calc(3px * var(--mm-per-px));pointer-events:none}#canvas .shape-builder-region.hovered{fill:color-mix(in srgb,var(--g-select) 30%,transparent);stroke:color-mix(in srgb,var(--g-select) 58%,var(--g-lead));stroke-width:calc(2.2px * var(--mm-per-px));stroke-dasharray:none}#canvas .shape-builder-region.active{fill:color-mix(in srgb,var(--g-select) 46%,transparent);stroke:color-mix(in srgb,var(--g-select) 45%,var(--g-lead));stroke-width:calc(2.6px * var(--mm-per-px));stroke-dasharray:none}#canvas .shape-builder-region.removing.hovered{fill:color-mix(in srgb,var(--g-mark-warn) 32%,transparent);stroke:color-mix(in srgb,var(--g-mark-warn) 62%,var(--g-lead))}#canvas .shape-builder-region.removing.active{fill:color-mix(in srgb,var(--g-mark-warn) 48%,transparent);stroke:color-mix(in srgb,var(--g-mark-warn) 50%,var(--g-lead))}#canvas .edge{stroke:var(--g-lead);fill:none;pointer-events:none}#canvas .edge.on-layer{stroke:var(--layer-lead)}#canvas .edge.covered-lead{stroke-width:calc(2px * var(--mm-per-px));stroke-linecap:butt;stroke-dasharray:calc(6px * var(--mm-per-px)) calc(6px * var(--mm-per-px));opacity:.6}#canvas .edge.hidden-lead{stroke:var(--g-lead);stroke-width:calc(2px * var(--mm-per-px));stroke-linecap:butt;stroke-dasharray:calc(6px * var(--mm-per-px)) calc(6px * var(--mm-per-px));opacity:.3}#canvas .edge.hidden-side{stroke-linecap:butt;stroke-dasharray:max(calc(6px * var(--mm-per-px)),4px) max(calc(6px * var(--mm-per-px)),4px)}#canvas .edge.selected{stroke:var(--g-select)}#canvas .key-face{fill:none;stroke:var(--g-select);stroke-linejoin:round}#canvas .edge.erasing{stroke:var(--g-mark-danger);stroke-width:calc(3px * var(--mm-per-px))}#canvas .edge-hit{stroke:transparent;fill:none}#canvas .smooth-brush{stroke:var(--g-select);stroke-opacity:.25;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}#canvas .edge-hit.off-limits{pointer-events:none}#canvas .node{fill:var(--g-handle);stroke:var(--g-handle-ink);stroke-width:calc(1.5px * var(--mm-per-px));cursor:grab}#canvas .node.selected{fill:var(--g-select)}#canvas .anchors{pointer-events:none}#canvas[data-tool=direct-select] .anchors{pointer-events:auto}#canvas .node.on-path{fill:color-mix(in srgb,var(--g-select) 24%,transparent);stroke:var(--g-select);stroke-width:calc(1.6px * var(--mm-per-px))}#canvas .node:active{cursor:grabbing}#canvas .node.pending{fill:var(--g-mark-warn)}#canvas .ctrl{fill:var(--g-mark-danger);stroke:var(--g-handle);stroke-width:calc(1.2px * var(--mm-per-px));cursor:crosshair}#canvas .ctrl-line{stroke:var(--g-mark-danger);stroke-dasharray:calc(3px * var(--mm-per-px)) calc(3px * var(--mm-per-px))}#canvas .pen-preview{fill:none;stroke:var(--g-pen);stroke-dasharray:calc(6px * var(--mm-per-px)) calc(4px * var(--mm-per-px));pointer-events:none}#canvas .stroke-preview{fill:none;stroke:var(--g-pen);stroke-linecap:round;stroke-linejoin:round;opacity:.75;pointer-events:none}#canvas .stroke-preview.knife-preview{stroke:var(--g-mark-danger);opacity:.9}#canvas .pen-anchor{fill:var(--g-handle);stroke:var(--g-pen);stroke-width:calc(1.6px * var(--mm-per-px));cursor:crosshair}#canvas .pen-anchor.start{fill:var(--g-pen);stroke:var(--g-handle)}#canvas .pen-anchor.current{stroke:var(--g-mark-warn);stroke-width:calc(2px * var(--mm-per-px))}#canvas .pen-ghost{fill:color-mix(in srgb,var(--g-pen) 14%,transparent);stroke:var(--g-pen);stroke-width:calc(1.4px * var(--mm-per-px));stroke-dasharray:calc(3px * var(--mm-per-px)) calc(3px * var(--mm-per-px))}#canvas .pen-handles line{stroke:var(--g-pen);stroke-dasharray:calc(3px * var(--mm-per-px)) calc(3px * var(--mm-per-px))}#canvas .pen-handles circle{fill:var(--g-handle);stroke:var(--g-pen);stroke-width:calc(1.2px * var(--mm-per-px))}#canvas .piece-labels{pointer-events:none;user-select:none}#canvas .piece-number{fill:var(--g-piece-number);font-family:var(--g-font-ui, system-ui, sans-serif);font-weight:600;paint-order:stroke;stroke:var(--g-paper-halo);stroke-width:.18em;stroke-linejoin:round}#canvas .piece-code,#canvas .piece-note{fill:var(--g-piece-number);font-family:var(--g-font-ui, system-ui, sans-serif);font-weight:500;opacity:.78;paint-order:stroke;stroke:var(--g-paper-halo);stroke-width:.16em;stroke-linejoin:round}#canvas .piece-code{font-weight:700;letter-spacing:.04em}#canvas .piece-code.lead{opacity:1}#canvas[data-plan] .face:not(.void){fill:#fff}#canvas[data-plan] .face.unassigned.warn,#canvas[data-plan] .face.unassigned.block{fill:#fff!important}#canvas[data-plan] .mirror-lines,#canvas[data-plan] .mirror-composition{display:none}#canvas[data-plan] .face.selected:not(.void){fill:color-mix(in srgb,var(--g-select) 16%,#ffffff)!important}#canvas[data-plan] .transform-box{display:none}#canvas[data-plan] .edge:not(.selected):not(.erasing){stroke:transparent}#canvas[data-plan] .face-finding,#canvas[data-plan] .finding-markers,#canvas[data-plan] .piece-labels{display:none}#canvas .grain{stroke:var(--g-grain)}#inspector{width:var(--g-inspector);flex:none;background:var(--g-surface);color:var(--g-text);padding:16px 12px 22px;overflow-y:auto;display:flex;flex-direction:column;gap:13px;border-left:1px solid rgba(255,255,255,.08)}.inspector-resizer{flex:none;position:relative;width:0;z-index:5;outline:none;touch-action:none}.inspector-resizer:before{content:"";position:absolute;inset:0 -4px;cursor:col-resize}.inspector-resizer:hover:after,.inspector-resizer:focus-visible:after,.inspector-resizer[data-dragging]:after{content:"";position:absolute;inset:0 -1px;background:var(--g-accent);pointer-events:none}#inspector h2{color:var(--g-text);font-size:13px;border-bottom:1px solid var(--g-line);padding-bottom:8px}#inspector .hint{font-size:12px;opacity:.7}#inspector .fields,#inspector .field{display:flex;flex-direction:column;gap:8px;font-size:13px}#inspector .field{flex-direction:row;justify-content:space-between}#inspector label{display:flex;flex-direction:column;gap:4px;font-size:12px}#inspector select,#inspector input,#inspector textarea{background:var(--g-surface-2);color:var(--g-text);border:1px solid var(--g-line);border-radius:var(--g-radius);padding:6px;font-size:13px;font-family:inherit}#inspector .inline{display:flex;gap:6px}#inspector .inline input{flex:1;min-width:0}#inspector .inline .by{align-self:center;opacity:.6;flex:none}#inspector .checkline{display:flex;flex-direction:row;align-items:center;gap:7px}#inspector .action{background:var(--g-surface-2);color:var(--g-text);border:1px solid var(--g-line);border-radius:var(--g-radius);padding:8px;font-size:12px;cursor:pointer;border-color:transparent}#inspector .action.danger{border-color:var(--g-danger-line);color:var(--g-danger)}#inspector .action:disabled,#inspector .action[aria-disabled=true]{opacity:.4;cursor:default}#inspector .mini{background:var(--g-surface-2);color:var(--g-text);border:1px solid transparent;border-radius:var(--g-radius);padding:6px 10px;font-size:12px;cursor:pointer}#inspector .mini:disabled{opacity:.4}#inspector .piece-number-field{display:flex;align-items:center;gap:4px;min-width:0}#inspector .piece-number-field input{flex:1;min-width:0;width:90px}#inspector .piece-number-clear{flex:none;width:26px;height:26px;padding:0;color:#ffffffb3;background:transparent;border:1px solid var(--g-line);border-radius:var(--g-radius);font-size:15px;line-height:1;cursor:pointer}#inspector .piece-number-clear:hover{color:#fff;border-color:var(--g-danger-line)}#inspector .props-transform{display:flex;flex-direction:column;gap:6px}#inspector .props-actions{display:flex;flex-direction:column;gap:4px}#inspector .props-grid{display:grid;grid-template-columns:39px minmax(0,1fr) 20px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;gap:6px 4px}#inspector .props-ref{grid-row:1 / span 2;grid-column:1;display:grid;grid-template-columns:repeat(3,11px);gap:3px;justify-content:start}#inspector .props-ref button{width:11px;height:11px;padding:0;background:transparent;border:1px solid rgba(255,255,255,.45);border-radius:var(--g-radius-sm);cursor:pointer}#inspector .props-ref button:hover{border-color:var(--g-line-strong)}#inspector .props-ref button.on{background:var(--g-accent);border-color:var(--g-accent)}#inspector label.props-field{flex-direction:row;align-items:center;gap:5px;min-width:0}#inspector .props-field>span{flex:none;width:11px;opacity:.7;font-weight:500}#inspector .props-field input{flex:1;min-width:0;padding-inline:5px}#inspector .props-field input:disabled{opacity:.45}#inspector .props-x{grid-row:1;grid-column:2}#inspector .props-y{grid-row:1;grid-column:4}#inspector .props-w{grid-row:2;grid-column:2}#inspector .props-link{grid-row:2;grid-column:3}#inspector .props-h{grid-row:2;grid-column:4}#inspector .props-link{display:flex;align-items:center;justify-content:center;width:20px;height:24px;padding:0;color:#ffffff8c;background:transparent;border:1px solid transparent;border-radius:var(--g-radius);cursor:pointer}#inspector .props-link svg{width:15px;height:15px}#inspector .props-link:hover,#inspector .props-link.on{color:var(--g-accent-text);border-color:var(--g-line)}#inspector .align-panel{display:flex;flex-direction:column;gap:6px}#inspector .align-row,#inspector .quiet-row{display:flex;flex-wrap:wrap;gap:2px}#inspector .quiet-mini{display:flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 5px;color:var(--g-text-dim);background:transparent;border:1px solid transparent;border-radius:var(--g-radius);font-size:12px;cursor:pointer}#inspector .quiet-mini svg{width:15px;height:15px}#inspector .flip-row{display:flex;flex-direction:column;gap:4px}#inspector .flip-row .quiet-mini{gap:5px}#inspector .quiet-mini:hover:not(:disabled){color:var(--g-text);border-color:var(--g-line)}#inspector .quiet-mini:disabled{opacity:.35;cursor:default}#canvas[data-tool=select] .face.shape-hover,#canvas[data-tool=direct-select] .face:hover,#canvas[data-tool=skew][data-grasp=empty] .face:hover{filter:var(--g-face-hover)}#canvas[data-tool=split] .edge-hit:hover+.edge,#canvas[data-tool=delete] .edge-hit:hover+.edge,#canvas[data-tool=select] .edge-hit:hover+.edge,#canvas[data-tool=direct-select] .edge-hit:hover+.edge,#canvas[data-tool=skew][data-grasp=empty] .edge-hit:hover+.edge{stroke:var(--g-select)}#canvas .rubber{stroke:var(--g-select);stroke-dasharray:calc(6px * var(--mm-per-px)) calc(4px * var(--mm-per-px));fill:none;pointer-events:none}#canvas .mirror-line{stroke:var(--g-fold);opacity:.95;pointer-events:none}#canvas .mirror-wedge{stroke:var(--g-fold);stroke-dasharray:calc(5px * var(--mm-per-px)) calc(6px * var(--mm-per-px));opacity:.4;pointer-events:none}#canvas .fold-ghost{fill:none;stroke:var(--g-fold);stroke-dasharray:calc(7px * var(--mm-per-px)) calc(5px * var(--mm-per-px));opacity:.72;pointer-events:none}#canvas .mirror-composition,#canvas .mirror-composition *{pointer-events:none}#canvas .mirror-veil{fill:var(--g-bg);fill-opacity:.62}#canvas .mirror-copy-face{stroke:none}#canvas .mirror-copy-face.unassigned{fill:var(--g-unassigned)}#canvas .mirror-copy-lead{fill:none;stroke:var(--g-lead)}#canvas .mirror-centre{fill:var(--g-handle);stroke:var(--g-fold);stroke-width:calc(1.8px * var(--mm-per-px));cursor:move}#canvas .mirror-centre:hover{fill:var(--g-fold);stroke:var(--g-handle)}#findings{display:flex;flex-direction:column;gap:6px}.findings-pill{display:inline-flex;align-items:center;gap:6px;padding:2px 6px;border-radius:var(--g-radius);border:0;background:none;font:inherit;line-height:1.3;cursor:pointer;color:var(--g-text)}.findings-pill svg{transition:transform .15s}.findings-pill svg.turned{transform:rotate(180deg)}.findings-pill:before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--tone, var(--g-text-dim))}.findings-pill:hover{background:var(--g-surface-2)}.findings-pill svg{order:2;color:var(--g-text-dim)}.findings-pill.clear{--tone: var(--g-ok)}.findings-pill.warnings{--tone: var(--g-warn)}.findings-pill.errors{--tone: var(--g-danger)}.findings-pop{position:fixed;z-index:60;width:340px;max-width:calc(100vw - 16px);overflow-y:auto;padding:10px;background:var(--g-surface);border:1px solid var(--g-line);border-radius:var(--g-radius-lg);box-shadow:0 10px 30px #00000073;white-space:normal;color:var(--g-text)}.findings-pop>h2{margin:0 0 8px;font-size:13px}.inspector-glass{display:flex;align-items:center;gap:6px}.inspector-glass .glass-swatch{flex:none;width:34px;height:28px;border-radius:var(--g-radius);border:1px solid rgba(255,255,255,.2)}.inspector-glass select{flex:1;min-width:0}.finding{display:flex;flex-direction:column;gap:3px;font-size:11px;padding:8px;border-radius:var(--g-radius);border:none;border-left:4px solid;cursor:pointer;text-align:left;color:var(--g-text)}.finding strong{font-size:12px;line-height:1.35}.finding small{color:#ffffffbd;line-height:1.4}.finding .finding-remedy{color:#ffffff94}.finding.finding-static{cursor:default}.finding .finding-body{display:flex;flex-direction:column;gap:3px;padding:0;border:none;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.finding .finding-actions{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:2px}.finding .finding-how>summary{color:#ffffffbd;font-size:11px;font-weight:500;cursor:pointer}.finding .finding-how[open]{flex-basis:100%}.finding .finding-how .finding-remedy{display:block;margin-top:3px}.finding .finding-repair{align-self:flex-start;margin-top:0;padding:4px 10px;border:1px solid rgba(255,255,255,.22);border-radius:var(--g-radius);background:#ffffff17;color:var(--g-text);font-size:11px;font-weight:500;cursor:pointer}.finding .finding-repair:hover{background:#ffffff29;border-color:#ffffff57}.finding{position:relative}.finding .finding-accept{position:absolute;top:6px;right:6px;width:22px;height:22px;display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.24);border-radius:var(--g-radius);background:#ffffff0f;color:var(--g-text);font-size:12px;line-height:1;cursor:pointer}.finding .finding-accept:hover{background:#ffffff29;border-color:#ffffff5c}.finding .finding-accept.accepted{background:var(--g-accent);border-color:var(--g-accent);color:var(--g-accent-ink)}.findings-hidden{display:flex;flex-direction:column;gap:3px;width:100%;margin-top:8px;padding:8px;border:1px dashed rgba(255,255,255,.26);border-radius:var(--g-radius);background:none;color:var(--g-text);font-size:11px;font-weight:500;text-align:left;cursor:pointer}.findings-hidden small{color:#ffffff9e;font-weight:400}.findings-hidden:hover{border-color:#ffffff6b}.finding-chip{align-self:flex-start;padding:1px 6px;border-radius:var(--g-radius-sm);background:#00000052;font-size:11px;font-weight:500}.findings-group{margin:8px 0 0;font-size:11px;font-weight:600;color:#ffffff75}.status-readiness,.status-saved,.status-shortcuts{padding:0;border:none;background:none;color:inherit;font:inherit;cursor:pointer;border-bottom:1px dotted rgba(255,255,255,.35)}.status-readiness:hover,.status-saved:hover,.status-shortcuts:hover{border-bottom-color:currentColor}.status-zoom{display:inline-flex;align-items:center;gap:2px}.status-zoom button{padding:0 5px;border:1px solid transparent;border-radius:var(--g-radius-sm);background:transparent;color:inherit;font:inherit;line-height:1.4;cursor:pointer}.status-zoom button:hover{background:var(--g-surface-2)}.status-zoom-value{min-width:3.4em;text-align:center;font-variant-numeric:tabular-nums}.status-readiness.ready{color:var(--g-ok)}.status-readiness.care{color:var(--g-warn)}.status-readiness.blocked{color:var(--g-danger)}.status-saved{margin-left:8px;color:#ffffff80}.finding.warn{background:var(--g-warn-soft);border-color:var(--g-warn-line)}.finding.block{background:var(--g-danger-soft);border-color:var(--g-danger-line)}.finding.finding-fault{border-left-width:4px;border-left-style:double}.finding .finding-path{margin-top:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:#ffffff6b;word-break:break-all}#statusbar{position:relative;padding:6px 12px;background:var(--g-bg);color:var(--g-text-dim);font-size:12px;display:flex;gap:8px;align-items:baseline;white-space:nowrap}#statusbar .statushint{margin-left:auto;display:flex;align-items:baseline;color:var(--g-text-dim);white-space:nowrap;min-width:0;overflow:hidden}#statusbar .status-instruction,#statusbar .status-gesture{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:pre}#statusbar .status-shortcuts{flex:none;white-space:pre}#statusbar .status-gesture{color:var(--g-text)}#canvas .finding-marker circle{stroke:#fff;stroke-width:calc(1.5px * var(--mm-per-px));cursor:pointer}#canvas .finding-marker.warn circle{fill:var(--g-mark-warn)}#canvas .finding-marker.block circle{fill:var(--g-mark-danger)}#canvas .finding-marker text{fill:var(--g-handle-ink);font-weight:700;pointer-events:none}#canvas .finding-marker.graph rect{fill:var(--g-mark-graph);stroke:#fff;stroke-width:calc(1.5px * var(--mm-per-px));cursor:pointer}#canvas-wrap{flex:1;min-width:0;position:relative;display:flex;margin-bottom:var(--g-glass-band)}#canvas[data-tool=select]{cursor:default}#canvas[data-tool=skew]{cursor:ew-resize}#canvas[data-tool=skew][data-grasp=empty]{cursor:default}#canvas[data-tool=skew][data-grasp=empty] .face,#canvas[data-tool=skew][data-grasp=empty] .edge-hit{cursor:ew-resize}#canvas .skew-origin line{stroke:var(--g-select);pointer-events:none}#canvas .skew-origin rect{fill:transparent;pointer-events:auto;cursor:move}#canvas .skew-origin.placed line{stroke:var(--g-fold)}#canvas .skew-origin rect:hover+line,#canvas .skew-origin:hover line{stroke:var(--g-handle)}#canvas-wrap[data-panning="1"] #canvas{cursor:grab}#canvas-wrap[data-panning="1"] #canvas:active{cursor:grabbing}#canvas .selection-box{fill:none;stroke:var(--g-select);stroke-dasharray:calc(8px * var(--mm-per-px)) calc(4px * var(--mm-per-px));pointer-events:none}#canvas .transform-rotate-stem{stroke:var(--g-select);pointer-events:none}#canvas .transform-handle,#canvas .transform-rotate{fill:var(--g-handle);stroke:var(--g-select);stroke-width:calc(1.6px * var(--mm-per-px));pointer-events:all}#canvas .transform-handle:hover,#canvas .transform-rotate:hover{fill:var(--g-select);stroke:var(--g-handle)}#canvas .transform-handle[data-transform-handle=nw],#canvas .transform-handle[data-transform-handle=se]{cursor:nwse-resize}#canvas .transform-handle[data-transform-handle=ne],#canvas .transform-handle[data-transform-handle=sw]{cursor:nesw-resize}#canvas .transform-handle[data-transform-handle=n],#canvas .transform-handle[data-transform-handle=s]{cursor:ns-resize}#canvas .transform-handle[data-transform-handle=e],#canvas .transform-handle[data-transform-handle=w]{cursor:ew-resize}#canvas .transform-rotate{cursor:grab}#canvas .transform-rotate:active{cursor:grabbing}#canvas .snap-hint line{stroke:#e0457b;stroke-dasharray:calc(7px * var(--mm-per-px)) calc(4px * var(--mm-per-px));pointer-events:none}#canvas .snap-marker{fill:none;stroke:#e0457b}#canvas .snap-hint.node .snap-marker{stroke:var(--g-snap-node);fill:color-mix(in srgb,var(--g-snap-node) 35%,transparent)}#canvas .snap-hint.node .snap-label{fill:var(--g-snap-node)}#canvas .snap-hint.edge .snap-marker{stroke:var(--g-mark-warn)}#canvas .snap-hint.midpoint .snap-marker{stroke:#8b65df;fill:color-mix(in srgb,#8b65df 35%,transparent)}#canvas .snap-hint.midpoint .snap-label{fill:#8b65df}#canvas .snap-candidate{fill:color-mix(in srgb,var(--g-paper-halo) 70%,transparent);pointer-events:none}#canvas .snap-candidate.end{stroke:var(--g-snap-node)}#canvas .snap-candidate.middle{stroke:#8b65df}#canvas .snap-hint .snap-label{fill:#e0457b;font-family:var(--g-font-ui, system-ui, sans-serif);font-weight:700;paint-order:stroke;stroke:var(--g-paper-halo);stroke-width:.18em;stroke-linejoin:round;pointer-events:none}.menu-backdrop{position:fixed;inset:0;z-index:40}.context-menu{position:fixed;z-index:41;background:var(--g-surface);border:1px solid var(--g-line);border-radius:var(--g-radius-lg);padding:4px;min-width:210px;box-shadow:0 10px 30px #0006;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain}.context-menu button{background:transparent;border:none;color:var(--g-text);text-align:left;padding:8px 10px;border-radius:var(--g-radius);font-size:13px;cursor:pointer}.context-menu button:hover{background:var(--g-surface-2)}.context-menu button.danger{color:var(--g-danger)}.context-menu button.menu-choice{padding-left:26px;position:relative}.context-menu button.menu-choice.checked:before{content:"✓";position:absolute;left:9px;color:var(--g-text)}.context-menu .menu-divider{flex:none;height:1px;margin:4px 8px;background:var(--g-line)}.context-menu .menu-disabled{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:var(--g-radius);font-size:13px;color:var(--g-text);opacity:.42;cursor:default;user-select:none}.context-menu .menu-disabled small{font-size:11px;line-height:1.3;opacity:.85}.context-menu .menu-parent{position:relative;display:flex;flex-direction:column}.context-menu .menu-parent-row{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%}.context-menu .menu-flyout{position:fixed;margin:0}#inspector .fieldlabel{font-size:12px;opacity:.75}#inspector .btnrow{display:flex;gap:4px;flex-wrap:wrap}#inspector .btnrow .mini{flex:1;min-width:34px}#inspector .inspector-disclosure>.disclosure-body{display:flex;flex-direction:column;gap:8px;padding-top:6px}#inspector .inspector-disclosure>summary{display:flex;align-items:center;gap:6px;padding:3px 0;font-size:12px;opacity:.75;list-style:none;cursor:pointer;user-select:none}#inspector .inspector-disclosure>summary::-webkit-details-marker{display:none}#inspector .inspector-disclosure>summary:before{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform .12s ease}#inspector .inspector-disclosure[open]>summary:before{transform:rotate(45deg)}#inspector .inspector-disclosure>summary:hover,#inspector .inspector-disclosure>summary:focus-visible{opacity:1}#inspector .repeat-form{display:flex;flex-direction:column;gap:8px}#inspector .repeat-form .hint{margin:0}#canvas .finding-markers{pointer-events:none}#canvas .finding-marker circle{pointer-events:auto}#canvas[data-tool=fill] .finding-marker circle{pointer-events:none}#canvas-wrap,#canvas,.ruler,#canvas text,.ruler .tick{user-select:none;-webkit-user-select:none}#canvas-wrap{touch-action:none}:root{--g-ruler: 20px}#canvas-wrap[data-rulers="1"]{padding:var(--g-ruler) 0 0 var(--g-ruler)}.ruler{position:absolute;background:var(--g-surface);color:var(--g-text-dim);font-size:10px;font-family:var(--g-font-ui, system-ui, sans-serif);overflow:hidden;z-index:5}.ruler-top{top:0;left:var(--g-ruler);right:0;height:var(--g-ruler);border-bottom:1px solid var(--g-line);cursor:ns-resize}.ruler-left{top:var(--g-ruler);left:0;bottom:0;width:var(--g-ruler);border-right:1px solid var(--g-line);cursor:ew-resize}.ruler-corner{position:absolute;top:0;left:0;width:var(--g-ruler);height:var(--g-ruler);background:var(--g-surface);border-right:1px solid var(--g-line);border-bottom:1px solid var(--g-line);color:var(--g-text-dim);font-size:10px;display:flex;align-items:center;justify-content:center;z-index:6}.ruler-marks{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.ruler-marks path{fill:none;stroke:currentColor;stroke-width:1;opacity:.7;shape-rendering:crispEdges}.ruler .tick{position:absolute;white-space:nowrap;pointer-events:none;line-height:1}.ruler .tick.major{color:var(--g-text)}.ruler-top .tick{top:3px;transform:translate(3px)}.ruler-left .tick{left:2px;writing-mode:vertical-rl;transform:translateY(3px) rotate(180deg)}.clear-guides{position:absolute;top:calc(var(--g-ruler) + 6px);right:6px;z-index:6;background:var(--g-surface-2);color:var(--g-text);border:1px solid var(--g-line);border-radius:var(--g-radius);padding:4px 8px;font-size:11px;cursor:pointer}#canvas .guides line,#canvas .guide-new{stroke:var(--g-guide);stroke-dasharray:calc(8px * var(--mm-per-px)) calc(5px * var(--mm-per-px));pointer-events:none}#canvas .guides line.picked{stroke-dasharray:none;stroke-width:calc(2px * var(--mm-per-px))}#canvas .guides line.removing,#canvas .guide-new.removing{opacity:.35}#canvas .guide-hit{stroke:transparent;fill:none}#canvas .guide-hit.upright{cursor:ew-resize}#canvas .guide-hit.level{cursor:ns-resize}#canvas .mirror-hit{stroke:transparent;fill:none;cursor:move}#canvas .mirror-hit.upright{cursor:ew-resize}#canvas .mirror-hit.level{cursor:ns-resize}#canvas .mirror-hit.backslash{cursor:nesw-resize}#canvas .mirror-hit.slash{cursor:nwse-resize}#canvas[data-tool=measure]{cursor:crosshair}#canvas .measure{--measure-accent: #087e82}#canvas .measure-extension{fill:none;stroke:var(--measure-accent)}#canvas .measure-line-halo{stroke:#fff;stroke-linecap:round}#canvas .measure-line,#canvas .measure-tick{stroke:var(--measure-accent)}#canvas .measure-label-bg{fill:#fff;stroke:#087e82}#canvas .measure text{font-family:var(--g-font-ui, system-ui, sans-serif);font-weight:650}#canvas .measure-label{fill:#153b3d;font-variant-numeric:tabular-nums}#canvas .measure-hit{fill:transparent;stroke:none}#canvas .measure-handle{fill:#fff;stroke:var(--measure-accent)}#canvas .measure-dot{fill:var(--measure-accent)}#canvas .measure-point-label{fill:#153b3d;paint-order:stroke;stroke:#fff;stroke-width:.3em;stroke-linejoin:round}#canvas[data-tool=measure] .measure-end[data-measure-end]{cursor:grab}#canvas[data-tool=measure] .measure-end[data-measure-end]:hover .measure-handle{fill:#d4f1ef}#canvas .measure[data-pending=true] .measure-line{stroke-dasharray:calc(5px * var(--mm-per-px)) calc(3px * var(--mm-per-px))}#canvas .draw-readout{fill:var(--g-piece-number);font-family:var(--g-font-ui, system-ui, sans-serif);font-weight:700;paint-order:stroke;stroke:var(--g-paper-halo);stroke-width:.18em;stroke-linejoin:round}#inspector .layerlist{display:flex;flex-direction:column;gap:3px}#inspector .layerrow{display:flex;align-items:center;gap:4px;background:var(--g-surface-2);border:1px solid var(--g-line);border-radius:var(--g-radius);padding:3px 5px;font-size:12px;color:var(--g-text);text-align:left;cursor:pointer}#inspector .layerrow.active{border-color:transparent;background:var(--g-accent-soft)}#inspector .layerrow .swatch{width:10px;height:10px;border-radius:var(--g-radius-sm);flex:none}#inspector .layerrow input.swatch{appearance:none;-webkit-appearance:none;padding:0;border:none;background:none;cursor:pointer}#inspector .layerrow input.swatch::-webkit-color-swatch-wrapper{padding:0}#inspector .layerrow input.swatch::-webkit-color-swatch{border:none;border-radius:var(--g-radius-sm)}#inspector .layerrow input.swatch::-moz-color-swatch{border:none;border-radius:var(--g-radius-sm)}#inspector .layerrow .layername{flex:1;min-width:0;background:transparent;border:none;color:inherit;font:inherit;padding:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#inspector .layerrow input.layername:focus{background:var(--g-well);outline:1px solid var(--g-focus);border-radius:var(--g-radius-sm)}#inspector .layerrow .layercount{opacity:.55;font-variant-numeric:tabular-nums;flex:none}#inspector .layerrow .selmark{width:7px;height:7px;flex:none}#inspector .layerrow .eye{background:transparent;border:none;color:inherit;cursor:pointer;padding:0 1px;font-size:11px;line-height:1;flex:none}#inspector .layerrow .eye:disabled{opacity:.3;cursor:default}#canvas .annotation{fill:var(--g-annotation);font-family:var(--g-font-ui, system-ui, sans-serif);cursor:text;paint-order:stroke;stroke:var(--g-paper-halo);stroke-width:.16em;stroke-linejoin:round}#canvas .annotation.selected{fill:var(--g-select)}#canvas[data-tool=text]{cursor:text}#premium-header{position:relative;z-index:40;height:54px;min-height:54px;flex:none;display:flex;align-items:center;gap:8px;padding:0 8px;color:var(--g-text);font-size:13px;background:var(--g-bg);border-bottom:1px solid var(--g-line)}.premium-menus,.premium-utilities{display:flex;align-items:center;gap:3px}.premium-menu{position:relative;flex:none}.premium-menus{flex:none}.premium-menu-trigger{display:flex;align-items:center;gap:5px;height:30px;min-height:30px;padding:0 6px;color:#ffffffe0;background:transparent;border:1px solid transparent;border-radius:var(--g-radius-lg);cursor:pointer;font:inherit;font-weight:400;user-select:none}.premium-menu-chevron{width:14px;height:14px;color:#ffffff78;transform:rotate(0);transition:transform .15s ease}.premium-menu.is-open .premium-menu-trigger,.premium-menu-trigger:hover{color:#fff;background:var(--g-surface-2);border-color:transparent}.premium-menu-trigger:focus-visible{outline:2px solid var(--g-focus);outline-offset:1px}.premium-menu.is-open .premium-menu-chevron{transform:rotate(180deg)}.premium-menu-panel{position:fixed;z-index:60;display:grid;width:min(320px,calc(100vw - 24px));gap:2px;padding:8px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;color:var(--g-text);background:var(--g-surface);border:1px solid var(--g-line-strong);border-radius:var(--g-radius-lg);box-shadow:var(--g-shadow-pop)}.premium-menu-section{display:block;margin:6px 8px 3px 30px;color:#ffffff75;font-size:11px;font-weight:600}.premium-menu-divider{height:1px;margin:5px 4px;background:#ffffff17}.premium-technique select{min-height:31px;color:var(--g-text);background:#ffffff14;border:1px solid rgba(255,255,255,.13);border-radius:var(--g-radius);padding:4px 7px;font:inherit}.premium-menu-panel-wide{width:min(540px,calc(100vw - 24px))}.premium-menu-panel-narrow{width:min(264px,calc(100vw - 24px))}.premium-menu-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(236px,1fr));column-gap:10px;row-gap:2px}.premium-menu-column{display:grid;align-content:start;gap:1px}.premium-menu-row{width:100%;min-height:28px;display:grid;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;gap:8px;padding:3px 8px;color:#ffffffe6;background:transparent;border:0;border-radius:var(--g-radius);cursor:pointer;font:inherit;font-size:12px;font-weight:400;text-align:left}button.premium-menu-row:hover,button.premium-menu-row:focus-visible,.premium-menu-pick:focus-within{color:#fff;background:var(--g-surface-3);outline:none}button.premium-menu-row:disabled{cursor:not-allowed;opacity:.43}.premium-menu-check{display:grid;place-items:center;width:14px;height:14px;color:var(--g-text)}.premium-menu-check svg{width:14px;height:14px}.premium-menu-row-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.premium-menu-row-aside{color:#ffffff75;font-size:11px;font-weight:400;white-space:nowrap}.premium-menu-pick{grid-template-columns:14px auto minmax(0,1fr);cursor:default}.premium-menu-pick select{justify-self:end;width:100%;max-width:124px;min-height:24px;padding:2px 6px;color:var(--g-text);background:var(--g-well);border:1px solid var(--g-line);border-radius:var(--g-radius);font:inherit;font-size:11px}.premium-menu-segments{cursor:default}.premium-menu-segment-set{display:inline-flex;padding:2px;background:var(--g-well);border:1px solid var(--g-line);border-radius:var(--g-radius)}.premium-menu-segment-set button{min-width:34px;height:22px;display:grid;place-items:center;padding:0 7px;color:#ffffffb8;background:transparent;border:0;border-radius:var(--g-radius-sm);cursor:pointer;font:inherit;font-size:11px;font-weight:500}.premium-menu-segment-set button svg{width:14px;height:14px}.premium-menu-segment-set button:hover,.premium-menu-segment-set button:focus-visible{color:#fff;background:var(--g-surface-2);outline:none}.premium-menu-segment-set button[aria-checked=true]{color:var(--g-text);background:var(--g-surface-3)}.premium-spacer{flex:1;min-width:0}.premium-utilities{flex:none;gap:4px;height:34px;min-width:0;max-width:100%;padding-left:8px;border-left:1px solid rgba(255,255,255,.1)}.premium-technique{display:flex;align-items:center;gap:6px;min-width:112px;color:#ffffff85;font-size:13px;font-weight:500}.premium-technique>span{flex:none}.premium-technique select{width:auto;height:28px;min-height:28px;padding:0 2px;border:0;border-radius:0;background:transparent;color:#ffffffe6;font:inherit}.premium-utility,.premium-icon{height:28px;min-height:28px;display:inline-flex;align-items:center;justify-content:center;gap:5px;color:#ffffffdb;background:transparent;border:0;border-radius:var(--g-radius-sm);cursor:pointer;font:inherit;font-weight:500}.premium-utility{padding:0 5px;white-space:nowrap}.premium-icon{width:24px;padding:0}.premium-header-icon{width:14px;height:14px;flex:none}.premium-utility-separator{width:1px;height:14px;margin:0 1px;background:#ffffff1f}.premium-utility:hover,.premium-icon:hover,.premium-utility.toggled,.premium-icon.toggled{color:var(--g-text);background:transparent}.premium-utility:disabled{cursor:not-allowed;opacity:.43}.premium-utility.toggled,.premium-icon.toggled{color:var(--g-accent-text)}.premium-utility.mirror-trigger.on{color:var(--g-accent-text);background:transparent}.mirror-trigger .fold-glyph-motif{stroke-width:2}.mirror-trigger.on .fold-glyph-motif{stroke:var(--g-accent-text)}.mirror-chevron{width:13px;height:13px;opacity:.7}.mirror-panel{position:fixed;z-index:60;width:min(352px,calc(100vw - 16px));padding:8px;display:grid;gap:8px;overflow:auto;overscroll-behavior:contain;color:var(--g-text);background:var(--g-surface);border:1px solid var(--g-line-strong);border-radius:var(--g-radius-lg);box-shadow:var(--g-shadow-pop)}.mirror-modes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.mirror-modes .fold-chip{justify-items:center;gap:3px;padding:6px 2px 5px;font-size:11px;text-align:center;white-space:nowrap}.mirror-modes .fold-chip.on{box-shadow:none}.mirror-modes .fold-chip.on .fold-glyph-motif{stroke:var(--g-accent-text)}.mirror-rows{display:grid;gap:2px;padding-top:6px;border-top:1px solid var(--g-line)}.mirror-field{min-height:30px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 4px;color:var(--g-text);font-size:12px;font-weight:500}.mirror-field select{min-height:24px;min-width:96px;font-size:11px}.mirror-field .fold-lines{gap:2px;padding:2px;background:var(--g-well);border:1px solid var(--g-line);border-radius:var(--g-radius)}.mirror-field .fold-line-btn{padding:3px 8px;border:0;border-radius:var(--g-radius-sm);font-size:11px}.mirror-field .fold-line-btn.on{color:var(--g-text);background:var(--g-surface-3)}.mirror-centre{min-height:28px;padding:0 4px;color:var(--g-text);background:transparent;border:0;border-radius:var(--g-radius);font:500 12px var(--g-font-ui);text-align:left;cursor:pointer}.mirror-centre:hover:not(:disabled){background:var(--g-surface-3)}.mirror-centre:disabled{opacity:.4;cursor:default}.mirror-actions{display:flex;justify-content:space-between;align-items:center;gap:4px}.mirror-switch{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:0 8px;color:var(--g-text-dim);background:transparent;border:0;border-radius:var(--g-radius);font:500 12px var(--g-font-ui);cursor:pointer}.mirror-switch:hover,.mirror-switch.on{color:var(--g-text);background:var(--g-surface-3)}.mirror-switch-icon{width:13px;height:13px}.mirror-switch.on .mirror-switch-icon{color:var(--g-accent-text)}.mirror-steps{display:flex;flex:none;align-items:center;gap:10px;padding-right:12px;border-right:1px solid var(--g-line);white-space:nowrap}.mirror-steps-label{display:inline-flex;align-items:center;gap:6px;color:var(--g-text);font-weight:600}.mirror-step-list{display:flex;align-items:center;gap:6px;margin:0;padding:0;list-style:none}.mirror-step{display:inline-flex;align-items:center;gap:6px;color:var(--g-text-dim)}.mirror-step+.mirror-step:before{content:"›";margin-right:2px;color:var(--g-text-dim)}.mirror-step[data-state=current]{color:var(--g-text);font-weight:600}.mirror-step-num{display:inline-grid;place-items:center;width:18px;height:18px;border:1px solid var(--g-line-strong);border-radius:50%;font-size:11px;font-weight:600}.mirror-step[data-state=current] .mirror-step-num{color:var(--g-accent-ink);background:var(--g-accent);border-color:var(--g-accent)}.mirror-step-check{width:12px;height:12px}.mirror-step-hint{color:var(--g-accent-text);font-weight:500}.mirror-step[data-state=done] .mirror-step-hint{color:var(--g-text-dim)}.mirror-seg{display:inline-flex;gap:2px;padding:2px;background:var(--g-well);border:1px solid var(--g-line);border-radius:var(--g-radius)}.mirror-seg-btn{min-height:22px;padding:0 8px;color:var(--g-text-dim);background:transparent;border:0;border-radius:var(--g-radius-sm);font:500 12px var(--g-font-ui);cursor:pointer}.mirror-seg-btn:hover:not(:disabled){color:var(--g-text)}.mirror-seg-btn.on{color:var(--g-text);background:var(--g-surface-3)}.mirror-seg-btn:disabled{opacity:.5;cursor:default}.mirror-steps-select{min-height:26px;font-size:12px}.mirror-steps-quiet{min-height:28px;padding:0 8px;color:var(--g-text);background:transparent;border:0;border-radius:var(--g-radius);font:500 12px var(--g-font-ui);cursor:pointer}.mirror-steps-quiet:hover:not(:disabled){background:var(--g-surface-3)}.mirror-steps-quiet:disabled{color:var(--g-text-dim);cursor:default}.mirror-apply{min-height:28px;padding:0 12px;color:var(--g-accent-ink);background:var(--g-accent);border:0;border-radius:var(--g-radius);font:600 12px var(--g-font-ui);cursor:pointer}.mirror-apply:hover:not(:disabled){background:var(--g-accent-strong, var(--g-accent))}.mirror-apply:disabled{opacity:.4;cursor:default}.premium-icon:disabled{opacity:.32;cursor:default}.tool-hover-tip{position:fixed;z-index:var(--z-hover-tip);width:min(330px,calc(100vw - 32px));display:grid;gap:4px;padding:11px 12px;color:var(--g-text);background:var(--g-bg);border:1px solid var(--g-line-strong);border-radius:var(--g-radius-lg);box-shadow:var(--g-shadow-pop);overflow-y:auto;pointer-events:none}.tool-hover-tip>span{color:var(--g-text-dim);font-size:11px;font-weight:600}.tool-hover-tip strong{color:#fff;font-size:13px}.tool-hover-tip p{color:#ffffffbf;font-size:11px;line-height:1.4}.tool-hover-tip em{color:var(--g-text-dim);font-size:11px;font-style:normal}.tool-hover-tip kbd{justify-self:start;min-width:23px;padding:3px 5px;color:#fff;background:#ffffff1c;border:1px solid rgba(255,255,255,.18);border-bottom-width:2px;border-radius:var(--g-radius-sm);font:500 11px var(--g-font-ui, system-ui, sans-serif);text-align:center}.canvas-feedback{position:absolute;z-index:11;top:18px;left:50%;max-width:min(520px,calc(100% - 36px));padding:10px 14px;color:var(--g-text);background:var(--g-surface);border:1px solid var(--g-line-strong);border-radius:var(--g-radius-lg);box-shadow:var(--g-shadow-pop);font-size:12px;font-weight:500;line-height:1.35;transform:translate(-50%);pointer-events:none}.note-editor{position:absolute;z-index:16;top:18px;right:18px;width:min(330px,calc(100% - 36px));display:grid;gap:9px;padding:12px;color:var(--g-text);background:var(--g-surface);border:1px solid var(--g-line-strong);border-radius:var(--g-radius-lg);box-shadow:var(--g-shadow-pop)}.note-editor>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.note-editor strong{color:#fff;font-size:13px}.note-editor>div:first-child span{color:#ffffff8f;font-size:11px}.note-editor textarea{width:100%;resize:vertical;min-height:82px;padding:8px;color:var(--g-text);background:#ffffff12;border:1px solid rgba(255,255,255,.16);border-radius:var(--g-radius);font:12px/1.4 var(--g-font-ui, system-ui, sans-serif)}.note-editor textarea:focus{outline:2px solid var(--g-focus);outline-offset:1px}.note-editor-actions{display:flex;justify-content:flex-end;gap:7px}.note-editor-actions button{min-height:30px;padding:0 9px;color:#ffffffdb;background:var(--g-surface-2);border:1px solid transparent;border-radius:var(--g-radius);cursor:pointer;font:500 12px var(--g-font-ui, system-ui, sans-serif)}.note-editor-actions button.primary{color:var(--g-accent-ink);background:var(--g-accent);border-color:var(--g-accent)}.window-sim-loading{position:fixed;inset:0;z-index:var(--z-dialog);display:grid;place-items:center;background:var(--g-scrim);color:#ffffffd1;font-size:13px}.canvas-feedback-action{pointer-events:auto;margin-left:10px;padding:3px 10px;color:inherit;background:var(--g-surface-3);border:1px solid currentColor;border-radius:var(--g-radius);font-size:11px;font-weight:600;cursor:pointer;white-space:nowrap}.canvas-feedback-action:hover{background:#4a4a4a}.canvas-feedback.success{background:var(--g-surface);border-color:color-mix(in srgb,var(--g-ok) 55%,transparent)}.canvas-feedback.warning{color:var(--g-warn);background:var(--g-surface);border-color:var(--g-warn-line)}.share-dialog textarea{width:100%;min-height:82px;resize:vertical;padding:9px;color:var(--g-text);background:#0003;border:1px solid rgba(255,255,255,.15);border-radius:var(--g-radius-lg);font:11px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace}.share-dialog-actions{display:flex;justify-content:flex-end;gap:8px}.share-dialog-actions button{min-height:35px;padding:0 12px;color:var(--g-text);background:var(--g-surface-2);border:1px solid transparent;border-radius:var(--g-radius);cursor:pointer;font:inherit;font-size:12px;font-weight:500}.share-dialog-actions button.primary{color:var(--g-accent-ink);background:var(--g-accent);border-color:var(--g-accent)}.share-dialog-actions button.danger{color:var(--g-danger);background:var(--g-danger-soft);border-color:var(--g-danger-line)}@media(max-width:1600px){.premium-utility>span{display:none}.premium-utility{padding:0 6px}}@media(max-width:1180px){#premium-header{gap:8px;padding-inline:10px}.premium-technique>span{display:none}.premium-technique{min-width:108px}.premium-menu-trigger{padding-inline:7px}:root{--g-rail: 44px}}@media(max-width:1100px){#premium-header{height:auto;flex-wrap:wrap;row-gap:0}.premium-menus{flex-basis:100%;min-height:35px}.premium-spacer{display:none}.premium-utilities{margin-left:auto;height:36px;overflow-x:auto;scrollbar-width:none}}@media(max-width:900px){#premium-header{gap:7px}.premium-technique>span{display:none}.premium-technique{min-width:96px}.premium-menu-trigger{padding-inline:6px}:root{--g-rail: 42px}}.length-spin{position:fixed;z-index:var(--z-field-spin);width:16px;display:flex;flex-direction:column;gap:1px}.length-spin[hidden]{display:none}.length-spin button{flex:1;min-height:0;padding:0;border:0;border-radius:var(--g-radius-sm);display:grid;place-items:center;color:var(--g-text);background:#ffffff1a;cursor:default}.length-spin button:hover{background:#ffffff38}.length-spin button:before{content:"";border-left:4px solid transparent;border-right:4px solid transparent}.length-spin-up:before{border-bottom:4px solid currentColor}.length-spin-down:before{border-top:4px solid currentColor}#app[data-tab=glass] #body>:is(#rail,.split-workspace,.inspector-resizer,#inspector),#app[data-tab=preview] #body>:is(#rail,.split-workspace,.inspector-resizer,#inspector),#app[data-tab=glass]>:is(#tools,#statusbar),#app[data-tab=preview]>:is(#tools,#statusbar){display:none}#app[data-tab=plan] #body>#rail,#app[data-tab=plan]>#tools,#app[data-tab=plan] :is(.workspace-tools,.glass-band){display:none}#app[data-tab=plan] .canvas-surface{margin-bottom:0}.tab-workspace{display:flex;flex:1;min-width:0;min-height:0}.tab-workspace[hidden]{display:none}.tab-loading{display:grid;flex:1;place-items:center;color:var(--g-text-dim);font-size:13px}#canvas[data-tool=measure][data-measure-target=objects]{cursor:default}#canvas[data-tool=measure][data-measure-target=objects] .face:not(.locked){cursor:pointer}#canvas[data-tool=measure][data-measure-target=objects] .face.shape-hover{filter:var(--g-face-hover)}#canvas .measure-selection-bounds{fill:none;stroke:var(--measure-accent)}#canvas .measure-selection path{fill:none}#canvas .measure-selected-pieces path{fill:#087e82;fill-opacity:.14;stroke:#087e82}
