.studio .wrap{max-width:1280px}.wizard-form{max-width:1030px}.wizard-progress{max-width:1030px}.wizard-progress ol{grid-template-columns:repeat(7,minmax(0,1fr))}.wizard-progress{scroll-margin-top:25px}.wizard-panel{padding:38px}.wizard-panel>h3{font-size:30px}.wizard-description{font-size:15px;max-width:650px}.wizard-panel legend,.wizard-panel .field{font-size:15px}.wizard-panel legend{margin-bottom:15px;font-weight:700}.wizard-panel .hint,.wizard-panel .confirmation{font-size:13px;line-height:1.8}.wizard-panel .field>input,.wizard-panel .field>select,.wizard-panel textarea{font-size:15px;padding:14px;min-height:48px}.wizard-panel fieldset{margin-bottom:28px}.wizard-panel .styles span{min-height:44px;display:flex;align-items:center;font-size:13px}.wizard-navigation .button,.wizard-navigation .small-button{min-height:48px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.plan-card{position:relative;cursor:pointer;min-width:0}.plan-card>input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0}.plan-body{display:flex;flex-direction:column;border:2px solid #d5dfe6;border-radius:8px;padding:22px 18px;height:100%;background:white;transition:border-color .15s}.plan-card input:checked+.plan-body{border-color:var(--navy);background:#f1f6e8;box-shadow:inset 0 4px var(--lime)}.plan-card input:focus-visible+.plan-body,.choice input:focus-visible+span{outline:3px solid #42647b;outline-offset:4px}.plan-name{font-size:18px;font-weight:700;display:flex;justify-content:space-between;gap:8px}.plan-check{visibility:hidden}.plan-card input:checked+.plan-body .plan-check{visibility:visible}.plan-price{font-size:34px;font-weight:800;letter-spacing:-1px;margin:14px 0 5px}.plan-tag{font-size:12px;color:var(--muted);line-height:1.6;margin-bottom:20px}.plan-features{display:flex;flex-direction:column;gap:12px;font-size:12px;line-height:1.7}.upfront-addons{display:flex;gap:15px;flex-wrap:wrap;margin:24px 0 15px}.upfront-addons>span{background:#e8eef2;padding:13px 16px;border-radius:5px;font-size:13px}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.choice{position:relative;cursor:pointer}.choice>input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.choice>span{display:flex;flex-direction:column;justify-content:center;gap:7px;min-height:78px;border:2px solid var(--line);border-radius:7px;padding:18px;font-size:15px;font-weight:600;background:white}.choice input:checked+span{border-color:var(--navy);background:#edf4e0}.choice small{font-size:12px;font-weight:400}.two-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.field{display:block}.measure-input{position:relative;display:block;margin:12px 0 22px}.measure-input>input{width:100%;font:inherit;font-size:17px;padding:14px 85px 14px 15px;border:1px solid #a9bdca;border-radius:5px;background:white;min-height:50px;color:var(--navy)}.measure-input>span{position:absolute;right:16px;top:16px;font-size:13px;color:var(--muted)}.help-box{font-size:14px;line-height:1.8;padding:20px;border-radius:6px;background:#eaf0f4;margin:20px 0}.help-box strong{font-weight:700}.measure-diagram{position:relative;width:100%;max-width:450px;height:220px;margin:10px auto 30px;padding:20px 75px 35px 25px}.diagram-store{position:relative;width:100%;height:100%;border:3px solid var(--navy);background:#e6eced}.diagram-sign{position:absolute;top:0;left:0;right:0;background:var(--navy);color:var(--lime);padding:12px 5px;text-align:center;font-size:12px;letter-spacing:2px}.diagram-door{position:absolute;bottom:0;left:15%;width:24%;height:55%;background:#c1d4e0;border:2px solid var(--navy);border-bottom:0}.diagram-window{position:absolute;bottom:20%;right:12%;width:35%;height:35%;background:#c1d4e0;border:2px solid var(--navy)}.width-arrow{position:absolute;left:25px;right:75px;bottom:8px;text-align:center;font-size:13px;letter-spacing:2px}.height-arrow{position:absolute;right:0;top:95px;font-size:12px;font-weight:700}.measure-help,details{font-size:14px;line-height:1.8;border-top:1px solid var(--line);padding-top:16px;margin:25px 0}.measure-help summary,summary{cursor:pointer;font-weight:600;min-height:44px}.custom-route{background:#fff3de;border:1px solid #cdae77;border-radius:7px;padding:24px;font-size:14px;line-height:1.8}.photo-tips{display:flex;gap:25px;list-style:decimal;padding:20px 20px 20px 40px;background:#edf1f3;border-radius:6px;font-size:13px;line-height:1.8;margin-bottom:30px}.photo-tips li{padding-left:4px;flex:1}.upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.upload-grid:not(:has(#side-upload:not([hidden]))){grid-template-columns:1fr}.upload-grid fieldset{margin:0}.file-card{border:1px solid #c4d2db;border-radius:8px;background:white;padding:20px;min-width:0}.file-card>h4{font-size:17px;margin:0 0 10px}.file-card>p{font-size:13px;line-height:1.8}.file-picker{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:200px;border:2px dashed #9eb1bf;background:#f1f5f6;border-radius:6px;text-align:center;padding:20px;cursor:pointer}.file-picker input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.file-picker strong{font-size:15px}.file-picker>span{font-size:12px}.file-picker .file-symbol{font-size:35px}.file-picker:focus-within{outline:3px solid #42647b;outline-offset:4px}.file-card small{display:block;font-size:11px;color:var(--muted);margin-top:14px}.file-card .attachment-preview{height:230px;object-fit:contain;margin-bottom:0;background:#f1f5f6;border-radius:6px}.file-message{overflow-wrap:anywhere}.file-actions{display:flex;gap:15px;align-items:center}.text-button{padding:10px 4px;min-height:44px;border:0;background:transparent;color:var(--navy);font-size:13px;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.file-actions .small-button{min-height:44px}.live-price{max-width:1030px;margin:24px auto 0;background:var(--navy);border-radius:8px;padding:22px 28px;color:white}.live-price>div{display:flex;align-items:center;justify-content:space-between;gap:20px}.live-price span{font-size:13px}.live-price strong{font-size:27px;color:var(--lime)}.live-price p{font-size:13px;margin:10px 0}.live-price small{font-size:11px;color:#d0dce4}.draft-tools{display:flex;align-items:center;gap:12px;margin-top:20px;font-size:12px;color:var(--muted)}.review-block{border:1px solid var(--line);border-radius:6px;padding:20px;margin-bottom:15px}.review-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.review-heading h4{margin:0;font-size:16px}.review-block p{font-size:14px;line-height:1.8;margin:12px 0;overflow-wrap:anywhere}.review-photos{display:flex;gap:15px;flex-wrap:wrap}.review-photos figure{margin:10px 0 0;max-width:160px}.review-photos img{width:100%;height:120px;object-fit:contain;background:#edf1f3}.review-photos figcaption{font-size:12px;margin-top:5px}.price-lines{font-size:14px;margin:15px 0}.price-lines>div{display:flex;justify-content:space-between;gap:15px;margin:14px 0}.price-lines dd{margin:0;white-space:nowrap}.price-total{padding-top:15px;border-top:1px solid var(--line);font-size:21px;font-weight:700}.delivery-list{font-size:14px;line-height:1.9;padding-left:20px}.wizard-panel .button{min-height:48px;margin:15px 0}.wizard-panel .text-button{display:inline-block}.wizard-form #form-status{font-size:14px;color:#9a3820;line-height:1.8}.wizard-form [aria-invalid=true]{outline:2px solid #b64b33;outline-offset:3px}.wizard-panel:has(.plan-grid){padding-bottom:25px}
@media(max-width:850px){.plan-grid{gap:10px}.plan-body{padding:20px 12px}.plan-price{font-size:28px}.wizard-panel{padding:28px}.wizard-progress li{font-size:10px}.live-price strong{font-size:24px}}
@media(max-width:600px){.wizard-progress ol{display:flex;gap:5px}.wizard-progress li{font-size:0;flex:1;gap:0;padding-top:8px}.wizard-progress li>span{font-size:12px}.wizard-progress>p{font-size:13px}.wizard-panel{padding:24px 18px}.wizard-panel>h3{font-size:25px}.plan-grid{grid-template-columns:1fr}.plan-body{padding:20px}.plan-price{font-size:30px;margin:8px 0}.plan-features{gap:7px}.plan-tag{margin-bottom:12px}.two-fields,.choice-grid,.upload-grid{grid-template-columns:1fr;gap:8px}.choice>span{min-height:65px}.photo-tips{display:block;padding-left:35px}.photo-tips li{margin-bottom:8px}.live-price{padding:20px}.live-price>div{align-items:flex-start;flex-direction:column;gap:8px}.live-price strong{font-size:25px}.upfront-addons{gap:8px}.upfront-addons>span{width:100%}.draft-tools{flex-wrap:wrap;gap:2px}.measure-diagram{padding-right:65px}.width-arrow{right:65px}.height-arrow{font-size:10px}.review-block{padding:15px}.wizard-navigation{align-items:stretch}.wizard-navigation #wizard-next{max-width:75%;font-size:12px}.file-actions{gap:8px}.wizard-description{font-size:14px}}
@media(prefers-reduced-motion:reduce){.plan-body{transition:none}}
/* Visual style references */
.style-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:22px 0}.style-card{position:relative;display:block;min-width:0;cursor:pointer}.style-card>input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0;z-index:1}.style-card-body{display:block;border:2px solid #d4dfe5;border-radius:9px;overflow:hidden;background:white;height:100%;padding-bottom:18px}.style-card img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.style-card-title{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:18px;font-weight:700;padding:17px 18px 8px}.style-selected{visibility:hidden;background:var(--navy);color:var(--lime);border-radius:100%;width:25px;height:25px;text-align:center;line-height:25px}.style-card-description{display:block;padding:0 18px;font-size:13px;line-height:1.8;color:var(--muted)}.style-card input:checked+.style-card-body{border-color:var(--navy);box-shadow:0 0 0 2px var(--lime)}.style-card input:checked+.style-card-body .style-selected{visibility:visible}.style-card input:focus-visible+.style-card-body{outline:3px solid #42647b;outline-offset:4px}.suggest-style{display:block}.suggest-style>span{background:#eef4e4}.style-fieldset>legend{font-size:17px}
/* Original photo and normalized annotations remain independent */
.upload-grid:has(.photo-editor){grid-template-columns:1fr}.file-card.has-photo-editor>.attachment-preview{display:none}.photo-editor{margin-top:24px;border-top:1px solid var(--line);padding-top:22px}.photo-editor h5{font-size:17px;margin:0 0 12px}.photo-editor>p,.photo-editor details{font-size:13px;line-height:1.8}.markup-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.markup-tools button{min-height:44px}.markup-tools button[aria-pressed=true]{background:var(--navy);color:var(--lime);border-color:var(--navy)}.markup-instruction{background:#fff0e9;border-left:3px solid #d34434;padding:13px 16px;min-height:64px}.annotation-stage{position:relative;width:100%;overflow:hidden;background:#edf1f3;border-radius:6px;user-select:none;max-width:100%}.annotation-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none}.annotation-stage svg{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:crosshair}.area-polygon{fill:#ed463622;stroke:#ef4a38;stroke-width:3;vector-effect:non-scaling-stroke;pointer-events:none}.area-handle{fill:white;stroke:#d62e1d;stroke-width:3;vector-effect:non-scaling-stroke;cursor:move}.reference-line{stroke:#ffde36;stroke-width:4;vector-effect:non-scaling-stroke;pointer-events:none}.reference-handle{fill:#ffde36;stroke:#122b40;stroke-width:2;vector-effect:non-scaling-stroke;cursor:move}.pending-handle{fill:#ef4a38;stroke:white;stroke-width:2;vector-effect:non-scaling-stroke;pointer-events:none}.markup-keyboard{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-top:15px}.markup-keyboard label{font-size:12px;display:flex;gap:10px;align-items:center}.markup-keyboard select{padding:10px;border:1px solid #b9c9d3;border-radius:4px;font-size:12px;background:white;min-height:44px;max-width:200px}.nudge-buttons{display:flex;gap:7px}.nudge-buttons button{width:44px;height:44px;background:#edf1f3;border:1px solid #a9bdca;border-radius:5px;font-size:20px;color:var(--navy);cursor:pointer}.markup-measures{font-weight:600;background:#eaf0f4;padding:14px;border-radius:5px}.photo-editor .confirmation{margin:18px 0}.markup-feedback{font-weight:500;color:#4e6553}.review-photo-marked{position:relative}.review-photo-marked img{display:block;width:100%;height:auto;max-height:none;object-fit:fill}.review-photo-marked svg{position:absolute;inset:0;width:100%;height:100%}.review-photos figure{max-width:260px;flex:1;min-width:160px}.preview-waiting{padding:28px;border:1px solid #c7d6df;border-radius:8px;background:#f0f4f6;margin:25px 0;font-size:14px;line-height:1.9}.preview-time{display:flex;gap:18px;align-items:flex-start}.preview-clock{display:flex;align-items:center;justify-content:center;width:55px;height:55px;flex-shrink:0;border-radius:12px;font-size:35px;background:var(--navy);color:var(--lime)}.preview-time h4{font-size:19px;margin:0 0 5px}.preview-time p{margin:0}.generation-stages{padding-left:22px;font-size:13px}.generation-stages li{padding:6px 0}.generation-state{border:1px dashed #a0b3c1;border-radius:5px;background:#fafbf9;padding:18px;font-size:13px}.generation-state p{margin:8px 0 0}.preview-waiting .hint{font-size:12px}
@media(max-width:600px){.style-gallery{grid-template-columns:1fr;gap:18px}.style-card-title{font-size:18px}.photo-editor h5{font-size:16px}.markup-tools{gap:7px}.markup-tools button{font-size:11px;padding:10px}.markup-tools .text-button{width:100%;text-align:left}.markup-keyboard{display:block}.markup-keyboard label{display:block}.markup-keyboard select{display:block;max-width:100%;width:100%;margin:8px 0}.nudge-buttons{justify-content:center}.preview-waiting{padding:20px}.preview-time{gap:12px}.preview-clock{width:42px;height:42px;font-size:28px}.preview-time h4{font-size:17px}.review-photos figure{max-width:100%;flex-basis:100%}}
.area-handle,.reference-handle{pointer-events:none}.handle-hit{fill:transparent;stroke:none;pointer-events:all;cursor:move}
.height-line{stroke:#ef4a38;stroke-width:4;vector-effect:non-scaling-stroke;pointer-events:none}.height-handle{fill:#ef4a38;stroke:white;stroke-width:2;vector-effect:non-scaling-stroke;pointer-events:none}.axis-entry{margin:20px 0;background:#eef3f5;padding:20px;border-radius:6px}.axis-entry>p{font-size:14px;line-height:1.8;margin:0 0 10px}.axis-entry .field{max-width:420px}.axis-entry .measure-input{margin-bottom:0}.markup-tools button:disabled{opacity:.45;cursor:not-allowed}.photo-editor [data-next-axis]{margin:0 0 16px}.photo-editor [data-confirm]{min-width:18px;min-height:18px}
.color-options{padding-left:18px}.color-palette{margin:20px 0}.wizard-panel .swatch-group{border:0;padding:0;margin:0 0 22px}.wizard-panel .swatch-group legend{font-size:13px;margin-bottom:10px;color:var(--muted)}.swatch-grid{display:grid;grid-template-columns:repeat(12,48px);gap:9px;max-width:100%}.color-swatch{position:relative;display:block;width:48px;height:48px;cursor:pointer}.color-swatch input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer;z-index:1}.swatch-dot{display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin:4px;border:1px solid #122b4033;border-radius:50%;background:var(--swatch);box-shadow:0 0 0 3px transparent}.swatch-dot>span{visibility:hidden;border-radius:50%;background:var(--navy);color:white;font-size:12px;line-height:20px;width:20px;height:20px;text-align:center}.color-swatch input:checked+.swatch-dot{box-shadow:0 0 0 2px #fafbf9,0 0 0 4px var(--navy)}.color-swatch input:checked+.swatch-dot>span{visibility:visible}.color-swatch input:focus-visible+.swatch-dot{outline:3px solid #42647b;outline-offset:5px}.color-swatch input:disabled+.swatch-dot{opacity:.28}.color-swatch input:disabled{cursor:not-allowed}.palette-counter{font-size:13px;font-weight:600;line-height:1.8}.selected-swatches{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 20px}.selected-color{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid #c8d4dc;border-radius:20px;font-size:12px;background:white}.selected-color i{display:block;width:16px;height:16px;border-radius:50%;border:1px solid #122b4022}.preview-conditions{margin:24px 0;padding:22px;border:1px solid #bfd0dc;border-radius:7px;background:#fafbf9}.preview-conditions h4{font-size:17px;margin:0 0 18px}.delivery-comparison{display:grid;grid-template-columns:1fr 1fr;gap:25px}.delivery-comparison>div{border-left:3px solid var(--lime);padding-left:15px}.delivery-comparison strong{font-size:14px}.delivery-comparison p{font-size:13px;line-height:1.9;margin:10px 0}.office-offer{margin-top:28px;padding:25px;border-radius:8px;background:var(--navy);color:#f5f4ee;font-size:14px;line-height:1.9}.office-offer .eyebrow{color:var(--lime);font-size:9px;margin-bottom:15px}.office-offer h4{font-size:23px;line-height:1.4;margin:0 0 17px}.office-offer ul{padding-left:20px}.office-offer .hint,.office-contact-pending{color:#cedce5;font-size:12px}.office-offer .button{color:var(--navy)}
@media(max-width:850px){.swatch-grid{grid-template-columns:repeat(9,48px)}}@media(max-width:600px){.swatch-grid{grid-template-columns:repeat(4,48px);gap:12px}.color-options{padding-left:12px}.delivery-comparison{grid-template-columns:1fr;gap:20px}.preview-conditions{padding:18px}.office-offer{padding:21px}.office-offer h4{font-size:21px}}
.office-boundary{padding:18px;border:1px solid #c3f05b66;border-left:3px solid var(--lime);border-radius:5px;margin:20px 0}.office-boundary strong{font-size:14px;color:var(--lime)}.office-boundary p{font-size:13px;line-height:1.9;margin:10px 0 0}
@media(max-width:600px){.swatch-grid{grid-template-columns:repeat(auto-fit,48px)}}
.color-palette.swatch-grid{display:grid;grid-template-columns:repeat(auto-fill,48px);gap:9px;margin:20px 0;max-width:100%;align-content:start}@media(max-width:600px){.color-palette.swatch-grid{grid-template-columns:repeat(auto-fill,44px);gap:7px}.color-palette .color-swatch{width:44px;height:44px}.color-palette .swatch-dot{width:36px;height:36px;margin:4px}}
