:root{color-scheme:light;--bg:#eef3f6;--panel:#fff;--soft:#f6f9fb;--ink:#102633;--muted:#607480;--line:#d8e1e6;--accent:#087e79;--accent-soft:#e4f5f2;--gold:#a46609;--danger:#9b2c2c;--shadow:0 18px 55px rgba(16,38,51,.12)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.odin-public-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px clamp(16px,4vw,48px);background:var(--panel);border-bottom:1px solid var(--line)}.odin-brand{display:flex;align-items:center;gap:11px;color:inherit;text-decoration:none}.odin-brand>span:last-child{display:grid}.odin-brand small{color:var(--muted);font-size:11px}.odin-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--ink);color:#fff;font-weight:800}.odin-market{color:var(--muted);font-size:13px}.quote-shell{max-width:1160px;margin:auto;padding:clamp(22px,5vw,56px) 16px}.quote-hero{max-width:850px;margin-bottom:24px}.eyebrow{font-size:11px;letter-spacing:.09em;font-weight:800;color:var(--accent)}.quote-hero h1{font-size:clamp(32px,5vw,56px);line-height:1.03;letter-spacing:-.045em;margin:9px 0 12px}.quote-hero p{font-size:clamp(15px,2vw,18px);line-height:1.6;color:var(--muted);margin:0}.quote-app{background:var(--panel);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}.stepbar{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;padding:12px;border-bottom:1px solid var(--line);background:var(--soft)}.stepbar button{border:0;background:transparent;color:var(--muted);padding:10px 8px;border-radius:9px;font:inherit;cursor:pointer;display:flex;justify-content:center;align-items:center;gap:7px}.stepbar button b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e7edf0}.stepbar button.active{background:var(--accent-soft);color:var(--accent);font-weight:700}.stepbar button.done{color:var(--accent)}.quote-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.68fr)}.quote-main{min-width:0;padding:clamp(20px,4vw,34px);border-right:1px solid var(--line)}.quote-summary{padding:26px;background:var(--soft)}.quote-summary h2{font-size:29px;margin:7px 0 3px}.quote-summary>p{color:var(--muted);line-height:1.45}.quote-summary dl{margin:24px 0}.quote-summary dl div{display:flex;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid var(--line)}.quote-summary dt{color:var(--muted)}.quote-summary dd{margin:0;font-weight:750;text-align:right}.summary-note{font-size:11px}.step h2{font-size:26px;margin:0 0 7px;letter-spacing:-.03em}.step>.lede{color:var(--muted);margin:0 0 22px;line-height:1.55}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label,.field>span{font-size:12px;color:var(--muted);font-weight:650}.field input,.field select,.field textarea{width:100%;min-height:46px;border:1px solid var(--line);border-radius:10px;background:var(--soft);padding:11px 12px;color:var(--ink);font:inherit}.field textarea{min-height:92px;resize:vertical}.help{font-size:11px;color:var(--muted);line-height:1.45}.measure-card,.notice,.package-card,.product-card,.estimate-card{border:1px solid var(--line);border-radius:13px;background:var(--soft)}.measure-card{padding:18px;margin-top:17px}.measure-row{display:flex;justify-content:space-between;gap:14px;align-items:center}.measure-row strong{display:block}.measure-status{font-size:12px;color:var(--muted)}.notice{padding:13px 15px;color:var(--muted);font-size:12px;line-height:1.45;margin-top:14px}.notice.good{background:var(--accent-soft);color:#145f57}.notice.warn{background:#fff7e5;color:#77510b}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.package-card{padding:16px;cursor:pointer;text-align:left;color:inherit}.package-card.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--accent-soft)}.package-card h3{margin:3px 0 7px;font-size:20px}.package-card p{color:var(--muted);font-size:12px;line-height:1.45;margin:0}.package-card .range{display:block;margin-top:13px;font-size:18px;font-weight:800}.tag{display:inline-flex;padding:5px 7px;border-radius:99px;background:#fff3d9;color:#7a530c;font-size:10px;font-weight:800}.option-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.8fr);gap:18px;margin-top:18px}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.product-card{padding:12px;cursor:pointer;text-align:left;color:inherit}.product-card.selected{border-color:var(--accent);background:var(--accent-soft)}.product-card small{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.product-card strong{display:block;margin-top:4px}.swatches{display:flex;flex-wrap:wrap;gap:9px}.swatch{width:49px;height:49px;padding:4px;border-radius:10px;border:1px solid var(--line);background:#fff;cursor:pointer}.swatch.selected{border:2px solid var(--ink)}.swatch span{display:block;width:100%;height:100%;border-radius:6px}.visualizer{border:1px solid var(--line);border-radius:13px;overflow:hidden;background:#e8edef}.photo-stage{position:relative;aspect-ratio:16/9;background:#dfe5e8;overflow:hidden}.photo-stage img{display:block;width:100%;height:100%;object-fit:cover}.roof-overlay{position:absolute;inset:0;pointer-events:none}.roof-plane{position:absolute;inset:0;background:var(--roof-tone,rgba(35,38,40,.75));background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.12) 0 1px,rgba(0,0,0,.12) 1px 4px);background-blend-mode:overlay;mix-blend-mode:color}.sample-main{clip-path:polygon(17.8% 13%,65.1% 13%,68.5% 31.8%,10.5% 31.8%)}.sample-garage{clip-path:polygon(73.9% 30.2%,94% 54.4%,54.6% 54.4%)}.sample-porch{clip-path:polygon(34.7% 46.5%,56% 51.7%,11.8% 51.7%)}#manual-mask{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.mask-help{padding:10px 12px;color:var(--muted);font-size:11px;line-height:1.4}.photo-controls{display:flex;flex-wrap:wrap;gap:8px;padding:11px;border-top:1px solid var(--line);background:var(--panel)}.photo-upload input{position:absolute;opacity:0;pointer-events:none}.photo-upload,.mini-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 11px;border:1px solid var(--line);border-radius:9px;background:var(--soft);color:var(--ink);font:inherit;cursor:pointer;font-size:12px;font-weight:700}.manual-mode .photo-stage{cursor:crosshair}.estimate-card{padding:20px}.estimate-price{font-size:38px;font-weight:850;letter-spacing:-.04em;margin:10px 0 3px}.estimate-card ul{padding-left:18px;color:var(--muted);line-height:1.7}.quote-actions{display:flex;justify-content:space-between;gap:12px;margin-top:28px}.button{min-height:44px;padding:10px 16px;border-radius:10px;border:1px solid var(--line);font:inherit;font-weight:750;cursor:pointer}.button.primary{background:var(--ink);color:#fff;border-color:var(--ink)}.button.secondary{background:var(--soft);color:var(--ink)}.button:disabled{opacity:.4;cursor:not-allowed}.submit-success{text-align:center;padding:28px}.submit-success .success-mark{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;margin:0 auto 15px;background:var(--accent-soft);color:var(--accent);font-size:32px;font-weight:900}.error{color:var(--danger);font-size:12px;margin-top:10px}footer{text-align:center;color:var(--muted);font-size:12px;padding:0 16px 36px}@media(max-width:820px){.quote-grid,.option-layout{grid-template-columns:1fr}.quote-main{border-right:0;border-bottom:1px solid var(--line)}.package-grid,.product-grid{grid-template-columns:1fr}.stepbar span{display:none}.odin-market{display:none}}@media(max-width:520px){.field-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.quote-shell{padding-left:10px;padding-right:10px}.quote-main,.quote-summary{padding:18px}.stepbar{gap:2px}.stepbar button{padding:8px 4px}.stepbar button b{width:28px;height:28px}.quote-hero h1{font-size:36px}}

/* v26.15: optional standing-seam upgrade path */
.metal-upgrade{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding:18px;border:1px solid #d8c69c;border-radius:14px;background:linear-gradient(135deg,#fffaf0,#f6f9fb)}
.metal-upgrade.selected{border-color:var(--accent);background:linear-gradient(135deg,var(--accent-soft),#f6f9fb)}
.metal-upgrade-copy{min-width:0}.metal-upgrade-kicker{display:inline-block;color:var(--gold);font-size:10px;font-weight:850;letter-spacing:.09em}.metal-upgrade h3{margin:5px 0 6px;font-size:20px;letter-spacing:-.02em}.metal-upgrade p{margin:0;color:var(--muted);font-size:12px;line-height:1.55;max-width:650px}.metal-upgrade-actions{display:grid;gap:8px;justify-items:end;flex:0 0 auto}.metal-upgrade-actions .button{white-space:nowrap}.metal-learn{font-size:11px;font-weight:750;color:var(--accent);text-decoration:none}.metal-learn:hover{text-decoration:underline}
@media(max-width:720px){.metal-upgrade{align-items:stretch;flex-direction:column}.metal-upgrade-actions{justify-items:stretch}.metal-upgrade-actions .button{text-align:center}.metal-learn{text-align:center}}
