:root{--ink:#213c35;--muted:#5c6b64;--paper:#f8f7f2;--line:#d9dfd6;--green:#254f42;--lime:#e6edbd;--white:#fff;--rust:#985437;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.55}*{box-sizing:border-box}body{margin:0}a{color:var(--green);text-underline-offset:4px}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}button,summary{cursor:pointer}button:disabled{opacity:.4;cursor:default}button{border:1px solid var(--line);border-radius:7px;background:white;color:var(--ink);padding:10px 15px;min-height:44px;font-weight:600}button:hover{background:#edf1e6}input,select{width:100%;min-height:46px;border:1px solid #a6b3a8;background:white;border-radius:6px;padding:9px 11px;color:var(--ink);margin-top:5px}input:focus,select:focus{border-color:var(--green)}:focus-visible{outline:3px solid #b66834;outline-offset:3px}label{display:block;font-size:13px;font-weight:600}header{border-bottom:1px solid var(--line);background:var(--paper)}.nav{max-width:1240px;margin:auto;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{text-decoration:none;font-size:27px;letter-spacing:-1px;font-weight:750;display:flex;align-items:center;gap:9px}.brand-mark{display:inline-block;width:23px;height:27px;border-radius:6px 6px 13px 6px;background:var(--green);transform:rotate(-12deg);box-shadow:7px 3px 0 #cad8a2}nav{display:flex;gap:27px;align-items:center}nav a{font-size:14px;text-decoration:none}nav a:hover{text-decoration:underline}.skip{position:absolute;left:16px;top:-100px;background:white;padding:12px;z-index:9}.skip:focus{top:10px}main{max-width:1184px;margin:auto;padding:0 28px}.hero{padding:45px 0 32px;display:grid;grid-template-columns:1fr 260px;align-items:center;gap:28px}.eyebrow{font-size:11px;font-weight:750;letter-spacing:1.8px;color:#56664b}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(34px,4vw,51px);line-height:1.12;letter-spacing:-1.4px;margin:13px 0 16px;max-width:780px}h2{font-size:21px;letter-spacing:-.5px;line-height:1.3;margin:8px 0 15px}h3{font-size:18px}.intro{max-width:660px;margin:0;color:var(--muted);font-size:17px}.hero-note{border-left:1px solid var(--line);padding-left:30px;color:var(--muted);font-size:13px}.hero-note strong{display:block;font-family:Georgia,serif;font-size:23px;font-weight:400;color:var(--ink);margin:10px 0}.hero svg{width:130px;height:65px}.tool-nav{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:26px}.tool-nav a{padding:7px 14px;background:white;border:1px solid var(--line);border-radius:24px;font-size:13px;text-decoration:none}.tool-nav a[aria-current=page]{background:var(--green);color:white;border-color:var(--green)}.planner{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:28px;align-items:start}.inputs{background:white;border:1px solid var(--line);padding:27px;border-radius:12px}.section-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.tag{font-size:10px;white-space:nowrap;background:#eff3e5;border-radius:4px;padding:5px 7px}.toolbar{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:12px}.hint{font-size:12px;color:var(--muted);line-height:1.5}.room{padding:18px;margin:20px 0;border:1px solid var(--line);border-radius:8px;min-width:0}.room legend{font-size:11px;color:var(--muted);padding:0 6px}.room-head{display:flex;gap:8px;align-items:end;margin-bottom:15px}.room-name{flex:1;min-width:0}.room-head button{font-size:11px;padding:8px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:12px 0}.dimensions{grid-template-columns:repeat(3,minmax(0,1fr))}.unit{color:var(--muted);font-weight:400;float:right;font-size:11px}.settings{border-top:1px solid var(--line);margin-top:28px;padding-top:25px}details{border-top:1px solid var(--line);padding:14px 0 8px;font-size:13px;margin-top:12px}summary{font-weight:600;min-height:32px;align-content:center}.text-button{background:transparent;border:0;font-size:12px;padding:8px 0}.secondary{width:100%;border-style:dashed}.primary{background:var(--green);color:white;width:100%;text-align:left;margin-top:18px;padding:14px 18px}.primary span{float:right}.primary:hover{background:#193d31}.results{background:#edf1e7;border:1px solid #d1dac8;border-radius:12px;padding:27px;position:sticky;top:20px}.result-title{display:flex;align-items:center;justify-content:space-between}.result-dot{width:10px;height:10px;border-radius:50%;background:#5d7652}.big-result{font-family:Georgia,serif;font-size:68px;line-height:1.1;letter-spacing:-3px;margin-top:20px}.big-result span{display:block;font-family:Arial,sans-serif;font-size:16px;letter-spacing:0;margin-top:8px}.result-note{font-size:12px;color:var(--muted)}.metrics{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #c9d3c0;border-bottom:1px solid #c9d3c0;padding:18px 0;gap:10px;margin:23px 0}.metrics strong{font-size:23px;display:block}.metrics span{font-size:12px;color:var(--muted)}.purchase-list>div{display:flex;gap:12px;margin:17px 0}.swatch{width:29px;height:33px;flex-shrink:0;background:#819581;border:4px solid white;border-radius:4px;box-shadow:0 1px 3px #0002}.swatch.primer{background:#dad9c8}.purchase-list strong{font-size:13px}.purchase-list small{display:block;font-size:12px;color:var(--muted)}.budget{background:#e0e7d4;border-radius:7px;padding:17px;margin-top:16px}.budget>span{font-size:12px}.budget strong{font-size:29px;display:block}.budget small{font-size:11px;display:block}.print-actions{display:flex;gap:8px;margin-top:15px}.print-actions button{flex:1;font-size:12px}.check{display:flex;gap:9px;align-items:start;font-weight:400;margin:10px 0}.check input{width:18px;min-height:18px;margin:2px 0;flex-shrink:0}.project-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.project-actions button,.file-button{font-size:12px}.file-button{border:1px solid var(--line);padding:11px;border-radius:7px;background:white;cursor:pointer;position:relative}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.file-button:focus-within{outline:3px solid #b66834}.stale:before{content:'Measurements changed — update your estimate';display:block;background:#fff1d4;color:#65400d;font-size:12px;padding:10px;margin-bottom:15px;border-radius:5px}#errors:not(:empty){background:#ffede8;border-left:3px solid #a43724;padding:13px;margin-top:16px;font-size:14px;color:#7f2317}#status{font-size:14px;min-height:24px}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;border-top:1px solid var(--line);margin-top:35px;padding:35px 0}.prose{max-width:760px;margin:30px auto 70px}.prose h2{margin-top:32px}.prose p,.content-grid p{color:#4d5d53}.prose li{margin:10px 0}.link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0 50px}.link-card{padding:22px;border:1px solid var(--line);background:white;border-radius:8px;text-decoration:none}.link-card span{display:block;font-size:12px;color:var(--muted);margin-top:10px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:10px;border-bottom:1px solid var(--line)}caption{text-align:left;font-size:12px;margin:10px 0}footer{border-top:1px solid var(--line);padding:30px 28px;color:var(--muted);font-size:12px}footer>div{max-width:1128px;margin:auto;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}footer nav{gap:14px;flex-wrap:wrap}footer a{font-size:12px}.breadcrumb{font-size:12px;color:var(--muted);margin-top:22px}.pill{display:inline-block;background:var(--lime);padding:5px 10px;border-radius:4px;font-size:12px}.callout{background:#eaf0df;border-left:3px solid #78945e;padding:16px 20px;margin:25px 0} @media(max-width:800px){.hero{grid-template-columns:1fr;padding-top:28px}.hero-note{display:none}.planner{grid-template-columns:1fr}.results{position:static}.content-grid{gap:22px}.link-grid{grid-template-columns:1fr 1fr}.nav{padding:16px 20px;gap:15px}.nav nav{gap:15px}.nav nav a{font-size:12px}.tag{display:none}}@media(max-width:480px){main{padding:0 16px}.nav{padding:15px 16px}.brand{font-size:23px}.nav nav{gap:10px}.nav nav a:last-child{display:none}.inputs,.results{padding:19px}.room{padding:12px}.fields{gap:10px}.toolbar{gap:8px;grid-template-columns:1.3fr .8fr .8fr}.toolbar label{font-size:11px}input,select{font-size:16px;padding:8px}.content-grid,.link-grid{grid-template-columns:1fr}.dimensions{gap:9px}h1{font-size:36px}.room-head button{padding:6px}.project-actions>*{flex-grow:1}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}@media print{body{background:white;font-size:11pt}header,.hero,.tool-nav,.inputs,.project-actions,.content-grid,.link-grid,footer,#status,.breadcrumb,.print-actions,#calculator>.hint{display:none!important}main{max-width:none;padding:0}.planner{display:block}.results{position:static;background:white;border:0;max-width:none;padding:0}.results:before{content:'Coatpath · Painting project estimate';font-size:18pt;display:block}.results details{break-inside:avoid}.big-result{font-size:36pt}.shopping-only .results>*:not(#shopping){display:none!important}.shopping-only #shopping{display:block!important}.check input{appearance:none;border:1px solid black}.budget{background:white;border:1px solid #aaa}}
#calculator:empty{min-height:1800px}
.hero-cta{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:15px 26px;margin-top:8px;border:1px solid var(--green);border-radius:8px;background:var(--green);color:#fff;font-size:17px;font-weight:700;line-height:1.4;text-decoration:none;box-shadow:0 2px 3px #213c3514}.hero-cta:hover{background:#193d31;border-color:#193d31}.hero-cta:active{background:#122e25}@media(max-width:480px){.hero-cta{width:100%}}
.group-editor{border:1px solid var(--line);border-radius:7px;padding:14px;margin:16px 0;min-width:0}.group-editor legend{padding:0 6px;font-weight:700;overflow-wrap:anywhere}.container-row{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;padding:12px 0;border-bottom:1px solid var(--line)}.container-row button{font-size:12px}.container-row .check{align-self:center;margin:0}.material-breakdown th{font-weight:600}.material-breakdown small{display:block;font-size:11px;font-weight:400;color:var(--muted)}.material-breakdown td:last-child{white-space:nowrap}.cost-total{font-size:48px;overflow-wrap:anywhere}.purchase-comparison{border-top:1px solid var(--line)}.purchase-comparison h3{font-size:14px;overflow-wrap:anywhere}.purchase-list strong,.room-name input{overflow-wrap:anywhere}.brand-phrase{font-family:Georgia,serif;font-size:24px;margin:0 0 14px}.measurement-figure{margin:28px 0;padding:18px;background:#edf1e7;border:1px solid var(--line);border-radius:8px}.measurement-figure svg{display:block;width:100%;height:auto}.measurement-figure figcaption{font-size:13px;margin-top:10px;color:var(--muted)}.table-wrap th,.table-wrap td{vertical-align:top}.prose .table-wrap{margin:20px 0}.prose .table-wrap table{min-width:420px}@media(max-width:480px){.container-row{grid-template-columns:1fr 1fr}.container-row button{grid-column:1/-1}.group-editor{padding:10px}.group-editor .fields{grid-template-columns:1fr}.measurement-figure{padding:6px}.measurement-figure figcaption{padding:6px}.cost-total{font-size:42px}}

/* Known-area coverage tool: reuse the established planner and palette. */
#coverage-calculator .big-result{font-size:clamp(32px,4.5vw,54px);overflow-wrap:anywhere}#coverage-calculator .big-result small{font-size:.42em;white-space:nowrap}#coverage-calculator .metrics span{display:block}#coverage-calculator .coverage-container{border:1px solid var(--line);border-radius:8px;padding:12px;margin:14px 0;display:grid;grid-template-columns:1fr 1fr;gap:12px}#coverage-calculator .coverage-enable{display:flex;align-items:center;gap:8px}#coverage-calculator .coverage-enable input{width:20px;min-height:24px}#coverage-calculator .coverage-container legend{padding:0 5px}#coverage-calculator #coverage-strategy{margin-bottom:8px}#coverage-calculator .primary{margin-top:20px}#coverage-calculator .error{color:#8b3027}#coverage-calculator .results{align-self:start}#coverage-calculator .fields>*{min-width:0}@media(max-width:480px){#coverage-calculator .fields{grid-template-columns:1fr}#coverage-calculator .coverage-container{grid-template-columns:1fr 1fr}}

/* Construction expansion: preserve the original painting styles and palette. */
.nav{max-width:1400px}.nav>.brand{flex-shrink:0}.nav nav{min-width:0;gap:16px;overflow-x:auto;scrollbar-width:thin;white-space:nowrap;padding:5px 0}.nav nav a{font-weight:600;color:#385a4f}.nav nav a:hover{color:#0e3325}.construction-hero .hero-note{padding-top:9px}.construction-hero{padding-bottom:22px}.construction-layout{margin:22px 0 38px}.construction-results{min-width:0}.construction-results h2{margin-bottom:20px}.tool-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:14px 0 26px}.tool-fields>*{min-width:0}.calc-field{display:block;font-size:13px}.calc-field .unit{white-space:nowrap}.tool-fields .wide{grid-column:1 / -1}.tool-fields textarea,.estimate-item input{width:100%;border:1px solid #a6b3a8;border-radius:6px;padding:10px;margin-top:5px;color:var(--ink);background:white;font:inherit;min-height:44px}.tool-fields textarea{min-height:94px;resize:vertical}.button-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.button-strip button{flex:1;min-width:116px}.form-error:not([hidden]){display:block;margin:14px 0;padding:13px 16px;border-left:4px solid #ab4235;background:#ffefec;color:#842c25;font-size:14px}.shape-svg{width:100%;max-width:345px;max-height:185px;display:block;margin:0 auto 10px}.shape-svg text{font-size:12px;fill:#254f42}.stat-primary{font-family:Georgia,serif;font-size:clamp(30px,4vw,49px);letter-spacing:-1px;line-height:1.2;overflow-wrap:anywhere;margin:20px 0}.stat-primary small{display:block;font:500 12px Arial,sans-serif;letter-spacing:0;margin-top:8px;color:var(--muted)}.result-row{display:flex;align-items:baseline;justify-content:space-between;gap:18px;border-top:1px solid #ced8c6;padding:12px 0;font-size:13px}.result-row strong{text-align:right;font-size:15px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.manual-walls fieldset,.estimate-item{min-width:0;border:1px solid var(--line);border-radius:8px;margin:12px 0;padding:14px}.manual-walls legend,.estimate-item legend{font-weight:700;font-size:12px}.manual-walls .tool-fields{margin-bottom:10px}.related-tools{border-top:1px solid var(--line);padding-top:32px}.related-tools .link-grid{margin-top:20px}.catalog-group{padding:12px 0}.catalog-group .link-grid{margin-bottom:28px}.catalog-search{display:block;max-width:500px;font-size:14px;margin:18px 0}.catalog-search input{width:100%}.link-card[hidden]{display:none!important}.catalog-group:has(.link-card:not([hidden])) h2{display:block}.catalog-group:not(:has(.link-card:not([hidden]))){display:none}.link-card:hover{border-color:#7f9f86;box-shadow:0 7px 22px #1d473614;transform:translateY(-1px)}.link-card:focus-visible{outline-offset:3px}.estimate-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:26px;margin:22px 0 36px}.estimate-layout .estimate-edit{min-width:0}.estimate-preview{position:sticky;top:18px;min-width:0;overflow-wrap:anywhere}.estimate-preview h2{font-size:22px}.estimate-preview .result-row{font-size:12px}.estimate-item .line-fields{display:grid;grid-template-columns:minmax(140px,2fr) minmax(70px,.8fr) minmax(68px,.7fr) minmax(85px,1fr) auto;gap:8px;align-items:end}.estimate-item label{min-width:0}.estimate-item input{min-width:0}.estimate-item button{min-width:70px}.preview-head{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px;align-items:start}.preview-head strong{font-size:16px}.preview-meta{font-size:12px;color:var(--muted);margin:12px 0}.estimate-table{min-width:365px}.estimate-table td:first-child{max-width:145px;word-break:break-word}.preview-totals{margin:23px 0 10px}.preview-totals .total-line{display:flex;justify-content:space-between;gap:14px;font-size:17px;border-top:2px solid var(--green);padding-top:12px}.total-line strong{font-size:23px}.estimate-edit h3{margin-top:28px}.estimate-edit p.hint{margin:13px 0}.estimate-edit fieldset button{font-size:12px}.estimate-layout .estimate-buttons button{flex-grow:1;min-width:135px}.estimate-print-note{font-size:11px}.estimate-preview p{white-space:pre-wrap}.catalog-group .link-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1020px){.estimate-layout{grid-template-columns:1fr}.estimate-preview{position:static}.nav nav{gap:13px}}
@media(max-width:800px){.nav{display:block}.nav nav{margin-top:7px}.hero{gap:15px}.catalog-group .link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.tool-fields{grid-template-columns:1fr}.estimate-item .line-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.estimate-item .line-fields>label:first-child{grid-column:1/-1}.estimate-item .line-fields>button{grid-column:1/-1}.catalog-group .link-grid{grid-template-columns:1fr}.construction-results{padding:18px}.result-row{gap:9px}.nav nav a:last-child{display:inline}.stat-primary{font-size:37px}.tool-fields{gap:8px}}
@media print{.construction-layout .inputs,.construction-hero,.related-tools,nav,.construction-results .button-strip,.construction-layout+.hint,.estimate-edit,#estimate-app+.hint{display:none!important}.construction-layout{display:block}.construction-results,.estimate-preview{display:block;position:static;background:white;border:0;padding:5px}.estimate-layout{display:block}.estimate-preview{max-width:none}.estimate-table{min-width:0}.estimate-preview .result-row{break-inside:avoid}.estimate-preview .table-wrap{overflow:visible}.estimate-preview:before{content:'CoatPath · Construction estimate';font-weight:bold;font-size:17pt;display:block;margin-bottom:18px}header,.breadcrumb{display:none!important}main{max-width:none}.prose{display:none}.construction-results .shape-svg{width:210px}h1{font-size:28px}}
.brand-mark{width:32px;height:32px;flex-shrink:0;background:#f8f7f2 url('/assets/coatpath-icon.png') center / contain no-repeat;border-radius:0;transform:none;box-shadow:none}
/* Keep estimate controls within the editor at intermediate desktop widths. */
@media (min-width:521px) and (max-width:1200px){.estimate-item .line-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.estimate-item .line-fields>label:first-child{grid-column:1/-1}.estimate-item .line-fields>button{grid-column:1/-1}}
@media print{.estimate-table thead{display:table-header-group}.estimate-table tr{break-inside:avoid}}
