:root {
  --ink:#17231d; --muted:#66736c; --line:#dfe6e1; --paper:#f5f7f5;
  --card:#fff; --green:#285c4d; --green-dark:#183d33; --mint:#e7f2ee; --accent:#d19a42; --sidebar:#172722;
  --amber:#a45b08; --amber-bg:#fff3dc; --red:#a23b32; --shadow:0 8px 28px rgba(23,50,36,.09);
}
*{box-sizing:border-box} body{margin:0;font:15px/1.45 Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--paper)}
[hidden]{display:none!important}
button,input,select,textarea{font:inherit}.sidebar{position:fixed;inset:0 auto 0 0;width:252px;background:var(--sidebar);color:#fff;padding:20px 14px 14px;display:flex;flex-direction:column;z-index:10;overflow-y:auto}
.brand{display:flex;gap:12px;align-items:center;padding:0 9px 20px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--accent);color:#15231b;font-weight:800;overflow:hidden}.brand-mark img{width:100%;height:100%;object-fit:contain;background:#fff}.brand-mark b{font:inherit}.brand strong,.brand small{display:block}.brand small{color:#aab8b0;margin-top:2px;max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
nav{display:grid;gap:13px}.nav-group{display:grid;gap:2px}.nav-group>small{padding:0 12px 4px;color:#83988d;font-size:9px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.nav-group button{position:relative;display:flex;gap:11px;align-items:center;width:100%;border:0;border-radius:9px;background:transparent;color:#c9d3cd;padding:8px 12px;text-align:left;cursor:pointer}.nav-group button span{width:20px;text-align:center;font-size:16px}.nav-group button:hover{background:rgba(255,255,255,.07);color:#fff}.nav-group button.active{background:color-mix(in srgb,var(--green) 60%,#fff 8%);color:#fff;font-weight:780;box-shadow:inset 3px 0 0 var(--accent)}.nav-group-system{padding-top:4px;border-top:1px solid rgba(255,255,255,.09)}.sidebar-foot{margin-top:auto;color:#9bada3;font-size:12px;padding:16px 11px 6px}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#6fd192;margin-right:7px}
main{margin-left:252px;min-height:100vh}.topbar{height:92px;padding:14px 34px;display:flex;align-items:center;gap:18px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.topbar-context{display:grid;gap:1px}.topbar-title-row{display:flex;align-items:baseline;gap:18px}.topbar h1{font-size:27px;margin:0}.topbar-title-row time{padding-left:18px;border-left:2px solid var(--accent);font-size:21px;font-weight:780;letter-spacing:-.015em;color:var(--ink);text-transform:capitalize;white-space:nowrap}.eyebrow{font-size:10px;letter-spacing:.14em;color:var(--green);font-weight:800;margin:0 0 2px}#menu-button{display:none;border:0;background:none;font-size:24px}.topbar .primary{margin-left:auto}#back-to-dashboard{margin-left:auto}.topbar #back-to-dashboard+.primary{margin-left:0}#back-to-dashboard[hidden]{display:none}
.content{max-width:1280px;margin:auto;padding:30px 34px 60px}.hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.hero h2{font-size:25px;margin:0 0 5px}.hero p{color:var(--muted);margin:0}.primary,.secondary,.danger{border:0;border-radius:8px;padding:11px 16px;font-weight:650;cursor:pointer}.primary{background:var(--green);color:#fff}.primary:hover{background:var(--green-dark)}.secondary{background:#fff;color:var(--ink);border:1px solid #cfd9d2}.danger{background:#fff;color:var(--red);border:1px solid #e6c8c5}.compact{padding:9px 13px}
.branding-editor{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);gap:22px}.branding-preview{display:grid;place-items:center;align-content:center;gap:10px;min-height:210px;padding:22px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(145deg,var(--mint),#fff)}.branding-preview-logo{display:grid;place-items:center;width:92px;height:92px;border-radius:20px;background:var(--accent);overflow:hidden;font-size:24px;font-weight:850;color:#17231d;box-shadow:0 10px 25px rgba(20,40,31,.14)}.branding-preview-logo img{width:100%;height:100%;object-fit:contain;background:#fff}.branding-preview strong{font-size:19px}.branding-preview small{text-align:center;color:var(--muted)}.branding-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.branding-fields .full{grid-column:1/-1}.color-field input{height:46px;padding:4px}.logo-actions{display:flex;gap:8px;flex-wrap:wrap}.branding-note{grid-column:1/-1;padding:11px 13px;border-left:4px solid var(--accent);background:#fffaf0;border-radius:8px;color:#5b513e;font-size:13px}@media(max-width:760px){.branding-editor{grid-template-columns:1fr}.branding-fields{grid-template-columns:1fr}.branding-fields .full{grid-column:auto}}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.metric,.card{background:var(--card);border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow)}.metric{padding:20px}.metric span{color:var(--muted);font-size:13px}.metric strong{display:block;font-size:30px;margin-top:5px}.metric em{font-style:normal;color:var(--green);font-size:12px}
.today-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin:-4px 0 20px;padding:27px 30px;border-radius:22px;background:linear-gradient(118deg,var(--green-dark),var(--green));color:#fff;box-shadow:0 18px 45px color-mix(in srgb,var(--green) 23%,transparent)}.today-intro h2{margin:5px 0 4px;font-size:clamp(28px,4vw,44px);line-height:1.08;letter-spacing:-.035em}.today-intro p{margin:0;color:rgba(255,255,255,.78)}.today-date,.section-kicker{font-size:11px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.today-date{color:color-mix(in srgb,var(--accent) 75%,white)}.today-main-action{display:flex;align-items:center;gap:12px;min-width:205px;padding:14px 18px;border:0;border-radius:14px;background:var(--accent);color:#17231d;cursor:pointer;text-align:left;box-shadow:0 9px 24px rgba(0,0,0,.18)}.today-main-action span{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:rgba(255,255,255,.45);font-size:22px}.today-main-action strong{font-size:15px}.today-pulse{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:22px;border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 7px 24px rgba(23,50,36,.06)}.today-pulse>*{display:flex;align-items:baseline;gap:9px;padding:17px 20px;border:0;border-right:1px solid var(--line);background:#fff;color:var(--ink);text-align:left}.today-pulse>*:last-child{border-right:0}.today-pulse button{cursor:pointer}.today-pulse button:hover{background:var(--mint)}.today-pulse strong{font-size:25px}.today-pulse span{color:var(--muted);font-size:12px;font-weight:700}.today-pulse .attention{background:#fff4f1}.today-pulse .attention strong,.today-pulse .attention span{color:var(--red)}.today-workbench{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:20px;align-items:start}.today-primary,.today-side{display:grid;gap:20px}.today-panel{padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 8px 26px rgba(23,50,36,.06)}.today-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:17px}.today-section-head h3{margin:2px 0 0;font-size:20px;letter-spacing:-.02em}.section-kicker{color:var(--green)}.today-schedule{border-top:5px solid var(--accent)}.today-job-list{display:grid;gap:8px}.today-job-list>button{display:grid;grid-template-columns:auto 1fr;gap:12px;width:100%;padding:11px;border:0;border-radius:10px;background:#f5f8f6;color:var(--ink);cursor:pointer;text-align:left}.today-job-list time{padding:4px 7px;border-radius:7px;background:var(--green);color:#fff;font-size:11px;font-weight:800}.today-job-list span{display:grid;gap:2px}.today-job-list small{color:var(--muted)}.today-free{display:grid;gap:6px;padding:16px;border:1px dashed #b9c9bf;border-radius:12px;background:#f8faf9}.today-free span{color:var(--muted);font-size:13px}.today-free button{justify-self:start;margin-top:7px}.today-quick{padding:18px 20px;border-radius:16px;background:color-mix(in srgb,var(--green) 8%,white);border:1px solid color-mix(in srgb,var(--green) 24%,white)}.today-quick>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:11px}.today-quick button{display:grid;place-items:center;gap:4px;padding:12px 5px;border:0;border-radius:11px;background:#fff;color:var(--ink);cursor:pointer}.today-quick button:hover{box-shadow:var(--shadow)}.today-quick b{font-size:20px;color:var(--green)}.today-quick span{font-size:12px;font-weight:750}.today-inquiries{margin-top:20px}.today-inquiry-list{display:grid}.today-inquiry-list>button{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;align-items:center;width:100%;padding:13px 4px;border:0;border-bottom:1px solid var(--line);background:#fff;color:var(--ink)}.today-inquiry-list>button:last-child{border-bottom:0}.today-inquiry-list>button>span{display:grid;gap:2px}.today-inquiry-list small{color:var(--muted)}.today-inquiry-list em{font-style:normal;color:var(--green);font-size:12px;font-weight:800}.today-primary .dashboard-tasks{margin:0}.today-primary .task-item{box-shadow:none}.dashboard-followups.today-panel{margin:0}
@media(max-width:900px){.today-workbench{grid-template-columns:1fr}.today-pulse{grid-template-columns:1fr 1fr}.today-pulse>*:nth-child(2){border-right:0}.today-pulse>*:nth-child(-n+2){border-bottom:1px solid var(--line)}}
.grid-2{display:grid;grid-template-columns:1.45fr 1fr;gap:20px}.card{padding:22px}.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.card h3{margin:0;font-size:17px}.muted{color:var(--muted)}.empty{padding:35px;text-align:center;color:var(--muted);border:1px dashed #cbd7cf;border-radius:10px}
.action-list{display:grid;gap:10px}.action-tile{display:flex;align-items:center;gap:13px;border:1px solid var(--line);background:#fff;border-radius:10px;padding:13px;cursor:pointer;text-align:left}.action-tile:hover{border-color:#81a691;background:#f9fcfa}.action-icon{display:grid;place-items:center;width:37px;height:37px;border-radius:9px;background:var(--mint);color:var(--green);font-weight:800}.action-tile small{display:block;color:var(--muted)}
.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}table{border-collapse:collapse;width:100%;min-width:720px}th,td{padding:14px 16px;border-bottom:1px solid #edf0ee;text-align:left}th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:#fafbfa}tr:last-child td{border-bottom:0}.name-cell strong,.name-cell small{display:block}.name-cell small{color:var(--muted)}
.badge{display:inline-block;border-radius:20px;padding:5px 9px;background:#edf1ee;color:#4d5b53;font-size:12px;font-weight:650}.badge.green{background:var(--mint);color:var(--green)}.badge.amber{background:var(--amber-bg);color:var(--amber)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:13px;font-weight:650}.field input,.field select,.field textarea{width:100%;border:1px solid #cbd5ce;border-radius:8px;padding:10px 11px;background:#fff}.field textarea{min-height:90px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid #dbece2;border-color:var(--green)}.form-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px;margin-top:8px}
dialog{border:0;border-radius:14px;padding:0;width:min(680px,calc(100% - 28px));box-shadow:0 25px 80px rgba(0,0,0,.28)}dialog::backdrop{background:rgba(8,20,13,.58)}.modal-shell{padding:0}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:19px 22px;border-bottom:1px solid var(--line)}.modal-head h2{margin:0;font-size:20px}.icon-button{border:0;background:none;font-size:25px;cursor:pointer}#modal-body{padding:22px}
#notice{position:fixed;right:24px;top:108px;z-index:30;max-width:380px}.notice{background:#183d2b;color:#fff;padding:12px 16px;border-radius:9px;box-shadow:var(--shadow)}.notice.error{background:#8a302a}
.followup-alert{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 34px 0;padding:13px 16px;border:2px solid #d18b30;border-radius:12px;background:#fff7e8;color:#4e330e;box-shadow:0 5px 16px rgba(93,61,15,.12)}.followup-alert[hidden]{display:none}.followup-alert>div{display:grid;gap:3px}.followup-alert span{font-size:13px}.nav-due-count{display:grid;place-items:center;min-width:22px;height:22px;margin-left:auto;padding:0 6px;border-radius:999px;background:#c84f36;color:#fff;font-size:12px}.nav-due-count[hidden]{display:none}@media(max-width:700px){.followup-alert{align-items:stretch;flex-direction:column;margin:12px 15px 0}.followup-alert button{width:100%}}
.receipt-capture-card{display:grid;gap:12px;margin-bottom:18px;padding:16px;border:2px solid #3f8a63;border-radius:14px;background:#f1faf5}.receipt-capture-card>div:first-child{display:grid;gap:4px}.receipt-capture-card>div:first-child span{color:#53635a;font-size:13px}.receipt-capture-card #expense-photo-preview{width:100%;max-height:320px;object-fit:contain;border:1px solid #cad8cf;border-radius:10px;background:#fff}.ocr-result{display:grid;gap:4px;padding:12px;border-radius:10px;background:#e4f4e9;color:#174b35}.ocr-result small{color:#40594a}.ocr-result details{margin-top:6px}.ocr-result pre{max-height:180px;overflow:auto;white-space:pre-wrap;padding:10px;border-radius:8px;background:#fff;color:#243229;font-size:12px}@media(max-width:700px){.receipt-capture-card #expense-camera-button{width:100%;min-height:52px}}
.supplier-panel{margin-bottom:18px}.supplier-panel summary{display:flex;align-items:center;justify-content:space-between;gap:15px;cursor:pointer}.supplier-panel summary>span{display:grid;gap:2px}.supplier-panel summary small{color:#66736c}.supplier-list{display:grid;gap:8px;margin-top:14px}.supplier-row{padding:11px 13px;border:1px solid #dce5df;border-radius:9px;background:#f8fbf9}.supplier-row span{display:grid;gap:3px}.supplier-row small{color:#66736c}@media(max-width:700px){.supplier-panel summary{align-items:stretch;flex-direction:column}.supplier-panel summary button{width:100%}}
.workflow{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.step{font-size:12px;color:var(--muted)}.step.current{color:var(--green);font-weight:700}.arrow{color:#aab3ad}.row-actions{display:flex;gap:7px;flex-wrap:wrap}.link-button{border:0;background:transparent;color:var(--green);font-weight:650;cursor:pointer;padding:4px}
.calc-layout{display:grid;grid-template-columns:1.7fr .8fr;gap:20px}.calc-adds{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 10px}.offer-conditions{margin-top:20px}.offer-conditions h3{margin-bottom:16px}.position{display:grid;gap:12px;padding:18px 0;border-bottom:1px solid var(--line)}.position-head{display:grid;grid-template-columns:1.1fr 2fr auto;gap:9px;align-items:end}.position-kind{display:grid;gap:3px;padding-bottom:8px}.position-kind span{font-size:11px;color:var(--muted)}.position-kind strong{font-size:16px;color:var(--green)}.position-details{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr));gap:9px;padding:12px;background:#f7faf8;border:1px solid var(--line);border-radius:9px}.position-result{display:flex;justify-content:flex-end;gap:12px;align-items:center}.position-result span{font-size:12px;color:var(--muted)}.position label{font-size:11px;color:var(--muted)}.position input,.position select{width:100%;padding:8px;border:1px solid #cad4cd;border-radius:7px}.totals{position:sticky;top:120px}.total-row{display:flex;justify-content:space-between;padding:8px 0}.total-row.grand{font-size:20px;font-weight:800;border-top:2px solid var(--ink);margin-top:5px;padding-top:13px}.hint{background:var(--mint);color:#285842;padding:12px;border-radius:9px;font-size:13px}.quote-card{display:grid;grid-template-columns:1fr auto;gap:15px;align-items:center;padding:18px;background:#fff;border:1px solid var(--line);border-radius:11px;margin-bottom:12px}.quote-card h3{margin:0 0 5px}.money{font-size:20px;font-weight:800;text-align:right}
.position-actions{display:flex;gap:7px;align-items:center}.maps-route{border:1px solid #3b67a4;background:#edf5ff;color:#28558f;border-radius:7px;font-weight:750;white-space:nowrap;cursor:pointer}.maps-route:hover{background:#dcecff}.route-hint{padding:9px 11px;border-radius:8px;background:#edf5ff;color:#315a83;font-size:12px}
.cost-summary{margin-top:14px;padding:10px;border-top:1px solid var(--line);background:#f7faf8;border-radius:8px}
.inline-field{display:flex;gap:8px}.inline-field input{flex:1}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));gap:10px;overflow:auto}.day-column{min-height:320px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:10px}.day-column header{display:flex;justify-content:space-between;padding-bottom:9px;border-bottom:1px solid var(--line);text-transform:capitalize}.appointment{display:grid;gap:3px;margin-top:9px;padding:9px;background:var(--mint);border-left:4px solid var(--green);border-radius:7px}.appointment span,.appointment small{color:var(--muted)}.appointment a{color:var(--green);font-weight:700;margin-top:4px}.free-slot{margin-top:14px;text-align:center;color:var(--muted);font-size:12px}.booked-summary{display:grid;gap:5px;padding:12px;background:#f7faf8;border-radius:8px;margin-bottom:16px}.booked-summary span{font-size:13px;color:var(--muted)}
.picker-legend,.picker-toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.picker-legend{margin-bottom:12px}.picker-legend span{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--muted)}.picker-legend i{width:12px;height:12px;border-radius:50%;display:inline-block}.picker-full-calendar{margin-left:auto}.legend-free{background:#bfe7cb}.legend-partial{background:#f1cf79}.legend-full{background:#e5a8a3}.picker-toolbar{justify-content:space-between;margin-bottom:12px}.slot-week{display:grid;grid-template-columns:repeat(7,minmax(155px,1fr));gap:8px;overflow-x:auto;padding-bottom:4px}.slot-day{min-height:330px;border:2px solid transparent;border-radius:10px;padding:10px;text-align:left;display:flex;flex-direction:column;gap:8px;cursor:pointer;color:var(--ink)}.slot-day.free{background:#e6f5ea;border-color:#9ed2ac}.slot-day.partial{background:#fff4d8;border-color:#e7c568}.slot-day.full{background:#f8e4e2;border-color:#dba29d;cursor:not-allowed;opacity:1}.slot-day.range-start,.slot-day.range-end{outline:3px solid #285842;transform:translateY(-2px)}.slot-day.in-range{box-shadow:inset 0 0 0 3px #6b9d7d}.slot-date{display:flex;justify-content:space-between;text-transform:capitalize}.slot-day em{font-style:normal;font-weight:750;min-height:34px}.picker-timeline{height:216px;position:relative;border:1px solid rgba(36,70,54,.24);border-radius:7px;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.9) 0,rgba(255,255,255,.9) 25px,rgba(57,82,68,.12) 26px);overflow:hidden}.picker-timeline.empty{display:flex;flex-direction:column;justify-content:space-between;padding:7px;color:var(--muted);font-size:10px}.picker-timeline.empty strong{align-self:center;text-align:center;color:var(--green)}.picker-booking{position:absolute;z-index:2;padding:4px;border-radius:5px;color:#fff;display:flex!important;flex-direction:column;align-items:flex-start!important;gap:1px!important;overflow:hidden;box-shadow:0 1px 4px rgba(0,0,0,.2);font-size:9px!important;line-height:1.15}.picker-booking b,.picker-booking strong,.picker-booking small{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff}.picker-time{position:absolute;right:3px;z-index:3;font-size:9px;font-style:normal;color:var(--muted);background:rgba(255,255,255,.8)}.picker-time.start{top:2px}.picker-time.end{bottom:2px}.slot-free-total{font-size:10px;color:var(--muted);margin-top:auto}.picker-hint{margin:12px 0 16px}.date-choice{padding:9px;border:2px solid transparent;border-radius:10px}.date-choice.active{background:#e6f5ea;border-color:#5d9b72}.date-choice label small{display:block;color:var(--muted);font-weight:400}dialog:has(.slot-week){width:min(1400px,calc(100% - 28px))}
.employee-legend,.employee-choices{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.employee-legend{margin:0 0 12px}.employee-legend span,.employee-choice{display:flex;align-items:center;gap:6px;font-size:13px}.employee-legend i,.employee-choice i{width:14px;height:14px;border-radius:4px;flex:0 0 auto}.employee-choice{padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer}.employee-choice input{width:auto}.schedule-scroll{overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fff}.schedule-grid{display:grid;grid-template-columns:64px repeat(7,minmax(175px,1fr));grid-template-rows:48px 660px;min-width:1289px}.time-head{grid-column:1;grid-row:1;padding:16px 7px;font-size:11px;color:var(--muted);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.time-scale{grid-column:1;grid-row:2;position:relative;border-right:1px solid var(--line)}.time-scale span{position:absolute;right:7px;transform:translateY(-7px);font-size:11px;color:var(--muted)}.schedule-day{grid-row:1/3;display:grid;grid-template-rows:48px 660px;border-right:1px solid var(--line)}.schedule-day header{display:flex;justify-content:space-between;align-items:center;padding:0 9px;border-bottom:1px solid var(--line);text-transform:capitalize;background:#f7faf8}.schedule-lane{position:relative;background:repeating-linear-gradient(to bottom,#fff 0,#fff 59px,#e3e9e5 60px)}.schedule-block{position:absolute;overflow:hidden;z-index:2;padding:6px 7px;border-radius:7px;color:#fff;display:flex;flex-direction:column;gap:2px;box-shadow:0 2px 6px rgba(0,0,0,.18);border:1px solid rgba(0,0,0,.16);font-size:11px}.schedule-block strong,.schedule-block b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-block span,.schedule-block small{color:rgba(255,255,255,.9)}.schedule-block a{color:#fff;text-decoration:underline;font-weight:700}.schedule-block:hover{z-index:5;filter:brightness(.94)}
.schedule-grid.days-1{grid-template-columns:64px minmax(760px,1fr);min-width:824px}.calendar-view-switch{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 14px}.calendar-view-switch label{display:flex;align-items:center;gap:8px;margin-left:8px;font-size:13px;font-weight:750}.calendar-view-switch select{min-width:180px;padding:8px 10px}
.modal-error{margin-bottom:14px;padding:12px 14px;border-radius:9px;background:#fae6e3;border:1px solid #d9958e;color:#812d26;font-weight:700}.appointment-detail h3{font-size:24px;margin:5px 0}.detail-title{font-size:17px;margin:0 0 18px;color:var(--muted)}.appointment-detail dl{display:grid;grid-template-columns:110px 1fr;gap:10px 14px;margin:0}.appointment-detail dt{font-weight:750;color:var(--muted)}.appointment-detail dd{margin:0}.detail-people{display:flex;gap:9px;flex-wrap:wrap}.detail-person{display:flex;align-items:center;gap:5px}.detail-person i{width:13px;height:13px;border-radius:4px}.detail-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 12px}.detail-actions a{text-decoration:none}.detail-actions button:disabled{opacity:.55;cursor:not-allowed}
.customer-acceptance-start,.acceptance-scope,.signature-box{margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#f8fbf9}.acceptance-scope{display:grid;gap:6px;margin-bottom:16px}.acceptance-scope span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.acceptance-confirm{display:flex;gap:10px;align-items:flex-start;margin:16px 0;font-weight:700}.acceptance-confirm input{margin-top:3px}.signature-box label{display:block;font-weight:700;margin-bottom:8px}.signature-box canvas{display:block;width:100%;height:220px;background:#fff;border:2px dashed #91a69b;border-radius:9px;touch-action:none;margin-bottom:10px}
.work-record li{display:flex;justify-content:space-between;align-items:center;gap:10px}.work-record li>span{display:grid;gap:3px}
.existing-order-appointment{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:10px;padding:11px;border-radius:9px;background:#fff;border:1px solid var(--line)}.existing-order-appointment div{display:grid;gap:3px}.existing-order-appointment span{font-size:13px;color:var(--muted)}
.dashboard-inquiry{text-align:left;width:100%;cursor:pointer}.dashboard-inquiry .dashboard-target{color:var(--accent);font-weight:750;margin-top:3px}
.calendar-exit{display:flex;gap:12px;align-items:center;margin-bottom:12px}.calendar-exit span{font-size:13px;color:var(--muted)}
.calendar-return-bar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}dialog:has(.schedule-grid){width:min(1500px,calc(100% - 28px));max-width:none}
.order-month-toolbar{display:flex;align-items:center;justify-content:space-between;margin:12px 0}.order-month-toolbar strong{text-transform:capitalize}.order-month-weekdays,.order-month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.order-month-weekdays span{text-align:center;font-size:11px;font-weight:750;color:var(--muted)}.order-month-day{min-height:58px;border:2px solid transparent;border-radius:8px;padding:6px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;color:var(--ink)}.order-month-day b{font-size:15px}.order-month-day span{font-size:9px}.order-month-day.free{background:#e6f5ea;border-color:#9ed2ac}.order-month-day.partial{background:#fff4d8;border-color:#e7c568}.order-month-day.full{background:#f8e4e2;border-color:#dba29d;opacity:.8}.order-month-day.outside{opacity:.38}.order-month-day.selected{outline:3px solid #285842;transform:translateY(-2px)}.order-month-legend{margin:10px 0 0}dialog:has(.order-month-grid){width:min(1050px,calc(100% - 28px))}
.calendar-month-inline{padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:auto}.calendar-month-inline .order-month-grid,.calendar-month-inline .order-month-weekdays{min-width:760px}.calendar-month-inline .order-month-day{min-height:105px;justify-content:flex-start;gap:7px}.calendar-month-inline .order-month-day span{font-size:11px;font-weight:700}.month-employee-dots{display:flex;flex-wrap:wrap;gap:4px;margin-top:auto}.month-employee-dots i{width:11px;height:11px;border-radius:50%;border:1px solid rgba(0,0,0,.18)}
.work-instruction{display:block;padding:14px;margin:10px 0 18px;border-left:5px solid var(--green);border-radius:8px;background:var(--mint)}.work-instruction p{font-size:17px;font-weight:750;margin:5px 0}.work-instruction small{display:block;color:var(--muted);white-space:pre-wrap}.field-report{margin-top:20px}.field-report button{justify-self:start}.field-report textarea{min-height:110px}
.mobile-job-head{display:grid;gap:8px;padding:15px;border-radius:10px;background:var(--mint);margin-bottom:16px}.mobile-job-head h3{margin:0;font-size:22px}.mobile-job-head a{color:var(--green);font-weight:750}.photo-capture{margin-top:18px;padding:15px;border:1px solid var(--line);border-radius:10px;background:#f8faf8}.photo-capture h3{margin:0 0 12px}.photo-preview{display:none;max-height:240px;max-width:100%;margin:10px auto;border-radius:9px}.photo-preview.visible{display:block}.photo-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.photo-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}.photo-card img{display:block;width:100%;height:170px;object-fit:cover}.photo-card div{padding:10px}.photo-card strong,.photo-card small{display:block}.photo-card small{color:var(--muted);margin-top:3px}.photo-empty{grid-column:1/-1;padding:18px;text-align:center;color:var(--muted);border:1px dashed #bdcbc2;border-radius:9px}dialog:has(.mobile-job){width:min(850px,calc(100% - 20px))}
.camera-actions,.camera-panel-actions{display:flex;gap:10px;flex-wrap:wrap}.visually-hidden-file{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.camera-panel{margin:14px 0;padding:10px;border-radius:11px;background:#101713}.camera-panel video{display:block;width:100%;max-height:480px;object-fit:contain;border-radius:8px;background:#000}.camera-panel-actions{justify-content:center;margin-top:10px}.camera-selection{margin:12px 0 4px;padding:10px 12px;border-radius:8px;background:#edf5ef;color:#315a43;font-weight:650}.photo-meta{margin-top:14px}.photo-capture button:disabled{opacity:.55;cursor:not-allowed}
.work-record-grid{display:grid;gap:15px;margin:18px 0}.work-record,.job-completion{padding:16px;border:1px solid var(--line);border-radius:10px;background:#fff}.work-record h3,.job-completion h3{margin:0 0 12px}.work-record ul{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:6px}.work-record li{display:flex;justify-content:space-between;gap:12px;padding:8px 10px;background:#f4f7f5;border-radius:7px}.work-record li span{color:var(--muted);text-align:right}.job-completion{margin-top:20px;border-color:#8eb49d;background:#f3faf6}.job-completion button{margin-top:12px}.job-completion button:disabled{opacity:.65}
.extra-review-list{display:grid;gap:13px}.extra-review-card{display:grid;grid-template-columns:1fr 1.2fr;gap:18px;padding:16px;border:1px solid var(--line);border-radius:10px;background:#fff}.extra-review-card.pending{border-left:5px solid #d29a2f}.extra-review-card.approved{border-left:5px solid var(--green)}.extra-review-card.rejected{border-left:5px solid var(--red)}.extra-review-card h3{margin:8px 0 3px}.extra-review-card p{margin:0 0 4px}.extra-review-card small,.extra-review-result span{display:block;color:var(--muted)}.extra-review-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.extra-review-fields .full,.extra-review-fields .row-actions{grid-column:1/-1}.extra-review-result{display:grid;align-content:center;gap:5px;padding:12px;background:#f5f7f5;border-radius:8px}dialog:has(.extra-review-list){width:min(1050px,calc(100% - 20px))}
.report-preview-head{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:start;padding:16px;background:var(--mint);border-radius:10px;margin-bottom:14px}.report-preview-head h3{font-size:23px;margin:2px 0}.report-preview-head p{margin:0}.report-preview-stats{display:grid;grid-template-columns:auto auto;gap:3px 9px;align-items:baseline}.report-preview-stats strong{font-size:19px;text-align:right}.report-preview-stats span{font-size:12px;color:var(--muted)}.report-preview-list{display:grid;gap:9px;margin:14px 0}.report-preview-appointment{display:flex;justify-content:space-between;gap:15px;padding:12px;border:1px solid var(--line);border-radius:9px}.report-preview-appointment div{display:grid;gap:3px}.report-preview-appointment small,.report-preview-appointment>span{color:var(--muted)}.report-download{text-decoration:none;display:inline-block}dialog:has(.report-preview-list){width:min(950px,calc(100% - 20px))}
.sidebar.auth-hidden{display:none}.sidebar.auth-hidden+main{margin-left:0}.auth-page{min-height:65vh;display:grid;place-items:center}.auth-card{width:min(430px,100%);display:grid;gap:14px;padding:28px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.auth-card .brand-mark{margin:auto}.auth-card h2,.auth-card p{margin:0;text-align:center}.access-settings{margin-top:20px}.access-user-list{display:grid;gap:8px}.access-user-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px;background:#f5f7f5;border-radius:8px}.access-user-list span,.access-user-list small{display:block}.access-user-list small{color:var(--muted)}.mobile-assignment-list{display:grid;gap:13px}.mobile-assignment{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.mobile-assignment>div{display:grid;gap:5px}.mobile-assignment h3{margin:3px 0}.mobile-assignment span{color:var(--muted)}
.topbar.auth-hidden{display:none}.auth-page{min-height:100vh;display:grid;grid-template-columns:minmax(320px,1.08fr) minmax(360px,.92fr);background:linear-gradient(135deg,var(--green-dark),var(--green));}.auth-brand-panel{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(40px,8vw,110px);color:#fff;background:radial-gradient(circle at 25% 20%,rgba(255,255,255,.14),transparent 34%)}.auth-brand-logo{width:112px;height:112px;display:grid;place-items:center;margin-bottom:28px;border-radius:28px;background:#fff;color:var(--green);box-shadow:0 24px 65px rgba(0,0,0,.24);overflow:hidden}.auth-brand-logo img{width:100%;height:100%;object-fit:contain}.auth-brand-logo b{font-size:34px}.auth-brand-panel>span{font-size:12px;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}.auth-brand-panel h2{margin:10px 0 12px;font-size:clamp(38px,5vw,68px);line-height:1}.auth-brand-panel p{max-width:560px;margin:0;font-size:18px;color:rgba(255,255,255,.82)}.auth-role-notes{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}.auth-role-notes span{padding:8px 12px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(255,255,255,.08);font-size:13px}.auth-card{align-self:center;justify-self:center;width:min(440px,calc(100% - 48px));display:grid;gap:18px;padding:42px;background:#fff;border:0;border-radius:24px;box-shadow:0 32px 80px rgba(0,0,0,.25)}.auth-card h2{margin:0;font-size:30px;text-align:left}.auth-card>p{margin:-8px 0 4px;color:var(--muted);text-align:left}.auth-card .field{display:grid;gap:7px}.auth-card input{min-height:48px}.auth-submit{min-height:50px;margin-top:4px;font-size:16px}.auth-security-note{padding-top:14px!important;border-top:1px solid var(--line);font-size:12px!important;text-align:center!important}@media(max-width:820px){.auth-page{grid-template-columns:1fr;min-height:100vh}.auth-brand-panel{padding:36px 28px 28px}.auth-brand-logo{width:76px;height:76px;margin-bottom:18px;border-radius:20px}.auth-brand-panel h2{font-size:36px}.auth-role-notes{display:none}.auth-card{margin:0 auto 36px;padding:28px}}
.mobile-readiness{margin-top:20px}.readiness-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.readiness-item{display:grid;gap:3px;padding:13px;border-radius:9px;border:1px solid var(--line)}.readiness-item span{color:var(--muted);font-size:13px}.readiness-item.ready{background:#edf7f0;border-color:#a9d1b4}.readiness-item.open{background:#fff5df;border-color:#e4c675}.readiness-item.ready strong{color:var(--green)}.readiness-item.open strong{color:var(--amber)}
.pwa-install-card{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px 16px;margin-bottom:15px;border:1px solid #a9d1b4;border-radius:11px;background:#edf7f0}.pwa-install-card div{display:grid;gap:3px}.pwa-install-card span{color:var(--muted);font-size:13px}.pwa-install-card>.badge{color:var(--green)}
.device-session-list{display:grid;gap:10px}.device-session-list article{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px;border:1px solid var(--line);border-radius:9px}.device-session-list article div{display:grid;gap:3px}.device-session-list span,.device-session-list small{color:var(--muted)}
.backup-settings{margin-top:20px}.backup-settings .card-head{gap:16px}.backup-settings .card-head>div{display:grid;gap:3px}.backup-settings .card-head p{margin:0}
.backup-valid,.backup-invalid{display:grid;gap:4px;margin:14px 0;padding:13px;border-radius:9px}.backup-valid{background:#edf7f0;border:1px solid #a9d1b4}.backup-valid strong{color:var(--green)}.backup-invalid{background:#fae6e3;border:1px solid #d9958e}.backup-invalid strong{color:var(--red)}.backup-valid span,.backup-valid small,.backup-invalid span,.backup-invalid small{color:var(--muted)}
.backup-valid button{justify-self:start;margin-top:8px}.restore-warning{margin-bottom:16px;padding:14px;border:1px solid #d9958e;border-radius:9px;background:#fae6e3}.restore-warning strong{color:var(--red)}.restore-warning p{margin:7px 0 0}
.dashboard-tasks{margin-bottom:20px}.dashboard-tasks .card-head p{margin:3px 0 0}.task-summary{display:flex;gap:7px;flex-wrap:wrap}.task-count{padding:5px 9px;border-radius:20px;font-size:12px;font-weight:750}.task-count.urgent{background:#fae6e3;color:var(--red)}.task-count.advisor{background:#fff3dc;color:var(--amber)}.task-list{display:grid;gap:9px}.task-item{display:grid;grid-template-columns:38px 1fr auto;gap:12px;align-items:center;width:100%;padding:13px;border:1px solid var(--line);border-radius:10px;background:#fff;text-align:left;cursor:pointer}.task-item:hover{transform:translateY(-1px);box-shadow:var(--shadow)}.task-symbol{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;font-weight:800;background:var(--mint);color:var(--green)}.task-item span:nth-child(2){display:grid;gap:2px}.task-item small{color:var(--muted)}.task-item b{color:var(--green);font-size:12px}.task-item.urgent{border-left:5px solid var(--red)}.task-item.urgent .task-symbol{background:#fae6e3;color:var(--red)}.task-item.advisor{border-left:5px solid var(--amber)}.task-item.advisor .task-symbol{background:#fff3dc;color:var(--amber)}
.dashboard-tasks.attention-jump{animation:attention-jump 1.15s ease}@keyframes attention-jump{0%,100%{box-shadow:0 8px 26px rgba(23,50,36,.06)}35%{box-shadow:0 0 0 4px rgba(184,69,55,.2),0 12px 32px rgba(184,69,55,.18)}}
.password-input-wrap{position:relative}.password-input-wrap>input{width:100%;padding-right:48px}.password-toggle{position:absolute;right:5px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:38px;height:34px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--green-dark);font-size:18px;line-height:1;cursor:pointer}.password-toggle:hover,.password-toggle:focus-visible{background:var(--mint);outline:2px solid color-mix(in srgb,var(--green) 35%,transparent)}.password-toggle[aria-pressed="true"]{background:var(--mint)}
.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.permission-grid label{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid var(--line);border-radius:9px;background:#f8fbf9}@media(max-width:600px){.permission-grid{grid-template-columns:1fr}}
.quick-view-entries{display:grid;gap:7px;margin-top:10px}.quick-view-entry{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:#f5f7f6;color:var(--ink);cursor:default}.quick-view-time{white-space:nowrap}.quick-view-customer{padding:6px 9px;border:1px solid var(--line);border-radius:7px;background:#fff;font-weight:700}.quick-view-employees{display:flex;gap:6px;flex-wrap:wrap}.quick-view-employees i{padding:6px 10px;border:2px solid var(--employee-color);border-radius:999px;background:color-mix(in srgb,var(--employee-color) 18%,white);color:var(--ink);font-style:normal;font-weight:800}
.position.selected{outline:3px solid #8fc5a1;box-shadow:0 0 0 5px rgba(143,197,161,.18)}
.live-timer{margin:16px 0;border:2px solid #9ed2ac;background:#f4fbf6}.live-timer .timer-elapsed{display:block;margin:12px 0;font-size:32px;letter-spacing:2px;color:var(--green)}
.work-time-complete{display:inline-flex;padding:9px 12px;font-size:13px}
.billing-agreement{display:grid;gap:4px;padding:13px 16px;margin-bottom:12px;border:1px solid #9bc9b3;border-radius:10px;background:#eef9f3}.billing-agreement strong{color:#19583e}.billing-agreement span{font-size:14px}
.schedule-block.movable{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.schedule-block.movable:active{cursor:grabbing}.schedule-block.dragging{opacity:.45}.schedule-block.direct-dragging,.schedule-block.direct-resizing{opacity:.82;z-index:12;box-shadow:0 0 0 4px #fff,0 0 0 7px #174b35}.schedule-block.direct-dragging{cursor:grabbing}.schedule-block.direct-resizing{cursor:ns-resize}.schedule-resize-handle{position:absolute!important;left:4px;right:4px;height:12px;z-index:5;cursor:ns-resize;border-radius:6px;background:rgba(255,255,255,.92);opacity:.82}.schedule-resize-handle.top{top:1px}.schedule-resize-handle.bottom{bottom:1px}.schedule-resize-handle::after{content:"";position:absolute;left:50%;top:5px;width:28px;height:2px;transform:translateX(-50%);border-radius:2px;background:rgba(23,35,29,.65)}.schedule-block:hover .schedule-resize-handle{opacity:1}.schedule-lane.drop-target{outline:4px dashed #2d8a5f;outline-offset:-5px;background:#eaf8f0}
.schedule-block.locked{cursor:not-allowed}.schedule-lock{display:block;margin-top:auto;padding-top:4px;font-weight:700}
.schedule-block.internal-event{border:2px dashed rgba(255,255,255,.92);cursor:pointer}
[data-drop-shift].drop-target{outline:4px solid #2d8a5f;background:#eaf8f0;color:#174b35}
.picker-booking.movable{cursor:grab;user-select:none;-webkit-user-select:none}.picker-booking.movable:active{cursor:grabbing}.picker-booking.dragging{opacity:.45}.slot-day.drop-target{outline:4px dashed #2d8a5f;outline-offset:-5px;background:#dff4e7}
.picker-booking.move-source{outline:4px solid #fff;box-shadow:0 0 0 5px #174b35;z-index:5}
.schedule-block.move-source{outline:4px solid #fff;box-shadow:0 0 0 5px #174b35;z-index:8}
.picker-timeline:not(.empty)::after{content:"08:00\A 10:00\A 12:00\A 14:00\A 16:00";white-space:pre;pointer-events:none;position:absolute;z-index:1;right:3px;top:2px;line-height:50px;font-size:8px;color:#52635a;background:rgba(255,255,255,.55)}
@media(max-width:900px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:none}main{margin-left:0}#menu-button{display:block}.topbar-title-row{gap:10px}.topbar-title-row time{padding-left:10px;font-size:16px}.metrics{grid-template-columns:1fr 1fr}.grid-2,.calc-layout{grid-template-columns:1fr}.totals{position:static}.position-head,.position-details{grid-template-columns:1fr 1fr}.position .wide{grid-column:1/-1}}
@media(max-width:560px){.topbar{height:88px;padding:12px 14px;gap:8px}.topbar .primary{display:none}.topbar [data-action="logout"]{display:block}.topbar h1{font-size:19px}.topbar-title-row{display:grid;gap:0}.topbar-title-row time{padding:0;border:0;font-size:13px}.topbar .eyebrow{display:none}#back-to-dashboard{font-size:12px;padding:8px 10px;white-space:nowrap}.content{padding:21px 15px 90px}.metrics{grid-template-columns:1fr 1fr;gap:10px}.metric{padding:15px}.metric strong{font-size:25px}.hero{align-items:flex-start}.today-intro{display:grid;padding:22px}.today-main-action{width:100%}.today-pulse>*{display:grid;gap:0;padding:13px}.today-pulse strong{font-size:22px}.today-section-head{display:grid}.today-inquiry-list>button{grid-template-columns:1fr auto}.today-inquiry-list em{display:none}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.quote-card{grid-template-columns:1fr}.money{text-align:left}.photo-gallery{grid-template-columns:1fr}.photo-card img{height:220px}.mobile-job .primary,.mobile-job .secondary{width:100%}.camera-actions,.camera-panel-actions{display:grid}.photo-meta .primary,.photo-meta .secondary{width:100%}.extra-review-card{grid-template-columns:1fr}.extra-review-fields{grid-template-columns:1fr}.extra-review-fields .full,.extra-review-fields .row-actions{grid-column:auto}.report-preview-head{grid-template-columns:1fr}.report-preview-appointment{display:grid}.report-preview-stats{justify-content:start}.mobile-assignment{display:grid}.mobile-assignment button{width:100%}.access-user-list>div{display:grid}.readiness-grid{grid-template-columns:1fr}.pwa-install-card{display:grid}.pwa-install-card button{width:100%}}
.inspection-basis{margin-top:16px;background:#f7faf7}
.inspection-basis.empty-state{padding:18px;text-align:left}
.inspection-basis .detail-grid strong{white-space:pre-wrap}
.inspection-photo-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-top:16px}
.inspection-photo-strip a{display:flex;flex-direction:column;gap:7px;color:inherit;text-decoration:none;font-size:13px;font-weight:700}
.inspection-photo-strip img{width:100%;height:105px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}
.inspection-handoff{margin:16px 0;padding:16px;border:1px solid #b9d5c2;border-radius:14px;background:#f4faf6}
.inspection-handoff .detail-grid strong{white-space:pre-wrap}
.monteurs-entry{display:block;margin-top:18px}
.monteur-open-button{display:grid;width:100%;gap:3px;padding:16px 18px;text-align:left;color:#fff;background:linear-gradient(135deg,#167443,#23945a);border:0;border-radius:14px;box-shadow:0 8px 20px rgba(22,116,67,.24);cursor:pointer}
.monteur-open-button:hover,.monteur-open-button:focus-visible{background:linear-gradient(135deg,#116238,#1d814e);transform:translateY(-1px);box-shadow:0 10px 24px rgba(22,116,67,.32)}
.monteur-open-button span{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.85}
.monteur-open-button strong{font-size:17px}
.monteur-open-button small{color:#e6f6ec;font-size:12px}
.document-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.document-preview-frame{display:block;width:100%;height:min(72vh,900px);border:1px solid var(--line);border-radius:12px;background:#fff}
@media(max-width:700px){.document-preview-toolbar{align-items:stretch;flex-direction:column}.document-preview-frame{height:65vh}}
.monteur-notice{display:grid;gap:5px;margin:14px 0;padding:14px 16px;border:2px solid #e0a42d;border-radius:12px;background:#fff8df;color:#553b05}
.monteur-notice span{font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.monteur-notice strong{font-size:16px;white-space:pre-wrap}
.clickable-row{cursor:pointer}.clickable-row:hover{background:#f2f8f4}.customer-object-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.object-detail .report-preview-stats{margin-top:18px}
.table-name-button{display:grid;gap:2px;padding:0;text-align:left;color:inherit;background:transparent;border:0;cursor:pointer}.table-name-button:hover strong{text-decoration:underline}.table-name-button small{color:var(--muted)}.customer-detail .report-preview-stats{margin:18px 0}.customer-detail-section{display:grid;gap:9px;margin-top:18px}.compact-customer-link{width:100%;text-align:left}
.customer-search{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:12px;margin-bottom:14px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fff}.customer-search label{font-weight:800}.customer-search input{width:100%}.customer-search span{color:var(--muted);font-size:13px}@media(max-width:700px){.customer-search{grid-template-columns:1fr}.customer-search span{justify-self:start}}
.customer-intake-actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 20px}.customer-intake-actions .primary{flex:1;min-width:210px}
.compact-inspection-list{gap:7px}.inspection-overview-row.collapsible{padding:12px 16px;transition:padding .15s ease}.inspection-overview-row.collapsible.collapsed{padding:8px 14px}.inspection-overview-row.collapsible .inspection-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:5px 0;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.inspection-overview-row.collapsible .inspection-toggle strong{font-size:17px}.inspection-overview-row.collapsible .inspection-toggle span{font-size:12px;color:var(--accent);font-weight:750}.inspection-overview-row.collapsible.collapsed .card-head>div>span,.inspection-overview-row.collapsible.collapsed .card-head p,.inspection-overview-row.collapsible.collapsed .card-head>button,.inspection-overview-row.collapsible.collapsed>.report-preview-stats,.inspection-overview-row.collapsible.collapsed>.hint{display:none}.inspection-overview-row.collapsible.collapsed .card-head,.inspection-overview-row.collapsible.collapsed .card-head>div{display:block}.inspection-overview-row.collapsible.collapsed h3{margin:0}
.compact-quote-overview .quote-card{padding:10px 14px;margin-bottom:7px;display:block}.quote-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:4px 0;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.quote-toggle>span:first-child{display:grid;gap:2px}.quote-toggle strong{font-size:16px}.quote-toggle small{color:var(--muted)}.quote-toggle-meta{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.quote-toggle-meta b{white-space:nowrap}.quote-toggle-meta em{color:var(--accent);font-size:12px;font-style:normal;font-weight:750}.quote-card.collapsible.collapsed>div>div:not(.quote-toggle),.quote-card.collapsible.collapsed>div>h3,.quote-card.collapsible.collapsed>div>p,.quote-card.collapsible.collapsed>div>.row-actions,.quote-card.collapsible.collapsed>.money{display:none}.quote-card.collapsible:not(.collapsed) .quote-toggle{padding-bottom:11px;margin-bottom:11px;border-bottom:1px solid var(--line)}@media(max-width:700px){.quote-toggle,.quote-toggle-meta{align-items:flex-start}.quote-toggle{display:grid}.quote-toggle-meta{justify-content:flex-start}}
.compact-order-list{display:grid;gap:7px}.order-card{padding:11px 15px;border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:var(--shadow)}.order-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:3px 0;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.order-toggle>span:first-child{display:grid;gap:2px}.order-toggle strong{font-size:16px}.order-toggle small{color:var(--muted)}.order-toggle-meta{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.order-toggle-meta b{font-size:13px;white-space:nowrap}.order-toggle-meta em{color:var(--accent);font-size:12px;font-style:normal;font-weight:750}.order-card.collapsed .order-card-details{display:none}.order-card:not(.collapsed) .order-toggle{padding-bottom:11px;margin-bottom:13px;border-bottom:1px solid var(--line)}.order-card-details .detail-grid{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(260px,1.3fr);gap:12px;margin-bottom:16px}.order-card-details .detail-grid>div{display:grid;align-content:start;gap:7px;padding:12px 14px;border-radius:9px;background:#f5f8f6;border:1px solid #e0e8e2}.order-card-details .detail-grid span{display:block;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.02em}.order-card-details .detail-grid strong{display:block;line-height:1.45}.order-card-details>.row-actions{padding-top:12px;border-top:1px solid var(--line)}@media(max-width:700px){.order-toggle{display:grid}.order-toggle-meta{justify-content:flex-start}.order-card-details .detail-grid{grid-template-columns:1fr}}
.compact-invoice-list{display:grid;gap:7px}.invoice-card{padding:11px 15px;border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:var(--shadow)}.invoice-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:3px 0;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.invoice-toggle>span:first-child{display:grid;gap:2px}.invoice-toggle strong{font-size:16px}.invoice-toggle small{color:var(--muted)}.invoice-toggle-meta{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.invoice-toggle-meta b{white-space:nowrap}.invoice-toggle-meta em{color:var(--accent);font-size:12px;font-style:normal;font-weight:750}.invoice-card.collapsed .invoice-card-details{display:none}.invoice-card:not(.collapsed) .invoice-toggle{padding-bottom:11px;margin-bottom:13px;border-bottom:1px solid var(--line)}.invoice-card-details .detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}.invoice-card-details .detail-grid>div{display:grid;gap:7px;padding:12px 14px;border-radius:9px;background:#f5f8f6;border:1px solid #e0e8e2}.invoice-card-details .detail-grid span{color:var(--muted);font-size:12px;font-weight:800}.invoice-card-details>.row-actions{padding-top:12px;border-top:1px solid var(--line)}@media(max-width:700px){.invoice-toggle{display:grid}.invoice-toggle-meta{justify-content:flex-start}.invoice-card-details .detail-grid{grid-template-columns:1fr}}
.invoice-card-details>p{margin:0 0 12px}.invoice-card-details .invoice-finance-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:900px){.invoice-card-details .invoice-finance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.invoice-card-details .invoice-finance-grid{grid-template-columns:1fr}}
.settings-accordion{padding:12px 16px!important;margin-top:9px!important}.settings-accordion-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:3px 0;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.settings-accordion-toggle>span{display:grid;gap:3px}.settings-accordion-toggle strong{font-size:17px}.settings-accordion-toggle small{color:var(--muted);font-size:13px}.settings-accordion-toggle em{color:var(--accent);font-size:12px;font-style:normal;font-weight:800}.settings-accordion.collapsed .settings-accordion-content{display:none}.settings-accordion:not(.collapsed) .settings-accordion-toggle{padding-bottom:12px;margin-bottom:16px;border-bottom:1px solid var(--line)}.settings-accordion-content>.card-head:first-child{margin-top:0}.settings-accordion-content .form-grid{margin-top:0}@media(max-width:700px){.settings-accordion-toggle{align-items:flex-start}.settings-accordion-toggle small{font-size:12px}}
.followup-section{border-top:2px solid #dbe9df;padding-top:18px}.followup-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;margin:8px 0;border:1px solid var(--line);border-radius:12px;background:#f8fbf9}.followup-row>div{display:grid;gap:3px}.followup-row span,.followup-row small{color:var(--muted)}.followup-row.overdue{border-color:#d79b8c;background:#fff5f1}.followup-row.overdue span{color:#9b3c26;font-weight:700}.followup-history{margin-top:12px;color:var(--muted)}.followup-history summary{cursor:pointer;font-weight:700;color:var(--text)}.followup-history p{margin:8px 0}@media(max-width:600px){.followup-row{align-items:stretch;flex-direction:column}.followup-row button{width:100%}}
.dashboard-followups{margin-bottom:20px}.dashboard-followups .compact-empty{padding:14px}.dashboard-followups .task-count.work{background:#e5f4ea;color:var(--green)}.future-followups{margin-top:12px}.future-followups summary{padding:10px 2px;color:var(--green);font-weight:800;cursor:pointer}.future-followups .task-list{margin-top:8px}.task-item.work .task-symbol{background:#e5f4ea;color:var(--green)}
.recovery-intro{display:grid;gap:4px;margin-bottom:16px;padding:14px 16px;border-radius:12px;background:#edf8f1}.recovery-intro strong{font-size:18px;color:var(--green)}.recovery-check{display:flex;align-items:flex-start;gap:9px;padding:13px;border:1px solid #d5b975;border-radius:10px;background:#fff8e5;font-weight:700;line-height:1.4}.recovery-check input{margin-top:3px}.recovery-results{display:grid;gap:12px;margin-top:20px;padding-top:18px;border-top:2px solid var(--line)}.recovery-message{display:grid;gap:9px;padding:13px;border:1px solid var(--line);border-radius:12px;background:#f8fbf9}.recovery-message>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.recovery-message textarea{min-height:165px;background:#fff;line-height:1.5}.recovery-message.followup{border-color:#ddbd72;background:#fffaf0}@media(max-width:600px){.recovery-message>div{align-items:stretch;flex-direction:column}.recovery-message button{width:100%}}
.garden-template-picker{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,.8fr) auto;align-items:end;gap:12px;margin:14px 0;padding:14px 16px;border:1px solid #a9cfb7;border-radius:12px;background:#f1faf4}.garden-template-picker>div{display:grid;gap:4px}.garden-template-picker strong{color:var(--green)}.garden-template-picker span{color:var(--muted);font-size:13px}.template-applied{display:grid;gap:4px;margin:0 0 14px;padding:12px 14px;border-left:5px solid var(--green);border-radius:8px;background:#edf8f1}.template-applied small{color:var(--muted)}@media(max-width:800px){.garden-template-picker{grid-template-columns:1fr}.garden-template-picker button{width:100%}}
.template-components{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft)}.template-components label{display:flex;align-items:center;gap:7px}.template-components input{width:auto}
.test-clock-card{border:2px solid #d97706;background:#fffaf0}.test-clock-active{color:#b45309!important;font-weight:800}.test-clock-card .badge.orange{background:#ffedd5;color:#9a3412}
.calculation-empty-basis{display:grid;gap:8px;margin-bottom:16px;padding:17px 18px;border:1px solid #d5b975;border-radius:12px;background:#fff8e5}.calculation-empty-basis strong{font-size:17px;color:#69470d}.calculation-empty-basis span{color:#654f28;line-height:1.45}.calculation-empty-basis button{justify-self:start}.without-calculation-basis .calc-adds,.without-calculation-basis>#positions,.without-calculation-basis>.hint,.calc-layout:has(.without-calculation-basis) .offer-conditions,.calc-layout:has(.without-calculation-basis)>.totals{display:none}@media(max-width:600px){.calculation-empty-basis button{width:100%}}
.success-text{color:#287454;font-weight:700}
.today-role{display:inline-flex;align-items:center;width:max-content;margin-bottom:8px;padding:5px 10px;border-radius:999px;background:color-mix(in srgb,var(--brand-primary) 12%,white);color:var(--brand-primary);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.office-access-list{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.office-access-list h4{margin:0 0 10px}.office-access-list>div{display:grid;grid-template-columns:1fr minmax(180px,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}
