/* Guided customer UI. The detailed editor remains available, never the first screen. */
.customer-loading main{visibility:hidden}
body{background:#f4f4f2;font-family:'Segoe UI',Arial,sans-serif;color:#202327}
header{height:90px;background:#111;border-bottom:3px solid #bc0021;padding:0 4vw}
header>a img{display:block;width:145px;height:68px;object-fit:contain}
header nav{gap:35px;font-size:14px}
header nav>a{display:block;text-decoration:none;color:#fff}
header nav>strong{height:100%;min-width:58px;display:grid;place-items:center;color:#fff;border-bottom:3px solid #bc0021;padding:0 4px;font-size:14px}
button,.file-button{font-size:16px;min-height:48px;line-height:1.3;padding:12px 16px;border-radius:9px}
input,select,textarea{font-size:17px;min-height:50px;padding:12px}
label{font-size:16px;line-height:1.4;margin:16px 0}
.hint{font-size:14px;color:#545d60}
summary,details details summary{font-size:17px;min-height:48px}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #bc0021;outline-offset:4px}
.customer-guided header{height:90px}.customer-guided header nav>a{display:block}
.customer-guided .heading,.customer-guided .workspace>aside>.tabs,.customer-guided .workspace>aside>#room-controls,.customer-guided .workspace>aside>.estimate,.customer-guided .workspace>aside>#photo-controls{display:none}
.customer-guided .workspace{grid-template-columns:minmax(340px,420px) minmax(0,1fr);align-items:start;gap:30px}
.customer-guided main{max-width:1560px;padding:26px 4vw}
.customer-guided .visual-workspace{position:sticky;top:22px}
.customer-guided .viewbar,.customer-guided .camera-controls,.customer-guided .subviews,.customer-guided .review{display:none}
.customer-guided.flow-show-overview .subviews{display:grid;grid-template-columns:1fr}
.customer-guided.flow-show-overview .subviews>section:nth-child(2){display:none}
.customer-guided .revision{display:none}
.customer-guided .subhead small{font-size:13px}
.customer-guided #scene-wrap{aspect-ratio:1.35;border:1px solid #d1d6d3;border-radius:16px}
body.customer-entry-open .workspace,body.customer-entry-open #message,body.customer-entry-open footer{display:none!important}
#flow-empty-preview{background:#eeefea;border:1px solid #d6dad1;border-radius:16px;text-align:center;padding:50px 28px}
#flow-empty-preview svg{width:min(100%,410px);height:auto;display:block;margin:0 auto 22px}
#flow-empty-preview h2{font-size:28px;letter-spacing:-.6px}
#flow-empty-preview p{font-size:17px;color:#53625c;line-height:1.6}
#customer-entry{max-width:1180px;margin:24px auto 50px;text-align:left}
#customer-entry h1{font:900 clamp(34px,4vw,48px)/1.1 'Segoe UI',Arial,sans-serif;letter-spacing:-1.8px;margin:10px 0}
#customer-entry .eyebrow{font:700 12px 'Segoe UI',Arial,sans-serif;color:#596167;letter-spacing:1.6px}
.entry-header{display:flex;justify-content:space-between;align-items:center;gap:30px;margin:0 0 28px}
.entry-progress{width:min(280px,34%);border-bottom:3px solid #d8dadd;padding:0 0 12px;position:relative}
.entry-progress span{font-size:11px;letter-spacing:1px;color:#747980}
.entry-progress strong{display:block;font:700 18px 'Segoe UI',Arial,sans-serif;margin-top:5px}
.entry-progress i{position:absolute;left:0;bottom:-3px;width:20%;height:3px;background:#bc0021}
.entry-section-title{font:800 23px 'Segoe UI',Arial,sans-serif;margin:0}
.entry-section-help{color:#626970;margin:4px 0 16px}
.entry-intro{font-size:18px;color:#697078;margin:4px 0 0}
.entry-choices{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:0 0 18px}
.entry-choice{display:flex;flex-direction:column;align-items:stretch;text-align:left;background:white;border:1px solid #d5d8da;border-radius:9px;padding:21px 25px;gap:12px;box-shadow:0 3px 12px #10182008;transition:border-color .15s,box-shadow .15s}
.entry-choice:hover{background:white;border-color:#bc0021;box-shadow:0 8px 24px #6a172012}
.entry-choice svg{height:115px;width:100%}
.entry-choice .choice-title{font:800 24px 'Segoe UI',Arial,sans-serif;letter-spacing:-.5px;color:#151a1c}
.entry-choice>span:not(.choice-title):not(.choice-link){color:#505a5e;font-size:16px;font-weight:400;line-height:1.5}
.entry-choice .choice-link{color:#a50020;border-top:1px solid #e4e6e2;padding-top:13px;margin-top:3px;display:flex;justify-content:space-between;font-size:15px}
.entry-reassurance{font-size:13px;color:#687078;margin-top:18px;text-align:center}
.resume-tools{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.resume-tools button{font-size:15px}
.entry-saved-options{position:relative;text-align:left}
.entry-saved-options summary{min-height:48px;padding:10px 14px;border:1px solid #cbd0ce;border-radius:6px;background:#fff;font-size:15px}
.entry-saved-options[open]{background:#fff;border:1px solid #d9deda;border-radius:8px;padding:8px 12px}
.entry-saved-options>button{margin:4px}
.flow-titlebar{display:flex;justify-content:space-between;align-items:center;gap:14px}
.text-button{border:0;background:transparent;color:#a50020;padding-left:0;padding-right:0;box-shadow:none;text-decoration:underline;text-underline-offset:4px}
.text-button:hover{background:transparent;color:#790019}
#flow-save-note{color:#53625a;font-size:14px;margin-left:auto}
#flow-undo{font-size:14px;min-height:42px;padding:8px 12px}
.flow-progress{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:20px 0 18px}
.flow-progress button{display:flex;justify-content:flex-start;text-align:left;padding:12px 10px;font-size:14px;min-height:60px;background:#fff;border-color:#d9dcd7}
.flow-progress button b{background:#edf0eb;color:#303936;border-radius:50%;min-width:29px;height:29px;display:grid;place-items:center;margin-right:4px}
.flow-progress button[aria-current=step]{border:2px solid #bc0021;background:#fff8f8;color:#95122a}
.flow-progress button[aria-current=step] b{background:#bc0021;color:white}
.flow-progress button:disabled{opacity:.6;color:#4c5559;background:#f0f1ed}
#flow-mode-note{font-size:14px;color:#53605a;margin-bottom:17px}
#flow-panel{padding:26px;border:1px solid #d8dcd6;border-radius:15px;background:white}
#flow-panel h1{font-size:29px;line-height:1.16;letter-spacing:-.8px;margin:10px 0}
#flow-panel h2{font-size:20px;margin-top:24px}
#flow-step-help{font-size:17px;color:#52605c;margin-bottom:20px}
#flow-step-label{font-size:12px;color:#a4001d;letter-spacing:1.3px}
#flow-content{font-size:16px}
#flow-content p{line-height:1.55}
.flow-navigation{display:flex;gap:12px;margin-top:25px;padding-top:18px;border-top:1px solid #e1e4dd;align-items:stretch}
.flow-navigation #flow-next{flex:1}
#flow-back{font-size:15px}
#flow-detailed{display:block;font-size:14px;margin:12px auto 0}
#flow-error{color:#a0001c;font-size:16px;font-weight:600}
#flow-error:empty{display:none}
#message{font-size:16px;line-height:1.5}
.size-illustration{background:#f6f6f2;border-radius:12px;margin:20px 0}
.size-illustration svg{height:115px;width:100%;display:block}
.flow-size-inputs{display:flex;gap:16px}.flow-size-inputs label{flex:1;min-width:0}
.flow-size-inputs input{font-size:26px;font-weight:bold;padding:16px;min-height:67px}
.flow-optional{border-top:1px solid #e1e4dc;margin-top:22px}
.flow-optional summary{font-size:16px;line-height:1.4}
.flow-optional>button{margin:5px 5px 5px 0}
.flow-wall-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0 22px}
.flow-wall-list button{display:flex;align-items:flex-start;flex-direction:column;gap:4px;text-align:left;min-height:99px;padding:12px;font-weight:400}
.flow-wall-list button[aria-pressed=true]{border:2px solid #bc0021;background:#fff7f7}
.flow-wall-list button:hover:not([aria-pressed=true]){border-color:#9aa6a3;background:#f5f7f6}
.flow-wall-list strong{font-size:16px}.flow-wall-list span{font-size:14px;color:#475853;line-height:1.4}.flow-wall-list small{font-size:13px;color:#53635d}
.selected-wall-label{font-size:15px;color:#4c5d58}
.package-choices{display:flex;flex-direction:column;gap:12px}
.package-choice{display:grid;grid-template-columns:100px minmax(0,1fr);text-align:left;align-items:center;gap:12px;min-height:121px;padding:13px;border:1px solid #d9deda;border-radius:10px;background:#fff}
.package-choice:has(button[aria-pressed=true]){border:2px solid #bc0021;background:#fff7f7}
.package-choice img{width:100%;height:88px;object-fit:contain;background:#f6f7f7;border-radius:6px}.package-choice span{display:flex;flex-direction:column;gap:6px}
.package-choice strong{font-size:18px;letter-spacing:-.4px}.package-choice small{font-size:13px;line-height:1.4;font-weight:400;color:#4c5859}
.package-choice .package-fit-state{font-weight:700;color:#24493d}.package-choice.package-too-wide .package-fit-state{color:#9b1c24}.package-choice button{grid-column:2;justify-self:start;min-height:44px;padding:8px 12px}.package-choice button:disabled{opacity:1;color:#6b222a;background:#f9eeee;cursor:not-allowed}
#flow-view-all-packages{width:100%;margin-top:15px}
.finish-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:16px}
.finish-choices button{padding:9px 4px;display:flex;flex-direction:column;position:relative;justify-content:flex-start;gap:8px;min-height:118px;border-radius:9px}
.finish-choices button>span{width:36px;height:36px;display:block;border-radius:50%;border:1px solid #c2c6c0}
.finish-choices small{font-size:14px;line-height:1.3}
.finish-choices button[aria-pressed=true]{border:2px solid #bc0021}.finish-choices b{position:absolute;top:5px;right:4px;color:#bc0021}
.flow-floor-choices{margin:24px 0 8px;padding:18px;border:1px solid #d9deda;border-radius:10px;background:#fafaf8}
.flow-floor-choices h2{font-size:20px;margin:0 0 4px}
.floor-system-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}
.floor-system-choices button{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:7px;text-align:left;padding:10px;min-height:126px;border-radius:8px}
.floor-system-choices button[aria-pressed=true]{border:2px solid #bc0021;background:#fff8f8}
.floor-system-choices button:hover:not([aria-pressed=true]){border-color:#9aa6a3;background:#f5f7f6}
.floor-system-choices strong{font-size:15px}.floor-system-choices small{font-size:13px;line-height:1.35;color:#596266;font-weight:400}
.floor-sample{width:100%;height:45px;display:block;border-radius:5px;border:1px solid #aeb3b1;box-shadow:inset 0 1px 5px #0002}
.floor-sample.floor-chip{background-color:#929491;background-image:radial-gradient(ellipse at 15% 35%,#f3f1e7 0 2px,transparent 3px),radial-gradient(ellipse at 48% 74%,#303638 0 2px,transparent 3px),radial-gradient(ellipse at 75% 25%,#d5d5d0 0 2px,transparent 3px),radial-gradient(ellipse at 90% 85%,#5c6060 0 2px,transparent 3px),radial-gradient(ellipse at 27% 90%,#ccc9bc 0 2px,transparent 3px);background-size:31px 27px,37px 31px,29px 33px,42px 37px,35px 39px}
.floor-sample.floor-metallic{background:linear-gradient(135deg,#262c31,#a3a7a7 20%,#4e5861 38%,#dad9d3 53%,#667078 73%,#21282d)}
.floor-sample.floor-solid{background:linear-gradient(145deg,#b9b9bc,#8b8c90)}
.floor-color-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:12px 0}
.floor-color-choices button{min-width:0;min-height:100px;padding:7px;display:flex;flex-direction:column;gap:6px;align-items:stretch;text-align:center;background:#fff;border:2px solid #d9deda;border-radius:8px;color:#202427}
.floor-color-choices button[aria-pressed=true]{border-color:#bc0021;box-shadow:0 0 0 2px #bc002122}
.floor-color-choices strong{font-size:14px;line-height:1.35;overflow-wrap:anywhere}
.floor-color-sample{display:block;height:54px;border-radius:5px;border:1px solid #0002;background-color:var(--finish-color);background-size:cover;background-position:center;box-shadow:inset 0 1px 4px #0002}
.floor-color-sample{overflow:hidden;position:relative}
.floor-color-sample img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.floor-color-sample img[src*="floor-finishes"]{transform:scale(1.18);object-position:center 40%}
.floor-unsure .floor-color-sample{background:#eff1ed;display:grid;place-items:center}
.floor-question{font-size:30px;font-weight:600;color:#53605b}
.floor-pending-note{padding:10px;background:#edf1ea;border-radius:6px}
.garage-shape{border:0;padding:0;margin:14px 0 18px;display:flex;flex-wrap:wrap;gap:8px}
.garage-shape legend{font-weight:700;font-size:17px;margin-bottom:8px}
.garage-shape button{flex:1 1 150px;min-height:56px;background:#fff;color:#222;border:2px solid #c8cecd;border-radius:8px}
.garage-shape button[aria-pressed=true]{border-color:#bc0021;background:#fff6f7}
.custom-corners{display:grid;gap:8px;margin:14px 0}
.custom-outline{min-height:130px;padding:12px;background:#f7f8f5;border:1px solid #d6dbd8;border-radius:8px;color:#66706b;font-size:14px;line-height:1.5;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center}
.custom-outline svg{display:block;width:100%;max-width:300px;height:180px}.custom-outline small{font-size:12px}
.custom-corner{display:grid;grid-template-columns:1fr 1fr;gap:7px 12px;padding:12px;border:1px solid #d6dbd8;border-radius:8px;background:#fafaf8}
.custom-corner>strong{grid-column:1/-1}.custom-corner label{margin:0;font-size:14px}.custom-corner input{width:100%;min-height:46px;margin-top:5px}
.custom-corner>button{grid-column:1/-1;justify-self:start}.custom-corner-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.custom-corner-actions button{min-height:46px}
.included-note{display:flex;flex-direction:column;gap:6px;background:#f0f3ed;border-radius:9px;padding:15px}
.included-note span{font-size:14px;line-height:1.5}
#flow-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:3px 0 14px}
#flow-preview-heading .eyebrow{font-size:11px;color:#64716b;margin-bottom:6px}
#flow-preview-heading strong{font-size:19px}
#flow-preview-heading button{font-size:14px}
.flow-view-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px}
.flow-view-actions button{min-height:38px;padding:7px 11px;text-align:center}
.flow-view-actions button[aria-pressed="true"]{background:#b6001c;color:white;border-radius:7px}
.flow-view-actions button[hidden]{display:none}
#flow-fit-summary{background:#fff;border:1px solid #d9e0d4;border-left:4px solid #677c63;border-radius:10px;padding:18px 20px;margin-top:16px}
#flow-fit-summary strong{font-size:19px}#flow-fit-summary p{font-size:15px;color:#52615b;margin:8px 0 0}
#flow-fit-summary.problem{border-left-color:#bc0021;background:#fff6f6}#flow-fit-summary.problem strong{color:#a6001d}
#flow-fit-summary .text-button{font-size:14px;min-height:36px;padding:6px 0;margin-top:5px}
#flow-fit-summary .fit-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}
#flow-fit-summary .fit-scope{font-size:13px;color:#4e5753}
#flow-fit-summary details{margin-top:8px;font-size:13px;color:#52615b}
#flow-fit-summary details summary{cursor:pointer;text-decoration:underline}
.preview-choice{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.preview-choice button[aria-pressed=true]{background:#171c1c;color:white}
#flow-photo-slot #photo-controls{border:0;padding:0;background:transparent;margin-top:20px}
#flow-photo-slot #photo-controls h2{font-size:22px}
#flow-photo-slot #photo-controls .hint{font-size:15px}
#flow-photo-slot #photo-controls[data-stage=empty]>*:not(h2):not(p:first-of-type):not(.file-button){display:none}
#flow-photo-slot #photo-controls[data-stage=align]>label:not(.file-button),#flow-photo-slot #photo-controls[data-stage=align]>#photo-foreground-details,#flow-photo-slot #photo-controls[data-stage=align]>#flow-save-photo{display:none}
#flow-photo-slot #photo-controls>p:not(:first-of-type):not(#photo-result){display:none}
#flow-photo-slot #photo-controls>h2{margin-top:12px}
#photo-corner-progress{font-weight:600;color:#a30020}
#photo-inline-view{margin:16px 0}
#photo-align-details[open]{background:#f7f7f2;padding:0 12px 14px;border-radius:9px}
.flow-obstacle-item{display:flex;justify-content:space-between;gap:10px;align-items:center;padding-top:10px;font-size:14px}
.flow-total{background:#f1f3ee;border-radius:12px;padding:22px;display:flex;flex-direction:column;gap:10px}
.flow-total>span{font-size:16px}.flow-total strong{font-size:34px;letter-spacing:-1px}.flow-total small{font-size:14px;line-height:1.4}
.flow-includes{margin:23px 0;font-size:16px}.flow-includes>strong{font-size:19px}
.finish-actions{display:flex;flex-direction:column;gap:10px;margin-top:22px}
.finish-actions button{min-height:54px}
.flow-warning{padding:16px;background:#fff2f3;border-left:4px solid #bc0021;color:#8f0921;border-radius:8px}
#flow-quote-dialog{max-width:560px;width:94vw;border:1px solid #d2d6d0;border-radius:16px;padding:28px}
#flow-quote-dialog::backdrop{background:#0009}
#flow-quote-dialog h2{font-size:29px;letter-spacing:-.5px}
#flow-quote-dialog p,#flow-quote-dialog li{font-size:17px;line-height:1.6}
#flow-quote-dialog li{padding:8px 0}
.contact-link{display:block;font-size:18px;min-height:48px;padding:12px 0;color:#a80020}
#return-guided{align-self:flex-start}
footer{font-size:13px;line-height:1.5}
@media(max-width:1050px){.flow-progress button span{font-size:12px}.flow-progress button{padding:10px 7px}.customer-guided .workspace{grid-template-columns:360px minmax(0,1fr);gap:20px}.customer-guided main{padding:20px 24px}.entry-choice{padding:22px}.entry-choice .choice-title{font-size:24px}#flow-panel{padding:21px}.finish-choices{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){
 .customer-guided header{height:65px;padding:0 18px}.customer-guided header nav{font-size:13px}.brand{font-size:18px}
 .customer-guided main{padding:16px}.customer-guided .workspace{display:flex;flex-direction:column;gap:20px}.customer-guided .workspace>aside{width:100%}
 .customer-guided .visual-workspace{position:static;order:0;width:100%}
 .customer-guided.photo-inline-active .visual-workspace{display:none}
 #photo-inline-view #flow-fit-summary{padding:12px;margin-top:12px}
 #customer-entry{margin:16px auto 30px}#customer-entry h1{font-size:35px;letter-spacing:-1.2px;margin:10px 0}.entry-intro{font-size:16px}.entry-header{align-items:flex-start}.entry-progress{width:220px}.entry-choice{padding:18px}
 .entry-choices{grid-template-columns:1fr;gap:14px;margin:23px 0}.entry-choice{display:grid;grid-template-columns:88px 1fr;gap:8px 13px;padding:18px;text-align:left}
 .entry-choice svg{grid-row:1/4;width:88px;height:95px;align-self:center}.entry-choice .choice-title{font-size:22px}.entry-choice>span:not(.choice-title):not(.choice-link){font-size:15px}
 .entry-choice .choice-link{font-size:15px;padding-top:10px}.entry-choice br{display:none}.entry-reassurance{font-size:13px}
 .flow-titlebar{flex-wrap:wrap;gap:4px 12px}.flow-titlebar>.text-button{flex-basis:100%;font-size:15px;justify-content:flex-start}.flow-titlebar #flow-save-note{margin-left:0;flex:1}
 .flow-progress{grid-template-columns:repeat(6,1fr);gap:4px;margin:16px 0 12px}.flow-progress button{min-height:43px;padding:6px;justify-content:center}.flow-progress button b{margin:0;min-width:25px;height:25px}.flow-progress button span{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}
 #flow-mode-note{margin-bottom:13px;font-size:14px}#flow-panel{padding:22px 18px}#flow-panel h1{font-size:29px}#flow-step-help{font-size:16px}
 .package-choice{grid-template-columns:75px minmax(0,1fr);padding:12px;gap:10px}.package-choice img{height:75px}.package-choice button{grid-column:2;justify-self:start}.package-choice small{font-size:13px}.package-choice strong{font-size:17px}
 .finish-choices{grid-template-columns:repeat(3,1fr)}.finish-choices small{font-size:14px}.finish-choices button{min-height:112px}
 .floor-system-choices{grid-template-columns:1fr}.floor-system-choices button{min-height:78px;display:grid;grid-template-columns:90px 1fr;align-items:center;column-gap:12px}.floor-sample{grid-row:1/3;height:54px}
 .flow-size-inputs{gap:12px}.flow-size-inputs label{font-size:15px}.flow-size-inputs input{font-size:23px;padding:13px}
 .flow-navigation{position:static;background:white;padding:14px 0 4px}
 #flow-preview-heading strong{font-size:17px}.customer-guided #scene-wrap{aspect-ratio:1.15}
 #flow-fit-summary strong{font-size:18px}.flow-wall-list button{min-height:102px}
 .customer-guided footer{padding:25px 18px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Five clear customer milestones, including the space choice. */
.customer-guided .flow-progress,.flow-progress{grid-template-columns:repeat(4,minmax(0,1fr))}
.wall-choice canvas{width:100%;height:82px;object-fit:contain;border-radius:6px;background:#f5f5f2}
.wall-choice>b{font-size:14px}.wall-choices{align-items:stretch}
.quick-actions,.simple-placement{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.simple-placement label{flex-basis:100%}.control-error,#new-wall-error{color:#a40021;font-weight:600}
#flow-add-wall-dialog,#flow-quote-dialog{width:min(600px,94vw);max-height:90dvh;overflow:auto;border:1px solid #bfc2c5;border-radius:14px;padding:24px}
#flow-quote-dialog label,#flow-add-wall-dialog label{display:grid;gap:7px;margin:14px 0;font-weight:600}
#flow-quote-dialog input,#flow-quote-dialog textarea,#flow-add-wall-dialog input,#flow-add-wall-dialog select{width:100%;box-sizing:border-box;min-height:48px;font:inherit;padding:10px;border:1px solid #8b9196;border-radius:6px}
#flow-quote-dialog button,#flow-add-wall-dialog button{min-height:46px;margin:4px 6px 4px 0}
#handoff-result{white-space:pre-wrap;font-weight:600;line-height:1.6}#handoff-resume{display:block;overflow-wrap:anywhere}#handoff-resume[hidden]{display:none}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #1268bd;outline-offset:3px}
@media(max-width:760px){.customer-guided .flow-progress,.flow-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-actions>button{flex:1 1 150px}#flow-quote-dialog,#flow-add-wall-dialog{padding:16px}}
/* Custom outlines temporarily occupy the existing preview column. */
.customer-custom-room-unmeasured .visual-workspace{position:static;}
.customer-custom-room-unmeasured #flow-preview-heading .flow-view-actions{display:none;}
#flow-custom-workspace .custom-shape-editor{margin:0;padding:20px;border:1px solid #d2d8d4;border-radius:16px;background:#fff;}
#flow-custom-workspace .custom-shape-editor>svg{width:100%;max-width:820px;height:auto;min-height:300px;touch-action:manipulation;cursor:crosshair;}
.customer-custom-room-unmeasured #flow-custom-draw.can-close .custom-start-point{transform-box:fill-box;transform-origin:center;transition:transform .12s ease;cursor:pointer;}
.customer-custom-room-unmeasured #flow-custom-draw.can-close .custom-start-point:hover{transform:scale(1.35);stroke:#bc0021;stroke-width:3;}
.custom-wall-lengths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;}
.custom-wall-lengths h2,.custom-wall-lengths>p,.custom-wall-lengths>button{grid-column:1/-1;}
.custom-wall-lengths label{font-weight:700;}
.custom-wall-lengths input{display:block;width:100%;min-height:52px;margin-top:6px;padding:10px;border:2px solid #8c9691;border-radius:8px;font-size:18px;}
@media(max-width:760px){#flow-custom-workspace .custom-shape-editor{padding:13px;}#flow-custom-workspace .custom-shape-editor>svg{min-height:220px;}.custom-wall-lengths{grid-template-columns:1fr;}}
/* One highlighted wall and one readable measurement at a time. This occupies
   the existing visualizer column until the connected room is measured. */
#flow-custom-workspace .guided-measure-card{padding:16px 20px;border:1px solid #d2d8d4;border-radius:16px;background:#fff;}
#flow-custom-workspace .guided-measure-card #flow-measure-outline{display:block;width:100%;max-width:460px;min-height:0;height:auto;max-height:300px;margin:0 auto 8px;touch-action:manipulation;}
.guided-measure-wall>line:first-child{stroke:#303938;stroke-width:4;stroke-linecap:round;}
.guided-measure-wall.is-active>line:first-child{stroke:#bc0021;stroke-width:7;}
.guided-measure-wall text{font:700 11px Arial,sans-serif;fill:#27312e;pointer-events:none;}
.guided-measure-wall.is-active text{fill:#bc0021;}
.guided-measure-wall .guided-measure-hit{stroke:transparent;stroke-width:18;pointer-events:stroke;cursor:pointer;}
#flow-measure-outline circle{fill:#fff;stroke:#303938;stroke-width:2;pointer-events:none;}
#flow-measure-outline circle.is-active{fill:#bc0021;stroke:#fff;stroke-width:2;}
#flow-measure-outline .guided-measure-number{cursor:pointer}
#flow-measure-outline .guided-measure-number circle,#flow-measure-outline .guided-measure-number text{pointer-events:all}
#flow-measure-outline .guided-measure-number circle{fill:#fff;stroke:#59645f;stroke-width:1.4}
#flow-measure-outline .guided-measure-number text{font:700 11px Arial,sans-serif;fill:#26312d}
#flow-measure-outline .guided-measure-number.is-active circle{fill:#bc0021;stroke:#bc0021}
#flow-measure-outline .guided-measure-number.is-active text{fill:#fff}
.guided-measure-prompt{max-width:640px;margin:auto;}
.guided-measure-prompt h2{font-size:22px;line-height:1.2;margin:3px 0 10px;}
.guided-measure-count{margin:0;font-size:12px;font-weight:800;letter-spacing:.07em;color:#bc0021;}
.guided-measure-prompt label{display:block;font-size:15px;font-weight:700;margin:0;}
.guided-measure-entry{display:flex;gap:10px;align-items:stretch;}
.guided-measure-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;flex:1;min-width:0}
.guided-measure-fields input{display:block;width:100%;min-width:0;font-size:20px;font-weight:700;min-height:54px;padding:9px 12px;margin-top:5px;border:2px solid #8c9691;border-radius:8px;}
.guided-measure-entry button{min-width:180px;min-height:54px;}
.guided-measure-note{min-height:0;margin:8px 0 0;color:#36544b;font-size:14px;line-height:1.4}
.guided-measure-note:empty{display:none}
#flow-use-closing-length:not([hidden]){display:block;min-height:42px;margin:4px 0 10px;border-color:#bc0021;color:#a9001f;background:#fff}
#flow-measure-error{min-height:20px;margin:6px 0;color:#b00020;font-size:14px;font-weight:700;}
.guided-measure-progress{display:flex;gap:7px;flex-wrap:wrap;margin:5px 0 8px;}
.guided-measure-progress button{width:38px;height:38px;padding:0;border:1px solid #8c9691;border-radius:50%;background:#fff;font-weight:700;}
.guided-measure-progress button.has-length{background:#e9eeea;}
.guided-measure-progress button[aria-current=step]{border:2px solid #bc0021;background:#bc0021;color:#fff;}
.guided-measure-prompt .hint{margin:6px 0 0;font-size:13px;}
@media(max-width:760px){#flow-custom-workspace .guided-measure-card{padding:12px;}#flow-custom-workspace .guided-measure-card #flow-measure-outline{max-width:100%;max-height:290px;}.guided-measure-entry{flex-direction:column;}.guided-measure-entry button{min-width:0;}}
@media(max-width:760px){header{height:68px;padding:0 16px}header>a img{width:125px;height:56px}header nav{gap:14px;font-size:12px}.entry-header{display:block}.entry-progress{width:100%;margin-top:20px}.entry-choices{grid-template-columns:1fr;gap:12px}.entry-choice svg{height:88px}.entry-section-title{font-size:21px}}

#photo-corner-example{width:180px;height:90px;display:block}#photo-corner-example[data-corner="1"] .corner-1,#photo-corner-example[data-corner="2"] .corner-2,#photo-corner-example[data-corner="3"] .corner-3,#photo-corner-example[data-corner="4"] .corner-4{fill:#bd0025}#scene-wrap.photo-zoomed{overflow:auto;max-height:70vh}#scene-wrap.photo-zoomed #photo-canvas{height:auto;object-fit:fill;position:relative;display:block}#photo-protect-help{font-size:16px}

.flow-wall-list{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.flow-wall-list button{min-width:0;max-width:100%;overflow-wrap:anywhere}.flow-wall-list canvas{width:100%;max-width:100%;height:auto;aspect-ratio:2.15;object-fit:contain}.flow-wall-list b{font-size:14px}
.placement-buttons{display:flex;flex-wrap:wrap;gap:8px}.simple-placement h2{margin:0;font-size:19px}
.flow-progress button{min-height:58px;border-radius:5px;font-family:'Open Sans',Arial,sans-serif}
.flow-progress button b{font-family:'Open Sans',Arial,sans-serif}
#flow-preview-heading small{display:block;margin-top:4px;font-size:12px;line-height:1.45;color:#737a7e}
@media(max-width:760px){.flow-progress button span{position:static;clip-path:none;width:auto;height:auto;overflow:visible;font-size:14px}.flow-progress button{justify-content:flex-start;gap:7px;min-height:52px}}
.shape-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.shape-cards legend{grid-column:1/-1}.shape-cards button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px;min-width:0}.shape-cards button svg{width:100%;max-width:170px;height:82px}.shape-cards button strong{font-size:14px}.separate-wall-row{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:end;margin:10px 0}.separate-wall-row label{min-width:0}.separate-wall-row input{max-width:100%}.floor-original{background:linear-gradient(150deg,#888b89,#b6b8b2)}
.custom-shape-editor{margin:12px 0;padding:14px;border:1px solid #d5dad5;border-radius:9px;background:#fafbf9}.custom-shape-editor>p:first-child{margin-top:0}.custom-shape-editor svg{display:block;width:100%;max-width:560px;height:auto;aspect-ratio:3/2;margin:8px auto;touch-action:manipulation;cursor:crosshair}.custom-shape-actions{display:flex;flex-wrap:wrap;gap:8px}.custom-line-measures{border:0;padding:0;margin:16px 0}.custom-line-measures legend{font-weight:700;font-size:17px;margin-bottom:8px}.custom-line-measures label{display:inline-flex;flex-direction:column;width:calc(50% - 12px);margin:6px 8px 6px 0}
@media(max-width:760px){.shape-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.shape-cards button svg{height:68px}.separate-wall-row{grid-template-columns:1fr 1fr}.separate-wall-row button{grid-column:1/-1}.floor-system-choices{grid-template-columns:1fr}.custom-line-measures label{width:100%;margin-right:0}}

#flow-geometry-editor{background:#fff;border:1px solid #d6dad1;border-radius:14px;padding:18px 22px;margin:0 0 14px}#flow-geometry-editor>h2{font-size:20px;margin:0 0 12px}.geometry-helper{padding:16px;border-radius:10px;background:#f6f7f4;color:#515a57;line-height:1.6}.customer-pending-new #flow-geometry-editor{margin-bottom:14px}#flow-geometry-editor>.primary{margin-top:12px;width:100%}@media(max-width:700px){#flow-geometry-editor{padding:15px}.customer-pending-new #flow-empty-preview{padding:22px 16px}}
/* Direct, readable wall editing beside the live 3D model. */
#flow-live-editor{margin:14px 0 22px;background:#fff;border:1px solid #d6dad1;border-radius:14px;padding:16px;box-shadow:0 5px 18px #1c25200c}
.flow-space-options{margin-top:16px;border:1px solid #d8dcd6;border-radius:9px;padding:0 14px;background:#fbfcfa}
.flow-space-options>summary,#flow-edit-measured-walls>summary{font-weight:700;cursor:pointer;padding:11px 2px;min-height:48px}
.flow-space-options .garage-setup{padding:0 2px 14px}
.flow-space-options .garage-setup>h2,.flow-space-options .garage-setup>p:first-of-type{display:none}
#flow-live-editor:has(#flow-edit-measured-walls){padding:0 16px;margin-top:10px}
#flow-edit-measured-walls .flow-plan-card{padding:7px 0 16px}
.flow-plan-card h2{font-size:20px;margin:0 0 4px}.flow-plan-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.flow-plan-heading p{margin:0;color:#58625e;font-size:14px}.flow-plan-tools{display:flex;gap:8px}.flow-plan-tools button,.flow-history button{min-height:42px;padding:8px 13px}.flow-plan-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,270px);gap:14px;align-items:center;margin-top:12px}
.flow-plan-svg{display:block;width:100%;min-height:250px;max-height:420px;background:#f7f8f5;border:1px solid #d9ddda;border-radius:10px;touch-action:manipulation}.plan-wall{cursor:pointer;outline:none}.plan-hit{stroke:transparent;stroke-width:30;pointer-events:stroke}.plan-edge{stroke:#313a37;stroke-width:9;stroke-linecap:round;pointer-events:none}.plan-dimension{stroke:#7a8580;stroke-width:2;stroke-dasharray:5 4;pointer-events:none}.plan-wall.is-selected .plan-edge{stroke:#bc0021;stroke-width:12}.plan-endpoint{fill:#fff;stroke:#29312e;stroke-width:2;pointer-events:none}.plan-wall.is-selected .plan-endpoint{fill:#bc0021;stroke:#fff;stroke-width:3}.plan-label-bg{fill:#fff;stroke:#8d9791;stroke-width:1;pointer-events:none}.plan-wall.is-selected .plan-label-bg{fill:#fff2f4;stroke:#bc0021;stroke-width:2}.plan-label{font:700 13px Arial,sans-serif;fill:#202724;pointer-events:none}.plan-wall:focus-visible .plan-edge{stroke:#bc0021;stroke-width:14}.plan-wall-editor{padding:16px;border:1px solid #d8ddda;border-radius:10px;background:#fbfbfa}.plan-wall-editor .eyebrow{font-size:11px;color:#b00020;letter-spacing:.08em;margin:0 0 6px}.plan-wall-editor h3{font-size:21px;margin:0 0 14px}.plan-wall-editor label{display:block;font-size:15px;font-weight:700}.plan-wall-input-row{display:flex;align-items:center;gap:8px;margin-top:7px}.plan-wall-input-row input{min-width:0;width:100%;font-size:18px;font-weight:700;min-height:58px;padding:10px;border:2px solid #8c9691;border-radius:7px}.plan-wall-input-row span{font-size:13px;color:#4f5a54;white-space:nowrap}.plan-edit-status{font-size:14px;line-height:1.5;color:#39443e}.plan-measurement-note{margin:10px 2px 0;font-size:14px;line-height:1.45;color:#4d5852}.flow-history{display:flex;gap:6px}.customer-guided .flow-titlebar{align-items:center}
.plan-wall.is-conflict .plan-edge{stroke:#e19b00;stroke-width:14}.plan-wall.is-conflict .plan-label-bg{stroke:#ac7100;stroke-width:3}.flow-plan-wall-list button.is-conflict{border:2px solid #ac7100;background:#fff4d7}.plan-wall-input-row label{flex:1;min-width:0}.plan-wall-input-row input[aria-invalid=true]{border-color:#bc0021}
.flow-plan-svg.complex-outline .plan-label-bg,.flow-plan-svg.complex-outline .plan-label{display:none}.flow-plan-wall-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.flow-plan-wall-list button{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:9px 12px;border:1px solid #cbd1cd;border-radius:8px;background:#fff;text-align:left}.flow-plan-wall-list button[aria-pressed=true]{border:2px solid #bc0021;background:#fff7f8}.flow-plan-wall-list strong{font-size:14px}.flow-plan-wall-list span{font-size:13px;color:#505b55}
.flow-garage-door{border:1px solid #d3dad4;border-radius:10px;padding:10px 14px;margin:12px 0;background:#fafbf9}.door-choice{display:flex;align-items:center;gap:12px;margin:0;cursor:pointer}.door-choice input{width:22px;height:22px;min-height:22px;flex:none;accent-color:#bc0021}.door-choice span{display:grid;gap:2px}.door-choice strong{font-size:16px}.door-choice small{font-size:13px;font-weight:400;color:#4e5c55}.door-wall-choice{display:block;margin:10px 0 4px}.door-wall-choice select{width:100%;margin-top:5px}.flow-garage-door .hint{margin:7px 0 0;font-size:13px}
.flow-garage-door .door-choice{display:flex;flex-direction:row;align-items:center;gap:12px;margin:0}.flow-garage-door .door-choice input{margin:0;padding:0;flex:0 0 22px}
.flow-preview-lead{display:flex;align-items:center;gap:14px;min-width:0}.flow-preview-lead>div{min-width:0}#flow-switch-view{white-space:nowrap;border-color:#bc0021;color:#a40021;background:#fff;font-weight:700}.flow-garage-door>button{width:100%}.flow-garage-door>p{margin:4px 0}.flow-garage-door .door-actions{display:flex;gap:8px;margin-top:10px}.flow-garage-door .door-actions button{flex:1}.flow-garage-door .door-prompt{font-size:17px;font-weight:700;color:#a40021}.door-picking .flow-plan-layout{grid-template-columns:1fr}.door-picking .flow-plan-svg{max-height:480px}.door-picking .plan-wall:hover .plan-edge,.door-picking .plan-wall:focus-visible .plan-edge{stroke:#bc0021;stroke-width:14}.door-picking .flow-plan-wall-list button:hover,.door-picking .flow-plan-wall-list button:focus-visible{border-color:#bc0021;background:#fff4f5}
@media(max-width:700px){#flow-preview-heading{align-items:flex-start;flex-direction:column;gap:8px}.flow-preview-lead{width:100%;align-items:flex-start;flex-direction:column;gap:8px}.flow-view-actions{justify-content:flex-start}.flow-preview-lead>div{width:100%}}
.flow-wall-list{grid-template-columns:1fr;gap:6px;margin:10px 0 14px}.flow-wall-list button{flex-direction:row;align-items:center;min-height:58px;gap:10px;padding:7px 10px}.flow-wall-list canvas{width:76px;min-width:76px;height:39px;aspect-ratio:auto}.flow-wall-card-text{display:flex;flex-direction:column;gap:1px;min-width:0}.flow-wall-card-text strong{font-size:15px}.flow-wall-card-text span,.flow-wall-card-text small{font-size:12px;line-height:1.25}.flow-wall-list b{display:none}
.customer-guided[data-flow-step="2"] #scene-wrap{aspect-ratio:1.75}.customer-guided[data-flow-step="2"] #flow-fit-summary{margin-top:12px}
.package-choice{width:100%;cursor:pointer}.package-choice[aria-pressed="true"]{border:2px solid #bc0021;background:#fff7f7}.package-choice:disabled{opacity:1;cursor:not-allowed;color:#202327;background:#fafafa}.package-choice-action{grid-column:2;justify-self:start;color:#a50020;font-size:13px}.package-choice:disabled .package-choice-action{color:#8b4048}.package-choice:not(:disabled):hover{border-color:#bc0021;box-shadow:0 4px 14px #6a172014}
.customer-guided .flow-navigation{position:static;background:#fff;padding:12px 0;margin-top:18px}
.simple-placement.flow-optional{display:block;margin:12px 0}.simple-placement.flow-optional>summary{min-height:48px;display:flex;align-items:center;font-weight:700}.simple-placement.flow-optional .placement-buttons{margin-top:8px}
@media(max-width:700px){.flow-wall-list{grid-template-columns:1fr}.flow-wall-list button{min-height:58px}.flow-wall-list canvas{width:66px;min-width:66px;height:35px}.customer-guided[data-flow-step="2"] #scene-wrap{aspect-ratio:1.15}}
@media(max-width:900px){.flow-plan-layout{grid-template-columns:minmax(0,1fr) 230px}.flow-plan-svg{min-height:230px}}
@media(max-width:700px){#flow-live-editor{padding:12px}.flow-plan-heading{align-items:flex-start;flex-direction:column}.flow-plan-tools{width:100%}.flow-plan-tools button{flex:1}.flow-plan-layout{grid-template-columns:1fr}.plan-wall-editor{order:-1}.flow-plan-svg{min-height:230px}.plan-wall-input-row input{font-size:20px}.flow-history{gap:4px}.flow-history button{padding:7px 9px}}

/* A wall's visible label is part of its button, including outside the line hit strip. */
.plan-label-bg,.plan-label{pointer-events:auto;cursor:pointer}
.plan-hit{stroke-width:44}
.flow-plan-wall-list button{min-width:0;flex-wrap:wrap;overflow-wrap:anywhere}
.flow-plan-wall-list strong,.flow-plan-wall-list span{min-width:0}
.flow-view-actions button{min-height:44px;padding:9px 11px}
@media(max-width:760px){
 .customer-guided[data-flow-step="6"] .visual-workspace{order:-1}
}
