.builder-v2{--color-primary:#285640;--color-primary-dark:#183d2b;--color-accent:#285640;--color-text-primary:#23382e;--color-text-secondary:#53675b;background:#f4f3ed;color:#23382e;min-height:80vh;padding-bottom:40px;font-size:16px}
.builder-v2 .container{max-width:1440px;width:100%;padding:0 32px}.builder-v2 .builder-header{padding:32px 0 25px;background:#f4f3ed;border:0}.builder-v2 h1{font-size:clamp(26px,3vw,38px);font-weight:650;letter-spacing:-1.3px;margin:2px 0 6px}.builder-v2 h2{font-size:25px;letter-spacing:-.7px;margin:0 0 24px}.builder-v2 .stage-eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:700;color:#52715b;margin:0 0 8px}.builder-v2 .builder-header-actions{gap:8px;flex-wrap:wrap}.builder-v2 .builder-layout{display:grid;grid-template-columns:365px minmax(0,1fr);gap:24px;align-items:start}.builder-v2 .builder-config{position:sticky;top:85px;max-height:calc(100vh - 105px);overflow:auto;border:1px solid #d9dfd5;border-radius:16px;background:#fff;box-shadow:none}.builder-v2 .config-section{padding:25px;border:0}.builder-v2 .design-steps{display:grid;grid-template-columns:repeat(4,1fr);padding:14px 12px;background:#edf1e9;border-bottom:1px solid #d9dfd5;gap:4px}.builder-v2 .design-steps button{display:flex;flex-direction:column;align-items:center;gap:5px;background:transparent;border:0;padding:5px 0;font:inherit;font-size:13px;color:#526153;cursor:pointer}.builder-v2 .design-steps button span:first-child{border-radius:50%;width:26px;height:26px;display:grid;place-items:center;background:#fff;border:1px solid #c9d4c7}.builder-v2 .design-steps .selected{color:#174d32;font-weight:700}.builder-v2 .design-steps .selected span:first-child{background:#285640;color:white;border-color:#285640}.builder-v2 label{display:block;font-size:14px;font-weight:600;margin:14px 0 7px}.builder-v2 input:not([type=hidden]),.builder-v2 select{background:#fff;border:1px solid #c9d4ca;border-radius:8px;padding:11px 12px;color:#243b2d;font-size:16px;width:100%;min-height:46px;box-shadow:none}.builder-v2 input[readonly]{background:#edf1eb;color:#56705e}.builder-v2 .form-row{gap:12px;margin:0;display:grid;grid-template-columns:1fr 1fr}.builder-v2 .form-group{margin:0 0 10px}.builder-v2 .config-hint{background:transparent;color:#5a6c5e;font-size:14px;line-height:1.6;padding:0;margin:14px 0}.builder-v2 .scope-note{border-top:1px solid #e1e7dd;padding-top:18px;color:#687969;font-size:14px;line-height:1.55}.builder-v2 .style-options{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:20px}.builder-v2 .style-options button{background:#f6f5ef;border:1px solid #dbe0d5;border-radius:10px;padding:15px 5px 12px;text-align:center;color:#3d5344;cursor:pointer}.builder-v2 .style-options strong{display:block;font-size:14px}.builder-v2 .style-options small{display:block;font-size:12px;line-height:1.4;margin-top:5px}.builder-v2 .roof-symbol{font-size:35px;line-height:1.4;display:block}.builder-v2 .style-options .selected,.builder-v2 .size-presets .selected{border-color:#285640;background:#eaf1e7;box-shadow:0 0 0 1px #285640}.builder-v2 .size-presets{display:flex;flex-wrap:wrap;gap:7px;margin:16px 0}.builder-v2 .size-presets button,.builder-v2 .plan-switch button{border:1px solid #cad5c8;border-radius:7px;background:#fff;padding:8px 11px;color:#305139;font:inherit;font-size:14px;cursor:pointer}.builder-v2 .stage-actions{display:flex;justify-content:space-between;padding:18px 25px;background:#f3f5ef;position:sticky;bottom:0;border-top:1px solid #dde4d9}.builder-v2 .btn-primary{background:#285640;border-color:#285640;color:#fff;box-shadow:none}.builder-v2 .btn-outline{background:#fff;border:1px solid #ccd6ca;color:#32503b;box-shadow:none}.builder-v2 button:disabled{opacity:.45;cursor:not-allowed}.builder-v2 .device-note{font-size:12px;color:#66785f;text-align:center;padding:12px 16px;margin:0}.builder-v2 .builder-results{min-width:0;background:#fff;border:1px solid #d9dfd5;border-radius:16px;overflow:hidden;box-shadow:none;scroll-margin-top:85px}.builder-v2 .results-content{padding:0}.builder-v2 .results-summary{background:#fff;padding:22px 26px;display:flex;flex-wrap:wrap;border-bottom:1px solid #e3e8df;border-radius:0;gap:8px}.builder-v2 .rs-name{font-size:20px;letter-spacing:-.4px}.builder-v2 .rs-meta{font-size:14px;color:#61715f}.builder-v2 .rs-cost{font-size:29px;color:#285640;letter-spacing:-1px}.builder-v2 .rs-cost-label{font-size:11px;letter-spacing:.8px}.builder-v2 .price-basis{flex-basis:100%;font-size:12px;color:#6a7568;margin:4px 0 0}.builder-v2 .results-tabs{display:grid;grid-template-columns:repeat(4,1fr);overflow:visible;padding:0 16px;background:#fff;border-bottom:1px solid #dde4d9;gap:0}.builder-v2 .results-tabs button{padding:16px 4px;background:transparent;box-shadow:none;border:0;border-bottom:3px solid transparent;border-radius:0;font-size:14px;white-space:normal;color:#5d705e}.builder-v2 .results-tabs button.active{border-bottom-color:#285640;color:#285640;font-weight:700}.builder-v2 .shed-preview{background:#f1f3eb}.builder-v2 .preview-toolbar{display:flex;align-items:center;justify-content:space-between;padding:16px 23px;gap:12px}.builder-v2 .preview-toolbar>span{font-size:11px;letter-spacing:2px;font-weight:700;color:#6c7e69}.builder-v2 .preview-toolbar select{width:auto;min-height:38px;font-size:14px;padding:6px 30px 6px 10px}.builder-v2 .preview-drawing{padding:0 14px;max-width:900px;margin:auto}.builder-v2 .preview-drawing svg{max-height:460px;display:block}.builder-v2 .preview-facts{display:flex;justify-content:center;gap:22px;padding:12px 15px 20px;font-size:14px;color:#38533f}.builder-v2 .opening-schedule,.builder-v2 .plan-notes{padding:15px 24px;border-top:1px solid #dce3d6;font-size:14px;color:#526750;background:#fafbf8}.builder-v2 summary{cursor:pointer;font-weight:600;min-height:24px}.builder-v2 details p{margin:10px 0;line-height:1.6}.builder-v2 .plan-switch{display:flex;gap:8px;flex-wrap:wrap;padding:18px 24px 0}.builder-v2 .plan-switch button[aria-pressed=true]{background:#285640;color:#fff;border-color:#285640}.builder-v2 .tab-content{padding:24px;overflow:auto}.builder-v2 .materials-table{font-size:14px}.builder-v2 .materials-table th{background:#eef2e9;color:#536e53;font-size:12px}.builder-v2 .materials-category h3{font-size:19px;color:#35573e;border-bottom:1px solid #c7d3c1;padding-bottom:10px}.builder-v2 .part-id{display:block;color:#6c7e66;font-size:11px}.builder-v2 .explanation-box{background:#f2f6ed;border:0;border-radius:8px;color:#4c654d;font-size:14px;padding:12px}.builder-v2 .advanced-options{margin-top:24px;padding-top:18px;border-top:1px solid #d9e2d2}.builder-v2 .results-recalc-error{padding:15px 24px;color:#843d20;background:#fff1e4;font-size:14px}.builder-v2 .project-tools{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 25px;align-items:center}.builder-v2 .project-tools label{margin:0;cursor:pointer}.builder-v2 .project-tools p{width:100%;font-size:14px;color:#63715e}.builder-v2 .stock-board{margin:18px 0}.builder-v2 .board-caption{display:flex;flex-wrap:wrap;justify-content:space-between;font-size:13px;margin-bottom:6px;gap:6px}.builder-v2 .board-bar{display:flex;background:repeating-linear-gradient(45deg,#edf0e7,#edf0e7 4px,#dae2d1 4px,#dae2d1 7px);min-height:34px;border:1px solid #899c7c;overflow:hidden}.builder-v2 .board-bar span{background:#c39d6b;flex-grow:0;flex-shrink:0;border-right:3px solid #f8f6e9;color:#334629;font-size:12px;display:flex;align-items:center;justify-content:center;overflow:hidden}.builder-v2 .board-cut-labels{display:flex;gap:5px 14px;flex-wrap:wrap;margin-top:5px;font-size:12px;color:#65735e}.builder-v2 .design-comparisons{display:flex;gap:8px;flex-wrap:wrap;padding:16px 24px}.builder-v2 .design-comparisons button{display:flex;flex-direction:column;gap:5px;border:1px solid #cbd8c3;border-radius:8px;background:#f1f5ec;padding:12px;font-size:13px;color:#355b37;cursor:pointer}.builder-v2 :focus-visible{outline:3px solid #639c71;outline-offset:3px}.builder-v2 .sr-only{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}.builder-v2 .is-recalculating{opacity:.7}.builder-v2 .supplier-prices input{max-width:100px}
@media(max-width:1000px){.builder-v2 .container{padding:0 16px}.builder-v2 .builder-layout{grid-template-columns:320px minmax(0,1fr);gap:16px}.builder-v2 .config-section{padding:20px}.builder-v2 .results-summary{padding:18px}.builder-v2 .results-tabs{padding:0 7px}.builder-v2 .results-tabs button{font-size:13px}}
@media(max-width:760px){.builder-v2 .builder-header{padding:20px 0}.builder-v2 .builder-header-content{align-items:flex-start;gap:16px}.builder-v2 .builder-header-actions{gap:6px}.builder-v2 .builder-header-actions .btn{font-size:13px;padding:9px 11px}.builder-v2 .builder-layout{display:flex;flex-direction:column;gap:16px}.builder-v2 .builder-results{order:0;width:100%}.builder-v2 .builder-config{order:1;position:static;max-height:none;width:100%}.builder-v2 .preview-drawing svg{max-height:260px}.builder-v2 .preview-toolbar{padding:10px 16px}.builder-v2 .preview-toolbar>span{font-size:10px}.builder-v2 .preview-facts{font-size:12px;gap:14px;padding:8px 10px 13px}.builder-v2 .results-summary{padding:14px 16px}.builder-v2 .rs-name{font-size:17px}.builder-v2 .rs-meta{font-size:12px}.builder-v2 .rs-cost{font-size:24px}.builder-v2 .rs-cost-label{font-size:10px}.builder-v2 .price-basis{font-size:11px}.builder-v2 .results-tabs button{padding:12px 3px}.builder-v2 .tab-content{padding:16px}.builder-v2 .opening-schedule,.builder-v2 .plan-notes{padding:12px 16px}.builder-v2 .stage-actions{position:sticky;bottom:0;z-index:2}.builder-v2 .style-options small{font-size:12px}.builder-v2 .board-section h3{font-size:17px}.builder-v2 .export-options{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.builder-v2 *{transition:none!important;scroll-behavior:auto!important}}
.builder-v2 .shed-preview{width:100%;height:auto;margin:0}.builder-v2 .supplier-prices{margin:24px 0}.builder-v2 .supplier-prices label{display:flex;justify-content:space-between;align-items:center;gap:14px;font-weight:400}.builder-v2 .supplier-prices input{flex:0 0 110px}.builder-v2 .supplier-prices p{font-size:14px;line-height:1.6}
.builder-v2 .results-summary{position:static;top:auto;z-index:auto}
.builder-v2 .style-thumbnail{display:block;width:70px;max-width:100%;height:58px;margin:0 auto 8px}.builder-v2 .modal-overlay .modal-content{background:#fff}.builder-v2 .modal-close{min-width:36px;min-height:36px}
@media(max-width:760px){.builder-v2{padding-bottom:100px}.builder-v2 .builder-header-content>div:first-child>p:last-child{display:none}.builder-v2 .builder-header{padding:16px 0}.builder-v2 .results-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px}.builder-v2 .results-summary-cost{text-align:right;margin-left:auto}.builder-v2 .price-basis{grid-column:1/-1}.builder-v2 .preview-drawing svg{max-height:210px}.builder-v2 .design-steps{position:fixed;bottom:0;left:0;right:0;z-index:1000;border-top:1px solid #cbd7c7;padding:9px 16px calc(9px + env(safe-area-inset-bottom));box-shadow:0 -3px 15px #183d2b12}.builder-v2 .builder-config{scroll-margin-top:76px}.builder-v2 .stage-actions{bottom:78px}}
/* Guided editing, followed by a separate review workspace. */
.builder-v2 .container{max-width:1280px}
.builder-v2 .builder-header{padding:24px 0 20px}
.builder-v2 .builder-layout{grid-template-columns:400px minmax(0,1fr);gap:28px}
.builder-v2 .builder-config{position:static;max-height:none;overflow:visible}
.builder-v2 .builder-results{position:sticky;top:88px}
.builder-v2 .design-steps{position:static;display:grid;grid-template-columns:repeat(5,1fr);padding:0;margin:0 0 24px;border:1px solid #d9dfd5;border-radius:12px;background:#fff;box-shadow:none;overflow:hidden;scroll-margin-top:90px}
.builder-v2 .design-steps button{flex-direction:row;justify-content:center;gap:9px;padding:15px 8px;font-size:14px;border-bottom:3px solid transparent}
.builder-v2 .design-steps .selected{background:#edf3e9;border-bottom-color:#285640}
.builder-v2 .config-section{padding:25px 25px 16px}
.builder-v2 .stage-actions{position:static;padding:18px 25px;gap:12px}
.builder-v2 .stage-actions .btn-primary{flex:1}
.builder-v2 .config-feedback{color:#843d20;background:#fff1e4;padding:12px 24px;margin:0;font-size:14px}
.builder-v2 .results-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}
.builder-v2 .preview-drawing svg{max-height:390px}
.builder-v2 .review-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 20px}
.builder-v2 .review-heading h2{font-size:22px;margin:0 0 6px}
.builder-v2 .review-heading p{font-size:14px;color:#53675b;margin:0}
.builder-v2.is-reviewing .builder-layout{display:block;max-width:1050px;margin:auto}
.builder-v2.is-reviewing .builder-results{position:static}
.builder-v2:not(.is-reviewing) .price-basis{font-size:11px}
.builder-v2 .preview-toolbar>span{letter-spacing:1px}
@media(min-width:761px){.builder-v2:not(.is-reviewing) .results-summary{padding:18px 22px}.builder-v2:not(.is-reviewing) .rs-name{font-size:18px}.builder-v2:not(.is-reviewing) .rs-cost{font-size:25px}}
@media(min-width:761px) and (max-width:1000px){.builder-v2 .builder-layout{grid-template-columns:340px minmax(0,1fr);gap:16px}}
@media(max-width:760px){
 .builder-v2{padding-bottom:32px}
 .builder-v2 .container{padding:0 12px}
 .builder-v2 .builder-header{padding:16px 0 12px}
 .builder-v2 .builder-header-content{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 16px}
 .builder-v2 h1{font-size:25px;margin-bottom:0;letter-spacing:-.8px}
 .builder-v2 .builder-header .stage-eyebrow{font-size:9px;letter-spacing:1.3px;margin-bottom:4px}
 .builder-v2 .builder-header-actions{margin-left:auto}
 .builder-v2 .builder-header-actions .btn{padding:8px;font-size:12px;gap:4px}
 .builder-v2 .builder-header-actions svg{display:none}
 .builder-v2 .design-steps{margin-bottom:12px;border-radius:9px;scroll-margin-top:72px}
 .builder-v2 .design-steps button{flex-direction:column;padding:9px 3px 7px;gap:4px;font-size:11px;min-height:62px}
 .builder-v2 .design-steps button span:first-child{width:23px;height:23px;font-size:12px}
 .builder-v2 .builder-layout{display:flex;gap:12px}
 .builder-v2 .builder-results{position:static;border-radius:12px}
 .builder-v2 .builder-config{border-radius:12px;scroll-margin-top:72px}
 .builder-v2:not(.is-reviewing) .results-content{display:grid;grid-template-columns:minmax(0,1fr) 46%;align-items:center;background:#f1f3eb}
 .builder-v2:not(.is-reviewing) .results-summary{display:flex;flex-direction:column;align-items:flex-start;padding:14px;border:0;background:transparent;gap:7px}
 .builder-v2:not(.is-reviewing) .results-summary-cost{text-align:left;margin-left:0}
 .builder-v2:not(.is-reviewing) .rs-cost{font-size:23px;line-height:1.2}
 .builder-v2:not(.is-reviewing) .rs-name{font-size:15px}
 .builder-v2:not(.is-reviewing) .rs-meta{font-size:11px}
 .builder-v2:not(.is-reviewing) .price-basis{font-size:10px;line-height:1.4}
 .builder-v2:not(.is-reviewing) .preview-toolbar{padding:6px}
 .builder-v2:not(.is-reviewing) .preview-toolbar>span{display:none}
 .builder-v2:not(.is-reviewing) .preview-toolbar select{min-width:0;width:100%;font-size:11px;padding:5px;min-height:30px;background:#ffffffa8}
 .builder-v2:not(.is-reviewing) .preview-drawing{padding:0}
 .builder-v2:not(.is-reviewing) .preview-drawing svg{height:135px}
 .builder-v2:not(.is-reviewing) .preview-facts{display:none}
 .builder-v2:not(.is-reviewing) .results-recalc-error{grid-column:1/-1}
 .builder-v2 .config-section{padding:20px}
 .builder-v2 h2{font-size:23px;margin-bottom:18px}
 .builder-v2 .stage-actions{position:static;padding:15px 20px}
 .builder-v2 .review-heading{align-items:flex-start;flex-direction:column;gap:12px}
 .builder-v2 .review-heading h2{font-size:20px}
 .builder-v2 .results-tabs{padding:0 6px}
 .builder-v2 .results-tabs button{font-size:11px;padding:13px 4px;min-height:55px}
 .builder-v2.is-reviewing .preview-drawing svg{max-height:320px}
}
.builder-v2 .builder-layout{padding:0 0 24px}
.builder-v2 .builder-results{min-height:0}
.builder-v2 .review-actions{display:flex;gap:8px;flex-wrap:wrap}
