.planner-panel{position:absolute;top:118px;right:16px;bottom:80px;z-index:20;width:420px;display:flex;flex-direction:column;min-width:0;background:#f7faf8;border:1px solid #bbc9c1;border-radius:8px;box-shadow:0 12px 40px #18372a24;pointer-events:auto;color:#233d31;letter-spacing:0}.planner-panel header,.planner-comparison header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px}.planner-panel h2,.planner-comparison h2{font-size:19px;margin:0 0 4px}.planner-panel header span{font-size:12px;color:#567063}.planner-panel button,.planner-comparison button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;border:1px solid #c0cfc6;border-radius:6px;background:#fff;color:#284f3b;padding:7px 10px;white-space:normal}.planner-panel button:disabled{opacity:.45;cursor:default}.planner-panel button svg,.planner-comparison button svg{flex:0 0 auto}.planner-panel button:focus-visible,.planner-panel input:focus-visible,.planner-panel select:focus-visible{outline:2px solid #277758;outline-offset:2px}.planner-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:0 12px 12px;border-bottom:1px solid #c5d3ca}.planner-tabs button{font-size:12px;min-height:42px;min-width:0;padding:6px}.planner-tabs button span{overflow-wrap:anywhere}.planner-tabs button[aria-selected=true]{background:#244e3a;color:#fff;border-color:#244e3a}.planner-content{padding:16px;overflow-y:auto;overscroll-behavior:contain;min-height:0}.planner-content h3{font-size:16px;margin:20px 0 12px}.planner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.planner-section{min-width:0;border:0;border-top:1px solid #c5d3ca;border-radius:0;padding:14px 0;margin:16px 0 0}.planner-section legend{font-weight:600;font-size:15px;padding:0 8px 0 0}.planner-field{display:flex;flex-direction:column;min-width:0;gap:6px;margin-bottom:12px;font-size:12px;overflow-wrap:anywhere}.planner-field input:not([type=range]),.planner-field select{width:100%;min-width:0;min-height:38px;border:1px solid #b8c9bd;background:#fff;border-radius:5px;padding:7px 8px;color:#233d31}.planner-field input[type=range]{width:100%;min-height:36px;accent-color:#28714e}.planner-check{display:flex;align-items:center;gap:9px;min-height:40px;font-size:13px;overflow-wrap:anywhere}.planner-check input{flex:0 0 18px;width:18px;height:18px;accent-color:#28714e}.planner-row{display:flex;justify-content:space-between;align-items:center;gap:10px;min-width:0}.planner-row strong{overflow-wrap:anywhere;font-size:12px}.planner-item{padding:10px 0;border-bottom:1px solid #d5e0d9;margin-bottom:12px}.planner-command{margin:8px 0}.planner-colors{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0}.planner-colors label{display:grid;gap:8px;font-size:12px}.planner-colors input{width:100%;height:40px;border:1px solid #b8c9bd;padding:3px;background:#fff;cursor:pointer}.planner-upload{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:18px 0;font-size:13px}.planner-upload input{width:100%;max-width:100%;font-size:12px}.planner-photo{display:flex;align-items:center;gap:12px}.planner-photo img{width:112px;height:112px;object-fit:cover;border:1px solid #b8c9bd}.planner-save{display:grid;gap:8px;margin:12px 0 20px}.planner-alternative{padding:12px 0;border-top:1px solid #c5d3ca}.planner-alternative>img{display:block;width:100%;aspect-ratio:16 / 10;object-fit:contain;background:#e6ece8;border-radius:4px}.planner-issues{list-style:none;padding:0;margin:0}.planner-issues li{display:grid;gap:4px;padding:12px 0;border-bottom:1px solid #d8c6b7;font-size:12px;overflow-wrap:anywhere}.planner-issues li span{color:#8c4b35}.planner-error{color:#a63e2c;padding:10px 0;font-size:13px;overflow-wrap:anywhere}.planner-success{display:flex;align-items:center;gap:8px;font-size:13px}.planner-measures{margin:12px 0;font-size:12px}.planner-measures>div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #d7e1da}.planner-measures dd{margin:0;text-align:right}.planner-export{display:grid;gap:8px}.planner-product{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;border-top:1px solid #c5d3ca;padding:14px 0;font-size:12px}.planner-product>strong{overflow-wrap:anywhere}.planner-product .planner-field{grid-column:1 / -1}.planner-total{display:grid;gap:8px;position:sticky;bottom:-16px;background:#edf4ef;margin:0 -16px -16px;padding:16px;border-top:1px solid #c5d3ca;font-size:13px}.planner-busy{position:fixed;inset:0;z-index:80;display:grid;place-items:center;pointer-events:auto;background:#edf4ef66;color:#173d29;font-size:18px}.planner-comparison{width:min(1200px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid #aebfb2;border-radius:8px;background:#f7faf8;color:#233d31;pointer-events:auto}.planner-comparison::backdrop{background:#15291fb3}.planner-comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:0 20px 20px}.planner-comparison-grid section{min-width:0}.planner-comparison-grid h3{font-size:17px;overflow-wrap:anywhere}.planner-comparison-grid img{display:block;width:100%;aspect-ratio:16 / 10;object-fit:contain;background:#e5ece7}.planner-comparison-grid p{font-size:12px;overflow-wrap:anywhere}.hud:has(.planner-panel) .dock{visibility:hidden}@media(max-width:1120px){.planner-panel{inset:auto 12px 116px;width:auto;max-height:62dvh}.planner-panel header{padding:12px}.planner-panel h2{font-size:17px}.planner-content{padding:12px}.planner-total{margin:0 -12px -12px;padding:12px;bottom:-12px}.hud:has(.planner-panel) #catalog-panel{visibility:hidden}.planner-comparison-grid{grid-template-columns:1fr}}.decor-colors{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;padding-bottom:20px}.decor-colors button,.decor-colors input{width:100%;min-width:0;height:32px;padding:2px;border:1px solid #aeb8b2;border-radius:3px;cursor:pointer}.decor-colors button[aria-pressed=true]{outline:2px solid #304d42;outline-offset:2px}.decor-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.decor-walls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:12px 0}.decor-walls button{min-width:0;padding:8px 2px;font-size:12px;border:1px solid var(--line);border-radius:3px;background:transparent;cursor:pointer}.decor-walls button[aria-pressed=true]{background:#e2ebe4;border-color:#537662}:root{color-scheme:light;--ink: #1c1915;--muted: rgba(28, 25, 21, .62);--line: rgba(28, 25, 21, .1);--paper: rgba(255, 251, 246, .78);--brass: #8d6439;--good: #1e6b45;--bad: #8e342c;--shadow: 0 18px 50px rgba(70, 48, 24, .12);font-family:Outfit,Avenir Next,Segoe UI,sans-serif;color:var(--ink);background:#e4ddd2}*{box-sizing:border-box}.shower-rotation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.shower-rotation>div{min-width:0}.shower-rotation input{width:100%;min-width:0}.shower-rotation label{font-size:11px}html,body,#root{margin:0;height:100%}body{overflow:hidden}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.showroom{height:100dvh;position:relative}.scene-wrap,.scene-wrap canvas{position:absolute;inset:0;width:100%;height:100%}.vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 42%,rgba(78,60,40,.16) 100%)}.hud{position:absolute;inset:0;pointer-events:none}.hud a,.hud button,.hud input,.hud select,.hud .panel,.hud .dock-card,.hud .dock-toggle,.hud .mobile-nav,.hud .lang-select,.hud .setups{pointer-events:auto}.brand{position:absolute;top:22px;left:50%;transform:translate(-50%);text-align:center;pointer-events:none;z-index:2}.brand strong{font-family:Fraunces,Georgia,serif;font-weight:560;font-size:18px;letter-spacing:.01em}.brand span{display:block;margin-top:3px;font-size:12px;letter-spacing:.04em;color:var(--muted)}.history{position:absolute;top:68px;left:50%;z-index:4;display:flex;gap:2px;padding:3px;border:1px solid var(--line);border-radius:999px;background:#fffcf7e6;transform:translate(-50%)}.history button{display:grid;place-items:center;width:32px;height:28px;padding:0;border:0;border-radius:999px;background:transparent;color:inherit}.history button:disabled{opacity:.32}.lang-select{position:absolute;top:16px;right:16px;z-index:4}.lang-select select{appearance:none;border:1px solid rgba(255,255,255,.7);border-radius:999px;padding:8px 32px 8px 14px;background:var(--paper) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='%231c1915' d='M1.2 1.4 6 6.2 10.8 1.4'/></svg>") no-repeat right 12px center;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);font-size:13px;letter-spacing:.02em}.panel{position:absolute;top:16px;bottom:72px;width:420px;display:flex;flex-direction:column;gap:12px;padding:16px 14px 14px;border-radius:22px;background:var(--paper);border:1px solid rgba(255,255,255,.7);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15)}.panel-catalog{left:16px}.catalog-toggle{position:absolute;top:16px;left:16px;z-index:4;display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:8px;background:var(--paper);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);cursor:pointer}.catalog-toggle.is-open{left:444px}.catalog-toggle:hover{background:#fffaf3}.catalog-toggle:focus-visible{outline:2px solid var(--good);outline-offset:3px}.collision-note{margin:0 0 12px;padding:8px 10px;border-left:3px solid #c52232;color:#a51424;background:#fff0ef;font-size:13px;line-height:1.4}.panel-catalog.has-collision .vanity-fields input[type=number]{border-color:#c52232;color:#a51424}.panel-catalog.has-collision input[type=range]{accent-color:#c52232}.panel-tools{display:flex;align-items:stretch;gap:8px}.panel-select{position:relative;z-index:5;flex:1;min-width:0}.add-menu{position:relative;z-index:6;flex:0 0 46px}.add-menu .settings-btn{width:100%;height:100%}.add-menu-list{left:auto;right:0;width:240px}.add-empty{margin:0;padding:10px 12px;color:var(--muted);font-size:13px;line-height:1.4}.place-line{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin-bottom:10px}.place-line .fixture-where{margin:0}.place-line .text-btn{padding:0}.settings-btn{flex:0 0 46px;width:46px;border:1px solid rgba(28,25,21,.1);border-radius:16px;background:#fffbf6eb;color:var(--ink);display:grid;place-items:center;box-shadow:0 1px 4px #4630180f}.settings-btn svg{width:22px;height:22px}.settings-btn.is-on{background:var(--ink);color:#f6f1e8;border-color:transparent}.panel-select-trigger,.panel-select-list button{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;text-align:left;font-size:14px;letter-spacing:.02em}.panel-select-trigger{border:1px solid rgba(28,25,21,.1);border-radius:16px;padding:10px 36px 10px 12px;background:#fffbf6eb url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='%231c1915' d='M1.2 1.4 6 6.2 10.8 1.4'/></svg>") no-repeat right 14px center;box-shadow:0 1px 4px #4630180f}.panel-select.is-open .panel-select-trigger{border-color:#8d643959;box-shadow:0 0 0 3px #8d64391f}.panel-select-icon{flex:0 0 28px;width:28px;height:28px;padding:4px;border-radius:9px;background:#1c19150f;color:var(--ink)}.panel-select-list{position:absolute;left:0;right:0;top:calc(100% + 6px);margin:0;padding:6px;max-height:min(420px,62vh);overflow:auto;list-style:none;border-radius:16px;background:#fffbf6f7;border:1px solid rgba(255,255,255,.8);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15)}.panel-select-list button{border-radius:12px;padding:9px 10px;color:var(--ink)}.panel-select-list button:hover,.panel-select-list button.is-on{background:#1c19150f}.panel-select-list button.is-on{font-weight:560}.panel-head{display:grid;grid-template-columns:1fr auto;align-items:end;gap:2px 8px;padding:0 4px}.panel-head h2{margin:0;font-family:Fraunces,Georgia,serif;font-size:26px;font-weight:560;letter-spacing:-.03em;grid-column:1}.eyebrow{margin:0;grid-column:1;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.close-panel{display:none}.panel-scroll{overflow:auto;flex:1;padding-right:2px;display:flex;flex-direction:column;gap:12px}.panel-scroll::-webkit-scrollbar{width:8px}.panel-scroll::-webkit-scrollbar-thumb{background:#1c191529;border-radius:99px}.brand-filter{display:flex;flex-direction:column;gap:4px;margin:0 4px 8px;font-size:12px;color:var(--muted)}.brand-filter select,.measures select{width:100%}.brand-block+.brand-block{margin-top:14px}.brand-block header{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding:0 10px 4px}.brand-block h3{margin:0;font-family:Fraunces,Georgia,serif;font-size:16px;font-weight:560}.brand-block header span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.catalog{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.row{width:100%;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;text-align:left;padding:9px 10px;border:1px solid transparent;border-radius:14px;background:transparent}.row:hover{background:#ffffff8c}.row.is-on{background:#fffcf7f2;border-color:#8d643959;box-shadow:inset 3px 0 0 var(--brass)}.row strong{display:block;font-weight:560;font-size:14px}.row em{display:block;margin-top:2px;font-style:normal;font-size:12px;color:var(--muted)}.row b{font-family:Fraunces,Georgia,serif;font-size:18px;font-weight:560}.score-pip{font-family:Fraunces,Georgia,serif;font-size:20px;font-weight:560;min-width:42px}.silhouette{width:36px;height:28px;fill:none;stroke:var(--ink);stroke-width:1.4}.segment,.views{display:flex;padding:3px;border-radius:999px;background:#1c19150d}.segment button,.views button{flex:1;border:0;background:transparent;border-radius:999px;padding:7px 8px;font-size:12px}.segment button.is-on,.views button.is-on{background:#fffdf8;box-shadow:0 1px 3px #281c1014}.blurb,.reasons,.measures{padding:12px 12px 4px;border-top:1px solid var(--line)}.blurb p,.reasons p,.fine,.source,.setback-note,.headline,.limit{margin:0;font-size:13px;line-height:1.45}.source,.fine,.setback-note{color:var(--muted);margin-top:8px}.blurb a,.reasons a{display:inline-block;margin-top:8px;color:var(--brass);font-size:13px}.ghost-btn,.text-btn{border:0;background:transparent;color:var(--brass)}.ghost-btn{align-self:flex-start;padding:4px 6px 8px;font-size:13px}.text-btn{margin-left:8px;font-size:12px;text-decoration:underline;text-underline-offset:2px}.reasons header,.factor-line{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.reasons h3{margin:0 0 8px;font-family:Fraunces,Georgia,serif;font-size:20px;font-weight:560}.reasons article{margin-top:12px}.reasons article p{margin-top:6px;color:var(--muted)}.bar{height:3px;margin-top:6px;border-radius:99px;background:#1c191514;overflow:hidden}.bar i{display:block;height:100%;border-radius:inherit}.limit{margin-top:8px;color:var(--bad)}.measure-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.data-sheet{padding:12px 12px 8px;border-top:1px solid var(--line)}.data-sheet header{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.data-sheet h3{margin:0;font-family:Fraunces,Georgia,serif;font-size:18px;font-weight:560}.data-sheet header span{font-size:12px;color:var(--muted)}.data-sheet dl{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;margin:10px 0 8px}.data-sheet dt{font-size:11px;color:var(--muted)}.data-sheet dd{margin:2px 0 0;font-size:14px}.measures label,.sliders label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}.measures input,.measures select,.measures input[type=file]{border:1px solid var(--line);background:#fffc;border-radius:10px;padding:7px 8px;color:var(--ink)}.measures{display:flex;flex-direction:column;gap:8px}.measures textarea{border:1px solid var(--line);background:#fffc;border-radius:10px;padding:7px 8px;color:var(--ink);font:inherit;font-size:12px;resize:vertical}.import-form{margin-top:6px;padding-top:12px;border-top:1px solid var(--line)}.import-form .text-btn{margin-left:0;align-self:flex-start}.import-form .ghost-btn:disabled{opacity:.45}.library-note{margin-top:4px}.tile-form{margin-top:10px;padding-top:12px;border-top:1px solid var(--line)}.tile-form h3{margin:0;font-family:Fraunces,Georgia,serif;font-size:18px;font-weight:560}.tile-form fieldset{margin:0;padding:0;border:0;min-inline-size:0}.tile-form fieldset:disabled{opacity:.55}.tile-match{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px}.tile-row{display:grid;grid-template-columns:72px 1fr;gap:10px;align-items:center}.tile-row label{min-width:0}.tile-row input[type=file]{max-width:100%;font-size:11px}.tile-preview{width:72px;height:72px;border-radius:10px;object-fit:cover;border:1px solid var(--line);background:#fff9}.tile-preview.is-empty{background:linear-gradient(var(--line),var(--line)) 50% 0 / 1px 100% no-repeat,linear-gradient(var(--line),var(--line)) 0 50% / 100% 1px no-repeat,#fff9}.tile-form .text-btn{margin-left:0;align-self:flex-start}.look-form h3{margin:0;font-family:Fraunces,Georgia,serif;font-size:18px;font-weight:560}.look-form .segment{margin:2px 0 4px}.look-form .swatches{margin:8px 0 4px}.look-form h3+.segment,.look-form h3+.shape-grid,.look-form h3+.swatches{margin-top:6px}.look-form h3:not(:first-of-type){margin-top:12px}.shape-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.shape-grid button{display:flex;flex-direction:column;align-items:center;gap:6px;border:1px solid var(--line);border-radius:14px;padding:10px 8px 8px;background:#ffffff73;font-size:12px;letter-spacing:.03em;color:var(--muted)}.shape-grid button.is-on{background:#fffdf8;color:var(--ink);border-color:#8d643959;box-shadow:0 1px 4px #46301814}.shape-mark{width:36px;height:28px;fill:none;stroke:currentColor;stroke-width:1.5}.swatches{display:flex;flex-wrap:wrap;gap:8px}.swatch{position:relative;width:28px;height:28px;border-radius:50%;border:1px solid rgba(28,25,21,.14);padding:0;cursor:pointer;box-shadow:inset 0 1px 2px #ffffff59}.swatch.is-on{outline:2px solid var(--brass);outline-offset:2px}.swatch-custom{background:conic-gradient(#e36b6b,#e8c56b,#8fcf7a,#6fb7e0,#a98be6,#e36b6b);overflow:hidden}.swatch-custom input[type=color]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;padding:0;border:0}.swatch-custom span{position:absolute;inset:5px;border-radius:50%;pointer-events:none}.room-visibility{position:absolute;left:16px;bottom:16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;max-width:calc(100% - 24px);padding:8px 12px;border:1px solid rgba(255,255,255,.7);border-radius:8px;background:var(--paper);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);font-size:13px;letter-spacing:0}.room-visibility:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.room-visibility-track{display:block;flex:0 0 28px;height:16px;padding:2px;border-radius:8px;background:#8c8c85}.room-visibility-track:after{content:"";display:block;width:12px;height:12px;border-radius:50%;background:#fff}.room-visibility[aria-checked=true] .room-visibility-track{background:#47745c}.room-visibility[aria-checked=true] .room-visibility-track:after{transform:translate(12px)}.dock{position:absolute;left:350px;right:16px;bottom:16px;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.dock-toggle{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.7);border-radius:999px;padding:8px 12px 8px 14px;background:var(--paper);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);font-size:13px;letter-spacing:.02em}.dock-toggle-score{font-family:Fraunces,Georgia,serif;font-style:normal;font-weight:560;font-size:18px;line-height:1;letter-spacing:-.03em}.dock-toggle svg{width:14px;height:14px;display:block}.dock-toggle svg.is-open{transform:rotate(180deg)}.dock-card{width:min(560px,100%);padding:14px 16px 12px;border-radius:22px;background:var(--paper);border:1px solid rgba(255,255,255,.72);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15)}.dock.is-collapsed .dock-toggle{padding-left:12px}.score-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.score-block{display:flex;align-items:flex-end;gap:10px}.score-num{font-family:Fraunces,Georgia,serif;font-weight:560;font-size:68px;line-height:.8;letter-spacing:-.045em;font-variation-settings:"opsz" 100,"SOFT" 40,"WONK" 1}.score-meta{display:flex;flex-direction:column;padding-bottom:6px}.score-meta strong{font-family:Fraunces,Georgia,serif;font-size:22px;font-weight:560}.score-meta span{font-size:12px;color:var(--muted)}.water-btn{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:999px;padding:13px 18px;background:var(--ink);color:#f6f1e8;font-weight:560;letter-spacing:.01em}.water-btn svg{width:16px;height:16px}.water-btn.is-on{background:#2c6e86}.headline{margin-top:10px}.placement{margin-top:12px}.placement-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px;font-size:13px}.placement-head em{font-style:normal;color:var(--muted);font-variant-numeric:tabular-nums}.placement .segment{display:grid;grid-template-columns:repeat(4,1fr)}.placement .segment button{padding:7px 4px;font-size:11.5px}.shower-water-controls .placement-head{align-items:center;flex-wrap:wrap}.shower-water-controls h3{margin:0;font-size:14px}.shower-water-controls .water-btn{min-height:36px;padding:8px 12px}.shower-water-controls .segment{grid-template-columns:repeat(2,minmax(0,1fr))}.shower-water-controls .segment button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:40px;white-space:normal}.shower-water-controls svg{flex-shrink:0}.placement-angle{display:block;margin-top:10px}.placement-angle span{display:flex;justify-content:space-between;gap:8px;font-size:13px}.placement-angle em{font-style:normal;color:var(--muted);font-variant-numeric:tabular-nums}.placement-angle input[type=range]{width:100%;accent-color:var(--brass)}.sliders{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:12px}.sliders input[type=range]{width:100%;accent-color:var(--brass)}.splash-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-top:12px}.splash-row .views{flex:0 0 auto}.splash-legend{display:flex;flex-wrap:wrap;gap:8px 12px;margin:0;font-size:12px;color:var(--muted)}.splash-legend span{display:inline-flex;align-items:center;gap:5px}.splash-legend i{width:8px;height:8px;border-radius:50%}.splash-legend .in{background:#1f8a62}.splash-legend .rim{background:#c4843a}.splash-legend .out{background:#c4473a}.view-row{display:grid;grid-template-columns:3fr 2fr;gap:8px;margin-top:8px}.views button[aria-pressed=true]{color:var(--brass)}.photo-toggle{width:100%;margin-top:8px;border:0;border-radius:999px;padding:8px 12px;background:#1c19150d;font-size:12px}.photo-toggle.is-on{background:#fffdf8;color:var(--brass);box-shadow:0 1px 3px #281c1014}.dim-label{pointer-events:none;white-space:nowrap;padding:3px 8px;border-radius:999px;background:#fffbf6eb;border:1px solid rgba(28,25,21,.18);color:var(--ink);font-family:Outfit,Avenir Next,Segoe UI,sans-serif;font-size:11.5px;font-variant-numeric:tabular-nums;letter-spacing:.01em;box-shadow:0 2px 8px #4630181f}.dim-label.is-accent{color:var(--brass);border-color:#8d643966}.dim-label.is-vanity{color:#4d5f6b;border-color:#4d5f6b66}.vanity-fields{display:flex;flex-direction:column;gap:14px;padding:4px}.vanity-fields label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted)}.vanity-fields label>span{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.vanity-fields label>span em{font-style:normal;color:var(--ink);font-variant-numeric:tabular-nums}.vanity-fields small{font-size:11px;color:var(--muted)}.vanity-fields input[type=range]{width:100%;accent-color:#4d5f6b}.vanity-fields input[type=number]{width:84px;border:1px solid var(--line);background:#fffc;border-radius:8px;padding:4px 6px;color:var(--ink);text-align:right}.vanity-summary{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:4px}.vanity-summary div{padding:10px 10px 8px;border-radius:14px;background:#fffcf7e6;border:1px solid var(--line)}.vanity-summary strong{display:block;font-family:Fraunces,Georgia,serif;font-size:20px;font-weight:560;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.vanity-summary span{display:block;margin-top:2px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.room-fittings{margin:16px 0 4px;font-family:Fraunces,Georgia,serif;font-size:18px;font-weight:560}.fixture-row{margin-top:12px}.fitting-block{margin-top:8px;padding:8px 10px 10px;border:1px solid transparent;border-radius:12px}.fitting-block.is-picked{border-color:#e07a28;background:#e07a2814}.fitting-block label{display:flex;flex-direction:column;gap:4px;margin-top:8px;font-size:12px}.fitting-block .segment{margin-top:10px}.fitting-catalog{margin:4px 0 10px}.fitting-catalog .row{grid-template-columns:1fr}.fitting-block .swatches{margin-top:8px}.fixture-row>span{display:block;margin-bottom:6px;font-size:13px}.fixture-row .segment{display:grid;grid-template-columns:1fr 1fr}.fixture-row .segment.shelf-count{grid-template-columns:repeat(5,1fr)}.fixture-row .segment button{line-height:1.25;white-space:normal}.cabinet-line{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;margin-top:8px}.cabinet-line>button:first-child{padding:8px 12px;border:1px solid rgba(42,37,32,.14);border-radius:999px;background:#fff;text-align:left}.cabinet-add{margin-top:8px}.cabinet-add:disabled{opacity:.4}.door-swing{margin-top:8px}.door-swing .segment button{line-height:1.25;white-space:normal}.door-swing>span{display:block;margin-bottom:4px;font-size:12px;color:var(--muted)}.fixture-where{display:block;margin-top:6px;color:var(--muted);font-size:12px}.setups{position:absolute;top:16px;right:148px;z-index:5}.setups-trigger{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.7);border-radius:999px;padding:8px 14px;background:var(--paper);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);font-size:13px}.setups-card{position:absolute;top:46px;right:0;width:min(360px,calc(100vw - 32px));max-height:calc(100dvh - 130px);overflow:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:8px;background:var(--paper);border:1px solid rgba(255,255,255,.7);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15)}.setups-card form{display:grid;grid-template-columns:1fr auto;gap:8px}.setups-card input{min-width:0;border:1px solid var(--line);border-radius:999px;padding:8px 12px;background:#ffffffb3}.setups-card form button{border:0;border-radius:999px;padding:8px 14px;background:var(--ink);color:#f6f1e8}.setups-card form button:disabled,.setups-file button:disabled,.setups-list button:disabled{opacity:.55}.setups-file{display:grid;grid-template-columns:1fr 1fr;gap:8px}.setups-file button{border:1px solid var(--line);border-radius:999px;padding:7px 10px;background:transparent;font-size:12px}.setups-list{list-style:none;margin:0;padding:0;max-height:240px;overflow:auto}.setups-list li{display:flex;align-items:center;gap:8px;border-top:1px solid var(--line)}.setups-list li button:first-child{flex:1;border:0;background:transparent;text-align:left;padding:8px 2px}.setups-list li.is-on button:first-child{font-weight:600}.setups-card button{display:inline-flex;align-items:center;justify-content:center;gap:6px}.setups-card input,.setups-card form button,.setups-file button{border-radius:6px}.setups-card p{margin:0;overflow-wrap:anywhere}.setups-card form{min-width:0}.setups-list li button:first-child{justify-content:flex-start;min-width:0;overflow-wrap:anywhere}.setups-list li button:last-child{flex:0 0 32px;height:36px}.account-panel{display:grid;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--line)}.account-tabs{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:6px;padding:3px}.account-tabs button{border:0;border-radius:4px;background:transparent;padding:8px 4px;font-size:13px}.account-tabs button[aria-pressed=true]{background:var(--ink);color:#fff}.setups-card .account-form{display:grid;grid-template-columns:1fr}.account-form label{display:grid;gap:4px;font-size:13px}.account-form small{color:var(--muted)}.account-form button{min-height:38px}.account-summary{display:flex;align-items:center;gap:4px;min-width:0}.account-summary span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:13px}.account-icon{width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:6px;background:transparent;flex-shrink:0}.mobile-nav{display:none}@media(max-width:1120px){.brand{display:none}.catalog-toggle,.catalog-toggle.is-open{top:56px;left:12px}.history{top:12px;left:12px;transform:none}.lang-select{top:12px;right:12px}.setups{top:56px;right:12px}.panel{display:none;width:min(380px,calc(100vw - 24px));top:104px;bottom:116px;left:12px;border-radius:8px}.panel-slot.show .panel{display:flex}.close-panel{display:inline;grid-column:2;grid-row:1 / span 2}.dock{left:12px;right:12px;bottom:64px}.dock:not(.is-collapsed){bottom:116px}.room-visibility{left:12px;bottom:64px}.dock-card{max-height:min(60dvh,520px);overflow:auto;overscroll-behavior:contain;border-radius:8px}.hud.is-editing .dock{display:none}.hud:has(.setups.is-open) .dock,.hud:has(.setups.is-open) .panel-slot,.hud:has(.setups.is-open) .room-visibility{visibility:hidden}.score-num{font-size:52px}.sliders,.view-row{grid-template-columns:1fr}.mobile-nav{display:flex;position:absolute;left:12px;right:12px;bottom:12px;gap:8px}.mobile-nav button{flex:1;border:0;border-radius:999px;padding:11px 6px;background:#fffbf6e6;box-shadow:var(--shadow);font-size:12px}.mobile-nav button.is-on{background:var(--ink);color:#f6f1e8}}
