.join-backdrop{z-index:80;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0e121080;place-items:center;padding:16px;animation:.16s ease-out join-fade;display:grid;position:fixed;inset:0}.join{background:var(--raised);width:min(860px,100%);max-height:calc(100dvh - 32px);color:var(--ink);border-radius:22px;grid-template-rows:minmax(0,1fr);grid-template-columns:1fr 1fr;animation:.2s cubic-bezier(.2,.8,.2,1) join-rise;display:grid;overflow:hidden;box-shadow:0 40px 90px -30px #0a0e0c8c}.join-picture{background:var(--hero-b);min-height:520px;position:relative}.join-picture img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.join-picture p{color:#fff;font-family:var(--display);text-wrap:balance;background:linear-gradient(#0a0e0c00,#0a0e0cb3);margin:0;padding:80px 28px 26px;font-size:20px;line-height:1.3;position:absolute;inset:auto 0 0}.join-body{flex-direction:column;gap:14px;padding:36px 32px 28px;display:flex;position:relative;overflow-y:auto}.join-body h2{font-family:var(--display);letter-spacing:-.02em;text-wrap:balance;margin:8px 0 0;font-size:28px;line-height:1.15}.join-why{color:var(--muted);margin:0;font-size:15px}.join-close{width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:14px;right:14px}.join-close:hover{background:var(--panel);color:var(--ink)}.join-close svg{stroke:currentColor;stroke-width:2px;fill:none;width:18px;height:18px}.join-providers{flex-direction:column;gap:10px;margin-top:6px;display:flex}.join-provider{border:1px solid var(--line-strong);background:var(--raised);min-height:50px;color:var(--ink);font:600 15px var(--body);cursor:pointer;border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:0 16px;transition:background-color .12s,border-color .12s,transform .12s;display:flex}.join-provider:hover:not(:disabled){background:var(--panel);border-color:var(--muted)}.join-provider:active:not(:disabled){transform:scale(.99)}.join-provider:disabled{opacity:.6;cursor:progress}.join-provider svg{flex:none;width:20px;height:20px}.join-provider-apple{color:#fff;background:#000;border-color:#000}.join-provider-apple:hover:not(:disabled){background:#1d1d1f;border-color:#000}.join-provider-email svg{stroke:currentColor;stroke-width:1.8px;fill:none}.join-error{background:var(--err-soft);color:var(--err);border-radius:10px;margin:0;padding:10px 12px;font-size:14px}.join-switch{color:var(--muted);text-align:center;margin:4px 0 0;font-size:14px}.join-switch button{color:var(--accent);font:600 14px var(--body);cursor:pointer;background:0 0;border:0;padding:0}.join-legal{color:var(--muted);text-align:center;margin:auto 0 0;padding-top:12px;font-size:12px}.join-legal a{color:inherit}@media (width<=720px){.join-backdrop{place-items:end center;padding:0}.join{border-radius:22px 22px 0 0;grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr;max-height:94dvh;animation-name:join-up}.join-picture{height:130px;min-height:0}.join-picture p{display:none}.join-body{padding:24px 20px max(20px, env(safe-area-inset-bottom))}.join-body h2{font-size:24px}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .join-provider-apple{color:#000;background:#fff;border-color:#fff}}:root[data-theme=dark] .join-provider-apple{color:#000;background:#fff;border-color:#fff}@keyframes join-fade{0%{opacity:0}}@keyframes join-rise{0%{opacity:0;transform:translateY(12px)scale(.98)}}@keyframes join-up{0%{transform:translateY(40px)}}@media (prefers-reduced-motion:reduce){.join-backdrop,.join{animation:none}}.join.contact{grid-template-rows:minmax(0,1fr);grid-template-columns:1fr;width:min(520px,100%)}.contact-form{flex-direction:column;gap:14px;margin-top:8px;display:flex}.contact-form label{color:var(--ink-2);flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.contact-form input,.contact-form textarea{border:1px solid var(--line-strong);background:var(--raised);color:var(--ink);font:400 14.5px var(--body);border-radius:10px;padding:10px 12px}.contact-form textarea{resize:vertical}.contact-form .primary-button{min-height:44px}.join-lead{color:var(--ink-2);margin:4px 0 18px;line-height:1.5}.join-picture .join-video{object-fit:cover;object-position:52% 50%;width:100%;height:100%;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.join-picture .join-video{display:none}}.join.plus{grid-template-rows:minmax(0,1fr);grid-template-columns:1fr;width:min(500px,100%)}.plus-badge{background:var(--accent-soft);color:var(--accent);letter-spacing:.02em;border-radius:999px;align-self:flex-start;margin:0;padding:4px 10px;font-size:12.5px;font-weight:700}.plus-why{background:var(--panel);color:var(--ink-2);border-radius:10px;margin:0;padding:10px 12px;font-size:14px}.plus-points{color:var(--ink-2);flex-direction:column;gap:10px;margin:0;padding-left:18px;font-size:14.5px;line-height:1.45;display:flex}.plus-points strong{color:var(--ink)}.plus-prices{flex-direction:column;gap:10px;margin-top:4px;display:flex}.plus-buy{min-height:46px;font-size:15px}.plus-offer{margin-top:6px;font-weight:600}.plus-toast{z-index:90;background:var(--ink);max-width:calc(100vw - 32px);color:var(--panel);text-align:center;box-shadow:var(--shadow);border-radius:999px;padding:11px 18px;font-size:14px;animation:.2s ease-out join-fade;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.account-plan{background:var(--panel);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:13.5px;display:flex}.account-plan-name{flex-direction:column;gap:2px;display:flex}.account-plan-name small{color:var(--muted);font-size:12px}.plus-near,.account-plus-near{color:var(--muted);margin:8px 0 0;font-size:13px;line-height:1.45}.plus-near .link-button,.account-plus-near .account-link{font-weight:600}.account-plus-near{padding:0 12px 10px}.account-plus-near .account-link{font-size:inherit;padding:0;display:inline}.join-plus{color:var(--muted);margin:-4px 0 14px;font-size:13px}.drawings{flex-direction:column;gap:12px}.drawings svg{flex:1;min-height:0}.sheet-stats{flex-wrap:wrap;gap:6px 22px;margin:0;padding:0 4px;display:flex}.sheet-stats div{flex-direction:column;gap:2px;min-width:0;display:flex}.sheet-stats dt{color:var(--muted);font:600 10.5px/1.2 var(--body);letter-spacing:.08em;text-transform:uppercase}.sheet-stats dd{color:var(--ink);font:500 14px/1.3 var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap;margin:0}.drawings .callout{pointer-events:none}.drawings .callout circle{fill:var(--paper);stroke:var(--ink);stroke-width:1px;vector-effect:non-scaling-stroke}.drawings .callout text{fill:var(--ink);font-family:var(--body);text-anchor:middle;dominant-baseline:central;font-weight:700}.part-letter{border:1px solid var(--line-strong);min-width:1.6em;height:1.6em;color:var(--ink);font:700 10.5px/1 var(--body);vertical-align:1px;border-radius:999px;place-items:center;margin-right:6px;padding:0 3px;display:inline-grid}.shop{flex-wrap:wrap;align-items:center;gap:6px;margin-top:7px;display:flex}.shop-label{font:600 10px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-right:2px}.shop-link{border:1px solid var(--line-strong);background:var(--raised);color:var(--ink);font:600 12px/1.3 var(--body);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:3px 9px;text-decoration:none;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.shop-link:after{content:"↗";color:var(--muted);font-size:11px}.shop-link:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.shop-link:hover:after{color:inherit}.shop-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.shop-note{color:var(--muted);margin:12px 0 0;font-size:12px}.part-card-shop{margin-top:8px}.part-card-shop .shop{margin-top:0}.part-card-shop .shop-note{margin-top:6px;font-size:11.5px}@media (pointer:coarse){.shop-link{min-height:34px;padding:6px 12px;font-size:13px}}@media (prefers-reduced-motion:reduce){.shop-link{transition:none}}@media print{.shop,.shop-note,.part-card-shop{display:none}}.planset{--ps-ink:var(--ink);--ps-dim:#2b6a8c;--ps-mark:#c4622d;--ps-panel:var(--raised);--ps-rule:var(--line);--ps-hatch:#c4622d4d;max-width:1120px;color:var(--ink);gap:40px;margin:0 auto;padding:28px 32px 64px;display:grid}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .planset{--ps-dim:#7fb6d6;--ps-mark:#ef8a5a}}:root[data-theme=dark] .planset{--ps-dim:#7fb6d6;--ps-mark:#ef8a5a}.ps-head{border-bottom:2px solid var(--ps-ink);gap:8px;padding-bottom:18px;display:grid}.ps-kicker{font:600 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ps-mark);margin:0}.ps-head h1{font:800 clamp(26px, 3.4vw, 38px) / 1.05 var(--display);letter-spacing:-.025em;text-wrap:balance;margin:0}.ps-stats{border-top:1px solid var(--ps-rule);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:0;margin:10px 0 0;display:grid}.ps-stats div{min-width:0;padding:10px 14px 0 0}.ps-stats dt{font:600 10px/1.2 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.ps-stats dd{font:600 15px/1.25 var(--mono);font-variant-numeric:tabular-nums;margin:4px 0 0}.ps-section{gap:10px;min-width:0;display:grid}.ps-section-head{align-items:baseline;gap:12px;display:flex}.ps-n{font:600 13px/1 var(--mono);color:var(--ps-mark)}.ps-section-head h2{font:800 25px/1.1 var(--display);letter-spacing:-.02em;margin:0}.ps-note{max-width:68ch;color:var(--ink-2);margin:0;font-size:14px}.ps-panel{background:var(--ps-panel);border:1px solid var(--ps-rule);border-radius:4px;min-width:0;padding:18px;overflow-x:auto}.ps-foot{border-top:1px solid var(--ps-rule);font:600 10px/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);justify-content:space-between;gap:16px;margin-top:12px;padding-top:10px;display:flex}.ps-drawing .drawings{display:block}.ps-drawing svg{width:100%;height:auto;max-height:640px;display:block}.planset .drawings .part{stroke:var(--ps-ink);stroke-width:1.25px;vector-effect:non-scaling-stroke;fill:color-mix(in srgb, var(--wood) 55%, var(--ps-panel))}.planset .drawings .dim line{stroke:var(--ps-dim)}.planset .drawings .dim .dim-text,.planset .drawings .tick{fill:var(--ps-dim);stroke:var(--ps-dim)}.planset .drawings .dim .dim-text{stroke:none;font-family:var(--mono);font-weight:600}.planset .drawings .callout circle{fill:var(--ps-panel);stroke:var(--ps-mark);stroke-width:1.6px}.planset .drawings .callout text{fill:var(--ps-mark);font-family:var(--display);font-weight:800}.planset .drawings .view-label{font-family:var(--mono);letter-spacing:.12em;fill:var(--muted);font-weight:600}.ps-table{border-collapse:collapse;width:100%;font-size:14px}.ps-table th{text-align:left;font:600 10px/1.2 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border-bottom:1.5px solid var(--ps-ink);padding:0 12px 10px 0}.ps-table td{border-bottom:1px solid var(--ps-rule);vertical-align:top;padding:10px 12px 10px 0}.ps-table .strong{font-weight:600}.ps-table .num,.ps-table .mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.ps-table .nowrap{white-space:nowrap}.ps-table .muted{color:var(--ink-2);font-size:13px}.ps-letter{border:1.6px solid var(--ps-mark);width:26px;height:26px;color:var(--ps-mark);font:800 12px/1 var(--display);border-radius:50%;place-items:center;display:inline-grid}.ps-diagrams{gap:18px;display:grid}.ps-board{gap:6px;margin:0;display:grid}.ps-board figcaption{font:600 12px/1.3 var(--mono);justify-content:space-between;gap:12px;display:flex}.ps-board em{color:var(--ink-2);font-style:normal}.ps-rip{color:var(--muted);white-space:nowrap}.ps-board svg{width:100%;height:auto;display:block}.ps-stock-edge{stroke:var(--ps-ink);stroke-width:1.2px;vector-effect:non-scaling-stroke}.ps-hatch-ground{fill:var(--ps-panel)}.ps-hatch{stroke:var(--ps-hatch);stroke-width:3px}.ps-piece{fill:color-mix(in srgb, #d9b98c 75%, var(--ps-panel));stroke:var(--ps-ink);stroke-width:1px;vector-effect:non-scaling-stroke}.ps-piece-label,.ps-offcut-label{text-anchor:middle;dominant-baseline:central;font-family:var(--mono);font-weight:600}.ps-piece-label{fill:#2a2118}.ps-offcut-label{fill:var(--muted)}.ps-parts{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;display:grid}.ps-part{border:1px solid var(--ps-rule);border-radius:4px;gap:6px;min-width:0;margin:0;padding:12px;display:grid}.ps-part figcaption{align-items:center;gap:8px;min-width:0;display:flex}.ps-part-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13.5px;font-weight:600;overflow:hidden}.ps-part-qty{font:600 12px var(--mono);color:var(--muted)}.ps-part svg{width:100%;height:130px}.ps-part-shape{fill:color-mix(in srgb, var(--wood) 55%, var(--ps-panel));stroke:var(--ps-ink);stroke-width:1.2px;vector-effect:non-scaling-stroke}.ps-dim line{stroke:var(--ps-dim);stroke-width:1px;vector-effect:non-scaling-stroke}.ps-dim text{fill:var(--ps-dim);text-anchor:middle;font-family:var(--mono);font-weight:600}.ps-part-meta{color:var(--ink-2);margin:0;font-size:12px}.ps-steps{gap:22px;display:grid}.ps-progress{font:600 12px var(--mono);color:var(--ink-2);align-items:center;gap:12px;margin:0;display:flex}.ps-progress-bar{background:var(--soft);border-radius:3px;flex:1;max-width:260px;height:6px;overflow:hidden}.ps-progress-bar span{background:var(--ps-mark);height:100%;display:block}.ps-stage h3{font:700 12px/1.2 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ps-mark);margin:0 0 6px}.ps-stage ol{margin:0;padding:0;list-style:none}.ps-stage li{border-bottom:1px solid var(--ps-rule)}.ps-stage label{cursor:pointer;grid-template-columns:22px 30px minmax(0,1fr);gap:10px;padding:12px 0;display:grid}.ps-stage input{width:18px;height:18px;accent-color:var(--ps-mark);margin:2px 0 0}.ps-step-n{font:600 12px/1.6 var(--mono);color:var(--ps-mark)}.ps-step-body{gap:3px;max-width:72ch;display:grid}.ps-step-title{font:700 15px/1.3 var(--display)}.ps-step-detail{color:var(--muted);font-size:12.5px}.ps-step-text{color:var(--ink-2);font-size:14px;line-height:1.55}.ps-step-tools{font:500 11.5px var(--mono);color:var(--muted)}.ps-stage li.is-done .ps-step-title,.ps-stage li.is-done .ps-step-text{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb, var(--muted) 60%, transparent);text-decoration-color:color-mix(in srgb, var(--muted) 60%, transparent)}.ps-credit{font:600 11px var(--mono);color:var(--muted);margin:0}@media (width<=700px){.planset{gap:30px;padding:18px 14px 48px}.ps-panel{padding:12px}.ps-table th:nth-child(6),.ps-table td:nth-child(6){display:none}}@media print{.planset{gap:22px;max-width:none;padding:0}.ps-section{break-inside:avoid-page}.ps-section:nth-of-type(n+3){break-before:auto}.ps-panel{border-color:#999}.ps-stage li,.ps-board,.ps-part{break-inside:avoid}}.ps-scroll{position:absolute;inset:0;overflow-y:auto}.planset .drawings{padding:0;position:static;inset:auto}.m-plans .planset{padding-top:8px}@page{size:A4 portrait;margin:12mm}@media print{.print-sheet .drawings{break-after:auto;height:auto}}.ps-stockbox{border:1.2px solid var(--ps-ink);background:repeating-linear-gradient(45deg, var(--ps-panel) 0 5px, var(--ps-hatch) 5px 7px);min-width:60px;height:46px;position:relative}.ps-board.is-sheet .ps-stockbox{width:100%;max-width:760px;height:auto}.ps-cut{white-space:nowrap;background:color-mix(in srgb, #d9b98c 78%, var(--ps-panel));border-right:1px solid var(--ps-ink);border-bottom:1px solid var(--ps-ink);box-shadow:inset 1px 1px 0 var(--ps-ink);font:600 11.5px/1 var(--mono);color:#2a2118;justify-content:center;align-items:center;gap:2px;padding:0 4px;display:flex;position:absolute;overflow:hidden}.ps-cut b{font-family:var(--display);font-weight:800}.ps-offcut{white-space:nowrap;font:600 11px var(--mono);color:var(--muted);justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;overflow:hidden}@media (width<=700px){.ps-stockbox{height:34px}.ps-cut{font-size:10px}.ps-cuts thead{display:none}.ps-cuts,.ps-cuts tbody{display:block}.ps-cuts tr{border-bottom:1px solid var(--ps-rule);grid-template-columns:34px minmax(0,1fr) auto;grid-template-areas:"l name qty"".size size"".from from"".notes notes";gap:3px 8px;padding:10px 0;display:grid}.ps-cuts td{border:none;padding:0}.ps-cuts td:first-child{grid-area:l}.ps-cuts td:nth-child(2){grid-area:name}.ps-cuts td:nth-child(3){grid-area:qty}.ps-cuts td:nth-child(3):before{content:"x ";color:var(--muted)}.ps-cuts td:nth-child(4){grid-area:size}.ps-cuts td:nth-child(5){color:var(--ink-2);grid-area:from;font-size:12px}.ps-cuts td:nth-child(6){grid-area:notes;display:block}.ps-buy thead{display:none}.ps-buy,.ps-buy tbody{display:block}.ps-buy tr{border-bottom:1px solid var(--ps-rule);grid-template-columns:34px minmax(0,1fr);grid-template-areas:"qty name"".notes"".shop";gap:3px 8px;padding:10px 0;display:grid}.ps-buy td{border:none;padding:0}.ps-buy td:first-child{grid-area:qty}.ps-buy td:first-child:after{content:" x";color:var(--muted)}.ps-buy td:nth-child(2){display:contents}.ps-buy td:nth-child(2)>.strong{grid-area:name}.ps-buy td:nth-child(2)>.shop{grid-area:shop;margin-top:5px}.ps-buy td:nth-child(3){grid-area:notes}}.ps-safety{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.ps-safety li{border-left:3px solid var(--ps-rule);background:color-mix(in srgb, var(--ps-panel) 70%, var(--soft));color:var(--ink-2);align-content:start;gap:4px;padding:12px 14px;font-size:13.5px;line-height:1.5;display:grid}.ps-safety li.is-must{border-left-color:var(--ps-mark)}.ps-safety strong{font:700 14px/1.3 var(--display);color:var(--ink)}.ps-jump{z-index:4;scrollbar-width:none;overscroll-behavior-x:contain;background:var(--paper);border-bottom:1px solid var(--ps-rule);gap:6px;margin:-12px -32px -16px;padding:10px 32px;display:flex;position:sticky;top:0;overflow-x:auto}.ps-jump::-webkit-scrollbar{display:none}.ps-jump button{border:1px solid var(--line-strong);background:var(--panel);color:var(--ink-2);font:600 12.5px/1.2 var(--body);white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;flex:none;padding:7px 13px;transition:background .15s,color .15s,border-color .15s}.ps-jump button:hover{border-color:var(--ink-2);color:var(--ink)}.ps-jump button.is-active{border-color:var(--ps-ink);background:var(--ps-ink);color:var(--panel)}.ps-jump button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (width<=700px){.ps-jump{margin:-8px -14px -10px;padding:8px 14px}}@media (pointer:coarse){.ps-jump button{min-height:40px;padding:9px 14px}}@media (prefers-reduced-motion:reduce){.ps-jump button{transition:none}}@media print{.ps-jump{display:none}}.plans-lock{border:1px solid var(--line);background:var(--raised);color:var(--ink);border-radius:14px;grid-template-columns:auto 1fr;align-items:start;gap:18px;padding:24px 26px;display:grid}.plans-lock-mark{fill:none;stroke:#c4622d;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;box-sizing:content-box;background:#c4622d24;border-radius:50%;width:34px;height:34px;padding:8px}.plans-lock-text{gap:10px;min-width:0;display:grid}.plans-lock h2{font:800 22px/1.15 var(--display);letter-spacing:-.02em;text-wrap:balance;margin:0}.plans-lock p{color:var(--muted,inherit);margin:0;font-size:14.5px;line-height:1.5}.plans-lock ul{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:6px 18px;margin:2px 0 4px;padding:0;font-size:14.5px;list-style:none;display:grid}.plans-lock li{padding-left:20px;position:relative}.plans-lock li:before{content:"";border-bottom:2px solid #c4622d;border-left:2px solid #c4622d;width:9px;height:5px;position:absolute;top:.45em;left:2px;transform:rotate(-45deg)}.plans-lock-actions{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.plans-lock-actions button{min-height:42px;padding:0 20px}.plans-lock.is-compact{grid-template-columns:1fr;gap:12px;padding:18px}.plans-lock.is-compact h2{font-size:18px}.plans-lock.is-compact p{font-size:13.5px}.ps-locked-print{border-top:1px solid var(--ps-rule);margin:0;padding:12px 0;font-size:13px}.parts-locked{margin:0 0 10px;font-size:13.5px}@media (width<=560px){.plans-lock{grid-template-columns:1fr;padding:20px 18px}}.seereal-backdrop{z-index:70;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0e12108c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.seereal{background:var(--raised);width:min(1100px,100%);max-height:calc(100dvh - 32px);color:var(--ink);border-radius:20px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 40px 90px -30px #0a0e0c8c}.seereal-head{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:14px 16px 12px 22px;display:flex}.seereal-head h2{font-family:var(--display);letter-spacing:-.01em;margin:0;font-size:20px}.seereal-modes{margin-left:auto}.seereal-stage{background:var(--ground);flex:1;place-items:center;min-height:280px;display:grid;position:relative;overflow:hidden}.seereal-stage img{object-fit:contain;max-width:100%;max-height:calc(100dvh - 230px);display:block}.seereal-stage img.is-working,.seereal-empty.is-working{filter:blur(2px)saturate(.7);opacity:.7}.seereal-empty{text-align:center;max-width:44ch;color:var(--ink-2);flex-direction:column;align-items:center;gap:14px;padding:40px 20px;display:flex}.seereal-empty p{margin:0;font-size:16px}.seereal-working{background:var(--raised);box-shadow:var(--shadow);white-space:nowrap;border-radius:999px;align-items:center;gap:10px;padding:10px 16px;font-weight:600;display:flex;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.seereal-foot{border-top:1px solid var(--line);flex-direction:column;gap:10px;padding:14px 22px 18px;display:flex}.seereal-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.seereal-actions a{text-decoration:none}.seereal-cost{margin-right:auto;font-size:13px}.seereal-note{color:var(--muted);margin:0;font-size:13px}.seereal-error{background:var(--err-soft);color:var(--err);border-radius:8px;margin:0;padding:8px 12px;font-size:14px}.seereal-where{border:1px solid var(--line-strong);background:var(--raised);width:100%;min-height:42px;color:var(--ink);font:inherit;border-radius:10px;padding:0 12px}.see-real-button svg{vertical-align:-3px;fill:none;stroke:currentColor;stroke-width:1.8px;width:16px;height:16px;margin-right:6px}@media (width<=700px){.seereal-backdrop{place-items:end center;padding:0}.seereal{border-radius:20px 20px 0 0;max-height:96dvh}.seereal-head{flex-wrap:wrap}.seereal-modes{order:3;width:100%;margin-left:0}.seereal-head .close{margin-left:auto}}.seereal-settings{flex-wrap:wrap;gap:6px;width:100%;display:flex}.seereal-settings button{border:1px solid var(--line-strong);background:var(--raised);color:var(--ink);font:600 12.5px var(--body);cursor:pointer;border-radius:999px;padding:4px 11px}.seereal-settings button.is-active{border-color:var(--accent);color:var(--accent)}.seereal-kept{flex-direction:column;gap:6px;padding:10px 20px 0;font-size:12.5px;display:flex}.seereal-kept-row{gap:8px;display:flex;overflow-x:auto}.seereal-kept-row button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:6px;flex:none;padding:0;overflow:hidden}.seereal-kept-row img{object-fit:cover;width:96px;height:64px;display:block}.seereal-actions>a,.seereal-actions>button{box-sizing:border-box;height:40px;font:600 14px/1 var(--body);vertical-align:middle;justify-content:center;align-items:center;margin:0;padding:0 16px;display:inline-flex}.build{flex-direction:column;gap:16px;display:flex}.build-now{border:1px solid var(--line);background:var(--raised);border-radius:14px;flex-direction:column;gap:8px;padding:14px;display:flex}.build-progress{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-variant-numeric:tabular-nums;justify-content:space-between;font-size:12px;font-weight:600;display:flex}.build-stage{color:var(--accent)}.build-bar{background:var(--line);border-radius:999px;height:4px;overflow:hidden}.build-bar span{border-radius:inherit;background:#ef6436;height:100%;transition:width .35s;display:block}.build-now h3{font:700 19px/1.25 var(--display);text-wrap:balance;margin:4px 0 0}.build-now p{color:var(--ink-2);margin:0;font-size:15px;line-height:1.5}.build-tools{flex-wrap:wrap;gap:6px;margin:2px 0 0;padding:0;list-style:none;display:flex}.build-tools li{background:var(--panel);color:var(--ink-2);border-radius:999px;padding:3px 9px;font-size:12px;font-weight:600}.build-controls{grid-template-columns:1fr 1.4fr 1fr;gap:8px;margin-top:6px;display:grid}.build-steps,.build-steps ol{margin:0;padding:0;list-style:none}.build-stage-group h4{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:700}.build-steps button{width:100%;color:var(--ink-2);font:500 14px/1.3 var(--body);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:8px;padding:6px 8px;display:grid}.build-steps button:hover{background:var(--panel)}.build-n{border:1px solid var(--line-strong);width:24px;height:24px;color:var(--muted);font:600 12px/1 var(--mono);border-radius:50%;place-items:center;display:grid}.build-steps .is-done .build-n{border-color:var(--ok);background:var(--ok-soft);color:var(--ok)}.build-steps .is-current button{background:var(--accent-soft);color:var(--ink);font-weight:700}.build-steps .is-current .build-n{color:#fff;background:#ef6436;border-color:#ef6436}.joints-intro{margin:0 0 10px;font-size:13px}.joint-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.joint-list>li{border:1px solid var(--line);background:var(--raised);border-radius:12px}.joint-list>li.is-open{border-color:var(--line-strong)}.joint-row{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.joint-parts{font:600 14px/1.3 var(--body)}.joint-type{color:var(--muted);font-size:13px}.joint-note{margin:0;padding:0 12px 12px;font-size:13px}.joint-choices{flex-direction:column;gap:6px;margin:0;padding:0 10px 10px;list-style:none;display:flex}.joint-choice{border:1px solid var(--line);background:var(--panel);width:100%;color:var(--ink);text-align:left;cursor:pointer;border-radius:10px;flex-direction:column;gap:4px;padding:10px;display:flex}.joint-choice:hover{border-color:var(--line-strong)}.joint-choice.is-current{border-color:var(--accent);background:var(--accent-soft);cursor:default}.joint-choice-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.joint-choice-name{font:700 14px/1.2 var(--body)}.joint-choice-about{color:var(--ink-2);font-size:13px;line-height:1.4}.status-pill.tone-current{background:var(--accent);color:var(--accent-ink)}.status-pill.tone-error{background:var(--err-soft);color:var(--err)}.m-joints{margin-top:18px}.m-joints h3{font:700 16px var(--display);margin:0 0 8px}@media (prefers-reduced-motion:reduce){.build-bar span{transition:none}}.build-now{z-index:2;position:sticky;top:0;box-shadow:0 6px 12px -10px #17201c40}@media (width<=1023px){.build-now{top:-2px}.m-tabs button{min-width:0}}.build-stage-group+.build-stage-group{margin-top:6px}.build-steps .build-stage-head{background:var(--soft,var(--panel));width:100%;color:var(--ink);font:700 14px/1.2 var(--body);text-align:left;cursor:pointer;border:0;border-radius:10px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px 8px;display:grid}.build-steps .build-stage-head:hover{background:var(--soft-strong,var(--line))}.build-stage-mark{background:var(--raised);width:22px;height:22px;color:var(--ink-2);font:700 13px/1 var(--body);border-radius:50%;place-items:center;display:grid}.build-stage-group.is-done .build-stage-mark{background:var(--ok);color:#fff}.build-stage-group.is-here .build-stage-head{background:var(--accent-soft);color:var(--accent)}.build-stage-count{color:var(--muted);font:600 12px/1 var(--body);font-variant-numeric:tabular-nums}.build-stage-group>ol{margin-top:4px}.build-row{flex-direction:column;gap:1px;min-width:0;display:flex}.build-row-title{color:var(--ink)}.build-row-detail{color:var(--muted);font:500 12px/1.3 var(--body);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.build-steps .is-current .build-row-detail{color:var(--ink-2)}.build-now .build-detail{color:var(--accent);font:600 13px/1.3 var(--body);margin:-2px 0 2px}.build-now p{color:var(--ink)}.part-card:has(.fitout){pointer-events:auto;overscroll-behavior:contain;max-width:min(360px,100% - 32px);max-height:calc(100% - 32px);overflow-y:auto}.fitout{border-top:1px solid var(--line);flex-direction:column;gap:12px;margin-top:10px;padding-top:10px;display:flex}.fitout h4{font:650 13px var(--body);letter-spacing:.01em;margin:0 0 6px}.fitout h4 .muted{font-weight:500}.fitout-block,.fitout-add{flex-direction:column;gap:8px;display:flex}.fitout-options{gap:8px 10px}.fitout-all{color:var(--ink-2);align-items:center;gap:8px;font-size:13px;display:flex}.fitout-chips{flex-wrap:wrap;gap:6px;display:flex}.fitout-chips button{border:1px solid var(--line-strong);background:var(--panel);color:var(--ink);font:600 12.5px var(--body);cursor:pointer;border-radius:999px;padding:5px 11px}.fitout-chips button:hover{border-color:var(--ink-2)}.fitout-chips button.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.fitout-form{background:var(--ground);border-radius:10px;flex-direction:column;gap:8px;padding:10px;display:flex}.fitout-form p{margin:0;font-size:12.5px}.fitout-note{background:var(--ok-soft);color:var(--ink);border-radius:8px;padding:8px 10px;font-size:13px}.fitout-note p{margin:0}.fitout-note.is-problem,.fitout-why{color:var(--err)}.fitout-note.is-problem{background:var(--err-soft)}.fitout-remove{border:1px solid var(--err);color:var(--err);font:600 13px var(--body);cursor:pointer;background:0 0;border-radius:8px;align-self:flex-start;padding:6px 10px}.sheet-edited,.sheet-asking{flex-direction:column;gap:8px;padding:12px 14px;display:flex}.sheet-edited-head{color:var(--ok);margin:0;font-weight:650}.sheet-edited ul{margin:0;padding-left:18px;font-size:14px}.sheet-asking p{margin:0;font-weight:600}.look{flex-direction:column;gap:4px;display:flex}.look-swatches{flex-wrap:wrap;gap:8px;display:flex}.look-swatches button,.look-custom{border:2px solid var(--raised);width:30px;height:30px;box-shadow:0 0 0 1px var(--line-strong);cursor:pointer;border-radius:50%;padding:0}.look-swatches button.is-active{box-shadow:0 0 0 2px var(--accent)}.look-custom{background:conic-gradient(#e85d5d,#e8c55d,#6dc96d,#5dc4e8,#6d6de8,#d65de8,#e85d5d);position:relative;overflow:hidden}.look-custom input{opacity:0;cursor:pointer;position:absolute;inset:0}.look-chips{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.look-chips button{border:1px solid var(--line-strong);background:var(--panel);color:var(--ink);font:600 12.5px var(--body);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;display:inline-flex}.look-chips button.is-active{border-color:var(--accent);color:var(--accent)}.look-dots{display:inline-flex}.look-dots span{border:1.5px solid var(--raised);border-radius:50%;width:12px;height:12px;margin-left:-3px}.look-dots span:first-child{margin-left:0}.look-family{flex-direction:column;gap:6px;margin-top:10px;display:flex}.look-family-name{letter-spacing:.04em;color:var(--muted);font-size:11.5px;font-weight:600}.look-family .look-swatches button,.look-family .look-custom{width:26px;height:26px}.look-zone{margin-top:4px}.account{margin-left:auto;position:relative}.account-signin,.account-chip{border:1px solid var(--line);background:var(--raised);min-height:36px;color:var(--ink);font:600 14px/1 var(--body);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:0 14px;display:inline-flex}.account-chip{padding-left:4px}.account-signin:hover,.account-chip:hover{border-color:var(--line-strong)}.account-signin:focus-visible,.account-chip:focus-visible,.account-provider:focus-visible,.account-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.account-avatar{background:var(--accent-soft);width:28px;height:28px;color:var(--accent);font:700 13px/1 var(--display);border-radius:50%;place-items:center;display:grid}.account-name{text-overflow:ellipsis;white-space:nowrap;max-width:14ch;overflow:hidden}.account-menu{z-index:30;border:1px solid var(--line);background:var(--raised);width:min(300px,100vw - 32px);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;gap:8px;padding:14px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.account-why,.account-who{color:var(--muted);margin:0 0 4px;font-size:13px;line-height:1.4}.account-who strong{color:var(--ink);overflow-wrap:anywhere}.account-provider,.account-item{border:1px solid var(--line);background:var(--panel);min-height:42px;color:var(--ink);font:600 14px/1 var(--body);text-align:center;cursor:pointer;border-radius:10px;padding:0 14px}.account-provider:hover,.account-item:hover{border-color:var(--line-strong)}.account-provider:disabled{opacity:.6;cursor:progress}.account-email{background:0 0}.account-error{background:var(--err-soft);width:max-content;max-width:min(280px,100vw - 32px);color:var(--err);border-radius:8px;margin:0;padding:8px 10px;font-size:13px;position:absolute;top:calc(100% + 6px);right:0}.account-quiet{min-height:34px;color:var(--muted);background:0 0;border-color:#0000;font-size:13px;font-weight:500}.account-confirm{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding-top:6px;display:flex}.account-confirm p{color:var(--ink);margin:0;font-size:13px;line-height:1.4}.account-confirm-row{grid-template-columns:1fr 1fr;gap:8px;display:grid}.account-danger{border-color:var(--err);background:var(--err);color:#fff}.account-entry{gap:8px;display:flex}.account-signup{border:1px solid var(--accent);background:var(--accent);min-height:36px;color:var(--accent-ink);font:600 14px/1 var(--body);cursor:pointer;border-radius:999px;padding:0 14px}.account-signup:disabled{opacity:.6;cursor:progress}.account-new{color:var(--muted);text-align:center;margin:4px 0 0;font-size:13px}.account-link{color:var(--accent);font:600 13px/1.4 var(--body);cursor:pointer;background:0 0;border:0;padding:0}.account-link:hover{text-decoration:underline}.account-profile{border-bottom:1px solid var(--line);flex-direction:column;gap:2px;padding-bottom:8px;display:flex}.account-name-row{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.account-display{color:var(--ink);font:700 16px/1.3 var(--display);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-email-line{overflow-wrap:anywhere;color:var(--muted);font-size:13px}.account-name-form{flex-direction:column;gap:8px;display:flex}.account-field{color:var(--muted);letter-spacing:.02em;flex-direction:column;gap:4px;font-size:12px;display:flex}.account-field input{border:1px solid var(--line-strong);background:var(--panel);min-height:38px;color:var(--ink);font:500 15px/1 var(--body);border-radius:8px;padding:0 10px}.account-field input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.account-problem{color:var(--err);margin:0;font-size:13px}.account-primary{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.account-allowance{background:var(--panel);border-radius:10px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.account-allowance-head{color:var(--ink-2);justify-content:space-between;font-size:13px;font-weight:600;display:flex}.account-allowance-figure{font-variant-numeric:tabular-nums}.account-meter{background:var(--line);border-radius:999px;height:6px;overflow:hidden}.account-meter span{border-radius:inherit;background:var(--ok);height:100%;transition:width .4s;display:block}.account-allowance.is-low .account-meter span{background:var(--warn)}.account-allowance.is-out .account-meter span{background:var(--err)}.account-allowance-note{color:var(--muted);margin:0;font-size:12px}.sheet-signin{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}@media (prefers-reduced-motion:reduce){.account-meter span{transition:none}}.signin-problem{z-index:60;border:1px solid var(--err);background:var(--err-soft);max-width:calc(100vw - 32px);color:var(--ink);box-shadow:var(--shadow);border-radius:12px;align-items:center;gap:12px;padding:10px 12px 10px 16px;font-size:14px;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.account-allowance-head{align-items:baseline;gap:10px}.account-plan-action{white-space:nowrap;flex:none;font-size:13px}.account-allowance-note{font-variant-numeric:tabular-nums}.account-allowance .account-plus-near{margin:2px 0 0;padding:0}.account-confirm-row .account-item{white-space:nowrap;padding-left:8px;padding-right:8px}.ways{grid-template-columns:1.5fr 1fr 1fr;gap:18px;max-width:1240px;margin:40px auto 0;padding:0 28px;display:grid}.way{color:#fff;isolation:isolate;border-radius:26px;flex-direction:column;min-height:470px;display:flex;position:relative;overflow:hidden}.way-words{background:linear-gradient(160deg,#6d28d9 0%,#2350d8 58%,#38bdf8 120%)}.way-photo{background:linear-gradient(165deg,#fb7185 0%,#f97316 100%)}.way-plans{background:linear-gradient(165deg,#0f766e 0%,#16a34a 110%)}.way-text{flex-direction:column;align-items:flex-start;gap:10px;padding:30px 30px 0;display:flex}.way h2{max-width:18ch;font-family:var(--display);letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(24px,2.4vw,32px);line-height:1.08}.way p{opacity:.92;max-width:38ch;margin:0;font-size:15px;line-height:1.45}.way-button{color:#17201c;font:600 14px var(--body);cursor:pointer;background:#fff;border:0;border-radius:10px;margin-top:6px;padding:10px 16px;transition:transform .12s;box-shadow:0 6px 16px -8px #00000073}.way-button:hover{transform:translateY(-1px)}.way-button:focus-visible{outline-offset:3px;outline:3px solid #fff}.way-art{flex:1;min-height:220px;margin:24px 0 0 30px;position:relative}.way-art img{object-fit:cover;object-position:35% 40%;border-radius:18px 0 0;width:calc(100% + 30px);height:100%;position:absolute;inset:0;box-shadow:-10px -10px 40px -20px #00000080}.way-chip{z-index:1;color:#17201c;max-width:80%;font:600 13px var(--body);white-space:nowrap;text-overflow:ellipsis;background:#fff;border-radius:12px;align-items:center;gap:6px;padding:8px 12px;display:inline-flex;position:absolute;overflow:hidden;box-shadow:0 10px 30px -10px #00000073}.way-chip svg{stroke:#16a34a;stroke-width:2.4px;fill:none;flex:none;width:16px;height:16px}.way-chip-ask{color:#4c1d95;background:#ede9fe;top:22px;left:-14px;transform:rotate(-2deg)}.way-chip-ok{bottom:22px;right:18px}.way-chip-scan{color:#9a3412;background:#fff7ed;top:26px;left:-12px}.way-chip-scan:before{content:"";background:#f97316;border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite way-pulse}.way-chip-step{top:22px;left:-12px;transform:rotate(-1.5deg)}.way-chip-cut{color:#065f46;background:#ecfdf5;bottom:20px;right:16px}@keyframes way-pulse{50%{opacity:.35}}.gallery{max-width:1240px;margin:56px auto 0;padding:0 28px}.gallery-head h2{font-family:var(--display);letter-spacing:-.025em;text-wrap:balance;margin:0;font-size:clamp(28px,3.4vw,44px);line-height:1.05}.gallery-head p{margin:8px 0 0}.gallery-rooms{scrollbar-width:none;gap:8px;margin:18px 0 20px;display:flex;overflow-x:auto}.gallery-room{border:1px solid var(--line-strong);background:var(--raised);color:var(--ink);font:600 14px var(--body);cursor:pointer;border-radius:999px;flex:none;padding:8px 14px}.gallery-room[aria-selected=true]{border-color:var(--ink);background:var(--ink);color:var(--ground)}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:22px 18px;display:grid}.gallery-card{color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;gap:6px;padding:0;display:flex}.gallery-card-lead{grid-area:span 2/span 2}.gallery-picture{aspect-ratio:4/3;background:var(--panel);border-radius:18px;display:block;position:relative;overflow:hidden}.gallery-card-lead .gallery-picture{aspect-ratio:auto;flex:1;min-height:320px}.gallery-picture img,.gallery-picture .thumb{object-fit:cover;width:100%;height:100%;transition:transform .3s cubic-bezier(.2,.8,.2,1);position:absolute;inset:0}.gallery-open{color:#17201c;font:600 13px var(--body);opacity:0;background:#fffffff0;border-radius:10px;padding:8px 12px;transition:opacity .16s,transform .16s;position:absolute;bottom:12px;left:12px;transform:translateY(6px)}.gallery-card:hover .gallery-picture img,.gallery-card:focus-visible .gallery-picture img{transform:scale(1.035)}.gallery-card:hover .gallery-open,.gallery-card:focus-visible .gallery-open{opacity:1;transform:none}.gallery-card:focus-visible{outline:none}.gallery-card:focus-visible .gallery-picture{outline:3px solid var(--accent);outline-offset:3px}.gallery-name{margin-top:4px;font-size:15px;font-weight:650}.gallery-card-lead .gallery-name{font-family:var(--display);font-size:20px}.gallery-meta{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.4;display:-webkit-box;overflow:hidden}.gallery-more{border:1px solid var(--line-strong);background:var(--raised);color:var(--ink);font:600 14px var(--body);cursor:pointer;border-radius:12px;margin:26px auto 0;padding:11px 20px;display:block}.gallery-open.gallery-opening{opacity:1;transform:none}.gallery-card[aria-busy=true]{cursor:progress}.gallery-note{color:var(--muted);margin:0 0 14px;font-size:14px}.gallery-end{height:1px}.gallery-skeleton{pointer-events:none}.gallery-skeleton .gallery-picture{background:var(--panel);box-shadow:inset 0 0 0 1px var(--line)}.gallery-skeleton .gallery-picture:after{content:"";background:linear-gradient(100deg, transparent 20%, color-mix(in srgb, var(--raised) 70%, transparent) 50%, transparent 80%);animation:1.4s ease-in-out infinite gallery-shimmer;position:absolute;inset:0;transform:translate(-100%)}.skeleton-bar{background:var(--line);color:#0000;border-radius:6px;max-width:100%;line-height:1;display:inline-block}@keyframes gallery-shimmer{to{transform:translate(100%)}}.home-foot{border-top:1px solid var(--line);max-width:1240px;color:var(--muted);grid-template-columns:minmax(220px,1.2fr) 2fr;gap:28px 48px;margin:72px auto 0;padding:36px 28px 28px;font-size:13.5px;display:grid}.foot-brand .brand-logo{height:30px}.foot-brand p{max-width:34ch;margin:12px 0 0;line-height:1.5}.foot-cols{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.foot-cols>div{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.foot-cols h3{letter-spacing:.06em;text-transform:uppercase;color:var(--ink);margin:0 0 4px;font-size:12px}.foot-cols a,.foot-cols button{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:2px 0;text-decoration:none}.foot-cols a:hover,.foot-cols button:hover,.foot-small a:hover{color:var(--ink)}.foot-small{border-top:1px solid var(--line);grid-column:1/-1;margin:8px 0 0;padding-top:18px;font-size:12.5px}.foot-small a{color:inherit}@media (width<=720px){.home-foot{grid-template-columns:1fr;padding:28px 20px 24px}.foot-cols{grid-template-columns:repeat(2,minmax(0,1fr))}.foot-cols a,.foot-cols button{min-height:36px}}@media (width<=1080px){.ways{grid-template-columns:1fr 1fr}.way-words{grid-column:1/-1;min-height:420px}}@media (width<=700px){.ways,.gallery{padding:0 16px}.ways{grid-template-columns:1fr;margin-top:28px}.way,.way-words{min-height:380px}.way-text{padding:24px 22px 0}.way-art{margin-left:22px}.gallery-grid{grid-template-columns:1fr 1fr;gap:16px 12px}.gallery-card-lead{grid-area:auto/1/auto/-1}.gallery-card-lead .gallery-picture{aspect-ratio:4/3;min-height:0}.gallery-open{display:none}.way-chip{white-space:normal;max-width:calc(100% - 24px)}.home-foot{padding:20px 16px 0}}@media (prefers-reduced-motion:reduce){.gallery-picture img,.gallery-open,.way-button{transition:none}.gallery-skeleton .gallery-picture:after,.way-chip-scan:before{animation:none}}.gallery-item{display:flex;position:relative}.gallery-item>.gallery-card{flex:1;min-width:0}.gallery-zoom{color:#17201c;cursor:pointer;opacity:0;background:#ffffffeb;border:0;border-radius:50%;place-items:center;width:36px;height:36px;padding:0;transition:opacity .16s;display:grid;position:absolute;top:10px;right:10px;box-shadow:0 2px 10px #0000002e}.gallery-zoom svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.gallery-item:hover .gallery-zoom,.gallery-zoom:focus-visible{opacity:1}@media (hover:none){.gallery-zoom{opacity:1}}.peek{background:var(--raised);color:var(--ink);border-radius:18px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 30px 80px #0a141e59,0 4px 14px #0a141e26}.peek-float{z-index:60;transform-origin:50%;animation:.22s cubic-bezier(.2,.8,.2,1) peek-in;position:fixed}@keyframes peek-in{0%{opacity:0;transform:scale(.88)}}.peek-picture{aspect-ratio:3/2;background:var(--panel);display:block;position:relative}.peek-picture img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.peek-views{background:#ffffffeb;position:absolute;bottom:12px;left:12px}.peek-words{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 16px;padding:14px 18px 16px;display:grid}.peek-title{font:700 18px var(--display)}.peek-summary{color:var(--ink-2);grid-column:1;font-size:13.5px;line-height:1.5}.peek-open{white-space:nowrap;grid-area:1/2/span 2}.peek-backdrop{z-index:80;background:#080c10b8;place-items:center;padding:16px;animation:.18s peek-fade;display:grid;position:fixed;inset:0}@keyframes peek-fade{0%{opacity:0}}.peek-sheet{width:min(960px,100%);max-height:calc(100dvh - 32px);position:relative;overflow-y:auto}.peek-sheet .peek-picture{aspect-ratio:3/2}.peek-close{z-index:2;background:#ffffffeb;border-radius:50%;position:absolute;top:10px;right:10px}.peek-nav{justify-content:center;align-items:center;gap:16px;padding:0 18px 16px;display:flex}.peek-nav .ghost-button{min-width:44px;font-size:20px;line-height:1}@media (width<=640px){.peek-words{grid-template-columns:1fr}.peek-open{grid-area:auto/1;width:100%;min-height:44px;margin-top:8px}.peek-backdrop{align-items:end;padding:0}.peek-sheet{border-radius:18px 18px 0 0;max-height:100dvh}}@media (prefers-reduced-motion:reduce){.peek-float,.peek-backdrop{animation:none}}.peek-close{place-items:center;width:40px;height:40px;display:grid;box-shadow:0 2px 10px #0003}.peek-close svg{fill:none;stroke:#17201c;stroke-width:2.2px;stroke-linecap:round;width:18px;height:18px}.gallery-video,.peek-picture video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.gallery-video{pointer-events:none;transition:transform .3s cubic-bezier(.2,.8,.2,1)}.gallery-card:hover .gallery-video{transform:scale(1.035)}.gallery-moves{color:#fff;font:600 12px var(--body);background:#11141ab8;border-radius:999px;align-items:center;gap:5px;padding:5px 10px 5px 8px;transition:opacity .2s;display:inline-flex;position:absolute;top:12px;left:12px}.gallery-moves svg{fill:currentColor;width:12px;height:12px}.gallery-card:hover .gallery-moves{opacity:0}@media (prefers-reduced-motion:reduce){.gallery-video{display:none}}.designs-back{margin-left:12px}.designs-main{max-width:980px;margin:28px auto 64px;padding:0 28px}.designs-head h1{font:700 32px/1.1 var(--display);letter-spacing:-.02em;text-wrap:balance;margin:0 0 6px}.designs-head p{margin:0 0 24px}.designs-empty,.designs-loading{border:1px dashed var(--line-strong);background:var(--panel);border-radius:16px;padding:28px}.designs-empty p{margin:0 0 12px}.designs-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.design-row{border:1px solid var(--line);background:var(--raised);border-radius:16px;grid-template-columns:148px minmax(0,1fr);gap:18px;padding:14px;display:grid}.design-thumb{aspect-ratio:4/3;border:1px solid var(--line);background:linear-gradient(180deg, var(--raised), var(--panel));cursor:pointer;border-radius:12px;padding:8px;display:block}.design-thumb:hover{border-color:var(--line-strong)}.design-thumb-empty{width:100%;height:100%;display:block}.design-body{flex-direction:column;gap:6px;min-width:0;display:flex}.design-title{font:700 18px/1.3 var(--display);margin:0}.design-title button{max-width:100%;color:var(--ink);font:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:0;overflow:hidden}.design-title button:hover{color:var(--accent)}.design-meta{flex-wrap:wrap;align-items:center;gap:10px;margin:0;font-size:13px;display:flex}.status-pill.tone-draft{background:var(--panel);color:var(--muted)}.status-pill.tone-built{background:var(--accent-soft);color:var(--accent)}.design-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;display:flex}.design-actions .ghost-button{min-height:32px;padding:0 12px;font-size:13px}.design-actions .design-delete{color:var(--err);margin-left:auto}.design-confirm{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:6px;margin-left:auto;font-size:13px;display:inline-flex}.danger-button{border:1px solid var(--err);background:var(--err);color:#fff;min-height:32px;font:600 13px/1 var(--body);cursor:pointer;border-radius:10px;padding:0 12px}.design-rename{flex-wrap:wrap;gap:6px;display:flex}.design-rename input{border:1px solid var(--line-strong);background:var(--panel);min-height:36px;color:var(--ink);font:600 15px/1 var(--body);border-radius:8px;flex:220px;padding:0 10px}.design-history{background:var(--panel);border-radius:12px;flex-direction:column;gap:8px;margin:8px 0 0;padding:12px;font-size:14px;line-height:1.45;list-style:none;display:flex}.design-history li{grid-template-columns:56px minmax(0,1fr);gap:8px;display:grid}.history-who{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;padding-top:2px;font-size:11px;font-weight:700}.history-you .history-who{color:var(--accent)}.design-history .is-revision{color:var(--muted);font-style:italic}.designs-more{margin:18px auto 0;display:block}@media (width<=640px){.designs-main{padding:0 16px}.design-row{grid-template-columns:96px minmax(0,1fr);gap:12px;padding:10px}.designs-back{display:none}}:root{--ground:#e9ece8;--panel:#f6f7f5;--raised:#fff;--ink:#17201c;--ink-2:#3c4742;--muted:#6a7670;--line:#d7ddd9;--line-strong:#b8c1bc;--accent:#2350d8;--accent-ink:#fff;--accent-soft:#e3e9fc;--ok:#2c7a4d;--ok-soft:#e1f0e6;--warn:#a96d14;--warn-soft:#f8ecd6;--err:#c23131;--err-soft:#f9e2e0;--info:#4b6c8f;--stage-top:#f0f2ef;--stage-bottom:#d5dbd7;--paper:#fbfcfa;--paper-grid:#2350d80f;--shadow:0 1px 2px #17201c0f, 0 8px 24px #17201c14;--display:"Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;--body:"Instrument Sans", "Segoe UI", system-ui, sans-serif;--mono:"IBM Plex Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;--radius:8px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ground:#0f1311;--panel:#141916;--raised:#1b221e;--ink:#e5ebe7;--ink-2:#bcc6c0;--muted:#8a9690;--line:#26302b;--line-strong:#3a4540;--accent:#7d97ff;--accent-ink:#0d1430;--accent-soft:#1d2747;--ok:#5cba84;--ok-soft:#15291d;--warn:#e0a84e;--warn-soft:#2e2413;--err:#f06b6b;--err-soft:#331817;--info:#8aa9c9;--stage-top:#1b211e;--stage-bottom:#0c0f0d;--paper:#161b18;--paper-grid:#7d97ff12;--shadow:0 1px 2px #0006, 0 10px 28px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--ground:#0f1311;--panel:#141916;--raised:#1b221e;--ink:#e5ebe7;--ink-2:#bcc6c0;--muted:#8a9690;--line:#26302b;--line-strong:#3a4540;--accent:#7d97ff;--accent-ink:#0d1430;--accent-soft:#1d2747;--ok:#5cba84;--ok-soft:#15291d;--warn:#e0a84e;--warn-soft:#2e2413;--err:#f06b6b;--err-soft:#331817;--info:#8aa9c9;--stage-top:#1b211e;--stage-bottom:#0c0f0d;--paper:#161b18;--paper-grid:#7d97ff12;--shadow:0 1px 2px #0006, 0 10px 28px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--ground);color:var(--ink);font:14px/1.45 var(--body);-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.45}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1,h2,h3{font-family:var(--display);text-wrap:balance;margin:0}.shell{grid-template:"top top top"58px"left stage right"minmax(0,1fr)/324px minmax(0,1fr) 360px;height:100dvh;display:grid}.topbar{border-bottom:1px solid var(--line);background:var(--panel);grid-area:top;align-items:center;gap:20px;padding:0 16px;display:flex}.left,.right{background:var(--panel);flex-direction:column;display:flex;overflow-y:auto}.left{border-right:1px solid var(--line);grid-area:left}.right{border-left:1px solid var(--line);grid-area:right}.stage{background:linear-gradient(180deg, var(--stage-top), var(--stage-bottom));grid-area:stage;min-width:0;min-height:0;position:relative}.view-drawings .stage{background:var(--paper);background-image:linear-gradient(var(--paper-grid) 1px, transparent 1px), linear-gradient(90deg, var(--paper-grid) 1px, transparent 1px);background-size:24px 24px}.brand{font:700 17px/1 var(--display);letter-spacing:-.01em;align-items:center;gap:9px;min-width:264px;display:flex}.brand-logo{width:auto;height:30px;color:var(--ink);display:block}.design-name{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.design-name h1{white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;font-size:16px;font-weight:500;overflow:hidden}.status-pill{white-space:nowrap;border-radius:999px;flex:none;padding:3px 9px;font-size:12px;font-weight:600}.status-pill.tone-ok{color:var(--ok);background:var(--ok-soft)}.status-pill.tone-warning{color:var(--warn);background:var(--warn-soft)}.status-pill.tone-error{color:var(--err);background:var(--err-soft)}.top-actions{align-items:center;gap:10px;display:flex}.ghost-button,.link-button{border:1px solid var(--line-strong);white-space:nowrap;background:0 0;border-radius:6px;padding:5px 11px;font-size:13px;font-weight:500}.ghost-button:hover{border-color:var(--ink-2)}.link-button{color:var(--accent);border:none;padding:2px 4px;font-size:12.5px}.segmented{background:var(--ground);border:1px solid var(--line);border-radius:7px;gap:2px;padding:2px;display:flex}.segmented button{color:var(--ink-2);white-space:nowrap;background:0 0;border:none;border-radius:5px;flex:1;padding:6px 10px;font-size:13px;font-weight:500}.segmented.small button{padding:4px 10px;font-size:12.5px}.segmented button.is-active{background:var(--raised);color:var(--ink);box-shadow:0 1px 2px #0000001f}.section-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:12px;display:flex}.section-head h3{font-size:11.5px;font-weight:700;font-family:var(--body);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.muted{color:var(--muted);font-size:12px}.pieces,.params,.checks,.cutlist{padding:18px 18px 20px}.pieces,.checks{border-bottom:1px solid var(--line)}.piece-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.piece{text-align:left;border:1px solid var(--line);background:var(--raised);border-radius:var(--radius);grid-template-rows:auto auto;grid-template-columns:30px 1fr;align-items:center;column-gap:9px;padding:9px 10px;display:grid}.piece svg{fill:none;width:30px;height:30px;stroke:var(--ink-2);stroke-width:1.6px;stroke-linejoin:round;grid-row:span 2}.piece-name{font-size:13px;font-weight:600;line-height:1.2}.piece-cat{color:var(--muted);text-transform:capitalize;font-size:11.5px}.piece.is-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.piece.is-active svg{stroke:var(--accent)}.param-list{flex-direction:column;gap:16px;display:flex}.control{border:none;min-width:0;margin:0;padding:0}.control legend,.control label{color:var(--ink-2);padding:0;font-size:13px;font-weight:500}.control legend{margin-bottom:7px}.is-changed:after{content:"";background:var(--accent);vertical-align:middle;border-radius:50%;width:5px;height:5px;margin-left:6px;display:inline-block}.control-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.value-field{border:1px solid #0000;border-radius:5px;align-items:baseline;gap:3px;padding:1px 6px;display:inline-flex}.value-field:hover,.value-field:focus-within{border-color:var(--line-strong);background:var(--raised)}.value-field input{width:7.6ch;color:var(--ink);font:500 13px var(--mono);text-align:right;font-variant-numeric:tabular-nums;background:0 0;border:none;outline:none;padding:0}.value-field .suffix{font:12px var(--mono);color:var(--muted)}.control-inline{justify-content:space-between;align-items:center;display:flex}input[type=range]{--pct:50%;appearance:none;cursor:pointer;background:0 0;width:100%;height:18px;margin:0}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--raised);border:2px solid var(--accent);border-radius:50%;width:16px;height:16px;margin-top:-6px;box-shadow:0 1px 3px #0000002e}input[type=range]::-moz-range-thumb{background:var(--raised);border:2px solid var(--accent);border-radius:50%;width:12px;height:12px}.switch{background:var(--line-strong);border:none;border-radius:999px;width:34px;height:20px;padding:0;transition:background .15s;position:relative}.switch span{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.switch[aria-checked=true]{background:var(--accent)}.switch[aria-checked=true] span{transform:translate(14px)}.materials{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.material{border:1px solid var(--line);background:var(--raised);text-align:left;white-space:nowrap;text-overflow:ellipsis;border-radius:6px;align-items:center;gap:7px;padding:6px 8px;font-size:12.5px;display:flex;overflow:hidden}.material.is-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.swatch{border-radius:3px;flex:none;width:14px;height:14px;box-shadow:inset 0 0 0 1px #0000002e}.headline{align-items:flex-start;gap:12px;display:flex}.headline h2{letter-spacing:-.01em;font-size:19px;font-weight:700;line-height:1.2}.headline p{color:var(--muted);margin:3px 0 0;font-size:13px}.headline-mark{border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid}.headline-mark svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.headline.tone-ok .headline-mark{color:var(--ok);background:var(--ok-soft)}.headline.tone-warning .headline-mark{color:var(--warn);background:var(--warn-soft)}.headline.tone-error .headline-mark{color:var(--err);background:var(--err-soft)}.findings{flex-direction:column;gap:8px;margin:14px 0 0;padding:0;list-style:none;display:flex}.finding{background:var(--raised);border:1px solid var(--line);border-radius:7px;padding:10px 12px 10px 14px;position:relative;overflow:hidden}.finding:before{content:"";width:3px;position:absolute;inset:0 auto 0 0}.finding.sev-error:before{background:var(--err)}.finding.sev-warning:before{background:var(--warn)}.finding.sev-info:before{background:var(--info)}.finding:hover{border-color:var(--line-strong)}.finding p{margin:0;font-size:13px;line-height:1.45}.finding .fix{color:var(--muted);margin-top:5px;font-size:12.5px}.sev-chip{letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:10.5px;font-weight:700;display:inline-block}.sev-error .sev-chip{color:var(--err)}.sev-warning .sev-chip{color:var(--warn)}.sev-info .sev-chip{color:var(--info)}.notes{margin-top:12px}.notes-toggle{color:var(--accent);background:0 0;border:none;padding:0;font-size:12.5px;font-weight:500}.cut-rows{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.cut-row{border-bottom:1px solid var(--line);grid-template-columns:2.2em minmax(0,1fr) auto;grid-template-areas:"qty name size"".meta meta";gap:2px 8px;padding:9px 6px;font-size:13px;display:grid}.qty{font:600 13px var(--mono);text-align:right;font-variant-numeric:tabular-nums;grid-area:qty}.size{font:13px var(--mono);white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums;grid-area:size}.size span{color:var(--muted)}.part-name{grid-area:name;align-items:center;gap:7px;min-width:0;font-weight:600;display:flex}.part-meta{color:var(--muted);grid-area:meta;margin-left:21px;font-size:12px}.totals{flex-wrap:wrap;gap:8px 22px;margin:14px 0 0;display:flex}.totals dt{color:var(--muted);font-size:11px}.totals dd{font:500 14px var(--mono);margin:1px 0 0}.stage canvas{display:block}.stage-tools{background:color-mix(in srgb, var(--panel) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;align-items:center;gap:14px;max-width:calc(100% - 32px);padding:7px 10px;display:flex;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.explode{color:var(--ink-2);align-items:center;gap:8px;font-size:12.5px;font-weight:500;display:flex}.explode input{width:110px}.toggle{border:1px solid var(--line);background:0 0;border-radius:6px;padding:4px 10px;font-size:12.5px;font-weight:500}.toggle.is-active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.dim-tag{font:500 12px var(--mono);color:var(--accent-ink);background:var(--accent);white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:4px;padding:2px 7px;display:inline-block}.part-card{background:color-mix(in srgb, var(--panel) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);max-width:min(320px,100% - 32px);box-shadow:var(--shadow);pointer-events:none;border-radius:10px;padding:12px 14px;position:absolute;top:16px;left:16px}.part-card-title{font:700 15px var(--display)}.part-card-meta{color:var(--muted);margin-top:1px;font-size:12.5px}.part-card-size{font:13px var(--mono);margin-top:6px}.part-card-finding{border-left:2px solid;margin-top:8px;padding-left:8px;font-size:12.5px}.part-card-finding.sev-error{border-color:var(--err)}.part-card-finding.sev-warning{border-color:var(--warn)}.drawings{padding:28px;display:flex;position:absolute;inset:0}.drawings svg{width:100%;height:100%}.drawings .part{fill:color-mix(in srgb, var(--wood) 20%, var(--paper));stroke:var(--ink);stroke-width:1.1px;vector-effect:non-scaling-stroke;stroke-linejoin:round;cursor:pointer;transition:fill .12s}.drawings .part.tone-select{fill:color-mix(in srgb, var(--accent) 22%, var(--paper));stroke:var(--accent)}.drawings .part.tone-error{fill:color-mix(in srgb, var(--err) 22%, var(--paper));stroke:var(--err)}.drawings .part.tone-warning{fill:color-mix(in srgb, var(--warn) 24%, var(--paper));stroke:var(--warn)}.drawings .part.tone-info{fill:color-mix(in srgb, var(--info) 20%, var(--paper))}.drawings .view-label{font-family:var(--body);letter-spacing:.12em;fill:var(--muted);font-weight:700}.dim line{stroke:var(--accent);stroke-width:.9px;vector-effect:non-scaling-stroke}.tick{stroke:var(--accent);stroke-width:1.4px;vector-effect:non-scaling-stroke}.dim-text{font-family:var(--mono);fill:var(--accent);font-variant-numeric:tabular-nums;font-weight:500}.title-block rect,.title-block line{fill:none;stroke:var(--ink);stroke-width:1px;vector-effect:non-scaling-stroke}.tb-title{font-family:var(--display);fill:var(--ink);font-weight:700}.tb-label{font-family:var(--body);letter-spacing:.08em;fill:var(--muted);font-weight:600}.tb-value{font-family:var(--mono);fill:var(--ink)}.drawings-empty{color:var(--muted);padding:40px}.print-sheet{display:none}@page{size:landscape;margin:12mm}@media print{body{background:#fff}.shell{height:auto;display:block}.topbar,.left,.stage,.right{display:none}.print-sheet{color:#000;display:block}.print-sheet h1{margin-bottom:6px;font-size:18px}.print-sheet .drawings{break-after:page;height:150mm;padding:0;position:static}.print-columns{grid-template-columns:1fr 1.2fr;gap:10mm;display:grid}.print-sheet .finding,.print-sheet tr{break-inside:avoid}}@media (width<=0){.shell{grid-template:"top top""left stage"minmax(420px,62vh)"right right"/264px minmax(0,1fr);height:auto;min-height:100dvh}.left{max-height:62vh}.right{border-left:none;border-top:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.brand{min-width:0}.shell{grid-template:"top""stage"56vh"left""right"/minmax(0,1fr)}.topbar{flex-wrap:wrap;gap:10px;padding:10px 16px}.design-name{flex-basis:100%;order:3}.top-actions{flex-wrap:wrap;justify-content:flex-end;margin-left:auto}.left{border-right:none;max-height:none}.right{display:flex}.stage-tools{justify-content:space-between;gap:6px;max-width:none;padding:5px 6px;bottom:8px;left:8px;right:8px;transform:none}.stage-tools .segmented.small button{padding:4px 7px}.explode span{display:none}.explode input{width:64px}.toggle{padding:4px 7px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.viewport{position:absolute;inset:0}.dim-layer{pointer-events:none;transition:opacity .2s;position:absolute;inset:0;overflow:hidden}.dim-layer .dim-tag{will-change:transform;position:absolute;top:0;left:0}.describe{border-bottom:1px solid var(--line);padding:18px}.describe textarea{resize:vertical;border:1px solid var(--line-strong);background:var(--raised);width:100%;min-height:74px;color:var(--ink);font:14px/1.4 var(--body);border-radius:8px;padding:9px 11px}.describe textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.describe-actions{justify-content:space-between;align-items:center;gap:8px;margin-top:8px;display:flex}.check{color:var(--ink-2);align-items:center;gap:6px;font-size:12.5px;display:flex}.check input{accent-color:var(--accent);margin:0}.primary-button{background:var(--accent);color:var(--accent-ink);white-space:nowrap;border:none;border-radius:7px;padding:7px 14px;font-size:13px;font-weight:600}.primary-button:hover:not(:disabled){filter:brightness(1.08)}.describe-note{color:var(--muted);margin:8px 0 0;font-size:12.5px}.examples{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.example{border:1px dashed var(--line-strong);color:var(--ink-2);text-align:left;background:0 0;border-radius:999px;padding:3px 10px;font-size:12px}.example:hover{border-color:var(--accent);color:var(--accent)}.proposal-sheet{z-index:5;background:var(--panel);border:1px solid var(--line);width:min(440px,100% - 32px);max-height:calc(100% - 100px);box-shadow:var(--shadow);border-radius:12px;grid-area:stage;place-self:start end;margin:16px;padding:16px 18px 14px;position:relative;overflow-y:auto}.sheet-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.request{font:500 15px/1.35 var(--display);margin:3px 0 0}.close{color:var(--muted);background:0 0;border:none;border-radius:6px;flex:none;padding:4px}.close svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:18px;height:18px}.close:hover{background:var(--ground);color:var(--ink)}.understanding{color:var(--ink-2);margin:12px 0 0;font-size:13.5px}.unsupported{background:var(--warn-soft);color:var(--warn);border-radius:7px;margin:10px 0 0;padding:8px 10px;font-size:13px}.assumptions{color:var(--muted);margin:8px 0 0;padding-left:18px;font-size:12.5px}.proposals{flex-direction:column;gap:10px;margin-top:14px;display:flex}.proposal{border:1px solid var(--line);background:var(--raised);border-radius:9px;padding:12px 14px 12px 16px;position:relative;overflow:hidden}.proposal:before{content:"";width:3px;position:absolute;inset:0 auto 0 0}.proposal.tone-ok:before{background:var(--ok)}.proposal.tone-warning:before{background:var(--warn)}.proposal.tone-error:before{background:var(--err)}.proposal-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.proposal h4{font:700 15px var(--display);margin:0}.proposal-meta{font:12.5px var(--mono);color:var(--muted);margin:3px 0 0}.pitch{margin:8px 0 0;font-size:13.5px}.changes{color:var(--accent);margin:6px 0 0;font-size:12.5px}.proposal-issue{color:var(--err);margin:6px 0 0;font-size:12.5px}.proposal .primary-button,.proposal .ghost-button{margin-top:10px}.sheet-error{color:var(--err);margin:14px 0 4px;font-size:13.5px}.sheet-foot{color:var(--muted);margin:12px 0 0;font-size:12px}.working{align-items:flex-start;gap:12px;margin-top:16px;display:flex}.working p{margin:0;font-size:13.5px}.working .muted{margin-top:3px}.spinner{border:2px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;flex:none;width:18px;height:18px;margin-top:1px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=720px){.proposal-sheet{grid-area:2;justify-self:stretch;width:auto;max-height:none;margin:8px}}@media print{.proposal-sheet{display:none}}.custom-parts{border-top:1px solid var(--line);margin:0 0 16px;padding:0;list-style:none}.custom-parts li{border-bottom:1px solid var(--line);grid-template-columns:14px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 2px;font-size:13px;display:grid}.custom-part-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.custom-part-size{font:12.5px var(--mono);color:var(--ink-2);white-space:nowrap;font-variant-numeric:tabular-nums}.custom-panel .control+.control{margin-top:14px}.custom-hardware h4,.buy-list h4{font:700 11.5px var(--body);letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin:16px 0 6px}.custom-hardware ul{margin:0;padding-left:18px;font-size:13px}.custom-hint{color:var(--muted);margin:16px 0 0;font-size:12.5px}.buy-list ul{margin:0;padding:0;list-style:none}.buy-list li{border-bottom:1px solid var(--line);grid-template-columns:2.2em minmax(0,1fr);grid-template-areas:"qty name"".meta";column-gap:8px;padding:8px 6px;font-size:13px;display:grid}.buy-list li:hover{background:var(--accent-soft)}.buy-name{grid-area:name;font-weight:600}.buy-list .part-meta{margin-left:0}.describe-buttons{gap:8px;display:flex}.photo-button{align-items:center;gap:6px;display:inline-flex}.photo-button svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linejoin:round;width:18px;height:18px}.sheet-head{align-items:flex-start}.sheet-title{flex:1;min-width:0}.sheet-photo{object-fit:cover;border:1px solid var(--line);border-radius:8px;flex:none;width:64px;height:64px}.photo-item.is-muted{opacity:.6}.photo-item.is-muted:before{background:var(--line-strong)}.photo-item:not(.is-muted):before{background:var(--accent)}.proposal-warning{color:var(--warn);margin:6px 0 0;font-size:12.5px}.shell.no-left{grid-template-columns:0 minmax(0,1fr) 360px}.shell.no-right{grid-template-columns:324px minmax(0,1fr) 0}.shell.no-left.no-right{grid-template-columns:0 minmax(0,1fr) 0}.panel-toggle{width:34px;height:34px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:8px;flex:none;place-items:center;display:grid}.panel-toggle svg{fill:none;stroke:currentColor;stroke-width:1.5px;width:19px;height:19px}.panel-toggle:hover{border-color:var(--line-strong);color:var(--ink)}.panel-toggle.is-active{color:var(--ink-2)}.shell.no-left .brand{min-width:0}.fold-toggle{color:var(--muted);background:0 0;border:none;align-items:center;gap:5px;padding:0;display:inline-flex}.fold-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px}.fold-toggle:hover h3,.fold-toggle:hover{color:var(--ink)}.pieces .section-head,.params .section-head,.describe .section-head,.cutlist .section-head{margin-bottom:10px}.pieces,.params,.describe,.cutlist{padding-top:14px;padding-bottom:14px}.param-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;display:grid}.param-list>.span-2{grid-column:1/-1}.control-num label{color:var(--ink-2);min-height:2.5em;margin-bottom:4px;font-size:12px;line-height:1.25;display:block}.control-row{align-items:center;gap:6px;display:flex}.control-row input[type=range]{flex:1;min-width:0}.control-row .value-field{flex:none;padding:1px 4px}.control-row .value-field input{field-sizing:content;width:4.6ch;min-width:3ch;max-width:9ch;font-size:12.5px}.control-row .value-field .suffix{font-size:11px}.m-shell{--m-bar:54px;--m-tabs:60px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--half:46dvh;--sheet:var(--half);background:linear-gradient(180deg, var(--stage-top), var(--stage-bottom));overscroll-behavior:none;position:fixed;inset:0;overflow:hidden}.m-shell.snap-closed{--sheet:0px}.m-shell.snap-full{--sheet:calc(100dvh - var(--m-bar) - var(--m-tabs) - var(--safe-top) - var(--safe-bottom) - 10px)}.m-bar{z-index:20;height:calc(var(--m-bar) + var(--safe-top));padding:var(--safe-top) 8px 0 14px;background:color-mix(in srgb, var(--panel) 90%, transparent);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);align-items:center;gap:10px;display:flex;position:absolute;top:0;left:0;right:0}.brand-compact{gap:7px;min-width:0}.brand-compact .brand-logo{height:28px}.m-title{flex-direction:column;flex:1;align-items:flex-end;gap:2px;min-width:0;display:flex}.m-name{max-width:100%;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;font-size:12px;overflow:hidden}.m-title .status-pill{padding:2px 8px;font-size:11px}.m-icon-button{width:42px;height:42px;color:var(--ink-2);background:0 0;border:none;border-radius:10px;flex:none;place-items:center;display:grid}.m-icon-button svg{fill:currentColor;width:22px;height:22px}.m-icon-button:active{background:var(--ground)}.m-scrim{z-index:25;background:0 0;border:none;position:fixed;inset:0}.m-menu{top:calc(var(--m-bar) + var(--safe-top) + 4px);z-index:30;background:var(--raised);border:1px solid var(--line);width:min(280px,100vw - 16px);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;padding:6px;display:flex;position:absolute;right:8px}.m-menu>button{text-align:left;background:0 0;border:none;border-radius:9px;padding:13px 12px;font-size:15px}.m-menu>button:active{background:var(--ground)}.m-menu-row{justify-content:space-between;align-items:center;padding:8px 6px 8px 12px;font-size:15px;display:flex}.m-stage{left:0;right:0;top:calc(var(--m-bar) + var(--safe-top));bottom:calc(var(--m-tabs) + var(--safe-bottom) + var(--sheet) - 14px);transition:bottom .3s cubic-bezier(.2,.8,.2,1);position:absolute}.m-shell.snap-full .m-stage{bottom:calc(var(--m-tabs) + var(--safe-bottom) + var(--half) - 14px)}.m-shell .part-card{max-width:calc(100% - 86px);padding:10px 12px;top:10px;left:10px}.m-tools{z-index:5;flex-direction:column;gap:8px;display:flex;position:absolute;top:10px;right:10px}.m-tool{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 88%, transparent);-webkit-backdrop-filter:blur(10px);width:54px;height:54px;box-shadow:var(--shadow);color:var(--ink-2);border-radius:15px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:0;font-size:10.5px;font-weight:600;display:flex}.m-tool svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linejoin:round;stroke-linecap:round;width:21px;height:21px}.m-tool.is-active{color:var(--accent);border-color:var(--accent)}.m-toast{background:var(--ink);color:var(--panel);white-space:nowrap;box-shadow:var(--shadow);border-radius:999px;padding:9px 16px;font-size:13.5px;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.m-sheet{left:0;right:0;bottom:calc(var(--m-tabs) + var(--safe-bottom));z-index:15;height:var(--sheet);background:var(--panel);border-radius:18px 18px 0 0;flex-direction:column;transition:height .3s cubic-bezier(.2,.8,.2,1);display:flex;position:absolute;overflow:hidden;box-shadow:0 -6px 24px #17201c1f}.m-shell.snap-closed .m-sheet{box-shadow:none}.m-handle{touch-action:none;cursor:grab;flex:none;place-items:center;height:24px;display:grid}.m-handle span{background:var(--line-strong);border-radius:3px;width:42px;height:5px}.m-sheet-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding-bottom:20px;overflow-y:auto}.m-sheet-body .pieces,.m-sheet-body .params,.m-sheet-body .checks,.m-sheet-body .cutlist,.m-sheet-body .describe{padding:6px 16px 16px}.m-sheet-body .pieces,.m-sheet-body .describe{border-bottom:1px solid var(--line);padding-bottom:18px}.m-sheet-body .checks{border-bottom:none}.m-shell.tab-plans .m-sheet-body{padding-bottom:0}.m-plans{background:var(--paper);background-image:linear-gradient(var(--paper-grid) 1px, transparent 1px), linear-gradient(90deg, var(--paper-grid) 1px, transparent 1px);background-size:22px 22px;height:100%;min-height:420px;position:relative}.m-plans .drawings{padding:10px 8px}.proposal-inline{width:auto;max-height:none;box-shadow:none;grid-area:auto;justify-self:stretch;margin:14px 16px 4px;position:static}.m-tabs{z-index:20;height:calc(var(--m-tabs) + var(--safe-bottom));padding-bottom:var(--safe-bottom);background:var(--panel);border-top:1px solid var(--line);grid-template-columns:repeat(6,1fr);display:grid;position:absolute;bottom:0;left:0;right:0}.m-tab{color:var(--muted);-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:0;font-size:11px;font-weight:600;display:flex}.m-tab-icon{border-radius:999px;place-items:center;width:46px;height:28px;transition:background .15s;display:grid;position:relative}.m-tab svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:23px;height:23px}.m-tab.is-active{color:var(--accent)}.m-tab.is-active .m-tab-icon{background:var(--accent-soft)}.m-badge{min-width:17px;height:17px;font:700 10.5px/1 var(--body);color:#fff;background:var(--warn);border-radius:9px;place-items:center;padding:0 4px;display:grid;position:absolute;top:-4px;right:2px}.m-badge.tone-error{background:var(--err)}.m-busy{background:var(--accent);border-radius:50%;width:9px;height:9px;animation:1.1s ease-in-out infinite pulse;position:absolute;top:-2px;right:6px}@keyframes pulse{50%{opacity:.25;transform:scale(.7)}}@media (pointer:coarse){input[type=range]{height:34px}input[type=range]::-webkit-slider-thumb{width:26px;height:26px;margin-top:-11px}input[type=range]::-moz-range-thumb{width:22px;height:22px}.value-field input,.describe textarea{font-size:16px}.segmented button{padding:9px 12px}.segmented.small button{padding:7px 12px}.material,.piece{min-height:46px}.finding,.cut-row{-webkit-tap-highlight-color:transparent}.primary-button,.ghost-button{min-height:42px;padding-left:16px;padding-right:16px}.param-list{gap:12px}}.print-credit{display:none}@media print{.m-shell{display:none}.print-credit{color:#555;margin-top:8mm;font-size:10px;display:block}}@media (prefers-reduced-motion:reduce){.m-stage,.m-sheet{transition:none}}@media (pointer:coarse){.look-chips button,.examples .example,.seereal-settings button,.gallery-room,.peek-views button{min-height:40px}.describe-new button,.notes-toggle,.join-switch button,.switcher-name{min-height:40px;padding-top:8px;padding-bottom:8px}.seereal .close,.ed-panel .close{min-width:40px;min-height:40px}.look-swatches button,.look-custom,.look-family .look-swatches button,.look-family .look-custom{width:36px;height:36px}}.m-shell .m-bar{z-index:20}.m-stage canvas,.m-stage canvas+div,.m-stage>div{touch-action:none!important}.m-tool{border-radius:13px;width:46px;height:46px}.m-shell .part-card{overscroll-behavior:contain;pointer-events:auto;z-index:8;max-width:none;max-height:46%;padding:12px 44px 12px 14px;inset:auto 10px 22px;overflow-y:auto}.m-shell .part-card:has(.fitout){max-width:none;max-height:58%}.m-handle{height:32px}.m-title .switcher{max-width:100%}.m-sheet-body>.build{padding:6px 12px 16px}.m-sheet-body .parts-joints{padding:14px 16px 0}.m-sheet-body>.custom-hint{margin:16px}.m-sheet-body .look+.control{margin-top:18px}.m-shell .part-card{padding-right:14px}.m-shell .part-card .part-card-close{float:right;z-index:2;width:40px;height:40px;margin:-6px -6px 4px 8px;position:sticky;top:0;box-shadow:0 1px 4px #17201c24}.m-shell .part-card:has(.part-card-close) .part-card-title{padding-right:0}.m-shell .part-card:has(.fitout){max-height:44%}@media (pointer:coarse){.m-menu .segmented button{min-width:48px;min-height:40px}.segmented button{min-height:40px}.m-bar .undo-compact button{width:40px;height:40px}.m-bar .ed-home,.home-bar .account-signin,.home-bar .account-signup,.home-bar .account-chip{min-height:40px}.account-menu .account-link{min-height:40px;padding:0 4px}.account-menu .account-item{min-height:42px}.shelf-section .shelf-all{min-height:40px}.card .card-remove{width:40px;height:40px;top:6px;right:6px}.gallery-item .gallery-zoom{width:40px;height:40px}.ways .way-button{min-height:42px}.home-foot .foot-cols a,.home-foot .foot-cols button{min-height:40px}.join .join-close{width:40px;height:40px}.contact-form input,.contact-form textarea,.design-rename input,.add-here input,.add-here textarea{font-size:16px}.design-actions .ghost-button{min-height:40px}.m-sheet-body .fix-button,.m-sheet-body .link-button{min-height:40px;padding-left:12px;padding-right:12px}}@media (width<=380px){.m-bar:has(.undo-compact) .brand-compact .brand-logo{height:22px}.m-bar:has(.undo-compact){gap:6px}}@media (orientation:landscape) and (height<=500px){.m-shell{--m-bar:46px;--m-tabs:46px;--side:min(420px, 48vw)}.m-bar{padding-left:calc(14px + env(safe-area-inset-left,0px));padding-right:calc(8px + env(safe-area-inset-right,0px))}.brand-compact .brand-logo{height:24px}.m-stage,.m-shell.snap-full .m-stage{bottom:calc(var(--m-tabs) + var(--safe-bottom));right:var(--side);transition:right .3s cubic-bezier(.2,.8,.2,1)}.m-shell.snap-closed .m-stage{right:0}.m-sheet{top:calc(var(--m-bar) + var(--safe-top));width:var(--side);border-radius:18px 0 0;height:auto;transition:transform .3s cubic-bezier(.2,.8,.2,1),width .3s cubic-bezier(.2,.8,.2,1);left:auto;right:0;box-shadow:-6px 0 24px #17201c1f}.m-shell.snap-closed .m-sheet{transform:translate(100%)}.m-shell.snap-full .m-sheet{border-radius:0;width:100%}.m-sheet-body{padding-right:env(safe-area-inset-right,0px)}.m-tabs{padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}.m-tab{flex-direction:row;gap:6px}.m-tab-icon{width:38px;height:30px}:is(.m-shell .part-card,.m-shell .part-card:has(.fitout)){max-height:calc(100% - 20px);bottom:10px;right:70px}}@media (orientation:landscape) and (height<=500px) and (prefers-reduced-motion:reduce){.m-stage,.m-sheet{transition:none}}.m-sheet-body.is-part>:not(.m-partview){display:none}.m-partview{padding:0 16px 16px}.m-part-head{z-index:3;background:var(--panel);border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;margin:0 -16px;padding:2px 10px 10px 6px;display:grid;position:sticky;top:0}.m-part-back,.m-part-close{min-width:40px;min-height:40px;color:var(--ink-2);font:600 13.5px var(--body);-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.m-part-back{color:var(--accent);gap:2px;padding-right:10px}.m-part-back:active,.m-part-close:active{background:var(--ground)}.m-part-close{background:var(--soft)}.m-part-back svg,.m-part-close svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.m-part-close svg{width:14px;height:14px}.m-part-title{font:700 16px/1.25 var(--display);letter-spacing:-.015em;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.m-part{padding-top:10px}.m-part .part-card-meta{margin-top:0;font-size:13.5px}.m-part .part-card-size{font-size:14px}.m-part .add-here-open{min-height:40px;margin-top:14px;padding:8px 14px}.m-part .add-here{width:auto}:root{--hero-a:#dcece2;--hero-b:#e3e9fb;--hero-c:#f2e6d6;--wood-ink:#8a5a2b}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--hero-a:#18261f;--hero-b:#1a2140;--hero-c:#2c2116;--wood-ink:#d9a66b}}:root[data-theme=dark]{--hero-a:#18261f;--hero-b:#1a2140;--hero-c:#2c2116;--wood-ink:#d9a66b}.home{background:var(--ground);min-height:100dvh;padding-bottom:64px}.home-bar{padding:calc(14px + env(safe-area-inset-top,0px)) 28px 10px;align-items:center;gap:14px;display:flex}.home-bar .brand{min-width:0}.home-tag{color:var(--ink-2);font:600 14px/1 var(--display);letter-spacing:.01em;align-items:center;gap:12px;display:inline-flex}.home-tag-rule{background:var(--line-strong);border-radius:1px;width:1.5px;height:22px}.home-tag em{color:#ef6436;font-style:normal}.hero{background:radial-gradient(1200px 400px at 10% 0%, var(--hero-a), transparent 60%), radial-gradient(900px 420px at 90% 10%, var(--hero-b), transparent 60%), linear-gradient(120deg, var(--hero-a), var(--hero-b) 55%, var(--hero-c));text-align:center;border-radius:28px;margin:6px 20px 0;padding:56px 24px 34px}.hero h1{max-width:16ch;font:700 clamp(34px, 5.6vw, 56px) / 1.04 var(--display);letter-spacing:-.035em;background:linear-gradient(95deg, var(--accent) 10%, var(--wood-ink) 90%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0 auto}.hero-sub{max-width:56ch;color:var(--ink-2);margin:14px auto 26px;font-size:15.5px}.prompt{text-align:left;background:var(--raised);border:1.5px solid color-mix(in srgb, var(--accent) 30%, var(--line));border-radius:22px;max-width:780px;margin:0 auto;padding:14px 14px 12px 22px;box-shadow:0 2px 4px #17201c0a,0 18px 48px #2350d81f}.prompt:focus-within{border-color:var(--accent)}.prompt textarea{resize:none;width:100%;color:var(--ink);font:17px/1.45 var(--body);background:0 0;border:none;outline:none}.prompt textarea::placeholder{color:var(--muted)}.prompt-actions{justify-content:flex-end;gap:10px;margin-top:6px;display:flex}.prompt-photo,.prompt-go{border-radius:999px;align-items:center;gap:8px;height:42px;padding:0 18px;font-size:14px;font-weight:600;display:inline-flex}.prompt-photo{border:1px solid var(--line-strong);color:var(--ink-2);background:0 0}.prompt-go{background:var(--accent);color:var(--accent-ink);border:none}.prompt-go:disabled{opacity:.45}.prompt-photo svg,.prompt-go svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.hero-note{color:var(--muted);margin:12px auto 0;font-size:13px}.starts{flex-wrap:wrap;justify-content:center;gap:8px 22px;margin-top:30px;display:flex}.start{width:78px;color:var(--ink-2);background:0 0;border:none;flex-direction:column;align-items:center;gap:8px;padding:4px 0;font-size:13px;font-weight:500;display:flex}.start-icon{background:var(--tint);width:54px;height:54px;box-shadow:0 6px 16px color-mix(in srgb, var(--tint) 30%, transparent);border-radius:50%;place-items:center;transition:transform .15s;display:grid}.start:hover .start-icon{transform:translateY(-2px)}.start-icon svg{fill:none;stroke:#fff;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:26px;height:26px}.shelf-section{max-width:1240px;margin:40px auto 0;padding:0 28px}.shelf-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:16px;display:flex}.shelf-head h2{font:700 24px var(--display);letter-spacing:-.02em}.cards{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:22px 18px;display:grid}.card{min-width:0;position:relative}.card-open{text-align:left;background:0 0;border:none;flex-direction:column;gap:3px;width:100%;padding:0;display:flex}.card-thumb{aspect-ratio:4/3;border:1px solid var(--line);background:linear-gradient(180deg, var(--raised), var(--panel));border-radius:16px;margin-bottom:8px;padding:14px;transition:border-color .15s,transform .15s,box-shadow .15s;display:block}.card-open:hover .card-thumb{border-color:color-mix(in srgb, var(--accent) 45%, var(--line));box-shadow:var(--shadow);transform:translateY(-2px)}.card-name{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.card-meta{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;display:-webkit-box;overflow:hidden}.card-remove{background:color-mix(in srgb, var(--panel) 85%, transparent);width:28px;height:28px;color:var(--muted);opacity:0;border:none;border-radius:8px;place-items:center;transition:opacity .15s;display:grid;position:absolute;top:8px;right:8px}.card:hover .card-remove,.card-remove:focus-visible{opacity:1}.card-remove svg{stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:14px;height:14px}.thumb{width:100%;height:100%;overflow:visible}.thumb path{fill:color-mix(in srgb, var(--wood) 78%, #fff);stroke:color-mix(in srgb, var(--wood) 55%, #000);stroke-width:1px;vector-effect:non-scaling-stroke;stroke-linejoin:round}@media (pointer:coarse){.card-remove{opacity:1}}@media (width<=720px){.home-bar{padding:calc(12px + env(safe-area-inset-top,0px)) 18px 8px}.home-tag{display:none}.hero{border-radius:22px;margin:4px 10px 0;padding:34px 14px 24px}.prompt{padding:12px 12px 10px 16px}.prompt-actions{justify-content:space-between}.starts{scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;gap:6px 10px;margin:24px -14px 0;padding:0 14px 6px;overflow-x:auto}.start{flex:none;width:70px}.shelf-section{margin-top:30px;padding:0 14px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}}.ed-shell{grid-template:"top top top"58px"rail panel stage"minmax(0,1fr)/76px auto minmax(0,1fr);height:100dvh;display:grid}.ed-top{background:var(--panel);border-bottom:1px solid var(--line);grid-area:top;align-items:center;gap:18px;padding:0 16px 0 10px;display:flex}.ed-home{color:inherit;background:0 0;border:none;border-radius:10px;padding:4px 8px}.ed-home:hover{background:var(--ground)}.ed-home .brand{min-width:0}.ed-title{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.ed-title h1{white-space:nowrap;text-overflow:ellipsis;font-size:15.5px;font-weight:500;overflow:hidden}.ed-status{background:0 0;border:none;padding:0}.ed-actions{align-items:center;gap:10px;display:flex}.ed-actions .primary-button{padding:7px 16px}.ed-rail{background:var(--panel);border-right:1px solid var(--line);flex-direction:column;grid-area:rail;gap:2px;padding:10px 6px;display:flex}.rail-button{color:var(--muted);background:0 0;border:none;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:8px 0 9px;font-size:11px;font-weight:600;display:flex}.rail-button:hover{color:var(--ink);background:var(--ground)}.rail-icon{border-radius:11px;place-items:center;width:42px;height:34px;transition:background .15s;display:grid;position:relative}.rail-icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:23px;height:23px}.rail-button.is-active{color:var(--accent)}.rail-button.is-active .rail-icon{background:var(--accent-soft)}.rail-button:first-child{margin-bottom:10px}.ed-panel{background:var(--panel);border-right:1px solid var(--line);flex-direction:column;grid-area:panel;width:344px;min-height:0;display:flex}.ed-panel-head{justify-content:space-between;align-items:center;padding:16px 14px 6px 18px;display:flex}.ed-panel-head h2{font:700 18px var(--display);letter-spacing:-.01em}.ed-panel-body{flex:1;min-height:0;padding-bottom:24px;overflow-y:auto}.ed-panel-body .describe,.ed-panel-body .pieces,.ed-panel-body .params,.ed-panel-body .checks,.ed-panel-body .cutlist{padding-left:18px;padding-right:18px}.ed-panel-body .checks{border-bottom:none;padding-top:8px}.ed-stage{grid-area:stage;min-width:0;min-height:0;position:relative}.waiting{color:var(--ink-2);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:22px;padding:24px;font-size:15px;display:flex;position:absolute;inset:0}.waiting-art{flex-direction:column;gap:8px;width:140px;display:flex}.waiting-art span{background:linear-gradient(90deg,#c9a57a,#e2c79f);border-radius:4px;height:14px;animation:1.6s ease-in-out infinite plank;box-shadow:inset 0 -2px #00000014}.waiting-art span:nth-child(2){width:78%;margin-left:11%;animation-delay:.2s}.waiting-art span:nth-child(3){animation-delay:.4s}@keyframes plank{0%,to{opacity:1;transform:translateY(0)}50%{opacity:.6;transform:translateY(-6px)}}@media print{.home,.ed-shell{display:none}}@media (prefers-reduced-motion:reduce){.waiting-art span{animation:none}}.results{padding:36px 40px 48px;position:absolute;inset:0;overflow-y:auto}.results-head{max-width:980px;margin:0 auto 22px}.results-head h2{font:700 26px var(--display);letter-spacing:-.02em}.results-head p{color:var(--ink-2);margin:6px 0 0}.results-grid{grid-template-columns:repeat(auto-fill,minmax(280px,420px));gap:20px;max-width:980px;margin:0 auto;display:grid}.result-card{text-align:left;border:1px solid var(--line);background:var(--raised);box-shadow:var(--shadow);border-radius:18px;flex-direction:column;padding:0;transition:transform .15s,border-color .15s;display:flex;overflow:hidden}.result-card:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 50%, var(--line));transform:translateY(-3px)}.result-thumb{aspect-ratio:4/3;background:linear-gradient(180deg, var(--stage-top), var(--stage-bottom));padding:22px;display:block}.result-body{flex-direction:column;gap:6px;padding:14px 16px 16px;display:flex}.result-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.result-title{font:700 17px var(--display)}.result-size{font:12.5px var(--mono);color:var(--muted)}.result-pitch{color:var(--ink-2);font-size:13.5px}.result-open{color:var(--accent);margin-top:6px;font-size:13px;font-weight:600}@media (width<=720px){.results{padding:18px 12px 24px}.results-head h2{font-size:20px}}:root{--ground:#f4f6f8;--panel:#fff;--raised:#fff;--soft:#f1f3f6;--soft-strong:#e8ebef;--ink:#0f1513;--ink-2:#2f3835;--muted:#5d6763;--line:#e7eaee;--line-strong:#cfd5db;--accent:#2456f0;--accent-ink:#fff;--accent-soft:#e9efff;--ok:#15803d;--ok-soft:#e2f6e9;--warn:#b45309;--warn-soft:#fff0d9;--err:#d42a2a;--err-soft:#ffe8e6;--info:#3d6aa8;--stage-top:#fbfcfd;--stage-bottom:#e7ebf0;--paper:#fff;--paper-grid:#2456f00e;--shadow:0 1px 2px #0f172a0d, 0 10px 28px #0f172a14;--shadow-sm:0 1px 2px #0f172a0f, 0 2px 8px #0f172a0d;--ring:0 0 0 2px var(--accent);--hero-a:#d6f3e4;--hero-b:#dbe5ff;--hero-c:#ffecd9}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ground:#0d1012;--panel:#15191c;--raised:#1b2024;--soft:#20262b;--soft-strong:#2a3137;--ink:#f1f4f6;--ink-2:#c9d1d6;--muted:#8f9aa1;--line:#262d33;--line-strong:#3a434a;--accent:#6f93ff;--accent-ink:#0b1430;--accent-soft:#1b2645;--ok:#4ccf80;--ok-soft:#12291c;--warn:#f0b04f;--warn-soft:#2e2412;--err:#ff6b6b;--err-soft:#331617;--info:#8cb0db;--stage-top:#1a1f23;--stage-bottom:#0c0f11;--paper:#15191c;--paper-grid:#6f93ff12;--shadow:0 1px 2px #0006, 0 12px 32px #0006;--shadow-sm:0 1px 2px #00000059, 0 4px 12px #00000040;--hero-a:#14281d;--hero-b:#18213f;--hero-c:#2b2015}}:root[data-theme=dark]{--ground:#0d1012;--panel:#15191c;--raised:#1b2024;--soft:#20262b;--soft-strong:#2a3137;--ink:#f1f4f6;--ink-2:#c9d1d6;--muted:#8f9aa1;--line:#262d33;--line-strong:#3a434a;--accent:#6f93ff;--accent-ink:#0b1430;--accent-soft:#1b2645;--ok:#4ccf80;--ok-soft:#12291c;--warn:#f0b04f;--warn-soft:#2e2412;--err:#ff6b6b;--err-soft:#331617;--info:#8cb0db;--stage-top:#1a1f23;--stage-bottom:#0c0f11;--paper:#15191c;--paper-grid:#6f93ff12;--shadow:0 1px 2px #0006, 0 12px 32px #0006;--shadow-sm:0 1px 2px #00000059, 0 4px 12px #00000040;--hero-a:#14281d;--hero-b:#18213f;--hero-c:#2b2015}.ed-top,.topbar,.m-bar{box-shadow:0 1px 0 var(--line), 0 4px 16px #0f172a0a;z-index:3;border-bottom:none;position:relative}.ed-rail{background:var(--panel);z-index:2;border-right:none}.ed-panel{background:var(--panel);z-index:2;border-right:none;position:relative;box-shadow:12px 0 28px -22px #0f172a59}.ed-rail+.ed-panel{border-left:1px solid var(--soft)}.m-tabs{box-shadow:0 -1px 0 var(--line), 0 -6px 20px #0f172a0d;border-top:none}.left,.right{border-left:none;border-right:none}.pieces,.checks,.describe,.m-sheet-body .pieces,.m-sheet-body .describe{border-bottom:none}.ed-panel-body>section+section,.m-sheet-body>section+section{margin-top:2px}.section-head h3{color:var(--ink-2);letter-spacing:.08em}.segmented{background:var(--soft);border:none;border-radius:10px;padding:3px}.segmented button{color:var(--muted);border-radius:8px}.segmented button.is-active{color:var(--ink);background:var(--raised);box-shadow:var(--shadow-sm)}.ghost-button{background:var(--soft);color:var(--ink);border:none;border-radius:10px;padding:7px 14px}.ghost-button:hover{background:var(--soft-strong)}.primary-button{border-radius:10px;box-shadow:0 1px 2px #2456f040,0 6px 16px #2456f038}.primary-button:disabled{box-shadow:none}.link-button{font-weight:600}.describe textarea{background:var(--soft);border:none;border-radius:12px;padding:11px 13px}.describe textarea:focus{background:var(--raised);box-shadow:var(--ring), 0 6px 18px #2456f01f}.example{background:var(--soft);color:var(--ink-2);border:none;padding:5px 11px}.example:hover{background:var(--accent-soft);color:var(--accent)}.value-field{background:0 0;border:none;border-radius:7px}.value-field:hover,.value-field:focus-within{background:var(--soft);border:none}.value-field input,.control-row .value-field input{color:var(--ink);font-weight:600}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--accent) var(--pct), var(--soft-strong) var(--pct));border-radius:3px;height:5px}input[type=range]::-moz-range-track{background:linear-gradient(90deg, var(--accent) var(--pct), var(--soft-strong) var(--pct));border-radius:3px;height:5px}input[type=range]::-webkit-slider-thumb{background:var(--raised);box-shadow:0 0 0 2.5px var(--accent), 0 2px 6px #0f172a33;border:none;width:14px;height:14px;margin-top:-4.5px}input[type=range]::-moz-range-thumb{background:var(--raised);box-shadow:0 0 0 2.5px var(--accent), 0 2px 6px #0f172a33;border:none}@media (pointer:coarse){input[type=range]::-webkit-slider-thumb{width:22px;height:22px;margin-top:-8.5px}}.switch{background:var(--soft-strong)}.control-num label,.control legend,.control label{color:var(--ink-2)}.piece,.material{background:var(--soft);box-shadow:none;border:none}.piece:hover,.material:hover{background:var(--soft-strong)}.piece.is-active,.material.is-active{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}.piece svg{stroke:var(--ink-2)}.finding{background:var(--soft);border:none;border-radius:12px;padding:12px 14px 12px 16px}.finding.sev-error{background:var(--err-soft)}.finding.sev-warning{background:var(--warn-soft)}.finding:hover{box-shadow:var(--shadow-sm);border:none}.finding p{color:var(--ink)}.finding .fix{color:var(--ink-2)}.headline h2{color:var(--ink)}.proposal,.proposal-sheet{border:none}.proposal{background:var(--soft);border-radius:14px}.proposal-sheet{box-shadow:var(--shadow)}.proposal-inline{box-shadow:none;background:0 0;padding-left:0;padding-right:0}.cut-rows{border-top:none}.cut-row{border-bottom:none;border-radius:10px;padding:10px 8px}.cut-row:nth-child(odd){background:var(--soft)}.cut-row:hover,.cut-row.is-selected{background:var(--accent-soft)}.buy-list li{border-bottom:none;border-radius:10px}.buy-list li:nth-child(odd){background:var(--soft)}.custom-parts{border-top:none}.custom-parts li{border-bottom:none;border-radius:10px;padding:8px}.custom-parts li:nth-child(odd){background:var(--soft)}.part-group{border-radius:12px}.part-group+.part-group{margin-top:2px}.part-group>summary{cursor:pointer;border-radius:10px;align-items:baseline;gap:8px;padding:9px 8px;font-weight:600;list-style:none;display:flex}.part-group>summary::-webkit-details-marker{display:none}.part-group>summary:before{content:"";border-bottom:1.5px solid;border-right:1.5px solid;flex:none;width:6px;height:6px;margin-right:2px;transition:transform .15s;transform:translateY(-2px)rotate(-45deg)}.part-group[open]>summary:before{transform:translateY(-3px)rotate(45deg)}.part-group>summary:hover{background:var(--soft)}.part-group>summary:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.part-group-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.part-group .custom-parts{margin:2px 0 8px 14px}@media (prefers-reduced-motion:reduce){.part-group>summary:before{transition:none}}.status-pill{font-weight:700}.stage,.ed-stage{background:radial-gradient(900px 500px at 50% 30%, var(--stage-top), transparent 70%), linear-gradient(180deg, var(--stage-top), var(--stage-bottom))}.stage-tools,.m-tool,.part-card{box-shadow:var(--shadow);border:none}.toggle{background:var(--soft);border:none}.toggle.is-active{background:var(--accent-soft);color:var(--accent);border:none}.m-tool.is-active{box-shadow:inset 0 0 0 2px var(--accent), var(--shadow);border:none}.hero{box-shadow:inset 0 0 0 1px #fff9}.prompt{border:1.5px solid color-mix(in srgb, var(--accent) 38%, var(--line-strong));box-shadow:0 1px 2px #0f172a0f,0 18px 48px #2456f024}.prompt:focus-within{border-color:var(--accent);box-shadow:var(--ring), 0 18px 48px #2456f02e}.prompt-photo{background:var(--soft);color:var(--ink);border:none}.prompt-photo:hover{background:var(--soft-strong)}.prompt-go{box-shadow:0 6px 18px #2456f04d}.card-thumb,.result-card{box-shadow:var(--shadow-sm);background:var(--raised);border:none}.card-open:hover .card-thumb,.result-card:hover:not(:disabled){box-shadow:var(--shadow);border:none}.result-thumb{background:linear-gradient(180deg, var(--soft), var(--raised))}.drawings .part{fill:color-mix(in srgb, var(--wood) 26%, var(--paper))}:root{--display:"Geist", "Segoe UI", system-ui, -apple-system, sans-serif;--body:"Geist", "Segoe UI", system-ui, -apple-system, sans-serif;--mono:"Geist Mono", ui-monospace, "Cascadia Mono", Consolas, monospace}body{font-family:var(--body);font-feature-settings:"ss01", "cv11";letter-spacing:-.005em}h1,h2,h3,.headline h2,.ed-panel-head h2,.shelf-head h2,.results-head h2,.result-title,.proposal h4,.part-card-title,.request{font-family:var(--display);letter-spacing:-.02em}.section-head h3,.eyebrow,.sev-chip,.drawings .view-label{font-family:var(--body);letter-spacing:.06em;font-weight:600}:root{--ground:#fff;--hero-a:#e6f0ff;--hero-b:#f1eaff;--hero-c:#fff1e4}.home{background:#fff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .home{background:var(--ground)}}:root[data-theme=dark] .home{background:var(--ground)}.hero{box-shadow:none;background:radial-gradient(700px 360px at 12% 18%, var(--hero-a), transparent 70%), radial-gradient(640px 380px at 88% 12%, var(--hero-b), transparent 70%), radial-gradient(700px 320px at 60% 110%, var(--hero-c), transparent 70%), var(--panel)}.hero h1{background:0 0;-webkit-background-clip:initial;background-clip:initial;color:var(--ink);letter-spacing:-.045em;max-width:18ch;font-weight:700}.hero h1 em{color:var(--accent);font-style:normal}.hero-sub{color:var(--muted);font-size:16px}.shelf-head h2{letter-spacing:-.03em;font-size:22px;font-weight:650}.card-name{letter-spacing:-.01em;font-weight:600}.ed-top,.ed-rail,.ed-panel{background:#fff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .ed-top,:root:not([data-theme=light]) .ed-rail,:root:not([data-theme=light]) .ed-panel{background:var(--panel)}}:root[data-theme=dark] .ed-top,:root[data-theme=dark] .ed-rail,:root[data-theme=dark] .ed-panel{background:var(--panel)}.card-thumb,.result-thumb{background:radial-gradient(120% 90% at 50% 20%,#fff,#eef1f5);padding:6px}.thumb-shot{object-fit:contain;width:100%;height:100%;display:block}.thumb-loading{background:linear-gradient(100deg, transparent 30%, #ffffffb3 50%, transparent 70%) var(--soft);background-size:200% 100%;border-radius:12px;width:100%;height:100%;animation:1.4s linear infinite shimmer;display:block}@keyframes shimmer{to{background-position:-200% 0}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .card-thumb,:root:not([data-theme=light]) .result-thumb{background:radial-gradient(120% 90% at 50% 20%,#232a30,#161b1f)}}.sheet-photos{flex:none;gap:4px;display:flex}.sheet-photos .sheet-photo{border:none;border-radius:10px;width:52px;height:52px}.sheet-photos .sheet-photo:only-child{width:64px;height:64px}.style-read{background:var(--soft);border-radius:14px;gap:8px;margin:4px 0 12px;padding:12px 14px;display:grid}.style-read p{color:var(--ink-2);margin:0;line-height:1.5}.palette{color:var(--ink-2);flex-wrap:wrap;gap:6px 12px;margin:0;padding:0;font-size:12.5px;list-style:none;display:flex}.palette li{align-items:center;gap:6px;display:inline-flex}.palette .chip{border-radius:50%;width:16px;height:16px;box-shadow:inset 0 0 0 1px #0000001f}.inspiration{z-index:5;background:var(--raised);width:min(340px,100% - 32px);max-height:calc(100% - 120px);box-shadow:var(--shadow);border-radius:16px;flex-direction:column;display:flex;position:absolute;top:16px;left:16px;overflow:hidden}.inspiration-head{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;padding:8px 12px 8px 8px;font-size:13.5px;font-weight:600;display:flex}.inspiration-head:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:16px}.inspiration-thumbs{flex:none;display:flex}.inspiration-thumbs img{object-fit:cover;width:36px;height:36px;box-shadow:0 0 0 2px var(--raised);border-radius:9px}.inspiration-thumbs img+img{margin-left:-10px}.inspiration-label{flex:1}.inspiration-head:after{content:"";border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);width:7px;height:7px;transition:transform .15s;transform:rotate(45deg)translateY(-2px)}.inspiration.is-open .inspiration-head:after{transform:rotate(-135deg)translateY(-2px)}.inspiration-body{gap:12px;padding:4px 14px 14px;display:grid;overflow-y:auto}.inspiration-photos{grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:6px;display:grid}.inspiration-photos button{cursor:zoom-in;background:0 0;border:none;border-radius:10px;padding:0;overflow:hidden}.inspiration-photos button.is-big{cursor:zoom-out;grid-column:1/-1}.inspiration-photos img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.inspiration-photos .is-big img{aspect-ratio:auto}.inspiration-summary{color:var(--ink-2);margin:0;font-size:13.5px;line-height:1.5}.inspiration-notes h3{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 4px;font-size:11.5px;font-weight:700}.inspiration-notes ul{color:var(--ink-2);gap:3px;margin:0;padding-left:18px;font-size:13px;line-height:1.45;display:grid}.inspiration-notes.in-sheet{background:var(--accent-soft);border-radius:14px;gap:10px;margin:4px 0 12px;padding:12px 14px;display:grid}@media (prefers-reduced-motion:reduce){.inspiration-head:after{transition:none}}.part-title{min-width:0;color:var(--ink);flex-direction:column;font-weight:700;display:flex}.part-section{color:var(--accent);font-size:12px;font-weight:600}.cut-row .part-meta,.buy-list .part-meta{color:var(--ink-2)}.cut-row .size{color:var(--ink);font-weight:600}.part-card:has(.add-here-open,.add-here){pointer-events:auto}.add-here-open{color:#fff;font:600 13px var(--body);cursor:pointer;background:#ef6436;border:none;border-radius:999px;align-items:center;gap:6px;margin-top:10px;padding:6px 12px;display:inline-flex}.add-here-open span{font-size:16px;line-height:1}.add-here{gap:8px;width:min(300px,100vw - 60px);margin-top:10px;display:grid}.add-here-picks{flex-wrap:wrap;gap:6px;display:flex}.add-here-picks button{border:1px solid var(--line-strong);background:var(--panel);color:var(--ink);cursor:pointer;border-radius:999px;padding:4px 10px;font-size:12.5px}.add-here-picks button.is-active{color:#fff;background:#ef6436;border-color:#ef6436}.add-here input{border:1px solid var(--line-strong);font:13px var(--body);background:var(--panel);color:var(--ink);border-radius:7px;padding:7px 9px}.add-here-note{color:var(--muted);font-size:12px}.add-here-actions{justify-content:flex-end;gap:6px;display:flex}.cut-row{grid-template-columns:2.2em minmax(0,1fr);grid-template-areas:"qty name"".size"".meta"}.cut-row .size{text-align:left;white-space:normal;margin-left:21px}.finding .fix-button{border:1px solid var(--line-strong);background:var(--raised);color:var(--ink);cursor:pointer;border-radius:999px;margin-top:8px;padding:4px 12px;font-size:12.5px;font-weight:600}.finding .fix-button:hover:not(:disabled){border-color:var(--ink-2)}.finding .fix-button:disabled,.checks .fix-all:disabled{opacity:.55;cursor:default}.checks .fix-all{width:100%;margin-top:12px}.describe-new{color:var(--muted);margin:12px 0 0;font-size:12.5px}.describe-new button{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.custom-parts li{cursor:pointer;grid-template-columns:14px minmax(0,1fr);align-items:start}.custom-parts li .swatch{margin-top:3px}.custom-parts li:hover,.custom-parts li:focus-visible{outline:1px solid var(--accent);outline-offset:-1px}.custom-part-text{flex-direction:column;gap:2px;min-width:0;display:flex}.custom-parts .custom-part-name{white-space:normal;overflow:visible}.custom-parts .custom-part-size{white-space:normal;font-size:12px}.parts-intro{color:var(--ink-2);margin:4px 0 12px;font-size:13px;line-height:1.45}.parts-joints{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.parts-joints h3{margin:0 0 10px;font-size:14px}.part-card{pointer-events:auto}.part-card-close{background:var(--soft);width:32px;height:32px;color:var(--ink);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:6px;right:6px}.part-card-close svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:14px;height:14px}.part-card:has(.part-card-close) .part-card-title{padding-right:34px}.switcher-start-over{border:0;border-top:1px solid var(--line);width:100%;color:var(--ink);font:600 13.5px var(--body);text-align:left;cursor:pointer;background:0 0;margin:4px 0 0;padding:10px 12px}.switcher-start-over:hover{background:var(--soft)}.start-over-actions{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.start-over-actions button{min-height:42px;padding:0 18px;font-size:14px}.primary-button.danger{box-shadow:none;background:#c43d2f}.close.peek-close{color:#17201c;background:#ffffffeb;border-radius:50%}.close.peek-close svg{stroke:#17201c}.request-lead{-webkit-line-clamp:3;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.sheet-request{gap:4px;margin:10px 0 2px;display:grid}.sheet-request-text{color:var(--muted);margin:0;font-size:13.5px;line-height:1.5}.sheet-request-text.is-folded{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.sheet-request-more{justify-self:start;font-size:13px;font-weight:600}.brand-link{color:inherit;cursor:pointer;background:0 0;border:none;padding:0;display:inline-flex}.switcher{min-width:0;display:inline-flex;position:relative}.switcher-name{min-width:0;font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:4px;margin:-4px -6px;padding:4px 6px;display:inline-flex}.switcher-name span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.switcher-name svg{fill:none;stroke:currentColor;stroke-width:1.8px;opacity:.7;flex:none;width:16px;height:16px}.switcher-name:hover,.switcher-name[aria-expanded=true]{background:var(--soft)}.switcher-menu{z-index:60;background:var(--raised);border:1px solid var(--line);width:340px;max-width:calc(100vw - 24px);box-shadow:var(--shadow), 0 18px 40px #17201c24;border-radius:12px;padding:8px;font-size:13.5px;font-weight:400;position:absolute;top:calc(100% + 8px);left:-6px}.switcher-head{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:6px 8px 8px;font-size:11.5px;font-weight:600}.switcher-empty{color:var(--muted);padding:4px 8px 10px}.switcher-menu ul{max-height:min(420px,60vh);margin:0;padding:0;list-style:none;overflow-y:auto}.switcher-menu li button{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:6px 8px;display:flex}.switcher-menu li button:hover{background:var(--soft)}.switcher-menu li button.is-here{background:var(--accent-soft)}.switcher-thumb{background:var(--panel);border-radius:6px;flex:none;place-items:center;width:56px;height:42px;display:grid;overflow:hidden}.switcher-thumb .thumb{object-fit:contain;width:100%;height:100%}.switcher-text{min-width:0;display:grid}.switcher-title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.switcher-meta{color:var(--muted);font-size:12px}.switcher-foot{border-top:1px solid var(--line);justify-content:space-between;gap:8px;margin-top:6px;padding:8px 4px 2px;display:flex}.switcher-compact .switcher-name{color:var(--muted);font-size:12px}.switcher-compact .switcher-menu{left:auto;right:-60px}.undo-redo{flex:none;gap:2px;display:inline-flex}.undo-redo button{width:32px;height:32px;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:7px;place-items:center;display:grid}.undo-redo button:hover:not(:disabled){background:var(--soft)}.undo-redo button:disabled{opacity:.3;cursor:default}.undo-redo svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.undo-compact button{width:36px;height:36px}.sheet-stop{flex:none;align-self:flex-start;padding:5px 12px;font-size:13px}.sheet-away{color:var(--muted);margin:0 0 10px;font-size:12.5px}.designing-pill{left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:80;color:#fff;background:#17201c;border-radius:999px;align-items:center;gap:12px;width:max-content;max-width:min(560px,100vw - 24px);padding:8px 8px 8px 14px;animation:.35s ease-out pill-in;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 10px 30px #0a0e0c4d}@keyframes pill-in{0%{opacity:0;transform:translate(-50%,16px)}}.designing-text{min-width:0;font-size:13px;line-height:1.25;display:grid}.designing-text span{text-overflow:ellipsis;white-space:nowrap;opacity:.7;font-size:12px;overflow:hidden}.designing-spin{border:2px solid #ffffff40;border-top-color:#ef6436;border-radius:50%;flex:none;width:16px;height:16px;animation:.9s linear infinite spin}.designing-dot{background:#3fbf7f;border-radius:50%;flex:none;width:10px;height:10px}.designing-pill.is-failed .designing-dot{background:#f06b6b}.designing-go{color:#fff;cursor:pointer;background:#ef6436;border:none;border-radius:999px;flex:none;padding:7px 14px;font-size:13px;font-weight:600}.designing-pill.is-working .designing-go{background:#ffffff24}.designing-x{color:#fff;opacity:.7;cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid}.designing-x svg{fill:none;stroke:currentColor;stroke-width:2px;width:16px;height:16px}@media (width<=1023px){.designing-pill{bottom:calc(84px + env(safe-area-inset-bottom,0px))}}@media (prefers-reduced-motion:reduce){.designing-pill,.designing-spin{animation:none}}.shelf-head{align-items:flex-end}.shelf-title{gap:2px;min-width:0;display:grid}.shelf-tools{flex:none;align-items:center;gap:6px;display:flex}.shelf-all{color:var(--accent);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px 10px;font-size:13.5px;font-weight:600}.shelf-all:hover{background:var(--accent-soft)}.shelf-arrow{border:1px solid var(--line);background:var(--raised);width:34px;height:34px;color:var(--ink);cursor:pointer;border-radius:50%;place-items:center;display:grid}.shelf-arrow:disabled{opacity:.35;cursor:default}.shelf-arrow svg{fill:none;stroke:currentColor;stroke-width:2px;width:16px;height:16px}.cards.cards-row{scroll-snap-type:x mandatory;scrollbar-width:none;grid-template-columns:none;grid-auto-columns:minmax(220px,calc(25% - 13.5px));grid-auto-flow:column;margin:-4px -2px 0;padding:4px 2px 10px;scroll-padding-inline:2px;display:grid;overflow-x:auto}.cards.cards-row::-webkit-scrollbar{display:none}.cards.cards-row>*{scroll-snap-align:start}@media (width<=700px){.cards.cards-row{grid-auto-columns:72%}.shelf-arrow,.shelf-head .muted{display:none}}.ed-title h1:has(.switcher){min-width:0;display:flex;overflow:visible}.m-bar:has(.switcher-menu){z-index:50}.switcher-compact .switcher-menu{top:calc(var(--m-bar,56px) + var(--safe-top,0px));width:auto;max-width:none;position:fixed;left:10px;right:10px}.switcher-compact .switcher-name[aria-expanded=true]{background:0 0}:is(.card-thumb:has(.thumb-scene),.result-thumb:has(.thumb-scene),.switcher-thumb:has(.thumb-scene)){padding:0;overflow:hidden}.thumb.thumb-scene{object-fit:cover;width:100%;height:100%;display:block}.preview-bar{z-index:6;background:var(--raised);width:max-content;max-width:calc(100% - 32px);box-shadow:var(--shadow), 0 12px 30px #17201c1f;border:2px solid #ef6436;border-radius:14px;align-items:center;gap:10px;padding:8px 8px 8px 16px;display:flex;position:absolute;top:16px;left:50%;transform:translate(-50%)}.preview-text{min-width:0;font-size:13px;line-height:1.3;display:grid}.preview-text span{color:var(--muted);font-size:12px}.preview-bar button{flex:none}:is(.ed-stage:has(.preview-bar) .part-card,.m-stage:has(.preview-bar) .part-card){display:none}.proposal-actions{flex-wrap:wrap;gap:8px;display:flex}@media (width<=1023px){.preview-bar{top:calc(var(--m-bar,56px) + var(--safe-top,0px) + 8px);border-radius:12px;flex-wrap:wrap;justify-content:flex-end;width:calc(100% - 20px)}.preview-text{flex:100%}}
