/* SHARED STYLES: cart (.cb) and measurement submission (.sg-measure). */
/* External CSS: scoped to the builder; no ShopSite template processing required. */
.cb { --cb-ink:#243b48; --cb-muted:#687883; --cb-line:#dde3e5; --cb-accent:#d77937; color:var(--cb-ink); text-align:left; font-family:Arial,Helvetica,sans-serif; line-height:1.5; max-width:1180px; margin:0 auto; padding:20px 0 50px; }
.cb *, .cb *::before, .cb *::after { box-sizing:border-box; }
.cb [hidden] { display:none !important; }
.cb button,.cb input,.cb select,.cb textarea { font:inherit; }
.cb h1,.cb h2,.cb h3,.cb p { margin:0 0 14px; }
.cb h1,.cb h2 { font-size:clamp(28px,4vw,42px); line-height:1.15; letter-spacing:-1.2px; font-weight:700; color:var(--cb-ink); }
.cb h3 { font-size:26px; line-height:1.2; font-weight:700; color:var(--cb-ink); }
.cb a { color:#356784; text-decoration:underline; text-underline-offset:3px; }
.cb .cb-eyebrow { font-size:11px; letter-spacing:2px; font-weight:bold; color:#8a6043; margin-bottom:12px; }
.cb-intro { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:14px 0 30px; }
.cb-intro p:not(.cb-eyebrow) { color:var(--cb-muted); max-width:620px; }
.cb-phone { flex-shrink:0; font-size:13px; text-decoration:none!important; border-left:1px solid var(--cb-line); padding-left:25px; }
.cb-phone strong { display:block; font-size:17px; margin-top:4px; }
.cb-steps { display:flex; border-bottom:1px solid var(--cb-line); margin-bottom:28px; }
.cb-steps button { border:0; border-bottom:3px solid transparent; background:none; padding:12px 25px 18px 0; margin-right:30px; font-size:14px; color:var(--cb-muted); cursor:pointer; }
.cb-steps button span { display:inline-flex; border:1px solid #bdc8cd; width:25px; height:25px; border-radius:50%; align-items:center; justify-content:center; margin-right:8px; font-size:12px; }
.cb-steps button.cb-active { border-color:var(--cb-accent); color:var(--cb-ink); font-weight:bold; }
.cb-steps button.cb-active span { background:var(--cb-ink); color:white; border-color:var(--cb-ink); }
.cb-steps button:disabled { cursor:default; opacity:.6; }
.cb-layout { display:grid; grid-template-columns:minmax(0,1fr) 290px; align-items:start; gap:28px; }
.cb-main { border:1px solid var(--cb-line); border-radius:14px; background:#fff; overflow:hidden; box-shadow:0 7px 25px #21344306; }
.cb-panel { padding:30px; }
.cb-panel>p:not(.cb-eyebrow) { color:var(--cb-muted); font-size:14px; }
.cb fieldset { float:none; clear:none; width:auto; border:0; background:none; margin:0 0 22px; padding:0; min-width:0; }
.cb legend { float:none; width:auto; margin:0 0 12px; padding:0; font-size:15px; font-weight:bold; color:var(--cb-ink); }
.cb label { float:none; width:auto; margin:0; text-align:left; cursor:pointer; }
.cb input[type=radio],.cb input[type=checkbox] { accent-color:#315566; width:17px; height:17px; margin:0; flex-shrink:0; }
.cb .cb-mode { display:flex; flex-wrap:wrap; gap:15px 24px; padding:15px 0 20px; border-bottom:1px solid var(--cb-line); }
.cb-mode label,.cb-corners label,.cb-fold label { display:flex; gap:8px; align-items:center; font-size:14px; }
.cb .cb-shapes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.cb-shape { position:relative; display:flex; flex-direction:column; align-items:center; border:1px solid var(--cb-line); border-radius:10px; padding:12px 8px 14px; font-size:13px; font-weight:bold; transition:background .15s,border-color .15s; }
.cb-shape:hover { background:#f7f9f9; }
.cb-shape:has(input:checked),.cb-product:has(input:checked) { border:2px solid #406777; background:#f0f6f6; padding:11px 7px 13px; }
.cb-shape input { position:absolute; top:12px; left:12px; }
.cb-shape-icon { display:block; width:100px; max-width:100%; }
.cb svg { display:block; width:100%; height:auto; }
.cb-svg-fold { fill:none; stroke:#fff; stroke-width:3; stroke-dasharray:7 5; }
.cb-svg-measures { fill:#304a58; font-size:13px; font-weight:bold; }
.cb-svg-measures path { stroke:#6e818b; stroke-width:1; fill:none; }
.cb .cb-small { font-size:12px; color:var(--cb-muted); }
.cb-summary { background:#f4f6f5; padding:24px; border-radius:14px; position:sticky; top:105px; border:1px solid #e7ebe8; }
.cb-summary h3 { font-size:22px; }
.cb-summary svg { max-width:150px; margin:0 auto 8px; }
.cb-facts { margin:10px 0 20px; font-size:13px; }
.cb-facts>div { display:flex; justify-content:space-between; gap:16px; padding:6px 0; border-bottom:1px solid #dde3e577; }
.cb-facts dt { color:var(--cb-muted); font-weight:normal; }
.cb-facts dd { margin:0; text-align:right; overflow-wrap:anywhere; max-width:68%; }
.cb-cost-lines { border-top:1px solid var(--cb-line); padding-top:14px; font-size:12px; }
.cb-cost-lines>div { display:flex; justify-content:space-between; gap:12px; margin-bottom:7px; }
.cb-cost-lines>div span:last-child { white-space:nowrap; }
.cb-total { display:flex; align-items:center; justify-content:space-between; border-top:1px solid var(--cb-line); padding-top:12px; margin-top:12px; font-size:13px; }
.cb-total strong { font-size:27px; }
.cb-shipping-note { font-size:12px; color:var(--cb-muted); margin-top:12px!important; }
.cb-summary-help { border-top:1px solid var(--cb-line); padding-top:20px; margin-top:22px; font-size:12px; }
.cb-summary-help p { margin:7px 0; color:var(--cb-muted); }
.cb-actions { background:#fafbfa; border-top:1px solid var(--cb-line); padding:18px 30px; display:flex; gap:16px; align-items:center; }
.cb-next,.cb-test-dialog button { border:0; border-radius:7px; background:var(--cb-ink); color:#fff; padding:12px 22px; font-weight:bold!important; cursor:pointer; margin-left:auto; }
.cb-next:hover { background:#365b6d; }
.cb-back { background:none; border:0; padding:10px 0; cursor:pointer; color:var(--cb-ink); }
.cb-save-note { font-size:11px; color:var(--cb-muted); }
.cb-note { padding:18px; border-radius:8px; border:1px solid #e8d9c6; background:#faf5ec; font-size:14px; margin:16px 0; }
.cb-note p { margin:8px 0 0; }
.cb .cb-corners { border:1px solid var(--cb-line); padding:16px; border-radius:8px; }
.cb-corners label { margin:8px 0; }
.cb-measure-layout { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:20px; }
.cb-diagram-box { align-self:start; background:#f8faf9; border-radius:10px; padding:8px; }
.cb-caption { font-size:10px; text-align:center; color:var(--cb-muted); }
.cb-dimensions,.cb-details-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.cb .cb-field { display:flex; flex-direction:column; gap:7px; font-size:13px; margin-bottom:15px; min-width:0; }
.cb-field>span:first-child { font-weight:bold; }
.cb-field small { color:var(--cb-muted); font-size:11px; font-weight:normal; }
.cb-field input,.cb-field select,.cb-field textarea { width:100%; min-width:0; padding:11px 10px; border:1px solid #b9c8ce; border-radius:5px; background:#fff; color:var(--cb-ink); min-height:44px; }
.cb-input-unit { display:flex; align-items:center; position:relative; }
.cb-input-unit input { padding-right:30px; }
.cb-input-unit>span { position:absolute; right:10px; color:var(--cb-muted); font-size:12px; }
.cb .cb-fold { margin-top:10px; }
.cb-fold label { margin-bottom:10px; }
.cb-fold small { display:block; font-size:11px; color:var(--cb-muted); }
.cb-help { border-top:1px solid var(--cb-line); padding:14px 0; font-size:13px; }
.cb-help summary { cursor:pointer; font-weight:bold; }
.cb-help p { margin:10px 0 0; color:var(--cb-muted); }
.cb-products { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.cb-product { border:1px solid var(--cb-line); border-top:4px solid #416bab; border-radius:8px; display:flex; flex-direction:column; padding:12px 8px 14px; gap:8px; font-size:13px; }
.cb-product-5 { border-top-color:#d98b4b; }.cb-product-6 { border-top-color:#8c5355; }
.cb-product strong { font-size:20px; }.cb-product small { font-size:10px; color:var(--cb-muted); }
.cb-color-preview { display:flex; align-items:center; gap:10px; margin-bottom:25px; font-size:11px; color:var(--cb-muted); }
.cb-color-preview>span { width:32px; height:32px; border-radius:50%; flex-shrink:0; border:1px solid #0002; }
.cb-color-preview p { margin:0; }
.cb-review-diagram { max-width:280px; margin:auto; }
.cb .cb-agreement { display:flex; gap:12px; align-items:flex-start; padding:18px 0; font-size:13px; border-top:1px solid var(--cb-line); }
.cb-agreement input { margin-top:3px!important; }
.cb-alert { margin:20px 25px 0; padding:16px; border:1px solid #b56352; background:#fff5f2; color:#813d2e; font-size:13px; border-radius:8px; }
.cb-alert ul { margin:8px 0 0; padding-left:20px; }
.cb [aria-invalid=true] { border-color:#b54430; }
.cb .cb-field-error { color:#a23f2c; }
.cb .cb-field-error:empty { display:none; }
.cb :focus-visible { outline:3px solid #d7994b; outline-offset:3px; }
.cb h3:focus { outline:none; }
.cb-assist-symbol { font-size:70px; text-align:center; color:#b39778; }
.cb-sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.cb dialog { max-width:min(90vw,700px); max-height:85vh; border:0; border-radius:12px; padding:25px; color:var(--cb-ink); }
.cb dialog::backdrop { background:#152c40aa; }.cb dialog pre { max-height:45vh; overflow:auto; white-space:pre-wrap; font-size:12px; }
@media(max-width:1000px){.cb-layout{grid-template-columns:minmax(0,1fr) 250px;gap:18px}.cb-panel{padding:22px}.cb-steps button{margin-right:15px;padding-right:10px}.cb-measure-layout{grid-template-columns:1fr}.cb-diagram-box{max-width:320px;width:100%;margin:0 auto 12px}.cb-products{gap:6px}}
@media(max-width:740px){.cb{padding:10px 0 30px}.cb-intro{display:block;padding-bottom:15px}.cb-phone{display:none}.cb-steps{gap:0;margin-bottom:18px}.cb-steps button{flex:1;padding:10px 2px;font-size:10px;margin:0;text-align:center}.cb-steps button span{display:flex;margin:0 auto 5px}.cb-layout{grid-template-columns:1fr}.cb-summary{position:static;padding:22px}.cb-summary svg{display:none}.cb-panel{padding:20px}.cb h3{font-size:23px}.cb .cb-shapes{gap:8px}.cb-shape{font-size:11px}.cb-shape-icon{width:80px}.cb-actions{padding:16px 20px}.cb-save-note{display:none}.cb-products{grid-template-columns:1fr}.cb-product{display:grid;grid-template-columns:20px 1fr auto;align-items:center;gap:10px;padding:14px!important}.cb-product small{grid-column:2/4}.cb-mode{flex-direction:column}.cb-summary h3{font-size:22px}}

/* Isolate the builder introduction from ShopSite's global header styling. */
.cb header.cb-intro {
  background: transparent !important;
  color: var(--cb-ink);
  border: 0;
}
.cb header.cb-intro a,
.cb header.cb-intro a:hover,
.cb header.cb-intro a:focus {
  color: #356784;
}

.cb .cb-adjustment { display:block; font-size:12px; color:var(--cb-muted); margin-top:6px; }
.cb .cb-shipping-estimate { font-size:12px; color:var(--cb-muted); margin:12px 0; }
.cb .cb-summary-review > .cb-eyebrow,
.cb .cb-summary-review > h3,
.cb .cb-summary-review > #cb-summary-diagram,
.cb .cb-summary-review > #cb-summary-details { display:none; }
.cb .cb-review-diagram { max-width:420px; }
@media(max-width:740px){.cb .cb-adjustment {grid-column:2/4;}}

.cb .cb-review-diagram .cb-svg-measures text { paint-order:stroke; stroke:white; stroke-width:3px; stroke-linejoin:round; }

/* Cart diagram field layout */
/* Experimental diagram-field layout. */
.cb .cb-measure-layout { display:block; }
.cb .cb-diagram-box { position:relative; width:100%; max-width:480px; padding:45px 50px 38px; margin:12px auto 20px; background:white; }
.cb .cb-diagram-box .cb-caption { margin:8px 0 0; }
.cb .cb-diagram-box .cb-field { position:absolute; width:61px; margin:0; z-index:2; gap:3px; }
.cb .cb-diagram-box .cb-field>span:first-child { text-align:center; font-size:12px; }
.cb .cb-diagram-box .cb-input-unit input,.cb .cb-radius-card input { min-height:32px; height:32px; padding:3px 19px 3px 3px; font-size:16px; text-align:center; border-radius:4px; }
.cb .cb-diagram-box .cb-input-unit>span,.cb .cb-radius-card .cb-input-unit>span { right:5px; font-size:11px; }
.cb .cb-diagram-box [data-measure=a] { left:0; top:43%; }
.cb .cb-diagram-box [data-measure=b] { left:calc(50% - 30px); top:7px; }
.cb .cb-diagram-box [data-measure=c] { right:0; bottom:24px; }
.cb .cb-diagram-box [data-measure=d] { right:0; top:43%; }
.cb .cb-diagram-box [data-measure=e] { left:calc(50% - 30px); bottom:0; }
.cb .cb-diagram-box .cb-svg-measures text { display:none; }
.cb .cb-diagram-box .cb-field-error { font-size:10px; background:#fff6f0; }
.cb .cb-fold { display:flex; flex-wrap:wrap; gap:12px 25px; }
.cb .cb-fold small { flex-basis:100%; }
.cb .cb-radius-card { display:grid; grid-template-columns:minmax(0,200px) minmax(0,1fr); gap:22px; align-items:center; border-top:1px solid var(--cb-line); padding:20px 0; margin:0 0 12px; }
.cb .cb-radius-card img { width:100%; height:auto; }
.cb .cb-radius-card h4 { margin:0 0 10px; font-size:16px; }
.cb .cb-radius-card .cb-field { width:90px; margin:0 0 10px; }
.cb .cb-radius-card .cb-field>span:first-child { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.cb .cb-radius-card p { font-size:12px; color:var(--cb-muted); margin:0; }
@media(max-width:740px) {
 .cb .cb-diagram-box { padding:40px 30px 35px; margin:12px -10px 20px; width:calc(100% + 20px); }
 .cb .cb-diagram-box .cb-field { width:52px; }
 .cb .cb-diagram-box [data-measure=b],.cb .cb-diagram-box [data-measure=e] { left:calc(50% - 26px); }
 .cb .cb-diagram-box .cb-field input,.cb .cb-radius-card input { min-height:40px;height:40px; }
 .cb .cb-radius-card { grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:15px; }
}

/* Keep error messages in normal flow, outside the compact drawing inputs. */
.cb .cb-measurement-errors { margin:0 0 18px; }
.cb .cb-measurement-errors:has(> :not(:empty)) { padding:12px 16px; border-left:3px solid #a63728; background:#fff6f0; border-radius:4px; }
.cb .cb-measurement-errors .cb-field-error { display:block; font-size:13px; line-height:1.5; margin:3px 0; }
.cb .cb-measurement-errors .cb-field-error:empty { display:none; }
.cb .cb-radius-card .cb-field { width:100%; }
.cb .cb-radius-card .cb-input-unit { width:90px; }
.cb .cb-radius-card .cb-field-error { font-size:13px; line-height:1.5; }

.cb .cb-diagram-box > .cb-c-leader { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; overflow:visible; }
.cb .cb-c-leader path { fill:none; stroke:#879296; stroke-width:1; }

/* Measurement/contact layout */
/* Measurement form and confirmation: match the cart builder palette and scale. */
.sg-measure{--sg-ink:#243b48;--sg-muted:#687883;--sg-line:#dde3e5;--sg-accent:#d77937;max-width:1180px;margin:0 auto;padding:20px 0 50px;text-align:left;color:var(--sg-ink);font-family:Arial,Helvetica,sans-serif;line-height:1.5}
.sg-measure *{box-sizing:border-box}
.sg-measure [hidden]{display:none!important}
.sg-measure h1{font:700 clamp(28px,3.6vw,42px)/1.12 Arial,Helvetica,sans-serif;letter-spacing:-1.2px;color:var(--sg-ink);margin:0 0 14px}
.sg-measure h2{font:700 22px/1.25 Arial,Helvetica,sans-serif;color:var(--sg-ink);letter-spacing:-.4px;margin:0 0 16px}
.sg-measure p{margin:0 0 16px}
.sg-measure .sg-eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#947c62;margin:0 0 10px}
.sg-measure .sg-intro{display:flex;justify-content:space-between;gap:30px;padding:14px 0 30px;border-bottom:1px solid var(--sg-line);margin-bottom:28px}
.sg-measure .sg-intro>div:first-child{max-width:740px}
.sg-measure .sg-lead{max-width:650px;font-size:16px;color:var(--sg-muted);line-height:1.6}
.sg-measure .sg-help{font-size:13px;font-weight:400;color:var(--sg-muted);line-height:1.55}
.sg-measure .sg-intro p:last-child{margin-bottom:0}
.sg-measure .sg-phone{align-self:center;border-left:1px solid var(--sg-line);padding-left:22px;flex-shrink:0}
.sg-measure .sg-phone span{display:block;font-size:12px;color:var(--sg-muted)}
.sg-measure .sg-phone a{display:block;color:var(--sg-ink);font-size:17px;font-weight:700;text-decoration:none;margin:4px 0}
.sg-measure .sg-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:28px;align-items:start}
.sg-measure fieldset,.sg-measure .sg-review,.sg-measure .sg-receipt,.sg-measure .sg-status-card{min-inline-size:0;border:1px solid var(--sg-line);border-radius:14px;background:#fff;padding:28px;margin:0 0 24px;box-shadow:0 5px 18px #243b4805}
.sg-measure legend{float:left;display:flex;align-items:center;gap:12px;width:100%;padding:0 0 18px;margin:0 0 20px;border-bottom:1px solid var(--sg-line);font:700 22px/1.25 Arial,Helvetica,sans-serif;letter-spacing:-.4px;color:var(--sg-ink)}
.sg-measure legend+*{clear:both}
.sg-measure .sg-step-number{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:34px;height:34px;background:#f7eee5;border-radius:50%;color:#a75c27;font-size:12px;letter-spacing:0}
.sg-measure fieldset>p{font-size:14px;color:var(--sg-muted)}
.sg-measure .sg-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.sg-measure label{display:block;font-size:13px;font-weight:700;line-height:1.4}
.sg-measure input:not([type=radio]):not([type=checkbox]):not([type=hidden]),.sg-measure select,.sg-measure textarea{display:block;width:100%;min-height:44px;margin-top:7px;padding:10px 12px;border:1px solid #cbd4d8;border-radius:5px;background:#fff;color:var(--sg-ink);font:400 16px/1.4 Arial,Helvetica,sans-serif}
.sg-measure textarea{min-height:110px;resize:vertical}
.sg-measure input[type=radio],.sg-measure input[type=checkbox]{accent-color:var(--sg-ink)}
.sg-measure input:focus-visible,.sg-measure select:focus-visible,.sg-measure textarea:focus-visible,.sg-measure button:focus-visible,.sg-measure a:focus-visible{outline:3px solid #8cb7cc;outline-offset:3px}
.sg-measure .sg-shapes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.sg-measure .sg-shape{padding:14px 8px;border:1px solid #cbd5d9;border-radius:9px;cursor:pointer;text-align:center;font-size:13px;background:#fff;transition:border-color .15s,background .15s}
.sg-measure .sg-shape:hover{border-color:var(--sg-ink);background:#f8fafb}
.sg-measure .sg-shape:has(input:checked){border-color:var(--sg-ink);background:#edf4f6;box-shadow:inset 0 0 0 1px var(--sg-ink)}
.sg-measure .sg-shape svg{display:block;width:100%;height:100px;margin-bottom:10px}
.sg-measure .sg-shape input{margin-right:5px}
.sg-measure .sg-dimensions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}
.sg-measure .sg-dimensions>.sg-grid{grid-template-columns:1fr}
.sg-measure .sg-diagram{background:#f7f9fa;border:1px solid var(--sg-line);border-radius:10px;padding:16px;min-height:180px}
.sg-measure .sg-diagram>p{color:var(--sg-muted);font-size:14px;margin:0}
.sg-measure .sg-diagram svg{display:block;width:100%;max-width:380px;margin:auto}
.sg-measure .cb-svg-measures{fill:var(--sg-ink);stroke:var(--sg-ink);stroke-width:1;font:14px sans-serif}
.sg-measure .cb-svg-measures text{stroke:none}
.sg-measure .cb-svg-fold{fill:none;stroke:var(--sg-ink);stroke-width:2;stroke-dasharray:7 5}
.sg-measure .sg-inline{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin:0 0 20px;font-size:13px}
.sg-measure .sg-inline label{font-weight:400}
.sg-measure .sg-inline input{margin-right:7px}
.sg-measure .sg-wide{grid-column:1/-1}
.sg-measure .sg-side{background:#f3f6f5;border:1px solid var(--sg-line);border-radius:14px;padding:24px;position:sticky;top:150px}
.sg-measure .sg-side h2{font-size:22px}
.sg-measure .sg-side p,.sg-measure .sg-side li{font-size:13px;color:#536670;line-height:1.65}
.sg-measure .sg-side .sg-eyebrow{font-size:10px;color:#947c62}
.sg-measure .sg-guide-link{display:inline-block;color:var(--sg-ink);font-size:13px;font-weight:700;text-underline-offset:3px}
.sg-measure .sg-side ul{padding-left:18px;margin:22px 0}
.sg-measure .sg-side li{padding-left:3px;margin:0 0 12px}
.sg-measure .sg-side-foot{border-top:1px solid var(--sg-line);padding-top:18px;margin-bottom:0}
.sg-measure .sg-submit-panel{border:1px solid #eadbcb;border-radius:12px;background:#fcf8f2;padding:24px}
.sg-measure .sg-agree{font-size:13px;font-weight:400;display:flex;gap:10px;align-items:flex-start}
.sg-measure .sg-agree input{margin-top:3px;flex-shrink:0;width:16px;height:16px}
.sg-measure .sg-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:24px}
.sg-measure button,.sg-measure .sg-button{padding:12px 20px;min-height:46px;border-radius:5px;border:1px solid var(--sg-ink);font:700 14px/1.5 Arial,Helvetica,sans-serif;cursor:pointer;background:var(--sg-ink);color:#fff;text-decoration:none;display:inline-block;text-align:center}
.sg-measure button:hover,.sg-measure .sg-button:hover{background:#345869;border-color:#345869;color:#fff}
.sg-measure .sg-secondary{background:#fff;color:var(--sg-ink);border-color:#cbd5d9}
.sg-measure button:disabled{opacity:.6;cursor:wait}
.sg-measure .sg-notice{padding:16px 20px;background:#fcf8f2;border-left:3px solid var(--sg-accent);border-radius:4px;margin:18px 0;font-size:14px}
.sg-measure .sg-error{background:#fff4f2;border-color:#b42318;color:#84221b}
.sg-measure .sg-review{scroll-margin-top:150px}
.sg-measure dl{margin:0}
.sg-measure dl>div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:16px;padding:13px 0;border-bottom:1px solid var(--sg-line);font-size:14px}
.sg-measure dl>div:last-child{border-bottom:0}
.sg-measure dt{font-weight:400;color:var(--sg-muted)}
.sg-measure dd{margin:0;font-weight:700;overflow-wrap:anywhere}
.sg-measure.sg-confirmation{max-width:1050px}
.sg-measure .sg-confirm-intro{border:0;margin-bottom:0;padding-bottom:24px}
.sg-measure .sg-success-mark{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:#edf4ee;border:1px solid #cfdfd2;border-radius:50%;font-size:24px;color:#3e6750;margin-bottom:20px}
.sg-measure .sg-confirm-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:28px;align-items:start}
.sg-measure .sg-confirm-layout .sg-side{position:static}
.sg-measure .sg-confirm-actions{justify-content:flex-start;margin:0 0 28px}
.sg-measure .sg-confirm-help{font-size:13px;color:var(--sg-muted);border-top:1px solid var(--sg-line);padding-top:22px}
@media(max-width:991px){.sg-measure .sg-layout{grid-template-columns:minmax(0,1fr) 240px;gap:20px}.sg-measure .sg-side{padding:20px}.sg-measure fieldset{padding:22px}.sg-measure .sg-dimensions{grid-template-columns:1fr}.sg-measure .sg-dimensions>.sg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.sg-measure{padding-top:8px}.sg-measure .sg-intro{display:block;padding-top:6px}.sg-measure .sg-phone{border-left:0;border-top:1px solid var(--sg-line);padding:16px 0 0;margin-top:20px}.sg-measure .sg-layout,.sg-measure .sg-confirm-layout{grid-template-columns:1fr}.sg-measure .sg-side{position:static}.sg-measure .sg-side ul{margin:16px 0}.sg-measure .sg-side h2{font-size:20px}.sg-measure .sg-shapes{grid-template-columns:repeat(3,minmax(0,1fr))}.sg-measure .sg-confirm-layout{gap:0}.sg-measure .sg-confirm-layout>.sg-side{margin-bottom:24px}}
@media(max-width:480px){.sg-measure fieldset,.sg-measure .sg-review,.sg-measure .sg-receipt,.sg-measure .sg-status-card{padding:18px}.sg-measure legend{font-size:20px}.sg-measure .sg-grid,.sg-measure .sg-dimensions>.sg-grid{grid-template-columns:1fr}.sg-measure .sg-shapes{grid-template-columns:repeat(2,minmax(0,1fr))}.sg-measure .sg-shape svg{height:85px}.sg-measure .sg-actions>*{width:100%}.sg-measure .sg-submit-panel{padding:18px}.sg-measure dl>div{grid-template-columns:100px minmax(0,1fr);gap:12px}.sg-measure .sg-side-foot{padding-top:12px}}

/* v3: isolate the introduction from global storefront header rules. */
.sg-measure header.sg-intro{background:transparent!important;color:var(--sg-ink);border:0;border-bottom:1px solid var(--sg-line)}
.sg-measure header.sg-intro a,.sg-measure header.sg-intro a:hover,.sg-measure header.sg-intro a:focus{color:#356784}
.sg-measure header.sg-confirm-intro{border:0}
/* ShopSite can still output its display-name heading: avoid two titles on these pages. */
#pg-intro div:has(> #text1 .sg-measure)>h1{display:none}
.sg-measure .sg-steps{display:flex;gap:0;border-top:1px solid var(--sg-line);border-bottom:1px solid var(--sg-line);margin:0 0 28px;scroll-margin-top:150px}
.sg-measure .sg-steps button{flex:1;background:transparent;color:var(--sg-muted);border:0;border-radius:0;padding:16px 5px;font-size:12px;white-space:nowrap}
.sg-measure .sg-steps button span{display:inline-flex;justify-content:center;align-items:center;width:22px;height:22px;margin-right:6px;background:#edf1f2;border-radius:50%;font-size:11px}
.sg-measure .sg-steps button[aria-current=step]{color:var(--sg-ink);box-shadow:inset 0 -3px var(--sg-accent)}
.sg-measure .sg-steps button[aria-current=step] span{background:#f7eee5;color:#a75c27}
.sg-measure .sg-wizard-actions{justify-content:space-between;margin-bottom:24px}
.sg-measure .sg-wizard-actions #sg-next{margin-left:auto}
.sg-measure .sg-measure-layout{clear:both}
.sg-measure .sg-diagram-box{position:relative;width:100%;max-width:480px;padding:45px 60px 50px;margin:12px auto 20px;background:#fff}
.sg-measure .sg-diagram-box .sg-diagram{background:none;border:0;padding:0;min-height:0}
.sg-measure .sg-diagram-box [data-measure]{position:absolute;width:64px;margin:0;z-index:2;text-align:center;font-weight:700}
.sg-measure .sg-dimension-name{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.sg-measure .sg-dimension-letter{display:block;font-size:12px;line-height:1.4;margin-bottom:3px}
.sg-measure .sg-diagram-box [data-measure] input{min-height:40px;height:40px;padding:4px;text-align:center;margin:0;border-radius:4px;font-size:16px}
.sg-measure .sg-diagram-box [data-measure=a]{left:0;top:43%}
.sg-measure .sg-diagram-box [data-measure=b]{left:calc(50% - 32px);top:0}
.sg-measure .sg-diagram-box [data-measure=c]{right:0;bottom:24px}
.sg-measure .sg-diagram-box [data-measure=d]{right:0;top:43%}
.sg-measure .sg-diagram-box [data-measure=e]{left:calc(50% - 32px);bottom:0}
.sg-measure .sg-diagram-box .cb-svg-measures text{display:none}
.sg-measure .sg-diagram-box>.sg-c-leader{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.sg-measure .sg-c-leader path{fill:none;stroke:#879296;stroke-width:1}
.sg-measure .sg-diagram-caption{text-align:center}
.sg-measure #sg-fold-label{max-width:340px;margin:20px auto}
.sg-measure .sg-radius-card{display:grid;grid-template-columns:minmax(0,180px) minmax(0,1fr);gap:22px;align-items:center;border-top:1px solid var(--sg-line);padding:20px 0 0;margin-top:20px}
.sg-measure .sg-radius-card img{width:100%;height:auto}
.sg-measure .sg-radius-card input{max-width:100px}
.sg-measure .sg-radius-card #sg-radius-help{margin:12px 0 0}
.sg-measure .sg-review .sg-submit-panel{margin-top:24px}
@media(max-width:767px){.sg-measure .sg-steps button{padding:10px 2px;font-size:10px;white-space:normal}.sg-measure .sg-steps button span{display:flex;margin:0 auto 5px}.sg-measure .sg-diagram-box{padding:45px 50px 50px}.sg-measure .sg-diagram-box [data-measure]{width:54px}.sg-measure .sg-diagram-box [data-measure=b],.sg-measure .sg-diagram-box [data-measure=e]{left:calc(50% - 27px)}.sg-measure .sg-radius-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}}
