:root{--bg:#e9eaec;--panel:#fff;--text:#1c1e21;--muted:#6b7077;--line:#e6e8eb;--line-strong:#c3c7cd;--accent:#1a1b1f;--accent-hover:#2c2e34;--gold:#ad782c;--focus:#2f80ed;--danger:#b3261e;--radius:10px;--pad:20px;--tap:40px;--chip:34px;--swatch:30px;--btn:42px;--field-font:15px;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-heading:var(--font-body)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;overflow:hidden}body{font-family:var(--font-body);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}button{touch-action:manipulation;-webkit-user-select:none;user-select:none}button:focus-visible,input:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.app{background:var(--bg);display:flex;position:fixed;inset:0}.viewport{flex:1;min-width:0;position:relative}.viewport canvas{display:block}.hint{max-width:calc(100% - 32px);color:var(--muted);pointer-events:none;-webkit-user-select:none;user-select:none;background:#fffc;border-radius:999px;padding:5px 11px;font-size:12px;position:absolute;bottom:12px;left:16px}.hint-touch{display:none}.view-brand{z-index:1;pointer-events:none;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:flex-end;gap:6px;max-width:min(360px,100% - 24px);display:flex;position:absolute}.view-logo{filter:drop-shadow(0 1px 2px #00000073)drop-shadow(0 2px 10px #00000047);width:156px;height:auto;margin-right:2px;display:block}.view-watermark{z-index:0;opacity:0;transform-origin:0 0;will-change:transform, opacity;pointer-events:none;-webkit-user-select:none;user-select:none;height:auto;position:absolute;top:0;left:0}.view-notice{color:#4b5058;text-align:right;background:#ffffffb8;border-radius:999px;margin:0;padding:3px 9px;font-size:11px;line-height:1.35}@media (width<=560px){.view-logo{width:100px}.view-notice{border-radius:8px;padding:2px 8px;font-size:9.5px}}@media (any-pointer:coarse){.hint.with-pad{border-radius:16px;max-width:calc(100% - 172px)}}@media (pointer:coarse){.hint-mouse{display:none}.hint-touch{display:inline}}.inside-hud{pointer-events:none;position:absolute;inset:0}.inside-hud .inside-exit{pointer-events:auto;flex:none;height:36px;padding:0 14px;font-size:13px;position:absolute;top:12px;right:12px;box-shadow:0 2px 10px #00000024}.watch-card{border:1px solid var(--line);border-radius:10px;flex-direction:column;align-items:stretch;gap:10px;margin-top:18px;padding:12px 14px;display:flex}.watch-card .section-title{margin-bottom:2px;font-size:13px;font-weight:650}.watch-card .control-note{margin-top:0}.watch-card .btn{flex:none;justify-content:center;align-items:center;gap:7px;display:inline-flex}.app.show .view-tools,.app.show .hint,.app.show .opening-bar,.app.show .drive-row,.app.show .guide,.app.show .price-pill{display:none}.app.show .viewport{flex:1;height:100%}.build-bar{z-index:3;padding:10px 12px 12px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));background:#fffffff0;border-radius:14px;position:absolute;bottom:12px;left:12px;right:12px;box-shadow:0 6px 24px #00000038}.build-row{align-items:center;gap:10px;display:flex}.build-play{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.build-play:disabled{opacity:.5;cursor:default}.build-label{flex-direction:column;flex:1;min-width:0;line-height:1.2;display:flex}.build-label strong{overflow-wrap:anywhere;font-size:15px;font-weight:650}.build-label span{color:var(--muted);font-size:12px}.build-bar .btn{flex:none;height:38px;padding:0 14px;font-size:13px}.build-save{align-items:center;gap:6px;display:inline-flex}.build-track{gap:3px;margin-top:10px;display:flex}.build-track button{cursor:pointer;background:0 0;border:0;height:22px;padding:0;position:relative}.build-track button:before{content:"";background:var(--line);border-radius:3px;height:6px;position:absolute;top:8px;left:0;right:0}.build-track button .fill{background:var(--accent);border-radius:3px;height:6px;transition:width .1s linear;position:absolute;top:8px;left:0}.build-track button.done .fill{width:100%!important}.build-track button.current:before{background:#d7dadf}.build-track button:focus-visible{outline-offset:-2px}.build-note{color:var(--muted);margin-top:8px;font-size:12.5px}.build-progress{background:var(--line);border-radius:3px;height:6px;margin-top:10px;overflow:hidden}.build-progress span{background:var(--accent);border-radius:3px;height:100%;transition:width .15s linear;display:block}.build-video{color:var(--text);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.build-video-actions{gap:8px;display:flex}.build-video .btn{align-items:center;height:34px;padding:0 12px;text-decoration:none;display:inline-flex}.app.exporting{background:#0c0d0f;justify-content:center;align-items:center}.app.exporting .viewport{aspect-ratio:9/16;flex:none;width:min(100%,56.25vh);height:auto;min-height:0;max-height:100%;margin:auto;overflow:hidden}.app.exporting .build-bar{bottom:8px;left:8px;right:8px}@media (width<=760px){.build-bar .btn{padding:0 10px}.build-save span{display:none}.build-label strong{font-size:14px}}.view-tools{z-index:1;align-items:center;gap:8px;display:flex;position:absolute;top:12px;right:12px}.view-tools .walk-btn{flex:none;gap:6px}.walk-btn{flex:none;align-items:center;gap:7px;height:36px;padding:0 14px;font-size:13px;display:inline-flex;box-shadow:0 2px 10px #00000024}.look-switch{height:var(--btn);border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;flex:none;padding:3px;display:flex;box-shadow:0 2px 10px #00000024}.look-switch button{font:inherit;color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:5px;padding:0 11px;font-size:13px;font-weight:500;transition:background .12s,color .12s}.look-switch button.on{background:var(--accent);color:#fff}@media (width<=400px){.view-tools{flex-direction:column-reverse;align-items:flex-end}}.walk-note{color:#fff;text-align:center;pointer-events:none;background:#1c1e21db;border-radius:16px;width:max-content;max-width:calc(100% - 32px);padding:7px 14px;font-size:13px;line-height:1.35;position:absolute;top:60px;left:50%;transform:translate(-50%)}.door-btn{z-index:2;color:#fff;height:56px;font:inherit;white-space:nowrap;cursor:pointer;pointer-events:auto;visibility:hidden;will-change:transform;background:#1c1e21eb;border:0;border-radius:999px;align-items:center;gap:10px;padding:0 26px 0 20px;font-size:18px;font-weight:650;display:inline-flex;position:absolute;top:0;left:0;box-shadow:0 6px 20px #0000004d}.door-btn[data-placed]{visibility:visible}.door-btn:hover{background:#33363bf2}.door-btn:active{background:#000}.through-btn{z-index:2;height:50px;color:var(--accent);font:inherit;white-space:nowrap;cursor:pointer;pointer-events:auto;visibility:hidden;will-change:transform;background:#fffffff5;border:0;border-radius:999px;align-items:center;gap:10px;padding:0 24px 0 18px;font-size:17px;font-weight:650;display:inline-flex;position:absolute;top:0;left:0;box-shadow:0 6px 20px #00000047}.through-btn[data-placed]{visibility:visible}.through-btn:hover{background:#fff}.through-btn:active{background:#e3e5e8}.stairs-btn{z-index:1;height:40px;color:var(--accent);font:inherit;white-space:nowrap;cursor:pointer;pointer-events:auto;background:#fffffff5;border:0;border-radius:999px;align-items:center;gap:8px;padding:0 16px 0 12px;font-size:14px;font-weight:650;display:inline-flex;position:absolute;top:58px;right:12px;box-shadow:0 4px 14px #00000038}.stairs-btn:hover{background:#fff}.stairs-btn:active{background:#e3e5e8}@media (any-pointer:coarse){.stairs-btn{top:64px}}.pad{pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;background:#fff6;border:1px solid #ffffffbf;border-radius:50%;width:112px;height:112px;display:none;position:absolute;bottom:18px;right:18px;box-shadow:0 2px 12px #0000001f}.pad-knob{will-change:transform;background:#1c1e21d1;border-radius:50%;width:46px;height:46px;margin:-23px 0 0 -23px;position:absolute;top:50%;left:50%;box-shadow:0 2px 6px #0000004d}@media (any-pointer:coarse){.pad{display:block}.inside-hud .inside-exit,.walk-btn{height:44px;font-size:14px}.look-switch button{font-size:14px}}.coarse-only{display:none}@media (pointer:coarse){.fine-only{display:none}.coarse-only{display:block}}.how-to{color:var(--muted);margin:0;padding-left:18px;font-size:13px;line-height:1.6}.guide{z-index:5;background:var(--panel);max-height:min(54%,620px);padding-bottom:env(safe-area-inset-bottom);border-radius:20px 20px 0 0;flex-direction:column;animation:.32s cubic-bezier(.2,.8,.2,1) guide-up;display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -10px 30px #14161a29}@keyframes guide-up{0%{opacity:0;transform:translateY(48px)}}.guide-head{flex:none;padding:0 18px 4px}.guide-handle{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:100%;height:22px;padding:0;display:flex}.guide-handle span{background:var(--line-strong);border-radius:3px;width:44px;height:5px}.guide-brand{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:none}.guide-logo{width:auto;height:36px;display:block}.guide-top{align-items:center;gap:8px;display:flex}.guide-mark{flex:none;width:30px;height:30px}.guide-steps{scrollbar-width:none;flex:1;gap:2px;min-width:0;padding:2px 0;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 22px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 22px),#0000)}.guide-steps::-webkit-scrollbar{display:none}.guide-steps button{height:30px;font:inherit;color:var(--muted);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;padding:0 10px;font-size:13px;font-weight:600;transition:background .12s,color .12s}.guide-steps button.on{background:var(--accent);color:#fff}.guide-min{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;justify-content:center;align-items:center;padding:0;display:flex}.guide-q{font-family:var(--font-heading);letter-spacing:-.01em;margin:8px 0 2px;font-size:22px;font-weight:600;line-height:1.2}.guide-note{color:var(--muted);margin:0;font-size:13px;line-height:1.4}.guide-body{overscroll-behavior:contain;flex:1;min-height:0;padding:12px 18px 14px;animation:.28s cubic-bezier(.2,.8,.2,1) station-in;overflow-y:auto}@keyframes station-in{0%{opacity:0;transform:translateY(16px)}}.guide-foot{border-top:1px solid var(--line);flex:none;justify-content:space-between;gap:10px;padding:10px 18px 14px;display:flex}.guide-foot .btn{flex:none;min-width:96px;height:48px;font-size:15px;font-weight:600}.guide-foot .guide-next{min-width:150px}.guide-foot .guide-back{color:var(--muted);background:0 0;border-color:#0000}.guide.collapsed .guide-q{margin-bottom:4px;font-size:18px}.picks{gap:10px;display:grid}.picks.two{grid-template-columns:1fr 1fr}.pick{border:1px solid var(--line);min-height:66px;font:inherit;color:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:12px;align-items:center;gap:14px;padding:12px 16px;transition:border-color .12s,background .12s;display:flex;box-shadow:0 1px 2px #1018280a}.pick.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:#f7f7f8}.pick-icon{color:var(--accent);flex:none;display:flex}.icon{flex:none;display:block}.pick.with-photo{padding:8px 14px 8px 8px}.pick-photo{aspect-ratio:3/2;object-fit:cover;pointer-events:none;background:#eef0f2;border-radius:8px;flex:none;width:108px;height:auto;display:block}.pick-text{flex-direction:column;gap:2px;min-width:0;display:flex}.pick-name{font-size:17px;font-weight:700}.pick-note{color:var(--muted);font-size:13px;line-height:1.35}.picks.two .pick{min-height:74px}@media (aspect-ratio<=1){.guide-min{display:none}.picks.types{grid-template-columns:1fr 1fr}.picks.types .pick{flex-direction:column;align-items:flex-start;gap:6px;min-height:0;padding:10px 12px}.picks.types .pick-note{font-size:12px}.picks.types .pick.with-photo{gap:6px;padding:5px 5px 8px}.picks.types .pick.with-photo .pick-name{font-size:16px}.picks.types .pick-photo{aspect-ratio:5/2;object-position:50% 55%;border-radius:7px;width:100%}.picks.types .pick.with-photo .pick-text{padding:0 6px}.picks.types .pick.with-photo .pick-note{display:none}.pick{min-height:58px;padding:10px 14px}.picks.two .pick{min-height:62px}.guide-q{font-size:21px}.guide-body{padding-top:10px}.guide-foot{padding:8px 16px 12px}.guide-foot .btn{height:48px}}.picks.two .pick-name{font-size:19px}.pick-row+.pick-row{margin-top:16px}.pick-row-label{margin-bottom:7px;font-size:13px;font-weight:650}.pick-row-options{flex-wrap:wrap;gap:8px;display:flex}.chip-pick{border:1px solid var(--line-strong);min-height:44px;font:inherit;color:inherit;cursor:pointer;background:#fff;border-radius:999px;padding:0 16px;font-size:15px;font-weight:600}.chip-pick.on{border-color:var(--accent);background:var(--accent);color:#fff}.pick-row-note,.station-note{color:var(--muted);margin:8px 0 0;font-size:12.5px;line-height:1.4}.color-row+.color-row{margin-top:16px}.color-name{color:var(--muted);margin-left:6px;font-weight:500}.guide .swatches{gap:8px}.guide .swatch{width:40px;height:40px}.adjust-btn,.more-btn{width:100%;height:46px;margin-top:12px}.adjust-tabs{gap:6px;margin:10px 0 12px;display:flex}.adjust-tabs button{border:1px solid var(--line-strong);height:42px;font:inherit;color:inherit;cursor:pointer;background:#fff;border-radius:10px;flex:1;font-weight:650}.adjust-tabs button.on{border-color:var(--accent)}.adjust-done{width:100%;height:48px;margin-top:16px}.more-options{margin-top:12px}.set-title{margin:18px 0 8px;font-size:13px;font-weight:700}.set-title.first{margin-top:0}.set-rows,.picks+.pick-row{margin-top:16px}.set-more{margin-top:14px;font-size:14px;display:block}.set-more+.pick-row{margin-top:14px}.colors-station>*+*{margin-top:16px}.chip-pick:disabled{opacity:.4;cursor:default}.more-btn.on{border-color:var(--accent)}.adjust{margin-top:4px}.plan-options{gap:10px;margin-top:10px;display:grid}.plan-option{border:1px solid var(--line);font:inherit;color:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:12px;flex-direction:column;align-items:stretch;gap:8px;padding:10px 12px 12px;display:flex;box-shadow:0 1px 2px #1018280a}.plan-option.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:#f7f7f8}.plan-option .plan-map{margin-top:0}.plan-option .pick-name{flex-wrap:wrap;align-items:center;gap:8px;font-size:16px;display:flex}.link-btn{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-weight:650;text-decoration:underline}.interior-for{margin:0 0 10px}.framing{margin-top:18px}.plan-chosen{background:var(--accent);color:#fff;border-radius:999px;padding:2px 8px;font-size:11.5px;font-weight:650}.app.touring .hint{display:none}.app.touring .pad{bottom:calc(var(--guide-lift,0px) + 18px)}.quote-actions{margin:14px 0}.quote-action-row{flex-wrap:wrap;gap:8px;display:flex}.quote-action-row .btn{flex:30%;height:46px}.quote-action-row .btn.primary{flex-basis:100%}.quote-actions .email-design{margin-top:12px}.price-pill{z-index:2;font:inherit;color:var(--text);cursor:pointer;background:#fffffff0;border:0;border-radius:12px;flex-direction:column;align-items:flex-start;padding:6px 12px 7px;line-height:1.15;display:flex;position:absolute;top:12px;left:12px;box-shadow:0 2px 12px #14161a24}.price-pill small{color:var(--muted);font-size:11px}.price-pill strong{font-size:16px}@media (hover:hover){.guide-steps button:not(.on):hover,.look-switch button:not(.on):hover,.guide-min:hover,.guide-foot .guide-back:hover{color:var(--text)}.guide-steps button:not(.on):hover{background:#f1f2f4}.pick:not(.on):hover,.plan-option:not(.on):hover,.chip-pick:not(.on):hover,.adjust-tabs button:not(.on):hover{border-color:var(--line-strong)}}@media (width>=700px) and (aspect-ratio>=1){.guide{border-radius:16px;width:min(420px,44vw);max-height:calc(100% - 92px);bottom:16px;left:16px;right:auto;box-shadow:0 14px 40px #14161a2e}.guide-handle{display:none}.guide-head{padding-top:16px}.guide-brand{display:flex}.guide-mark{display:none}.guide-top{align-items:flex-start}.guide-steps{flex-wrap:wrap;overflow:visible;-webkit-mask-image:none;mask-image:none}}@media (aspect-ratio>=1) and (height<=520px){.guide{width:min(360px,46vw);max-height:calc(100% - 16px);bottom:8px;left:8px}.guide-head{padding-top:8px}.guide-q{font-size:18px}.guide-note{display:none}.guide-body{padding-top:8px}.pick{min-height:50px;padding:8px 12px}.guide-foot{padding:8px 14px 10px}.guide-foot .btn{height:42px}.price-pill{top:64px;left:auto;right:12px}}.opening-bar{z-index:3;box-sizing:border-box;white-space:nowrap;visibility:hidden;background:#fffffff5;border-radius:10px;flex-wrap:wrap;align-items:stretch;gap:6px;max-width:calc(100% - 16px);padding:6px;display:flex;position:absolute;top:0;left:0;box-shadow:0 4px 16px #0000002e}.opening-bar[data-placed]{visibility:visible}.ob-field{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);flex-direction:column;gap:2px;font-size:10px;font-weight:600;display:flex}.ob-field select{border:1px solid var(--line-strong);height:32px;font:inherit;color:var(--text);background:#fff;border-radius:6px;padding:0 6px;font-size:13px}.ob-btn{border:1px solid var(--line-strong);height:32px;font:inherit;color:var(--text);cursor:pointer;background:#fff;border-radius:6px;align-self:flex-end;align-items:center;gap:5px;padding:0 10px;font-size:13px;font-weight:500;display:inline-flex}.ob-btn.danger{color:var(--danger);border-color:#e3b5b1}@media (pointer:coarse){.ob-field select,.ob-btn{height:40px}}.drive-row{z-index:3;box-sizing:border-box;visibility:hidden;background:#fffffff5;border-radius:10px;width:max-content;max-width:calc(100% - 16px);padding:6px;position:absolute;top:0;left:0;box-shadow:0 4px 16px #0000002e}.drive-row[data-placed]{visibility:visible}.vr-drive{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);align-items:center;gap:4px;font-size:10px;font-weight:600;display:flex}.vr-drive span{margin-right:4px}.vr-drive button{border:1px solid var(--line-strong);height:26px;font:inherit;letter-spacing:0;text-transform:none;color:var(--text);cursor:pointer;background:#fff;border-radius:13px;padding:0 9px;font-size:12px;font-weight:500}.vr-drive button.on{border-color:var(--accent);background:var(--accent);color:#fff}@media (height<=460px){.vr-drive span{display:none}}@media (pointer:coarse) and (height>=461px){.vr-drive button{height:32px}}.plan-caption{color:var(--muted);margin-top:8px;font-size:12px;font-weight:600}.story-warn .btn-row{margin-top:8px}.plan-map{border:1px solid var(--line);background:#fafbfc;border-radius:6px;width:100%;height:auto;margin-top:4px;display:block}h1{font-family:var(--font-heading)}.contact-card{border:1px solid var(--line);border-radius:10px;margin-top:18px;padding:12px 14px}.contact-card .section-title{margin-bottom:6px;font-size:13px;font-weight:650}.contact-line{color:var(--text);text-underline-offset:2px;margin-top:4px;font-size:14px;text-decoration:underline;display:block}.step-intro{color:var(--muted);margin:0 0 16px;font-size:13px;line-height:1.45}.subhead{margin:20px 0 4px;font-size:13px;font-weight:650}.control+.control,.control+.group,.group+.control,.group+.group,.readout+.control,.control+.readout,.pair+.control,.control+.pair,.pair+.group,.pair+.control-note+.control,.quote-total+.note-warn,.note-warn+.control,.note-warn+.lead,.quote-total+.lead,.lead+.group,.split-readout+.control{margin-top:18px}.subhead+.control{margin-top:10px}.control-head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:7px;display:flex}.control-head label,.control-label{white-space:nowrap;font-size:13px;font-weight:600}.control-value{color:var(--muted);text-align:right;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:12px;overflow:hidden}.control-note{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.45}.control-note a{color:inherit;text-decoration:underline}.muted{color:var(--muted);font-size:12px;font-weight:400}.pair{grid-template-columns:1fr 1fr;gap:12px;display:grid}.pair .control+.control{margin-top:0}.readout{border-radius:var(--radius);color:var(--muted);background:#f4f5f7;justify-content:space-between;align-items:baseline;gap:10px;padding:10px 12px;font-size:12px;display:flex}.readout strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.unit-field{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:inline-flex}.unit-field input[type=number]{border:1px solid var(--line-strong);width:68px;height:34px;font:inherit;color:var(--text);text-align:right;background:#fff;border-radius:6px;padding:0 8px;font-size:14px}.unit-field input[type=number]:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);outline:none}input[type=range]{appearance:none;cursor:pointer;--pct:0%;--track:var(--line);background:0 0;width:100%;height:28px;margin:0;padding:0;display:block}input[type=range].fill{--track:linear-gradient(to right, var(--accent) var(--pct), var(--line) var(--pct))}input[type=range]::-webkit-slider-runnable-track{background:var(--track);border-radius:2px;height:4px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent);border:2px solid #fff;border-radius:50%;width:20px;height:20px;margin-top:-8px;box-shadow:0 1px 4px #00000059}input[type=range]::-moz-range-track{background:var(--track);border-radius:2px;height:4px}input[type=range]::-moz-range-thumb{background:var(--accent);border:2px solid #fff;border-radius:50%;width:16px;height:16px;box-shadow:0 1px 4px #00000059}input[type=range]:focus-visible{outline:none}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px #fff, 0 0 0 5px var(--focus)}.range-ends{color:var(--muted);justify-content:space-between;font-size:11px;display:flex}.segmented{border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;grid-auto-columns:1fr;grid-auto-flow:column;display:grid;overflow:hidden}.segmented button{height:var(--tap);border:0;border-right:1px solid var(--line);font:inherit;color:inherit;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;padding:0 4px;font-size:13px;transition:background .12s;overflow:hidden}.segmented button:last-child{border-right:0}.segmented button.active{background:var(--accent);color:#fff}.segmented button:disabled{opacity:.4;cursor:default}.segmented button:focus-visible{outline-offset:-3px}.segmented+.segmented{margin-top:6px}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{height:var(--chip);border:1px solid var(--line-strong);font:inherit;color:inherit;cursor:pointer;background:#fff;border-radius:999px;padding:0 13px;font-size:13px;transition:border-color .12s,background .12s}.chip.active{background:var(--accent);border-color:var(--accent);color:#fff}.presets{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.preset{border:1px solid var(--line-strong);border-radius:var(--radius);font:inherit;color:inherit;text-align:left;cursor:pointer;background:#fff;flex-direction:column;grid-column:span 2;align-items:flex-start;gap:2px;padding:9px 10px;transition:border-color .12s,background .12s;display:flex}.preset:nth-child(4),.preset:nth-child(5){grid-column:span 3}.preset.active{border-color:var(--accent);background:var(--accent);color:#fff}.preset .name{font-size:13px;font-weight:600}.preset .dims{opacity:.75;white-space:nowrap;font-size:11px}.sides{grid-template-columns:1fr 1fr;gap:10px 12px;display:grid}.side-name{margin-bottom:5px;font-size:12px;font-weight:600}.side-name .muted{font-size:11px}.sides .segmented button{padding:0 2px;font-size:12px}.group{border:1px solid var(--line);border-radius:10px}.group-head{width:100%;min-height:44px;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:8px 12px;display:flex}.group-title{white-space:nowrap;font-size:13px;font-weight:650}.group-summary{min-width:0;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12px;overflow:hidden}.chevron{border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);flex:none;width:8px;height:8px;margin-left:auto;margin-right:2px;transition:transform .15s;transform:rotate(45deg)translate(-2px,-2px)}.group.open .chevron{transform:rotate(-135deg)translate(-2px,-1px)}.group-body{border-top:1px solid var(--line);padding:4px 12px 14px}.group-body>.control:first-child,.group-body>.pair:first-child{margin-top:10px}.door-list{gap:6px;display:grid}.door-row{border:1px solid var(--line-strong);border-radius:var(--radius);width:100%;min-height:40px;font:inherit;color:inherit;text-align:left;cursor:pointer;background:#fff;justify-content:space-between;align-items:center;gap:8px;padding:8px 11px;font-size:13px;transition:border-color .12s,background .12s;display:flex}.door-row.active{border-color:var(--focus);background:#eef5ff}.door-row .muted{white-space:nowrap}.btn-row{gap:8px;margin-top:16px;display:flex}.btn{height:var(--btn);border:1px solid var(--line-strong);border-radius:var(--radius);font:inherit;color:inherit;cursor:pointer;white-space:nowrap;background:#fff;flex:1;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:500;transition:background .12s;display:inline-flex}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.danger{color:var(--danger);border-color:#e3b5b1}.btn:disabled{opacity:.45;cursor:default}.note-warn{border-radius:var(--radius);color:#7a4a00;background:#fff4e5;margin-top:12px;padding:9px 11px;font-size:12px;line-height:1.45}.swatches{flex-wrap:wrap;gap:8px;display:flex}.swatch{width:var(--swatch);height:var(--swatch);cursor:pointer;background:#fff;border:1px solid #00000038;border-radius:50%;padding:0;transition:box-shadow .12s,transform .12s}.swatch.active{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--accent)}.swatch.none{background:linear-gradient(135deg,#fff 46%,#c0392b 46% 54%,#fff 54%)}.combos{grid-template-columns:1fr 1fr;gap:8px;display:grid}.combo{border:1px solid var(--line-strong);border-radius:var(--radius);min-height:42px;font:inherit;color:inherit;text-align:left;cursor:pointer;background:#fff;align-items:center;gap:8px;padding:6px 10px;font-size:12px;transition:border-color .12s,background .12s;display:flex}.combo.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.combo-dots{flex:none;display:flex}.combo-dots span{border:1px solid #00000038;border-radius:50%;width:16px;height:16px;margin-right:-5px}.combo-dots span:last-child{margin-right:0}.combo-name{min-width:0;line-height:1.25}.split-readout{color:var(--muted);grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;font-size:12px;display:grid}.split-readout strong{color:var(--text);margin-top:2px;font-size:15px;font-weight:600;display:block}.split-readout em{font-style:normal}.dot{border-radius:50%;width:10px;height:10px;margin-right:4px;display:inline-block}.quote-total{color:var(--muted);background:#f4f5f7;border-radius:12px;padding:14px 16px;font-size:12px}.quote-total strong{letter-spacing:-.01em;color:var(--text);font-variant-numeric:tabular-nums;margin:2px 0;font-size:30px;font-weight:700;display:block}.quote-total em{font-style:normal}.summary{color:var(--muted);grid-template-columns:1fr 1fr;gap:10px 12px;margin-top:12px;font-size:12px;display:grid}.summary strong{color:var(--text);margin-top:2px;font-size:14px;font-weight:600;display:block}.summary .wide{grid-column:1/-1}.quote-group{margin-top:14px}.quote-group-head,.quote-line{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.quote-group-head{border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;padding-bottom:6px;font-size:13px;font-weight:600}.quote-line{border-bottom:1px dashed var(--line);padding:6px 0;font-size:13px}.quote-detail{color:var(--muted);margin-top:1px;font-size:11px;display:block}.quote-amount{white-space:nowrap;font-variant-numeric:tabular-nums}.lead-intro{margin:0 0 14px}.field+.field{margin-top:14px}.field label{margin-bottom:6px;font-size:13px;font-weight:600;display:block}.field label .muted{margin-left:4px}.field input{width:100%;height:var(--btn);border:1px solid var(--line-strong);border-radius:var(--radius);font:inherit;font-size:var(--field-font);color:var(--text);background:#fff;padding:0 11px}.field input:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);outline:none}.field input[aria-invalid=true]{border-color:var(--danger)}.field-error{color:var(--danger);margin-top:4px;font-size:12px}.lead-hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.lead-done{border:1px solid var(--line);border-radius:10px;padding:14px}.lead-done strong{font-size:16px}.lead-done p{margin:6px 0 0;font-size:13px;line-height:1.45}.lead .section-title{margin-bottom:8px;font-size:13px;font-weight:650}.options{margin-top:16px}.option-card{border:1px solid var(--line-strong);border-radius:10px;margin-top:10px;padding:12px 14px}.option-card.added{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.option-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.option-head strong{font-size:14px;font-weight:650}.option-price{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:16px;font-weight:700}.option-price small{color:var(--muted);text-align:right;font-size:11px;font-weight:500;display:block}.option-changes{margin:8px 0 0;padding-left:18px;font-size:13px;line-height:1.5}.option-card .btn-row{margin-top:10px}.option-card .btn{font-size:13px}.email-design{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.email-design .field,.email-design .btn-row{margin-top:12px}.email-design a.btn{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.share-link{word-break:break-all;margin-top:8px;font-size:12px}.share-link a{color:var(--text)}@media (hover:hover){.segmented button:not(.active):not(:disabled):hover{background:#f4f5f7}.chip:not(.active):hover,.preset:not(.active):hover,.combo:not(.active):hover,.door-row:not(.active):hover{border-color:#8d9199}.btn:not(:disabled):hover{background:#f4f5f7}.btn.primary:not(:disabled):hover{background:var(--accent-hover)}.btn.danger:not(:disabled):hover{background:#fdf1f0}.swatch:hover{transform:scale(1.08)}.group-head:hover{background:#f8f9fa}}@media (width<=760px) and (orientation:portrait){:root{--pad:16px;--tap:44px;--chip:40px;--swatch:36px;--btn:46px;--field-font:16px}.app{flex-direction:column}.unit-field input[type=number]{height:38px;font-size:16px}input[type=range]::-webkit-slider-thumb{width:24px;height:24px;margin-top:-10px}input[type=range]::-moz-range-thumb{width:20px;height:20px}.segmented button,.chip,.btn{font-size:14px}.sides .segmented button{font-size:13px}.preset{padding:10px}.progress button{height:22px;padding:9px 0}}@media (width<=1000px) and (height<=520px) and (orientation:landscape){:root{--pad:14px}.step-intro,.hint{display:none}}.quote-total .start-est{border-top:1px solid color-mix(in srgb, currentColor 20%, transparent);gap:1px;margin-top:10px;padding-top:10px;display:grid}.quote-total .start-est b{color:var(--text);font-size:15px;font-weight:700}.quote-total .start-est small{color:var(--muted)}.estimate-note{border-left:3px solid var(--gold,#ad782c);background:color-mix(in srgb, var(--gold,#ad782c) 9%, var(--panel,#fff));color:var(--text);border-radius:6px;margin:12px 0 14px;padding:9px 11px 9px 12px;font-size:12.5px;line-height:1.45}.opening-cards .oc-help{margin:0 0 12px}.oc-wall .pick-row-options{flex-wrap:nowrap}.oc-wall .chip-pick{white-space:nowrap;flex:1;min-width:0;padding:0 8px;font-size:14px}.oc-title{margin-top:20px;font-size:15px}.oc-kinds,.oc-types{gap:8px;margin-top:14px;display:grid}.oc-tile{border:1px solid var(--line);width:100%;min-height:72px;font:inherit;color:var(--text);text-align:left;cursor:pointer;touch-action:manipulation;background:#fff;border-radius:12px;align-items:center;gap:12px;padding:6px 12px 6px 6px;display:flex;box-shadow:0 1px 2px #1018280a}.oc-tile.added{border-color:var(--accent)}.oc-tile .oc-photo{flex:none;width:96px}.oc-kinds .oc-tile .oc-photo{width:120px}.oc-tile-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.oc-tile-name{font-size:16px;font-weight:700}.oc-kinds .oc-tile-name{font-size:18px}.oc-tile-sub{color:var(--muted);font-size:12.5px;line-height:1.35}.oc-tile>svg{color:var(--muted);flex:none}@media (hover:hover){.oc-tile:hover{border-color:var(--accent)}}.oc-back{align-items:center;gap:10px;margin:14px 0 10px;display:flex}.oc-back-btn{border:1px solid var(--line-strong);height:36px;font:inherit;color:var(--text);cursor:pointer;touch-action:manipulation;background:#fff;border-radius:18px;flex:none;align-items:center;gap:2px;padding:0 12px 0 6px;font-size:14px;font-weight:600;display:inline-flex}.oc-back-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:16px;font-weight:700;overflow:hidden}.oc-group+.oc-group{margin-top:14px}.oc-group-name{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:7px;font-size:12px;font-weight:600}.oc-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.oc-card{border:1px solid var(--line);background:#fff;border-radius:12px;flex-direction:column;min-width:0;padding:5px 5px 6px;display:flex;box-shadow:0 1px 2px #1018280a}.oc-card.added{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.oc-photo{position:relative}.oc-photo img,.oc-pic{aspect-ratio:4/3;object-fit:cover;pointer-events:none;background:#eef0f2;border-radius:8px;width:100%;height:auto;display:block}.oc-card.off .oc-pic,.oc-card.off .oc-photo img{opacity:.45;filter:grayscale()}.oc-count{background:var(--accent);color:#fff;white-space:nowrap;border-radius:999px;align-items:center;gap:3px;padding:2px 7px 2px 5px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;top:4px;left:4px}.oc-size{white-space:nowrap;text-overflow:ellipsis;margin:6px 3px 0;font-size:14px;font-weight:700;overflow:hidden}.oc-tag{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin:0 3px;font-size:11.5px;overflow:hidden}.oc-actions{gap:5px;margin-top:6px;display:flex}.oc-add,.oc-remove{height:40px;font:inherit;cursor:pointer;touch-action:manipulation;border-radius:9px;justify-content:center;align-items:center;display:inline-flex}.oc-add{border:1px solid var(--accent);background:var(--accent);color:#fff;flex:1;gap:4px;min-width:0;padding:0 6px;font-size:14px;font-weight:700}.oc-add:disabled{border-color:var(--line);color:var(--muted);cursor:default;background:#f1f2f4}.oc-card.added .oc-add-text{display:none}.oc-remove{border:1px solid var(--line-strong);min-width:0;color:var(--text);background:#fff;flex:1;padding:0}@media (hover:hover){.oc-add:not(:disabled):hover{background:var(--accent-hover)}.oc-remove:hover{border-color:var(--accent)}}.oc-looks .color-row+.pick-row,.oc-looks .pick-row+.pick-row,.oc-looks .pick-row+.color-row{margin-top:16px}.oc-selected{border-radius:var(--radius);background:#f4f5f7;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;padding:8px 12px;font-size:13px;display:flex}.oc-selected .link-btn{flex:none}.oc-note{margin-top:8px}
