:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#122436;background:#f6fbff;font-size:15px}*{box-sizing:border-box}body{margin:0}a{color:#0879b6;text-decoration:none}a:hover{text-decoration:underline}header{background:#fff;border-bottom:1px solid #dce9f1}header .nav{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:78px;flex-wrap:wrap}.shell{width:min(1140px,calc(100% - 32px));margin:auto}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:800;color:#102c43;font-size:19px}.brand-icon,.print-brand{background:#28a8e0;color:white;border-radius:11px;padding:10px;font-weight:900;letter-spacing:.04em}.nav nav{display:flex;gap:16px;flex-wrap:wrap}.nav nav a{color:#17344b;font-weight:650;font-size:14px}main.shell{padding:42px 0 65px;min-height:calc(100vh - 150px)}footer.shell{color:#5e7788;border-top:1px solid #dce9f1;padding:22px 0 35px;font-size:13px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(29px,4vw,43px);line-height:1.1;letter-spacing:-.04em;margin-bottom:10px}h2{font-size:22px;letter-spacing:-.02em}h3{font-size:17px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:#158ac5;font-size:11px;font-weight:800;margin-bottom:9px}.heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px;flex-wrap:wrap}.lead,.muted{color:#62798b}.lead{max-width:650px;font-size:16px;margin:0 0 28px}.button{display:inline-block;background:#199ad4;color:#fff;border:1px solid #199ad4;border-radius:10px;padding:12px 18px;font-weight:750;font:inherit;font-weight:750;cursor:pointer;text-align:center}.button:hover{background:#0879b6;color:#fff;text-decoration:none}.button.secondary{background:#fff;color:#137bb0;border-color:#b7d8ea}.button.secondary:hover{background:#edf8fe}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:25px 0 35px}.stat,.card,.auth-card{background:#fff;border:1px solid #dbeaf2;border-radius:17px;box-shadow:0 8px 30px rgba(18,72,105,.04)}.stat{padding:22px;color:#506b7d}.stat strong{display:block;font-size:32px;color:#102c43;margin-top:5px}.card{padding:25px;margin-bottom:18px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}.row{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #e9f1f6;color:#17344b}.row:last-of-type{border-bottom:0}.row span{font-size:13px;color:#607c8d}.empty{border:1px dashed #b7d8ea;padding:27px;border-radius:11px;color:#6a8394}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:12px;color:#618093;text-transform:uppercase;letter-spacing:.07em}td,th{padding:14px 12px;border-bottom:1px solid #e6f0f5;vertical-align:top}td{font-size:14px}td small{color:#6c8392}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-grid h2{margin:12px 0 0;border-bottom:1px solid #e4eef4;padding-bottom:10px}.form-grid label{display:flex;flex-direction:column;gap:7px;color:#3c586c;font-size:13px;font-weight:700}.form-grid label span{display:block}.wide{grid-column:1/-1}.form-grid input:not([type=checkbox]),.form-grid select,.form-grid textarea{width:100%;min-height:43px;padding:10px 12px;border:1px solid #bcd2df;border-radius:9px;background:#fff;color:#17344b;font:inherit;outline-color:#21a3dd}.form-grid textarea{resize:vertical}.form-grid input[type=file]{font-size:12px}.form-grid label.check{flex-direction:row;align-items:flex-start;font-size:14px}.form-grid label.check input{margin-top:3px}.notice,.error{padding:13px 17px;border-radius:10px;margin-bottom:20px}.notice{background:#e8f9f1;border:1px solid #a5dfbf;color:#17613d}.error{background:#fff0ed;border:1px solid #e9a69a;color:#842b23}.auth-card{max-width:470px;margin:6vh auto;padding:35px}.auth-card p{color:#587489}.auth-card .form-grid{grid-template-columns:1fr}.auth-card .form-grid>*{grid-column:1}.pill{display:inline-block;background:#e2f5fd;color:#1476a4;border-radius:20px;padding:5px 10px;font-weight:700;font-size:13px}.pill.late{background:#fff0ed;color:#b43d36}.print-actions{display:flex;gap:10px;justify-content:center;margin:25px auto;flex-wrap:wrap}.print-sheet{background:#fff;color:#172b39;width:min(210mm,calc(100% - 30px));min-height:297mm;margin:20px auto;padding:18mm;box-shadow:0 12px 40px rgba(10,50,80,.13);font-size:12px;line-height:1.5}.print-sheet h1{font-size:28px;margin:14px 0}.print-sheet h2{font-size:16px;color:#087eb6;border-bottom:1px solid #c5e6f3;padding-bottom:5px;margin:25px 0 10px}.print-top{display:flex;justify-content:space-between;gap:20px}.print-top p{color:#4c6575}.print-site{text-align:right;max-width:45%}.doc-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:24px 0;padding:14px;background:#edf9fe}.doc-meta b{display:block;font-size:10px;text-transform:uppercase;color:#60849a}.doc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px 18px}.doc-grid p{margin:4px 0}.doc-section{break-inside:avoid}.preline{white-space:pre-line}.assessment{padding:12px;border-left:4px solid}.assessment.ok{background:#e7f6ec;border-color:#2ca466}.assessment.pending{background:#fff3e4;border-color:#d18a21}.photo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.photo-grid figure{margin:0;break-inside:avoid}.photo-grid img{width:100%;max-height:260px;object-fit:contain;border:1px solid #d9e8ef}.photo-grid figcaption{font-size:11px;color:#557083;text-align:center}.print-footer{border-top:1px solid #cde7f2;margin-top:40px;padding-top:12px;color:#587588;font-size:10px}.invoice-table{margin-top:35px}.invoice-table td:last-child,.invoice-table th:last-child{text-align:right}.totals{max-width:280px;margin:24px 0 30px auto}.totals p{display:flex;justify-content:space-between;gap:15px;margin:8px 0}.totals .grand{font-size:18px;border-top:2px solid #087eb6;padding-top:10px}@media(max-width:750px){.two-col,.stats{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid>*{grid-column:1}.nav{padding:16px 0}.nav nav{gap:12px}.print-sheet{width:100%;padding:20px;box-shadow:none}.doc-meta{grid-template-columns:repeat(2,1fr)}.print-top{display:block}.print-site{text-align:left;max-width:none}.photo-grid{grid-template-columns:1fr}}@media print{@page{size:A4;margin:0}body{background:white;-webkit-print-color-adjust:exact;print-color-adjust:exact}.print-actions{display:none}.print-sheet{width:210mm;margin:0;padding:17mm;box-shadow:none;min-height:0}.print-sheet p,.print-sheet tr,.print-sheet figure{break-inside:avoid}.doc-section{break-inside:avoid}}

/* DCL workflow dashboard */
:root{--blue:#178fc4;--ink:#102c43;--line:#dceaf2;--soft:#f4faff}
header{position:sticky;top:0;z-index:20;box-shadow:0 3px 18px rgba(13,62,89,.05)}
.shell{width:min(1280px,calc(100% - 40px))}
.nav{min-height:72px!important}
.nav nav{gap:4px!important;align-items:center}
.nav nav a{padding:10px 11px;border-radius:9px;white-space:nowrap}
.nav nav a:hover{background:#eaf7fd;color:#0b6f9d;text-decoration:none}
.heading-actions{display:flex;gap:10px;flex-wrap:wrap}
.section-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}
.section-head h2{margin:0}.section-head span{color:#6b8290;font-size:13px}
.stats{grid-template-columns:repeat(4,1fr);gap:13px}
.stat{min-height:125px;transition:transform .15s,box-shadow .15s}
.stat:hover,.renewal-stat:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(19,78,109,.1);text-decoration:none}
.stat strong{font-size:38px;letter-spacing:-.05em}
.quick-actions{display:flex;justify-content:space-between;align-items:center;gap:25px;background:linear-gradient(120deg,#eaf7fd,#fff)}
.quick-actions h2{margin-bottom:8px}.quick-actions p:last-child{color:#587489;margin:0}
.quick-actions>div:last-child{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.renewal-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:24px 0 28px}
.renewal-stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;display:block;color:#496777;transition:transform .15s,box-shadow .15s}
.renewal-stat strong{display:block;color:var(--ink);font-size:34px;line-height:1;margin-top:12px}
.renewal-stat.red{border-top:4px solid #e56b5f}.renewal-stat.amber{border-top:4px solid #e5af48}.renewal-stat.green{border-top:4px solid #59b58e}.renewal-stat.slate{border-top:4px solid #9ab2c1}
.pill.overdue{background:#fff0ed;color:#aa3d31}.pill.due-soon{background:#fff4dc;color:#95600d}.pill.upcoming{background:#e8f8ef;color:#247347}.pill.needs-date{background:#eff4f7;color:#576f7e}
.renewal-group{scroll-margin-top:90px}.renewal-group table td{vertical-align:middle}.renewal-group td:first-child{min-width:185px}.renewal-group td:last-child{white-space:nowrap}
.small-link{font-weight:700;font-size:13px}.renewal-group tr:hover{background:#f9fcfe}
@media(max-width:1050px){.nav{align-items:flex-start!important;padding:12px 0}.nav nav{width:100%;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:thin}.stats,.renewal-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.shell{width:calc(100% - 28px)}main.shell{padding-top:25px}.stats,.renewal-stats{grid-template-columns:repeat(2,1fr);gap:9px}.stat,.renewal-stat{padding:15px;min-height:90px}.stat strong,.renewal-stat strong{font-size:27px}.heading{align-items:flex-start}.heading-actions{width:100%}.heading-actions .button{flex:1}.quick-actions{align-items:flex-start;flex-direction:column}.quick-actions>div:last-child{justify-content:flex-start}.card{padding:17px}.renewal-group table{min-width:730px}}
@media print{header{position:static}.quick-actions,.renewal-stats{display:none}}

/* Print document identity and TR19 record details */
.document-logo{width:145px;max-height:95px;object-fit:contain;object-position:left center;display:block;margin-bottom:14px}
.next-clean-banner{display:flex;align-items:center;gap:15px;flex-wrap:wrap;border-left:5px solid #138bc5;background:#eaf8ff;padding:14px 18px;margin:18px 0 25px;break-inside:avoid}
.next-clean-banner span{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#417083;font-weight:700}.next-clean-banner strong{font-size:20px;color:#0d577a}.next-clean-banner small{flex-basis:100%;color:#4d6a7a}
.reference-box{padding:16px 19px;background:#f7fbfd;border:1px solid #d7eaf3;margin:18px 0 24px}.reference-box h2{margin-top:0}.reference-box p{margin:9px 0;line-height:1.55}.measurement-note{font-size:11px;color:#557487}.unrecorded p{color:#a15c25;font-style:italic}
.certificate-sheet{border-top:9px solid #1595cb}.certificate-top{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;border-bottom:1px solid #d2e7f1;padding-bottom:22px}.certificate-top .document-logo{width:175px;max-height:108px;margin:0}.certificate-top>div{text-align:right}.certificate-top h1{font-size:30px;margin:7px 0;color:#123e58}.certificate-top p{color:#4885a4;margin:0}.certificate-eyebrow,.certificate-number span,.certificate-site>span,.certificate-facts span,.certificate-signoff span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#5d8293;font-weight:700}
.certificate-number{text-align:center;padding:17px;background:#eaf8fd;margin:24px 0}.certificate-number strong{display:block;color:#116d99;font-size:19px;letter-spacing:.08em;margin-top:6px}.certificate-site{text-align:center;margin:24px 0}.certificate-site h2{font-size:26px;margin:6px 0;color:#102f43}.certificate-site p{line-height:1.55;margin:0}
.certificate-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:20px 0 26px}.certificate-facts>div{border:1px solid #d8ebf3;padding:12px 15px;break-inside:avoid}.certificate-facts strong,.certificate-signoff strong{display:block;color:#143e56;font-size:15px;margin-top:5px}
.certificate-declaration{border-top:2px solid #178fc4;padding-top:16px}.certificate-declaration h2{margin:0 0 10px}.certificate-declaration h3{font-size:13px;text-transform:uppercase;color:#217ca6;margin:18px 0 6px}.certificate-declaration p{line-height:1.55;margin:0}.certificate-signoff{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:27px 0 18px}.certificate-signoff>div{border-bottom:1px solid #b6d0dd;padding-bottom:12px}.certificate-note{font-size:11px;color:#536f7c;border-top:1px solid #e0ecf1;padding-top:12px}
@media(max-width:650px){.certificate-top{display:block}.certificate-top>div{text-align:left}.certificate-top .document-logo{margin-bottom:17px}}
@media print{.reference-box,.next-clean-banner,.certificate-number,.certificate-facts>div{print-color-adjust:exact;-webkit-print-color-adjust:exact}.certificate-sheet{padding-top:14mm}.certificate-top,.certificate-facts,.certificate-declaration,.certificate-signoff{break-inside:avoid}}
.readings-table{width:100%;border-collapse:collapse;margin:10px 0 16px}.readings-table th,.readings-table td{padding:8px 10px;border:1px solid #d8e7ef;text-align:left}.readings-table th{background:#edf8fd;color:#20627f;font-size:11px;text-transform:uppercase}.readings-table tr{break-inside:avoid}

/* Clear cleaning countdown dashboard */
.due-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:22px 0 22px}.due-tile{display:block;background:#fff;border:1px solid #dceaf2;border-radius:15px;padding:18px 20px;color:#526c7b;box-shadow:0 5px 22px rgba(18,74,105,.04)}.due-tile:hover{text-decoration:none;box-shadow:0 10px 28px rgba(18,74,105,.1)}.due-tile span,.due-tile small{display:block}.due-tile span{font-weight:750;font-size:13px}.due-tile strong{display:block;font-size:38px;line-height:1.15;letter-spacing:-.05em;color:#173b50;margin:10px 0 4px}.due-tile small{font-size:12px}.due-tile.danger{border-top:4px solid #d9534a}.due-tile.warning{border-top:4px solid #e6a83d}.due-tile.sky{border-top:4px solid #1a95ca}.due-tile.calm{border-top:4px solid #5bb590}
.due-panels{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.due-panel{margin:0;min-width:0}.due-row{display:grid;grid-template-columns:minmax(0,1fr) 93px max-content;gap:10px;align-items:center;padding:12px 0;border-top:1px solid #e9f1f5;color:#193d54}.due-row:hover{text-decoration:none;background:#f8fcfe}.due-site{min-width:0}.due-site strong,.due-site small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.due-site small{color:#668292;font-size:11px;margin-top:3px}.due-date{font-size:12px;color:#4b6879}.due-row .pill{font-size:11px;white-space:nowrap}.overview-title{margin:30px 0 13px}.recent-reports{margin:14px 0 18px}
@media(max-width:1050px){.due-panels{grid-template-columns:1fr}.due-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.due-summary{gap:9px}.due-tile{padding:13px}.due-tile strong{font-size:30px}.due-row{grid-template-columns:minmax(0,1fr) max-content}.due-date{grid-column:1;grid-row:2}.due-row .pill{grid-column:2;grid-row:1 / span 2}.due-site strong{white-space:normal}}

/* Screenshot-inspired renewal tracking table */
.tracking-card{margin-bottom:25px}.tracking-card .eyebrow{margin:0 0 4px}.tracking-table{width:100%;border-collapse:collapse;min-width:620px}.tracking-table th{text-align:left;color:#233f4d;font-size:12px;padding:13px 15px;background:#f1f7fa}.tracking-table td{padding:13px 15px;border-bottom:1px solid #e5edf1;vertical-align:middle;font-size:13px}.tracking-table tbody tr:hover{background:#f8fcfe}.tracking-table td:first-child{min-width:180px}.tracking-table small{color:#698393;font-size:11px}.tracking-table td a{color:#163b51}.status-badge{display:inline-block;text-align:center;min-width:86px;border-radius:6px;padding:7px 10px;color:white;font-size:11px;font-weight:750;box-shadow:0 2px 5px rgba(0,0,0,.13)}.status-badge.overdue{background:#d92d2a}.status-badge.due-soon{background:#eea00e}.status-badge.upcoming{background:#29b55a}.countdown.overdue{color:#bf322d}.countdown.due-soon{color:#a36b00}.countdown.upcoming{color:#24784a}.tracking-note{font-size:12px;color:#627d8b;margin:14px 0 0}
@media(max-width:650px){.tracking-card{padding:0!important}.tracking-card .section-head,.tracking-note{padding:16px 17px;margin:0}.tracking-card .section-head{align-items:flex-start}.tracking-table{min-width:690px}}

/* Phone-first staff desk */
.mobile-menu,.mobile-bottom-nav,.mobile-tracking{display:none}
@media screen and (max-width:760px){
 :root{font-size:14px}body{background:#f5f8fb;color:#173347}
 .shell{width:calc(100% - 28px);max-width:600px}
 header{position:sticky;top:0;background:#fff;box-shadow:0 2px 14px rgba(16,50,69,.08)}
 header .nav,.nav{height:62px;min-height:62px!important;padding:0!important;align-items:center!important;flex-wrap:nowrap;gap:10px}
 .brand{font-size:17px;white-space:nowrap;letter-spacing:-.025em}.brand-icon{font-size:12px;border-radius:9px;padding:8px}
 .desktop-nav{display:none!important}.mobile-menu{display:block;margin-left:auto;position:relative;z-index:40}
 .mobile-menu summary{list-style:none;cursor:pointer;border:1px solid #c7dce7;border-radius:10px;padding:10px 14px;font-weight:750;color:#19455e;background:#fff;min-height:42px;display:flex;align-items:center}.mobile-menu summary::-webkit-details-marker{display:none}
 .mobile-menu nav{position:absolute;right:0;top:49px;width:200px;background:#fff;border:1px solid #d6e5ed;box-shadow:0 15px 35px rgba(10,50,80,.18);border-radius:13px;padding:7px!important;display:flex!important;flex-direction:column;gap:2px!important;max-height:70vh;overflow:auto}
 .mobile-menu nav a{display:block;width:100%;padding:12px!important;color:#173d54!important;font-size:14px!important}
 .mobile-bottom-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fff;border-top:1px solid #d9e7ee;padding:5px max(8px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));box-shadow:0 -7px 25px rgba(13,57,78,.08)}
 .mobile-bottom-nav a{text-align:center;display:flex;align-items:center;justify-content:center;min-height:48px;color:#607b8a;font-size:11px;font-weight:800;border-radius:9px;letter-spacing:.01em}
 .mobile-bottom-nav a[aria-current=page]{background:#e7f6fd;color:#0874aa}
 main.shell{padding:22px 0 110px;min-height:calc(100vh - 130px)}footer.shell{padding:18px 0 94px;text-align:center;font-size:11px}
 h1{font-size:27px;line-height:1.12;letter-spacing:-.04em}h2{font-size:19px}.heading{display:block;margin-bottom:12px}.heading .eyebrow{margin-bottom:7px}.heading-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;margin-top:15px;gap:8px}.heading-actions .button{padding:11px 8px;min-height:44px;font-size:12px;display:flex;align-items:center;justify-content:center}
 .lead{font-size:13px;line-height:1.55;margin-bottom:18px;color:#617c8a}.card{border-radius:14px;padding:17px;margin-bottom:14px;box-shadow:0 3px 16px rgba(16,65,90,.04)}.section-head h2{font-size:18px}.section-head>a{font-size:12px;white-space:nowrap}
 .due-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:15px 0}.due-tile{border-radius:13px;padding:12px 13px;min-height:107px;box-shadow:0 2px 10px rgba(16,65,90,.04)}.due-tile span{font-size:12px}.due-tile strong{font-size:32px;margin:7px 0 1px}.due-tile small{font-size:10px;line-height:1.2}
 .tracking-card{padding:0!important;overflow:hidden}.tracking-card .section-head{padding:17px 16px 14px;margin:0;align-items:flex-start;border-bottom:1px solid #ebf1f4}.tracking-card .section-head h2{font-size:20px}.tracking-card .section-head>a{max-width:86px;white-space:normal;text-align:right;line-height:1.3}.desktop-tracking{display:none}.mobile-tracking{display:block;padding:0 12px 4px}.mobile-group-title{font-size:12px;letter-spacing:.04em;text-transform:uppercase;display:flex;justify-content:space-between;align-items:center;margin:19px 5px 9px;color:#5c7584}.mobile-group-title span{border-radius:20px;padding:3px 8px;background:#ebf1f4}.overdue-title{color:#b84339}.overdue-title span{background:#fff0ed}.upcoming-title{color:#17769f}.upcoming-title span{background:#e8f6fc}
 .mobile-due-card{display:block;background:#fff;border:1px solid #dde9ee;border-left:4px solid #46af78;border-radius:11px;padding:12px 13px;margin-bottom:9px;color:#17374c;box-shadow:0 2px 8px rgba(16,65,90,.035)}.mobile-due-card.overdue{border-left-color:#db5146}.mobile-due-card.due-soon{border-left-color:#eba72e}.mobile-due-card:hover{text-decoration:none;background:#fafdff}
 .mobile-due-top,.mobile-due-middle,.mobile-due-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px}.mobile-due-top>strong{font-size:14px;line-height:1.25;min-width:0}.mobile-due-top .status-badge{flex:none;min-width:68px;font-size:10px;padding:5px 7px;box-shadow:none}.mobile-due-middle{padding:11px 0 9px}.mobile-due-middle>strong{font-size:18px;letter-spacing:-.02em}.mobile-due-card.overdue .mobile-due-middle>strong{color:#c83b32}.mobile-due-card.due-soon .mobile-due-middle>strong{color:#9c690a}.mobile-due-middle>span{font-size:11px;color:#526d7e;text-align:right}.mobile-due-bottom{padding-top:8px;border-top:1px solid #edf2f5;font-size:10px;color:#72909e}.mobile-due-bottom span{font-weight:800;color:#147eaf}.tracking-note{padding:8px 16px 16px!important;line-height:1.45}
 .overview-title{font-size:17px;margin:23px 0 10px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0 0 18px}.stat{padding:14px;min-height:86px;border-radius:12px;font-size:12px}.stat strong{font-size:26px;margin-top:6px}.recent-reports .row{align-items:center}.recent-reports .row strong{font-size:12px}.recent-reports .row span{white-space:nowrap;font-size:11px}.quick-actions{gap:13px}.quick-actions h2{font-size:18px}.quick-actions p{font-size:12px;line-height:1.5}.quick-actions>div:last-child{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:8px}.quick-actions>div:last-child .button{font-size:12px;padding:10px 6px;min-height:44px}
 .form-grid{grid-template-columns:1fr;gap:15px}.form-grid>*{grid-column:1}.form-grid input:not([type=checkbox]),.form-grid select,.form-grid textarea{font-size:16px;min-height:48px}.button{min-height:44px}.two-col{grid-template-columns:1fr;gap:12px}.auth-card{margin:25px 0;padding:23px}
 .renewal-stats{grid-template-columns:repeat(2,1fr);gap:9px;margin:15px 0}.renewal-stat{min-height:84px;padding:13px;border-radius:12px}.renewal-stat strong{font-size:27px;margin-top:8px}.renewal-group{padding:0!important;overflow:hidden}.renewal-group .section-head{padding:17px 16px;margin:0;border-bottom:1px solid #e7eef2}.renewal-group .table-scroll{padding:0 10px 10px}
 .table-scroll{overflow-x:auto}.mobile-list,.mobile-list tbody,.mobile-list tr{display:block;width:100%;min-width:0!important}.mobile-list thead{display:none}.mobile-list tr{border:1px solid #dfebf0;border-radius:11px;background:#fff;margin:10px 0;padding:10px 12px;box-shadow:0 2px 8px rgba(15,65,90,.035)}.mobile-list td{display:block;position:relative;padding:6px 0 6px 87px;border:0;font-size:12px;min-height:27px;overflow-wrap:anywhere}.mobile-list td:first-child{font-size:14px;padding:3px 0 10px;border-bottom:1px solid #eaf0f3;margin-bottom:7px}.mobile-list td:first-child:before{display:none}.mobile-list td:before{position:absolute;left:0;top:7px;width:78px;font-size:10px;color:#708b99;font-weight:750;text-transform:uppercase;letter-spacing:.03em}.mobile-list td:last-child{padding-bottom:3px}.mobile-list td br{display:none}.mobile-list td small{display:block;margin-top:3px}.mobile-list .pill{font-size:11px}.mobile-list .small-link{display:inline-block;padding:5px 0;margin-right:10px}
 .renewal-list td:nth-child(2):before,.clients-list td:nth-child(4):before,.schedule-list td:nth-child(2):before,.reports-list td:nth-child(3):before{content:"Next clean"}.renewal-list td:nth-child(3):before,.clients-list td:nth-child(5):before,.schedule-list td:nth-child(3):before{content:"Days left"}.renewal-list td:nth-child(4):before,.clients-list td:nth-child(6):before{content:"Follow-up"}.renewal-list td:nth-child(5):before,.schedule-list td:nth-child(5):before{content:"Contact"}.renewal-list td:nth-child(6):before{content:"Actions"}.clients-list td:nth-child(2):before{content:"Address"}.clients-list td:nth-child(3):before{content:"Phone"}.quotes-list td:nth-child(2):before{content:"Site"}.quotes-list td:nth-child(3):before,.invoices-list td:nth-child(4):before{content:"Amount"}.quotes-list td:nth-child(4):before{content:"Valid until"}.quotes-list td:nth-child(5):before,.invoices-list td:nth-child(5):before{content:"Status"}.reports-list td:nth-child(2):before{content:"Service"}.reports-list td:nth-child(4):before{content:"Report"}.invoices-list td:nth-child(2):before{content:"Site"}.invoices-list td:nth-child(3):before{content:"Date"}.schedule-list td:nth-child(4):before{content:"Last clean"}
 .print-actions{padding:0 12px}.print-actions .button{font-size:12px;padding:10px 12px}.print-sheet{width:100%;margin:0;padding:18px;box-shadow:none;min-height:0}.doc-meta{grid-template-columns:repeat(2,1fr)}.print-top{display:block}.print-site{text-align:left;max-width:none}.photo-grid{grid-template-columns:1fr}
}
@media print{.mobile-bottom-nav,.mobile-menu,.mobile-tracking{display:none!important}.desktop-tracking{display:block!important}}
@media screen and (max-width:760px){.mobile-view-all{display:block;text-align:center;margin:13px 2px 10px;border:1px solid #a9d5e9;background:#edf9ff;color:#126f9b;border-radius:10px;padding:12px;font-weight:800;font-size:12px;min-height:44px}.mobile-view-all:hover{text-decoration:none;background:#e0f3fc}}

/* Measurement editor and touch schematic */
.micron-editor{border:1px solid #d4e6ef;border-radius:14px;padding:18px;background:#f8fcfe}.micron-editor h3{margin:0 0 5px}.micron-editor>p{font-size:12px;margin-bottom:14px}.micron-rows{display:grid;gap:9px}.micron-row{display:grid;grid-template-columns:minmax(150px,1.5fr) minmax(100px,1fr) minmax(100px,1fr) 32px;align-items:end;gap:9px;padding:10px;background:white;border:1px solid #e0ebf1;border-radius:10px}.micron-row label{min-width:0}.micron-row label span{font-size:11px}.micron-row input,.micron-row select{min-width:0}.remove-micron{height:43px;width:32px;background:#fff;border:1px solid #e4c1bd;border-radius:8px;color:#aa483f;font-size:22px;cursor:pointer}.add-micron{margin-top:12px}.legacy-measurements{display:block;margin-top:15px}
.schematic-editor{border:1px solid #d4e6ef;border-radius:14px;padding:14px;background:#f8fcfe}.schematic-editor canvas{display:block;width:100%;height:auto;border:1px solid #bfd8e5;background:#fff;touch-action:none;border-radius:8px;margin:12px 0}.schematic-toolbar,.schematic-colours{display:flex;flex-wrap:wrap;gap:6px}.schematic-toolbar button{border:1px solid #bad7e5;background:#fff;color:#28526b;border-radius:8px;padding:8px 10px;min-height:40px;font-weight:700;cursor:pointer}.schematic-toolbar button.active{background:#127fb2;color:#fff;border-color:#127fb2}.schematic-colours{margin-top:11px}.schematic-colours button{width:35px;height:35px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #a4bdca;cursor:pointer}.schematic-colours button.active{box-shadow:0 0 0 3px #63b5dc}.schematic-colours [data-colour="#1387bd"]{background:#1387bd}.schematic-colours [data-colour="#3a9e58"]{background:#3a9e58}.schematic-colours [data-colour="#ce453a"]{background:#ce453a}.schematic-colours [data-colour="#222f3a"]{background:#222f3a}
.schematic-legend{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:13px 0;padding:11px;background:#f5fafc;border:1px solid #dceaf0;border-radius:8px}.schematic-legend span{display:flex;align-items:center;gap:6px;font-size:10px;color:#385568}.schematic-legend i{display:inline-block;flex:none;width:12px;height:12px;border:2px solid #3f6f85;border-radius:2px}.schematic-legend .key-dot{border-radius:50%;background:#17a5d8;border:0;width:10px;height:10px}.key-green{background:#50bd6a}.key-red{background:#e8584e}.schematic-legend .key-line{height:3px;background:#44b869;border:0}.schematic-legend .key-brown{height:3px;background:#9d5446;border:0}.schematic-legend .key-fan{transform:rotate(45deg);background:#263440}.key-blue{background:#3c9ccd}.key-grey{background:#aeb9bd}
.report-sheet .document-logo{width:92px;max-height:62px;margin-bottom:5px}.report-sheet .print-top h1{font-size:22px}.report-sheet .print-top p{font-size:10px}.report-sheet h2{font-size:16px;margin:23px 0 10px}.report-sheet h3{font-size:12px;color:#315c72;margin:8px 0 4px}.report-sheet p{line-height:1.5}.report-intro{background:#f6fbfd;padding:8px 15px;border-left:3px solid #4ca9d3}.report-facts,.frequency-table{width:100%;border-collapse:collapse}.report-facts th,.report-facts td,.frequency-table th,.frequency-table td{border:1px solid #d8e8ef;padding:7px 10px;text-align:left;font-size:11px}.report-facts th{width:40%;background:#f1f8fb;color:#315c72}.frequency-table thead th{background:#eaf6fc;color:#315c72}.report-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.report-detail-grid>div{border:1px solid #dceaf0;border-radius:8px;padding:10px;break-inside:avoid}.report-detail-grid>div:first-child{grid-row:span 2}.report-detail-grid p{margin:0}.schematic-image{display:block;max-width:100%;max-height:430px;object-fit:contain;margin:10px auto;border:1px solid #d5e5ed}.schematic-empty{height:160px;border:1px dashed #abc9d8;display:flex;align-items:center;justify-content:center;color:#688696;background:#fafcfd}.schematic-report{break-inside:avoid}.report-sheet .photo-grid{margin-top:10px}
@media screen and (max-width:760px){.micron-editor{padding:13px}.micron-row{grid-template-columns:1fr 1fr 32px;gap:8px}.micron-row label:first-child{grid-column:1 / -1}.micron-row label:nth-child(2){grid-column:1}.micron-row label:nth-child(3){grid-column:2}.micron-row .remove-micron{grid-column:3;grid-row:2;height:48px}.micron-row label span{font-size:11px}.schematic-editor{padding:10px}.schematic-toolbar button{font-size:11px;padding:7px 8px}.schematic-legend{grid-template-columns:1fr 1fr}.report-detail-grid{grid-template-columns:1fr}.report-detail-grid>div:first-child{grid-row:auto}.report-sheet .print-top h1{font-size:20px}}
@media print{.report-sheet .document-logo{width:23mm;max-height:16mm}.report-sheet .print-top{break-inside:avoid}.report-facts tr,.frequency-table tr{break-inside:avoid}.schematic-legend{print-color-adjust:exact;-webkit-print-color-adjust:exact}}
.photo-upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.photo-upload-grid>label{grid-column:span 1}.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;border:1px solid #d9e9f0;border-radius:12px;padding:14px;margin:0}.photo-pair legend{padding:0 7px;font-size:14px;color:#155d82;font-weight:800}.photo-pair label{min-width:0}.photo-upload-grid input[type=file]{padding:8px;background:#f9fcfe;font-size:12px;overflow:hidden}
@media screen and (max-width:760px){.photo-upload-grid{grid-template-columns:1fr}.photo-upload-grid>label{grid-column:1}.photo-pair{grid-template-columns:1fr;gap:11px;padding:12px}.photo-pair label{font-size:12px}}

/* Mobile schematic editor and permanent report key */
.schematic-editor{min-width:0;overflow:hidden}.schematic-editor .muted{font-size:12px;margin:4px 0 10px}.schematic-viewport{width:100%;max-width:100%;overflow:auto;overscroll-behavior-x:contain;border-radius:9px}.schematic-editor canvas{max-width:100%;margin:9px auto}.schematic-editor.zoomed canvas{width:900px;max-width:none}.schematic-hint{font-size:12px;color:#4b7083;margin:12px 0 8px}.schematic-symbols{display:grid;grid-template-columns:repeat(auto-fill,minmax(115px,1fr));gap:6px;max-height:185px;overflow:auto;padding:4px;border:1px solid #d5e6ee;border-radius:10px;background:white}.schematic-symbols button{display:flex;align-items:center;gap:7px;min-width:0;min-height:40px;text-align:left;font-size:11px;font-weight:700;color:#31566b;border:1px solid #d9e9f0;border-radius:8px;background:#fff;padding:6px;cursor:pointer}.schematic-symbols button.active{background:#ddf2fc;border-color:#1193ce;color:#075881}.schematic-symbols button span{overflow:hidden;text-overflow:ellipsis}.schematic-legend{grid-template-columns:repeat(4,minmax(0,1fr));justify-items:start;align-items:center;max-width:100%;break-inside:avoid}.schematic-legend span{min-width:0;font-size:9px;line-height:1.25}.schematic-legend .legend-icon,.schematic-symbols .legend-icon{display:inline-block;position:relative;flex:none;width:15px;height:15px;border:2px solid #233643;border-radius:1px;background:#fff}.legend-icon.key-access-installed{background:#24c64c}.legend-icon.key-access-required{background:#c71916}.legend-icon.key-bh-required{background:#e3a02b}.legend-icon.key-bh-fitted{background:#087b39}.legend-icon.key-blocked{background:#e3a02b;border-radius:50%}.legend-icon.key-enlarge{background:#1e26b9;border-radius:50%}.legend-icon.key-fan{transform:none;background:#fff;clip-path:polygon(0 0,50% 50%,0 100%,100% 100%,50% 50%,100% 0)}.legend-icon.key-roof,.legend-icon.key-cleaned,.legend-icon.key-not-cleaned,.legend-icon.key-no-access{height:0;border:0;border-top:3px dashed #263e48}.legend-icon.key-cleaned{border-top:3px solid #25bf4c}.legend-icon.key-not-cleaned{border-top:3px solid #94181a}.legend-icon.key-no-access{border-top:3px dotted #94181a}.legend-icon.key-vane{border:0;border-top:3px double #253b47;border-radius:50%}.legend-icon.key-damper{background:repeating-linear-gradient(45deg,#fff,#fff 2px,#253b47 3px,#253b47 4px)}.legend-icon.key-trion:after{content:'T';position:absolute;left:3px;top:-3px;font-weight:900}.legend-icon.key-uvc{background:#02c0d9}.legend-icon.key-sandpit{background:#ee8b33}.legend-icon.key-carbon{background:#ebdc22}.legend-icon.key-silencer{background:#203ed1}.legend-icon.key-grille{background:#91999d}.schematic-key-title{text-align:center;margin:10px 0 3px!important}.schematic-report .schematic-legend{margin:6px auto 0;max-width:570px}.schematic-report .measurement-note{text-align:center}.schematic-image{width:100%;height:auto;max-height:320px;object-fit:contain}.report-sheet .schematic-report{break-inside:auto}.report-client{border:1px solid #dceaf0;padding:10px 14px;margin:12px 0}.report-client h2{margin-top:0}.report-client p{margin:0}
@media screen and (max-width:760px){.schematic-editor{padding:10px}.schematic-toolbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.schematic-toolbar button{font-size:11px;min-width:0;padding:7px 3px;min-height:44px}.schematic-symbols{grid-template-columns:repeat(2,minmax(0,1fr));max-height:220px}.schematic-symbols button{min-height:44px}.schematic-legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:10px}.schematic-report .schematic-legend{grid-template-columns:repeat(2,minmax(0,1fr))}.schematic-editor.zoomed .schematic-viewport{border:2px solid #42a9d4}.schematic-editor.zoomed canvas{margin:0}}
@media print{.schematic-image{max-height:85mm}.schematic-report .schematic-legend{grid-template-columns:repeat(4,minmax(0,1fr));max-width:165mm}.schematic-legend span{font-size:8px}.report-client{break-inside:avoid}}

/* Simple DCL certificate based on the supplied example */
.simple-certificate{border:3px solid #158fc7;min-height:270mm}.simple-certificate .certificate-heading{position:static;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:none;border:0;background:none;padding:0 0 14px}.certificate-heading span{font-size:18px;font-weight:850;text-transform:uppercase;color:#123c56}.certificate-heading h1{font-size:27px;color:#102d42;text-transform:uppercase;line-height:1.12;margin:17px 0 9px}.certificate-heading img{width:72px;height:72px;object-fit:contain}.certificate-statement{text-align:center;font-size:14px;line-height:1.6;font-weight:650;max-width:580px;margin:12px auto 25px}.simple-certificate .certificate-site{border:2px solid #138bc5;padding:18px 15px;margin:20px auto;max-width:570px}.simple-certificate .certificate-site h2{border:0;margin:0 0 6px;padding:0;font-size:21px}.certificate-plain-facts{text-align:center;font-size:13px;margin:17px 0 22px}.certificate-plain-facts p{margin:4px 0}.certificate-compliance{border:2px solid #138bc5;padding:13px 17px;margin:20px 0}.certificate-compliance h2{margin:0 0 8px;border:0;padding:0;font-size:15px}.certificate-compliance p{margin:5px 0}.certificate-signature{border:2px solid #138bc5;padding:13px;text-align:center}.certificate-signature span,.certificate-signature strong{display:block}.certificate-signature strong{font-size:15px;margin-top:9px;color:#173f55}.simple-certificate .certificate-note{text-align:center;margin:14px 0 0}.simple-certificate .print-footer{text-align:center;margin-top:20px}
@media screen and (max-width:650px){.simple-certificate{min-height:0}.certificate-heading h1{font-size:22px}.certificate-heading span{font-size:15px}.certificate-statement{font-size:12px}}
@media print{.simple-certificate{min-height:270mm;padding:13mm}.simple-certificate .certificate-heading,.certificate-site,.certificate-compliance,.certificate-signature{break-inside:avoid}}

/* A4 report layout: one dedicated schematic sheet and the supplied image key */
.report-sheet .document-logo{width:54px;max-height:37px;height:auto;object-fit:contain;margin:0 0 7px}.report-sheet .print-top h1{margin:0 0 10px;font-size:21px}.report-sheet .doc-meta{margin-top:12px}.schematic-report{width:100%;min-width:0;max-width:100%;overflow:hidden}.schematic-report .schematic-image{display:block;width:100%;max-width:100%;height:145mm;max-height:145mm;object-fit:contain;margin:8mm auto 3mm;border:0}.schematic-report .schematic-empty{height:145mm;max-height:145mm;margin:8mm 0 3mm}.schematic-report>.measurement-note{text-align:center;flex:none}.schematic-key{width:100%;margin:8px auto 0;text-align:center;break-inside:avoid}.schematic-key img{display:block;width:100%;max-width:650px;height:auto;object-fit:contain;margin:auto}.schematic-key figcaption{font-size:10px;color:#4e6d80;margin-top:4px}.schematic-editor .schematic-key{max-width:650px}.schematic-report .schematic-key{margin-top:auto;max-width:100%}
@media screen{.report-sheet .schematic-report{min-height:245mm;display:flex;flex-direction:column;border:1px solid #e0eaf0;padding:11mm 6mm;margin:25px auto}.schematic-report .schematic-key{width:100%}}
@media screen and (max-width:760px){.report-sheet .schematic-report{min-height:0;padding:14px 8px}.schematic-report .schematic-image,.schematic-report .schematic-empty{height:auto;max-height:55vh;min-height:140px}.schematic-key img{max-width:100%}}
@media print{.report-sheet .document-logo{width:14mm;max-height:10mm}.report-sheet .schematic-report{display:flex;flex-direction:column;box-sizing:border-box;break-before:page;break-after:page;page-break-before:always;page-break-after:always;width:176mm;min-height:263mm;height:263mm;max-height:263mm;margin:0;padding:0;overflow:hidden}.schematic-report h2{margin:0 0 3mm!important}.schematic-report .schematic-image,.schematic-report .schematic-empty{width:100%;height:156mm;max-height:156mm;margin:3mm auto 2mm}.schematic-report .schematic-key{max-width:176mm;margin-top:auto;padding-bottom:2mm}.schematic-report .schematic-key img{width:100%;max-width:172mm;max-height:47mm}.schematic-report .schematic-key figcaption{display:none}.schematic-report .measurement-note{margin:0;font-size:9px}.report-sheet .schematic-report{break-inside:avoid}}

.simple-certificate{border:3px solid #188ec5;padding:15mm;box-sizing:border-box}.simple-certificate .certificate-heading{border:0;padding:0;gap:0}.certificate-heading span{border:1px solid #168dc1;border-radius:100%;padding:5px 24px;font-size:15px;line-height:1.3}.certificate-heading p{font-size:15px;font-weight:700;font-style:italic;color:#204d65;margin:11px 0 7px}.certificate-heading img{width:58px;height:45px;object-fit:contain}.certificate-heading h1{margin:4px 0 0;font-size:31px;letter-spacing:.08em;text-transform:uppercase}.certificate-heading small{display:block;font-size:13px;color:#4c6f82;font-weight:700;letter-spacing:.04em}.simple-certificate .certificate-statement{font-size:12px;line-height:1.45;margin:18px auto 17px;max-width:560px}.simple-certificate .certificate-site{padding:13px;margin:12px auto;max-width:100%}.simple-certificate .certificate-site h2{font-size:20px}.simple-certificate .certificate-plain-facts{margin:11px 0;font-size:12px}.certificate-plain-facts p{display:flex;justify-content:center;gap:8px;margin:5px 0}.certificate-plain-facts b{color:#0b6491}.simple-certificate .certificate-compliance{padding:10px 14px;margin:14px 0}.certificate-compliance h2{font-size:14px}.certificate-compliance p{font-size:11px;line-height:1.4}.simple-certificate .certificate-signature{padding:10px}.simple-certificate .certificate-note{font-size:9px;margin:9px 0 0}.simple-certificate .print-footer{font-size:9px;margin-top:14px}
@media print{.simple-certificate{height:270mm;max-height:270mm;min-height:270mm;padding:11mm 13mm;break-inside:avoid}.simple-certificate .certificate-heading h1{font-size:27px}.simple-certificate .certificate-statement{font-size:11px;margin:11px auto}.simple-certificate .certificate-site{margin:10px auto;padding:10px}.simple-certificate .certificate-compliance{margin:10px 0;padding:9px 12px}.simple-certificate .certificate-signature{padding:9px}}

.report-sheet .report-detail-grid>div:first-child{grid-column:1/-1;grid-row:auto}.report-sheet .report-detail-grid>div{min-width:0;overflow-wrap:anywhere}.report-sheet .report-detail-grid p{line-height:1.48}

.schematic-stage{position:relative;width:100%;line-height:0}.schematic-stage canvas{margin:0!important;vertical-align:top}.schematic-selection{position:absolute;border:2px dashed #087ab3;background:rgba(29,162,221,.08);pointer-events:none;z-index:1}.schematic-selection[hidden]{display:none}.schematic-editor [data-tool="move"].active{background:#116f9c;color:#fff}.schematic-editor.zoomed .schematic-stage{width:900px}.schematic-editor.zoomed .schematic-stage canvas{width:900px;max-width:none}.schematic-editor:not(.zoomed) .schematic-stage canvas{width:100%;height:auto}

/* Confirmed booking cards and mobile field saves */
.next-bookings{margin:16px 0 20px}.booking-preview{display:flex;gap:16px;justify-content:space-between;border-top:1px solid #e0ebf1;padding:12px 0;color:#183d54}.booking-preview:hover{text-decoration:none;color:#087eae}.booking-preview span{min-width:0;overflow-wrap:anywhere}.booking-list{display:grid;gap:10px}.booking-item{display:grid;grid-template-columns:minmax(120px,180px) 1fr auto;gap:15px;align-items:center;margin:0;color:#17394e;text-decoration:none}.booking-item:hover{text-decoration:none;border-color:#68bce0}.booking-item strong,.booking-item small{display:block}.booking-item small{color:#5c7b8b}.booking-item>div:first-child strong{font-size:19px}.booking-detail{max-width:700px}.booking-detail>strong{font-size:22px}.booking-detail .pill{margin-left:10px}.job-save-actions{display:flex;gap:12px;position:sticky;bottom:0;background:#f8fcfe;padding:12px;border:1px solid #d3e8f2;border-radius:12px;z-index:5}.job-save-actions button{flex:1;min-height:48px}
@media(max-width:760px){.booking-preview{display:block}.booking-preview strong,.booking-preview span{display:block}.booking-item{grid-template-columns:1fr auto;gap:7px;padding:15px}.booking-item>div:first-child{grid-column:1/-1}.job-save-actions{margin:0 -10px;bottom:66px;padding:9px}.job-save-actions button{font-size:12px;padding:10px 7px;min-width:0}}
@media print{.job-save-actions,.next-bookings{display:none}}
/* Accounting and labour workspace */
.finance-filter{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:16px 0}.finance-filter label{flex:1;min-width:150px}.finance-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:12px;margin:18px 0}.finance-stats .card{margin:0;padding:20px}.finance-stats strong{display:block;font-size:26px;color:#106994;margin-top:9px}.finance-stats small{font-weight:700;color:#456579}.labour-profiles{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.labour-profiles>.card{min-width:0}.money-overview{display:flex;justify-content:space-between;gap:14px;font-size:25px;color:#127eb0}.ledger-item{border-top:1px solid #dceaf2;padding:15px 0;overflow-wrap:anywhere}.ledger-item .button{padding:8px 12px;font-size:12px}.labour-table td{vertical-align:top;min-width:100px}.labour-table .form-grid{display:block}.labour-table td:first-child{min-width:140px}details>summary{cursor:pointer;padding:12px 0;font-weight:750}fieldset.wide{border:1px solid #d8e8f1;border-radius:12px;padding:16px}.nav nav{flex-wrap:wrap}
@media(max-width:760px){.labour-profiles{grid-template-columns:1fr;gap:8px}.finance-stats{grid-template-columns:1fr 1fr;gap:8px}.finance-stats .card{padding:14px}.finance-stats strong{font-size:21px}.finance-filter .button{width:100%}.labour-table td:nth-child(2):before{content:'Start / finish'}.labour-table td:nth-child(3):before{content:'Unpaid break'}.labour-table td:nth-child(4):before{content:'Hours'}.labour-table td:nth-child(5):before{content:'Rate'}.labour-table td:nth-child(6):before{content:'Gross wage'}.labour-table td:nth-child(7):before{content:'Payment'}.labour-table td{min-width:0;overflow-wrap:anywhere}.labour-table .form-grid{max-width:100%}}
@media print{.labour-table{width:100%;table-layout:fixed}.labour-table th,.labour-table td,.labour-table td:first-child{min-width:0;padding:6px 4px;font-size:9px;overflow-wrap:anywhere}.print-sheet .table-scroll{overflow:visible}.labour-table tr{break-inside:avoid}}
