:root{--ink:#193c32;--green:#23694f;--lime:#dceea7;--paper:#f6f7f1;--line:#dbe2d8;--muted:#65756c}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Segoe UI,Arial,sans-serif;font-size:15px;line-height:1.55}button,input,textarea,select{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer;border:0;background:var(--green);color:white;padding:13px 20px;border-radius:8px;font-weight:650;min-height:44px}button:hover{filter:brightness(.94)}button:disabled{opacity:.55;cursor:wait}button.quiet{color:var(--ink);background:#edf1e8;border:1px solid var(--line)}a{color:var(--green)}header{display:flex;align-items:center;gap:24px;max-width:1280px;margin:auto;padding:24px 40px}.brand{font-size:24px;font-weight:750;text-decoration:none;letter-spacing:-1px}.brand span{font-weight:400;margin-left:4px}.tag{font-size:10px;letter-spacing:2px;color:var(--muted)}#logout{margin-left:auto}.trial{background:var(--lime);text-align:center;padding:12px 24px;font-size:13px}.trial strong{margin-right:12px}main{max-width:1280px;margin:auto;padding:0 40px}#notice:not(:empty){background:#fff1ce;border:1px solid #e4be68;border-radius:8px;padding:14px;margin-top:20px}#welcome{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center;min-height:690px;padding:60px 0}.eyebrow{letter-spacing:2px;font-size:11px;font-weight:750;color:var(--green)}h1{font-size:58px;line-height:1.08;letter-spacing:-2.7px;font-weight:650;margin:24px 0}h1 em{font-family:Georgia,serif;font-weight:400}h2{font-size:23px;line-height:1.3;letter-spacing:-.5px;margin:5px 0 16px}p{color:var(--muted)}.hero>p:not(.eyebrow){max-width:390px;font-size:17px}.steps{display:flex;gap:25px;font-size:12px;font-weight:650;margin-top:40px;padding-top:24px;border-top:1px solid var(--line)}.card{background:white;border:1px solid var(--line);border-radius:14px;padding:28px;margin-bottom:22px}.auth{padding:36px;box-shadow:0 14px 50px #234c3210}.auth button{width:100%;margin-top:12px}label{display:flex;flex-direction:column;font-size:13px;font-weight:600;gap:6px;margin:16px 0}input,textarea,select{width:100%;background:#fcfdf9;border:1px solid #cbd5c9;border-radius:7px;padding:12px;color:var(--ink);min-width:0}textarea{min-height:105px;resize:vertical}small,.fine{font-size:12px;color:var(--muted);font-weight:400}.fine{margin-top:18px}.workspace-head{display:flex;justify-content:space-between;align-items:center;padding:38px 0 24px}.workspace-head h1{font-size:39px;letter-spacing:-1.5px;margin:14px 0}.pill{border:1px solid var(--line);padding:8px 14px;border-radius:50px;font-size:10px;letter-spacing:1px}nav{display:flex;gap:8px;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:28px;overflow:auto}nav button{white-space:nowrap;background:transparent;color:var(--muted);font-size:13px}nav .selected{background:var(--ink);color:white}.estimate-grid{display:grid;grid-template-columns:minmax(0,1fr) 335px;gap:26px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.card-title{display:flex;gap:16px;align-items:flex-start}.card-title p{margin-top:0;font-size:13px}.number{background:#eef3e7;padding:8px 11px;border-radius:6px;font-size:12px}.room{background:#f7f9f3;border:1px solid var(--line);padding:16px;border-radius:8px;margin:18px 0}.room-head{display:flex;justify-content:space-between;gap:10px}.room-head input{font-weight:650}.room-head button{font-size:12px;padding:8px}.room .fields{grid-template-columns:repeat(4,1fr);gap:10px}.room label{font-size:11px;margin:12px 0}.check{flex-direction:row;align-items:center}.check input{width:18px;height:18px}.summary{position:sticky;top:20px;background:var(--ink);color:#fff}.summary h2{font-family:Georgia,serif;font-weight:400;font-size:30px}.summary p,.summary .fine,.summary .eyebrow{color:#c2d8c8}.summary dl{margin:28px 0}.summary dl div{display:flex;justify-content:space-between;gap:16px;margin:12px 0;font-size:13px}.summary dd{margin:0}.summary .total{border-top:1px solid #527163;padding-top:20px;margin-top:22px;font-size:28px;font-weight:650}.summary .total dt{font-size:14px;font-weight:400}.aside-note{text-align:center;font-size:12px}.voice{background:#eef3e7}.voice p{font-size:13px}.voice small{display:block;margin-top:14px}#quote-form>.card>button{margin-top:12px}.narrow{max-width:650px}.entry{border-top:1px solid var(--line);padding:18px 0;display:flex;justify-content:space-between;gap:20px;align-items:center}.entry p{margin:4px 0;white-space:pre-wrap;overflow-wrap:anywhere}.entry small{display:block}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.metric{padding:18px;background:#f2f6ec;border-radius:8px}.metric strong{display:block;font-size:30px}.metric span{font-size:12px}footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:30px 0;color:var(--muted);font-size:12px;margin-top:40px}[hidden]{display:none!important}@media(max-width:900px){#welcome{gap:30px}h1{font-size:46px}.estimate-grid{grid-template-columns:minmax(0,1fr) 280px}.room .fields{grid-template-columns:1fr 1fr}.metric-grid{grid-template-columns:1fr 1fr}}@media(max-width:680px){header{padding:18px 20px}.tag{display:none}main{padding:0 16px}.trial{font-size:12px}.trial span{display:block}#welcome{display:block;padding:30px 0;min-height:0}.hero{padding:0 8px 24px}h1{font-size:44px}.steps{margin-top:24px;gap:18px}.auth{padding:24px}.workspace-head{padding-top:25px}.workspace-head h1{font-size:31px}.pill{display:none}.estimate-grid{display:flex;flex-direction:column}.card{padding:20px}.summary{position:static}.fields{gap:0 12px}nav{gap:0}nav button{padding:12px}.metric-grid{gap:10px}footer{gap:15px}footer span{max-width:150px;text-align:right}.entry{align-items:flex-start}.brand{font-size:22px}}

.summary a{color:#dceea7;display:inline-block;padding:10px 0;font-weight:650}

.brand{display:inline-flex;align-items:center;gap:4px}.brand img{flex-shrink:0}.brand span{margin-left:0}@media(max-width:400px){.brand{font-size:20px;letter-spacing:-.8px}}
#welcome{position:relative;isolation:isolate}
#welcome::before{content:"";position:absolute;z-index:-1;inset:-15px -40px;background:url('/static/paint-background.svg') no-repeat 45% 45%/790px auto;opacity:.27;pointer-events:none}
#welcome .hero{position:relative}
#welcome .auth{background:rgba(255,255,255,.97)}
@media(max-width:680px){#welcome::before{inset:0 -16px;background-position:100% 0;background-size:540px auto;opacity:.22}.hero>p:not(.eyebrow){max-width:330px}}

.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}#account-email{overflow-wrap:anywhere}@media(max-width:680px){.account-grid{grid-template-columns:1fr;gap:0}}

@media(max-width:680px){#workspace nav{flex-wrap:wrap;overflow:visible}#workspace nav button{flex:1 0 auto}}

.ai-card{background:linear-gradient(135deg,#edf4dd,#fff);border-color:#bdcfad}.ai-card p{font-size:13px}.ai-card .check{align-items:flex-start}.ai-card .check input{flex-shrink:0}.ai-room,.preparation-row{background:#f6f8f0;border:1px solid var(--line);border-radius:9px;padding:16px;margin:15px 0}.preparation-row label{margin-top:8px}.quote-card{padding:20px 0;border-top:1px solid var(--line)}.quote-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.quote-actions a{padding:10px}.activity-editor{max-width:520px;background:#f4f7ef;border:1px solid var(--line);border-radius:10px;padding:20px;margin-top:15px}.marketing-ai{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:20px}#my-metrics{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.metric strong{overflow-wrap:anywhere}#recovery{margin-top:25px}#editing-banner{background:#fff4d8}#ai-proposal{border-top:1px solid #bdcfad;margin-top:20px;padding-top:15px}#ai-proposal li{margin:7px 0}#account>.card{margin-top:20px}@media(max-width:680px){.quote-actions button{flex:1 1 auto}.check{align-items:flex-start}.check input{flex-shrink:0}#my-metrics{grid-template-columns:1fr 1fr}.metric strong{font-size:24px}}

#document-preview{margin-top:24px}.preview-toolbar{display:flex;gap:16px;justify-content:space-between;align-items:center}.document-sheet{--doc-color:#18634b;background:#fff;padding:38px;max-width:850px;margin:24px auto;border:1px solid #d9dfda;box-shadow:0 10px 30px #17382a0d;overflow-wrap:anywhere}.document-sheet.theme-blue{--doc-color:#244a73}.document-sheet.theme-graphite{--doc-color:#3c4148}.document-sheet.theme-terracotta{--doc-color:#9a4e24}.document-sheet h2,.document-sheet h3{color:var(--doc-color)}.document-parties{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:26px 0}.document-parties p{margin:5px 0}.document-logo,#brand-logo-preview{max-width:180px;max-height:80px;object-fit:contain}.document-sheet table{width:100%;border-collapse:collapse;margin-top:24px}.document-sheet th{background:var(--doc-color);color:white;text-align:left}.document-sheet th,.document-sheet td{padding:12px 8px;border-bottom:1px solid #dde2de;vertical-align:top}.document-sheet .document-total{text-align:right;font-weight:600;white-space:pre-wrap}.document-sheet p{white-space:pre-wrap}details{margin:16px 0}summary{cursor:pointer;color:var(--green);font-weight:600}@media(max-width:680px){.document-sheet{padding:14px;margin:16px -8px;font-size:12px}.document-parties{grid-template-columns:1fr;gap:12px}.document-sheet th,.document-sheet td{padding:8px 4px;font-size:12px}.preview-toolbar{align-items:flex-start;flex-direction:column}}

.field-help{display:block;font-size:12px;line-height:1.5;font-weight:400;color:#53675c;margin-top:2px;letter-spacing:normal}.room-head .room-name{flex:1;min-width:0;margin:0}.room-head{align-items:flex-start}.room-head .remove{flex-shrink:0}.check:has(.field-help){flex-wrap:wrap}.check>.field-help{flex-basis:100%;margin-left:24px}.room .field-help{font-size:12px}.fields{align-items:start}
@media(max-width:480px){.fields,.room .fields{grid-template-columns:1fr}.field-help{font-size:13px}}

/* PreventiPro: cobalt, violet and coral, with readable neutral surfaces. */
:root{--ink:#17234c;--green:#5145cf;--lime:#e4e9ff;--paper:#f4f6ff;--line:#dce2f3;--muted:#596582}
body{background:radial-gradient(ellipse at 5% 0%,#dfe8ff 0,transparent 40%),radial-gradient(ellipse at 95% 20%,#f9e3ef 0,transparent 35%),#f5f7ff;color:var(--ink)}
header{border-bottom:1px solid #dce2f3}.brand{color:#3c37a6}.brand span{color:#e45b54}.tag{color:#5545b0}.trial{background:linear-gradient(100deg,#30327e,#5845c7 60%,#426de0);color:white}.trial strong{color:#fff}.card{border-color:#dce2f3;box-shadow:0 8px 24px #24347708}.auth{box-shadow:0 20px 60px #3f47a516}
button{background:linear-gradient(110deg,#5145cf,#365fda);box-shadow:0 4px 10px #4b48ce14}button.quiet{background:#eef1ff;color:#343e73;border-color:#d6def7;box-shadow:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #e98836;outline-offset:3px}input,textarea,select{background:#fcfdff;border-color:#cbd4ec;color:#17234c}input:focus,textarea:focus,select:focus{border-color:#5b59d6}.hero h1 em{color:#5145cf}.eyebrow{color:#5145cf}.number{background:#ffead9;color:#a84417}.room,.preparation-row{background:#f4f6ff;border-color:#dce2f3}.voice{background:linear-gradient(120deg,#edf3ff,#f3eeff)}.summary{background:linear-gradient(155deg,#202a62,#3e3a89);border-color:#303b79}.summary p,.summary .fine,.summary .eyebrow{color:#d8e1ff}.summary a{color:#ffcf94}.summary .total{border-color:#7c89be}nav .selected{background:#30377c;color:#fff}.metric{background:linear-gradient(140deg,#eef1ff,#eaf6ff)}.field-help{color:#546080}summary{color:#4944b3}#editing-banner{background:#fff0da}#notice:not(:empty){background:#fff1d7;border-color:#efc180}#welcome::before{opacity:.19}.account-grid .card{box-shadow:0 8px 24px #24347708}
.estimate-type-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 24px}.estimate-type-tabs button{background:#fff;border:1px solid #d8dff4;color:#384575;box-shadow:0 4px 14px #263a7410;min-height:64px;font-size:16px}.estimate-type-tabs button[aria-selected=true]{background:linear-gradient(115deg,#5145cf,#3869dd);color:#fff;border-color:transparent;box-shadow:0 8px 18px #4b48ce30}.estimate-type-tabs #type-bathroom[aria-selected=true]{background:linear-gradient(115deg,#087d95,#1763a9)}.estimate-type-tabs #type-kitchen[aria-selected=true]{background:linear-gradient(115deg,#ad471c,#ce5b32)}.estimate-type-tabs #type-building[aria-selected=true]{background:linear-gradient(115deg,#743db4,#5145cf)}
#itemized-form{max-width:960px;margin:auto}.work-row{background:#f6f8ff;border:1px solid #dce2f3;border-radius:12px;padding:20px;margin:18px 0}.work-row .fields{grid-template-columns:1fr 1fr 1.5fr}.catalog-box{border:1px solid #cbdafa;background:linear-gradient(115deg,#edf4ff,#f2edff);padding:20px;border-radius:12px;margin:24px 0}.catalog-box .fine{margin-bottom:0}#itemized-total{background:#27366f;color:white;border-radius:12px;padding:18px;margin:24px 0}#itemized-total p,#itemized-total a{color:white}#itemized-total p:last-of-type{font-size:24px;font-weight:700}.itemized-actions{display:flex;gap:12px;flex-wrap:wrap}.work-row .fine{font-size:12px}.document-sheet{color:#193c32}
@media(max-width:680px){.estimate-type-tabs{grid-template-columns:1fr 1fr;gap:10px}.estimate-type-tabs button{min-height:54px;font-size:14px}.work-row{padding:14px}.work-row .fields{grid-template-columns:1fr}.itemized-actions button{width:100%}.catalog-box{padding:15px}}

@media(max-width:480px){.document-sheet table,.document-sheet tbody,.document-sheet tr,.document-sheet td{display:block;width:100%}.document-sheet thead{display:none}.document-sheet tbody tr{border:1px solid #dce2e5;border-radius:8px;margin:12px 0;padding:10px}.document-sheet tbody td{display:flex;justify-content:space-between;gap:12px;border:0;padding:6px 0;font-size:13px}.document-sheet tbody td::before{content:attr(data-label);font-weight:600}.document-sheet tbody td:first-child{display:block;border-bottom:1px solid #e0e3e3;margin-bottom:6px;font-weight:500}.document-sheet tbody td:first-child::before{display:none}}

#workspace nav{flex-wrap:wrap;overflow:visible}.client-picker{background:#f1f4ff;border:1px solid #dce2f3;padding:8px 18px;border-radius:12px;margin-bottom:20px}.client-picker label{margin:10px 0}.job-entry{padding:16px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.job-entry button{margin:6px 6px 0 0}.job-entry p{white-space:pre-wrap}#job-panel{margin-top:28px;border-top:2px solid #d6dffc;padding-top:24px}#job-panel>.card{margin-top:20px}.material-row{background:#f4f6ff;border-radius:10px;padding:16px;margin:12px 0;display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;align-items:start}.material-row .check{grid-column:1/-1}.material-row>button{grid-column:1/-1;justify-self:start}.job-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}.job-gallery figure{margin:0;padding:12px;border:1px solid var(--line);border-radius:10px}.job-gallery img{display:block;max-width:100%;height:220px;object-fit:contain;background:#eef1f6}.job-gallery figcaption{font-size:13px;margin:12px 0;overflow-wrap:anywhere}.job-gallery button{margin-top:6px}@media(max-width:680px){.job-gallery,.material-row{grid-template-columns:1fr}.material-row .check,.material-row>button{grid-column:auto}}
/* Private platform dashboard: responsive cards and accessible charts. */
#professional-analytics{margin-top:2rem;border-top:1px solid #d9dff0;padding-top:2rem}.analytics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.analytics-kpi{display:flex;flex-direction:column;gap:.7rem;padding:1.2rem;background:white;border:1px solid #dfe5f2;border-radius:16px;min-width:0}.analytics-kpi strong{font-size:1.9rem;line-height:1.2;color:#302d79;overflow-wrap:anywhere}.analytics-kpi span{font-weight:650;color:#3f4962}.analytics-kpi small{font-size:.82rem;line-height:1.5;color:#56617a}.analytics-filters{display:flex;align-items:end;flex-wrap:wrap;gap:1rem;margin:1rem 0}.analytics-filters label{flex:1;min-width:170px}.analytics-filters button{margin-bottom:0}.analytics-shortcuts{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;margin-bottom:1rem}.analytics-shortcuts a{padding:.8rem}.analytics-notice{padding:1rem;border-left:4px solid #4f46e5;background:#eef2ff;border-radius:8px;line-height:1.6}.analytics-chart{margin-top:1rem;overflow:hidden}.analytics-chart canvas{display:block;width:100%;height:auto;min-height:160px}.analytics-two{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}.analytics-bar{display:grid;grid-template-columns:1fr auto;gap:.5rem;margin:1rem 0}.analytics-bar meter{grid-column:1/-1;width:100%;height:14px;accent-color:#4f46e5}.analytics-table-wrap{overflow-x:auto;margin-top:1rem}.analytics-table-wrap table{width:100%;border-collapse:collapse;font-size:.9rem}.analytics-table-wrap th,.analytics-table-wrap td{text-align:right;padding:.7rem;border-bottom:1px solid #e2e8f0;white-space:nowrap}.analytics-table-wrap th:first-child,.analytics-table-wrap td:first-child{text-align:left}.analytics-method{margin-top:1rem}.analytics-method li{line-height:1.7;margin:.5rem 0}.analytics-legend{color:#4f46e5;font-size:.85rem;word-spacing:.3rem}@media(max-width:900px){.analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.analytics-grid,.analytics-two{grid-template-columns:1fr}.analytics-filters{display:block}.analytics-kpi strong{font-size:1.7rem}.analytics-chart{padding:1rem}.analytics-shortcuts{gap:.35rem}}

.analytics-disclosure{display:block;flex-basis:100%;max-width:900px;margin-bottom:1rem;text-align:left}.analytics-disclosure p{font-size:.85rem;line-height:1.7}
.analytics-legend{display:flex;gap:1.2rem;flex-wrap:wrap;word-spacing:normal}.legend-0{color:#4f46e5}.legend-1{color:#08758b}.legend-2{color:#b84225}
.analytics-chart details:not([open]) .analytics-table-wrap{display:none}.analytics-chart details,.analytics-table-wrap{min-width:0;max-width:100%}
#posts .entry{flex-wrap:wrap;gap:.7rem}#posts .entry>div{flex:1 1 100%;min-width:0;overflow-wrap:anywhere}#posts .entry>button{max-width:100%;white-space:normal}@media(max-width:600px){#posts .entry>button{width:100%}}

/* Quality: private draft controls, searchable archive, connection feedback. */
.draft-toolbar{border:1px solid #d8def1;border-left:4px solid #4f46e5;background:#f5f7ff;border-radius:14px;padding:20px;margin-bottom:22px}.draft-toolbar button{margin:6px 8px 0 0}.draft-confirm{border-top:1px solid #ccd4ec;margin-top:16px;padding-top:12px}.draft-toolbar .fine{margin-top:8px;line-height:1.6}.connection-state{background:#fff4d9;color:#684211;border:1px solid #e9bf65;border-radius:12px;padding:16px;margin:16px 0}.archive-filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:0 16px;align-items:end}.archive-filters>button{margin:8px 0 16px}.archive-summary{padding:14px 16px;background:#eff3ff;border-radius:10px;line-height:1.6}.archive-pager{display:flex;gap:16px;align-items:center;justify-content:center;flex-wrap:wrap;padding:20px 0}.quote-category{font-size:13px;color:#5149a0;margin:6px 0}.skip-link{position:absolute;left:16px;top:-100px;background:white;color:#302d79;z-index:100;padding:12px 18px;border:2px solid #4f46e5;border-radius:8px}.skip-link:focus{top:12px}.password-toggle{font-size:12px!important;min-height:36px!important;padding:7px 12px!important;width:auto!important;align-self:flex-start;margin-top:2px!important}button[aria-busy=true]::after,form[aria-busy=true]>button[type=submit]::after{content:' · Attendi…';font-size:.8em}.unsaved-logout{border:2px solid #cc784b}.unsaved-logout button{margin:4px 10px 4px 0}@media(max-width:900px){.archive-filters{grid-template-columns:1fr 1fr}}@media(max-width:600px){.archive-filters{grid-template-columns:1fr}.draft-toolbar{padding:16px}.draft-toolbar button{width:100%;margin:6px 0}.archive-pager{gap:10px}.archive-pager button{flex:1}.archive-pager span{flex-basis:100%;text-align:center;order:-1}}

.workflow-actions{display:flex;flex-wrap:wrap;gap:8px}.workflow-export{margin:18px 0}.workflow-export>a{display:inline-block;font-weight:650;padding:10px 0}.workflow-export .fine{line-height:1.7}.checklist-row{display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:12px;align-items:center;border-top:1px solid #dfe5f2;padding:10px 0}.checklist-row label{margin:6px 0}.checklist-progress{background:#edf3ff;color:#353579;font-weight:650;padding:12px;border-radius:8px}.job-checklist>button{margin:10px 10px 0 0}#pricebook-list .job-entry{overflow-wrap:anywhere}@media(max-width:600px){.checklist-row{grid-template-columns:1fr}.checklist-row .check{margin-top:10px}.job-checklist>button,.workflow-actions>button{width:100%;margin-right:0}.workflow-export>a{overflow-wrap:anywhere}}

.job-checklist-panel>summary{font-weight:700;font-size:1.05rem;cursor:pointer;padding:8px 0}.job-checklist-panel[open]>summary{margin-bottom:12px}
