:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#17201c;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#edf2ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(#fff 0 280px,#edf2ef 280px,#e6ede8 100%);min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer;border:0}button:disabled{cursor:not-allowed;opacity:.55}input,select{color:#17201c;background:#fff;border:1px solid #cbd8d0;border-radius:8px;outline:none;width:100%;min-height:42px;padding:9px 11px}input:focus,select:focus{border-color:#207f5a;box-shadow:0 0 0 3px #207f5a24}input[readonly]{color:#15392c;background:#eef6f2;font-weight:900}label{color:#55665d;gap:6px;font-size:.78rem;font-weight:800;display:grid}h1,h2,p{margin:0}.app-shell{width:min(1500px,100% - 36px);margin:0 auto;padding:24px 0 42px 112px}.owner-public-shell{width:min(1180px,100% - 36px);padding-left:0}.side-menu{z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffe0;border:1px solid #cfded5f2;border-radius:14px;grid-template-rows:auto 1fr;gap:12px;width:86px;padding:8px;display:grid;position:fixed;top:18px;bottom:18px;left:18px;box-shadow:0 18px 46px #15392c1f}.side-menu__brand,.side-menu a{color:#15392c;text-align:center;border-radius:12px;place-items:center;gap:6px;text-decoration:none;display:grid}.side-menu__brand{color:#fff;letter-spacing:.02em;background:#fff;min-height:72px;font-size:.72rem;font-weight:900;overflow:hidden;box-shadow:0 12px 28px #15392c38}.side-menu__brand img{object-fit:cover;object-position:left center;border-radius:10px;width:100%;height:100%;display:block}.side-menu nav{scrollbar-width:thin;align-content:start;gap:6px;padding-right:1px;display:grid;overflow-y:auto}.side-menu a{color:#52645b;border:1px solid #0000;outline:none;min-height:58px;font-size:.62rem;font-weight:900;line-height:1.12;transition:background .16s,border-color .16s,color .16s,transform .16s;position:relative}.side-menu a svg{color:#52645b;transition:color .16s}.side-menu a span{overflow-wrap:anywhere;max-width:64px}.side-menu a:hover{color:#15392c;background:#edf8f2;border-color:#b6e3cb}.side-menu a:hover svg{color:#207f5a}.side-menu a:focus-visible{box-shadow:0 0 0 3px #207f5a2e}.side-menu a.active{color:#fff;background:#15392c;border-color:#15392c;box-shadow:0 10px 22px #15392c2e}.side-menu a.active svg{color:#fff}.side-menu a.active:before{content:"";background:#207f5a;border-radius:999px;width:3px;position:absolute;top:17px;bottom:17px;left:-8px}.side-menu a.disabled{opacity:.48}.topbar{background:#fff;border:1px solid #e0e8e3;border-radius:10px;grid-template-columns:minmax(0,1fr);justify-content:stretch;align-items:start;gap:10px;margin-bottom:18px;padding:18px;display:grid;position:relative;box-shadow:0 12px 30px #15392c14}.brand-block{flex-direction:column;align-items:flex-start;gap:10px;min-width:0;margin-top:-2px;display:flex}.brand-icon{color:#fff;background:linear-gradient(145deg,#207f5a,#15392c);border-radius:8px;flex:none;place-items:center;width:60px;height:60px;display:grid;box-shadow:0 16px 34px #194b373d}.brand-wordmark{flex:none;gap:5px;min-width:240px;display:grid}.brand-wordmark strong{color:#1567bd;letter-spacing:0;white-space:nowrap;font-size:clamp(1.35rem,2.1vw,2.25rem);font-weight:900;line-height:.9;display:block}.brand-wordmark strong em{color:#3c9b34;font-style:normal}.brand-wordmark strong:after{content:"";background:linear-gradient(90deg,#1567bd 0 54%,#3c9b34 54% 100%);height:2px;margin-top:7px;display:block}.brand-wordmark small{color:#153b72;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:7px;font-size:clamp(.46rem,.62vw,.62rem);font-weight:800;line-height:1;display:flex}.brand-wordmark small b{background:#3c9b34;border-radius:50%;width:4px;height:4px;display:inline-block}.brand-copy{width:100%;min-width:0;max-width:none;padding-right:min(58vw,780px)}.eyebrow,.panel-kicker{color:#207f5a;letter-spacing:0;text-transform:uppercase;font-size:.72rem;font-weight:900;display:block}.topbar h1{color:#111b17;white-space:nowrap;margin:8px 0 10px;font-size:clamp(2.35rem,4.6vw,4.35rem);line-height:.95}.testing-topbar{align-items:center;margin-bottom:12px}.testing-topbar .brand-icon{width:48px;height:48px}.testing-topbar h1{margin-bottom:5px;font-size:clamp(1.8rem,3vw,2.8rem)}.testing-topbar .brand-block p{font-size:.9rem}.brand-block p{color:#65756c;max-width:720px;font-size:1rem;line-height:1.25}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;max-width:min(58vw,780px);display:flex;position:absolute;top:18px;right:18px}.generated-pill,.operator-pill,.status-pill{color:#506158;white-space:nowrap;background:#fffc;border:1px solid #d7e2dc;border-radius:8px;align-items:center;min-height:38px;padding:0 12px;font-size:.78rem;font-weight:900;display:inline-flex}.status-pill.live{color:#146647;background:#e2f5eb;border-color:#b6e3cb}.status-pill.demo{color:#8a5b0d;background:#fff4d8;border-color:#f1d99e}.status-pill.locked{color:#7d2e2a;background:#fae7e4;border-color:#e9b8b2}.operator-pill{color:#15392c;background:#fff;gap:8px}.operator-pill img{object-fit:cover;border-radius:999px;width:26px;height:26px}.topbar-actions>button,.date-controls button,.login-panel button{color:#fff;background:#15392c;border-radius:8px;min-height:42px;padding:0 15px;font-weight:900}.icon-button{place-items:center;width:42px;padding:0;display:inline-grid}.control-band{grid-template-columns:1fr minmax(330px,430px);gap:16px;margin-bottom:18px;display:grid}.login-gate{grid-template-columns:minmax(0,1fr) minmax(340px,440px);align-items:stretch;gap:18px;min-height:520px;display:grid}.access-intro{color:#fff;background:linear-gradient(135deg,#15392ced,#1f6c4ed1),url(https://images.unsplash.com/photo-1616432043562-3671ea2e5242?auto=format&fit=crop&w=1400&q=80) 50%/cover;border:1px solid #becdc4e0;border-radius:8px;align-content:center;gap:18px;padding:clamp(24px,5vw,54px);display:grid;position:relative;overflow:hidden;box-shadow:0 18px 48px #15392c29}.access-intro .panel-kicker{color:#bde9d2}.access-intro h2{max-width:760px;font-size:clamp(2.3rem,5vw,4.6rem);line-height:.96}.access-intro p{color:#ffffffd1;max-width:650px;font-size:1rem;line-height:1.6}.locked-preview{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:680px;display:grid}.locked-preview div{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1c;border:1px solid #ffffff3d;border-radius:8px;align-content:center;gap:8px;min-height:104px;padding:16px;display:grid}.locked-preview span{color:#ffffffbf;text-transform:uppercase;font-size:.78rem;font-weight:900}.locked-preview strong{font-size:2rem}.filter-card,.login-panel,.panel,.stat-card{background:#ffffffe0;border:1px solid #becdc4e0;border-radius:8px;box-shadow:0 16px 42px #15392c14}.filter-card{justify-content:space-between;align-items:flex-end;gap:18px;min-height:132px;padding:18px;display:flex}.filter-card h2,.login-panel h2{color:#16221d;margin-top:3px;font-size:1.15rem}.reporting-controls{gap:12px;width:min(100%,760px);display:grid}.period-options{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.period-options button{color:#15392c;white-space:nowrap;background:#fff;border:1px solid #cbd8d0;border-radius:8px;min-height:36px;padding:0 12px;font-weight:900}.period-options button.active{color:#fff;background:#15392c;border-color:#15392c}.date-controls{grid-template-columns:repeat(2,minmax(150px,1fr)) auto;align-items:end;gap:12px;width:100%;display:grid}.login-panel{gap:12px;padding:18px;display:grid}.login-panel p{color:#64766c;margin-top:4px;font-size:.88rem}.demo-credentials{gap:9px;display:grid}.demo-credentials button{color:#17201c;text-align:left;background:#f7faf8;border:1px solid #dbe5df;justify-items:start;gap:4px;min-height:auto;padding:12px;display:grid}.demo-credentials button:hover{background:#edf8f2;border-color:#207f5a}.demo-credentials span{color:#207f5a;text-transform:uppercase;font-size:.72rem;font-weight:900}.demo-credentials strong{font-size:.92rem}.demo-credentials small{color:#65756c;font-size:.82rem;font-weight:800}.form-error,.inline-error{color:#ad302b;font-size:.84rem;font-weight:800}.inline-error{background:#fff7f6;border:1px solid #e9b8b2;border-radius:8px;align-self:center;padding:14px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.stat-card{gap:14px;min-height:138px;padding:18px;display:flex;position:relative;overflow:hidden}.stat-card:after{content:"";background:var(--tone,#2563eb);border-radius:999px 999px 0 0;height:4px;position:absolute;inset:auto 16px 0 72px}.stat-icon{width:44px;height:44px;color:var(--tone,#2563eb);background:color-mix(in srgb, var(--tone,#2563eb) 12%, white);border-radius:8px;flex:none;place-items:center;display:grid}.tone-blue{--tone:#2563eb}.tone-green{--tone:#207f5a}.tone-red{--tone:#b9374a}.tone-amber{--tone:#b66d0d}.stat-card p,.stat-card span{color:#65756c;font-size:.78rem;font-weight:900}.stat-card strong{color:#111b17;margin:10px 0 7px;font-size:clamp(1.8rem,3vw,2.75rem);line-height:1;display:block}.dashboard-grid,.table-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.panel{min-width:0;padding:18px}.panel.wide{grid-column:1/-1}.panel-title{align-items:center;gap:11px;margin-bottom:14px;display:flex}.panel-title>svg{color:#207f5a;background:#e4f3eb;border-radius:8px;flex:none;width:38px;height:38px;padding:9px}.panel-title h2{color:#16221d;font-size:1.12rem}.panel-title-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.panel-title-actions small{color:#65756c;font-size:.78rem;font-weight:800}.fee-manager{gap:14px;display:grid}.fee-manager-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.tariff-lock{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;grid-template-columns:minmax(240px,1fr) minmax(220px,.7fr) auto;align-items:end;gap:12px;padding:12px;display:grid}.tariff-lock.unlocked{background:#f0faf5;border-color:#b6e3cb;grid-template-columns:minmax(240px,1fr) auto}.tariff-lock strong,.tariff-lock span{display:block}.tariff-lock strong{color:#14201b}.tariff-lock span{color:#65756c;margin-top:4px;font-size:.82rem;font-weight:800}.tariff-lock button{color:#fff;white-space:nowrap;background:#15392c;border-radius:8px;min-height:42px;padding:0 14px;font-weight:900}.fee-manager input:disabled{color:#7f8d85;cursor:not-allowed;background:#f1f5f3}.owner-portal-page{grid-template-columns:1fr;align-items:start}.owner-workflow-panel{background:linear-gradient(135deg,#e7f4edeb,#fffffff5)}.owner-workflow{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.owner-workflow div,.owner-record-summary div,.owner-document-list>div,.owner-test-history>div{background:#fff;border:1px solid #dce8e2;border-radius:8px;min-width:0;padding:14px}.owner-workflow span{color:#207f5a;background:#e4f3eb;border-radius:8px;place-items:center;width:34px;height:34px;margin-bottom:10px;font-weight:900;display:grid}.owner-workflow strong,.owner-workflow small,.owner-record-summary span,.owner-record-summary small,.owner-document-list span,.owner-document-list small,.owner-test-history span,.owner-test-history small,.owner-test-history em{display:block}.owner-workflow strong,.owner-record-summary strong,.owner-document-list strong,.owner-test-history strong{color:#14201b;overflow-wrap:anywhere}.owner-workflow small,.owner-record-summary span,.owner-record-summary small,.owner-document-list span,.owner-document-list small,.owner-test-history span,.owner-test-history small,.owner-test-history em{color:#65756c;font-size:.8rem;font-weight:800;line-height:1.45}.owner-search-form{grid-template-columns:minmax(220px,1fr) minmax(260px,1fr) auto;align-items:end;gap:12px;margin-bottom:12px;display:grid}.owner-format-help{color:#65756c;margin-bottom:12px;font-size:.84rem;font-weight:800;line-height:1.45}.owner-format-help strong{color:#15392c}.owner-search-form button,.owner-document-list button{color:#fff;white-space:nowrap;background:#15392c;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:0 14px;font-weight:900;display:inline-flex}.owner-document-list button:first-child{color:#15392c;background:#fff;border:1px solid #cbd8d0}.owner-status-card{border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:16px;display:flex}.owner-status-card.good{color:#0f5b3a;background:#e8f6ee}.owner-status-card.warning{color:#8a5708;background:#fff7df}.owner-status-card.critical{color:#9d2d28;background:#fff0ee}.owner-status-card span,.owner-status-card small{font-size:.8rem;font-weight:900;display:block}.owner-status-card strong{color:#14201b;margin:7px 0;font-size:1.8rem;line-height:1;display:block}.owner-record-summary,.owner-document-list,.owner-document-list>div{gap:10px;display:grid}.owner-document-list>div>div{flex-wrap:wrap;gap:8px;display:flex}.owner-test-history{gap:8px;margin-top:14px;display:grid}.owner-test-history em{color:#207f5a;margin-top:4px;font-style:normal}.operations-page{align-items:start}.operations-hero{background:linear-gradient(135deg,#e4f3ebd1,#ffffffeb),#fff}.operations-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.operations-summary-grid>div,.login-extremes>div,.operations-guidance>div{background:#fff;border:1px solid #dde8e2;border-radius:8px;min-width:0;padding:14px}.operations-summary-grid span,.operations-summary-grid small,.operations-centre-row span,.operations-centre-row small,.login-extremes span,.login-extremes small,.operations-guidance span,.operations-ranking small{color:#65756c;font-size:.78rem;font-weight:900;display:block}.operations-summary-grid strong{color:#14201b;margin:6px 0 4px;font-size:1.75rem;line-height:1.1;display:block}.operations-filters{grid-template-columns:minmax(260px,1.2fr) minmax(190px,.7fr) minmax(190px,.7fr);gap:12px;margin-bottom:14px;display:grid}.operations-filters label{color:#5f7066;font-size:.82rem;font-weight:900}.operations-filters input,.operations-filters select{margin-top:6px}.operations-centre-list{gap:10px;display:grid}.operations-centre-row{background:#fff;border:1px solid #dde8e2;border-radius:8px;grid-template-columns:minmax(210px,1.15fr) minmax(190px,1fr) minmax(125px,.62fr) minmax(135px,.7fr) minmax(210px,1.1fr);align-items:center;gap:12px;padding:14px;display:grid}.operations-centre-row strong{color:#14201b;font-size:.98rem;line-height:1.25;display:block}.operations-centre-row>div:first-child strong{font-size:1.05rem}.operations-ranking,.login-extremes,.operations-guidance{gap:10px;display:grid}.operations-ranking>div{background:#fff;border:1px solid #dde8e2;border-left:4px solid #207f5a;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 10px;padding:12px;display:grid}.operations-ranking.warning>div{border-left-color:#b9374a}.operations-ranking>div>span{color:#207f5a;background:#e4f3eb;border-radius:999px;grid-row:span 2;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8rem;font-weight:900;display:inline-flex}.operations-ranking.warning>div>span{color:#b9374a;background:#fde8ea}.operations-ranking strong,.login-extremes strong,.operations-guidance strong{color:#14201b;font-size:.98rem}.operations-check{border-left:4px solid #207f5a;grid-template-columns:minmax(0,1fr) auto;gap:10px 14px;display:grid}.operations-check.warning{border-left-color:#d18413}.operations-check.critical{border-left-color:#b9374a}.operations-check em{color:#207f5a;background:#e4f3eb;border-radius:8px;justify-content:center;align-self:start;align-items:center;min-width:42px;height:42px;font-size:1.1rem;font-style:normal;font-weight:900;display:inline-flex}.operations-check.warning em{color:#96600f;background:#fff4d8}.operations-check.critical em{color:#b9374a;background:#fde8ea}.operations-check ul{grid-column:1/-1;gap:5px;margin:0;padding:0;list-style:none;display:grid}.operations-check li,.operations-check>small{color:#53645b;font-size:.8rem;font-weight:850;line-height:1.35}.operations-check li:before{content:"•";color:#207f5a;margin-right:7px}.operations-check.warning li:before{color:#d18413}.operations-check.critical li:before{color:#b9374a}.profile-page{grid-template-columns:minmax(280px,.46fr) minmax(0,1fr)}.profile-summary-card,.profile-edit-card{min-width:0}.profile-summary-card{align-content:start;gap:14px;display:grid}.profile-photo{color:#207f5a;background:#e4f3eb;border:1px solid #b6e3cb;border-radius:18px;place-items:center;width:112px;height:112px;display:grid;overflow:hidden}.profile-photo img{object-fit:cover;width:100%;height:100%}.profile-summary-card h2{color:#14201b;font-size:1.35rem}.profile-summary-card p{color:#607168;font-weight:850}.profile-meta{gap:10px;display:grid}.profile-meta>div{background:#fff;border:1px solid #dde8e2;border-radius:8px;padding:12px}.profile-meta span,.profile-upload span{color:#65756c;font-size:.78rem;font-weight:900;display:block}.profile-meta strong{color:#14201b;overflow-wrap:anywhere;margin-top:4px;font-size:.94rem;display:block}.profile-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.profile-form label{color:#5f7066;font-size:.82rem;font-weight:900}.profile-form input,.profile-form textarea{margin-top:6px}.profile-form textarea{resize:vertical;min-height:92px}.profile-form input:disabled{color:#7b8981;cursor:not-allowed;background:#f2f6f4}.profile-form__wide{grid-column:1/-1}.profile-upload input{min-height:auto;padding:14px}.profile-actions{justify-content:flex-end;display:flex}.profile-actions button{color:#fff;background:#15392c;border-radius:8px;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-weight:900;display:inline-flex}.fee-manager-footer{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:12px;display:flex}.fee-manager-footer p{color:#65756c;font-size:.86rem;font-weight:800}.fee-manager-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.fee-manager-footer button{color:#15392c;white-space:nowrap;background:#fff;border:1px solid #cbd8d0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:0 13px;font-weight:900;display:inline-flex}.fee-manager-footer .save-fees-button{color:#fff;background:#15392c;border-color:#15392c}.fee-manager-footer button:disabled{opacity:.5;cursor:not-allowed}.test-parameters-panel{gap:14px;display:grid}.test-parameters-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.test-parameters-grid label{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;padding:12px}.test-parameters-grid label>span{color:#65756c;font-size:.78rem;font-weight:900}.parameter-toggle{align-content:center}.parameter-toggle input{width:auto;min-height:auto}.parameter-toggle{color:#15392c;grid-template-columns:auto 1fr;align-items:center}.test-parameter-preview{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.save-toast{z-index:40;background:#fff;border:1px solid #b6e3cb;border-radius:8px;grid-template-columns:42px minmax(0,1fr) 34px;align-items:center;gap:12px;width:min(360px,100vw - 32px);padding:12px;display:grid;position:fixed;bottom:22px;right:22px;box-shadow:0 18px 50px #15392c38}.save-toast__icon{color:#207f5a;background:#e4f3eb;border-radius:8px;place-items:center;width:42px;height:42px;display:grid}.save-toast strong,.save-toast span{display:block}.save-toast strong{color:#14201b;font-size:.95rem}.save-toast span{color:#65756c;margin-top:3px;font-size:.82rem;font-weight:800}.save-toast button{color:#53645b;background:#f8faf8;border:1px solid #d8e3dd;border-radius:8px;place-items:center;width:34px;height:34px;padding:0;display:grid}.recharts-wrapper text{fill:#617167;font-size:.78rem}.recharts-default-legend{font-weight:800}.table-wrap{width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:680px}th,td{text-align:left;vertical-align:middle;border-bottom:1px solid #e0e8e3;padding:13px 12px}th{color:#66766d;text-transform:uppercase;background:#f5f8f6;font-size:.72rem;font-weight:900}td{color:#26332e;font-size:.9rem}td strong{display:block}td span{color:#6c7d73;margin-top:2px;font-size:.8rem;display:block}.status-chip{color:#207f5a;text-transform:uppercase;background:#e4f3eb;border-radius:999px;width:fit-content;padding:5px 9px;font-size:.72rem;font-weight:900}.status-select{cursor:pointer;appearance:auto;border:1px solid #0000;min-height:34px}.inline-edit-select{color:#26332e;background:#fff;border:1px solid #d6e1db;border-radius:8px;width:100%;max-width:170px;min-height:36px;padding:6px 9px;font-size:.86rem;font-weight:850}.status-chip.suspended{color:#ad302b;background:#f8e4e1}.status-chip.disabled{color:#5c6670;background:#edf1f2}.status-chip.pending{color:#9a6a11;background:#fff1ce}.status-chip.failed{color:#ad302b;background:#f8e4e1}.registered-vehicles-panel{gap:14px;display:grid}.vehicle-register-views,.vehicle-renewal-periods{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.vehicle-register-views button,.vehicle-renewal-periods button{color:#15392c;background:#fff;border:1px solid #d4e2da;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:0 12px;font-weight:900;display:inline-flex}.vehicle-register-views button.active,.vehicle-renewal-periods button.active{color:#fff;background:#15392c;border-color:#15392c}.vehicle-register-views em,.vehicle-renewal-periods em{color:#207f5a;background:#e4f3eb;border-radius:999px;min-width:26px;padding:3px 8px;font-size:.74rem;font-style:normal}.vehicle-register-views button.active em,.vehicle-renewal-periods button.active em{color:#15392c;background:#fff}.vehicle-register-controls{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;grid-template-columns:minmax(240px,1.4fr) repeat(3,minmax(150px,.8fr)) repeat(2,minmax(150px,.7fr)) auto;align-items:end;gap:12px;padding:12px;display:grid}.vehicle-register-count{white-space:nowrap;background:#fff;border:1px solid #d4e2da;border-radius:8px;align-items:center;gap:7px;min-height:42px;padding:0 12px;display:inline-flex}.vehicle-register-actions{grid-column:1/-1;justify-content:flex-end;align-items:center;gap:8px;display:flex}.vehicle-register-actions button{white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 13px;font-weight:900;display:inline-flex}.vehicle-register-actions button:not(.secondary-row-action){color:#fff;background:#15392c}.vehicle-register-count strong{color:#15392c;font-size:1.08rem}.vehicle-register-count span{color:#65756c;font-size:.8rem;font-weight:900}.registered-vehicles-table{min-width:1320px}.vehicle-registration-link{color:#15392c;text-align:left;background:0 0;gap:2px;padding:0;display:grid}.vehicle-registration-link strong{text-underline-offset:3px;text-decoration:underline;display:block}.vehicle-registration-link span{color:#6c7d73;font-size:.8rem;font-weight:800;display:block}.vehicle-history-modal{width:min(980px,94vw)}.vehicle-history-header-actions{align-items:center;gap:8px;display:flex}.vehicle-history-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.vehicle-history-summary div{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;padding:12px}.vehicle-history-summary span,.vehicle-history-summary small,.vehicle-history-event span,.vehicle-history-event p{color:#65756c;font-size:.8rem;font-weight:800;line-height:1.45}.vehicle-history-summary strong{color:#14201b;margin:3px 0;font-size:.98rem;display:block}.vehicle-history-timeline{gap:10px;display:grid}.vehicle-history-event{background:#fff;border:1px solid #e0e8e3;border-left:4px solid #207f5a;border-radius:8px;grid-template-columns:150px minmax(0,1fr);gap:12px;padding:12px;display:grid}.vehicle-history-event.fail{border-left-color:#ad302b}.vehicle-history-event.pending{border-left-color:#b66d0d}.vehicle-history-event time{color:#53645b;font-size:.82rem;font-weight:900}.vehicle-history-event strong{color:#1d2a24;margin:2px 0;display:block}.vehicle-history-event-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.vehicle-history-event-actions button{color:#fff;background:#15392c;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:.8rem;font-weight:900;display:inline-flex}.vehicle-history-event-actions .secondary-row-action{color:#15392c;background:#fff}.vehicle-history-event-actions button:disabled{cursor:not-allowed;opacity:.5}.customer-lookup-panel{gap:14px;display:grid}.customer-lookup-close{color:#15392c;white-space:nowrap;background:#fff;border:1px solid #cbd8d0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 13px;font-weight:900;display:inline-flex}.customer-lookup-form{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:12px;padding:12px;display:grid}.customer-lookup-form button,.customer-document-grid button{color:#fff;background:#15392c;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 13px;font-weight:900;display:inline-flex}.customer-lookup-form button:disabled,.customer-document-grid button:disabled{cursor:not-allowed;opacity:.5}.customer-lookup-result{gap:12px;display:grid}.customer-lookup-summary,.customer-document-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.customer-document-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-lookup-summary div,.customer-document-grid>div{background:#fff;border:1px solid #e0e8e3;border-radius:8px;gap:7px;padding:12px;display:grid}.customer-lookup-summary span,.customer-lookup-summary small,.customer-document-grid span,.customer-document-grid small{color:#65756c;font-size:.8rem;font-weight:800;line-height:1.45}.customer-lookup-summary strong,.customer-document-grid strong{color:#14201b;overflow-wrap:anywhere}.customer-document-grid div div{flex-wrap:wrap;gap:8px;display:flex}.customer-document-grid .secondary-row-action{color:#15392c;background:#fff}.customer-lookup-edit-actions,.owner-contact-actions{justify-content:flex-end;margin-top:2px;display:flex}.vehicle-edit-modal{width:min(820px,100%)}.vehicle-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.vehicle-edit-grid label{color:#5f7066;font-size:.82rem;font-weight:900}.vehicle-edit-grid input,.vehicle-edit-grid select,.vehicle-edit-grid textarea{width:100%;margin-top:6px}.vehicle-edit-grid input:disabled,.vehicle-edit-grid select:disabled,.vehicle-edit-grid textarea:disabled{color:#7b8981;cursor:not-allowed;background:#f2f6f4}.vehicle-edit-grid textarea{resize:vertical;min-height:86px}.vehicle-edit-grid__wide{grid-column:1/-1}.user-management-page{align-items:start}.role-rule-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.role-rule-strip div,.centre-employee-card{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;padding:12px}.role-rule-strip strong,.role-rule-strip span,.centre-employee-card strong,.centre-employee-card span{display:block}.role-rule-strip strong,.centre-employee-card strong{color:#14201b}.role-rule-strip span,.centre-employee-card span,.centre-employee-card p,.centre-employee-card li{color:#65756c;font-size:.82rem;font-weight:800;line-height:1.45}.user-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.centre-assignment{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;grid-column:1/-1;padding:12px}.centre-assignment legend{color:#55665d;padding:0 6px;font-size:.78rem;font-weight:900}.centre-assignment>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.centre-assignment label{background:#fff;border:1px solid #d4e2da;border-radius:8px;align-items:center;gap:8px;padding:9px 10px;display:flex}.centre-assignment label.selected{background:#eaf8f1;border-color:#207f5a}.centre-assignment input{width:auto;min-height:auto}.centre-assignment>.centre-assignment-filters{grid-template-columns:minmax(260px,1fr) minmax(180px,240px) minmax(180px,240px) auto;align-items:end;gap:10px;margin-bottom:12px;display:grid}.centre-assignment-filters label{color:#55665d;background:0 0;border:0;border-radius:0;gap:5px;padding:0;font-size:.82rem;font-weight:900;display:grid}.centre-assignment-filters input,.centre-assignment-filters select{color:#1d2a24;background:#fff;border:1px solid #d4e2da;border-radius:8px;width:100%;min-height:40px;padding:0 11px;font-weight:850}.centre-assignment-count{color:#15392c;white-space:nowrap;background:#fff;border:1px solid #d4e2da;border-radius:8px;justify-content:center;align-items:center;min-height:40px;padding:0 12px;font-weight:900;display:inline-flex}.centre-assignment>.centre-assignment-list{grid-template-columns:1fr;gap:8px;max-height:340px;padding-right:4px;display:grid;overflow:auto}.centre-assignment-list label{background:#fff;border:1px solid #d4e2da;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding:10px 12px;display:grid}.centre-assignment-list label.selected{background:#eaf8f1;border-color:#207f5a}.centre-assignment-list input{margin-top:4px}.centre-assignment-list strong,.centre-assignment-list em,.centre-assignment-list small{display:block}.centre-assignment-list strong{color:#1d2a24;font-size:.92rem}.centre-assignment-list em,.centre-assignment-list small{color:#65756c;font-size:.78rem;font-style:normal;font-weight:800;line-height:1.45}.user-form-actions{grid-column:1/-1;justify-content:flex-end;display:flex}.user-form-actions button{color:#fff;background:#15392c;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 14px;font-weight:900;display:inline-flex}.user-directory-panel,.centre-employees-panel{gap:14px;display:grid}.view-toggle{background:#f8faf8;border:1px solid #d9e5df;border-radius:8px;align-items:center;gap:4px;padding:4px;display:inline-flex}.view-toggle button{color:#55665d;background:0 0;border-radius:7px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:.82rem;font-weight:900;display:inline-flex}.view-toggle button.active{color:#fff;background:#15392c}.user-directory-table{min-width:1160px}.user-row-actions{flex-wrap:wrap;gap:6px;display:flex}.user-row-actions button{color:#fff;white-space:nowrap;background:#15392c;border-radius:8px;justify-content:center;align-items:center;gap:5px;min-height:32px;padding:0 9px;font-size:.78rem;font-weight:900;display:inline-flex}.user-row-actions .secondary-row-action{color:#15392c;background:#fff}.user-edit-modal{width:min(1080px,94vw)}.user-form.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.edit-centre-assignment{grid-column:auto}.password-reset-modal{width:min(620px,94vw)}.password-reset-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.password-reset-grid label{color:#55665d;gap:6px;font-size:.86rem;font-weight:900;display:grid}.password-reset-grid input{color:#1d2a24;border:1px solid #d4e2da;border-radius:8px;min-height:42px;padding:0 11px;font-weight:850}.password-reset-grid .checkbox-row{background:#f8faf8;border:1px solid #d4e2da;border-radius:8px;grid-column:1/-1;align-items:center;gap:9px;padding:10px 12px;display:flex}.password-reset-grid .checkbox-row input{width:auto;min-height:auto}.form-help{color:#65756c;font-size:.84rem;font-weight:800;line-height:1.45}.centre-employee-list-table{min-width:980px}.centre-employee-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.centre-employee-card{gap:8px;display:grid}.centre-employee-card ul{gap:5px;margin:0;padding-left:18px;display:grid}.alert-list{gap:12px;display:grid}.alert-item{background:#fffdf7;border:1px solid #e1e8e4;border-left:4px solid #b66d0d;border-radius:8px;padding:14px}.alert-item.high{background:#fff7f6;border-left-color:#b9374a}.alert-item div{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.alert-item strong{color:#1d2a24}.alert-item span,.alert-item p,.alert-item time,.audit-event span,.audit-event time{color:#65756c;font-size:.82rem}.alert-item span{font-weight:900}.alert-item p{margin-bottom:10px}.certificate-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.certificate-grid div{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;align-content:center;gap:8px;min-height:96px;padding:12px;display:grid}.certificate-grid span{color:#66766d;text-transform:capitalize;font-size:.74rem;font-weight:900}.certificate-grid strong{color:#14201b;font-size:1.55rem}.audit-columns{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:14px;display:grid}.audit-count,.audit-event{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;padding:12px}.audit-count+.audit-count,.audit-event+.audit-event{margin-top:10px}.audit-count{justify-content:space-between;align-items:center;gap:12px;display:flex}.audit-count span{color:#53645b;font-size:.82rem;font-weight:800}.audit-count strong,.audit-event strong{color:#14201b}.audit-event span,.audit-event time{margin-top:5px;display:block}.audit-log-explorer{gap:14px;display:grid}.audit-filter-grid{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;gap:12px;padding:12px;display:grid}.audit-clear-button{min-height:42px}.audit-log-summary{background:#fff;border:1px solid #d4e2da;border-radius:8px;align-items:baseline;gap:7px;width:fit-content;padding:8px 11px;display:inline-flex}.audit-log-summary strong{color:#15392c;font-size:1.1rem}.audit-log-summary span{color:#65756c;font-size:.82rem;font-weight:900}.audit-log-table{min-width:1180px}.audit-log-table td{font-size:.84rem}.audit-log-table td:last-child{color:#53645b;overflow-wrap:anywhere;max-width:260px;font-size:.84rem;line-height:1.45}.testing-centre-management{align-items:start}.testing-centre-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.testing-centre-form__wide{grid-column:span 3}.geo-actions{justify-content:flex-end;align-items:center;gap:10px;padding-top:4px;display:flex}.geo-actions button,.centre-location-cell a{white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 13px;font-weight:900;display:inline-flex}.geo-actions button[type=submit]{color:#fff;background:#15392c}.geo-actions .secondary-action{color:#15392c;background:#fff;border:1px solid #cbd8d0}.map-picker{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;gap:10px;padding:12px;display:grid}.map-picker__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.map-picker__head div{gap:3px;display:grid}.map-picker__head strong{color:#14201b;font-size:1rem}.map-picker__head>span{color:#8a5b0d;font-size:.78rem;font-weight:900}.map-search{grid-template-columns:minmax(240px,1fr) auto;align-items:end;gap:10px;display:grid}.map-search button{color:#fff;white-space:nowrap;background:#15392c;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 13px;font-weight:900;display:inline-flex}.google-map-canvas{background:#eef6f2;border:1px solid #cbd8d0;border-radius:8px;min-height:320px;overflow:hidden}.google-map-canvas.disabled{text-align:center;place-items:center;min-height:220px;padding:18px;display:grid}.google-map-canvas.disabled div{color:#53645b;justify-items:center;gap:8px;max-width:520px;display:grid}.google-map-canvas.disabled strong{color:#15392c;font-size:1rem}.form-helper,.form-success{border-radius:8px;align-items:center;gap:8px;width:fit-content;padding:9px 11px;font-size:.82rem;font-weight:900;display:inline-flex}.form-helper{color:#15392c;background:#f8faf8;border:1px solid #cbd8d0}.form-success{color:#146647;background:#eaf8f1;border:1px solid #b6e3cb}.centre-directory{gap:14px;display:grid}.centre-directory-list{gap:10px;display:grid}.centre-directory-row{background:#fbfcfb;border:1px solid #e0e8e3;border-radius:8px;grid-template-columns:minmax(240px,1.25fr) minmax(220px,1fr) minmax(150px,.6fr) minmax(210px,.9fr);align-items:center;gap:14px;padding:13px;display:grid}.centre-directory-row div{gap:5px;display:grid}.centre-directory-row strong{color:#14201b;font-size:.92rem}.centre-directory-row span{color:#65756c;font-size:.8rem;font-weight:800;line-height:1.35}.centre-directory-row .status-pill{text-transform:capitalize;width:fit-content;min-height:30px}.centre-location-cell{justify-items:start}.centre-location-cell a{color:#15392c;background:#fff;border:1px solid #cbd8d0;min-height:32px;font-size:.78rem;text-decoration:none}.archive-panel{gap:14px;display:grid}.archive-filter{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.archive-filter button{color:#15392c;background:#fff;border:1px solid #d4e2da;border-radius:8px;min-height:36px;padding:0 12px;font-weight:900}.archive-filter button.active{color:#fff;background:#15392c;border-color:#15392c}.archive-list{gap:10px;display:grid}.archive-row{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;grid-template-columns:minmax(180px,1fr) minmax(220px,1.1fr) minmax(220px,1.15fr) auto;align-items:center;gap:12px;min-height:86px;padding:12px;display:grid}.archive-row strong,.archive-row span{display:block}.archive-row strong{color:#14201b;font-size:.92rem}.archive-row span{color:#65756c;margin-top:4px;font-size:.8rem;font-weight:800}.archive-row button{color:#fff;white-space:nowrap;background:#15392c;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 12px;font-weight:900;display:inline-flex}.archive-readonly{color:#65756c;background:#fff;border:1px solid #d4e2da;border-radius:999px;width:fit-content;padding:7px 10px;font-size:.78rem;font-weight:900}.centre-app{gap:12px;margin-top:16px;scroll-margin-top:18px;display:grid}.centre-hero,.centre-metrics>div,.queue-panel,.test-panel,.issued-certificates{background:#ffffffe6;border:1px solid #becdc4e0;border-radius:8px;box-shadow:0 16px 42px #15392c14}.centre-hero{background:linear-gradient(135deg,#fffffffa 0%,#f4faf7f5 58%,#e6f0f8eb 100%);grid-template-columns:minmax(520px,1fr) minmax(420px,.72fr);align-items:stretch;gap:22px;min-height:168px;padding:22px 24px;display:grid;overflow:hidden}.centre-hero-main{flex-direction:column;justify-content:center;min-width:0;display:flex}.centre-hero h2{color:#101a16;max-width:820px;margin:4px 0 9px;font-size:clamp(1.8rem,3vw,2.9rem);line-height:1.05}.centre-hero p{color:#5d6d64;max-width:620px;font-size:1rem;line-height:1.45}.centre-hero-controls{grid-template-columns:minmax(250px,320px) minmax(0,1fr);align-items:stretch;gap:14px;min-width:0;display:grid}.centre-hero-right{align-content:center;gap:18px;min-width:0;display:grid}.shift-strip,.lane-status-strip{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.shift-strip{margin-top:10px}.shift-strip span,.lane-status-pill{color:#15392c;white-space:nowrap;background:#fff;border:1px solid #d5e1da;border-radius:999px;align-items:center;gap:6px;min-height:30px;padding:0 10px;font-size:.72rem;font-weight:900;display:inline-flex}.shift-strip svg{color:#207f5a}.lane-status-strip{scrollbar-width:thin;flex-wrap:nowrap;justify-content:flex-start;width:100%;max-width:none;margin-top:10px;padding-bottom:2px;overflow-x:auto}.lane-status-pill{background:#effaf4;border-color:#b6e3cb;flex:none;grid-template-columns:auto auto;min-height:34px;display:grid}.lane-status-pill strong{color:#146647;text-transform:uppercase;background:#dff3e8;border-radius:999px;padding:4px 7px;font-size:.62rem}.lane-status-pill.in-test{background:#f4f8ff;border-color:#b9ccf4}.lane-status-pill.in-test strong{color:#1d5fd2;background:#e7effd}.lane-status-pill.offline{background:#fff7f6;border-color:#efc4be}.lane-status-pill.offline strong{color:#ad302b;background:#fae7e4}.centre-switcher{background:#ffffffd1;border:1px solid #d5e1da;border-radius:8px;align-content:center;gap:6px;min-width:0;padding:14px;display:grid}.centre-switcher label{color:#55665d;font-size:.74rem;font-weight:900}.centre-switcher select{min-height:48px;margin-top:5px;font-size:.86rem;font-weight:900}.centre-switcher span{color:#207f5a;font-size:.72rem;font-weight:900}.centre-hero-actions,.operator-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.centre-hero-actions button,.operator-actions button{color:#fff;white-space:nowrap;background:#15392c;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 14px;font-weight:900;display:inline-flex}.centre-hero-actions{justify-content:flex-end;align-items:center}.centre-hero-actions .secondary-action{color:#15392c;background:#fff;border:1px solid #cbd8d0}.centre-hero-actions .secondary-action.is-active{color:#fff;background:#15392c;border-color:#15392c}.lane-setup-panel{background:#ffffffeb;border:1px solid #becdc4e0;border-radius:8px;gap:14px;padding:18px;display:grid;box-shadow:0 16px 42px #15392c14}.lane-setup-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.lane-form{background:#f8faf8;border:1px solid #dce8e1;border-radius:8px;gap:12px;padding:14px;display:grid}.lane-form-grid{grid-template-columns:repeat(2,minmax(0,1fr)) minmax(260px,1.6fr) minmax(150px,.8fr) minmax(130px,.7fr) auto;align-items:end;gap:12px;display:grid}.lane-form-grid button,.lane-card button{color:#fff;white-space:nowrap;background:#15392c;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:0 13px;font-weight:900;display:inline-flex}.lane-form-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.lane-form-actions .secondary-row-action{color:#15392c;white-space:nowrap;background:#fff;border:1px solid #cbd8d0;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 12px;font-weight:900;display:inline-flex}.class-multiselect{border:0;gap:6px;min-width:0;margin:0;padding:0;display:grid}.class-multiselect legend{color:#55665d;padding:0;font-size:.78rem;font-weight:800}.class-multiselect>div{background:#fff;border:1px solid #cbd8d0;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;min-height:42px;padding:6px;display:flex}.class-option{color:#53645b;cursor:pointer;background:#f8faf8;border:1px solid #dbe5df;border-radius:999px;align-items:center;gap:6px;padding:6px 9px;font-size:.74rem;font-weight:900;display:inline-flex}.class-option input{accent-color:#207f5a;width:14px;height:14px;min-height:0;margin:0}.class-option.selected{color:#146647;background:#e4f3eb;border-color:#a8dbc1}.lane-card{background:linear-gradient(#fff 0%,#f5f9f7 100%);border:1px solid #dce8e1;border-radius:8px;align-content:start;gap:9px;min-height:162px;padding:14px;display:grid}.lane-card div{justify-content:space-between;align-items:center;gap:10px;display:flex}.lane-card svg{color:#1d5fd2;background:#e7effd;border-radius:8px;width:36px;height:36px;padding:8px}.lane-card em{color:#146647;text-transform:uppercase;background:#e4f3eb;border-radius:999px;padding:5px 9px;font-size:.68rem;font-style:normal;font-weight:900}.lane-card strong{color:#14201b;font-size:1.15rem}.lane-card span,.lane-card small,.lane-card p{color:#65756c;font-size:.82rem;font-weight:800}.lane-card-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.lane-card button{color:#15392c;background:#fff;border:1px solid #cbd8d0;width:fit-content;min-height:36px}.lane-card .danger-action{color:#ad302b;background:#fff7f6;border-color:#e9b8b2}.machine-modal{z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1020197a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.machine-modal-card{background:#fff;border:1px solid #cbd8d0;border-radius:8px;gap:14px;width:min(920px,100%);max-height:min(780px,100vh - 40px);padding:18px;display:grid;overflow:auto;box-shadow:0 28px 90px #081c1452}.delete-lane-card{background:#fff;border:1px solid #e9b8b2;border-radius:8px;gap:14px;width:min(520px,100%);padding:18px;display:grid;box-shadow:0 28px 90px #081c1452}.test-data-card{background:#fff;border:1px solid #cbd8d0;border-radius:8px;gap:14px;width:min(760px,100%);max-height:min(760px,100vh - 40px);padding:18px;display:grid;overflow:auto;box-shadow:0 28px 90px #081c1452}.test-data-subject,.test-progress{background:#f8faf8;border:1px solid #dce8e1;border-radius:8px;align-items:center;gap:12px;padding:12px;display:flex}.test-data-subject>div:nth-child(2){flex:1;min-width:0}.test-data-subject span,.test-data-subject small,.test-progress small{color:#65756c;font-size:.78rem;font-weight:900;display:block}.test-data-subject strong,.test-progress strong{color:#14201b;display:block}.test-data-subject strong{margin:3px 0;font-size:1.25rem}.test-data-subject em{color:#1d5fd2;text-transform:uppercase;background:#e7effd;border-radius:999px;padding:7px 11px;font-size:.72rem;font-style:normal;font-weight:900}.test-data-subject em.pass{color:#146647;background:#e4f3eb}.test-data-subject em.running{color:#8a5b0d;background:#fff4d8}.pulse-dot{background:#1d5fd2;border:10px solid #e7effd;border-radius:50%;flex:none;width:38px;height:38px;display:block}.pulse-dot.running{animation:.9s ease-in-out infinite pulse}.tolerance-table{border:1px solid #dce8e1;border-radius:8px;display:grid;overflow:hidden}.tolerance-head,.tolerance-row{grid-template-columns:minmax(120px,.8fr) minmax(120px,.8fr) minmax(180px,1.15fr) minmax(120px,.8fr);align-items:center;gap:10px;padding:11px 12px;display:grid}.tolerance-head{color:#53645b;text-transform:uppercase;background:#f0f6f3;font-size:.72rem;font-weight:900}.tolerance-row{background:#fff;border-top:1px solid #e0e8e3}.tolerance-row strong{color:#14201b}.tolerance-row span{color:#65756c;font-size:.84rem;font-weight:800}.tolerance-row em{text-transform:uppercase;border-radius:999px;width:fit-content;padding:6px 9px;font-size:.68rem;font-style:normal;font-weight:900}.tolerance-row em.pass{color:#146647;background:#e4f3eb}.tolerance-row em.fail{color:#ad302b;background:#fae7e4}.test-data-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.test-data-actions button{color:#fff;background:#1d5fd2;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 14px;font-weight:900;display:inline-flex}.test-data-actions .secondary-row-action{color:#15392c;background:#fff;border:1px solid #cbd8d0}.test-data-actions .ok-test-button{background:#207f5a}.delete-lane-card>p{color:#65756c;font-size:.92rem;font-weight:800;line-height:1.55}.delete-lane-card>p strong{color:#14201b}.machine-install-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.detected-machines{background:#f8faf8;border:1px solid #dce8e1;border-radius:8px;gap:12px;padding:14px;display:grid}.detected-machine-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.detected-machine-list button{color:#14201b;text-align:left;background:#fff;border:1px solid #dce8e1;border-radius:8px;gap:7px;padding:12px;display:grid}.detected-machine-list button:hover{background:#f0faf5;border-color:#207f5a}.detected-machine-list div{justify-content:space-between;align-items:center;gap:10px;display:flex}.detected-machine-list svg{color:#1d5fd2;background:#e7effd;border-radius:8px;width:34px;height:34px;padding:8px}.detected-machine-list div span{color:#146647;text-transform:uppercase;background:#e4f3eb;border-radius:999px;padding:5px 9px;font-size:.68rem;font-weight:900}.detected-machine-list strong,.detected-machine-list small,.detected-machine-list em,.detected-machine-list p{display:block}.detected-machine-list strong{font-size:.96rem}.detected-machine-list small,.detected-machine-list em,.detected-machine-list p{color:#65756c;font-size:.78rem;font-style:normal;font-weight:800}.troubleshoot-panel{background:#fbfcfb;border:1px solid #dce8e1;border-radius:8px;gap:12px;padding:14px;display:grid}.troubleshoot-panel .secondary-row-action{color:#15392c;background:#fff;border:1px solid #cbd8d0;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 12px;font-weight:900;display:inline-flex}.troubleshoot-empty{color:#65756c;font-size:.86rem;font-weight:800}.troubleshoot-results{gap:10px;display:grid}.troubleshoot-summary{background:#fff;border:1px solid #cbd8d0;border-radius:8px;padding:12px}.troubleshoot-summary strong,.troubleshoot-summary span{display:block}.troubleshoot-summary strong{color:#14201b}.troubleshoot-summary span{color:#65756c;margin-top:4px;font-size:.82rem;font-weight:800}.troubleshoot-checks{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.troubleshoot-check{background:#fff;border:1px solid #dce8e1;border-radius:8px;align-content:start;gap:6px;min-height:118px;padding:10px;display:grid}.troubleshoot-check em{text-transform:uppercase;border-radius:999px;width:fit-content;padding:4px 8px;font-size:.64rem;font-style:normal;font-weight:900}.troubleshoot-check.pass em{color:#146647;background:#e4f3eb}.troubleshoot-check.warning em{color:#8a5b0d;background:#fff4d8}.troubleshoot-check.fail em{color:#ad302b;background:#fae7e4}.troubleshoot-check strong{color:#14201b;font-size:.84rem}.troubleshoot-check span{color:#65756c;font-size:.76rem;font-weight:800}.machine-classes{grid-column:1/-1}.machine-install-note{background:#f0faf5;border:1px solid #b6e3cb;border-radius:8px;align-items:center;gap:12px;padding:12px;display:flex}.machine-install-note svg{color:#207f5a;background:#dff3e8;border-radius:8px;flex:none;width:38px;height:38px;padding:9px}.machine-install-note strong,.machine-install-note span{display:block}.machine-install-note strong{color:#15392c;font-size:.92rem}.machine-install-note span{color:#65756c;margin-top:3px;font-size:.82rem;font-weight:800}.install-success{color:#146647;background:#e4f3eb;border:1px solid #b6e3cb;border-radius:8px;padding:10px 12px;font-weight:900}.machine-modal-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.machine-modal-actions button{color:#fff;background:#15392c;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 14px;font-weight:900;display:inline-flex}.machine-modal-actions .secondary-row-action{color:#15392c;background:#fff;border:1px solid #cbd8d0}.machine-modal-actions .danger-confirm{background:#ad302b}.centre-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.centre-metrics>div{border-left:4px solid #d5e1da;grid-template-columns:38px minmax(0,1fr);align-content:center;column-gap:12px;min-height:92px;padding:14px;display:grid}.centre-metrics svg{color:#1d5fd2;background:#e7effd;border-radius:8px;grid-row:span 3;width:38px;height:38px;padding:9px}.metric-card.queue{border-left-color:#1d5fd2}.metric-card.payment{border-left-color:#d18413}.metric-card.machine{border-left-color:#207f5a}.metric-card.certificate{border-left-color:#6d45c3}.metric-card.payment svg{color:#b66d0d;background:#fff4d8}.metric-card.machine svg{color:#207f5a;background:#e4f3eb}.metric-card.certificate svg{color:#6d45c3;background:#f0e9ff}.centre-metrics span,.centre-metrics small{color:#64766c;font-size:.78rem;font-weight:900}.centre-metrics strong{color:#121d18;margin:3px 0;font-size:1.65rem;line-height:1.1}.centre-workspace{grid-template-columns:minmax(300px,.68fr) minmax(0,1.32fr);align-items:start;gap:12px;display:grid}.queue-panel,.test-panel,.issued-certificates{min-width:0;padding:16px}.centre-panel-title,.selected-vehicle,.operation-strip>div{align-items:center;gap:12px;display:flex}.centre-panel-title{justify-content:space-between;margin-bottom:14px}.centre-panel-title h3,.selected-vehicle h3{color:#16221d;font-size:1.15rem}.queue-badge{color:#1d5fd2;background:#e7effd;border-radius:999px;padding:6px 10px;font-size:.72rem;font-weight:900}.queue-title-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.queue-title-actions button,.queue-add-search{color:#15392c;white-space:nowrap;background:#fff;border:1px solid #cbd8d0;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:34px;padding:0 10px;font-size:.76rem;font-weight:900;display:inline-flex}.queue-list{gap:10px;display:grid}.queue-search{margin-bottom:12px;position:relative}.queue-search svg{color:#65756c;position:absolute;bottom:12px;left:12px}.queue-search input{padding-left:38px}.queue-add-search{color:#fff;background:#15392c;border-color:#15392c;width:100%;margin:-2px 0 12px}.queue-item{color:inherit;text-align:left;background:linear-gradient(#fff 0%,#f8faf8 100%);border:1px solid #e0e8e3;border-radius:8px;grid-template-columns:minmax(0,1fr) 38px;align-items:center;gap:8px;padding:8px;display:grid;box-shadow:0 8px 20px #15392c0a}.queue-item-main{min-height:76px;color:inherit;text-align:left;background:0 0;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:12px;padding:3px;display:grid}.queue-item.selected,.queue-item:hover{background:#f4f8ff;border-color:#1d5fd2}.queue-item.selected{box-shadow:inset 4px 0 #1d5fd2,0 10px 24px #1d5fd217}.queue-item-actions{gap:5px;display:grid}.queue-item-actions button{color:#15392c;background:#fff;border:1px solid #d8e3dd;border-radius:8px;place-items:center;width:34px;height:28px;padding:0;display:grid}.queue-item-actions .danger-action{color:#ad302b;background:#fff7f6;border-color:#e9b8b2}.queue-item-actions button:disabled{opacity:.4;cursor:not-allowed}.queue-time{color:#8a5b0d;background:#fff4d8;border-radius:8px;place-items:center;width:54px;height:54px;font-size:.82rem;font-weight:900;display:grid}.queue-item strong,.queue-item small,.workflow-chip{display:block}.queue-item small{overflow-wrap:anywhere;color:#65756c;margin-top:4px;font-size:.8rem;font-weight:800}.workflow-chip{color:#207f5a;text-transform:uppercase;text-align:center;background:#e4f3eb;border-radius:999px;width:max-content;max-width:132px;padding:6px 9px;font-size:.68rem;font-style:normal;font-weight:900}.workflow-chip.awaiting-payment{color:#8a5b0d;background:#fff4d8}.workflow-chip.in-test{color:#1d5fd2;background:#e7effd}.workflow-chip.certificate-issued{color:#5f2dab;background:#f0e9ff}.vehicle-icon{color:#fff;background:#1d5fd2;border-radius:8px;flex:none;place-items:center;width:52px;height:52px;display:grid}.vehicle-icon.private{background:#1d5fd2}.vehicle-icon.commercial{background:#207f5a}.vehicle-icon.heavy{background:#a46709}.vehicle-icon.bus{background:#6d45c3}.vehicle-icon.motorcycle{background:#b9374a}.selected-vehicle{background:linear-gradient(135deg,#fff 0%,#f4f8ff 100%);border:1px solid #dce8e1;border-radius:8px;justify-content:flex-start;margin-bottom:12px;padding:12px}.selected-vehicle>div:nth-child(2){flex:1;min-width:0}.selected-vehicle .workflow-chip{flex:none}.selected-vehicle p{color:#65756c;margin-top:4px;font-size:.9rem}.selected-vehicle small{color:#65756c;margin-top:4px;font-size:.78rem;font-weight:900;display:block}.selected-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.selected-summary div{background:#fbfcfb;border:1px solid #e0e8e3;border-radius:8px;align-content:center;gap:5px;min-height:80px;padding:12px;display:grid}.selected-summary span,.selected-summary small{color:#65756c;font-size:.74rem;font-weight:900}.selected-summary strong{overflow-wrap:anywhere;color:#14201b;font-size:1rem}.pollution-renewal-card{background:#f7fbf8;border:1px solid #d6e3dc;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px;padding:10px;display:grid}.pollution-renewal-card div{background:#fff;border-radius:8px;grid-template-columns:34px minmax(0,1fr);align-content:center;column-gap:10px;min-height:72px;padding:10px;display:grid}.pollution-renewal-card svg{color:#207f5a;background:#e7f6ee;border-radius:8px;grid-row:span 2;width:34px;height:34px;padding:8px}.pollution-renewal-card span{color:#65756c;font-size:.72rem;font-weight:900}.pollution-renewal-card strong{color:#14201b;overflow-wrap:anywhere;font-size:.9rem}.pollution-renewal-card.due{background:#fff8e8;border-color:#f0c46a}.pollution-renewal-card.due svg{color:#a46709;background:#fff0c9}.pollution-renewal-card.expired{background:#fff7f6;border-color:#e9b8b2}.pollution-renewal-card.expired svg{color:#ad302b;background:#fae7e4}.pollution-renewal-card.missing{border-style:dashed}.vehicle-profile-strip{background:#fbfcfb;border:1px solid #d6e3dc;border-radius:8px;margin-bottom:12px;padding:12px}.vehicle-profile-strip .centre-panel-title p{color:#65756c;margin-top:4px;font-size:.8rem;font-weight:800}.vehicle-profile-strip button{color:#15392c;white-space:nowrap;background:#fff;border:1px solid #cbd8d0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 14px;font-weight:900;display:inline-flex}.vehicle-profile-page{gap:14px;display:grid}.vehicle-profile-header{background:linear-gradient(135deg,#f8fcfa 0%,#eef7ff 100%);border:1px solid #cbd8d0;border-radius:8px;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px;display:grid}.vehicle-profile-header>svg{color:#fff;background:#1d5fd2;border-radius:10px;width:58px;height:58px;padding:15px}.vehicle-profile-header h2{color:#0e1915;margin:3px 0 8px;font-size:clamp(2rem,5vw,3.2rem);line-height:1}.vehicle-profile-header p{color:#65756c;font-size:1rem;font-weight:800}.vehicle-detail-card{background:#fff;border:1px solid #d6e3dc;border-radius:8px;gap:12px;margin-bottom:12px;padding:14px;display:grid}.vehicle-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.vehicle-detail-grid div{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;align-content:center;gap:5px;min-height:68px;padding:10px;display:grid}.vehicle-detail-grid span,.vehicle-history-row span{color:#65756c;font-size:.74rem;font-weight:900}.vehicle-detail-grid strong,.vehicle-history-row strong{color:#14201b;overflow-wrap:anywhere;font-size:.92rem}.vehicle-history-list{gap:8px;display:grid}.vehicle-history-row{background:#fbfcfb;border:1px solid #e0e8e3;border-radius:8px;grid-template-columns:minmax(170px,1fr) minmax(170px,1fr) minmax(150px,.8fr) minmax(320px,auto);align-items:center;gap:10px;padding:10px;display:grid}.vehicle-history-row strong,.vehicle-history-row span{display:block}.certificate-format-chip{text-transform:uppercase;border-radius:999px;width:fit-content;margin-top:7px;padding:5px 9px;font-size:.66rem;font-style:normal;font-weight:900;display:inline-flex}.certificate-format-chip.new-format{color:#146647;background:#e4f3eb}.certificate-format-chip.legacy-format{color:#8a5b0d;background:#fff4d8}.vehicle-history-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:0;display:flex}.vehicle-history-actions button{color:#fff;white-space:nowrap;background:#15392c;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:0 11px;font-weight:900;display:inline-flex}.vehicle-history-actions .secondary-row-action{color:#15392c;background:#fff;border:1px solid #cbd8d0}.vehicle-history-actions .reissue-action{color:#15392c;background:#fff4d8;border:1px solid #f0d99a}.vehicle-history-actions .reissue-action:disabled{cursor:not-allowed;opacity:.58}.workflow-steps,.machine-grid,.operation-strip{gap:10px;display:grid}.workflow-steps{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:12px}.workflow-steps div{text-align:center;background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;align-content:center;justify-items:center;gap:7px;min-height:66px;display:grid}.workflow-steps span{color:#65756c;background:#e7eee9;border-radius:50%;place-items:center;width:24px;height:24px;font-size:.72rem;font-weight:900;display:grid}.workflow-steps strong{color:#52635a;font-size:.76rem}.workflow-steps .done{background:#f0faf5;border-color:#b6e3cb}.workflow-steps .done span{color:#fff;background:#207f5a}.workflow-steps .done strong{color:#15392c}.machine-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:12px}.machine-reading{background:#fbfcfb;border:1px solid #e0e8e3;border-radius:8px;align-content:center;gap:8px;min-height:104px;padding:14px;display:grid}.machine-reading span,.machine-reading em,.operation-strip span,.operation-strip small{color:#65756c;font-size:.76rem;font-weight:900}.machine-reading strong{color:#14201b;font-size:1.65rem;line-height:1}.machine-reading small{color:#65756c;margin-left:4px;font-size:.76rem}.machine-reading em{font-style:normal}.machine-reading.good{border-left:4px solid #207f5a}.machine-reading.info{border-left:4px solid #1d5fd2}.operation-strip{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:12px}.operation-strip>div{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;grid-template-columns:38px minmax(0,1fr);align-content:center;min-height:92px;padding:14px;display:grid}.operation-strip svg{color:#b66d0d;background:#fff4d8;border-radius:8px;grid-row:span 3;width:38px;height:38px;padding:9px}.operation-strip strong{color:#14201b;font-size:1.2rem}.operator-actions{justify-content:flex-start}.operator-actions button:nth-child(2){background:#1d5fd2}.operator-actions button:nth-child(3){background:#207f5a}.operator-actions button:nth-child(4){color:#15392c;background:#fff;border:1px solid #cbd8d0}.operator-actions .complete-job-action{color:#fff;background:#146647}.cash-register-panel{gap:14px;display:grid}.cash-register-note{color:#65756c;font-size:.86rem;font-weight:800;line-height:1.45}.cash-centre-scope{background:#f0faf5;border:1px solid #b6e3cb;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.cash-centre-scope span{color:#15392c;font-size:.86rem;font-weight:900}.cash-centre-scope button{color:#fff;white-space:nowrap;background:#15392c;border-radius:8px;min-height:36px;padding:0 12px;font-weight:900}.cash-period-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.cash-period-card{min-height:104px;color:inherit;text-align:left;background:#fbfcfb;border:1px solid #dce8e1;border-left:4px solid #207f5a;border-radius:8px;align-content:center;gap:6px;padding:12px;display:grid}.cash-period-card:hover,.cash-period-card.selected{background:#edf8f2;border-color:#207f5a;box-shadow:0 10px 22px #207f5a1a}.cash-period-card.selected{outline:3px solid #207f5a29}.cash-period-card span,.cash-period-card small{color:#65756c;font-size:.74rem;font-weight:900}.cash-period-card strong{color:#14201b;font-size:1.35rem}.cash-custom-range{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;grid-template-columns:repeat(2,minmax(180px,1fr)) auto;align-items:end;gap:10px;padding:12px;display:grid}.cash-custom-range button{color:#15392c;white-space:nowrap;background:#fff;border:1px solid #cbd8d0;border-radius:8px;min-height:42px;padding:0 12px;font-weight:900}.cash-selected-period{background:#f0faf5;border:1px solid #b6e3cb;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.cash-selected-period div{gap:4px;display:grid}.cash-selected-period strong{color:#15392c}.cash-selected-period span{color:#65756c;font-size:.82rem;font-weight:900}.cash-selected-period button{color:#fff;white-space:nowrap;background:#15392c;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 12px;font-weight:900;display:inline-flex}.cash-centre-table table span{color:#65756c;margin-top:4px;font-size:.76rem;font-weight:800;display:block}.clickable-centre-row{cursor:pointer}.clickable-centre-row:hover td{background:#f0faf5}.cash-receipt-heading{border-top:1px solid #e0e8e3;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;display:flex}.cash-receipt-heading div{gap:4px;display:grid}.cash-receipt-heading strong{color:#14201b;font-size:1rem}.cash-receipt-heading span{color:#65756c;font-size:.82rem;font-weight:800}.cash-receipt-heading em{color:#245dcf;white-space:nowrap;background:#e8f0ff;border-radius:999px;width:fit-content;padding:6px 10px;font-size:.78rem;font-style:normal;font-weight:900}.cash-receipt-columns{background:#f5f8f6;border-radius:8px;grid-template-columns:minmax(190px,1fr) minmax(170px,.8fr);gap:10px;padding:10px 12px;display:grid}.cash-receipt-columns.all-centres{grid-template-columns:minmax(170px,1fr) minmax(180px,1fr) minmax(150px,.7fr)}.cash-receipt-columns span{color:#66766d;text-transform:uppercase;font-size:.72rem;font-weight:900}.cash-receipt-list{gap:9px;display:grid}.cash-receipt-row{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;grid-template-columns:minmax(190px,1fr) minmax(170px,.8fr);align-items:center;gap:10px;min-height:66px;padding:11px 12px;display:grid}.cash-receipt-row.all-centres{grid-template-columns:minmax(170px,1fr) minmax(180px,1fr) minmax(150px,.7fr)}.cash-receipt-row strong,.cash-receipt-row span{display:block}.cash-receipt-row strong{color:#14201b;font-size:.92rem}.cash-receipt-row span{color:#65756c;margin-top:4px;font-size:.78rem;font-weight:800}.certificate-issued{color:#146647;background:#f0faf5;border:1px solid #b6e3cb;border-radius:8px;margin-top:12px;padding:12px;font-size:.86rem;font-weight:900}.download-fallback{background:#fff;border:1px solid #cbd8d0;border-radius:8px;gap:12px;margin-top:12px;padding:14px;display:grid}.download-fallback pre{color:#17201c;white-space:pre-wrap;background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;max-height:280px;margin:0;padding:12px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.78rem;line-height:1.55;overflow:auto}.certificate-preview{color:#14201b;background:#fff;border:1px solid #b6cfc1;border-radius:8px;overflow:hidden}.certificate-preview__header{color:#fff;background:#15392c;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:22px;min-height:108px;padding:22px;display:grid}.certificate-preview__header span,.certificate-preview__number span,.certificate-preview__grid span,.certificate-preview__footer span{text-transform:uppercase;font-size:.72rem;font-weight:900;display:block}.certificate-preview__header span{color:#bde9d2}.certificate-preview__header strong{color:#fff;overflow-wrap:anywhere;max-width:680px;margin-top:8px;font-size:clamp(1.65rem,3vw,2.4rem);line-height:1.02;display:block}.certificate-preview__header em{color:#fff;text-transform:uppercase;white-space:nowrap;background:#ffffff21;border:1px solid #ffffff5c;border-radius:999px;padding:8px 12px;font-size:.72rem;font-style:normal;font-weight:900}.certificate-preview__number{background:#fff;border-bottom:1px solid #dce8e1;justify-content:space-between;align-items:center;gap:14px;padding:16px 22px;display:flex}.certificate-preview__number span,.certificate-preview__grid span,.certificate-preview__footer span{color:#607168}.certificate-preview__number strong{color:#207f5a;font-size:1.25rem}.certificate-preview__grid{background:#dce8e1;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.certificate-preview__grid div{background:#fff;align-content:center;gap:7px;min-height:82px;padding:16px 22px;display:grid}.certificate-preview__grid strong,.certificate-preview__footer strong{overflow-wrap:anywhere;font-size:.94rem}.certificate-preview__section{background:#fff;border-top:1px solid #dce8e1;gap:12px;padding:18px 22px;display:grid}.certificate-preview__section h3{color:#15392c;text-transform:none;margin:0;font-size:1rem}.certificate-preview__readings{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.certificate-preview__readings div{background:#f8faf8;border:1px solid #dce8e1;border-left:4px solid #207f5a;border-radius:8px;gap:5px;padding:12px;display:grid}.certificate-preview__readings div.fail{background:#fff7f6;border-left-color:#ad302b}.certificate-preview__readings span{color:#607168;text-transform:uppercase;font-size:.7rem;font-weight:900}.certificate-preview__readings strong{color:#14201b;font-size:1.08rem}.certificate-preview__readings em,.certificate-preview__section li{color:#607168;font-size:.8rem;font-style:normal;font-weight:800;line-height:1.45}.certificate-preview__section ul{gap:6px;margin:0;padding-left:18px;display:grid}.certificate-preview__legacy{background:#fff9ec;border-top:1px solid #f0d99a;gap:6px;padding:18px 22px;display:grid}.certificate-preview__legacy strong{color:#8a5b0d;font-size:.95rem}.certificate-preview__legacy span{color:#65756c;font-size:.82rem;font-weight:800;line-height:1.45}.certificate-preview__footer{background:#fff;border-top:1px solid #dce8e1;grid-template-columns:minmax(0,1fr) 92px;align-items:center;gap:16px;padding:18px 22px;display:grid}.certificate-preview__qr{background:#fff;border:1px solid #dce8e1;border-radius:6px;place-items:center;width:92px;height:92px;padding:4px;display:grid}.certificate-preview__qr span,.certificate-preview__qr svg{width:82px;height:82px;display:block}.certificate-browser{z-index:30;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#edf2effa;grid-template-rows:auto minmax(0,1fr);display:grid;position:fixed;inset:0}.certificate-browser__bar{background:#fff;border-bottom:1px solid #d5e1da;justify-content:space-between;align-items:center;gap:16px;min-height:74px;padding:14px 22px;display:flex}.certificate-browser__bar h3{color:#16221d;font-size:1.08rem}.certificate-browser__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.certificate-browser__actions button:not(.small-icon-button),.certificate-browser__actions a{color:#fff;background:#15392c;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 14px;font-weight:900;text-decoration:none;display:inline-flex}.certificate-browser__body{place-items:start center;padding:24px;display:grid;overflow:auto}.certificate-browser__body .certificate-preview{width:min(100%,980px);box-shadow:0 18px 56px #15392c2e}.new-vehicle-form{background:#f8faf8;border:1px solid #dbe5df;border-radius:8px;gap:14px;margin-bottom:18px;padding:16px;display:grid}.queue-add-panel{background:linear-gradient(#fff 0%,#f7fbf8 100%)}.queue-add-tabs{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.queue-add-tabs button{color:#15392c;background:#fff;border:1px solid #cbd8d0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:0 14px;font-size:.82rem;font-weight:900;display:inline-flex}.queue-add-tabs button.active{color:#fff;background:#15392c;border-color:#15392c}.queue-lookup-grid,.queue-registration-form{gap:12px;display:grid}.queue-lookup-results{gap:8px;display:grid}.queue-lookup-row,.queue-lookup-empty{background:#fff;border:1px solid #dbe5df;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.queue-lookup-row div{gap:3px;min-width:0;display:grid}.queue-lookup-row strong{color:#10201a;font-size:.98rem}.queue-lookup-row span,.queue-lookup-row small,.queue-lookup-empty span,.queue-lookup-hint{color:#65756c;font-weight:800}.queue-lookup-row button,.queue-lookup-empty button{color:#fff;white-space:nowrap;background:#15392c;border:1px solid #15392c;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:0 12px;font-size:.78rem;font-weight:900;display:inline-flex}.queue-lookup-empty button{color:#15392c;background:#fff}.queue-lookup-hint{background:#fff;border:1px dashed #cbd8d0;border-radius:8px;margin:0;padding:12px}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.small-icon-button{color:#15392c;background:#fff;border:1px solid #cbd8d0;border-radius:8px;place-items:center;width:38px;height:38px;display:inline-grid}.issued-certificates{gap:14px;display:grid}.certificate-list{gap:10px;display:grid}.certificate-period-options{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;padding:10px;display:flex}.certificate-period-options button{color:#15392c;white-space:nowrap;background:#fff;border:1px solid #cbd8d0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:36px;padding:0 12px;font-weight:900;display:inline-flex}.certificate-period-options button em{color:#1d5fd2;background:#e7effd;border-radius:999px;place-items:center;min-width:24px;height:24px;padding:0 7px;font-size:.72rem;font-style:normal;font-weight:900;display:inline-grid}.certificate-period-options button.active{color:#fff;background:#15392c;border-color:#15392c}.certificate-period-options button.active em{color:#15392c;background:#fff}.certificate-filters{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;grid-template-columns:minmax(220px,1.15fr) minmax(170px,.8fr) repeat(2,minmax(160px,1fr)) auto;align-items:end;gap:12px;padding:12px;display:grid}.certificate-filters button{color:#15392c;white-space:nowrap;background:#fff;border:1px solid #cbd8d0;border-radius:8px;min-height:42px;padding:0 14px;font-weight:900}.certificate-row{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;grid-template-columns:minmax(180px,1.1fr) minmax(180px,1fr) 92px minmax(190px,auto);align-items:center;gap:12px;min-height:78px;padding:12px;display:grid}.certificate-row strong,.certificate-row span{display:block}.certificate-row strong{color:#14201b;font-size:.92rem}.certificate-row span{color:#65756c;margin-top:4px;font-size:.8rem;font-weight:800}.certificate-row em{color:#146647;text-transform:uppercase;background:#e4f3eb;border-radius:999px;width:fit-content;padding:6px 10px;font-size:.7rem;font-style:normal;font-weight:900}.certificate-row button{color:#fff;white-space:nowrap;background:#15392c;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 12px;font-weight:900;display:inline-flex}.certificate-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.certificate-row .secondary-row-action{color:#15392c;background:#fff;border:1px solid #cbd8d0}.pagination-bar{background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:12px;display:flex}.pagination-bar span{color:#53645b;font-size:.84rem;font-weight:900}.pagination-bar div{align-items:center;gap:8px;display:flex}.pagination-bar button{color:#15392c;background:#fff;border:1px solid #cbd8d0;border-radius:8px;min-height:38px;padding:0 12px;font-weight:900}.site-map{background:#fff;border:1px solid #becdc4e0;border-radius:8px;gap:16px;margin-top:22px;padding:20px;display:grid;box-shadow:0 16px 42px #15392c14}.site-map-heading{justify-content:space-between;align-items:end;gap:18px;display:flex}.site-map-heading h2{color:#16221d;margin-top:3px;font-size:1.25rem}.site-map-heading p{color:#65756c;max-width:620px;font-size:.9rem;line-height:1.5}.site-map-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.site-map-card{min-height:154px;color:inherit;background:#f8faf8;border:1px solid #e0e8e3;border-radius:8px;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:14px;text-decoration:none;display:grid}.site-map-card:hover{background:#edf8f2;border-color:#207f5a}.site-map-card>span{color:#207f5a;background:#e4f3eb;border-radius:8px;place-items:center;width:34px;height:34px;font-size:.82rem;font-weight:900;display:grid}.site-map-card strong,.site-map-card small,.site-map-card p{display:block}.site-map-card strong{color:#14201b;font-size:.98rem}.site-map-card small{color:#207f5a;text-transform:uppercase;margin:5px 0 9px;font-size:.72rem;font-weight:900}.site-map-card p{color:#65756c;font-size:.82rem;line-height:1.45}.empty-state{color:#65756c;font-weight:800}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{transform:scale(1.08);box-shadow:0 0 0 8px #1d5fd21f}}@media (width<=1180px){.control-band,.login-gate,.stats-grid,.dashboard-grid,.table-grid,.profile-page,.centre-metrics,.centre-workspace{grid-template-columns:repeat(2,minmax(0,1fr))}.centre-hero{grid-template-columns:minmax(300px,.9fr) minmax(480px,1fr)}.centre-hero-controls{grid-template-columns:minmax(220px,300px) minmax(0,1fr)}.lane-status-strip,.centre-switcher,.centre-hero-actions{justify-content:flex-start;max-width:none}.filter-card,.login-panel{grid-column:1/-1}.certificate-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.lane-setup-grid,.lane-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.machine-install-grid,.detected-machine-list{grid-template-columns:1fr}.troubleshoot-checks{grid-template-columns:repeat(2,minmax(0,1fr))}.cash-period-grid,.fee-manager-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.owner-workflow,.operations-summary-grid,.operations-centre-row,.test-parameters-grid,.test-parameter-preview,.role-rule-strip,.profile-form,.user-form,.user-form.compact,.password-reset-grid,.vehicle-history-summary,.customer-lookup-summary,.customer-document-grid,.centre-assignment>div:not(.centre-assignment-filters):not(.centre-assignment-list),.centre-assignment>.centre-assignment-filters,.centre-employee-grid,.site-map-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.selected-summary,.pollution-renewal-card,.vehicle-history-row,.operation-strip{grid-template-columns:1fr}.vehicle-detail-grid,.machine-grid,.form-grid,.certificate-row,.cash-custom-range,.tariff-lock,.tariff-lock.unlocked,.cash-receipt-row,.cash-receipt-row.all-centres,.tolerance-head,.tolerance-row,.archive-row,.certificate-filters,.audit-filter-grid,.vehicle-register-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.app-shell{width:min(100% - 24px,1500px);padding:88px 0 32px}.owner-public-shell{width:min(100% - 24px,1180px);padding:18px 0 32px}.side-menu{grid-template-rows:1fr;grid-template-columns:auto 1fr;gap:8px;width:auto;padding:7px;inset:10px 12px auto}.side-menu__brand{border-radius:10px;min-width:64px;min-height:52px}.side-menu__brand img{border-radius:8px}.side-menu nav{grid-auto-columns:minmax(74px,1fr);grid-auto-flow:column;align-content:stretch;overflow-x:auto}.side-menu a{border-radius:10px;min-height:52px}.side-menu a.active:before{width:auto;height:3px;inset:auto 14px -7px}.topbar,.brand-block,.filter-card,.centre-hero,.fee-manager-footer,.certificate-browser__bar,.pagination-bar{flex-direction:column;align-items:stretch}.topbar-actions{order:-1;max-width:none;position:static}.brand-wordmark{width:100%;min-width:0}.brand-copy{padding-right:0}.brand-wordmark strong,.brand-wordmark small,.topbar h1{white-space:normal}.operations-summary-grid,.operations-filters,.profile-page,.profile-form,.operations-centre-row{grid-template-columns:1fr}.topbar-actions,.centre-hero-actions,.operator-actions,.certificate-browser__actions,.certificate-actions,.vehicle-register-actions{justify-content:flex-start}.site-map-heading{flex-direction:column;align-items:stretch}.control-band,.login-gate,.stats-grid,.dashboard-grid,.table-grid,.date-controls,.reporting-controls,.locked-preview,.certificate-grid,.lane-setup-grid,.lane-form-grid,.audit-columns,.site-map-grid,.vehicle-register-controls,.centre-hero,.centre-hero-controls,.centre-hero-right,.centre-switcher,.centre-metrics,.centre-workspace,.selected-summary,.vehicle-detail-grid,.vehicle-history-row,.workflow-steps,.machine-grid,.operation-strip,.cash-period-grid,.cash-custom-range,.tariff-lock,.tariff-lock.unlocked,.form-grid,.testing-centre-form,.centre-directory-row,.certificate-row,.cash-receipt-row,.cash-receipt-row.all-centres,.cash-receipt-columns,.cash-receipt-columns.all-centres,.tolerance-head,.tolerance-row,.archive-row,.certificate-filters,.audit-filter-grid,.fee-manager-grid,.test-parameters-grid,.test-parameter-preview,.role-rule-strip,.user-form,.user-form.compact,.password-reset-grid,.vehicle-history-summary,.customer-lookup-form,.customer-lookup-summary,.customer-document-grid,.vehicle-edit-grid,.owner-workflow,.owner-search-form,.owner-record-summary,.owner-document-list,.centre-assignment>div:not(.centre-assignment-filters):not(.centre-assignment-list),.centre-assignment>.centre-assignment-filters,.centre-employee-grid,.certificate-preview__grid,.certificate-preview__readings,.certificate-preview__footer{grid-template-columns:1fr}.testing-centre-form__wide{grid-column:auto}.certificate-preview__number,.certificate-preview__header,.vehicle-profile-header,.cash-receipt-heading,.cash-centre-scope,.cash-selected-period,.map-picker__head,.geo-actions{flex-direction:column;align-items:stretch}.map-search,.queue-item{grid-template-columns:1fr}.queue-item-main{grid-template-columns:54px minmax(0,1fr)}.queue-item-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.queue-lookup-row,.queue-lookup-empty{grid-template-columns:1fr}.queue-lookup-row button,.queue-lookup-empty button{width:100%}.workflow-chip{grid-column:1/-1;width:100%;max-width:none}.topbar h1{font-size:2.45rem}.centre-hero h2{font-size:1.75rem}.lane-status-strip,.centre-hero-actions{justify-content:flex-start;max-width:none}.selected-vehicle{flex-direction:column;align-items:flex-start}}
