:root{--bg:#0b0b0a;--surface:#151513;--surface-strong:#22221f;--text:#eee9dc;--muted:#aaa697;--dim:#85877f;--line:#d6dbd21f;--line-strong:#d6dbd242;--steel:#282a28;--steel-light:#4a4d49;--edge:#d3cdbd;--edge-bright:#f1ecdf;--error:#d2665e;--error-ink:#a02a20;--font:"Plex Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", system-ui, sans-serif;--font-display:"Plex Sans Condensed", "Arial Narrow", sans-serif;--font-display-weight:600;--text-sm:.8125rem;--text-base:1rem;--text-lg:1.375rem;--text-xl:clamp(1.75rem, 1.2rem + 2.4vw, 2.75rem);--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.5rem;--s-6:2rem;--s-7:3rem;--s-8:4.5rem;--paper:#f7f3ea;--ink:#14120e;--ink-2:#3d3729;--ink-3:#6b6252;--ink-4:#9c9282;--ink-5:#cac2b2;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}*{border-radius:0;margin:0}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%}img,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}.label{font-size:var(--text-sm);color:var(--dim);letter-spacing:.04em}.eyebrow{font-size:var(--text-sm);color:var(--dim);text-transform:uppercase;letter-spacing:.16em}.num,input[type=number]{font-variant-numeric:tabular-nums}::selection{background:var(--text);color:var(--bg)}:focus-visible{outline:2px solid var(--text);outline-offset:2px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@font-face{font-family:Plex Sans;font-weight:400;font-style:normal;font-display:swap;src:url(/assets/plex-sans-400-CDDApCn2.woff2)format("woff2")}@font-face{font-family:Plex Sans;font-weight:600;font-style:normal;font-display:swap;src:url(/assets/plex-sans-600-CuJfVYMP.woff2)format("woff2")}@font-face{font-family:Plex Sans Condensed;font-weight:600;font-style:normal;font-display:swap;src:url(/assets/plex-sans-condensed-600-BGGmHloO.woff2)format("woff2")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f1ea;--surface:#fff;--surface-strong:#e9e4d9;--text:#1b1916;--muted:#55504a;--dim:#6f6961;--line:#14120e24;--line-strong:#14120e4d;--steel:#e4dfd4;--steel-light:#c5bfb2;--edge:#3a352c;--edge-bright:#14120e;--chrome-bg:var(--bg);--chrome-surface:var(--surface);--chrome-surface-2:var(--surface-strong);--chrome-line:var(--line);--chrome-line-strong:var(--line-strong);--chrome-text:var(--text);--chrome-muted:var(--muted);--chrome-dim:var(--dim);--chrome-danger:#8b1e16;--accent:#8a6a24;--accent-strong:#6d5319;--accent-ink:#fff}.site-footer{justify-content:flex-end;gap:14px;padding:8px 16px;font-size:12px;display:flex}.site-footer a{color:var(--muted,#706b62)}body[data-tab=design] .site-footer,body[data-tab=sheets] .site-footer,body[data-tab=nest] .site-footer{display:none}.help-legal{gap:var(--s-4);display:flex}.help-legal a{color:var(--muted);font-size:var(--text-sm)}.account-dialog label{gap:var(--s-1);margin:var(--s-4) 0;color:var(--dim);font-size:var(--text-sm);letter-spacing:.04em;display:grid}.account-dialog input{width:100%;min-width:0}.account-dialog input:focus{border-color:var(--text);outline:1px solid var(--text);outline-offset:1px}.account-dialog form{position:relative}.account-close{top:var(--s-3);right:var(--s-3);position:absolute}.account-status{padding:var(--s-3);border:1px solid var(--line);background:var(--surface);margin-top:var(--s-4)!important}.account-status[data-kind=error]{border-color:var(--error);color:var(--error-ink)}.account-status[data-kind=success]{border-color:var(--line-strong);color:var(--text)}.account-actions{flex-wrap:wrap}.danger{color:var(--chrome-danger)}.profile-view{min-height:100%;overflow:auto}.profile-page{width:min(44rem,100% - 2rem);margin:0 auto;padding:clamp(2rem,6vw,5rem) 0}.profile-page h1{margin:.3rem 0 var(--s-6);font-family:var(--font-display);font-size:clamp(2.5rem,7vw,4.5rem);font-weight:var(--font-display-weight);line-height:1}.profile-page section{padding:var(--s-5) 0;border-top:1px solid var(--line-strong)}.profile-page h2{margin:0 0 var(--s-2);font-family:var(--font-display);font-size:1.55rem;font-weight:var(--font-display-weight)}.profile-page section p{margin:0 0 var(--s-4);color:var(--muted)}.profile-page dl{margin:0 0 var(--s-4);grid-template-columns:8rem minmax(0,1fr);display:grid}.profile-page dt{color:var(--dim);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.12em}.profile-page dd{overflow-wrap:anywhere;margin:0}.profile-danger{border-color:var(--chrome-danger)!important}.profile-page .account-status{margin-top:var(--s-5)!important}.designs-view{min-height:100%;overflow:auto}.designs-page{width:min(52rem,100% - 2rem);margin:0 auto;padding:clamp(2rem,6vw,4rem) 0}.designs-page h1{margin:.3rem 0 var(--s-3);font-family:var(--font-display);font-size:clamp(2.2rem,6vw,3.4rem);font-weight:var(--font-display-weight);line-height:1}.designs-page #designs-intro{margin:0 0 var(--s-5);color:var(--muted)}.design-row{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-4) 0;border-top:1px solid var(--line);flex-wrap:wrap;display:flex}.design-row.is-open{border-left:3px solid var(--accent,var(--edge));padding-left:var(--s-3)}.design-row-id strong{font-size:1.05rem;display:block}.design-row-id span{color:var(--dim);font-size:var(--text-sm)}.design-row-actions{gap:var(--s-2);display:flex}.design-row-actions button{min-height:44px}.designs-cta{gap:var(--s-2);margin-top:var(--s-5);flex-wrap:wrap;display:flex}.designs-cta button{min-height:44px}#designs-empty p{color:var(--muted)}#designs-empty .hint{margin:var(--s-3) 0 0;border-top:0}.legal-page{min-height:100%}.legal{width:min(44rem,100% - 3rem);margin:0 auto;padding:clamp(2rem,6vw,4.5rem) 0 clamp(3rem,8vw,6rem)}.legal-brand{color:var(--muted);font-size:var(--text-sm);letter-spacing:.14em;text-transform:uppercase;margin-bottom:clamp(3rem,9vw,6rem);font-weight:600;text-decoration:none;display:inline-block}.legal-heading{margin-bottom:var(--s-8);padding-top:var(--s-5);border-top:1px solid var(--line-strong);position:relative}.legal-heading:before{content:"";border-top:3px solid var(--text);width:6.25rem;position:absolute;top:-1px;left:0}.legal h1{max-width:10ch;margin:0 0 var(--s-3);font-family:var(--font-display);font-size:clamp(3.25rem,10vw,6rem);font-weight:var(--font-display-weight);letter-spacing:-.025em;line-height:.9}.legal-date{margin:0 0 var(--s-7);color:var(--dim);font-size:var(--text-sm);font-variant-numeric:tabular-nums;letter-spacing:.08em;text-transform:uppercase}.legal-intro{max-width:39rem;color:var(--text);margin:0;font-size:clamp(1.15rem,2.5vw,1.4rem);line-height:1.55}.legal h2{margin:var(--s-7) 0 var(--s-4);padding-top:var(--s-5);border-top:1px solid var(--line);font-family:var(--font-display);font-size:clamp(1.65rem,4vw,2.15rem);font-weight:var(--font-display-weight);letter-spacing:-.01em;line-height:1.1}.legal h2+p{margin-top:0}.legal p{margin:0 0 var(--s-4);color:var(--muted);line-height:1.75}.legal p a,.legal-nav a{color:var(--text);-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:.25em;text-decoration-thickness:1px}.legal-nav{gap:var(--s-5);margin-top:var(--s-8);padding-top:var(--s-5);border-top:1px solid var(--line-strong);font-size:var(--text-sm);flex-wrap:wrap;font-weight:600;display:flex}@media (width<=520px){.legal{width:min(100% - 2rem,44rem);padding-top:var(--s-6)}.legal-brand{margin-bottom:var(--s-8)}.legal-heading{margin-bottom:var(--s-7)}.legal-date{margin-bottom:var(--s-6)}.legal h2{margin-top:var(--s-6)}}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--font);font-size:var(--text-base);-webkit-font-smoothing:antialiased;line-height:1.55}.app{grid-template-rows:auto minmax(0,1fr) auto;height:100%;display:grid}header{border-bottom:1px solid var(--line)}.bar{align-items:center;gap:var(--s-2);padding:var(--s-3) var(--s-4);flex-wrap:wrap;display:flex}.design-identity{align-items:center;display:flex}.design-identity label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.design-identity input[type=text]{width:11rem;min-width:0}#btn-lib-save[data-state=saved]{background:var(--surface);border-color:var(--line);color:var(--muted);font-weight:400}#btn-lib-save[data-state=saved]:active{background:var(--surface);border-color:var(--line-strong)}.workflow{align-items:center;gap:var(--s-4);margin-left:var(--s-4);flex:none;display:flex}.header-actions{align-items:center;gap:var(--s-2);flex:0 auto;min-width:0;margin-left:auto;display:flex}.wordmark,.header-actions>*{flex:none}.header-actions>.design-identity{flex:0 auto;min-width:0}.design-identity input[type=text]{max-width:100%}.bar .utility-menu>summary,.bar .advanced-tools>summary,.bar #btn-new,.bar #btn-lib-save,.bar #btn-help,.bar #btn-account,.bar #name-input{box-sizing:border-box;min-height:40px}.bar .utility-menu>summary,.bar .advanced-tools>summary{align-items:center;display:flex}.new-design-action{background:var(--surface);color:var(--text);border-color:var(--line-strong);white-space:nowrap;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.new-design-action>span{margin-right:var(--s-2);font-size:1.05rem;line-height:1}.nav-separator{width:1px;margin:0 var(--s-2);background:var(--line-strong);align-self:stretch}.nav-why{color:var(--dim);font-size:var(--text-sm)}.icon-btn{align-self:center;min-width:2.75rem;font-weight:600}.tab:disabled{opacity:.45;cursor:default}.utility-menu,.advanced-tools{position:relative}.utility-menu>summary,.advanced-tools>summary{box-sizing:border-box;cursor:pointer;padding:var(--s-2) var(--s-3);border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font-size:var(--text-sm);font-weight:600;list-style:none}.utility-menu>summary::-webkit-details-marker{display:none}.advanced-tools>summary::-webkit-details-marker{display:none}.utility-popover,.advanced-tools>div{z-index:20;box-sizing:border-box;gap:var(--s-2);top:calc(100% + var(--s-2));width:max-content;min-width:15rem;max-width:calc(100vw - 2 * var(--s-3));padding:var(--s-3);border:1px solid var(--line-strong);background:var(--bg);display:grid;position:absolute;right:0;box-shadow:0 .75rem 2rem #14120e2e}.advanced-tools>div{width:19rem;min-width:0;left:auto;right:0}.advanced-tools .inline-field{justify-content:space-between}body[data-tab=start] .viewport{overflow:auto}body[data-tab=start] .design-identity,body[data-tab=designs] .design-identity,body[data-tab=nest] .design-identity,body[data-tab=profile] .design-identity{display:none}.spacer{flex:auto}.wordmark{align-items:center;gap:var(--s-3);color:inherit;margin-right:var(--s-2);text-decoration:none;display:flex}.stamp{--frame-h:3rem;block-size:var(--frame-h);inline-size:calc(var(--frame-h) / 2);border:calc(var(--frame-h) / 28) solid var(--muted);color:var(--text);flex:none;place-items:center;display:grid}.stamp svg{height:calc(var(--frame-h) * 5 / 7);width:auto}.wordmark-name{font-family:var(--font-display);font-size:1.32rem;font-weight:var(--font-display-weight);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;line-height:1.14;display:grid}button,select,input[type=number],input[type=text],input[type=email],input[type=password],.filebtn{padding:var(--s-2) var(--s-3);border:1px solid var(--line);background:var(--surface);color:var(--text);font-size:var(--text-sm)}button,.filebtn{border-color:var(--line-strong);letter-spacing:.02em;cursor:pointer;font-weight:600}button:active,.filebtn:active{background:var(--bg);border-color:var(--line-strong)}button:disabled{border-color:var(--line);color:var(--dim);cursor:not-allowed;background:0 0}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}button.primary:disabled{border-color:var(--line);color:var(--dim);cursor:not-allowed;background:0 0;font-weight:400}button.primary:active{background:var(--accent-strong);border-color:var(--accent-strong)}input[type=text]{min-width:15rem;font-family:var(--font-display);font-weight:var(--font-display-weight);font-size:var(--text-lg);letter-spacing:.01em;padding-block:var(--s-1)}select{appearance:none;max-width:13rem;padding-right:calc(var(--s-3) + 1rem);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6' fill='none' stroke='%23a89f8d' stroke-width='1.4' stroke-linecap='square'%3E%3Cpath d='M1 1l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--s-3) center;background-size:.625rem .375rem}.filebtn input{display:none}.tab{padding:var(--s-2) 0;color:var(--muted);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.1em;background:0 0;border:0;font-weight:400}.tab span{width:1.35rem;height:1.35rem;margin-right:var(--s-1);border:1px solid var(--line);letter-spacing:0;vertical-align:middle;place-items:center;font-size:.625rem;line-height:1;display:inline-grid}.tab.on span{border-color:var(--text)}.tab.on{color:var(--text);border-bottom:2px solid var(--accent)}.inline-field{align-items:center;gap:var(--s-2);font-size:var(--text-sm);color:var(--dim);letter-spacing:.04em;display:flex}.inline-field input[type=number]{text-align:right;width:4.5rem}.specstrip{border-top:1px solid var(--line);flex-wrap:wrap;align-items:stretch;display:flex}.specstrip .cell{padding:var(--s-4);border-left:1px solid var(--line);gap:1px;display:grid}.specstrip .cell:first-child{border-left:0;padding-left:0}.specstrip .cell:last-child{border-right:1px solid var(--line)}.specstrip dt{color:var(--dim);text-transform:uppercase;letter-spacing:.12em;font-size:.6875rem}.specstrip dd{font-size:var(--text-sm);color:var(--muted)}.plan{font-size:var(--text-sm);color:var(--muted);letter-spacing:.02em}.plan.warn{color:var(--error);font-weight:600}.main{grid-template-columns:minmax(0,1fr);min-height:0;display:grid}body[data-tab=nest] .main{grid-template-columns:21rem 1fr}#panel{scrollbar-color:var(--steel-light) var(--surface);scrollbar-width:thin;overflow-y:auto}#panel[hidden]{display:none}#panel::-webkit-scrollbar{width:6px}#panel::-webkit-scrollbar-track{background:var(--surface)}#panel::-webkit-scrollbar-thumb{background:var(--steel-light)}details.grp{border-bottom:1px solid var(--line);overflow:hidden}details.grp>summary{cursor:pointer;width:100%;padding:var(--s-3) var(--s-5);font-size:var(--text-sm);color:var(--dim);text-transform:uppercase;letter-spacing:.16em}details.grp[open]>summary{color:var(--text);margin-bottom:var(--s-3)}p.hint{border-top:1px solid var(--line);margin:var(--s-5) var(--s-5) var(--s-3);color:var(--dim);font-size:var(--text-sm);max-width:34ch;padding-top:var(--s-3)}.row[hidden]{display:none}.row{align-items:center;gap:var(--s-3);width:100%;min-width:0;padding:var(--s-1) var(--s-5);flex-wrap:wrap;display:flex}.row .lab{color:var(--muted);font-size:var(--text-sm);flex:auto}.help{border:1px solid var(--line-strong);width:1rem;height:1rem;min-height:1rem;color:var(--dim);cursor:help;background:0 0;flex:none;place-items:center;padding:0;font-size:.65rem;display:inline-grid}.help[aria-expanded=true]{border-color:var(--text);background:var(--text);color:var(--bg)}.field-help{box-sizing:border-box;margin:var(--s-1) 0 var(--s-2);padding:var(--s-2) var(--s-3);border-left:2px solid var(--line-strong);color:var(--muted);font-size:var(--text-sm);flex:0 0 100%;line-height:1.45}.field-help[hidden]{display:none}.drawing-tools{gap:var(--s-2);display:inline-flex}.drawing-tools button.on{border-color:var(--text);color:var(--text)}.row .numwrap{align-items:baseline;gap:var(--s-2);flex:none;display:inline-flex}.row .numwrap input{text-align:right;width:4.75rem}.row .numwrap i{color:var(--dim);letter-spacing:.04em;min-width:2.75rem;font-size:.6875rem;font-style:normal}details.grp:is([data-group=tang],[data-group=profile-curves])>.row-num{flex-wrap:wrap}details.grp:is([data-group=tang],[data-group=profile-curves])>.row-num>.lab{flex:1 1 0;min-width:0}details.grp:is([data-group=tang],[data-group=profile-curves])>.row-num>.numwrap{margin-left:auto}details.grp[data-group=tang]>.field-section-divider{height:0;margin:var(--s-3) var(--s-5);border-bottom:1px solid var(--line)}.row select{flex:none;max-width:11rem}.row.is-check .lab{color:var(--text)}.row.is-check input,.canvas-toggle input{accent-color:var(--text);width:.875rem;height:.875rem}details.grp>.row.is-last-visible{padding-bottom:var(--s-4)}.holes{padding:var(--s-2) var(--s-5) var(--s-4);margin-top:var(--s-2);border-top:1px solid var(--line)}.holes-head{margin-bottom:var(--s-2);font-size:var(--text-sm);color:var(--dim);text-transform:uppercase;letter-spacing:.12em;justify-content:space-between;align-items:center;display:flex}.holes-head b{font-weight:400}.hole-row{align-items:flex-end;gap:var(--s-2);margin-bottom:var(--s-2);display:flex}.hole-row select{max-width:5.5rem;padding:var(--s-1) var(--s-2);padding-right:calc(var(--s-2) + 1rem);background-position:right var(--s-2) center}.mini-num{gap:1px;display:inline-grid}.mini-num i{color:var(--dim);letter-spacing:.06em;text-transform:uppercase;font-size:.625rem;font-style:normal}.mini-num input{text-align:right;width:3.75rem;padding:var(--s-1) var(--s-2)}button.mini{padding:var(--s-1) var(--s-2);font-size:var(--text-sm)}button.mini.wide{width:100%;margin-top:var(--s-2)}button.mini.danger{color:var(--dim);background:0 0;border-color:#0000}.viewport{flex-direction:column;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}#view-design{flex-direction:column;flex:auto;min-height:0;display:flex}#view-start{min-height:100%}.start-page{width:min(92rem,100%);margin:0 auto;padding:clamp(2rem,4vw,4rem) clamp(1.25rem,4vw,4rem)}.resume-banner{justify-content:space-between;align-items:center;gap:var(--s-4);margin:0 0 var(--s-6);padding:var(--s-4) var(--s-5);border:1px solid var(--line-strong);background:var(--surface);flex-wrap:wrap;display:flex}.resume-banner strong{font-weight:600;display:block}.resume-banner span{color:var(--muted);font-size:var(--text-sm)}.resume-actions{gap:var(--s-2);display:flex}.resume-actions button{min-height:44px}.advanced-tools hr{width:100%;height:0;margin:var(--s-1) 0;border:0;border-top:1px solid var(--line)}.start-primary{border-top:0}.start-section-head{padding:0 0 var(--s-6)}.start-section-head h1,.start-section-head h2{font-family:var(--font-display);font-size:clamp(2rem,2.8vw,3rem);font-weight:var(--font-display-weight);letter-spacing:-.015em;margin:.1rem 0 .35rem;line-height:.96}.start-section-head p{max-width:44rem;color:var(--muted);font-size:.9rem}.start-proof{margin:var(--s-4) 0 0;color:var(--text);font-size:var(--text-sm);flex-wrap:wrap;gap:.4rem 1.2rem;padding:0;font-weight:600;list-style:none;display:flex}.start-proof li{align-items:center;gap:.45rem;display:flex}.start-proof li:before{content:"";background:var(--accent);width:.45rem;height:.45rem}.start-workspace{gap:var(--s-5);grid-template-columns:minmax(0,2.35fr) minmax(21rem,1fr);align-items:start;display:grid}.preset-gallery{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.preset-card{min-width:0;min-height:14rem;padding:var(--s-4);border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface);color:var(--text);text-align:left;flex-direction:column;display:flex;position:relative;overflow:hidden}.preset-card:focus-visible{z-index:1;background:var(--surface-strong);outline:1px solid var(--edge);outline-offset:-1px;outline-width:2px}.preset-preview{width:100%;height:5.75rem;margin:0 0 var(--s-3);background:var(--paper);border:1px solid var(--line);place-items:center;padding:.65rem;display:grid;overflow:hidden}.preset-preview svg{width:100%;height:100%;overflow:hidden}.preset-preview .profile{fill:none;stroke:var(--ink);stroke-width:1.4px;vector-effect:non-scaling-stroke}.preset-heading{justify-content:space-between;align-items:baseline;gap:var(--s-3);display:flex}.preset-heading strong{font-family:var(--font-display);font-size:1.45rem;font-weight:var(--font-display-weight);line-height:1}.preset-heading a{color:inherit;text-decoration:none}.preset-heading i{color:var(--dim);font-size:.8rem;font-style:normal}.preset-note{margin:var(--s-2) 0 var(--s-3);color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:auto;font-size:.75rem;line-height:1.4;display:-webkit-box;overflow:hidden}.preset-sizes{gap:var(--s-2);flex-wrap:wrap;display:flex}.preset-size{border:1px solid var(--steel-light);min-height:2.35rem;color:inherit;background:0 0;place-items:center;padding:.4rem .65rem;font-size:.75rem;font-weight:600;text-decoration:none;display:inline-grid}.preset-size:focus-visible{border-color:var(--edge);background:var(--text);color:var(--bg)}.start-offer{margin-top:var(--s-7);padding-top:var(--s-5);border-top:1px solid var(--line-strong)}.offer{gap:var(--s-5);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));display:grid}.offer-col ul{margin:var(--s-2) 0 0;color:var(--muted);font-size:var(--text-sm);padding-left:1.1rem;line-height:1.7}.account-dialog .offer{gap:var(--s-3);margin-top:var(--s-4);grid-template-columns:1fr}.account-dialog .offer-col ul{line-height:1.5}.start-alternatives{top:var(--s-4);border:1px solid var(--line-strong);background:var(--surface);display:grid;position:sticky}.start-alternatives-head{padding:var(--s-5);border-bottom:1px solid var(--line-strong)}.start-alternatives-head h2{font-family:var(--font-display);font-size:1.75rem;font-weight:var(--font-display-weight);margin:.2rem 0 0;line-height:1}.start-alternatives button,.start-alternatives>a{gap:var(--s-2);padding:var(--s-5);border:0;border-bottom:1px solid var(--line-strong);color:inherit;text-align:left;background:0 0;text-decoration:none;display:grid}.start-alternatives button:last-child,.start-alternatives>a:last-child{border-bottom:0}.start-alternatives button:focus-visible,.start-alternatives>a:focus-visible{background:var(--surface-strong);outline:1px solid var(--edge);outline-offset:-1px}.alt-preview{background:var(--paper);border:1px solid var(--line);place-items:center;width:100%;height:5rem;padding:.55rem;display:grid;overflow:hidden}.alt-preview svg{width:100%;height:100%;overflow:hidden}.alt-preview .profile{fill:none;stroke:var(--ink);stroke-width:1.4px;vector-effect:non-scaling-stroke}.alt-preview .stock{fill:none;stroke:var(--ink-3);stroke-width:1px;stroke-dasharray:5 4;vector-effect:non-scaling-stroke}.alt-preview .mark{fill:none;stroke:var(--ink-3);stroke-width:1px;vector-effect:non-scaling-stroke}.start-alternatives button>b,.start-alternatives a>b{font-family:var(--font-display);font-size:1.6rem;font-weight:var(--font-display-weight);line-height:1.05}.start-alternatives button>span,.start-alternatives>a>span{color:var(--muted);font-size:.8125rem;font-weight:400;line-height:1.5}.start-alternatives button>em,.start-alternatives>a>em{margin-top:var(--s-2);padding:var(--s-2) var(--s-4);border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font-size:var(--text-sm);justify-self:start;font-style:normal;font-weight:600}.start-alternatives button:focus-visible>em,.start-alternatives>a:focus-visible>em{border-color:var(--text);background:var(--surface-strong)}html[data-initial-tab] #view-start,html[data-initial-tab] #view-design,html[data-initial-tab] #view-sheets,html[data-initial-tab] #view-nest,html[data-initial-tab] #view-designs,html[data-initial-tab] #view-profile{display:none!important}html[data-initial-tab=start] #view-start,html[data-initial-tab=design] #view-design,html[data-initial-tab=nest] #view-nest{display:flex!important}html[data-initial-tab=sheets] #view-sheets,html[data-initial-tab=designs] #view-designs,html[data-initial-tab=profile] #view-profile{display:block!important}.print-settings{border:1px solid var(--line-strong);background:var(--surface);grid-template-columns:1fr;display:grid}.print-settings>.grp{padding:var(--s-4) var(--s-5) var(--s-5);border:0;border-top:1px solid var(--line);align-self:stretch;overflow:visible}.print-settings>.grp:first-child{border-top:0}@media (width>=52rem){.print-settings{grid-template-columns:repeat(2,minmax(0,1fr))}.print-settings>.grp{border-top:0;border-left:1px solid var(--line)}.print-settings>.grp:first-child{border-left:0}}.print-settings>.grp>h2,.print-settings>.grp>.row{max-width:28rem}.print-settings>.grp>h2{margin:0 0 var(--s-3);padding-bottom:var(--s-2);border-bottom:1px solid var(--line);color:var(--dim);font-family:var(--font);font-size:var(--text-sm);letter-spacing:.16em;text-transform:uppercase;font-weight:600}.print-settings .row{grid-template-columns:minmax(0, 1fr) 1rem var(--control-col,11rem);align-items:center;gap:var(--s-1) var(--s-3);padding:var(--s-2) 0;min-height:2.25rem;display:grid}.print-settings .row>.lab{color:var(--text);font-size:var(--text-sm);grid-area:1/1}.print-settings .row>.help{grid-area:1/2}.print-settings .row>.numwrap,.print-settings .row>select,.print-settings .row.is-check>input[type=checkbox]{grid-area:1/3}.print-settings .row.is-check>input[type=checkbox]{justify-self:start;margin-left:1px}.print-settings .row>select{width:100%;max-width:none}.print-settings .row>.numwrap{align-items:baseline;gap:var(--s-2);grid-template-columns:5.5rem minmax(0,1fr);display:grid}.print-settings .row>.numwrap input{width:100%}.print-settings .row>.numwrap i{min-width:0}.print-settings .row>.field-help{margin:0 0 var(--s-1);grid-column:1/-1}.print-settings .row.is-last-visible{padding-bottom:var(--s-2)}.editor-stage{background:var(--paper);flex:auto;min-height:0;display:flex;position:relative}#canvas{background:var(--paper);touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;flex:auto;width:100%}#canvas.panning{cursor:grabbing}#canvas.is-drawing{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M4 20l4.2-1 10.9-10.9-3.2-3.2L5 15.8 4 20z' fill='%231b1916' stroke='%23fff' stroke-width='1.2'/%3E%3Cpath d='M14.8 6l3.2 3.2' stroke='%23fff' stroke-width='1.2'/%3E%3C/svg%3E") 3 21,default}#canvas.is-erasing{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cpath d='M2 6h8M6 2v8' fill='none' stroke='%231b1916' stroke-width='1.5'/%3E%3Cg transform='rotate(-38 19 19)'%3E%3Cpath d='M13 9h12v18H13z' fill='%23f4eee4' stroke='%231b1916' stroke-width='1.8'/%3E%3Cpath d='M13 20h12v7H13z' fill='%23b33a32' stroke='%231b1916' stroke-width='1.8'/%3E%3Cpath d='M16 12h6' stroke='%23fff' stroke-width='1.2'/%3E%3C/g%3E%3C/svg%3E") 6 6,crosshair}#canvas.is-moving{cursor:move}#canvas.is-measuring{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cpath d='M5 20L20 5' stroke='%231b1916' stroke-width='3'/%3E%3Cpath d='M3 17l8 8M17 3l8 8M8 17l3 3M12 13l3 3M16 9l3 3' stroke='%23fff' stroke-width='1.4'/%3E%3C/svg%3E") 5 20,default}#canvas.is-drawing #handles *,#canvas.is-erasing #handles *,#canvas.is-measuring #handles *{cursor:inherit}.reset-template{right:var(--s-5);bottom:var(--s-5);z-index:2;border-color:var(--line-strong);position:absolute;box-shadow:0 .25rem .8rem #14120e1f}.vbar{align-items:center;gap:var(--s-4);padding:var(--s-3) var(--s-5);border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;display:grid}.vbar-msg{min-width:0;display:grid}.vbar-msg>*{grid-area:1/1;align-self:center}.keys{color:var(--dim);font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.keys b{color:var(--muted);font-weight:400}.keys kbd{border:1px solid var(--line);padding:0 var(--s-1);color:var(--muted);font-family:inherit;font-size:.6875rem}#view-sheets{min-height:0;padding:var(--s-6) var(--s-5);flex:auto;overflow:auto}.print-page{max-width:78rem;display:flow-root}.print-block{margin-top:var(--s-6)}.print-block-title{margin:0 0 var(--s-2);padding-bottom:var(--s-2);border-bottom:1px solid var(--line-strong);font-family:var(--font);font-size:var(--text-sm);letter-spacing:.16em;text-transform:uppercase;color:var(--text);font-weight:600}.print-block-note{max-width:62ch;margin:0 0 var(--s-4);color:var(--dim);font-size:var(--text-sm)}.print-guide{margin-top:var(--s-4);border:1px solid var(--line-strong);background:var(--surface);grid-template-columns:1fr;gap:0;display:grid}.print-guide-col{padding:var(--s-4) var(--s-5) var(--s-5);border-top:1px solid var(--line)}.print-guide-col:first-child{border-top:0}@media (width>=52rem){.print-guide{grid-template-columns:1.15fr 1fr}.print-guide-col{border-top:0;border-left:1px solid var(--line)}.print-guide-col:first-child{border-left:0}}.print-guide-col h3{margin:0 0 var(--s-3);font-family:var(--font-display);font-size:1.25rem;font-weight:var(--font-display-weight)}.print-guide-col p{max-width:46ch;margin:0 0 var(--s-3);color:var(--muted);font-size:var(--text-sm);line-height:1.65}.print-guide-col p:last-child{margin-bottom:0}.print-guide-col p b{color:var(--text)}.checklist{max-width:48ch;color:var(--muted);font-size:var(--text-sm);margin:0;padding-left:1.4em;line-height:1.65}.checklist li{margin-bottom:var(--s-3);padding-left:var(--s-1)}.checklist li:last-child{margin-bottom:0}.checklist ::marker{color:var(--dim);font-variant-numeric:tabular-nums}.checklist b{color:var(--text);font-weight:600}.checklist em{color:var(--error-ink);font-style:normal}.sheets-frame{margin-bottom:var(--s-5);overflow:hidden}.sheets-scale{gap:var(--s-5);transform-origin:0 0;width:max-content;display:grid}#view-sheets .sheet{background:var(--paper);outline:1px solid var(--line);position:relative}.cut{stroke:var(--ink);fill:none}.guide{stroke:var(--ink-2);fill:none}.construction{stroke:var(--ink-3)}.dim,.xhair{stroke:var(--ink-2);fill:none}.datum,.centre,.witness,.stock{stroke:var(--ink-3);fill:none}.grid{stroke:var(--ink-5);fill:none}.grid-major{stroke:var(--ink-4)}.seam{stroke:var(--ink-2);fill:none}.crop,.ruler,.reg circle,.reg line{stroke:var(--ink);fill:none}.txt{font-family:var(--font);fill:var(--ink-2);stroke:none}.title{font-family:var(--font-display);font-weight:var(--font-display-weight);fill:var(--ink);letter-spacing:.01em}.spec{fill:var(--ink-2)}.note{fill:var(--ink-3)}.lbl-dim,.reg .txt,.lbl-hole{fill:var(--ink-2)}.lbl-datum,.lbl-stock,.seam-lbl{fill:var(--ink-3)}.lbl-guide{fill:var(--ink-2)}.lbl-piece,.sheet-id{fill:var(--ink);font-weight:600}.hint{fill:var(--ink-3)}.warn,.calib{fill:var(--error-ink);font-weight:600}.watermark{fill:color-mix(in srgb, var(--error-ink) 22%, transparent);font-family:var(--font-display);font-weight:var(--font-display-weight)}#canvas .cut{vector-effect:non-scaling-stroke;stroke-width:1.7px}#canvas .guide,#canvas .seam{vector-effect:non-scaling-stroke;stroke-width:1.2px}#canvas .construction,#canvas .datum,#canvas .centre,#canvas .stock{vector-effect:non-scaling-stroke;stroke-width:1px}#canvas .dim,#canvas .witness,#canvas .xhair,#canvas .reg circle,#canvas .reg line{vector-effect:non-scaling-stroke;stroke-width:.9px}#canvas .grid{vector-effect:non-scaling-stroke;stroke-width:.6px}#canvas #grid path{fill:none;vector-effect:non-scaling-stroke;pointer-events:none}#canvas #grid .g-minor{stroke:var(--ink-5);stroke-width:.5px;opacity:.55}#canvas #grid .g-major{stroke:var(--ink-4);stroke-width:.7px;opacity:.75}#canvas #grid .g-axis{stroke:var(--ink-3);stroke-width:1.2px}#canvas #grid .g-label{fill:var(--ink-4);font-family:var(--font);pointer-events:none;-webkit-user-select:none;user-select:none}#handles g{cursor:move}#handles .curve-target{fill:none;stroke:#0000;stroke-width:16px;vector-effect:non-scaling-stroke;cursor:pointer;pointer-events:stroke}#handles .curve-selection{fill:none;stroke:color-mix(in srgb, var(--error-ink) 55%, transparent);stroke-width:4px;vector-effect:non-scaling-stroke;pointer-events:none}#handles .curve-selection.sel{stroke:var(--error-ink)}#handles .curve-arm{fill:none;stroke:var(--ink-3);stroke-dasharray:3 2;vector-effect:non-scaling-stroke;pointer-events:none}#handles .h-curve .h-dot{fill:var(--paper);stroke:var(--error-ink)}#handles .h-hit{fill:#0000;stroke:none}#handles .h-dot{vector-effect:non-scaling-stroke;stroke-width:1.4px;fill:var(--paper);stroke:var(--ink-2)}#handles .h-prime .h-dot{fill:var(--ink);stroke:var(--ink)}#handles .h-tang .h-dot{fill:var(--ink-4);stroke:var(--ink-2)}#handles .h-guide .h-dot{fill:var(--paper);stroke:var(--ink-3)}#handles .h-hole .h-dot{fill:var(--paper);stroke:var(--ink)}#handles .hov .h-dot{stroke:var(--ink);stroke-width:2px}#handles .sel .h-dot{fill:var(--error-ink);stroke:var(--error-ink)}#handles .snap-guide{stroke:var(--ink-3);fill:none;vector-effect:non-scaling-stroke;pointer-events:none}#handles .h-readout{fill:var(--ink);font-family:var(--font);paint-order:stroke;stroke:var(--paper);stroke-width:3px;pointer-events:none;font-weight:600}#handles .h-readout.snapped{fill:var(--error-ink)}#handles .hole-guide{stroke:var(--error-ink);stroke-width:1.2px;stroke-dasharray:5 4;vector-effect:non-scaling-stroke;pointer-events:none}#handles .hole-guide-label{fill:var(--ink);font-family:var(--font);paint-order:stroke;stroke:var(--paper);stroke-width:4px;stroke-linejoin:round;pointer-events:none;font-weight:600}#handles .hole-preview{fill:color-mix(in srgb, var(--paper) 70%, transparent);stroke:var(--ink-2);vector-effect:non-scaling-stroke;pointer-events:none}#handles .hole-preview.snapped{stroke:var(--error-ink)}#nest-panel{border-right:1px solid var(--line);background:var(--bg);width:auto;min-width:0;color:var(--text);overflow:auto}.nest-intro{padding:var(--s-5);border-bottom:1px solid var(--line)}.nest-intro p{margin-top:var(--s-2);max-width:32ch;color:var(--muted);font-size:var(--text-sm)}.wide{width:calc(100% - 2 * var(--s-5));margin:var(--s-2) var(--s-5) var(--s-3);display:block}.nest-profile{padding:.6rem var(--s-5);border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 3.5rem auto;align-items:center;gap:.45rem;display:grid}.nest-profile span{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.nest-profile input{min-width:0}.nest-source{align-items:stretch;gap:var(--s-2);padding-top:var(--s-3);flex-direction:column}.row.nest-source select{width:100%;max-width:none}.nest-status{z-index:4;top:var(--s-5);left:var(--s-5);align-items:center;gap:var(--s-3);min-width:min(24rem,100% - 3rem);padding:var(--s-3) var(--s-4);border:1px solid var(--line-strong);background:var(--chrome-bg);display:flex;position:absolute;box-shadow:0 .5rem 1.5rem #14120e24}.nest-status.is-running{border-color:var(--text)}#nest-progress{color:var(--muted);font-size:var(--text-sm);margin-top:2px}.nest-activity{color:var(--text);align-items:center;display:flex}.nest-activity i{background:var(--text);width:.6rem;height:.6rem;animation:.8s steps(2,end) infinite nest-pulse;display:block}@keyframes nest-pulse{50%{opacity:.2}}@media (prefers-reduced-motion:reduce){.nest-activity i{animation:none}}#view-nest{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex}.nest-stage{background:var(--surface);flex:auto;min-height:240px;padding:1rem;position:relative;overflow:hidden}#nest-canvas{background:var(--paper);width:100%;height:100%;min-height:240px;box-shadow:0 0 0 1px var(--line)}#nest-canvas .cut{fill:#14120e14;stroke:var(--text);stroke-width:.3px;vector-effect:non-scaling-stroke}#nest-canvas .stock{fill:none;stroke:var(--dim);stroke-width:1px;vector-effect:non-scaling-stroke}#nest-canvas .remainder{fill:#14120e0d;stroke:var(--dim);stroke-width:.5px;stroke-dasharray:4 3;vector-effect:non-scaling-stroke}#nest-canvas .remainder-label{fill:var(--muted);font-family:var(--font);letter-spacing:.04em}#nest-canvas.is-updating{opacity:.58}.nest-warning{color:var(--error-ink);border:1px solid var(--error-ink);margin:.75rem .9rem 0;padding:.65rem .8rem;font-weight:600}#nest-metrics{min-height:3.8rem;padding-inline:var(--s-4)}.nest-export{flex-wrap:wrap}.canvas-toolbar,.tool-rail{z-index:5;border:1px solid var(--line-strong);background:var(--bg);align-items:center;gap:1px;display:flex;position:absolute;box-shadow:0 .5rem 1.5rem #14120e24}.canvas-toolbar{top:var(--s-3);left:var(--s-3);max-width:calc(100% - 2 * var(--s-3));flex-wrap:wrap}.editor-stage:has(.side-plate:not([hidden]):not(.is-collapsed)) .canvas-toolbar{max-width:calc(100% - 18.5rem - 3 * var(--s-3))}.canvas-toolbar label{align-items:center;gap:var(--s-2);padding-left:var(--s-3);color:var(--text);font-size:var(--text-sm);display:flex}.canvas-toolbar .canvas-toggle{padding-right:var(--s-3);white-space:nowrap;cursor:pointer;align-self:stretch}body:not([data-mode=blank]) .grid-toggle{display:none}.canvas-toolbar button,.canvas-toolbar select,.tool-rail button{border:0;border-left:1px solid var(--line);min-height:44px}.canvas-toolbar>:first-child,.tool-rail>:first-child{border-left:0}.tool-rail{top:calc(46px + var(--s-3) + var(--s-3));left:var(--s-3);max-height:calc(100% - 46px - var(--s-3) - var(--s-3) - var(--s-3));flex-direction:column;align-items:stretch;gap:0;overflow-y:auto}.tool-rail .tool-row{flex-direction:column;display:flex}.tool-options-bar{z-index:5;left:var(--s-3);bottom:var(--s-3);max-width:calc(100% - 2 * var(--s-3));border:1px solid var(--line-strong);background:var(--bg);flex-wrap:wrap;align-items:stretch;gap:0;display:flex;position:absolute;box-shadow:0 .5rem 1.5rem #14120e24}.tool-options-bar[hidden]{display:none}.tool-options-bar .tool-sheet{display:contents}.tool-options-bar .tool-options,.tool-options-bar .hole-size{align-items:center;gap:var(--s-3);padding:var(--s-2) var(--s-3);border-left:1px solid var(--line);color:var(--text);font-size:var(--text-sm);white-space:nowrap;display:flex}.tool-options-bar>:first-child,.tool-options-bar .tool-sheet>:first-child{border-left:0}.tool-options-bar .tool-options[hidden],.tool-options-bar .hole-size[hidden]{display:none}.tool-options-bar label{white-space:nowrap;align-items:center;gap:.4rem;display:flex}.tool-options-bar input[type=number]{width:4.5rem;min-height:34px}.tool-options-bar select{min-height:34px}.tool-options-bar input[type=checkbox]{width:auto;min-height:0}.tool-options-bar button{min-height:34px}.tool-options-bar .tool-note{max-width:32rem;color:var(--muted);font-size:var(--text-xs,.75rem);white-space:normal;line-height:1.35}.tool-options-bar .curve-presets{position:relative}.tool-rail button{border-top:1px solid var(--line);text-align:left;border-left:0;min-width:5.5rem}.tool-rail .hole-size[hidden]{display:none}.tool-rail button.on{background:var(--text);color:var(--bg)}.tool-rail .hole-size{box-sizing:border-box;padding:var(--s-2) var(--s-3);border-top:1px solid var(--line);background:var(--surface);color:var(--text);font-size:var(--text-sm);white-space:nowrap;align-self:stretch;align-items:center;gap:.3rem;margin:0;display:flex}.tool-rail .hole-size input{width:3.5rem;min-height:36px;padding:.25rem}.tool-rail .tool-options{gap:var(--s-2);padding:var(--s-3);border-top:1px solid var(--line);color:var(--text);font-size:var(--text-sm);display:grid}.tool-rail .tool-options[hidden]{display:none}.tool-rail .tool-options label{grid-template-columns:1fr 3.5rem auto;align-items:center;gap:.3rem;display:grid}.tool-rail .tool-options input,.tool-rail .tool-options select{box-sizing:border-box;min-width:0;min-height:36px;padding:.25rem}.tool-rail .tool-options input{width:3.5rem}.tool-rail .tool-options select{grid-column:2/4;width:100%}.tool-rail button[hidden],.canvas-toolbar button[hidden]{display:none}.tool-rail .tool-note{max-width:12rem;color:var(--muted);font-size:var(--text-xs,.75rem);white-space:normal;line-height:1.35;display:block}.tool-rail .tool-options .canvas-toggle{white-space:normal;grid-template-columns:none;align-items:flex-start;gap:.4rem;display:flex}.tool-rail .tool-options .canvas-toggle input{width:auto;min-height:0}.side-plate{z-index:5;top:var(--s-3);right:var(--s-3);width:18.5rem;max-height:calc(100% - 2 * var(--s-3));border:1px solid var(--line-strong);background:var(--bg);flex-direction:column;display:flex;position:absolute;box-shadow:0 .5rem 1.5rem #14120e24}.side-plate[hidden]{display:none}.plate-head{border-bottom:1px solid var(--line-strong);flex:none;align-items:stretch;display:flex}.plate-tabs{flex:auto;min-width:0;display:flex}.plate-tab,.plate-fold{border:0;border-left:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--text);font-size:var(--text-sm);font-weight:600}.plate-tab{text-align:center;flex:1 1 0;min-width:0}.plate-fold{padding-inline:var(--s-3);flex:none}.plate-head>:first-child,.plate-tabs>:first-child{border-left:0}.plate-tab[hidden]{display:none}.plate-tab[aria-selected=true]{background:var(--bg);color:var(--text)}.side-plate.single-face .plate-tab[aria-selected=true]{cursor:default}.side-plate.is-collapsed{border-color:var(--line-strong);width:auto}.inspector{overflow-y:auto}.inspector[hidden],.inspector.is-behind{display:none}.inspector-group{border-top:1px solid var(--line)}.inspector-group[hidden]{display:none}.inspector-group:first-child{border-top:0}.inspector-group>summary{padding:var(--s-2) var(--s-3);color:var(--text);font-size:var(--text-sm);cursor:pointer;align-items:center;gap:var(--s-2);font-weight:600;display:flex}.inspector-group>summary::marker{color:var(--muted)}.inspector .inspect-count{color:var(--muted);font-weight:400;font-size:var(--text-xs,.75rem);margin-left:auto}.inspector .hint{margin:0 var(--s-3) var(--s-2);font-size:var(--text-xs,.75rem)}.inspect-row{align-items:end;gap:var(--s-2);padding:0 var(--s-3) var(--s-2);flex-wrap:wrap;display:flex}.inspect-row[hidden]{display:none}.inspect-row .mini-num{gap:.15rem;display:grid}.inspect-row .mini-num i{color:var(--muted);font-size:var(--text-xs,.75rem);font-style:normal}.inspect-row .mini-num input,.inspect-row .mini-num select{box-sizing:border-box;width:4.6rem;min-height:32px;padding:.2rem .3rem}.inspect-row button.mini{min-height:32px}.inspect-list{padding:0 var(--s-3) var(--s-2);gap:.2rem;display:grid}.inspect-item{align-items:center;gap:var(--s-2);color:var(--text);font-size:var(--text-xs,.75rem);display:flex}.inspect-item span{flex:auto}.inspect-item.is-error span{color:var(--error);font-weight:600}#drawing-issues-group.has-errors>summary{color:var(--error)}#handles .segment-target{fill:none;stroke:#0000;stroke-width:12px;vector-effect:non-scaling-stroke;pointer-events:stroke}.canvas-toolbar button.on{background:var(--text);color:var(--bg)}.canvas-settings{align-items:stretch;display:flex;position:relative}.canvas-settings>summary{min-height:44px;padding:0 var(--s-3);border-left:1px solid var(--line);cursor:pointer;color:var(--text);font-size:var(--text-sm);white-space:nowrap;align-items:center;list-style:none;display:flex}.canvas-settings>summary::-webkit-details-marker{display:none}.canvas-settings[open]>summary{background:var(--text);color:var(--bg)}.canvas-settings>div{z-index:6;top:calc(100% + var(--s-2));gap:var(--s-2);width:max-content;padding:var(--s-3);border:1px solid var(--line-strong);background:var(--bg);display:grid;position:absolute;left:0;box-shadow:0 .5rem 1.5rem #14120e2e}.canvas-settings>div>label{align-items:center;gap:var(--s-2);white-space:nowrap;padding:0;display:flex}.canvas-settings>div>button{min-height:36px}.canvas-toolbar .glyph{min-width:44px;padding-inline:var(--s-2);font-size:1rem;line-height:1}.nudge-pad{display:flex}.nudge-pad button{min-width:44px;padding-inline:var(--s-2)}#handles .segment-highlight{fill:none;stroke:var(--error-ink);stroke-width:4px;opacity:.9;vector-effect:non-scaling-stroke;pointer-events:none}#handles .marquee{fill:color-mix(in srgb, var(--error-ink) 8%, transparent);stroke:var(--error-ink);stroke-dasharray:4 3;vector-effect:non-scaling-stroke;pointer-events:none}#handles .arc-preview{fill:none;stroke:var(--error-ink);vector-effect:non-scaling-stroke;pointer-events:none}#handles .arc-preview.straight{stroke:var(--ink-3);stroke-dasharray:5 4}#handles .guide.construction{stroke:var(--ink-3);stroke-dasharray:2 3;vector-effect:non-scaling-stroke;pointer-events:none}#handles .sel.primary .h-dot{stroke:var(--ink);stroke-width:2.5px}#handles .join-preview{fill:var(--error-ink);stroke:var(--paper);vector-effect:non-scaling-stroke;pointer-events:none}#handles .measure-line{stroke:var(--error-ink);stroke-width:1.5px;stroke-dasharray:5 4;vector-effect:non-scaling-stroke}#handles .measure-label{fill:var(--text);paint-order:stroke;stroke:var(--bg);stroke-width:4px;stroke-linejoin:round}#handles .measure-point{fill:var(--error-ink);stroke:var(--paper);vector-effect:non-scaling-stroke;pointer-events:none}#handles .serration-preview{fill:none;stroke:var(--error-ink);stroke-width:1.5px;vector-effect:non-scaling-stroke}.print-workspace-head{display:block}.print-workspace-head .back-to-design{width:max-content;margin:0 0 var(--s-5);display:block}.print-workspace-head .eyebrow{display:block}.print-workspace-head h1{margin:.15rem 0 var(--s-3);font-family:var(--font-display);font-weight:var(--font-display-weight);font-size:2rem}.print-plan{color:var(--text);font-size:var(--text-sm);font-variant-numeric:tabular-nums;letter-spacing:.02em;margin:0}.print-dock{z-index:8;justify-content:space-between;align-items:center;gap:var(--s-4);margin-top:var(--s-6);padding:var(--s-3) var(--s-5);border:1px solid var(--line-strong);background:var(--bg);box-shadow:0 -.5rem 1rem var(--bg);display:flex;position:sticky;bottom:0}.print-dock span{color:var(--muted);font-size:var(--text-sm)}.print-dock-actions{gap:var(--s-2);display:flex}input[aria-invalid=true]{border-color:var(--error);outline:1px solid var(--error)}.sr-only{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.app-dialog{border:1px solid var(--line-strong);background:var(--bg);width:min(30rem,100vw - 2rem);color:var(--text);margin:auto;padding:0;box-shadow:0 1rem 4rem #14120e38}.app-dialog::backdrop{background:#14120e73}.app-dialog form{padding:var(--s-6)}.app-dialog h2{margin:.3rem 0 var(--s-3);font-family:var(--font-display);font-size:2rem;font-weight:var(--font-display-weight);line-height:1.05}.app-dialog p{color:var(--muted);margin:0}.app-dialog #app-dialog-prompt{gap:var(--s-1);margin-top:var(--s-4);color:var(--dim);font-size:var(--text-sm);display:grid}.app-dialog #app-dialog-input{width:100%;min-height:44px}.app-dialog-actions{justify-content:flex-end;gap:var(--s-2);margin-top:var(--s-6);display:flex}.app-dialog[data-kind=notice] #app-dialog-cancel{display:none}.help-dialog{width:min(38rem,100vw - 2rem);max-height:calc(100vh - 4rem);overflow:auto}.help-dialog section{margin-top:var(--s-6);padding-top:var(--s-5);border-top:1px solid var(--line)}.help-dialog h3{margin:0 0 var(--s-3);font-family:var(--font-display);font-size:1.25rem;font-weight:var(--font-display-weight)}.help-dialog ol{color:var(--muted);margin:0;padding-left:1.25rem;line-height:1.6}.help-dialog li+li{margin-top:var(--s-2)}.help-dialog p{margin:0 0 var(--s-4);color:var(--muted);line-height:1.6}.help-dialog ol+p{margin-top:var(--s-4)}.help-dialog>form>section>:last-child{margin-bottom:0}.help-dialog b{color:var(--text);font-weight:600}.help-dialog kbd{border:1px solid var(--line-strong);background:var(--surface);color:var(--text);white-space:nowrap;border-bottom-width:2px;padding:0 .35em;font-family:inherit;font-size:.8125em;line-height:1.5;display:inline-block}.help-dialog kbd+kbd{margin-left:.15em}.help-dialog p.hint{max-width:none;margin:0 0 var(--s-4);padding:var(--s-3) var(--s-4);border:0;border-left:2px solid var(--line-strong);background:var(--surface);color:var(--dim);font-size:var(--text-sm);line-height:1.55}.help-keys{gap:var(--s-3) var(--s-4);grid-template-columns:fit-content(9.5rem) minmax(0,1fr);align-items:baseline;margin:0;display:grid}.help-keys dt{white-space:normal}.help-keys dd{color:var(--muted);font-size:var(--text-sm);margin:0;line-height:1.5}.help-dialog .app-dialog-actions{z-index:1;margin:var(--s-6) calc(var(--s-6) * -1) calc(var(--s-6) * -1);padding:var(--s-4) var(--s-6);border-top:1px solid var(--line);background:var(--bg);position:sticky;bottom:0}body.content-page{background:var(--bg);min-height:100svh;color:var(--text);font-family:var(--font)}.content-shell{width:min(78rem,100%);padding:0 clamp(1.25rem,4vw,4rem) var(--s-8);margin:0 auto}.content-header{justify-content:space-between;align-items:center;gap:var(--s-5);border-bottom:1px solid var(--line-strong);min-height:5.25rem;display:flex}.content-brand{color:var(--text);font-family:var(--font-display);font-size:1.3rem;font-weight:var(--font-display-weight);letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:.8rem;line-height:.9;text-decoration:none;display:flex}.content-brand .stamp{--frame-h:2.6rem}.content-brand-name{display:grid}.content-nav{justify-content:flex-end;gap:var(--s-3) var(--s-5);flex-wrap:wrap;display:flex}.content-nav a{color:var(--muted);font-size:var(--text-sm);font-weight:600;text-decoration:none}.content-nav .content-editor-link{border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);padding:.65rem .9rem}.content-hero{border-bottom:1px solid var(--line-strong);grid-template-columns:minmax(0,.9fr) minmax(24rem,1.1fr);align-items:center;gap:clamp(2rem,6vw,6rem);padding:clamp(3rem,8vw,7rem) 0;display:grid}.content-hero--text{grid-template-columns:minmax(0,48rem)}.content-kicker{margin:0 0 var(--s-4);color:var(--accent-strong);font-size:var(--text-sm);font-weight:600}.content-hero h1{max-width:12ch;margin:0 0 var(--s-4);font-family:var(--font-display);font-size:clamp(3rem,7vw,5.75rem);font-weight:var(--font-display-weight);letter-spacing:-.025em;line-height:.86}.content-lead{max-width:56ch;color:var(--muted);font-size:clamp(1rem,1.4vw,1.15rem);line-height:1.65}.content-profile{border:1px solid var(--line-strong);background:var(--paper);place-items:center;min-height:20rem;padding:clamp(1.5rem,4vw,3rem);display:grid}.content-profile img{width:100%;max-height:18rem}.content-specs{gap:var(--s-2);margin:var(--s-5) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.content-specs li{border:1px solid var(--line-strong);background:var(--surface);font-size:var(--text-sm);padding:.55rem .7rem;font-weight:600}.content-actions{gap:var(--s-3);margin-top:var(--s-5);flex-wrap:wrap;display:flex}.content-action{border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font-size:var(--text-sm);padding:.85rem 1.1rem;font-weight:600;text-decoration:none;display:inline-block}.content-action.primary{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.content-grid{grid-template-columns:minmax(0,1.45fr) minmax(18rem,.75fr);gap:clamp(2rem,6vw,6rem);padding:clamp(3rem,7vw,6rem) 0;display:grid}.content-main section+section{margin-top:var(--s-7);padding-top:var(--s-6);border-top:1px solid var(--line)}.content-page h2{margin:0 0 var(--s-4);font-family:var(--font-display);font-size:clamp(1.8rem,3vw,2.5rem);font-weight:var(--font-display-weight);letter-spacing:-.01em;line-height:1}.content-page h3{margin:var(--s-5) 0 var(--s-2);font-size:1rem}.content-page p{max-width:68ch;line-height:1.7}.content-page p+p{margin-top:var(--s-4)}.content-page ul:not(.content-specs){max-width:68ch;margin:var(--s-3) 0 0;color:var(--muted);padding-left:1.2rem;line-height:1.7}.content-aside{border-top:3px solid var(--accent);align-self:start}.content-aside section{padding:var(--s-5) 0;border-bottom:1px solid var(--line-strong)}.content-aside h2{font-size:1.45rem}.content-aside a{color:var(--text);font-weight:600}.content-list{margin:0;list-style:none;display:grid;padding:0!important}.content-list li{border-top:1px solid var(--line)}.content-list a{justify-content:space-between;gap:var(--s-3);padding:.75rem 0;text-decoration:none;display:flex}.content-list small{color:var(--dim);font-weight:400}.content-note{padding:var(--s-4);border-left:3px solid var(--accent);background:var(--surface)}.content-footer{gap:var(--s-4) var(--s-6);padding-top:var(--s-6);border-top:1px solid var(--line-strong);color:var(--muted);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.content-footer a{color:inherit}@media (width<=48rem){.content-header{padding:var(--s-4) 0;flex-direction:column;align-items:flex-start}.content-nav{justify-content:flex-start}.content-hero{padding:var(--s-7) 0;grid-template-columns:1fr}.content-profile{order:-1;min-height:13rem}.content-grid{grid-template-columns:1fr}}@media (width<=1050px){.preset-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}.small-screen{display:none}@media screen and (width<=900px),screen and (pointer:coarse) and (hover:none){.app,body>dialog,#print-root{display:none!important}.small-screen{z-index:9999;background:var(--bg);color:var(--text);display:block;position:fixed;inset:0;overflow:auto}.small-screen-card{width:min(100%,52rem);padding:var(--s-5) clamp(1.25rem,6vw,3rem) var(--s-7);margin:0 auto}.mobile-brand{align-items:center;gap:var(--s-3);width:max-content;margin-bottom:var(--s-7);color:var(--text);font-family:var(--font-display);font-size:1.25rem;font-weight:var(--font-display-weight);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;display:flex}.mobile-brand img{width:1.45rem;height:3.2rem}.small-screen h1{margin:0 0 var(--s-4);font-family:var(--font-display);font-weight:var(--font-display-weight);letter-spacing:-.02em;font-size:clamp(2.8rem,14vw,4.5rem);line-height:.88}.small-screen h2{margin:0 0 var(--s-3);font-family:var(--font-display);font-size:1.8rem;font-weight:var(--font-display-weight)}.small-screen p{margin:0 0 var(--s-4);color:var(--muted);line-height:1.65}.small-screen-lead{max-width:34rem;font-size:1.05rem;font-weight:600;color:var(--text)!important}.mobile-proof{margin:0 0 var(--s-6);font-size:var(--text-sm);flex-wrap:wrap;gap:.5rem 1rem;padding:0;font-weight:600;list-style:none;display:flex}.mobile-proof li{align-items:center;gap:.4rem;display:flex}.mobile-proof li:before{content:"";background:var(--accent);width:.42rem;height:.42rem}.mobile-editor-note{padding:var(--s-4);border-left:3px solid var(--accent);background:var(--surface)}.mobile-editor-note strong{color:var(--text);display:block}.mobile-section{margin-top:var(--s-7);padding-top:var(--s-5);border-top:1px solid var(--line-strong)}.mobile-template-list{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.mobile-template-list a{min-height:5rem;padding:var(--s-3);border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface);color:var(--text);align-content:center;gap:.2rem;text-decoration:none;display:grid}.mobile-template-list span{font-family:var(--font-display);font-size:1.25rem;font-weight:var(--font-display-weight)}.mobile-template-list small{color:var(--dim)}.mobile-guide-links{border-top:1px solid var(--line);display:grid}.mobile-guide-links a{border-bottom:1px solid var(--line);color:var(--text);padding:.9rem 0;font-weight:600}.small-screen-links{gap:var(--s-5);padding-top:var(--s-5);border-top:1px solid var(--line-strong);font-size:var(--text-sm);flex-wrap:wrap;display:flex;margin-top:var(--s-7)!important}.small-screen-links a{color:var(--muted)}}@media screen and (width<=420px){.mobile-template-list{grid-template-columns:1fr}}#print-root{display:none}@media print{:root{--paper:#fff}html,body{background:#fff;height:auto;margin:0;padding:0}.app,.small-screen{display:none!important}#print-root{display:block!important}.sheet{break-after:page;page-break-after:always;break-inside:avoid;background:#fff;position:relative;overflow:hidden}.sheet.last{break-after:auto;page-break-after:auto}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}header{z-index:12;border-bottom-color:var(--chrome-line-strong);position:relative}#panel{background:var(--chrome-surface)}#nest-panel{background:var(--chrome-surface);border-right-color:var(--chrome-line)}.side-plate{border-color:var(--chrome-line-strong)}.plate-head{border-bottom-color:var(--chrome-line-strong)}details.grp>summary{padding-block:1rem;position:relative}details.grp[open]>summary:before{content:"";background:var(--accent);width:3px;position:absolute;top:.8rem;bottom:.8rem;left:0}.viewport{background:var(--chrome-bg)}.editor-stage{background:var(--paper)}.vbar{border-top-color:var(--chrome-line)}@media (hover:hover) and (pointer:fine){.wordmark:hover .stamp{border-color:var(--text)}button:hover,.filebtn:hover{background:var(--surface-strong);border-color:var(--text)}button.primary:hover{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--accent-ink)}#btn-lib-save[data-state=saved]:hover{background:var(--surface-strong);border-color:var(--text);color:var(--text)}select:hover{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6' fill='none' stroke='%23f2ede3' stroke-width='1.4' stroke-linecap='square'%3E%3Cpath d='M1 1l4 4 4-4'/%3E%3C/svg%3E")}.tab:hover{color:var(--text);background:0 0}details.grp>summary:hover{color:var(--text)}button.mini.danger:hover{border-color:var(--error);color:var(--error);background:0 0}.legal-brand:hover{color:var(--text)}.legal p a:hover,.legal-nav a:hover{text-decoration-color:currentColor}.new-design-action:hover{background:var(--surface-strong);border-color:var(--text)}.help:hover{border-color:var(--text);background:var(--text);color:var(--bg)}#handles g:hover .h-dot{stroke:var(--ink);stroke-width:2px}.preset-card:hover{z-index:1;background:var(--surface-strong);outline:1px solid var(--edge);outline-offset:-1px}.preset-size:hover{border-color:var(--edge);background:var(--text);color:var(--bg)}.start-alternatives button:hover{background:var(--surface-strong);outline:1px solid var(--edge);outline-offset:-1px}.start-alternatives button:hover>em{border-color:var(--text);background:var(--surface-strong)}.site-footer a:hover{color:var(--edge-bright)}.tab:disabled:hover{color:var(--muted)}}.tool-rail{max-width:15rem}.tool-rail[data-mode] .tool-row>button{border-left:0;border-top:1px solid var(--line)}.tool-rail .tool-row>button:first-child{border-top:0}.tool-rail{overflow:visible}.more-tools{position:relative}.more-tools-popover{z-index:6;top:0;left:calc(100% + var(--s-2));border:1px solid var(--line-strong);background:var(--bg);width:max-content;min-width:11rem;position:absolute;box-shadow:0 .5rem 1.5rem #14120e2e}.more-tools[open]>summary,.more-tools.has-active>summary{background:var(--text);color:var(--bg)}.more-tools>summary,.pin-tools>summary{box-sizing:border-box;cursor:pointer;min-height:44px;color:var(--text);font-size:var(--text-sm);border-top:1px solid var(--line);padding:.75rem}#extra-tools{flex-direction:column;display:flex}#pin-tool-list{padding:.5rem .75rem}#pin-tool-list label{min-height:44px;font-size:var(--text-sm);align-items:center;gap:.5rem;display:flex}.tool-rail .tool-options{box-sizing:border-box;max-width:15rem}.tool-rail .tool-options button{white-space:normal;min-width:0}.tool-rail .tool-options label{grid-template-columns:1fr}.tool-rail .tool-options select{grid-column:auto}.tool-rail .tool-options .canvas-toggle{display:flex}#inspector .inspect-row[hidden]{display:none}.template-section{border-bottom:1px solid var(--line-strong)}.template-section>summary{cursor:pointer;padding:1rem;font-size:1rem;font-weight:600}.template-section .grp{border:0;border-top:1px solid var(--line);margin:0}.field-refinements>summary{cursor:pointer;font-size:var(--text-sm);padding:.75rem 1rem}.field-refinements .row{padding:.5rem 1rem}body[data-mode=blank] .template-section,#pin-tool-list label[hidden]{display:none}.curve-presets>summary{cursor:pointer;padding:.5rem 0}.curve-presets button{width:100%;display:block}.field-refinements>.holes>.holes-head{display:none}#inspect-edge-actions{align-items:end}.vbar-msg.has-hover-readout #knife-keys,.vbar-msg.has-hover-readout #drawing-keys{visibility:hidden}#hover-readout{white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:400;line-height:1.4;overflow:hidden}#handles .h-readout,#handles .measure-label{vector-effect:non-scaling-stroke}
