:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--slate-900:#0d1b2a;--slate-700:#243447;--slate-500:#5a6b80;--slate-300:#c8d2dd;--slate-200:#dde4ec;--slate-100:#eaeff4;--slate-50:#f4f7fa;--teal-700:#0b6477;--teal-600:#0e7490;--teal-500:#0891b2;--teal-50:#ecfdff;--brass-700:#8a6418;--brass-600:#b8861f;--brass-500:#d4a82f;--brass-50:#fdf6e3;--rose-700:#9b2c2c;--rose-50:#fef2f2;--amber-700:#92400e;--amber-50:#fffbeb;--bg:var(--slate-50);--surface:#fff;--surface-elev:#fbfcfd;--surface-tint:var(--teal-50);--ink:var(--slate-900);--ink-soft:var(--slate-700);--muted:var(--slate-500);--line:var(--slate-200);--line-strong:var(--slate-300);--accent:var(--teal-600);--accent-strong:var(--teal-700);--accent-tint:var(--teal-50);--accent-ring:color-mix(in oklab, var(--teal-500) 32%, transparent);--brass:var(--brass-600);--brass-strong:var(--brass-700);--brass-tint:var(--brass-50);--danger:var(--rose-700);--danger-tint:var(--rose-50);--warn:var(--amber-700);--warn-tint:var(--amber-50);--shadow-sm:0 1px 2px #0d1b2a0f;--shadow-md:0 6px 18px -4px #0d1b2a1a, 0 2px 4px #0d1b2a0a;--shadow-lg:0 18px 40px -12px #0d1b2a2e, 0 4px 10px #0d1b2a0f;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-pill:999px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--tap:48px;--bar-h:4.25rem;--mobile-bar-h:5.25rem;--content-max:1280px;--sidebar-w:380px}*,:before,:after{box-sizing:border-box}html{font-feature-settings:"ss01" on, "cv11" on;-webkit-text-size-adjust:100%;scroll-padding-block-start:6rem;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}body{min-block-size:100dvh;color:var(--ink);accent-color:var(--accent);background:radial-gradient(ellipse 110% 60% at 50% -20%, color-mix(in oklab, var(--accent) 9%, transparent), transparent 70%), var(--bg);margin:0;padding-block-end:calc(var(--mobile-bar-h) + env(safe-area-inset-bottom,0px))}button,input,textarea,select{font:inherit;color:inherit}button{min-block-size:var(--tap);border-radius:var(--radius-sm);background:var(--accent);color:#fff;letter-spacing:-.005em;cursor:pointer;border:0;padding:.75rem 1.1rem;font-weight:650;transition:background .12s,transform .12s,box-shadow .12s}button:hover{background:var(--accent-strong)}button:active{transform:translateY(1px)}:where(button,input,textarea,select,[role=button],.picker-button,.measure-button):focus-visible{outline:3px solid var(--accent-ring);outline-offset:2px;border-radius:var(--radius-sm)}a{color:var(--accent-strong)}h1,h2{letter-spacing:-.02em;text-wrap:balance;margin:0}h1{font-size:clamp(1.15rem,.9rem + 1.1vw,1.65rem);font-weight:750;line-height:1.1}h2{font-weight:750;line-height:1.15}.tabular,.row-total,#headerTotal,#summaryTitle,.totals dd,.line-item b,#mobileBarTotal{font-variant-numeric:tabular-nums}.topbar{z-index:40;justify-content:space-between;align-items:center;gap:var(--space-4);min-block-size:var(--bar-h);padding:var(--space-3) var(--space-4);background:color-mix(in oklab, var(--surface) 82%, transparent);border-block-end:1px solid var(--line);-webkit-backdrop-filter:saturate(180%)blur(14px);display:flex;position:sticky;inset-block-start:0}.brand{align-items:center;gap:var(--space-3);min-inline-size:0;display:flex}.brand img{background:var(--surface-tint);block-size:40px;inline-size:40px;box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--accent) 22%, transparent), var(--shadow-sm);border-radius:10px;flex:none;padding:4px}.brand .eyebrow{display:none}.brand h1{font-size:clamp(1rem,.85rem + .6vw,1.25rem)}.eyebrow{margin:0 0 var(--space-1);color:var(--accent-strong);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:700}.header-total{text-align:end;white-space:nowrap;gap:0;display:grid}.header-total span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:600}.header-total strong{color:var(--ink);font-size:clamp(1rem,.9rem + .4vw,1.2rem);font-weight:700}.layout{gap:var(--space-4);inline-size:min(var(--content-max), 100%);padding:var(--space-4);margin-inline:auto;display:grid}.quote-form,.summary{min-inline-size:0}.quote-form{gap:var(--space-4);display:grid;container:form/inline-size}.card,fieldset,.openings-section,.summary{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-md);padding:var(--space-4);margin:0;position:relative}.openings-section:before,.summary:before{content:"";inset-block-start:0;inset-inline:var(--space-4);background:linear-gradient(to right in oklab, transparent, color-mix(in oklab, var(--brass) 65%, transparent) 20%, color-mix(in oklab, var(--brass) 65%, transparent) 80%, transparent);opacity:.75;pointer-events:none;border-radius:0 0 2px 2px;block-size:2px;position:absolute}legend{padding-inline:var(--space-2);color:var(--ink);letter-spacing:-.005em;margin-inline-start:calc(var(--space-2) * -1);font-size:.95rem;font-weight:700}.field-grid,.row-grid{gap:var(--space-3);display:grid}label{gap:var(--space-2);color:var(--ink-soft);letter-spacing:-.005em;min-inline-size:0;font-size:.84rem;font-weight:650;display:grid}label>span{color:var(--ink-soft)}input,textarea{inline-size:100%;min-block-size:var(--tap);border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);padding:.7rem .85rem;font-weight:500;transition:border-color .12s,box-shadow .12s}input:hover,textarea:hover{border-color:color-mix(in oklab, var(--accent) 30%, var(--line-strong))}input:focus,textarea:focus{border-color:var(--accent)}textarea{resize:vertical;min-block-size:5.5rem}.picker{position:relative}.picker-button{justify-content:space-between;align-items:center;gap:var(--space-3);inline-size:100%;min-block-size:var(--tap);border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);text-align:start;padding:.7rem .85rem;font-weight:600;display:flex}.picker-button:hover{background:var(--surface);border-color:color-mix(in oklab, var(--accent) 30%, var(--line-strong))}.picker-button[aria-expanded=true]{border-color:var(--accent)}.picker-button:after{content:"";border-inline-end:2px solid color-mix(in oklab, var(--ink) 55%, transparent);border-block-end:2px solid color-mix(in oklab, var(--ink) 55%, transparent);flex:none;block-size:.55rem;inline-size:.55rem;transition:transform .16s;transform:rotate(45deg)translateY(-2px)}.picker-button[aria-expanded=true]:after{transform:rotate(225deg)translateY(2px)}.picker-menu{z-index:30;gap:var(--space-1);overscroll-behavior:contain;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);max-block-size:min(20rem,58dvh);box-shadow:var(--shadow-lg);padding:var(--space-2);display:grid;position:absolute;inset-block-start:calc(100% + .35rem);inset-inline:0;overflow-y:auto}.picker-menu[hidden]{display:none}.picker-option{min-block-size:44px;color:var(--ink);text-align:start;background:0 0;border-radius:8px;justify-content:flex-start;padding:.7rem .85rem;font-weight:600}.picker-option:hover{background:var(--surface-tint);color:var(--accent-strong)}.picker-option[aria-selected=true]{background:var(--accent-tint);color:var(--accent-strong);box-shadow:inset 3px 0 0 var(--accent)}.measure-control{grid-template-columns:minmax(0,1fr) auto;display:grid;position:relative}.measure-control .measurement-input{border-start-end-radius:0;border-end-end-radius:0}.measure-button{min-block-size:var(--tap);border:1px solid var(--line-strong);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--surface-tint);color:var(--accent-strong);border-inline-start:0;padding-inline:.95rem;font-weight:650}.measure-button:hover{background:color-mix(in oklab, var(--accent) 12%, var(--surface));color:var(--accent-strong)}.measure-menu{z-index:28;gap:var(--space-1);overscroll-behavior:contain;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);max-block-size:min(20rem,58dvh);box-shadow:var(--shadow-lg);padding:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(5.5rem,1fr));display:grid;position:absolute;inset-block-start:calc(100% + .35rem);inset-inline:0;overflow-y:auto}.measure-menu[hidden]{display:none}.measure-option{background:var(--surface);min-block-size:42px;color:var(--ink);border-radius:8px;justify-content:center;padding:.6rem;font-weight:650}.measure-option:hover{background:var(--accent-tint);color:var(--accent-strong)}.measure-note{min-block-size:1.1rem;color:var(--muted);font-size:.78rem;font-weight:600}.saved-panel{gap:var(--space-3);border-block-start:1px dashed var(--line);margin-block-start:var(--space-4);padding-block-start:var(--space-4);display:grid}.saved-panel strong{color:var(--ink);font-size:.92rem;display:block}.saved-panel p{color:var(--muted);margin:.1rem 0 0;font-size:.82rem}.saved-quote-list{gap:var(--space-2);display:grid}.saved-quote{gap:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-elev);padding:var(--space-2);grid-template-columns:minmax(0,1fr) auto;align-items:stretch;display:grid}.saved-quote button{border-radius:8px;min-block-size:42px;padding:.5rem .75rem;font-weight:650}.saved-restore{color:var(--ink);text-align:start;background:0 0;justify-items:start;gap:.1rem;display:grid}.saved-restore strong{font-size:.95rem;font-weight:650}.saved-restore:hover{background:var(--surface-tint)}.saved-restore span{color:var(--muted);font-size:.76rem;font-weight:600}.saved-delete{border:1px solid color-mix(in oklab, var(--danger) 25%, var(--line));color:var(--danger);background:0 0}.saved-delete:hover{background:var(--danger-tint)}.switch-row{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-elev);display:grid}.check{align-items:center;gap:var(--space-3);min-block-size:var(--tap);color:var(--ink);font-size:.95rem;font-weight:650;display:flex}.check input{block-size:1.25rem;min-block-size:auto;inline-size:1.25rem;accent-color:var(--accent);flex:none}.compact-field{gap:var(--space-2);display:grid}.openings-section{container:openings/inline-size}.section-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-block-end:var(--space-4);display:flex}.section-head h2{font-size:1.25rem}.section-head p{color:var(--muted);margin:.15rem 0 0;font-size:.82rem}.openings{gap:var(--space-3);display:grid}.opening-row{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-elev);padding:var(--space-4);transition:border-color .16s,box-shadow .16s;position:relative}.opening-row:focus-within{border-color:color-mix(in oklab, var(--accent) 35%, var(--line-strong));box-shadow:0 0 0 3px var(--accent-ring)}.opening-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-block-end:var(--space-3);display:flex}.opening-title{color:var(--ink);letter-spacing:-.005em;font-size:.95rem;font-weight:750}.icon-button{border:1px solid color-mix(in oklab, var(--danger) 25%, var(--line));border-radius:var(--radius-sm);min-block-size:36px;color:var(--danger);background:0 0;padding:.4rem .65rem;font-size:.82rem;font-weight:650}.icon-button:hover{background:var(--danger-tint)}.row-total{margin:var(--space-3) 0 0;border-block-start:1px solid var(--line);color:var(--ink);text-align:end;letter-spacing:-.01em;padding-block-start:var(--space-3);font-size:1.1rem;font-weight:750}.summary{align-self:start;gap:var(--space-3);display:grid}.summary-head{gap:var(--space-2);border-block-end:1px solid var(--line);padding-block-end:var(--space-4);display:grid}.summary-head .eyebrow{margin:0}#summaryTitle{letter-spacing:-.025em;font-size:clamp(1.75rem,1.3rem + 1.5vw,2.4rem);font-weight:800;line-height:1}#summaryMeta{color:var(--muted);margin:0;font-size:.85rem;font-weight:600}.totals{gap:var(--space-2);margin:0;padding:0;display:grid}.totals div{justify-content:space-between;gap:var(--space-3);display:flex}.totals dt{color:var(--muted);font-size:.88rem}.totals dd{color:var(--ink);margin:0;font-weight:700}.line-items{gap:var(--space-2);display:grid}.line-items:empty{display:none}.line-item{column-gap:var(--space-3);border-block-start:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title amount""detail amount";row-gap:.15rem;padding-block-start:var(--space-2);display:grid}.line-item strong{color:var(--ink);letter-spacing:-.005em;grid-area:title;font-size:.9rem;font-weight:650}.line-item span{color:var(--muted);grid-area:detail;font-size:.78rem}.line-item b{color:var(--ink);grid-area:amount;align-self:center;font-weight:750}.alerts{gap:var(--space-2);display:grid}.alerts:empty{display:none}.alert{border:1px solid color-mix(in oklab, var(--warn) 28%, var(--line));border-radius:var(--radius-sm);background:var(--warn-tint);color:var(--warn);margin:0;padding:.65rem .75rem;font-size:.86rem;font-weight:600}.actions{gap:var(--space-2);grid-template-columns:1fr;display:grid}.actions button{inline-size:100%;font-weight:700}.secondary-button{background:var(--ink);color:#fff}.secondary-button:hover{background:color-mix(in oklab, var(--ink) 85%, black)}.ghost-button{border:1px solid var(--line-strong);color:var(--ink-soft);background:0 0}.ghost-button:hover{background:var(--surface-tint);color:var(--accent-strong)}.send-status{color:var(--muted);min-block-size:1.1rem;margin:0;font-size:.82rem;font-weight:600}.mobile-action-bar{z-index:50;align-items:center;gap:var(--space-3);padding:var(--space-3) max(var(--space-4), env(safe-area-inset-right,0px)) calc(var(--space-3) + env(safe-area-inset-bottom,0px)) max(var(--space-4), env(safe-area-inset-left,0px));background:color-mix(in oklab, var(--surface) 88%, transparent);border-block-start:1px solid var(--line);-webkit-backdrop-filter:saturate(180%)blur(16px);display:flex;position:fixed;inset-block-end:0;inset-inline:0;box-shadow:0 -10px 30px -12px #0d1b2a1f}.mobile-action-bar .mobile-bar-totals{flex:auto;gap:.1rem;min-inline-size:0;display:grid}.mobile-action-bar .mobile-bar-units{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.72rem;font-weight:700}.mobile-action-bar #mobileBarTotal{color:var(--ink);letter-spacing:-.02em;font-size:1.35rem;font-weight:800;line-height:1}.mobile-action-bar #mobileBarSend{border-radius:var(--radius-sm);box-shadow:0 6px 14px -6px color-mix(in oklab, var(--accent) 70%, transparent);flex:none;padding:.85rem 1.1rem;font-weight:750}@container form (width>=560px){.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.options-grid .switch-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}}@container form (width>=720px){.customer-grid label:nth-child(3){grid-column:1/-1}}@container openings (width>=620px){.row-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.1fr);align-items:start}}@media (width>=720px){.layout{padding:var(--space-6);gap:var(--space-5)}fieldset,.openings-section,.summary{padding:var(--space-5)}.section-head h2{font-size:1.4rem}}@media (width>=1080px){body{padding-block-end:0}.layout{grid-template-columns:minmax(0, 1fr) var(--sidebar-w);gap:var(--space-6)}.summary{max-block-size:calc(100dvh - var(--bar-h) - var(--space-6));position:sticky;inset-block-start:calc(var(--bar-h) + var(--space-6));overflow:hidden auto}.actions{grid-template-columns:1fr 1fr}.actions #sendQuote{grid-column:1/-1}.mobile-action-bar{display:none}.topbar{padding-inline:max(var(--space-6), calc((100% - var(--content-max)) / 2 + var(--space-6)))}}@media (width>=1320px){:root{--sidebar-w:420px}}@media (width<=380px){.brand h1{font-size:1rem}.header-total{display:none}}@media (width<=640px){.header-total span{display:none}.header-total strong{color:var(--muted);font-size:.95rem;font-weight:600}}@media print{:root{--ink:#0a0f0d;--muted:#5a6560;--line:#d8e1dd;--line-strong:#bcc7c2}@page{margin:.6in .5in}body{background:#fff;padding:0;font-size:11pt;line-height:1.45}.topbar,.mobile-action-bar,.saved-panel,.actions,.send-status,.quote-form button:not(.measure-option):not(.picker-option),.icon-button,.openings-section .section-head button,#addOpening{display:none!important}.layout{max-inline-size:100%;padding:0;display:block}.print-header{align-items:center;gap:var(--space-4);border-block-end:2px solid var(--ink);grid-template-columns:1fr auto;margin-block-end:var(--space-5);padding-block-end:var(--space-5);display:grid!important}.print-header[hidden]{display:grid!important}.print-brand{align-items:center;gap:var(--space-3);display:flex}.print-brand img{block-size:36px;inline-size:36px}.print-brand strong{letter-spacing:-.02em;font-size:16pt;font-weight:750;display:block}.print-brand span{color:var(--muted);font-size:9pt}.print-date{color:var(--muted);text-align:end;font-size:9pt}.quote-form{display:block}fieldset{box-shadow:none;border:0;border-radius:0;margin:0;padding:0}fieldset legend{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-block-end:var(--space-3);font-size:10pt;font-weight:700}.field-grid{gap:var(--space-2) var(--space-4);grid-template-columns:repeat(3,1fr);display:grid}.customer-grid label:nth-child(3){grid-column:1/-1}label{gap:.15rem}label>span{color:var(--muted);font-size:8pt}input,textarea{border:0;border-block-end:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0;min-block-size:auto;padding:.15rem 0;font-size:10pt}.picker{display:none}.print-picker-value{border-block-end:1px solid var(--line);padding:.15rem 0;font-size:10pt;display:block}.switch-row{gap:var(--space-3);background:0 0;border:0;align-items:baseline;padding:0;display:flex}.check input[type=checkbox]{min-block-size:auto;inline-size:auto;accent-color:var(--ink)}.compact-field{font-size:8pt}.compact-field input{inline-size:5rem}fieldset+fieldset{margin-block-start:var(--space-5)}.openings-section{box-shadow:none;border:0;border-radius:0;margin-block-start:var(--space-6);padding:0}.openings-section:before{display:none}.openings-section .section-head{border-block-end:1px solid var(--line-strong);margin-block-end:var(--space-3);padding-block-end:var(--space-2)}.openings-section .section-head h2{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:10pt;font-weight:700}.openings-section .section-head p{color:var(--muted);font-size:8pt}.openings{gap:0}.opening-row{box-shadow:none;padding:var(--space-2) 0;border:0;border-block-end:1px solid var(--line);break-inside:avoid;background:0 0;border-radius:0}.opening-head{margin-block-end:var(--space-1)}.opening-title{color:var(--muted);font-size:9pt}.row-grid{gap:var(--space-3);grid-template-columns:1fr 1fr 1.2fr;align-items:center;display:grid}.row-grid label>span{margin-block-end:0;font-size:7pt}.row-grid .picker-button{display:none}.row-grid .print-picker-value{font-size:9pt;font-weight:600;display:block}.measure-control{display:block}.measure-button,.measure-menu{display:none!important}.measurement-input{border-block-end-width:0;font-size:9pt}.measure-note{font-size:7pt}.row-total{margin:var(--space-1) 0 0;padding:var(--space-1) 0 0;text-align:end;border-block-start:0;font-size:10pt}.summary{max-block-size:none;box-shadow:none;border:0;border-radius:0;align-self:auto;margin-block-start:var(--space-6);padding:0;position:static;overflow:visible}.summary:before{display:none}.summary-head{border-block-end:2px solid var(--ink);padding-block-end:var(--space-3)}.summary-head .eyebrow{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:10pt}#summaryTitle{font-size:22pt}#summaryMeta{font-size:8pt}.totals{gap:var(--space-1) var(--space-4);max-inline-size:20rem;grid-template-columns:auto 1fr;margin-block-start:var(--space-3);display:grid}.totals div{display:contents}.totals dt{color:var(--muted);font-size:9pt}.totals dd{text-align:end;font-size:9pt}.totals div:last-child dt,.totals div:last-child dd{color:var(--ink);border-block-start:1px solid var(--line-strong);margin-block-start:var(--space-1);padding-block-start:var(--space-2);font-size:10pt;font-weight:700}.line-items{border-block-start:1px solid var(--line);margin-block-start:var(--space-4);padding-block-start:var(--space-3)}.line-item{gap:0 var(--space-3);padding-block:var(--space-1);break-inside:avoid;grid-template-columns:1fr auto;font-size:9pt;display:grid}.line-item strong{font-size:9pt;font-weight:600}.line-item span{color:var(--muted);font-size:8pt}.line-item b{align-self:center;font-size:9pt}.alerts{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
