@font-face{font-family:Barlow Condensed;src:url(/fonts/barlow-condensed-600.ttf)format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Instrument Sans;src:url(/fonts/instrument-sans.woff2)format("woff2");font-weight:400 700;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono.woff2)format("woff2");font-weight:400 700;font-display:swap}:root{--bg:#10141b;--surface:#161b23;--surface-2:#1c222c;--surface-3:#252c37;--surface-elevated:#1a2029;--line:#94a3b829;--line-strong:#94a3b857;--text:#e7ebf1;--muted:#a1abb9;--faint:#7d8796;--accent:#5a7bff;--accent-strong:#7d97ff;--accent-ink:#0a1022;--accent-soft:#5a7bff29;--canvas:#0b1626;--canvas-edge:#07101c;--canvas-text:#dbe4f0;--cad-outer:#22d3ee;--cad-inner:#f8fafc;--cad-hole:#f59e0b;--cad-center:#22c55e;--cad-dim:#94a3b8;--cad-warn:#ef4444;--ok:#34d399;--ok-ink:#05261a;--ok-soft:#34d39924;--danger:#f87171;--danger-soft:#ef444429;--pro:#f5b83d;--pro-ink:#1d1404;--pro-soft:#f5b83d1a;--lcd:#d3dbc2;--lcd-ink:#121a0e;--lcd-edge:#8b9677;--steel-a:#3b4350;--steel-b:#252b34;--steel-ink:#e7ebf1;--shadow:0 18px 40px #00000059;--radius:10px;--radius-s:6px;--font-display:"Barlow Condensed", "Arial Narrow", "Roboto Condensed", sans-serif;--font-ui:"Instrument Sans", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;color-scheme:dark}:root[data-theme=paper]{--bg:#f4f3ee;--surface:#fff;--surface-2:#efeee8;--surface-3:#e4e3dc;--surface-elevated:#fff;--line:#15181d1c;--line-strong:#15181d3d;--text:#15181d;--muted:#4f5864;--faint:#626b78;--accent:#3555e3;--accent-strong:#2440c4;--accent-ink:#fff;--accent-soft:#3555e317;--ok:#0f7a52;--ok-ink:#fff;--ok-soft:#0f7a521a;--danger:#b42318;--danger-soft:#b4231814;--pro:#9a640f;--pro-ink:#fff;--pro-soft:#9a640f14;--steel-a:#f7f7f4;--steel-b:#dcdbd4;--steel-ink:#15181d;--shadow:0 14px 32px #15181d1a;color-scheme:light}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;scroll-padding-top:12px}body{background:var(--bg);color:var(--text);font:400 16px/1.55 var(--font-ui);overflow-wrap:anywhere;margin:0}a{color:var(--accent-strong);text-underline-offset:3px}:root[data-theme=paper] a:not(.btn):not(.bento__card){color:var(--accent)}img,svg,canvas{max-width:100%}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.num,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}.shop-bar{border-bottom:1px solid var(--line);background:var(--surface)}.shop-bar__in{flex-wrap:wrap;align-items:center;gap:10px 16px;max-width:1560px;margin:0 auto;padding:6px 20px;display:flex}.wordmark{color:var(--text);flex:none;align-items:center;gap:10px;min-height:44px;text-decoration:none;display:inline-flex}.wordmark svg{flex:none;width:30px;height:30px}.wordmark b{font:600 1.3rem/1 var(--font-display);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.wordmark b span{color:var(--accent-strong)}.wordmark b em{font-style:normal}.navline{flex-wrap:wrap;justify-content:flex-end;gap:2px;min-width:0;margin-left:auto;display:flex}.navline a{border-radius:var(--radius-s);min-height:44px;color:var(--muted);white-space:nowrap;align-items:center;padding:0 9px;font-size:.88rem;font-weight:600;text-decoration:none;display:inline-flex}.navline a:hover{color:var(--text);background:var(--surface-2)}.navline a[aria-current=page]{color:var(--text);box-shadow:inset 0 -2px 0 var(--accent)}.theme-flip{border:1px solid var(--line-strong);border-radius:var(--radius-s);background:var(--surface-2);min-width:44px;min-height:44px;color:var(--text);flex:none;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:.85rem;font-weight:600;display:inline-flex}.menu-drawer{margin-left:auto;display:none}.menu-drawer summary{border:1px solid var(--line-strong);border-radius:var(--radius-s);cursor:pointer;align-items:center;min-height:44px;padding:0 14px;font-weight:600;list-style:none;display:inline-flex}.menu-drawer summary::-webkit-details-marker{display:none}.menu-drawer nav{grid-template-columns:minmax(0,1fr);gap:2px;padding:8px 0;display:grid}.menu-drawer nav a{min-height:44px;color:var(--text);border-bottom:1px solid var(--line);align-items:center;padding:0 10px;text-decoration:none;display:flex}@media (width<=1199px){.wordmark b em,.theme-flip span{display:none}.navline a{padding:0 6px;font-size:.84rem}}@media (width<=1023px){.navline{display:none}.menu-drawer{display:block}.menu-drawer[open]{flex-basis:100%;order:3}.wordmark b em{display:inline}}main{display:block}.page-wrap{max-width:1560px;margin:0 auto;padding:0 20px}.studio{max-width:1560px;margin:0 auto;padding:12px 20px 0}.studio-head{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title switches""lede lede";align-items:end;gap:2px 24px;margin-bottom:10px;display:grid}.studio-title{grid-area:title;min-width:0}.studio-head .lede{color:var(--muted);grid-area:lede;max-width:118ch;margin:2px 0 0;font-size:.92rem;line-height:1.45}.eyebrow{font:600 .78rem/1.2 var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 2px}.studio-title h1{font:600 clamp(1.65rem, 2.6vw, 2.25rem)/1.02 var(--font-display);letter-spacing:.02em;text-transform:uppercase;margin:0}.studio-switches{flex-wrap:wrap;grid-area:switches;justify-content:flex-end;align-items:center;gap:8px;display:flex}.mode-tabs{border:1px solid var(--line-strong);background:var(--surface);border-radius:999px;padding:3px;display:inline-flex}.mode-tabs button{min-height:40px;color:var(--muted);background:0 0;border:0;border-radius:999px;padding:0 16px;font-weight:650}.mode-tabs button[aria-selected=true]{background:var(--accent);color:var(--accent-ink)}.unit-pick{color:var(--muted);align-items:center;gap:6px;font-size:.9rem;font-weight:600;display:inline-flex}.unit-pick select,.field-select{border:1px solid var(--line-strong);border-radius:var(--radius-s);background:var(--surface-2);min-height:44px;color:var(--text);padding:0 10px;font-size:16px}.preset-rail{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;display:flex}.preset-rail__label{font:600 .72rem/1.15 var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--faint);margin-right:2px}.preset-chip{border:1px solid var(--line-strong);background:var(--surface);max-width:100%;min-height:46px;color:var(--text);text-align:left;border-radius:999px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1px 9px;padding:5px 13px 5px 6px;transition:border-color .15s,background-color .15s;display:inline-grid}.preset-chip .glyph{grid-row:span 2;width:32px;height:32px}.preset-chip b{font-size:.88rem;line-height:1.15}.preset-chip small{font:500 .7rem/1.2 var(--font-mono);color:var(--muted)}.preset-chip:hover{border-color:var(--accent)}.preset-chip[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.glyph rect:first-child{stroke:none}.desk{grid-template-columns:minmax(0,1fr);align-items:start;gap:14px;display:grid}.bench-l{grid-area:left;grid-template-columns:minmax(0,1fr);gap:14px;min-width:0;display:grid}.views{grid-area:views;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0;display:grid}.bench-r{grid-area:right;grid-template-columns:minmax(0,1fr);gap:14px;min-width:0;display:grid}@media (width>=900px){.desk{grid-template:"left views""right views"1fr/minmax(340px,min(36%,420px)) minmax(0,1fr)}}@media (width>=1200px){.desk{grid-template:"left views right"/clamp(340px,28%,390px) minmax(0,1fr) clamp(286px,23%,350px)}}.desk[data-focus=tpu] .vp-3d{order:-1}.caliper{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:minmax(0,1fr);gap:10px;min-width:0;padding:12px;display:grid}.pro{min-width:0}.input-error{border-radius:var(--radius-s);background:var(--danger-soft);color:var(--danger);border:1px solid var(--danger);margin:0;padding:10px 12px;font-size:.92rem;font-weight:600}.rail-tabs{background:var(--surface-2);border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px;padding:3px;display:grid}.rail-tabs button{min-height:44px;color:var(--muted);font:600 .98rem/1 var(--font-display);letter-spacing:.08em;text-transform:uppercase;background:0 0;border:0;border-radius:6px}.rail-tabs button[aria-selected=true]{background:var(--surface);color:var(--text);box-shadow:inset 0 -2px 0 var(--accent), 0 1px 2px #0000001f}.rail-panel{border:0;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0;margin:0;padding:0;display:grid}.rail-panel legend{font:600 .82rem/1.2 var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--faint);margin-bottom:2px;padding:0}.cal-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.cal-field{grid-template-columns:minmax(0,1fr);gap:4px;min-width:0;display:grid}.cal-field--wide{grid-column:1/-1}.cal-field>.lbl{font:600 .84rem/1.15 var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.lcd{background:linear-gradient(180deg, var(--steel-a), var(--steel-b));border:1px solid var(--line-strong);border-radius:7px;grid-template-columns:34px minmax(0,1fr) 34px;align-items:stretch;min-height:46px;padding:3px;display:grid}.lcd--nostep{grid-template-columns:minmax(0,1fr)}.lcd__win{background:var(--lcd);border:1px solid var(--lcd-edge);border-radius:4px;align-items:center;min-width:0;display:flex;position:relative;box-shadow:inset 0 1px 3px #00000073}.lcd__win input,.lcd__win select{width:100%;min-width:0;min-height:38px;color:var(--lcd-ink);font:600 1.05rem/1 var(--font-mono);font-variant-numeric:tabular-nums;text-align:right;background:0 0;border:0;padding:0 26px 0 6px}.lcd__win input[data-kind=count]{padding-right:32px}.lcd__win select{text-align:left;padding:0 8px}.lcd__win input[type=number]{-moz-appearance:textfield;appearance:textfield}.lcd__win input[type=number]::-webkit-outer-spin-button,.lcd__win input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.lcd__win input:focus{outline:none}.lcd__win:focus-within{box-shadow:inset 0 1px 3px #00000073, 0 0 0 2px var(--accent)}.lcd__u{font:600 .7rem/1 var(--font-mono);color:var(--lcd-ink);opacity:.75;pointer-events:none;position:absolute;right:7px}.lcd__step{color:var(--steel-ink);font:600 1.2rem/1 var(--font-mono);background:0 0;border:0;border-radius:4px;min-height:38px}.lcd__step:hover{background:#7f8ca029}.cal-field[data-invalid] .lcd{border-color:var(--danger);box-shadow:0 0 0 2px var(--danger-soft)}.lcd input[readonly]{opacity:.8}@media (width>=900px){.lcd{grid-template-columns:26px minmax(0,1fr) 26px}.lcd--nostep{grid-template-columns:minmax(0,1fr)}.lcd__win input{padding:0 22px 0 4px;font-size:.94rem}.lcd__win input[data-kind=count]{padding-right:28px}.lcd__u{right:6px}}.check-row{min-height:44px;color:var(--text);align-items:center;gap:10px;font-size:.95rem;display:flex}.check-row input{width:22px;height:22px;accent-color:var(--accent);flex:none}.slider-row{grid-template-columns:minmax(0,1fr);gap:2px;display:grid}.steel-slider{-webkit-appearance:none;appearance:none;background:0 0;width:100%;height:30px}.steel-slider::-webkit-slider-runnable-track{background:repeating-linear-gradient(90deg, var(--steel-b) 0 2px, var(--steel-a) 2px 4px);border:1px solid var(--line-strong);border-radius:4px;height:8px}.steel-slider::-moz-range-track{background:repeating-linear-gradient(90deg, var(--steel-b) 0 2px, var(--steel-a) 2px 4px);border:1px solid var(--line-strong);border-radius:4px;height:8px}.steel-slider::-webkit-slider-thumb{-webkit-appearance:none;background:linear-gradient(#e5e9ef,#9aa3b1);border:1px solid #5c6573;border-radius:4px;width:22px;height:26px;margin-top:-10px}.steel-slider::-moz-range-thumb{background:linear-gradient(#e5e9ef,#9aa3b1);border:1px solid #5c6573;border-radius:4px;width:22px;height:26px}.material-hint{color:var(--muted);border-left:3px solid var(--pro);margin:0;padding:2px 0 2px 10px;font-size:.86rem}.drawer{border:1px solid var(--line);background:var(--surface-2);border-radius:8px}.drawer>summary{cursor:pointer;min-height:44px;font:600 .9rem/1.2 var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:center;gap:8px;padding:0 12px;list-style:none;display:flex}.drawer>summary::-webkit-details-marker{display:none}.drawer>summary:after{content:"+";font:600 1.1rem/1 var(--font-mono);color:var(--accent-strong)}.drawer[open]>summary:after{content:"−"}.drawer__body{grid-template-columns:minmax(0,1fr);gap:10px;padding:0 12px 12px;display:grid}.std-label{font:500 .82rem/1.35 var(--font-mono);color:var(--text);background:var(--surface);border:1px dashed var(--line-strong);border-radius:6px;margin:0;padding:8px 10px}.drop{text-align:center;border:2px dashed var(--line-strong);border-radius:var(--radius);background:var(--surface-2);cursor:pointer;justify-items:center;gap:4px;padding:18px 12px;display:grid;position:relative}.drop:hover,.drop[data-over]{border-color:var(--accent);background:var(--accent-soft)}.drop svg{width:34px;height:34px;color:var(--accent-strong)}.drop b{font-size:1rem}.drop span{color:var(--muted);font-size:.86rem}.drop .fmt{color:var(--text);flex-wrap:wrap;justify-content:center;gap:6px;margin-top:4px;display:flex}.drop .fmt i{font:600 .72rem/1 var(--font-mono);border:1px solid var(--line-strong);border-radius:999px;padding:4px 7px;font-style:normal}.drop input[type=file]{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.photo-error{color:var(--danger);margin:0;font-size:.92rem;font-weight:600}.photo-hint{color:var(--muted);margin:0;font-size:.88rem}.trace-dl{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px 10px;margin:0;display:grid}.trace-dl div{min-width:0}.trace-dl dt{font:600 .74rem/1.2 var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}.trace-dl dd{font:600 .92rem/1.3 var(--font-mono);margin:0}.hole-chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.hole-chips button{border:1px solid var(--line-strong);background:var(--surface-2);min-height:40px;font:600 .82rem/1 var(--font-mono);color:var(--text);border-radius:999px;padding:0 10px}.hole-chips button[aria-pressed=true]{border-color:var(--cad-hole);background:#f59e0b29}.tool-row{flex-wrap:wrap;gap:6px;display:flex}.btn{border-radius:var(--radius-s);border:1px solid var(--line-strong);background:var(--surface-2);min-height:44px;color:var(--text);text-align:center;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:.93rem;font-weight:650;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--accent)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--accent{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn--pro{background:var(--pro);border-color:var(--pro);color:var(--pro-ink)}.btn--ghost{background:0 0}.btn--block{width:100%}.vp{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:0;margin:0}.vp>:last-child{border-bottom-left-radius:var(--radius);border-bottom-right-radius:var(--radius)}.vp__bar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:6px 12px;min-height:46px;padding:5px 8px 5px 12px;display:flex}.vp__bar h2{font:600 .92rem/1.2 var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0}.vp__bar h2 b{color:var(--text);font-weight:600}.vp__tools{flex-wrap:wrap;gap:4px;margin-left:auto;display:flex}.vp__tools button{border:1px solid var(--line-strong);background:var(--surface-2);min-width:44px;min-height:36px;color:var(--text);border-radius:6px;padding:0 10px;font-size:.82rem;font-weight:650}.vp__tools button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent)}.vp__stage{background:var(--canvas);box-shadow:inset 0 0 0 1px var(--canvas-edge);position:relative;overflow:hidden}.vp__stage canvas{touch-action:pan-y;width:100%;height:auto;display:block}.vp-2d .vp__stage canvas{aspect-ratio:4/3}.vp-3d .vp__stage canvas{aspect-ratio:16/8;cursor:grab}@media (width>=1200px){.vp-2d .vp__stage canvas{aspect-ratio:3/2}}.desk[data-focus=tpu] .vp-3d .vp__stage canvas{aspect-ratio:16/9}.vp-photo .vp__stage canvas{aspect-ratio:4/3;cursor:crosshair;touch-action:none}.vp__stage[data-invalid] canvas{opacity:.55}.proof-mark{pointer-events:none;opacity:.13;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.proof-mark span{font:600 clamp(1.2rem, 3.4vw, 2.3rem)/1 var(--font-display);letter-spacing:.2em;color:var(--canvas-text);white-space:nowrap;transform:rotate(-21deg)}.vp__legend{font:500 .76rem/1.3 var(--font-mono);color:var(--cad-dim);background:var(--canvas-edge);border-top:1px solid #94a3b824;flex-wrap:wrap;gap:4px 16px;padding:7px 12px;display:flex}.vp__legend i{vertical-align:middle;border-radius:2px;width:16px;height:3px;margin-right:6px;display:inline-block}.lg-outer{background:var(--cad-outer)}.lg-inner{background:var(--cad-inner)}.lg-hole{background:var(--cad-hole)}.lg-center{background:repeating-linear-gradient(90deg, var(--cad-center) 0 6px, transparent 6px 8px, var(--cad-center) 8px 9px, transparent 9px 11px)}.lg-warn{background:var(--cad-warn)}.web-gauge{background:var(--ok-soft);border:1px solid color-mix(in srgb, var(--ok) 40%, transparent);border-radius:999px;flex-wrap:wrap;align-items:center;gap:4px 9px;min-width:0;min-height:36px;padding:3px 6px 3px 10px;display:inline-flex}.web-gauge[data-state=thin]{background:var(--danger-soft);border-color:var(--danger)}.web-gauge .k{font:600 .74rem/1 var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.web-gauge b{font:700 1.05rem/1 var(--font-mono);font-variant-numeric:tabular-nums}.web-status{font:700 .74rem/1 var(--font-mono);background:var(--ok);color:var(--ok-ink);letter-spacing:.04em;border-radius:999px;padding:6px 9px}.web-status[data-state=thin]{background:var(--cad-warn);color:#fff}.web-at{color:var(--muted);min-width:0;padding-right:4px;font-size:.82rem}.readout{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:minmax(0,1fr);gap:8px;min-width:0;padding:4px 14px 10px;display:grid}.metrics{grid-template-columns:repeat(auto-fill,minmax(min(100%,170px),1fr));column-gap:16px;margin:0;display:grid}.metrics>div{border-bottom:1px solid var(--line);min-width:0;padding:8px 0 7px}.metrics dt{font:600 .74rem/1.2 var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}.metrics dd{font:600 .95rem/1.3 var(--font-mono);font-variant-numeric:tabular-nums;margin:2px 0 0}.metrics .wide{grid-column:1/-1}.web-list{font:500 .82rem/1.4 var(--font-mono);color:var(--muted);flex-wrap:wrap;gap:4px 14px;margin:0;padding:0;list-style:none;display:flex}.web-list b{color:var(--text);font-weight:600}.hole-drawer{min-width:0}.scroll-x{overscroll-behavior-x:contain;max-width:100%;overflow-x:auto}.hole-table{border-collapse:collapse;width:100%;font:500 .84rem/1.3 var(--font-mono);font-variant-numeric:tabular-nums}.hole-table th,.hole-table td{text-align:right;border-bottom:1px solid var(--line);white-space:nowrap;padding:6px 10px}.hole-table th:first-child,.hole-table td:first-child{text-align:left}.hole-table th{font:600 .74rem/1.2 var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}.pro-shell{border:1px solid color-mix(in srgb, var(--pro) 55%, var(--line));border-radius:var(--radius);background:var(--surface-elevated);box-shadow:inset 0 3px 0 var(--pro);grid-template-columns:minmax(0,1fr);display:grid}.pro-shell__head{border-bottom:1px solid var(--line);padding:14px 14px 10px}.pro-shell__head h2{font:600 1.2rem/1.1 var(--font-display);letter-spacing:.04em;text-transform:uppercase;margin:6px 0 0}.pro-badge{font:700 .72rem/1 var(--font-mono);letter-spacing:.08em;background:var(--pro);color:var(--pro-ink);border-radius:4px;align-items:center;gap:6px;padding:4px 7px;display:inline-flex}.pro-card{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr);gap:8px;padding:12px 14px;display:grid}.pro-card h3{font:600 .92rem/1.2 var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0}.pro-card canvas{aspect-ratio:16/9;background:var(--canvas);border-radius:6px;width:100%;height:auto;display:block}.pro-lines{font:500 .8rem/1.35 var(--font-mono);gap:3px;margin:0;padding:0;list-style:none;display:grid}.pro-lines li[data-state=thin]{color:var(--danger);font-weight:700}.layer-list{font:500 .76rem/1.35 var(--font-mono);color:var(--muted);gap:2px;margin:0;padding:0;list-style:none;display:grid}.layer-list i{border-radius:2px;width:9px;height:9px;margin-right:6px;display:inline-block}.seg-toggle{gap:4px;display:inline-flex}.seg-toggle button{border:1px solid var(--line-strong);background:var(--surface-2);min-height:36px;color:var(--text);border-radius:6px;padding:0 10px;font-size:.8rem;font-weight:650}.seg-toggle button[aria-pressed=true]{border-color:var(--pro);background:color-mix(in srgb, var(--pro) 18%, transparent)}.pro-foot{background:var(--pro-soft);border-radius:0 0 var(--radius) var(--radius);grid-template-columns:minmax(0,1fr);gap:8px;padding:14px;display:grid}.ent-note{color:var(--muted);margin:0;font-size:.82rem}.plan-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:10px;display:grid}.plan-tile{border:1px solid var(--line-strong);background:var(--surface-2);overflow-wrap:normal;word-break:normal;border-radius:8px;grid-template-columns:minmax(0,1fr);align-content:start;gap:6px;min-width:0;padding:12px;display:grid}.plan-tile--hero{border-color:var(--pro);box-shadow:inset 0 3px 0 var(--pro)}.plan-tile__badge{font:700 .72rem/1.3 var(--font-mono);letter-spacing:.04em;color:var(--pro);margin:0}.plan-tile__name{margin:0;font-weight:700}.plan-tile__price{flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:0;display:flex}.plan-tile__price b{font:700 1.5rem/1 var(--font-mono)}.plan-tile__price s{color:var(--muted);font-family:var(--font-mono)}.plan-tile__price small{color:var(--muted);flex-basis:100%;font-size:.8rem}.plan-btn,.plan-tile [data-buy-plan]{border-radius:var(--radius-s);border:1px solid var(--pro);background:var(--pro);width:100%;min-height:46px;color:var(--pro-ink);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:2px 6px;padding:6px 10px;font-size:.9rem;font-weight:700;display:inline-flex}.plan-btn s{opacity:.8}.plan-mini{grid-template-columns:minmax(0,1fr);gap:6px;display:grid}.plan-mini [data-buy-plan]{border-radius:var(--radius-s);border:1px solid var(--line-strong);background:var(--surface-2);width:100%;min-height:44px;color:var(--text);flex-wrap:wrap;justify-content:center;align-items:center;gap:2px 6px;padding:6px 8px;font-size:.82rem;font-weight:650;display:inline-flex}.plan-mini [data-buy-plan=pass-7d]{background:var(--pro);border-color:var(--pro);color:var(--pro-ink)}.dock{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-elevated);min-width:0;box-shadow:inset 0 3px 0 var(--accent);grid-template-columns:minmax(0,1fr);display:grid}.dock-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 10px;padding:13px 14px 0;display:flex}.dock-head h2{font:600 1.2rem/1.1 var(--font-display);letter-spacing:.06em;text-transform:uppercase;margin:0}.dock-head span{font:500 .76rem/1.2 var(--font-mono);color:var(--muted)}.dock-bar{grid-template-columns:minmax(0,1fr);gap:12px;padding:10px 14px 14px;display:grid}.dock-group{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;min-width:0;display:grid}.dock-group--pro{border-top:1px dashed var(--line-strong);padding-top:12px}.dock-tag{font:600 .8rem/1.2 var(--font-display);letter-spacing:.13em;text-transform:uppercase;color:var(--text);flex-wrap:wrap;grid-column:1/-1;align-items:baseline;gap:2px 8px;display:flex}.dock-tag i{font:500 .74rem/1.2 var(--font-ui);letter-spacing:0;text-transform:none;color:var(--muted);font-style:normal}.dock-tag--pro{color:var(--pro)}.xbtn{border-radius:var(--radius-s);border:1px solid var(--line-strong);background:var(--surface-2);min-width:0;min-height:44px;color:var(--text);text-align:center;justify-content:center;align-items:center;gap:6px;padding:6px 9px;font-size:.86rem;font-weight:650;line-height:1.15;display:inline-flex}.xbtn:hover{border-color:var(--accent)}.xbtn--pro{border-color:color-mix(in srgb, var(--pro) 55%, var(--line-strong));background:color-mix(in srgb, var(--pro) 7%, var(--surface-2))}.xbtn--pro:hover{border-color:var(--pro)}.xbtn .lock{width:11px;height:11px;color:var(--pro);flex:none}.xbtn:disabled{opacity:.45;cursor:not-allowed}.xbtn.is-ready{box-shadow:0 0 0 3px var(--accent)}.dock-offer{background:var(--pro-soft);border:1px solid color-mix(in srgb, var(--pro) 45%, transparent);border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:6px 8px;padding:9px;display:grid}.launch-badge{font:700 .68rem/1.2 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--pro);grid-column:1/-1}.dock-buy{border-radius:var(--radius-s);border:1px solid var(--pro);background:var(--pro);min-width:0;min-height:46px;color:var(--pro-ink);flex-wrap:wrap;justify-content:center;align-items:baseline;gap:2px 8px;padding:10px;font-size:.88rem;font-weight:700;line-height:1.2;display:inline-flex}.dock-buy b{font:700 .95rem/1.2 var(--font-mono)}.dock-buy s{font:500 .8rem/1.2 var(--font-mono);opacity:.78}.dock-plans{min-height:46px;padding:0 12px;font-size:.85rem}.dock-sheet{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr);gap:14px;padding:14px;display:grid}.free-out{grid-template-columns:minmax(0,1fr);align-content:start;gap:8px;min-width:0;display:grid}.free-upsell{background:var(--accent-soft);border:1px solid var(--accent);border-radius:8px;margin:0;padding:10px 12px;font-size:.9rem}.png-note{color:var(--muted);grid-template-columns:120px minmax(0,1fr);align-items:center;gap:10px;font-size:.85rem;display:grid}.png-note canvas{background:var(--canvas);border-radius:4px;width:120px;height:auto}.png-note p{margin:0}.dock .png-note{grid-template-columns:minmax(0,1fr);gap:8px}.dock .png-note canvas{width:100%;max-width:240px}.summary-pre{background:var(--surface-2);max-height:220px;font:500 .76rem/1.45 var(--font-mono);white-space:pre-wrap;border-radius:6px;margin:0;padding:10px;overflow:auto}.paywall{grid-template-columns:minmax(0,1fr);gap:10px;min-width:0;display:grid}.paywall__head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;display:grid}.paywall h3{font:600 1.35rem/1.1 var(--font-display);letter-spacing:.03em;text-transform:uppercase;margin:2px 0 0}.paywall__msg{margin:0;font-size:.95rem}.paywall__gets{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.paywall__gets li{border:1px solid var(--line);color:var(--muted);border-radius:6px;padding:8px 10px;font-size:.84rem}.paywall__gets li b{color:var(--text);font-size:.9rem;display:block}.paywall__gets li[aria-current=true]{border-color:var(--pro)}.paywall__compare{color:var(--text);border-left:3px solid var(--pro);margin:0;padding-left:10px;font-size:.88rem}.paywall__status{color:var(--muted);min-height:1.2em;margin:0;font-size:.88rem}.close-x{border:1px solid var(--line-strong);background:var(--surface-2);min-width:44px;min-height:44px;color:var(--text);border-radius:6px;font-size:1.2rem;line-height:1}.dock .plan-grid{grid-template-columns:minmax(0,1fr);gap:8px}.dock .plan-tile{grid-template-columns:minmax(0,1fr);gap:4px;padding:10px 12px}.dock .plan-tile__price{justify-content:flex-start}.dock .plan-tile__price small{display:none}.dock .paywall h3{font-size:1.2rem}.below{max-width:1560px;margin:0 auto;padding:40px 20px 24px}.band{border-top:1px solid var(--line);grid-template-columns:minmax(0,.31fr) minmax(0,.69fr);gap:20px 40px;padding:34px 0;display:grid}.band__head{align-self:start;position:sticky;top:16px}.band__head h2{font:600 clamp(1.4rem, 2.3vw, 1.95rem)/1.08 var(--font-display);letter-spacing:.02em;text-transform:uppercase;margin:2px 0 0}.band__head p{color:var(--muted);max-width:46ch;margin:8px 0 0;font-size:.95rem}.band__body{grid-template-columns:minmax(0,1fr);gap:14px;min-width:0;display:grid}.band__body>p,.prose p{max-width:72ch;margin:0}.band__body h3{font:600 1.15rem/1.2 var(--font-display);letter-spacing:.06em;text-transform:uppercase;margin:6px 0 0}.band__body ul:not([class]),.band__body ol:not([class]){gap:6px;max-width:72ch;margin:0;padding-left:1.2em;display:grid}.band[data-section=steps],.band[data-section=use-cases],.band[data-section=faq],.band[data-section=family]{grid-template-columns:minmax(0,1fr);gap:18px}.band[data-section]>.band__head{grid-template-columns:minmax(0,.5fr) minmax(0,.5fr);align-items:end;column-gap:40px;display:grid;position:static}.band[data-section]>.band__head>.eyebrow,.band[data-section]>.band__head>h2{grid-column:1}.band[data-section]>.band__head>p:not(.eyebrow){text-align:right;grid-area:1/2/span 2;place-self:end;margin:0}.steps-ol{counter-reset:st;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.steps-ol li{counter-increment:st;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:minmax(0,1fr);align-content:start;gap:4px;padding:16px;display:grid;position:relative}.steps-ol li:before{content:counter(st, decimal-leading-zero);border:1.5px solid var(--accent);background:var(--accent-soft);width:40px;height:40px;font:700 .86rem/1 var(--font-mono);color:var(--accent-strong);border-radius:50%;place-items:center;margin-bottom:8px;display:grid}:root[data-theme=paper] .steps-ol li:before{color:var(--accent)}.steps-ol b{font-size:1rem;line-height:1.3;display:block}.steps-ol span{color:var(--muted);font-size:.92rem}.case-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.case-list li{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:minmax(0,1fr);align-content:start;gap:4px;padding:16px;display:grid}.case-list li:has(>.glyph){grid-template-columns:auto minmax(0,1fr);column-gap:14px}.case-list li>.glyph{grid-row:span 2;width:44px;height:44px}.case-list b{font-size:1rem;line-height:1.3;display:block}.case-list span{color:var(--muted);font-size:.92rem}.ref-table{border-collapse:collapse;width:100%;min-width:680px;font-size:.88rem}.ref-table[data-testid=material-table]{min-width:980px}.ref-table caption{text-align:left;font:600 .82rem/1.3 var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-bottom:6px}.ref-table th,.ref-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;overflow-wrap:normal;word-break:normal;padding:7px 10px}.ref-table th[scope=row]{white-space:nowrap}.ref-table thead th{font:600 .76rem/1.2 var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--faint);border-bottom-color:var(--line-strong)}.ref-table td.n,.ref-table th.n{font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.ref-table tbody tr:hover{background:var(--surface)}.ref-table .warn{color:var(--danger);font-weight:600}.formula{background:var(--canvas);color:var(--canvas-text);border:1px solid var(--line);font:500 .95rem/1.6 var(--font-mono);border-radius:8px;margin:0;padding:14px 16px}.formula b{color:var(--cad-center);font-weight:600}.note{color:var(--muted);margin:0;font-size:.86rem}.faq-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px;display:grid}.faq-list details{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);transition:border-color .15s}.faq-list details[open]{border-color:color-mix(in srgb, var(--accent) 55%, var(--line))}.faq-list summary{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;min-height:56px;padding:12px 14px 12px 16px;font-weight:650;line-height:1.35;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::marker{content:""}.faq-list summary:after{content:"+";border:1px solid var(--line-strong);width:30px;height:30px;font:600 1rem/1 var(--font-mono);color:var(--accent-strong);border-radius:50%;flex:none;place-items:center;display:grid}.faq-list details[open] summary:after{content:"−";border-color:var(--accent);background:var(--accent-soft)}.faq-list details p{color:var(--muted);max-width:74ch;margin:0;padding:0 16px 16px;font-size:.95rem}.bento{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:dense;gap:12px;display:grid}.bento--guides{grid-template-columns:repeat(4,minmax(0,1fr))}.bento__card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:120px;color:var(--text);grid-template-columns:auto minmax(0,1fr);align-content:start;gap:6px 14px;padding:16px;text-decoration:none;transition:border-color .15s,transform .15s;display:grid;position:relative}.bento__card:hover{border-color:var(--accent);transform:translateY(-1px)}.bento__card .glyph{grid-row:span 2;width:44px;height:44px}.bento__card b{font:600 1.12rem/1.15 var(--font-display);letter-spacing:.05em;text-transform:uppercase}.bento__card span{color:var(--muted);font-size:.9rem}.bento__card i{font:600 .76rem/1 var(--font-mono);border:1px solid var(--line-strong);color:var(--accent-strong);border-radius:999px;grid-column:1/-1;place-self:end start;margin-top:6px;padding:7px 10px;font-style:normal}:root[data-theme=paper] .bento__card i{color:var(--accent)}.bento__card--lead{background-color:var(--canvas);background-image:linear-gradient(135deg, var(--canvas), #12233b);color:var(--canvas-text);border-color:#22d3ee47;grid-area:span 2/span 2;grid-template-columns:minmax(0,1fr);align-content:space-between;padding:22px}.bento__card--lead .glyph{grid-row:auto;width:76px;height:76px}.bento__card--lead b{color:#f1f5f9;font-size:1.6rem}.bento__card--lead span{color:#b4c0d0;max-width:46ch;font-size:1rem}.bento__card--lead i{color:#0b1626;background:var(--cad-outer);border-color:var(--cad-outer);padding:10px 14px;font-size:.82rem}.bento__card[aria-current=page]{border-style:dashed}.bento__card[aria-current=page]:after{content:"You are here";font:600 .68rem/1 var(--font-mono);color:var(--faint);text-transform:uppercase;letter-spacing:.06em;position:absolute;top:12px;right:12px}.bento--guides .bento__card{grid-template-columns:minmax(0,1fr);min-height:0}.bento__card .bento__tag{font:600 .7rem/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.fig{border:1px solid var(--line);border-radius:var(--radius);background:var(--canvas);color:var(--canvas-text);margin:0;padding:10px}.fig svg{width:100%;height:auto;display:block}.fig figcaption{color:var(--cad-dim);margin-top:8px;font-size:.85rem}.cta-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.inline-pay{border:1px solid var(--pro);border-radius:var(--radius);background:var(--surface);grid-template-columns:minmax(0,1fr);gap:10px;padding:14px;display:grid}.mini-calc{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));align-items:end;gap:10px;display:grid}.mini-out{font:600 1rem/1.3 var(--font-mono);flex-wrap:wrap;gap:8px 24px;display:flex}.mini-out span{color:var(--muted);font:600 .78rem/1.2 var(--font-display);letter-spacing:.1em;text-transform:uppercase;display:block}.doc{max-width:900px;margin:0 auto;padding:28px 20px 40px}.doc h1{font:600 clamp(1.8rem, 3vw, 2.4rem)/1.05 var(--font-display);text-transform:uppercase;letter-spacing:.02em;margin:0 0 12px}.doc h2{font:600 1.35rem/1.15 var(--font-display);text-transform:uppercase;letter-spacing:.04em;margin:26px 0 8px}.doc p,.doc li{max-width:72ch}.tool-account,.tool-signin,.tool-unlock{grid-template-columns:minmax(0,1fr);gap:14px;max-width:720px;margin:0 auto;padding:36px 20px 60px;display:grid}.tool-account h1,.tool-signin h1,.tool-unlock h1{font:600 clamp(1.8rem, 3vw, 2.4rem)/1.05 var(--font-display);letter-spacing:.02em;text-transform:uppercase;margin:0}.tool-account h2{font:600 1.25rem/1.15 var(--font-display);letter-spacing:.04em;text-transform:uppercase;margin:0}.tool-account p,.tool-signin p,.tool-unlock p{max-width:64ch;color:var(--muted);margin:0}.tool-account [data-account-summary],.tool-signin [data-signin-status],.tool-unlock [data-unlock-status]{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--text);box-shadow:inset 3px 0 0 var(--accent);padding:14px 16px;font-weight:600}.tool-account [data-account-summary][data-state=active]{box-shadow:inset 3px 0 0 var(--ok)}.tool-account [data-account-actions]{flex-wrap:wrap;gap:8px;display:flex}.tool-account form{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-elevated);grid-template-columns:minmax(0,1fr);gap:12px;padding:18px;display:grid}.tool-account label{font:600 .84rem/1.2 var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);gap:6px;display:grid}.tool-account input[type=email]{border:1px solid var(--line-strong);border-radius:var(--radius-s);background:var(--surface-2);width:100%;min-height:44px;color:var(--text);font:500 16px/1.2 var(--font-ui);letter-spacing:normal;text-transform:none;padding:0 12px}.tool-account input[type=email]:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.tool-account button,.tool-signin .button,.tool-unlock .button{border-radius:var(--radius-s);border:1px solid var(--line-strong);background:var(--surface-2);min-height:44px;color:var(--text);justify-content:center;align-items:center;padding:0 16px;font-size:.95rem;font-weight:650;text-decoration:none;display:inline-flex}.tool-account button[type=submit],.tool-signin .btn-primary,.tool-unlock .btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);justify-self:start}.tool-account button:hover,.tool-signin .button:hover,.tool-unlock .button:hover{border-color:var(--accent-strong)}.tool-account [data-login-status]:empty{display:none}.shop-foot{border-top:1px solid var(--line);background:var(--surface);margin-top:30px}.shop-foot__in{max-width:1560px;color:var(--muted);grid-template-columns:minmax(0,1fr);gap:12px;margin:0 auto;padding:22px 20px 30px;font-size:.88rem;display:grid}.shop-foot__links{flex-wrap:wrap;gap:4px 16px;display:flex}.shop-foot__links a{color:var(--muted);align-items:center;min-height:44px;display:inline-flex}.tool-legal nav{flex-wrap:wrap;gap:0 16px;margin:6px 0;display:flex}.tool-legal nav a{min-height:44px;color:var(--muted);align-items:center;display:inline-flex}.tool-legal p{margin:4px 0}.copyline{color:var(--faint);margin:0}@media (width>=900px){.metrics .wide{grid-column:span 2}}@media (width<=1099px){.bento,.bento--guides{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=899px){.studio{padding:10px 14px 0}.studio-head{grid-template-columns:minmax(0,1fr);grid-template-areas:"title""lede""switches";gap:6px}.studio-switches{justify-content:flex-start;margin-top:4px}.desk{grid-template-columns:minmax(0,1fr);grid-template-areas:none;gap:12px}.bench-l,.views,.bench-r{display:contents}.vp-photo{order:1}.vp-2d{order:2}.caliper{order:3}.readout{order:4}.dock{order:5}.vp-3d{order:6}.hole-drawer{order:7}.pro{order:8}.desk[data-focus=tpu] .vp-3d{order:2}.desk[data-focus=tpu] .vp-2d{order:6}.vp-2d .web-gauge{order:3}.band{grid-template-columns:minmax(0,1fr);gap:12px;padding:26px 0}.band__head{position:static}.band[data-section]>.band__head{grid-template-columns:minmax(0,1fr)}.band[data-section]>.band__head>p:not(.eyebrow){text-align:left;grid-area:auto/1;justify-self:start;margin-top:8px}.faq-list{grid-template-columns:minmax(0,1fr)}.below{padding:22px 14px}.page-wrap,.shop-bar__in,.shop-foot__in{padding-left:14px;padding-right:14px}}@media (width<=600px){.bento,.bento--guides{grid-template-columns:minmax(0,1fr)}.bento__card--lead{grid-area:auto}}@media (width<=420px){.cal-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.lcd{grid-template-columns:28px minmax(0,1fr) 28px}.lcd--nostep{grid-template-columns:minmax(0,1fr)}.lcd__win input{font-size:1rem}.mode-tabs button{padding:0 11px;font-size:.9rem}.preset-chip{padding-right:10px}.preset-chip small,.preset-rail__label br{display:none}.png-note{grid-template-columns:minmax(0,1fr)}.theme-flip span{display:none}.wordmark b{font-size:1.12rem}.shop-bar__in{gap:8px 10px}.dock-offer{grid-template-columns:minmax(0,1fr)}}@media (width<=374px){.lcd{grid-template-columns:26px minmax(0,1fr) 26px}.lcd--nostep{grid-template-columns:minmax(0,1fr)}.lcd__win input{padding:0 24px 0 4px}.lcd__win input[data-kind=count]{padding-right:28px}.lcd__u{right:5px}}@media (width<=340px){.cal-grid{grid-template-columns:minmax(0,1fr)}}
