@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--ink-strong:#0b1f1a;--ink-soft:#4a5a55;--surface:#f7f5f2;--surface-strong:#fff;--surface-muted:#e7e1d7;--panel:#fff;--line:#0b1f1a24;--brand-primary:#1d4f41;--brand-dark:#0b1f1a;--brand-accent:#f4b400;--shadow:0 10px 24px #0b1f1a0f;--ink:var(--ink-strong);--ink-mid:var(--ink-soft);--ink-muted:var(--ink-soft);--accent:var(--brand-primary);--color-text:var(--ink-strong);--color-muted:var(--ink-soft);--border-subtle:var(--line);--surface-hover:var(--surface-muted);--surface-raised:#f1ece3;--success:#285f49;--danger:#9a2e2e;--warning:#7a5800;--warning-surface:#fef3c7;--info:#0369a1;--error:var(--danger);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:48px;--shell-measure:1240px;--t-xs:.75rem;--t-sm:.845rem;--t-md:.9375rem;--t-lg:1.0625rem;--t-xl:1.3125rem;--t-2xl:1.6875rem;--t-3xl:2.125rem;--lead-tight:1.2;--lead:1.5;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:24px;--radius-pill:999px;--tap-min:44px;--action-primary:var(--brand-primary);--action-primary-ink:#fff;--action-primary-border:var(--brand-primary);color:var(--ink-strong);background:var(--surface);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--surface);margin:0}html{overflow-x:clip}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:not-allowed}.page-shell{width:min(1360px,100% - 32px);padding:var(--space-7) 0 var(--space-8);margin:0 auto}.landing-shell,.admin-home-shell,.admin-shell,.estimator-shell,.auth-shell{--shell-gap:var(--space-6);gap:var(--shell-gap);grid-template-columns:minmax(0,1fr);display:grid}.landing-nav{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.nav-brand{align-items:center;gap:var(--space-3);color:var(--ink-strong);text-decoration:none;display:flex}.nav-logo{flex-shrink:0;display:flex}.nav-wordmark{font-size:var(--t-md);letter-spacing:-.01em;font-weight:700;display:block}.nav-tagline{font-size:var(--t-sm);color:var(--ink-soft);font-weight:400;display:block}.landing-nav-actions,.value-grid,.portal-grid,.portal-plan-grid,.hero-checklist,.proof-strip{gap:var(--space-4);display:grid}.landing-nav-actions{grid-auto-flow:column;align-items:center}.landing-hero{align-items:start}.landing-copy{position:relative}.hero-checklist p{padding-left:var(--space-5);color:var(--ink-strong);margin:0;font-weight:500;position:relative}.hero-checklist p:before{content:"";border-radius:var(--radius-pill);background:var(--brand-accent);width:8px;height:8px;position:absolute;top:.52rem;left:0}.price-strip{align-items:center;gap:var(--space-3);width:fit-content;padding:var(--space-3) var(--space-4);border:2px solid var(--brand-dark);background:var(--brand-accent);color:var(--brand-dark);font-weight:800;display:inline-flex}.price-strip span{font-weight:600}.proof-strip,.value-grid,.portal-plan-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.proof-card,.portal-card,.portal-plan-card,.value-panel{border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-5);background:var(--panel)}.proof-card p,.portal-card p,.portal-plan-card p,.value-panel p{color:var(--ink-soft);margin-bottom:0}.demo-card{align-content:start;gap:var(--space-4);background:var(--surface-strong);color:var(--ink-strong);display:grid}.hero-screenshot-wrap{border-radius:var(--radius-lg);border:1px solid var(--line);aspect-ratio:12/7;position:relative;overflow:hidden}.hero-screenshot{object-fit:cover;width:100%;height:100%;display:block}.hero-screenshot-overlay{padding:var(--space-4);background:linear-gradient(#0000 45%,#00000073 100%);align-items:flex-end;display:flex;position:absolute;inset:0}.hero-screenshot-chip{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);background:#fffffff2;display:inline-flex;box-shadow:0 2px 12px #00000040}.hero-screenshot-chip strong{font-size:var(--t-lg);color:var(--brand-primary);font-weight:700}.hero-screenshot-chip span{font-size:var(--t-sm);color:var(--ink-mid)}.map-demo-card p,.hero-card-note{margin-bottom:0}.hero-actions .primary,.cta-button{justify-content:center;min-width:240px}.cta-panel{gap:var(--space-4);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.cta-button{display:inline-flex}.feature-strip{gap:var(--space-7);display:grid}.feature-strip-header{text-align:center;max-width:640px;margin:0 auto}.feature-strip-header h2{margin:var(--space-2) 0 var(--space-2) 0}.feature-strip-header p{color:var(--ink-soft);margin:0}.feature-strip-grid{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.feature-tile{border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-5);background:var(--panel)}.feature-tile h3{margin:0 0 var(--space-2) 0;font-size:var(--t-lg);color:var(--brand-primary)}.feature-tile p{color:var(--ink-soft);font-size:var(--t-md);margin:0;line-height:1.5}@media (width<=1023px){.feature-strip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.feature-strip-grid{grid-template-columns:1fr}}.portal-header,.portal-card{gap:var(--space-4);display:grid}.portal-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.portal-header-row{margin-bottom:var(--space-5)}.hero-panel,.brand-banner,.admin-hero{gap:var(--space-7);grid-template-columns:minmax(0,1.2fr) minmax(280px,1fr);align-items:stretch;display:grid}.hero-copy,.hero-card,.contact-panel,.panel,.contractor-card,.empty-state{border:1px solid var(--line);background:var(--panel);border-radius:var(--radius-md);box-shadow:var(--shadow)}.hero-copy,.hero-card,.contact-panel,.contractor-card,.empty-state,.panel{padding:var(--space-6)}.eyebrow,.card-kicker,.summary-label{text-transform:uppercase;letter-spacing:.12em;font-size:var(--t-sm);color:var(--ink-soft);font-weight:700}h1,h2,h3,p{margin-top:0}h1{margin-bottom:var(--space-4);letter-spacing:-.04em;font-size:clamp(2.4rem,5vw,4.8rem);line-height:.98}h2{font-size:var(--t-2xl);margin-bottom:var(--space-2);letter-spacing:-.03em;line-height:1.05}.hero-text,.brand-banner p,.panel-header p,.contractor-card p,.empty-state p{color:var(--ink-soft)}.hero-card{background:var(--surface-strong);color:var(--ink-strong)}.hero-card ol{margin:var(--space-4) 0 0;padding-left:var(--space-5)}.contractor-grid,.admin-grid,.estimator-grid{gap:var(--space-5);display:grid}.contractor-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.contractor-card{gap:var(--space-5);display:grid}.card-links,.admin-hero-links,.action-row,.segmented-control,.map-search-bar{gap:var(--space-3);flex-wrap:wrap;display:flex}.card-links a,.admin-hero-links a,.admin-hero-links button,.action-row a,.action-row button,.auth-form button,.admin-footer button,.panel-header button,.logo-upload-actions button,.share-actions button,.map-search-bar button,.segmented-control button,.button-link{border:1px solid var(--line);border-radius:var(--radius-pill);padding:var(--space-3) var(--space-4);background:var(--surface-strong);color:var(--ink-strong);white-space:nowrap;font-weight:600;text-decoration:none;transition:background-color .16s,border-color .16s,box-shadow .16s}.card-links a:hover,.admin-hero-links a:hover,.admin-hero-links button:not(:disabled):hover,.action-row a:hover,.action-row button:not(:disabled):hover,.auth-form button:not(:disabled):hover,.admin-footer button:not(:disabled):hover,.panel-header button:not(:disabled):hover,.logo-upload-actions button:not(:disabled):hover,.share-actions button:not(:disabled):hover,.map-search-bar button:not(:disabled):hover,.segmented-control button:not(:disabled):hover,.button-link:hover{background:var(--surface-muted);border-color:#0b1f1a47}.action-row.stretch>*{flex:1;justify-content:center;display:inline-flex}button.primary,a.primary,.segmented-control .active,.action-row .primary,.button-link.primary{background:var(--action-primary);color:var(--action-primary-ink);border-color:var(--action-primary-border)}button.primary:not(:disabled):hover,a.primary:hover,.action-row .primary:not(:disabled):hover,.button-link.primary:hover{background:color-mix(in srgb, var(--action-primary) 88%, #000);border-color:var(--action-primary-border)}button.primary.primary,a.primary.primary{background:var(--action-primary);color:var(--action-primary-ink);border-color:var(--action-primary-border)}button.primary.primary:not(:disabled):hover,a.primary.primary:hover{background:color-mix(in srgb, var(--action-primary) 88%, #000);border-color:var(--action-primary-border)}.success-card{max-width:760px}.success-checklist{gap:1rem;margin:1rem 0;display:grid}.success-checklist div{border-radius:var(--radius-xl);background:#ffffffb8;border:1px solid #1d4f4124;padding:1rem 1.1rem}.success-checklist p{color:#4f5e57;margin:.45rem 0 0}.brand-banner{position:relative;overflow:hidden}.brand-banner-horizontal{gap:var(--space-6);border:1px solid var(--line);background:var(--panel);border-radius:var(--radius-md);box-shadow:var(--shadow);padding:var(--space-5) var(--space-7);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.brand-banner-h-logo{padding-right:var(--space-6);border-right:1px solid var(--line);align-items:center;display:flex}.brand-logo-h{object-fit:contain;max-width:160px;height:64px;display:block}.brand-banner-h-name h1{margin-bottom:var(--space-1);font-size:clamp(1.5rem,3vw,2.4rem)}.brand-banner-h-name p{color:var(--ink-soft);margin-bottom:0}.brand-banner-h-contact{gap:var(--space-2);text-align:right;padding-left:var(--space-6);border-left:1px solid var(--line);font-weight:500;font-size:var(--t-md);display:grid}.brand-banner-h-contact a{color:var(--brand-primary);justify-self:end;font-weight:600;text-decoration:none}@media (width<=720px){.brand-banner-horizontal{padding:var(--space-4) var(--space-4);grid-template-rows:auto auto;grid-template-columns:auto 1fr;gap:0}.brand-banner-h-logo{padding-right:var(--space-3);border-right:none;align-self:center}.brand-logo-h{max-width:100px;height:44px}.brand-banner-h-name{align-self:center}.brand-banner-h-name h1{font-size:var(--t-xl);margin-bottom:2px}.brand-banner-h-name p{display:none}.brand-banner-h-contact{gap:var(--space-3) var(--space-5);text-align:left;border-left:none;border-top:1px solid var(--line);margin-top:var(--space-3);padding-left:0;padding-top:var(--space-3);font-size:var(--t-sm);flex-flow:wrap;grid-column:1/-1;display:flex}.brand-banner-h-contact a{justify-self:auto}}.estimator-steps{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.estimator-steps[hidden]{display:none}.estimator-shell>.est-rail,.estimator-shell .estimator-steps,.estimator-shell .estimate-summary{min-width:0}.estimator-steps button{align-items:center;gap:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);background:var(--surface-strong);text-align:left;cursor:pointer;width:100%;transition:border-color .16s,background-color .16s,box-shadow .16s;display:flex}.estimator-steps button:not(.is-active):hover{background:var(--surface-muted);border-color:#0b1f1a47}.estimator-steps .step-num{border-radius:var(--radius-pill);background:var(--brand-primary);color:#fff7e9;flex-shrink:0;place-items:center;width:28px;height:28px;font-weight:700;display:inline-grid}.estimator-steps .is-active{border-color:var(--brand-dark);background:color-mix(in srgb, var(--brand-primary) 12%, var(--surface-strong));box-shadow:inset 0 0 0 1px #0b1f1a0f}.estimator-steps .is-active .step-num{background:var(--brand-dark)}.estimator-steps .is-done .step-num{background:var(--brand-primary);color:var(--surface-strong)}.estimator-steps .is-done strong{color:var(--ink-soft)}.step-badge{font-size:var(--t-sm);color:var(--ink-soft);white-space:nowrap;margin-left:auto;font-weight:600}.estimate-summary{gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:color-mix(in srgb, var(--brand-primary) 6%, var(--surface-strong));flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.estimate-summary-item{flex-direction:column;gap:2px;display:flex}.estimate-summary-item strong{font-size:var(--t-lg)}.estimate-summary-item strong.estimate-summary-amount{font-size:var(--t-2xl);letter-spacing:-.02em;font-weight:800;line-height:var(--lead-tight)}.estimate-summary-note{font-size:var(--t-xs);color:var(--ink-soft);line-height:var(--lead);margin:0}.estimate-summary-rule{display:none}.site-details-fieldset{border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-3);margin:0;display:grid}.site-details-fieldset legend{padding:0 var(--space-2);font-weight:600}.optional-tag{font-weight:400;font-size:var(--t-sm);color:var(--ink-soft);margin-left:var(--space-2)}.site-notes-input{resize:vertical;min-height:52px}.sidebar-stack,.panel-stack,.admin-product-list{gap:var(--space-4);display:grid}.sidebar-stack{position:sticky;top:20px}.panel-header{justify-content:space-between;align-items:start;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.panel-header.compact{margin-bottom:var(--space-3)}.panel-map{min-height:auto}.map-frame{border-radius:var(--radius-xl);border:1px solid var(--line);min-height:clamp(500px,68vh,860px);overflow:hidden}.measure-map{height:clamp(500px,68vh,860px)}.estimator-shell.embed .map-frame{min-height:380px}.estimator-shell.embed .measure-map{height:380px}.estimator-shell.embed .page-shell{padding-top:var(--space-4);padding-bottom:var(--space-6)}@media (width<=720px){.estimator-shell.embed .map-frame{min-height:300px}.estimator-shell.embed .measure-map{height:300px}}.map-toolbar,.summary-box{gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface-strong);border:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.summary-box>div{gap:2px;display:grid}.button-link.subtle{white-space:normal;padding:var(--space-2) 0;color:var(--brand-primary);background:0 0;border:none;width:fit-content;font-weight:600;text-decoration:underline}.button-link.subtle:hover{color:var(--ink-strong);background:0 0;border:none}.measure-fallback{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--line)}.measure-fallback-panel{gap:var(--space-3);display:grid}.measure-fallback-row{align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.measure-fallback-row .field-stack{min-width:180px}.measure-fallback-row .primary{border-radius:var(--radius-pill);padding:var(--space-3) var(--space-4);min-height:var(--tap-min);font-weight:600}.site-details-toggle{text-align:left;border:1px dashed var(--line);border-radius:var(--radius-md);width:100%;padding:var(--space-3) var(--space-4);background:var(--surface-raised);color:var(--ink-strong);cursor:pointer;font-weight:600}.site-details-toggle:hover{background:var(--surface-muted)}.message-collapsed{gap:var(--space-1);padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-strong);display:grid}.trust-line{font-size:var(--t-sm);text-align:center}.lead-empty-activation{gap:var(--space-3);padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-raised);text-align:center;justify-items:center;display:grid}.lead-empty-activation h3{margin:0}.lead-empty-activation .helper-text{max-width:52ch}.lead-empty-link{justify-content:center;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.lead-empty-link code{padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-strong);font-size:var(--t-md);word-break:break-all}.lead-empty-link .primary{border-radius:var(--radius-pill);padding:var(--space-3) var(--space-4);min-height:var(--tap-min);font-weight:600}.search-result-list{gap:var(--space-2);margin-bottom:var(--space-3);display:grid}.search-result-item{text-align:left;border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-3) var(--space-3);background:var(--surface-strong)}.contact-form-grid,.lead-meta-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.product-list,.admin-product-list,.product-grid{gap:var(--space-4);display:grid}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-card,.admin-product-card{border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-4);background:var(--surface-strong)}.product-card{gap:var(--space-3);flex-direction:column;display:flex}.product-card.is-selected{border-color:var(--brand-primary);box-shadow:0 0 0 2px color-mix(in srgb, var(--brand-primary) 22%, transparent)}.product-tick{color:var(--brand-primary);margin-left:auto;font-weight:800}.product-price{font-size:var(--t-lg);color:var(--ink-strong);font-weight:700}.product-price small{font-size:var(--t-xs);color:var(--ink-soft);font-weight:500}.product-subtotal{font-size:var(--t-lg);color:var(--brand-primary);font-variant-numeric:tabular-nums;font-weight:700}.product-add{min-height:var(--tap-min);padding:0 var(--space-5);border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-strong);font-size:var(--t-sm);align-self:start;margin-top:auto;font-weight:600}.product-add:hover{background:var(--surface-muted);border-color:#0b1f1a47}.quantity-stepper{align-items:center;gap:var(--space-2);margin-top:auto;display:flex}.quantity-stepper button{width:var(--tap-min);height:var(--tap-min);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-strong);font-size:var(--t-lg);flex:none;font-weight:700;line-height:1}.quantity-stepper button:hover{background:var(--surface-muted);border-color:#0b1f1a47}.quantity-stepper label{flex:0 96px}.quantity-stepper input{text-align:center;padding:var(--space-2);font-weight:700}.product-components{border-top:1px solid var(--line);margin-top:var(--space-3);padding-top:var(--space-2)}.components-toggle{font-size:var(--t-sm);color:var(--ink-soft);cursor:pointer;background:0 0;border:none;padding:0}.components-toggle:hover{color:var(--ink)}.components-editor{margin-top:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.component-row{align-items:center;gap:var(--space-2);display:flex}.component-qty{width:72px}.component-formula,.component-unit{width:110px}.assembly-settings{gap:var(--space-3);margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--line);display:flex}.product-heading-row,.product-meta,.admin-inline-grid{justify-content:space-between;align-items:start;gap:var(--space-3);flex-wrap:wrap;display:flex}.product-meta{font-size:var(--t-md);color:var(--ink-soft);margin-top:var(--space-3)}.pill{padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);color:var(--brand-dark);font-size:var(--t-sm);background:#f4b4002e}.pill-muted{color:var(--ink-soft);background:#00000014}.lead-table .pill{margin-left:var(--space-2)}.quantity-field,.field-stack{gap:var(--space-2);display:grid}.quantity-field{max-width:130px;margin-top:var(--space-4);grid-template-columns:1fr}input,textarea,select{border-radius:var(--radius-md);width:100%;padding:var(--space-3) var(--space-4);background:var(--surface-strong);color:var(--ink-strong);border:1px solid #0b1f1a2e;transition:border-color .16s,box-shadow .16s}input:focus,textarea:focus,select:focus{border-color:var(--brand-primary);outline:none;box-shadow:0 0 0 3px #1d4f411f}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.color-field{gap:var(--space-3);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.logo-upload-row{align-items:center;gap:var(--space-4);padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);display:flex}.logo-preview{object-fit:contain;border-radius:var(--radius-xs);max-width:160px;height:64px}.logo-placeholder{height:64px;font-size:var(--t-sm);color:var(--ink-soft);align-items:center;display:flex}.logo-upload-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.color-wheel{width:52px;min-width:52px;height:52px;padding:var(--space-1);border-radius:var(--radius-lg);cursor:pointer}.color-swatch{border-radius:var(--radius-pill);border:1px solid #1d2a262e;width:28px;height:28px;box-shadow:inset 0 0 0 2px #ffffff73}.turnstile-frame{min-height:66px}.success-panel{gap:var(--space-2);border-radius:var(--radius-md);padding:var(--space-4);background:#e2f5ebdb;border:1px solid #285f4933;display:grid}.success-panel p{color:var(--success);margin-bottom:0}.success-panel button{border-radius:var(--radius-pill);width:fit-content;padding:var(--space-2) var(--space-3);background:#ffffffb8;border:1px solid #285f4933}.helper-text{color:var(--ink-soft);margin-bottom:0}.admin-grid{grid-template-columns:minmax(320px,.95fr) minmax(0,1.3fr);align-items:start}.full-span-panel{width:100%}.lead-list{gap:var(--space-4);display:grid}.lead-stat-grid{gap:var(--space-3);margin:var(--space-4) 0;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.lead-stat-card{border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-4);background:var(--surface-strong)}.lead-stat-card strong{margin-top:var(--space-1);font-size:var(--t-xl);display:block}.lead-pipeline{margin:var(--space-4) 0}.lead-pipeline-stages{gap:var(--space-3);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.pipeline-stage{padding:var(--space-3);text-align:left;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-strong);cursor:pointer;border-top:3px solid var(--line);flex-direction:column;align-items:flex-start;gap:2px;transition:border-color .12s,box-shadow .12s,transform .12s;display:flex}.pipeline-stage:hover{border-color:var(--brand-primary)}.pipeline-stage.active{border-color:var(--brand-primary);box-shadow:0 0 0 1px var(--brand-primary)}.pipeline-stage--new{border-top-color:var(--brand-accent)}.pipeline-stage--contacted{border-top-color:#3a7ca5}.pipeline-stage--quoted{border-top-color:#7a5800}.pipeline-stage--won{border-top-color:var(--success)}.pipeline-stage--lost{border-top-color:var(--danger)}.pipeline-stage-label{font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-soft);font-weight:700}.pipeline-stage-count{font-size:var(--t-xl);color:var(--brand-primary);line-height:1.1}.pipeline-stage-value{font-size:var(--t-sm);color:var(--ink-soft);font-variant-numeric:tabular-nums}.lead-pipeline-summary{gap:var(--space-2) var(--space-5);margin-top:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:color-mix(in srgb, var(--brand-primary) 5%, var(--surface-strong));font-size:var(--t-md);color:var(--ink-soft);flex-wrap:wrap;display:flex}.lead-pipeline-summary strong{color:var(--brand-primary);font-variant-numeric:tabular-nums}.lead-nudge{margin:var(--space-1) 0 2px;padding:2px var(--space-2);font-size:var(--t-xs);border-radius:999px;width:fit-content;font-weight:600;line-height:1.4;display:inline-block}.lead-nudge--urgent{color:var(--danger);background:#fdeaea}.lead-nudge--due{background:var(--warning-surface);color:var(--warning)}.lead-nudge--info{background:color-mix(in srgb, var(--brand-primary) 8%, transparent);color:var(--brand-primary)}@media (width<=720px){.lead-pipeline-stages{grid-template-columns:repeat(3,minmax(0,1fr))}}.lead-controls{gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;align-items:end;display:flex}.lead-archive-toggle{min-height:48px}.lead-table-wrap{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-strong);overflow-x:auto}.lead-table{border-collapse:collapse;width:100%;min-width:920px}.lead-table th,.lead-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.lead-table th{color:var(--ink-soft);font-size:var(--t-sm);text-transform:uppercase;letter-spacing:.08em;background:#fffaf3cc}.lead-table tr:last-child td{border-bottom:0}.lead-table tr.clickable-row{cursor:pointer}.lead-table tr.clickable-row:hover{background:#f4b40014}.lead-row>td:first-child{gap:var(--space-3);align-items:start;display:flex}.lead-row>td:first-child span{color:var(--ink-soft);font-size:var(--t-md);display:block}.lead-row.archived{opacity:.72}.lead-row select{min-width:132px;padding:var(--space-2) var(--space-3)}.lead-expand-button,.lead-action-row button,.lead-action-row a{border:1px solid var(--line);border-radius:var(--radius-pill);padding:var(--space-2) var(--space-3);background:var(--surface-strong);color:var(--ink-strong);white-space:nowrap;text-decoration:none}.lead-detail-row td{background:var(--surface)}.install-tip{gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:color-mix(in srgb, var(--brand-primary) 6%, var(--surface-strong));margin-top:var(--space-3);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.install-tip p{font-size:var(--t-md);color:var(--ink-soft);margin:0}.install-tip button{border:1px solid var(--line);border-radius:var(--radius-pill);padding:var(--space-2) var(--space-4);background:var(--surface-strong);color:var(--ink-strong);white-space:nowrap;font-weight:600}.install-tip button:hover{background:var(--surface-muted)}.job-photo-gallery{margin-top:var(--space-4)}.job-photo-grid{gap:var(--space-3);margin:var(--space-3) 0;flex-wrap:wrap;display:flex}.job-photo-thumb{border-radius:var(--radius-md,8px);border:1px solid var(--line);width:96px;height:96px;position:relative;overflow:hidden}.job-photo-thumb img{object-fit:cover;width:100%;height:100%;display:block}.job-photo-thumb button{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;width:22px;height:22px;padding:0;line-height:1;position:absolute;top:2px;right:2px}.lead-linked-badge{margin-left:var(--space-2);padding:2px var(--space-2);border-radius:var(--radius-pill);background:color-mix(in srgb, var(--brand-primary) 12%, var(--surface-strong));color:var(--brand-primary);font-size:var(--t-xs);white-space:nowrap;font-weight:600;display:inline-block}.lead-quick-actions{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.lead-quick-actions a{border:1px solid var(--line);border-radius:var(--radius-pill);padding:var(--space-2) var(--space-4);background:var(--surface-strong);color:var(--ink-strong);font-weight:600;font-size:var(--t-sm);white-space:nowrap;align-items:center;text-decoration:none;display:inline-flex}.lead-quick-actions a:hover{background:var(--surface-muted);border-color:#0b1f1a47}.lead-detail-grid{gap:var(--space-4);grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);display:grid}.lead-action-row{gap:var(--space-2);flex-wrap:nowrap;align-items:center;display:flex}.admin-shell .panel-header .eyebrow{display:none}.lead-table th,.lead-table td{padding:var(--space-3) var(--space-4);vertical-align:middle}.lead-row>td:first-child>div>span:first-of-type{white-space:nowrap}.lead-quick-actions{margin-top:var(--space-2);gap:var(--space-2);flex-wrap:nowrap}.lead-quick-actions a,.lead-row .lead-action-row button{padding:var(--space-1) var(--space-3);font-size:var(--t-xs)}.lead-nudge{font-size:var(--t-xs)}.lead-notes{resize:vertical;min-height:140px}.lead-map-section{gap:var(--space-3);margin-top:var(--space-5);display:grid}.lead-points-list{gap:var(--space-2) var(--space-4);color:var(--ink-soft);font-size:var(--t-md);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:0;padding:0;list-style:none;display:grid}.lead-card{border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-4);background:var(--surface-strong)}.map-pin{border-radius:var(--radius-pill);background:var(--brand-accent);border:2.5px solid var(--brand-dark);width:28px;height:28px;font-size:var(--t-xs);color:var(--brand-dark);cursor:grab;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;font-family:Inter,sans-serif;font-weight:700;transition:transform .12s,box-shadow .12s;display:flex;position:relative;box-shadow:0 2px 8px #00000059}.map-pin:hover{transform:scale(1.18);box-shadow:0 4px 12px #0006}.map-pin:active{cursor:grabbing;transform:scale(1.12)}.lead-map{height:100%;min-height:400px}.lead-map-numbered-pin{color:#fff;background:#c96f2d;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:700;line-height:1;display:flex;box-shadow:0 1px 4px #0006}.lead-map-fence-line-label{white-space:nowrap;color:#fff;padding:3px var(--space-2);border-radius:var(--radius-pill);pointer-events:none;letter-spacing:.02em;font-size:11px;font-weight:700;display:inline-block;transform:translate(-50%)translateY(-50%);box-shadow:0 1px 4px #00000073}.lead-card-header{justify-content:space-between;gap:var(--space-3);align-items:start;display:flex}.lead-message{min-height:140px;margin-top:var(--space-3)}.admin-panel{align-self:start}.lead-sections-breakdown{border:1px solid var(--line);border-radius:var(--radius-md);margin-top:var(--space-3);overflow:hidden}.lead-sections-toggle{width:100%;padding:var(--space-3) var(--space-4);background:var(--surface-raised);cursor:pointer;font-size:var(--t-md);color:var(--ink);text-align:left;border:none;justify-content:space-between;align-items:center;font-weight:600;display:flex}.lead-sections-toggle:hover{background:var(--line)}.lead-sections-toggle-icon{font-size:var(--t-xs);color:var(--ink-soft)}.lead-sections-body{flex-direction:column;gap:0;display:flex}.lead-section-item{padding:var(--space-3) var(--space-4);border-top:1px solid var(--line);gap:var(--space-2);flex-direction:column;display:flex}.lead-section-header{align-items:center;gap:var(--space-3);display:flex}.lead-section-length{font-size:var(--t-sm);color:var(--accent);margin-left:auto;font-weight:600}.lead-section-collapse{cursor:pointer;padding:2px var(--space-2);font-size:var(--t-xs);color:var(--ink-soft);background:0 0;border:none;line-height:1}.lead-section-collapse:hover{color:var(--ink)}.lead-section-product-row{gap:var(--space-2);align-items:center;display:flex}.lead-section-product-select{font-size:var(--t-sm);flex:1}.lead-section-bom-table{border-collapse:collapse;width:100%;font-size:var(--t-sm)}.lead-section-bom-table th,.lead-section-bom-table td{padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--line)}.lead-section-bom-table th{color:var(--ink-soft);font-weight:600;font-size:var(--t-sm);text-transform:uppercase;letter-spacing:.03em;text-align:left}.lead-section-bom-table .text-right{text-align:right}.bom-override-input{width:64px;font-size:var(--t-sm);text-align:right;padding:2px var(--space-1)}.lead-bom-totals{padding:var(--space-3) var(--space-4);border-top:2px solid var(--line);background:var(--surface-raised)}.lead-bom-totals h4{font-size:var(--t-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);margin:0 0 var(--space-2);font-weight:700}.admin-form-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.full-span{grid-column:1/-1}.grow{flex:1}.narrow{width:180px}.mt-2{margin-top:var(--space-2)}.checkbox-row{align-items:center;gap:var(--space-3);display:flex}.checkbox-row input{width:18px;height:18px}.loading-shell,.not-found-shell{place-items:center;min-height:100vh;display:grid}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skeleton-block{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--surface-muted) 25%, #f1ece3 50%, var(--surface-muted) 75%);background-size:200% 100%;animation:1.4s ease-in-out infinite skeleton-shimmer;display:block}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton-block{animation:none}}.skeleton-banner{align-items:center;gap:var(--space-5);display:flex}.skeleton-logo{border-radius:var(--radius-lg);flex-shrink:0;width:64px;height:64px}.skeleton-lines{gap:var(--space-2);flex:1;min-width:0;display:grid}.skeleton-line{max-width:420px;height:14px}.skeleton-line.short{max-width:160px;height:10px}.skeleton-line.title{max-width:280px;height:22px}.skeleton-step{height:54px}.skeleton-map{height:clamp(300px,45vh,480px);margin-top:var(--space-2)}.empty-state{text-align:center;max-width:520px}.empty-state a{margin-top:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-pill);padding:var(--space-3) var(--space-4);background:var(--surface-strong);text-decoration:none;display:inline-flex}.empty-state button{margin-top:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-pill);padding:var(--space-3) var(--space-4);background:var(--surface-strong);display:inline-flex}.auth-shell{place-items:center;min-height:100vh}.auth-card{border:1px solid var(--line);background:var(--panel);border-radius:var(--radius-2xl);width:min(460px,100%);box-shadow:var(--shadow);padding:var(--space-6)}.auth-form{gap:var(--space-4);margin-top:var(--space-5);display:grid}.admin-footer{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.share-panel,.go-live-share{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(280px,auto);align-items:center;display:grid}.share-actions{gap:var(--space-3);flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex}.billing-history,.billing-event-list{gap:var(--space-3);display:grid}.billing-event-card{border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-4);background:var(--surface-strong)}.billing-event-header,.billing-event-meta{gap:var(--space-3);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.billing-event-header span,.billing-event-meta{color:var(--ink-soft);font-size:var(--t-md)}.error-text{color:var(--danger);margin-bottom:0}.success-text{color:var(--success);margin-bottom:0}.result-layout{gap:var(--space-7);grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);align-items:start;display:grid}.result-fields,.result-message{gap:var(--space-4);display:grid}.result-area{resize:vertical;min-height:360px}.wizard-back-btn{white-space:nowrap;border:1px solid var(--line);border-radius:var(--radius-pill);padding:var(--space-3) var(--space-4);background:var(--surface-strong);flex-shrink:0;font-weight:600;transition:background-color .16s,border-color .16s}.wizard-back-btn:hover{background:var(--surface-muted);border-color:#0b1f1a47}.wizard-nav-row{gap:var(--space-3);padding-top:var(--space-2);border-top:1px solid var(--line);justify-content:space-between;display:flex}.wizard-nav-row button{border:1px solid var(--line);border-radius:var(--radius-pill);padding:var(--space-3) var(--space-5);background:var(--surface-strong);font-weight:600;transition:background-color .16s,border-color .16s}.wizard-nav-row button:hover{background:var(--surface-muted);border-color:#0b1f1a47}.saved-measurement-chip{padding:var(--space-2) var(--space-3);border-radius:var(--radius-pill);background:color-mix(in srgb, var(--brand-accent) 16%, var(--surface-strong));font-size:var(--t-sm);color:var(--brand-dark);white-space:nowrap;border:1px solid #1d4f4138;flex-shrink:0;align-items:center;font-weight:600;display:inline-flex}.hero-support-text{color:var(--ink-soft);font-size:var(--t-md);margin-bottom:0}.hero-card-label{text-transform:uppercase;letter-spacing:.12em;font-size:var(--t-sm);color:var(--ink-soft);margin-bottom:0;font-weight:700}.helper-panel{background:#f7f5f299}.portal-section{margin-top:var(--space-1)}.lead-expand-button:not(:disabled):hover,.lead-action-row button:not(:disabled):hover,.lead-action-row a:hover{background:var(--surface-muted);border-color:#0b1f1a47}.landing-nav{padding-bottom:var(--space-4);border-bottom:1px solid var(--line)}@media (width>=721px){.auth-card{padding:36px 40px}}.price-strip{border-radius:var(--radius-md)}.site-footer{border-top:1px solid var(--line);padding-top:var(--space-7);margin-top:var(--space-2);gap:var(--space-5);display:grid}.footer-brand{gap:var(--space-1);display:grid}.footer-tagline{color:var(--ink-soft);margin-bottom:0;font-weight:500}.footer-links{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.footer-links a{color:var(--ink-strong);border:1px solid var(--line);border-radius:var(--radius-pill);padding:var(--space-3) var(--space-4);background:var(--surface-strong);font-weight:600;text-decoration:none;transition:background-color .16s,border-color .16s}.footer-links a:hover{background:var(--surface-muted);border-color:#0b1f1a47}.footer-legal{justify-content:space-between;align-items:center;gap:var(--space-3);padding-bottom:var(--space-2);flex-wrap:wrap;display:flex}.footer-legal p{color:var(--ink-soft);font-size:var(--t-sm);margin-bottom:0}.footer-legal-links{gap:var(--space-4);display:flex}.footer-legal-links a{color:var(--ink-soft);font-size:var(--t-sm);font-weight:500;text-decoration:none}.footer-legal-links a:hover{color:var(--ink-strong)}@media (width<=1023px){.hero-panel,.brand-banner,.admin-hero,.admin-grid,.value-grid,.portal-plan-grid,.proof-strip,.cta-panel{grid-template-columns:1fr}.panel-map{min-height:auto}.share-panel,.go-live-share{grid-template-columns:1fr}.share-actions{justify-content:flex-start}.result-layout,.product-grid{grid-template-columns:1fr}}@media (width<=720px){.page-shell{width:min(100% - 20px,1360px);padding-top:var(--space-5)}.landing-nav,.landing-nav-actions{grid-auto-flow:row;justify-content:stretch}.hero-copy,.hero-card,.contact-panel,.contractor-card,.empty-state,.panel{padding:var(--space-5);border-radius:var(--radius-md)}h1{font-size:var(--t-3xl);line-height:1}h2{font-size:var(--t-xl)}.panel-header{flex-direction:column;align-items:stretch}.panel-header .wizard-back-btn{align-self:flex-start}.estimator-steps{gap:var(--space-2)}.estimator-steps button{align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-2);text-align:center;font-size:var(--t-md);flex-direction:column}.estimator-steps .step-num{width:24px;height:24px;font-size:var(--t-sm)}.estimator-steps .step-badge{margin-left:0}.map-search-bar,.map-toolbar,.action-row.stretch,.landing-nav-actions{grid-template-columns:1fr;display:grid}.map-frame{min-height:clamp(420px,62vh,680px)}.measure-map{height:clamp(420px,62vh,680px)}.map-pin{border-width:2px;width:20px;height:20px;font-size:.6rem}.panel-map{min-height:auto}.summary-box{grid-template-columns:1fr}.result-area{min-height:220px}.wizard-nav-row{flex-direction:column-reverse}.wizard-nav-row button{justify-content:center;width:100%}.lead-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-form-grid{grid-template-columns:1fr}.admin-inline-grid,.product-heading-row,.product-meta,.lead-card-header{flex-direction:column}.narrow,.quantity-field{width:100%;max-width:none}.contact-form-grid,.lead-meta-grid,.lead-detail-grid{grid-template-columns:1fr}}@media (width<=1023px){.sidebar-stack{position:static;top:auto}}.legal-shell{background:var(--surface);padding:var(--space-8) var(--space-6) 80px}.legal-content{background:var(--panel);border-radius:var(--radius-lg);max-width:720px;padding:var(--space-8) 56px;box-shadow:var(--shadow);margin:0 auto}.legal-content h1{font-size:var(--t-2xl);color:var(--ink-strong);margin:0 0 var(--space-2);font-weight:800}.legal-meta{color:var(--ink-soft);font-size:var(--t-md);margin-bottom:40px;line-height:1.8}.legal-content h2{font-size:var(--t-lg);color:var(--ink-strong);margin:36px 0 var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--line);font-weight:700}.legal-content p,.legal-content li{color:var(--ink-soft);margin-bottom:var(--space-3);line-height:1.75}.legal-content ul{padding-left:var(--space-5);margin-bottom:var(--space-4)}.legal-content li{margin-bottom:var(--space-2)}.legal-content a{color:var(--brand-primary);text-decoration:underline}.legal-table{border-collapse:collapse;width:100%;margin-bottom:var(--space-4);font-size:var(--t-md)}.legal-table th,.legal-table td{text-align:left;padding:var(--space-3) var(--space-3);border:1px solid var(--line);color:var(--ink-soft)}.legal-table th{background:var(--surface);color:var(--ink-strong);font-weight:600}.legal-footer{margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--line)}@media (width<=720px){.legal-content{padding:var(--space-7) var(--space-6)}}.site-nav{justify-content:space-between;align-items:center;gap:var(--space-4);padding-bottom:var(--space-5);border-bottom:1px solid var(--line);margin-bottom:var(--space-1);display:flex}.site-nav-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.auth-card h1{margin-bottom:var(--space-2);font-size:clamp(1.6rem,3vw,2rem);line-height:1.1}.auth-text-link{text-align:center;font-size:var(--t-sm);color:var(--ink-soft);padding:var(--space-1) 0;text-decoration:none;display:block}.auth-text-link:hover{color:var(--brand-primary);text-decoration:underline}.auth-shell-v2{gap:0;display:grid}.auth-card-wrap{padding:var(--space-8) 0 80px;place-items:center;min-height:58vh;display:grid}.auth-below-card{text-align:center;margin-top:var(--space-4);color:var(--ink-soft);font-size:var(--t-md)}.auth-below-card a{color:var(--brand-primary);font-weight:600;text-decoration:none}.auth-below-card a:hover{text-decoration:underline}.status-badge{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);font-size:var(--t-sm);letter-spacing:.04em;flex-shrink:0;font-weight:700;display:inline-flex}.status-badge:before{content:"";border-radius:var(--radius-pill);background:currentColor;flex-shrink:0;width:6px;height:6px}.status-badge--live{color:var(--success);background:#285f491f}.status-badge--draft{color:var(--ink-soft);background:#0b1f1a14}.status-badge--warn{color:#7a5800;background:#f4b4002e}.status-badge--error{color:var(--danger);background:#9a2e2e1a}.admin-header{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.admin-header-identity{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.admin-header-identity h1{margin-bottom:0;font-size:clamp(1.6rem,3vw,2.2rem);line-height:1}.admin-header-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.admin-tab-bar{scrollbar-width:none;-webkit-overflow-scrolling:touch;border-bottom:2px solid var(--line);gap:0;display:flex;overflow-x:auto}.admin-tab-bar::-webkit-scrollbar{display:none}.admin-tab-bar button{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);font-weight:600;font-size:var(--t-md);color:var(--ink-soft);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-2px;transition:color .14s,border-color .14s;display:inline-flex}.admin-tab-bar button:hover{color:var(--ink-strong)}.admin-tab-bar button.active{color:var(--brand-primary);border-bottom-color:var(--brand-primary)}.tab-badge{min-width:20px;height:20px;padding:0 var(--space-1);border-radius:var(--radius-pill);background:var(--brand-accent);color:var(--brand-dark);font-size:var(--t-xs);justify-content:center;align-items:center;font-weight:800;display:inline-flex}.trial-banner{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);font-size:var(--t-sm);color:#78350f;background:#fef3c7;border-bottom:1px solid #fcd34d;flex-wrap:wrap;display:flex}.trial-banner--urgent{color:#7f1d1d;background:#fee2e2;border-bottom-color:#fca5a5}.trial-banner-cta{padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);color:inherit;font-size:var(--t-sm);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid;flex-shrink:0;font-weight:600}.trial-banner-cta:hover{background:#0000000f}.step-progress{margin-bottom:var(--space-5);align-items:center;display:flex;overflow-x:auto}.step-progress-item{align-items:center;gap:var(--space-2);font-size:var(--t-sm);color:var(--ink-soft);white-space:nowrap;font-weight:600;display:flex}.step-progress-item.active{color:var(--brand-primary)}.step-progress-item.done{color:var(--success)}.step-progress-num{border-radius:var(--radius-pill);background:var(--surface-muted);width:22px;height:22px;color:var(--ink-soft);font-size:var(--t-xs);flex-shrink:0;place-items:center;font-weight:700;display:inline-grid}.step-progress-item.active .step-progress-num{background:var(--brand-primary);color:#fff}.step-progress-item.done .step-progress-num{background:var(--success);color:#fff}.step-progress-sep{background:var(--line);width:20px;height:1px;margin:0 var(--space-2);flex-shrink:0}.hero-tick-list{gap:var(--space-2);margin:0 0 var(--space-6);padding:0;list-style:none;display:grid}.hero-tick-list li{align-items:center;gap:var(--space-3);color:var(--ink-strong);font-weight:500;display:flex}.tick-icon{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--brand-accent) 22%, var(--surface-strong));border:1px solid color-mix(in srgb, var(--brand-accent) 55%, transparent);flex-shrink:0;place-items:center;width:20px;height:20px;display:grid}.hero-cta-note{font-size:var(--t-sm);color:var(--ink-soft);margin:0}.faq-section{gap:var(--space-6);display:grid}.faq-header{text-align:center}.faq-header h2{margin-bottom:var(--space-2)}.faq-header p{color:var(--ink-soft);margin-bottom:0}.faq-list{gap:var(--space-2);width:100%;max-width:720px;margin:0 auto;display:grid}.faq-item{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);overflow:hidden}.faq-question{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4) var(--space-5);text-align:left;font-size:var(--t-md);color:var(--ink-strong);cursor:pointer;background:0 0;border:none;font-weight:600;transition:background-color .12s;display:flex}.faq-question:hover{background:var(--surface)}.faq-chevron{color:var(--ink-soft);flex-shrink:0;transition:transform .2s}.faq-item.open .faq-chevron{transform:rotate(180deg)}.faq-answer{padding:0 var(--space-5) var(--space-4);color:var(--ink-soft);line-height:1.65;font-size:var(--t-md);border-top:1px solid var(--line);padding-top:var(--space-4);margin-top:0;display:none}.faq-answer p{margin-bottom:0}.faq-item.open .faq-answer{display:block}.social-proof-strip{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-pill);font-size:var(--t-sm);color:var(--brand-primary);background:#1d4f410f;border:1px solid #1d4f4124;width:fit-content;font-weight:600;display:flex}.success-icon{border-radius:var(--radius-pill);width:52px;height:52px;margin-bottom:var(--space-1);color:var(--success);background:#285f491a;border:2px solid #285f4938;place-items:center;display:grid}.su-table-wrap{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-strong);overflow-x:auto}.su-table{border-collapse:collapse;width:100%;min-width:640px}.su-table th,.su-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;font-size:var(--t-md)}.su-table th{color:var(--ink-soft);font-size:var(--t-sm);text-transform:uppercase;letter-spacing:.08em;background:#fffaf3cc;font-weight:600}.su-table tr:last-child td{border-bottom:0}.su-table tbody tr:hover td{background:var(--surface)}.su-controls{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.su-filter-row{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.su-filter-row select{width:auto;padding:var(--space-2) var(--space-3);font-size:var(--t-sm)}.su-stat-row{gap:var(--space-3);margin-bottom:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.su-stat-card{border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-4);background:var(--surface-strong)}.su-stat-card .summary-label{margin-bottom:var(--space-1);display:block}.su-stat-card strong{font-size:var(--t-xl);display:block}@media (width<=720px){.admin-header{flex-direction:column;align-items:flex-start}.admin-header-actions{width:100%}.admin-tab-bar button{padding:var(--space-3) var(--space-3);font-size:var(--t-sm)}.site-nav{flex-wrap:wrap}.auth-card-wrap{padding:var(--space-6) 0 var(--space-8);min-height:auto}}.hero-cta-group{align-items:flex-start;gap:var(--space-3);margin-top:var(--space-1);flex-direction:column;display:flex}.hero-cta-btn{font-size:var(--t-md);padding:var(--space-4) var(--space-7);min-height:48px}.hero-login-link{font-size:var(--t-sm);color:var(--ink-soft);padding:var(--space-2) 0;background:0 0;border-color:#0000}.hero-login-link:hover{color:var(--ink-strong);background:0 0;border-color:#0000;text-decoration:underline}.quote-builder-overlay{z-index:900;padding:var(--space-4);background:#0b1f1a7a;place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.quote-builder-panel{background:var(--panel);border-radius:var(--radius-xl);flex-direction:column;width:min(780px,100%);max-height:calc(100vh - 32px);display:flex;overflow:hidden;box-shadow:0 20px 60px #0000004d}.quote-builder-panel--fs{border-radius:0;width:100vw;height:100vh;max-height:100vh}.quote-builder-panel--fs .quote-builder-body{flex:1}.quote-builder-overlay:has(.quote-builder-panel--fs){padding:0}.quote-builder-fs-btn{cursor:pointer;padding:var(--space-1) var(--space-2);color:var(--ink-soft);margin-right:var(--space-1);border-radius:var(--radius-sm);background:0 0;border:none;place-items:center;display:grid}.quote-builder-fs-btn:hover{color:var(--ink-strong);background:var(--surface-muted)}.quote-builder-header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.quote-builder-header h2{font-size:var(--t-xl);margin:0}.quote-builder-close{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-strong);width:32px;height:32px;color:var(--ink-soft);font-size:var(--t-sm);cursor:pointer;place-items:center;padding:0;display:grid}.quote-builder-close:hover{background:var(--surface-muted);color:var(--ink-strong)}.quote-builder-steps{padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--line);scrollbar-width:none;flex-shrink:0;gap:0;display:flex;overflow-x:auto}.quote-builder-steps::-webkit-scrollbar{display:none}.quote-step-indicator{align-items:center;gap:var(--space-2);font-size:var(--t-sm);color:var(--ink-soft);white-space:nowrap;padding:0 var(--space-2);flex:1;justify-content:center;font-weight:600;display:flex;position:relative}.quote-step-indicator:not(:last-child):after{content:"";background:var(--line);width:1px;height:16px;position:absolute;top:50%;right:-4px;transform:translateY(-50%)}.quote-step-indicator.active{color:var(--brand-primary)}.quote-step-indicator.done{color:var(--success)}.step-num{border-radius:var(--radius-pill);background:var(--surface-muted);width:22px;height:22px;color:var(--ink-soft);font-size:var(--t-xs);flex-shrink:0;place-items:center;font-weight:700;display:inline-grid}.quote-step-indicator.active .step-num{background:var(--brand-primary);color:#fff}.quote-step-indicator.done .step-num{background:var(--success);color:#fff}.step-label{font-size:var(--t-sm)}.quote-builder-body{flex:1;padding:0;overflow-y:auto}.quote-step-content{padding:var(--space-6) var(--space-6);gap:var(--space-4);display:grid}.quote-step-content h3{font-size:var(--t-lg);margin:0}.quote-builder-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.quote-builder-footer-right{gap:var(--space-2);display:flex}.quote-section-card{border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-3);background:var(--surface-strong);display:grid}.quote-section-card-header{align-items:center;gap:var(--space-3);display:flex}.quote-section-dist{font-size:var(--t-sm);color:var(--brand-primary);margin-left:auto;font-weight:600}.contractor-map-measure{gap:var(--space-3);display:grid}.map-measure-address-row{gap:var(--space-2);display:flex}.map-measure-hint{justify-content:space-between;align-items:center;gap:var(--space-2);font-size:var(--t-sm);color:var(--ink-soft);display:flex}.fence-line-tabs-bar{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.fence-line-tabs-bar .fence-line-tabs{flex:1;min-width:0}.map-measure-hint-text{font-size:var(--t-sm);color:var(--ink-muted,var(--ink-soft));margin:2px 0 0}.map-measure-controls{gap:var(--space-2);display:flex}.map-measure-ctrl-btn{font-size:var(--t-sm);padding:var(--space-1) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-strong);color:var(--ink-strong)}.map-measure-ctrl-btn:disabled{opacity:.45}.lead-map-frame{border-radius:var(--radius-md);border:1px solid var(--line);overflow:hidden}.map-measure-sections{gap:var(--space-2);flex-wrap:wrap;display:flex}.map-measure-section-chip{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-strong);font-size:var(--t-sm);display:flex}.map-measure-total-chip{background:color-mix(in srgb, var(--brand-accent) 16%, var(--surface-strong));border-color:#1d4f4138;font-weight:700}.section-chip-label{color:var(--ink-soft)}.section-chip-dist{color:var(--ink-strong);font-weight:600}.fence-line-tabs{align-items:center;gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.fence-line-tab{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-strong);font-size:var(--t-sm);cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color .15s,background .15s;display:flex}.fence-line-tab:hover{border-color:var(--brand-accent);background:color-mix(in srgb, var(--brand-accent) 8%, var(--surface-strong))}.fence-line-tab--active{border-color:var(--brand-accent);background:color-mix(in srgb, var(--brand-accent) 14%, var(--surface-strong));font-weight:600}.fence-line-tab-color-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px;box-shadow:0 0 0 1.5px #0000002e}.fence-line-tab-label{cursor:text;color:var(--ink-strong)}.fence-line-tab-label-input{font-size:var(--t-sm);color:var(--ink-strong);background:0 0;border:none;outline:none;width:110px;padding:0;font-family:inherit}.fence-line-tab-dist{color:var(--ink-soft);font-size:var(--t-sm)}.fence-line-tab-delete{cursor:pointer;color:var(--ink-soft);font-size:var(--t-md);background:0 0;border:none;align-items:center;padding:0 0 0 2px;line-height:1;display:flex}.fence-line-tab-delete:hover{color:var(--error,#dc2626)}.fence-line-add-btn{border:1px dashed var(--line);border-radius:var(--radius-pill);padding:var(--space-1) var(--space-3);font-size:var(--t-sm);color:var(--ink-soft);cursor:pointer;background:0 0;transition:border-color .15s,color .15s}.fence-line-add-btn:hover{border-color:var(--brand-accent);color:var(--brand-accent)}.map-measure-ctrl-btn--primary{border-color:var(--brand-accent);background:var(--brand-accent);color:#fff}.site-markup-panel{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px dashed var(--line)}.site-markup-header{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.site-markup-title{font-size:var(--t-sm);color:var(--ink-strong);font-weight:700}.site-markup-mode-buttons{gap:var(--space-2);display:flex}.site-markup-mode-btn{font-size:var(--t-sm);padding:var(--space-1) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-strong);color:var(--ink-strong)}.site-markup-mode-btn--active{border-color:var(--brand-accent);background:color-mix(in srgb, var(--brand-accent) 16%, var(--surface-strong));font-weight:600}.site-markup-draw-row{justify-content:space-between;align-items:center;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.site-markup-swatches{gap:var(--space-2);display:flex}.site-markup-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:20px;height:20px;padding:0}.site-markup-swatch--active{border-color:var(--ink-strong)}.site-annotation-list{margin-top:var(--space-3)}.site-annotation-icon-select{font-size:var(--t-sm);color:var(--ink-strong);background:0 0;border:none;max-width:130px}.site-markup-draft-dot{border:2px solid #fff;border-radius:50%;width:10px;height:10px;box-shadow:0 1px 4px #0006}.site-markup-pin-wrap{flex-direction:column;align-items:center;gap:3px;display:flex}.site-markup-pin{cursor:default;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;display:flex;box-shadow:0 2px 8px #00000059}.site-markup-pin-label{white-space:nowrap;text-overflow:ellipsis;color:#fff;max-width:160px;padding:3px var(--space-2);border-radius:var(--radius-pill);letter-spacing:.02em;font-size:11px;font-weight:700;display:inline-block;overflow:hidden;box-shadow:0 1px 4px #00000073}.fence-line-section-header{align-items:center;gap:var(--space-2);margin:var(--space-4) 0 var(--space-1);display:flex}.fence-line-section-header:before,.fence-line-section-header:after{content:"";background:var(--line);flex:1;height:1px}.fence-line-section-label{font-size:var(--t-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);white-space:nowrap;font-weight:600}.extras-catalog-section,.extras-freeform-section{gap:var(--space-2);display:grid}.extras-catalog-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.extras-catalog-chip{padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-strong);font-size:var(--t-sm);color:var(--ink-strong);cursor:pointer}.extras-catalog-chip:hover{background:var(--surface-muted);border-color:#0b1f1a47}.extras-freeform-row{gap:var(--space-2);flex-wrap:wrap;align-items:end;display:flex}.extras-qty-input{width:72px}.extras-unit-input{width:80px}.extras-price-input{width:110px}.extras-remove-btn{padding:var(--space-1) var(--space-2);border-radius:var(--radius-xs);color:var(--ink-soft);font-size:var(--t-sm);cursor:pointer;background:0 0;border:1px solid #0000}.extras-remove-btn:hover{color:var(--danger);background:#9a2e2e14;border-color:#9a2e2e2e}.quote-review-grid{gap:var(--space-4);display:grid}.quote-summary-panel{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-strong);margin-top:var(--space-3);display:grid}.quote-proposal-actions{align-items:center;gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.quote-page{gap:var(--space-5);max-width:720px;margin:0 auto;display:grid}.quote-page-header{align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-5);border-radius:var(--radius-md);background:var(--brand-primary,#1d4f41);color:#fff;display:flex}.quote-page-header .eyebrow{color:#fffc}.quote-page-header h1{font-size:var(--t-2xl);margin:2px 0}.quote-page-contact{color:#ffffffe6;font-size:var(--t-md);margin:0}.quote-page-logo{object-fit:contain;width:auto;max-width:140px;height:56px;padding:var(--space-1);background:#fff;border-radius:8px}.quote-page-card{gap:var(--space-4);display:grid}.quote-page-meta{justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;display:flex}.quote-page-ref{text-align:right;gap:2px;display:grid}.quote-page-table{border-collapse:collapse;width:100%}.quote-page-table th,.quote-page-table td{padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--line)}.quote-page-table thead th{font-size:var(--t-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted,#777)}.quote-page-table .text-right{text-align:right}.quote-page-total{padding:var(--space-4) var(--space-4);border-radius:var(--radius-md);background:var(--brand-primary,#1d4f41);color:#fff;font-size:var(--t-lg);justify-content:space-between;align-items:center;display:flex}.quote-page-total strong{font-size:var(--t-xl)}.quote-page-disclaimer{font-style:italic}.quote-page-terms{margin-top:var(--space-2)}.quote-page-terms-text{white-space:pre-wrap}.quote-page-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.quote-page-accepted{gap:2px;display:grid}.quote-page-accepted strong{color:var(--brand-primary,#1d4f41)}.quote-page-note{margin:0}.quote-page-footer{text-align:center;padding:var(--space-2) 0 var(--space-6)}.quote-summary-section{gap:var(--space-2);display:grid}.quote-summary-heading{font-size:var(--t-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);margin:0;font-weight:700}.quote-section-row{align-items:center;gap:var(--space-3);display:flex}.quote-section-label{font-weight:600;font-size:var(--t-sm)}.quote-summary-total{padding:var(--space-3) var(--space-4);background:color-mix(in srgb, var(--brand-accent) 12%, var(--surface-strong));border-radius:var(--radius-md);border:1px solid #1d4f4129;justify-content:space-between;align-items:center;font-weight:600;display:flex}.quote-summary-total strong{font-size:var(--t-lg);color:var(--brand-primary)}.quote-share-banner{margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);background:color-mix(in srgb, var(--brand-accent) 14%, var(--surface-strong));border-radius:var(--radius-md);color:var(--brand-primary);font-weight:600;font-size:var(--t-md);border:1px solid #1d4f4129}.quote-margin-panel{margin-top:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:color-mix(in srgb, var(--brand-primary) 4%, var(--surface-strong));border:1px dashed #0b1f1a47}.quote-margin-header{margin-bottom:var(--space-2);justify-content:space-between;align-items:baseline;display:flex}.quote-margin-title{color:var(--brand-primary);font-weight:700}.quote-margin-private{font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft)}.quote-margin-row{font-size:var(--t-md);color:var(--ink-soft);font-variant-numeric:tabular-nums;justify-content:space-between;padding:3px 0;display:flex}.quote-margin-row--profit{margin-top:var(--space-1);padding-top:var(--space-2);border-top:1px solid var(--line);color:var(--ink);font-size:var(--t-md)}.quote-margin-pct{margin-left:var(--space-1);padding:1px var(--space-2);font-size:var(--t-sm);background:color-mix(in srgb, var(--success) 16%, transparent);color:var(--success);border-radius:999px;font-weight:700;display:inline-block}.quote-margin-pct--low{background:var(--warning-surface);color:var(--warning)}.quote-margin-note,.quote-margin-prompt{margin:var(--space-2) 0 0;font-size:var(--t-sm);color:var(--ink-soft)}.quote-margin-prompt{margin-top:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:color-mix(in srgb, var(--brand-primary) 5%, var(--surface-strong));border:1px solid var(--line)}.required-star{color:var(--danger)}.break-sections-btn{margin-top:var(--space-2);color:var(--brand-primary);font-size:var(--t-sm);padding:var(--space-1) 0;cursor:pointer;text-align:left;background:0 0;border:none;font-weight:600}.break-sections-btn:hover{text-decoration:underline}.quote-section-mode-header{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}@media (width<=720px){.quote-builder-steps{padding:var(--space-3) var(--space-4)}.step-label{display:none}.quote-builder-header,.quote-step-content,.quote-builder-footer{padding-left:var(--space-4);padding-right:var(--space-4)}.extras-freeform-row{flex-direction:column}.extras-qty-input,.extras-unit-input,.extras-price-input{width:100%}}.measure-mode-tabs{gap:var(--space-1);margin-bottom:var(--space-3);border-bottom:2px solid var(--border-subtle);padding-bottom:0;display:flex}.measure-mode-tab{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);cursor:pointer;font-size:var(--t-sm);color:var(--color-muted);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:4px 4px 0 0;margin-bottom:-2px;font-weight:500;transition:color .15s,border-color .15s;display:inline-flex}.measure-tab-icon{flex-shrink:0}.measure-mode-tab:hover{color:var(--color-text);background:var(--surface-hover)}.measure-mode-tab--active{color:var(--brand-primary);border-bottom-color:var(--brand-primary)}.pdf-upload-zone{border:2px dashed var(--border-subtle);border-radius:var(--radius-md);padding:40px var(--space-6);text-align:center;background:var(--surface-strong);transition:border-color .2s;position:relative}.pdf-upload-zone:hover{border-color:var(--brand-accent)}.pdf-upload-label{align-items:center;gap:var(--space-2);cursor:pointer;flex-direction:column;display:flex}.pdf-upload-icon{font-size:var(--t-3xl);line-height:1}.pdf-upload-title{font-size:var(--t-md);color:var(--color-text);margin:0;font-weight:600}.pdf-upload-hint{font-size:var(--t-sm);color:var(--color-muted);margin:0}.pdf-upload-input-hidden{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.pdf-plan-measure{gap:var(--space-2);flex-direction:column;display:flex}.pdf-plan-header{align-items:center;gap:var(--space-3);font-size:var(--t-sm);display:flex}.pdf-plan-filename{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.pdf-plan-replace-btn{cursor:pointer;color:var(--brand-primary);font-size:var(--t-sm);text-decoration:underline;position:relative}.pdf-scale-banner{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:var(--t-sm);color:#713f12;background:#fef9c3;border:1px solid #fde047;display:flex}.pdf-scale-banner--active{color:#1e40af;background:#dbeafe;border-color:#93c5fd}.pdf-scale-start-btn{padding:var(--space-1) var(--space-3);color:#fff;border-radius:var(--radius-xs);cursor:pointer;font-size:var(--t-sm);background:#713f12;border:none;margin-left:auto}.pdf-scale-distance-row{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--surface-strong);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:var(--t-sm);flex-wrap:wrap;display:flex}.pdf-scale-distance-input{width:90px}.pdf-scale-chip-row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.pdf-scale-chip{align-items:center;gap:var(--space-1);padding:3px var(--space-3);background:color-mix(in srgb, var(--brand-accent) 12%, var(--surface-strong));border:1px solid color-mix(in srgb, var(--brand-accent) 30%, transparent);border-radius:var(--radius-xl);font-size:var(--t-sm);color:var(--brand-primary);font-weight:500;display:inline-flex}.pdf-scale-reset-btn{font-size:var(--t-sm);color:var(--color-muted);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.pdf-canvas-container{border:1px solid var(--border-subtle);border-radius:var(--radius-md);-webkit-user-select:none;user-select:none;background:#f8f9fa;width:100%;position:relative;overflow:hidden}.pdf-canvas{width:100%;height:auto;display:block}.pdf-loading-overlay{font-size:var(--t-md);color:var(--color-muted);z-index:10;background:#f8f9fad9;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.cursor-crosshair{cursor:crosshair!important}.cursor-cell{cursor:cell!important}.cursor-default{cursor:default!important}.plan-markup-viewer{gap:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.pdf-customer-plan-badge{font-size:var(--t-xs);color:var(--color-muted);margin-left:var(--space-1);font-weight:400}.pdf-page-nav{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;display:flex}.pdf-page-btn{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--surface-strong);cursor:pointer;width:32px;height:32px;font-size:var(--t-md);justify-content:center;align-items:center;transition:background .15s;display:flex}.pdf-page-btn:hover:not(:disabled){background:var(--surface-hover)}.pdf-page-btn:disabled{opacity:.35;cursor:default}.pdf-page-label{font-size:var(--t-sm);color:var(--color-text);text-align:center;min-width:90px}.pdf-page-drawing-hint{font-size:var(--t-xs);color:var(--color-muted)}.pdf-ref-page-banner{padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);font-size:var(--t-sm);color:#0369a1;align-items:center;gap:var(--space-2);background:#f0f9ff;border:1px solid #bae6fd;display:flex}.pdf-ref-page-link{color:#0369a1;cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.pdf-total-export-row{align-items:center;gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.pdf-total-export-row .map-measure-section-chip{flex:1;min-width:0;margin-top:0}.pdf-export-btn{background:var(--brand-primary);color:#fff;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);font-size:var(--t-sm);cursor:pointer;white-space:nowrap;border:none;font-weight:600;transition:background .15s,opacity .15s}.pdf-export-btn:hover:not(:disabled){background:var(--brand-dark)}.pdf-export-btn:disabled{opacity:.55;cursor:default}.pdf-zoom-controls{align-items:center;gap:var(--space-1);margin-bottom:var(--space-1);display:flex}.pdf-zoom-btn{background:var(--surface-strong);border:1px solid var(--line);border-radius:var(--radius-sm);padding:3px var(--space-3);font-size:var(--t-md);cursor:pointer;color:var(--ink-strong);text-align:center;min-width:32px;font-weight:600;line-height:1.4;transition:background .15s}.pdf-zoom-btn:disabled{opacity:.4;cursor:default}.pdf-zoom-btn:not(:disabled):hover{background:var(--surface-muted)}.pdf-zoom-reset{font-size:var(--t-sm);padding:3px var(--space-2);color:var(--brand-primary);font-weight:500}.pdf-zoom-level{font-size:var(--t-sm);color:var(--ink-soft);text-align:center;font-variant-numeric:tabular-nums;min-width:36px}.cta-band{background:var(--brand-primary);border-radius:var(--radius-lg);justify-content:space-between;align-items:center;gap:var(--space-6);flex-wrap:wrap;padding:40px 36px;display:flex}.cta-band h2{font-size:var(--t-2xl);color:#fff;margin:0 0 var(--space-2) 0;font-weight:800}.cta-band-sub{font-size:var(--t-md);color:#ffffffd9;margin:0}.pricing-shell{gap:var(--space-6);display:grid}.pricing-hero{text-align:center;width:100%;max-width:640px;margin:0 auto}.pricing-card{width:100%;max-width:760px;margin:0 auto}.pricing-amount{align-items:flex-end;gap:var(--space-2);margin-bottom:var(--space-1);display:flex}.pricing-amount strong{font-size:3rem;font-weight:900;line-height:1}.pricing-amount span{font-size:var(--t-lg);color:var(--ink-soft);padding-bottom:var(--space-2)}.pricing-sub{font-size:var(--t-sm);color:var(--ink-soft);margin:0 0 var(--space-7) 0}.pricing-feature-header{border-top:1px solid var(--line);padding-top:var(--space-6);font-size:var(--t-sm);text-transform:uppercase;letter-spacing:1px;color:var(--ink-soft);margin:0 0 var(--space-4) 0;font-weight:700}.pricing-feature-grid{gap:var(--space-3) var(--space-6);grid-template-columns:1fr 1fr;margin:0;padding:0;list-style:none;display:grid}.pricing-feature-item{align-items:center;gap:var(--space-3);font-size:var(--t-sm);display:flex}.pricing-dot{background:var(--brand-accent);border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.pricing-cta{margin-top:var(--space-7);text-align:center}.pricing-cta-btn{text-align:center;width:100%;padding:var(--space-4) 40px;display:block}.trust-strip{gap:var(--space-3);grid-template-columns:repeat(2,1fr);width:100%;max-width:760px;margin:0 auto;display:grid}.trust-card strong{font-size:var(--t-sm);margin-bottom:var(--space-1);display:block}.trust-card p{font-size:var(--t-sm);color:var(--ink-soft);margin:0}.how-it-works-shell{gap:var(--space-6);display:grid}.how-steps-single{gap:var(--space-3);margin-top:var(--space-5);grid-template-columns:1fr;display:grid}.how-steps-two-col{gap:var(--space-4);margin-top:var(--space-5);grid-template-columns:repeat(2,1fr);display:grid}.step-card{background:var(--surface);border-radius:var(--radius-lg);padding:var(--space-6)}.step-card h3{font-size:var(--t-lg);margin:var(--space-1) 0 var(--space-2);font-weight:700}.outcome-box{background:var(--brand-primary);border-radius:var(--radius-lg);padding:36px}.outcome-box h2{color:#fff;margin-bottom:var(--space-4)}.outcome-box ul{padding-left:var(--space-5);color:#ffffffd9;font-size:var(--t-md);margin:0;line-height:1.85}.outcome-box li strong{color:#fff}.setup-box{border:1px solid var(--line);border-radius:var(--radius-lg)}@media (width<=720px){.cta-band{flex-direction:column;align-items:flex-start}.pricing-feature-grid,.trust-strip,.how-steps-two-col{grid-template-columns:1fr}}@media (pointer:coarse){input,textarea,select{font-size:16px}.search-result-item,.map-measure-ctrl-btn,.fence-line-tab,.fence-line-add-btn,.lead-expand-button,.lead-action-row button,.lead-action-row a,.lead-quick-actions a,.extras-catalog-chip,.trial-banner-cta,.pdf-page-btn,.pdf-zoom-btn{min-height:var(--tap-min)}}@media (width<=720px){.hero-text,.helper-text,.value-panel p,.feature-tile p,.proof-card p,.product-meta,.faq-question,.faq-answer,.pricing-feature-item,.trust-card p,.cta-band-sub,.step-card{font-size:var(--t-md)}.quote-builder-overlay{padding:0}.quote-builder-panel{border-radius:0;width:100%;height:100dvh;max-height:100dvh}.quote-builder-body .lead-section-bom-table{white-space:nowrap;-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}.lead-table-wrap{background:0 0;border:none;overflow-x:visible}.lead-table{min-width:0}.lead-table thead{display:none}.lead-table tbody,.lead-table tr,.lead-table td{width:100%;display:block}.lead-row{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-strong);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-3)}.lead-row>td{padding:var(--space-2) 0;text-align:left;border:none}.lead-row>td:before{content:attr(data-label);font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);margin-bottom:2px;font-weight:700;display:block}.lead-row>td:first-child{gap:var(--space-3);padding-bottom:var(--space-3);margin-bottom:var(--space-1);border-bottom:1px solid var(--line);align-items:flex-start;display:flex}.lead-row>td:first-child:before{content:none}.lead-row select{width:100%;min-width:0}.lead-detail-row>td{padding:var(--space-3) 0;text-align:left;display:block}.lead-detail-row>td:before{content:none}}@media (pointer:coarse){.map-pin{width:30px;height:30px;font-size:var(--t-xs);border-width:2.5px}.map-pin:before{content:"";border-radius:var(--radius-pill);position:absolute;inset:-8px}}@media (width<=720px){.assembly-settings,.component-row{flex-wrap:wrap}.component-row>input.grow{flex:100%}.component-row .component-qty,.component-row .component-formula,.component-row .component-unit{flex:30%;width:auto;min-width:92px}.quote-builder-header{padding-top:calc(18px + env(safe-area-inset-top))}.quote-builder-footer{padding-bottom:calc(14px + env(safe-area-inset-bottom))}.estimator-shell .estimate-summary{z-index:40;box-shadow:var(--shadow);position:sticky;top:8px}.panel-map .map-toolbar{bottom:calc(8px + env(safe-area-inset-bottom));z-index:40;background:var(--surface-strong);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-3) var(--space-3);gap:var(--space-2);margin-top:var(--space-3);position:sticky;box-shadow:0 -6px 24px #0b1f1a1f}.panel-map .map-toolbar p{font-size:var(--t-sm);margin:2px 0 0}.panel-map .map-toolbar .action-row{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.panel-map .map-toolbar .action-row .primary{grid-column:1/-1}.wizard-nav-row{bottom:calc(8px + env(safe-area-inset-bottom));z-index:40;background:var(--surface-strong);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-3) var(--space-3);position:sticky;box-shadow:0 -6px 24px #0b1f1a1f}}.danger-zone{margin-top:var(--space-6);padding:var(--space-4);border:1px solid color-mix(in srgb, var(--danger) 45%, var(--line));border-radius:var(--radius-md);background:color-mix(in srgb, var(--danger) 6%, var(--surface-strong))}.danger-zone h3{margin:0 0 var(--space-2);color:var(--danger)}.danger-button{border:1px solid var(--danger);background:var(--danger);color:#fff;border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);cursor:pointer}.danger-button:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{z-index:100;padding:var(--space-4);background:#0b1f1a80;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{width:100%;max-width:420px;padding:var(--space-5);border-radius:var(--radius-lg);background:var(--surface-strong);border:1px solid var(--line);box-shadow:0 12px 40px #0b1f1a40}.modal-card h3{margin:0 0 var(--space-2)}.modal-card--wide{max-width:780px}.schedule-toolbar{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.schedule-toolbar h3{flex:1;margin:0}.schedule-grid{gap:var(--space-1);grid-template-columns:repeat(7,1fr);display:grid}.schedule-grid-header{text-align:center;font-size:var(--t-sm);color:var(--ink-soft);padding:var(--space-1) 0;font-weight:700}.schedule-day{align-items:center;gap:var(--space-1);min-height:52px;padding:var(--space-2) var(--space-1);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-strong);cursor:pointer;font:inherit;color:inherit;flex-direction:column;display:flex}.schedule-day:hover{background:var(--surface-hover)}.schedule-day.is-other-month{opacity:.45}.schedule-day.is-today .schedule-day-number{color:var(--accent);font-weight:700}.schedule-day.is-selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.schedule-day-number{font-size:var(--t-md)}.schedule-day-count{min-width:18px;height:18px;padding:0 var(--space-1);border-radius:var(--radius-pill);background:var(--accent);color:#fff;font-size:var(--t-xs);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.schedule-day-panel{margin-top:var(--space-5);border-top:1px solid var(--line);padding-top:var(--space-4)}.schedule-booking-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.schedule-booking-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-strong);flex-wrap:wrap;display:flex}@media (width<=720px){.schedule-grid{gap:2px}.schedule-day{min-height:40px;padding:var(--space-1) 2px}.schedule-grid-header{font-size:var(--t-xs)}}.csv-row-error{color:var(--danger);font-size:var(--t-sm)}.map-sheet{display:contents}.map-sheet-handle{display:none}.estimator-shell.measure-bleed{gap:var(--space-3);padding-bottom:0}.estimator-shell.measure-bleed .brand-banner-horizontal{padding:var(--space-3) var(--space-4);gap:var(--space-3);align-items:center}.estimator-shell.measure-bleed .brand-banner-h-name .eyebrow,.estimator-shell.measure-bleed .brand-banner-h-name p,.estimator-shell.measure-bleed .brand-banner-h-contact{display:none}.estimator-shell.measure-bleed .brand-banner-h-name h1{font-size:var(--t-lg);margin:0}.estimator-shell.measure-bleed .brand-logo-h{max-height:36px}.estimator-shell.measure-bleed .estimate-summary{display:none}.panel-map--bleed{box-shadow:none;background:0 0;border:none;border-radius:0;width:100vw;margin-left:calc(50% - 50vw);padding:0;position:relative;overflow:hidden}.panel-map--bleed .panel-header{display:none}.panel-map--bleed .map-frame{border:none;border-radius:0;min-height:0;position:absolute;inset:0}.panel-map--bleed .measure-map{height:100%}.panel-map--bleed .map-search-bar{z-index:4;align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--surface-strong);border:1px solid var(--line);border-radius:var(--radius-md);grid-template-columns:1fr auto auto;margin:0;display:grid;position:absolute;top:10px;left:10px;right:10px;box-shadow:0 6px 20px #0b1f1a2e}.panel-map--bleed .map-search-bar .field-stack>span{display:none}.panel-map--bleed .map-search-bar button{padding:var(--space-3) var(--space-3);min-height:var(--tap-min)}.panel-map--bleed>.error-text,.panel-map--bleed .search-result-list{z-index:6;max-height:45%;padding:var(--space-2);background:var(--surface-strong);border:1px solid var(--line);border-radius:var(--radius-md);margin:0;position:absolute;top:68px;left:10px;right:10px;overflow-y:auto;box-shadow:0 6px 20px #0b1f1a2e}.panel-map--bleed .measure-type-tabs{z-index:4;padding:var(--space-1);background:var(--surface-strong);border-radius:var(--radius-pill);border-bottom:none;margin:0;position:absolute;top:68px;left:10px;right:10px;box-shadow:0 6px 20px #0b1f1a2e}.panel-map--bleed .measure-mode-tab{border-radius:var(--radius-pill);min-height:var(--tap-min);border-bottom:none;flex:1;justify-content:center;margin-bottom:0}.panel-map--bleed .map-sheet{z-index:5;padding:0 14px calc(10px + env(safe-area-inset-bottom));background:var(--surface-strong);border-top:1px solid var(--line);border-radius:var(--radius-xl) var(--radius-xl) 0 0;flex-direction:column;display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -10px 30px #0b1f1a2e}.panel-map--bleed .map-sheet:not(.map-sheet--expanded) .fence-line-tabs,.panel-map--bleed .map-sheet:not(.map-sheet--expanded) .measure-fallback{display:none}.panel-map--bleed .map-sheet--expanded{max-height:80%;overflow-y:auto}.panel-map--bleed .map-sheet-handle{z-index:1;width:100%;min-height:26px;padding:var(--space-2) 0 var(--space-1);background:var(--surface-strong);cursor:pointer;border:none;flex:none;order:-2;justify-content:center;align-items:center;display:flex;position:sticky;top:0}.map-sheet-grip{border-radius:var(--radius-pill);background:var(--line);width:42px;height:4px;display:block}.panel-map--bleed .map-sheet .map-toolbar{padding:0 0 var(--space-2);box-shadow:none;gap:var(--space-2);background:0 0;border:none;border-radius:0;order:-1;margin:0;position:static}.panel-map--bleed .map-sheet .fence-line-tabs,.panel-map--bleed .map-sheet .measure-fallback{margin-top:var(--space-3)}.map-locate-btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-min);display:inline-flex}.panel-map--bleed .map-locate-btn{padding:var(--space-3);aspect-ratio:1}.panel-map--bleed .map-locate-btn .map-locate-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.est-appbar{z-index:20;align-items:center;gap:var(--space-3);height:52px;padding-inline:max(var(--space-4), calc((100vw - var(--shell-measure)) / 2));background:var(--surface-strong);border-bottom:1px solid var(--line);width:100vw;margin-left:calc(50% - 50vw);display:flex;position:sticky;top:0}.est-mark,.est-appbar-back{border-radius:var(--radius-md);background:var(--brand-primary);width:34px;height:34px;color:var(--surface-strong);font-size:var(--t-sm);letter-spacing:.02em;border:none;flex:none;place-items:center;font-weight:800;display:grid}.est-appbar-back{font-size:var(--t-lg);font-weight:600;position:relative}.est-appbar-back:after{content:"";inset:calc((var(--tap-min) - 34px) / -2);position:absolute}.est-appbar-id{min-width:0;line-height:var(--lead-tight);display:grid}.est-appbar-biz{font-size:var(--t-sm);white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.est-appbar-step{font-size:var(--t-xs);color:var(--ink-soft)}.est-appbar-call{width:var(--tap-min);height:var(--tap-min);border-radius:var(--radius-pill);border:1px solid var(--line);background:var(--surface);color:var(--brand-primary);font-size:var(--t-lg);flex:none;place-items:center;margin-left:auto;text-decoration:none;display:grid}.est-progress{z-index:20;background:var(--surface-muted);width:100vw;height:3px;margin-left:calc(50% - 50vw);position:sticky;top:52px}.est-progress i{background:var(--brand-primary);height:100%;transition:width .22s;display:block}.estimator-shell:not(.embed){padding-top:0}.estimator-shell.phone-chrome{--shell-gap:var(--space-4)}.estimator-shell:not(.embed) .est-progress{margin-top:calc(-1 * var(--shell-gap))}.estimator-shell.phone-chrome .wizard-nav-row,.estimator-shell.phone-chrome .panel-header .wizard-back-btn,.estimator-shell.phone-chrome .panel-header .eyebrow{display:none}.est-footer{z-index:15;align-items:center;gap:var(--space-3);width:100vw;padding:var(--space-3) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom));background:color-mix(in srgb, var(--surface-strong) 97%, transparent);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);margin-left:calc(50% - 50vw);display:flex;position:sticky;bottom:0}.est-footer-total{min-width:0;line-height:var(--lead-tight);display:grid}.est-footer-label{font-size:var(--t-xs);color:var(--ink-soft);font-weight:600}.est-footer-total strong{font-size:var(--t-lg);letter-spacing:-.01em}.est-footer .primary{min-height:var(--tap-min);flex:none;margin-left:auto}.estimator-shell.embed .est-appbar,.estimator-shell.embed .est-progress,.estimator-shell.embed .est-footer{display:none}@media (width>=721px){.est-appbar{height:60px;padding-inline:max(var(--space-6), calc((100vw - var(--shell-measure)) / 2));gap:var(--space-4)}.est-progress{top:60px}.est-appbar-step,.est-appbar-call{display:none}.est-appbar-biz{font-size:var(--t-md);letter-spacing:-.01em}}.est-appbar-tag{font-size:var(--t-xs);color:var(--ink-soft);display:none}@media (width>=721px){.est-appbar-tag{display:block}}.est-appbar-contact{align-items:center;gap:var(--space-4);font-size:var(--t-sm);white-space:nowrap;margin-left:auto;font-weight:600;display:none}@media (width>=721px){.est-appbar-contact{display:flex}}.est-appbar-contact a{color:var(--brand-primary);text-decoration:none}.est-rail,.est-work{display:contents}@media (width>=1024px){.estimator-shell:not(.embed){align-items:start;column-gap:var(--space-7);max-width:var(--shell-measure);padding-bottom:var(--space-8);grid-template-columns:minmax(0,1fr) 330px}.estimator-shell:not(.embed)>.est-appbar,.estimator-shell:not(.embed)>.est-progress{grid-column:1/-1}.estimator-shell:not(.embed) .est-work{gap:var(--space-5);grid-area:3/1;min-width:0;display:grid}.estimator-shell:not(.embed) .est-rail{gap:var(--space-4);top:calc(60px + var(--space-5));grid-area:3/2;align-content:start;display:grid;position:sticky}.estimator-shell:not(.embed) .estimator-steps{align-items:stretch;gap:var(--space-1);padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel);grid-template-columns:minmax(0,1fr)}.estimator-shell:not(.embed) .estimator-steps button{box-shadow:none;padding:var(--space-2) var(--space-3);background:0 0;border:none;justify-content:flex-start}.estimator-shell:not(.embed) .estimator-steps .is-active{background:color-mix(in srgb, var(--brand-primary) 9%, var(--surface-strong));border:none}.estimator-shell:not(.embed) .estimate-summary{align-items:stretch;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);flex-direction:column}.estimator-shell:not(.embed) .estimate-summary-rule{height:1px;margin:var(--space-1) 0;background:var(--line);border:0;display:block}.estimator-shell:not(.embed) .map-frame{min-height:clamp(420px,56vh,620px)}.estimator-shell:not(.embed) .measure-map{height:clamp(420px,56vh,620px)}.estimator-shell:not(.embed) .panel-header .eyebrow{display:none}.estimator-shell:not(.embed) .panel-map .panel-header>div{align-items:baseline;gap:var(--space-3);flex-wrap:wrap;display:flex}.estimator-shell:not(.embed) .panel-map .panel-header p{font-size:var(--t-sm)}.estimator-shell:not(.embed) .panel-map .panel-header{margin-bottom:var(--space-3)}.estimator-shell:not(.embed) .map-search-bar .field-stack>span{display:none}}.estimate-summary-intro{font-size:var(--t-xs);line-height:var(--lead);color:var(--ink-soft);margin:0}.admin-main{display:contents}@media (width>=1024px){.admin-shell{align-items:start;column-gap:var(--space-7);grid-template-columns:236px minmax(0,1fr);grid-template-areas:"nav header""nav main"}.admin-shell>.admin-header{grid-area:header}.admin-shell>.admin-tab-bar{top:var(--space-5);align-items:stretch;gap:var(--space-1);padding:var(--space-3);border-bottom:none;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel);flex-direction:column;grid-area:nav;position:sticky;overflow:visible}.admin-shell>.admin-tab-bar button{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--t-sm);border-bottom:none;justify-content:flex-start;margin-bottom:0}.admin-shell>.admin-tab-bar button:hover{background:var(--surface)}.admin-shell>.admin-tab-bar button.active{background:color-mix(in srgb, var(--brand-primary) 10%, var(--surface-strong));border-bottom-color:#0000}.admin-shell>.admin-tab-bar .tab-badge{margin-left:auto}.admin-main{gap:var(--space-5);grid-area:main;align-content:start;min-width:0;display:grid}#admin-tabpanel{min-width:0}.estimator-shell--skeleton{grid-template-columns:minmax(0,1fr)}}.admin-bottom-bar{z-index:40;padding:var(--space-2) 0 calc(var(--space-2) + env(safe-area-inset-bottom));background:color-mix(in srgb, var(--surface-strong) 98%, transparent);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);grid-template-columns:repeat(5,1fr);align-items:end;display:grid;position:fixed;bottom:0;left:0;right:0}.admin-shell{padding-bottom:calc(var(--space-8) + var(--tap-min) + env(safe-area-inset-bottom))}@media (width>=721px){.admin-shell{padding-bottom:var(--space-8)}}.admin-bt{min-height:var(--tap-min);color:var(--ink-soft);font-size:.66rem;font-weight:600;line-height:var(--lead-tight);background:0 0;border:none;border-radius:0;align-content:center;justify-items:center;gap:3px;padding:0;display:grid;position:relative}.admin-bt-icon{font-size:var(--t-lg);line-height:1}.admin-bt.active{color:var(--brand-primary)}.admin-bt .tab-badge{position:absolute;top:-2px;left:55%}.admin-bt--fab .admin-bt-icon{border-radius:var(--radius-pill);background:var(--brand-primary);width:42px;height:42px;color:var(--surface-strong);font-size:var(--t-xl);box-shadow:0 4px 14px color-mix(in srgb, var(--brand-primary) 45%, transparent);place-items:center;margin-top:-16px;font-weight:700;display:grid}.admin-more-backdrop{z-index:45;background:#0b1f1a6b;align-items:flex-end;display:flex;position:fixed;inset:0}.admin-more-sheet{gap:var(--space-1);width:100%;padding:var(--space-2) var(--space-3) calc(var(--space-4) + var(--tap-min) + env(safe-area-inset-bottom));background:var(--surface-strong);border-radius:var(--radius-xl) var(--radius-xl) 0 0;display:grid;box-shadow:0 -10px 34px #0b1f1a33}.admin-more-grip{width:40px;height:4px;margin-bottom:var(--space-2);border-radius:var(--radius-pill);background:var(--line);justify-self:center}.admin-more-sheet button{align-items:center;gap:var(--space-3);min-height:var(--tap-min);padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--ink-strong);font-size:var(--t-md);text-align:left;background:0 0;border:none;font-weight:600;display:flex}.admin-more-sheet button.active{background:color-mix(in srgb, var(--brand-primary) 10%, var(--surface-strong));color:var(--brand-primary)}.estimator-shell.phone-chrome:has(.est-footer){padding-bottom:0}
