/* Green field-first UI; built on existing accessible controls, not a new app. */
:root{--ink:#143f31;--brand:#116749;--brand-2:#138454;--good:#187347;--gold:#4a976d;--muted:#60776b;--line:#dce8e1;--paper:#f3f8f4;--rose:#e9f5ed;--side:222px}
body{background:#f3f8f4;color:#173d31;letter-spacing:.005em}
.sidebar{background:#103f30;border-right:0;color:#effaf3}.sidebar .brand{color:#fff}.sidebar .brand span{color:#8ed6ad}.sidebar button{color:#d4eade;background:transparent;border-color:transparent}.sidebar button.active,.sidebar button:hover{background:#216549;color:#fff}.sidebar .muted{color:#b7d9c6}.sidebar .small{color:#b7d9c6}
button.primary,.button.primary{background:#116749;border-color:#116749;color:white}button.primary:hover{background:#0c543b;border-color:#0c543b}button.good{background:#1e7952;border-color:#1e7952;color:white}button{min-height:44px;border-radius:12px}button:disabled{opacity:.5;cursor:not-allowed}
input,select,textarea{border-color:#c7dacc;background:#fff;color:#173d31;min-height:46px;border-radius:11px;font-size:15px}textarea{line-height:1.5}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #6cc890;outline-offset:2px}
.topbar{background:#f3f8f4;border-bottom-color:#dce8e1}.topbar select{background:#fff}.hero{background:linear-gradient(125deg,#0f5b40,#16764e);color:#fff;border:none;border-radius:22px;padding:28px}.hero p{color:#d1ecd9}.hero button{background:#eaf8ef;color:#124b32;border-color:#b5e1c4;font-weight:750}.hero h2{font-size:28px;line-height:1.2}
.card{background:#fff;border:1px solid #e0ebe3;box-shadow:0 3px 16px #14553606;border-radius:18px}.card h2{font-size:20px}.stat{background:#fff;border-color:#e0ebe3;border-radius:16px}.stat strong{color:#155e40}.stats{gap:12px}
.rail54{background:#e7f4eb;color:#5b7967;border:1px solid #cce3d2;border-radius:14px;padding:15px 18px}.rail54 b{color:#0d5b3c}.rail54 span{display:flex;align-items:center;font-weight:650}
.tile-number,.section-num{background:#e6f4eb;color:#146b43}.badge.green{background:#e1f3e7;color:#155935}.badge.gold{background:#fff4db;color:#6d5114}.badge.rose{background:#edf3ef;color:#425f4e}.tabs button.active{background:#e2f3e8;border-color:#b7d9c2;color:#0e603a}
.quick-categories{gap:12px}.quick-categories button{background:#f4faf6;border:1px solid #cce5d4;border-radius:16px;color:#164a34;padding:20px 16px;text-align:left;min-height:90px}.quick-categories button::before{content:'+';display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;background:#d9efdf;color:#13693d;border-radius:8px;margin-right:8px;font-size:18px}.quick-categories small{display:block;color:#5d7e68;margin-top:6px}.jobgrid{gap:10px}.jobtile{background:white;border:1px solid #cee4d5;border-radius:14px;padding:16px;color:#16442f}.jobtile:hover{background:#eaf7ee;border-color:#77b98d}.jobtile small{display:none}
.modalhead{background:#f7fcf8;border-color:#d7e9dc}.modalhead h2{color:#155537}.modalfoot{background:#f1f8f3;border-color:#cce3d4;flex-wrap:wrap}.modalfoot button.primary{flex:1}.modalcontent{padding:22px 26px}.modalcontent>h3{margin-top:0;color:#175739}.modalcontent form{margin-top:4px}
.form-section541{margin:24px 0 12px;font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:#3b7a54;border-bottom:1px solid #dfebe2;padding-bottom:9px}.form-section541:first-child{margin-top:0}.purpose541{background:#eef8f0;border:1px solid #c6e3ce;border-radius:14px;padding:13px;margin-bottom:14px}.purpose541 label>span{font-size:11px;display:block;color:#417855;margin-bottom:7px}.purpose541 select{width:100%;font-weight:700;border-color:#b4d7bf}
.segmented54{margin:16px 0;gap:8px;display:flex;flex-wrap:wrap}.segmented54 label{flex:1;min-width:100px}.segmented54 label span{background:#fff;border:1px solid #c8e0d0;border-radius:11px;display:block;text-align:center;padding:13px 10px;color:#3f654f}.segmented54 input:checked+span{background:#126849;color:#fff;border-color:#126849}.segmented54 input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.presets541{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.presets541 button{min-width:34px;min-height:30px;padding:3px 9px;background:#edf6f0;border:1px solid #d5e7db;border-radius:8px;font-size:12px;color:#216740}.presets541 button:active{background:#176a45;color:white}.field>span{font-size:12px;line-height:1.5}.advanced541{background:#fafdfa;border-style:dashed}.advanced541 summary{color:#496e56;font-size:13px}.formgrid{gap:16px}
.notice.info,#quick54Summary{background:#edf7f0;border-color:#c6e2cf;color:#335e43;line-height:1.65}.notice.error{background:#fff1ed;color:#9b2f25;border-color:#eabdaf}.quote-card541{border:1px solid #d4e6da;border-radius:16px;padding:20px;margin:16px 0;}.quote-card541 h3{margin:0}.quote-card541>div>p{color:#60806d;margin:6px 0}.quote-card541 details{border:0;background:#f8fbf8;padding:9px}.send-summary541,.preset-summary541{background:#eef8f1;padding:17px;border:1px solid #c4e1cc;border-radius:14px;line-height:1.5}.manual-cost541{margin:0;border:0;padding:0}.manual-cost541>summary{color:#3d7353;font-size:14px}.totals{background:#eef8f1}.sumrow.big{color:#0b653e}
.doc-brand{border-bottom-color:#267e52}.doc-title{color:#155638}.result-card{background:#fbfefb;border-color:#cde2d4}.result-card h4{color:#1c6945}.handover-card{border-left-color:#3c9866}.summary-pre{background:#f0f8f2;border-color:#cee2d3}.auth-hero{background:linear-gradient(150deg,#123f30,#10744a)}.auth-hero .rail{color:#b9e1c7}.auth-hero>p{color:#c9e7d4}.auth-main{background:#f5faf6}.auth-languages button.active{background:#146640;color:white}.online{color:#226f45}
@media(max-width:700px){.main{padding-left:12px;padding-right:12px}.hero{padding:24px}.hero h2{font-size:25px}.modalcontent{padding:15px 16px}.modalhead{padding:14px 16px}.modalfoot button{font-size:13px}.modalfoot button.ghost{width:100%;min-height:32px;font-size:11px}.quick-categories{grid-template-columns:1fr 1fr}.quick-categories button{padding:14px 12px;min-height:90px}.purpose541{margin-top:0}.rail54{font-size:10px;padding:12px 10px;gap:5px}.presets541 button{min-height:33px;min-width:36px}.bottom-nav{background:#fafffb}.bottom-nav .active{background:#e6f4eb;color:#0b693d;border-radius:10px}.quote-card541{padding:16px}.quote-card541 .actions{display:grid;grid-template-columns:1fr 1fr}.quote-card541 .actions .primary{grid-column:1/-1}.form-section541{margin-top:21px}.listitem{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
@media print{.green-dashboard541{display:none}.docpage{color:#143f31}}

.project-extras541{padding:8px 12px;margin:5px 0 18px;border:0;background:transparent;font-size:12px;color:#557763}.project-extras541[open]{background:#edf6ef}.tabs{flex-wrap:wrap;overflow:visible}.tabs button{font-size:12px;min-height:39px;padding:8px 12px}.grid2:has(.manual-cost541){display:flex;flex-direction:column}.grid2:has(.manual-cost541)>div:first-child{order:2}@media(max-width:700px){.tabs{gap:4px}.tabs button{font-size:10px;padding:8px;flex:1 1 28%}}

.project-filters542 .filter-row542{display:flex;gap:8px;overflow-x:auto;padding-bottom:10px}
.project-filters542 .filter-row542 button{white-space:nowrap;background:#eaf5ef;color:#115c43;border:1px solid #b7d8c8}
.project-filters542 .filter-row542 button.active{background:#115c43;color:#fff;border-color:#115c43}
.project-life542{margin-bottom:10px}.project-life542 .actions{gap:8px;flex-wrap:wrap}

/* V544: material choices remain usable on phones. */
.material-choice544{display:grid;grid-template-columns:minmax(0,1fr) 130px auto;align-items:end;gap:10px;padding:12px 0;border-bottom:1px solid #d6e5da}.catalog-sections544{margin:10px 0 22px;padding-bottom:16px;border-bottom:2px solid #168344}#catalog544Form fieldset,#quoteRows544 fieldset{border:1px solid #cadfce;border-radius:12px;margin:14px 0;padding:16px}#catalog544Form legend{font-weight:700;color:#126637}#hours544Preview{display:block;font-size:1.1rem;font-weight:700;padding:14px;background:#e5f5eb;border-radius:8px}@media(max-width:620px){.material-choice544{grid-template-columns:1fr}.material-choice544 .field{min-width:0}#catalog544Form fieldset,#quoteRows544 fieldset{padding:12px}}
