:root{--bg:#f3f6fa;--panel:#fff;--ink:#10151d;--muted:#687586;--line:#e2e8f0;--nav:#070b10;--nav2:#0e141d;--blue:#1167e8;--blue2:#0a4eb5;--good:#12865b;--warn:#a96b00;--bad:#c93535;--shadow:0 14px 40px rgba(16,35,60,.08)}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#f8fafc 0,#eef3f8 100%);color:var(--ink);font:14px Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.app{display:flex;min-height:100vh}.sidebar{position:fixed;z-index:10;width:265px;height:100vh;overflow:auto;background:linear-gradient(180deg,#05080c,#0c121a);color:#fff;padding:24px 16px;border-right:1px solid #1d2734}.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;padding:4px 8px 22px}.brand>span{display:grid;place-items:center;width:48px;height:48px;border-radius:13px;background:linear-gradient(135deg,#1681ff,#06439f);font-size:13px;font-weight:900;box-shadow:0 8px 24px #0059c44d}.brand strong{display:block;font-size:16px;letter-spacing:-.3px}.brand small{display:block;color:#7e8da0;font-weight:800;letter-spacing:2px;margin-top:3px}.profile-mini{display:flex;align-items:center;gap:10px;padding:14px 9px;margin-bottom:12px;border-block:1px solid #1b2531}.avatar{width:38px;height:38px;border-radius:11px;background:#14263e;display:grid;place-items:center;color:#6fb2ff;font-weight:800}.profile-mini b{display:block;font-size:12px}.profile-mini span{display:block;color:#8492a3;font-size:11px;margin-top:3px}nav a{display:flex;align-items:center;gap:8px;color:#b9c4d1;text-decoration:none;padding:11px 12px;border-radius:10px;margin:3px 0;transition:.15s}nav a:hover{background:#111c29;color:#fff}nav a.active{background:linear-gradient(90deg,#0d5fcf,#104b9c);color:#fff;box-shadow:0 7px 20px #005bc133}nav .count{margin-left:auto;background:#fff;color:#0b59bd;border-radius:99px;padding:2px 7px;font-size:10px}.sidebar-foot{position:sticky;bottom:0;margin:30px 8px 0;padding-top:14px;border-top:1px solid #1b2531;color:#7f8b99;font-size:11px}.sidebar-foot span{color:#4d637c}.content{margin-left:265px;width:calc(100% - 265px);padding:28px 34px 70px;max-width:1750px}.topbar{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:25px}.topbar h1{margin:4px 0;font-size:29px;letter-spacing:-.8px}.eyebrow{font-size:10px;letter-spacing:2.4px;color:var(--blue);font-weight:900}.date-line{color:var(--muted);font-size:12px}.top-actions{display:flex;gap:12px;align-items:center}.search{width:min(430px,42vw)}input,select,textarea{width:100%;background:#fff;color:var(--ink);border:1px solid #d5dee9;border-radius:9px;padding:12px 13px;margin:5px 0 12px;outline:none}input:focus,select:focus,textarea:focus{border-color:#4b96f8;box-shadow:0 0 0 3px #1167e812}textarea{min-height:110px;resize:vertical}.btn{display:inline-block;border:0;border-radius:9px;padding:11px 16px;background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;font-weight:800;text-decoration:none;cursor:pointer;box-shadow:0 7px 18px #1167e81c}.btn:hover{filter:brightness(1.05)}.btn.gray{background:#17212d}.btn.light{background:#eaf2ff;color:#0756b8;box-shadow:none}.btn.danger{background:#b92e35}.btn.good{background:#0d8056}.btn.small{padding:7px 10px;font-size:12px}.card{background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:16px;padding:20px;margin-bottom:18px;box-shadow:var(--shadow)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.metric{font-size:32px;font-weight:900;letter-spacing:-1px;margin-top:6px}.metric-label{color:var(--muted);font-weight:600}.muted{color:var(--muted)}.flash{background:#eaf8f2;border:1px solid #bde7d4;color:#096442;padding:12px 14px;border-radius:10px;margin-bottom:18px}.notice{padding:14px;border-left:4px solid var(--blue);background:#f7faff;border-radius:9px;margin:9px 0}.notice.warn{border-left-color:#d68b00;background:#fffaf0}.notice.bad{border-left-color:#c93535;background:#fff5f5}.notice.good{border-left-color:#12865b;background:#f2fbf7}.top{display:flex;justify-content:space-between;gap:15px;align-items:center}.actions{display:flex;gap:8px;flex-wrap:wrap}table{width:100%;border-collapse:collapse}th,td{padding:13px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:#647184}.badge{display:inline-block;border-radius:999px;padding:5px 9px;background:#eef2f6;color:#556272;font-size:11px;font-weight:800}.badge.good{background:#e5f7ef;color:#0b7950}.badge.warn{background:#fff1d5;color:#9a6500}.badge.bad{background:#ffe7e7;color:#b12d2d}.hero{background:linear-gradient(135deg,#08111d,#102946 58%,#1167e8);color:#fff;border-radius:20px;padding:28px;box-shadow:0 20px 45px #0b4a9330}.hero h2{font-size:30px;margin:5px 0 8px}.hero p{color:#c8d8ea;max-width:680px}.stat-card{position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;right:-28px;bottom:-35px;width:110px;height:110px;border-radius:50%;background:#1167e80b}.progress{height:9px;background:#e8edf3;border-radius:99px;overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,#0e61d1,#2e91ff)}.timeline{border-left:2px solid #dbe6f2;margin-left:8px;padding-left:20px}.timeline-item{position:relative;padding:0 0 18px}.timeline-item:before{content:"";position:absolute;left:-27px;top:4px;width:10px;height:10px;border-radius:50%;background:#1167e8;box-shadow:0 0 0 4px #e8f1fd}.login-page{min-height:100vh;display:grid;grid-template-columns:1.15fr .85fr;background:#05080d}.login-art{padding:70px;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at 70% 20%,#155fc033 0,transparent 40%),linear-gradient(135deg,#05080d,#0b1625);color:#fff}.login-art h1{font-size:55px;line-height:1;letter-spacing:-3px;max-width:650px;margin:22px 0}.login-art p{max-width:560px;color:#9fb0c4;font-size:16px;line-height:1.7}.login-box{background:#f5f8fb;display:flex;align-items:center;justify-content:center;padding:35px}.login-card{width:min(450px,100%);background:#fff;border-radius:22px;padding:35px;box-shadow:0 30px 80px #00000020}.login-brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}.login-brand span{display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:linear-gradient(135deg,#1681ff,#06439f);color:#fff;font-weight:900}.login-brand strong{font-size:18px}.login-brand small{display:block;color:#768496;margin-top:2px}.notif-dot{position:relative;color:#0b5ec8;text-decoration:none;font-size:20px}.notif-dot i{position:absolute;top:-7px;right:-9px;background:#c93535;color:#fff;border-radius:99px;font-size:9px;padding:2px 5px;font-style:normal}.footer{position:fixed;bottom:0;right:0;padding:7px 18px;color:#8995a5;font-size:10px;background:#f3f6fae8}.empty{padding:40px;text-align:center;color:var(--muted)}@media(max-width:950px){.sidebar{position:static;width:100%;height:auto}.app{display:block}.content{margin:0;width:100%;padding:18px}.topbar{align-items:stretch;flex-direction:column}.search{width:100%}.login-page{grid-template-columns:1fr}.login-art{display:none}}@media(max-width:650px){.card{padding:15px;overflow:auto}.top{align-items:flex-start;flex-direction:column}table{min-width:680px}.grid{grid-template-columns:1fr}.hero h2{font-size:24px}}@media print{.sidebar,.topbar,.footer,.no-print{display:none!important}.content{margin:0;width:100%;padding:0}.card{box-shadow:none;border:0}}

/* EMED request form improvements */
.required{color:var(--bad);font-weight:800}.optional{color:var(--muted);font-weight:500}.field-help{display:block;color:var(--muted);font-size:12px;margin:-6px 0 12px}.section-heading{padding:4px 0 4px;margin-bottom:4px}.section-heading h3{margin:4px 0 4px;font-size:18px}.section-heading p{margin:0 0 10px}.problem-heading{margin-top:14px;border-top:1px solid var(--line);padding-top:20px}.problem-box{min-height:170px;line-height:1.55}.details-box{min-height:125px;line-height:1.5}.form-actions{display:flex;justify-content:flex-end;margin-top:4px}

/* Professional portal login */
.login-page{position:relative;overflow:hidden}.login-art{position:relative;overflow:hidden}.login-art>*{position:relative;z-index:2}.login-art:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(17,103,232,.08),transparent 45%);pointer-events:none}.login-orb{position:absolute!important;border-radius:50%;filter:blur(2px);z-index:1!important;pointer-events:none}.orb-one{width:420px;height:420px;right:-170px;top:-150px;border:1px solid #4c9cff30;background:#1167e80d}.orb-two{width:280px;height:280px;left:-140px;bottom:-100px;border:1px solid #4c9cff20;background:#1167e808}.login-art h1{font-weight:800}.login-art h1 span{color:#68adff}.login-card{border:1px solid #e5ebf2}.secure-pill{display:inline-flex;align-items:center;gap:7px;border:1px solid #dbe7f5;background:#f6faff;color:#1263c4;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:900;letter-spacing:1.1px;margin-bottom:18px}.login-submit{display:flex;justify-content:center;align-items:center;gap:12px}.login-submit span{font-size:18px;line-height:0}.login-card form label{display:block;font-weight:800;font-size:12px;margin-top:5px}.login-card input{min-height:46px}.login-card .notice{font-size:12px}.login-card a{color:#075ecb;font-weight:700}
.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.photo-tile{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#f8fafc}.photo-tile img{display:block;width:100%;height:160px;object-fit:cover}.photo-meta{padding:11px}.photo-meta small{color:var(--muted);display:block;margin-top:4px}.share-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:8px}.share-row select{width:auto;min-width:170px;margin:0}.file-drop{border:1px dashed #aebed0;border-radius:12px;padding:14px;background:#f8fbff}.visibility-note{font-size:12px;color:var(--muted);margin-top:-5px;margin-bottom:10px}
@media(max-width:650px){.login-card{padding:25px}.login-art{padding:40px 25px}}

/* Premium authentication */
.auth-body{min-height:100vh;margin:0;background:#fff;color:#111827;font-family:Inter,Arial,sans-serif}
.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.08fr) minmax(420px,.92fr)}
.auth-panel{position:relative;overflow:hidden;padding:48px 7vw;background:linear-gradient(145deg,#080b10 0%,#151b24 58%,#8b0714 160%);color:#fff;display:flex;flex-direction:column;justify-content:space-between}
.auth-panel:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-220px;bottom:-220px;box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.018)}
.auth-logo,.auth-mobile-logo{display:flex;align-items:center;gap:12px}
.auth-logo span,.auth-mobile-logo{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#f31b31,#a90018);font-weight:900;letter-spacing:-1px;box-shadow:0 12px 30px rgba(236,18,42,.28)}
.auth-logo b{display:block;font-size:17px}.auth-logo small{display:block;color:#aeb8c5;font-size:11px;margin-top:3px;letter-spacing:1.3px;text-transform:uppercase}
.auth-intro{max-width:650px;position:relative;z-index:1;margin:auto 0}
.auth-kicker{font-size:11px;letter-spacing:3px;font-weight:900;color:#ff5364;margin-bottom:18px}
.auth-intro h1{font-size:clamp(38px,4.5vw,64px);line-height:1.02;letter-spacing:-2.5px;margin:0 0 22px}.auth-intro h1 strong{color:#ff3147}.auth-intro p{font-size:16px;line-height:1.75;color:#b7c0cc;max-width:580px}
.auth-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.auth-points span{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);padding:9px 12px;border-radius:999px;color:#d7dee7;font-size:12px}
.auth-form-wrap{display:grid;place-items:center;padding:40px;background:#fff}
.auth-form{width:min(430px,100%)}.auth-form .secure-pill{display:inline-block;border:1px solid #f0d4d8;background:#fff6f7;color:#b20c21;border-radius:999px;padding:7px 11px;font-size:10px;font-weight:900;letter-spacing:1.5px}
.auth-form h2{font-size:34px;letter-spacing:-1px;margin:24px 0 7px}.auth-form>p.muted{margin:0 0 25px}
.auth-form label{display:block;font-size:12px;font-weight:800;margin-top:15px;color:#303a47}.auth-form input{height:48px;border-radius:11px;margin:7px 0 0;border-color:#d8dee7}.auth-form input:focus{border-color:#e21a31;box-shadow:0 0 0 3px rgba(226,26,49,.09)}
.auth-submit{width:100%;height:50px;margin-top:22px!important;background:linear-gradient(135deg,#ed1b32,#b4081c)!important;box-shadow:0 10px 25px rgba(210,18,42,.2)!important}.auth-submit span{float:right;font-size:18px}
.auth-forgot{display:block;text-align:center;margin-top:18px;color:#b4081c;text-decoration:none;font-weight:700;font-size:12px}
.auth-divider{display:flex;align-items:center;gap:12px;margin:25px 0;color:#9aa4b1;font-size:11px}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:#e7ebf0;flex:1}
.portal-link{display:block;padding:15px 16px;border:1px solid #e1e6ed;border-radius:12px;text-decoration:none;color:#171d27;background:#fbfcfd}.portal-link:hover{border-color:#efb7bf;background:#fff7f8}.portal-link span{display:block;font-weight:800}.portal-link small{display:block;color:#788494;margin-top:4px}.auth-footer{display:block;text-align:center;color:#a0a9b5;margin-top:28px}.auth-mobile-logo{display:none}
@media(max-width:850px){.auth-shell{grid-template-columns:1fr}.auth-panel{min-height:280px;padding:28px 25px}.auth-intro{margin-top:70px}.auth-intro h1{font-size:38px}.auth-intro p,.auth-points{display:none}.auth-form-wrap{padding:35px 24px}.auth-mobile-logo{display:grid;margin-bottom:20px}.auth-panel .auth-logo{display:none}}
/* Portal filters */
.filter-bar{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr)) auto;gap:10px;align-items:end;background:#f7f9fc;border:1px solid #e1e7ef;border-radius:14px;padding:14px;margin-bottom:16px}.filter-bar label{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:1px;color:#748093}.filter-bar input,.filter-bar select{margin:5px 0 0}.filter-actions{display:flex;gap:8px}.table-wrap{overflow:auto}.status-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px;margin-bottom:16px}.status-card{display:block;text-decoration:none;color:inherit}.status-card .metric{font-size:27px}.status-card.active{border-color:#e21a31;box-shadow:0 8px 25px rgba(226,26,49,.08)}
@media(max-width:1050px){.filter-bar{grid-template-columns:repeat(2,minmax(150px,1fr))}.status-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.filter-bar,.status-grid{grid-template-columns:1fr}}
/* BMW-inspired blue login refresh using the East Midlands Vans workshop image */
.auth-body{background:#061326;color:#fff}.auth-shell{position:relative;isolation:isolate;grid-template-columns:minmax(460px,1.1fr) minmax(420px,.9fr);overflow:hidden}.auth-shell:before{content:"";position:absolute;inset:-24px;background-image:linear-gradient(110deg,rgba(2,18,43,.38),rgba(0,62,126,.18) 52%,rgba(5,24,53,.30)),url('login-workshop.jpg');background-size:cover;background-position:center;filter:blur(9px);transform:scale(1.08);z-index:-2}.auth-shell:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(72,158,255,.14),transparent 34%),linear-gradient(135deg,rgba(0,38,84,.08),rgba(0,0,0,.02));z-index:-1}.auth-panel{background:linear-gradient(135deg,rgba(1,18,43,.55),rgba(0,61,126,.28));backdrop-filter:blur(4px);border-right:1px solid rgba(132,196,255,.18)}.auth-panel:after{border-color:rgba(89,171,255,.16);box-shadow:0 0 0 70px rgba(69,157,255,.045),0 0 0 140px rgba(69,157,255,.025)}.auth-logo span,.auth-mobile-logo{background:linear-gradient(135deg,#3ca8ff,#0057a8);box-shadow:0 12px 30px rgba(22,125,231,.34)}.auth-kicker{color:#73bcff}.auth-intro h1 strong{color:#5cb5ff}.auth-form-wrap{background:rgba(248,252,255,.95);backdrop-filter:blur(16px)}.auth-form .secure-pill{border-color:#cfe7fb;background:#f0f8ff;color:#005da9}.auth-form input:focus{border-color:#147ed1;box-shadow:0 0 0 3px rgba(20,126,209,.12)}.auth-submit{background:linear-gradient(135deg,#147ed1,#004f96)!important;box-shadow:0 10px 25px rgba(20,126,209,.26)!important}.auth-forgot{color:#005da9}.portal-link:hover{border-color:#8bc9ff;background:#f4faff}.auth-panel .auth-points span{border-color:rgba(131,198,255,.22);background:rgba(0,88,178,.16)}
.check-row{display:block;margin:10px 0;font-weight:700}.check-row input{width:auto;height:auto;margin-right:8px}.portal-toggles{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.portal-toggles label{font-size:12px;white-space:nowrap}.portal-toggles input{width:auto;margin-right:4px}
/* v22 EMED workflow control centre */
.emed-control .inline{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.emed-control td{vertical-align:top}.emed-control input{max-width:125px;padding:7px}.emed-control .btn{margin-top:5px}

/* EMV workflow control centre */
.workflow-card{padding:22px}.workflow-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.workflow-head h3{margin:5px 0;font-size:20px}.po-pill{min-width:150px;padding:11px 14px;border:1px solid #ead8b4;background:#fffaf0;border-radius:13px;text-align:right}.po-pill span{display:block;font-size:10px;letter-spacing:1.5px;color:#9a6500;font-weight:900}.po-pill strong{display:block;margin-top:3px;color:#8a5a00;font-size:16px}.po-pill.is-set{border-color:#bfe5d2;background:#f1fbf6}.po-pill.is-set span,.po-pill.is-set strong{color:#08744d}.workflow-track{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:24px 0 18px}.workflow-step{position:relative;min-height:95px;padding:13px 10px;border:1px solid var(--line);border-radius:13px;background:#f8fafc}.workflow-step.done{border-color:#bfe5d2;background:#f2fbf7}.workflow-step.current{border-color:#8dbcf5;background:#f5f9ff}.workflow-dot{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#dce4ee;color:#5e6c7d;font-weight:900;margin-bottom:9px}.workflow-step.done .workflow-dot{background:#12865b;color:#fff}.workflow-step.current .workflow-dot{background:#1167e8;color:#fff}.workflow-step b{display:block;font-size:12px}.workflow-step small{display:block;color:var(--muted);margin-top:5px;line-height:1.35}.stage-send{margin-top:9px}.workflow-summary{display:flex;align-items:end;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:15px}.workflow-summary>div{min-width:120px}.workflow-summary span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.7px}.workflow-summary b{display:block;margin-top:4px}.po-card{border:2px solid #e8d5ad}.po-highlight{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 16px;margin:12px 0;border-radius:12px;background:#fff8e9;border:1px solid #efd9a9}.po-highlight span{color:#8a5a00;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:1px}.po-highlight strong{font-size:22px;color:#744b00;letter-spacing:.5px}.po-inline{display:inline-block;padding:4px 8px;border-radius:7px;background:#fff1d5;color:#8a5a00;font-weight:900}.workflow-legend{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.workflow-legend span{padding:11px;border-radius:10px;background:#f5f8fb;border:1px solid var(--line);font-weight:800;font-size:12px}
@media(max-width:900px){.workflow-track{grid-template-columns:1fr}.workflow-step{min-height:auto}.workflow-legend{grid-template-columns:1fr}.workflow-head{flex-direction:column}.po-pill{width:100%;text-align:left}}

.meeting-stats{margin:16px 0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.meeting-filter{align-items:end}.meeting-filter .wide{grid-column:span 2}.meeting-record{display:flex;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}.meeting-date{width:62px;height:62px;border-radius:14px;background:#f2f6fb;border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none}.meeting-date b{font-size:22px;line-height:1}.meeting-date span{font-size:10px;font-weight:900;letter-spacing:1px;color:var(--muted);margin-top:4px}.meeting-main{flex:1;min-width:0}.meeting-main h3{margin:0}.meeting-type{display:inline-block;margin:6px 0;padding:4px 8px;border-radius:7px;background:#edf4ff;font-size:11px;font-weight:800}.meeting-section{margin:12px 0;padding:11px 13px;border-left:3px solid #ccd7e5;background:#fafbfd;border-radius:0 9px 9px 0}.meeting-section.outcome{background:#f2fbf7;border-left-color:#78caa6}.meeting-section p{margin:5px 0 0;line-height:1.55}.meeting-actions{display:flex;gap:7px;align-items:flex-start}.meeting-actions form{margin:0}@media(max-width:760px){.form-grid{grid-template-columns:1fr}.meeting-filter .wide{grid-column:auto}.meeting-record{flex-wrap:wrap}.meeting-main{width:calc(100% - 78px)}.meeting-actions{width:100%;margin-left:78px}}
.progress-hero{background:linear-gradient(135deg,#fff,#f5f8fc)}.vehicle-progress-card{border:1px solid var(--line);border-radius:16px;padding:20px;margin:14px 0;background:#fff}.vpc-head{display:flex;justify-content:space-between;gap:15px}.vpc-head h3{margin:4px 0;font-size:19px}.vpc-side{display:flex;gap:7px;align-items:flex-start}.vpc-meta{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:16px 0}.vpc-meta>div{padding:10px 12px;background:#f7f9fc;border-radius:10px}.vpc-meta span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted)}.vpc-meta b{display:block;margin-top:4px}.vpc-track{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.vpc-step{display:flex;align-items:center;gap:8px;padding:9px;border-radius:10px;background:#f4f6f9;color:#667383}.vpc-step>span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#dbe2eb;font-size:11px;font-weight:900}.vpc-step small{font-weight:800}.vpc-step.done{background:#effaf5;color:#08744d}.vpc-step.done>span{background:#11855b;color:#fff}.vpc-step.current{background:#eef5ff;color:#1167e8}.vpc-step.current>span{background:#1167e8;color:#fff}.vpc-foot{display:grid;grid-template-columns:1fr auto;gap:15px;align-items:center;margin-top:15px}.share-box{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fafbfd}.share-tools{display:flex;gap:8px;margin-bottom:10px}.share-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.share-person{display:flex!important;align-items:center;gap:9px;padding:10px;border:1px solid var(--line);border-radius:9px;background:#fff}.share-person span{display:flex;flex-direction:column}.share-person small{color:var(--muted);margin-top:2px}.filter-bar .wide{min-width:240px}@media(max-width:900px){.vpc-meta{grid-template-columns:repeat(2,1fr)}.vpc-track{grid-template-columns:1fr}.vpc-foot{grid-template-columns:1fr}.share-grid{grid-template-columns:1fr}}@media(max-width:600px){.vpc-head{flex-direction:column}.vpc-meta{grid-template-columns:1fr}}
/* V24 quotation, invoice and reception intake refresh */
.quote-row{display:grid;grid-template-columns:120px minmax(220px,1fr) 95px 120px 105px auto;gap:8px;align-items:center;margin-bottom:9px}.quote-row input,.quote-row select{margin:0}.line-total{font-weight:900;text-align:right}.radio-grid{display:flex;gap:16px;flex-wrap:wrap;margin:10px 0}.email-card{border:1px solid #d9e7f5;background:linear-gradient(145deg,#fff,#f7fbff)}.email-form{display:grid;grid-template-columns:1fr auto;gap:9px;align-items:end}.email-form label{grid-column:1/-1}.quote-hero,.invoice-hero{background:linear-gradient(135deg,#fff,#f4f8fc)}.invoice-form{display:grid;gap:16px}.invoice-lines{display:grid;gap:8px}.invoice-line{display:grid;grid-template-columns:minmax(220px,1fr) 100px 130px 100px auto;gap:8px;align-items:center}.invoice-line input{margin:0}.invoice-line output{font-weight:900;text-align:right}.icon-btn{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 11px;cursor:pointer}.quote-history-line{padding:4px 0;border-bottom:1px solid #edf0f4}.quote-history-line:last-child{border-bottom:0}.quote-history-line span{color:var(--muted);margin-left:8px}.public-intake{min-height:100vh;display:grid;place-items:center;padding:28px;background:linear-gradient(135deg,#07172e,#0b3765)}.public-card{width:min(920px,100%);background:#fff;border-radius:24px;padding:34px;box-shadow:0 25px 70px rgba(0,0,0,.25)}.public-brand img{max-width:300px;width:100%;height:auto;margin-bottom:22px}.dropoff-form{display:grid;gap:20px}.intake-section{padding:20px;border:1px solid #e1e7ef;border-radius:16px;background:#fbfcfe}.intake-title{display:flex;gap:12px;align-items:center;margin-bottom:18px}.intake-title>span{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#e21a31;color:#fff;font-weight:900}.intake-title b,.intake-title small{display:block}.intake-title small{color:var(--muted);margin-top:3px}.approval-note{padding:13px 15px;border-radius:11px;background:#f4f7fb;border:1px solid #dfe6ef;color:#5d6978;font-size:13px}.success-screen{text-align:center;padding:30px 10px}.success-icon{width:68px;height:68px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:#e8f8f0;color:#08744d;font-size:34px;font-weight:900}.honeypot{position:absolute;left:-10000px;opacity:0}.dropoff-link{border-color:#cfe1f5;background:#f7fbff}
@media(max-width:850px){.quote-row{grid-template-columns:1fr 1fr}.quote-row input[name="description[]"]{grid-column:1/-1}.line-total{justify-self:start}.invoice-line{grid-template-columns:1fr 100px 120px auto}.invoice-line input:first-child{grid-column:1/-1}.email-form{grid-template-columns:1fr}.public-card{padding:22px;border-radius:18px}}

/* v26 professional portal/access/quotation refresh */
.emed-portal-hero,.access-hero,.quote-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:30px 32px;border:1px solid #d9e7f6;border-radius:22px;background:linear-gradient(135deg,#ffffff 0%,#f2f8ff 100%);box-shadow:0 18px 50px rgba(17,103,232,.07);margin-bottom:18px}.emed-portal-hero h2,.access-hero h2,.quote-hero h2{margin:6px 0 7px;font-size:28px}.emed-portal-hero p,.access-hero p,.quote-hero p{margin:0;color:#637286;max-width:760px}.emed-hero-actions,.quote-hero-actions{display:flex;gap:9px;flex-wrap:wrap}.emed-quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.emed-quick-card{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid #dfe8f2;border-radius:16px;background:#fff;text-decoration:none;color:#10151d;box-shadow:0 8px 25px rgba(16,35,60,.04);transition:.18s}.emed-quick-card:hover{transform:translateY(-2px);border-color:#a9cff7}.emed-quick-card.attention{border-color:#9fc8f5;background:#f5faff}.emed-quick-card>span{width:35px;height:35px;border-radius:10px;display:grid;place-items:center;background:#eaf3ff;color:#1167e8;font-size:11px;font-weight:900}.emed-quick-card div{flex:1}.emed-quick-card b,.emed-quick-card small{display:block}.emed-quick-card small{color:#708095;margin-top:3px}.emed-quick-card strong{color:#1167e8}.emed-filter{padding:15px 18px}.section-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:16px}.section-head h2{margin:4px 0}.section-count,.access-stat{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#edf5ff;color:#1167e8;font-weight:900}.emed-vehicle-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.emed-vehicle{padding:17px;border:1px solid #e0e7ef;border-radius:15px;background:#fbfcfe}.reg-pill,.quote-ref{display:inline-block;padding:5px 9px;border-radius:7px;background:#101820;color:#fff;font-weight:900;letter-spacing:1px;font-size:12px}.emed-vehicle h3{margin:12px 0 3px}.emed-vehicle p{margin:0;color:#718096}.emed-quote-card{border:1px solid #dfe6ee;border-radius:18px;margin:14px 0;padding:19px;background:#fff}.emed-quote-top{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.emed-quote-top h3{margin:9px 0 3px}.emed-quote-top h3 small{font-weight:500;color:#687586}.emed-quote-top p{margin:0;color:#748094}.status-chip{display:inline-flex;padding:6px 10px;border-radius:8px;background:#eef2f6;font-size:10px;font-weight:900;letter-spacing:.7px}.status-chip.good{background:#e8f8f0;color:#08744d}.status-chip.warn{background:#fff6df;color:#916000}.status-chip.bad{background:#ffeded;color:#b52c2c}.quote-breakdown{overflow:auto;margin-top:14px}.quote-breakdown table{min-width:650px}.quote-breakdown tfoot td{font-weight:700}.quote-breakdown tfoot .grand td{font-size:16px;border-top:2px solid #d9e1eb;padding-top:11px}.emed-quote-actions{display:flex;gap:10px;align-items:center;margin-top:15px;flex-wrap:wrap}.revision-form{display:flex;gap:7px;flex:1;min-width:280px}.revision-form input{margin:0}.po-required-box{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:15px;padding:16px;border:2px solid #b8d8fa;border-radius:14px;background:#f5faff}.po-required-box>div span{display:block;color:#687586;margin-top:3px}.po-entry{display:flex;gap:8px;min-width:420px}.po-entry input{margin:0}.authorised-box{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:15px;padding:14px 16px;border-radius:12px;background:#effaf5;border:1px solid #bfe5d2;color:#08744d}.quote-workspace{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px}.quote-builder{min-width:0}.quote-table-head,.quote-row{display:grid;grid-template-columns:115px minmax(220px,1fr) 90px 125px 105px 38px;gap:8px;align-items:center}.quote-table-head{padding:0 10px 7px;color:#718096;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.7px}.quote-row{padding:9px 10px;border:1px solid #e2e8f0;border-radius:12px;background:#fbfcfe;margin-bottom:8px}.quote-row input,.quote-row select{margin:0}.qty-wrap{position:relative}.qty-fixed{display:none;color:#687586;font-size:12px;font-weight:700;padding:10px 0}.line-total{font-weight:900;text-align:right}.icon-btn{border:1px solid #dce4ed;background:#fff;border-radius:9px;padding:8px 10px;cursor:pointer;font-size:18px;line-height:1}.add-line{margin-top:3px}.tax-panel{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px;margin-top:16px;border:1px solid #dce7f3;border-radius:14px;background:#f7fbff}.tax-panel b,.tax-panel span{display:block}.tax-panel span{color:#687586;font-size:12px;margin-top:3px}.vat-toggle{display:flex;align-items:center;gap:9px;white-space:nowrap;font-weight:800}.vat-toggle input{width:auto;margin:0}.quote-total-box{display:flex;justify-content:flex-end;gap:28px;padding:17px 0;border-bottom:1px solid #e4e9ef}.quote-total-box div{min-width:100px}.quote-total-box span{display:block;color:#718096;font-size:11px;text-transform:uppercase;letter-spacing:.6px}.quote-total-box strong{display:block;margin-top:4px;font-size:17px}.quote-total-box .grand strong{font-size:23px;color:#1167e8}.quote-create-btn{margin-top:16px}.quote-steps{display:grid;gap:10px;margin-top:15px}.quote-steps>div{display:flex;align-items:center;gap:10px;padding:11px;border-radius:10px;background:#f5f7fa;color:#687586}.quote-steps b{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#dce5ef;color:#536275}.quote-steps .done{background:#effaf5;color:#08744d}.quote-steps .done b{background:#12865b;color:#fff}.quote-history-grid{display:grid;gap:8px}.quote-history-card{display:grid;grid-template-columns:1fr auto auto;gap:15px;align-items:center;padding:13px 15px;border:1px solid #e2e8f0;border-radius:11px}.quote-history-card small{display:block;color:#718096;margin-top:3px}.access-hero{background:linear-gradient(135deg,#fff,#f1f7ff)}.access-stat{width:70px;height:70px;display:flex;flex-direction:column}.access-stat strong{font-size:22px;line-height:1}.access-stat span{font-size:10px;text-transform:uppercase;letter-spacing:.7px}.access-create-grid{align-items:start}.role-picker{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin:7px 0 12px}.role-picker label{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid #dfe6ee;border-radius:9px;background:#fafcfe}.role-picker input,.permission-grid input{width:auto;margin:0}.role-picker.compact{grid-template-columns:repeat(3,1fr)}.permission-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin:10px 0}.permission-grid label{font-size:12px;color:#526174}.user-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.user-card{padding:17px;border:1px solid #dfe6ee;border-radius:15px;background:#fff}.user-card-top{display:flex;gap:11px;align-items:center}.user-avatar{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#eaf3ff;color:#1167e8;font-weight:900}.user-card-top>div:nth-child(2){flex:1;min-width:0}.user-card-top h3{margin:0}.user-card-top p{margin:3px 0 0;color:#718096;font-size:12px;overflow:hidden;text-overflow:ellipsis}.role-tags{display:flex;gap:6px;flex-wrap:wrap;margin:13px 0}.role-tag{padding:5px 8px;border-radius:7px;background:#eef5ff;color:#155fae;font-size:10px;font-weight:900}.user-card details{border-top:1px solid #edf0f4;padding:10px 0}.user-card summary{cursor:pointer;font-weight:800;font-size:12px}.access-form{margin-top:10px}.owner-note,.temp-note{margin-top:10px;padding:9px 11px;border-radius:9px;background:#f7f9fb;color:#687586;font-size:12px}.temp-note{background:#fff8e9;color:#8a5a00}.user-actions{display:flex;gap:7px;margin-top:12px}.auth-help{margin:15px 0;padding:13px 14px;border:1px solid #dbe8f5;border-radius:11px;background:#f6faff;color:#536275;font-size:12px}.auth-help b,.auth-help span,.auth-help a{display:block}.auth-help span{margin-top:3px}.auth-help a{margin-top:5px;color:#1167e8;font-weight:800;text-decoration:none}
@media(max-width:1100px){.emed-quick-grid{grid-template-columns:repeat(2,1fr)}.emed-vehicle-grid{grid-template-columns:repeat(2,1fr)}.quote-workspace{grid-template-columns:1fr}.user-grid{grid-template-columns:1fr}}
@media(max-width:760px){.emed-portal-hero,.access-hero,.quote-hero{flex-direction:column;align-items:flex-start;padding:22px}.emed-quick-grid,.emed-vehicle-grid{grid-template-columns:1fr}.po-required-box{flex-direction:column;align-items:stretch}.po-entry{min-width:0;flex-direction:column}.quote-table-head{display:none}.quote-row{grid-template-columns:1fr 1fr}.quote-row input[name="description[]"]{grid-column:1/-1}.quote-row .qty-wrap{grid-column:1}.quote-row .line-total{text-align:left}.tax-panel,.quote-total-box{flex-direction:column;align-items:flex-start}.role-picker.compact,.role-picker,.permission-grid{grid-template-columns:1fr}.revision-form{flex-direction:column}.quote-history-card{grid-template-columns:1fr}.user-card-top{align-items:flex-start}.user-card-top .badge{margin-left:auto}}

/* Premium general-customer registration */
.customer-register-body{min-height:100vh;margin:0;background:linear-gradient(135deg,#edf6ff 0%,#f8fbff 48%,#eef5fb 100%);color:#101b2d;font-family:Inter,Arial,sans-serif}.customer-register-shell{min-height:100vh;display:grid;grid-template-columns:minmax(430px,.92fr) minmax(560px,1.08fr)}.customer-register-hero{position:relative;overflow:hidden;padding:42px clamp(28px,5vw,76px);display:flex;flex-direction:column;justify-content:space-between;color:#fff;background:linear-gradient(145deg,#062e63,#0b66cf 68%,#1385ec)}.customer-register-hero:after{content:"";position:absolute;width:520px;height:520px;right:-260px;bottom:-260px;border:1px solid rgba(255,255,255,.14);border-radius:50%;box-shadow:0 0 0 70px rgba(255,255,255,.035),0 0 0 140px rgba(255,255,255,.025)}.register-brand{position:relative;z-index:1;display:inline-flex;width:max-content;padding:8px 12px;border-radius:12px;background:#fff;box-shadow:0 12px 30px rgba(0,37,91,.16)}.register-brand img{display:block;width:min(290px,55vw);height:auto}.register-hero-copy{position:relative;z-index:1;max-width:610px;margin:auto 0}.register-hero-copy .eyebrow{color:#a9d6ff}.register-hero-copy h1{font-size:clamp(38px,4.2vw,62px);line-height:1.03;letter-spacing:-2.7px;margin:16px 0}.register-hero-copy h1 span{color:#bce2ff}.register-hero-copy p{font-size:16px;line-height:1.75;color:#d9ebff;max-width:560px}.register-benefits{display:grid;gap:10px;margin-top:28px}.register-benefits>div{display:grid;grid-template-columns:42px 1fr;column-gap:11px;padding:11px 13px;border:1px solid rgba(255,255,255,.15);border-radius:12px;background:rgba(0,35,83,.15)}.register-benefits b{grid-row:span 2;color:#9ed3ff}.register-benefits strong{font-size:13px}.register-benefits small{color:#c9e2fa;margin-top:2px}.register-hero-foot{position:relative;z-index:1;color:#c7e0f8;font-size:12px}.register-hero-foot a{color:#fff;font-weight:800;text-decoration:none}.customer-register-form-wrap{display:grid;place-items:center;padding:36px clamp(20px,5vw,70px)}.customer-register-card{width:min(680px,100%);background:#fff;border:1px solid #dce7f3;border-radius:22px;padding:30px;box-shadow:0 25px 70px rgba(16,58,103,.10)}.register-mobile-brand{display:none}.register-heading{display:flex;gap:14px;align-items:flex-start;margin-bottom:22px}.register-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#eaf4ff;color:#1167e8;font-size:24px;font-weight:800}.register-heading h2{margin:4px 0 4px;font-size:29px;letter-spacing:-.8px}.register-heading p{margin:0;color:#738197;font-size:12px}.register-heading p b,.field label b{color:#1167e8}.form-section{border:1px solid #e2e9f1;border-radius:15px;padding:18px;margin-top:13px;background:#fcfdff}.form-section-title{display:flex;gap:10px;align-items:center;margin-bottom:15px}.form-section-title>span{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#1167e8;color:#fff;font-weight:900;font-size:11px}.form-section-title b,.form-section-title small{display:block}.form-section-title small{color:#7b8798;font-size:11px;margin-top:2px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.field.full{grid-column:1/-1}.field label{display:block;font-size:11px;font-weight:800;color:#334154;margin-top:3px}.field input,.field textarea{margin-top:6px}.field textarea{min-height:92px}.password-field{position:relative}.password-field input{padding-right:62px}.password-field button{position:absolute;right:8px;top:10px;border:0;background:#eef5fc;color:#1167e8;border-radius:7px;padding:7px 9px;font-size:11px;font-weight:800;cursor:pointer}.password-strength{height:4px;background:#e8edf3;border-radius:99px;overflow:hidden;margin:1px 0 5px}.password-strength i{display:block;height:100%;width:0;background:#1167e8;transition:.2s}.field>small{font-size:10px;color:#7b8798}.register-security-note{display:flex;gap:10px;align-items:flex-start;margin:15px 0;padding:12px 13px;border-radius:11px;background:#f1f8ff;border:1px solid #d4e8fb;color:#37516c;font-size:11px}.register-security-note>span{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#dff2ff;color:#0870c9;font-weight:900}.register-security-note b,.register-security-note small{display:block}.register-security-note small{margin-top:2px;color:#718095}.register-submit{width:100%;height:50px;display:flex;justify-content:center;align-items:center;gap:12px;margin-top:3px}.register-submit span{font-size:18px}.register-back{display:block;text-align:center;margin-top:17px;color:#1167e8;text-decoration:none;font-size:12px;font-weight:800}.register-success{text-align:center;padding:28px 10px}.register-success>div{width:64px;height:64px;margin:0 auto 14px;display:grid;place-items:center;border-radius:50%;background:#e8f8f0;color:#08744d;font-size:30px;font-weight:900}.register-success h3{margin:0 0 5px;font-size:24px}.register-success p{color:#718095;margin:0 0 18px}.register-success .btn{display:inline-block}@media(max-width:950px){.customer-register-shell{grid-template-columns:1fr}.customer-register-hero{min-height:390px;padding:28px 24px}.register-hero-copy{margin:55px 0 35px}.register-hero-copy h1{font-size:42px}.customer-register-form-wrap{padding:25px 18px}.customer-register-card{padding:22px;border-radius:18px}}@media(max-width:620px){.customer-register-hero{min-height:320px}.register-brand img{width:230px}.register-hero-copy{margin:35px 0 20px}.register-hero-copy h1{font-size:34px;letter-spacing:-1.5px}.register-hero-copy p,.register-benefits{display:none}.register-hero-foot{margin-top:20px}.customer-register-form-wrap{padding:12px}.customer-register-card{padding:18px}.register-mobile-brand{display:block;margin-bottom:16px}.register-mobile-brand img{width:220px;max-width:100%;height:auto}.register-heading h2{font-size:25px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.form-section{padding:14px}.customer-register-card input,.customer-register-card textarea{font-size:16px}.register-security-note{font-size:10px}}

/* v31 usability and resilience */
.app-error-body{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#eef6ff,#fff)}.app-error-card{width:min(560px,100%);background:#fff;border:1px solid #dce7f3;border-radius:22px;padding:34px;text-align:center;box-shadow:0 25px 70px rgba(16,58,103,.12)}.app-error-card img{width:min(300px,85%);height:auto}.error-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;margin:22px auto 12px;background:#eaf3ff;color:#1167e8;font-size:28px;font-weight:900}.app-error-card h1{margin:5px 0 8px}.app-error-card p{color:#687586;line-height:1.65}.app-error-card small{display:block;margin-top:18px;color:#8793a3}.progress-filters{padding:14px 18px}.quick-filter-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.quick-filter-row>b{margin-right:5px;font-size:12px}.filter-chip{display:inline-flex;align-items:center;gap:5px;padding:8px 11px;border:1px solid #dce5ef;border-radius:999px;background:#fff;color:#4f6074;text-decoration:none;font-size:11px;font-weight:800}.filter-chip.active{background:#eaf3ff;border-color:#bcd8f8;color:#1167e8}.filter-chip small{font-size:10px;opacity:.7}.progress-filters details{margin-top:12px;border-top:1px solid #edf1f5;padding-top:11px}.progress-filters summary{cursor:pointer;font-weight:800;font-size:12px;color:#334154}.compact-filter{margin-top:13px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:45px 20px;text-align:center;border:1px dashed #d8e1eb;border-radius:15px;background:#fbfdff}.empty-state strong{font-size:15px}.empty-state span{color:#7b8798;font-size:12px}.empty-state .btn{margin-top:7px}.vehicle-board-list{display:grid;gap:12px}.vehicle-progress-card{border:1px solid #dfe7ef;border-radius:16px;padding:17px;background:#fff}.vpc-head{display:flex;justify-content:space-between;gap:18px}.vpc-head h3{margin:5px 0 3px}.vpc-head h3 a{color:#173b66;text-decoration:none}.vpc-side{display:flex;gap:6px;align-items:flex-start;flex-wrap:wrap;justify-content:flex-end}.account-label{font-size:10px;letter-spacing:.8px;font-weight:900;color:#1167e8}.vpc-progress{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;margin:14px 0}.vpc-progress strong{font-size:12px}.vpc-progress>span{font-size:12px;color:#718096;font-weight:800}.vpc-meta{display:flex;gap:18px;flex-wrap:wrap;padding:11px 0;border-top:1px solid #edf1f5;border-bottom:1px solid #edf1f5;color:#718096;font-size:11px}.vpc-meta b{color:#334154;margin-right:4px}.records-hero{background:linear-gradient(135deg,#fff,#f3f8ff)}.record-total{padding:12px 15px;border-radius:12px;background:#eaf3ff;color:#1167e8;font-weight:900;font-size:12px}.record-type-strip{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}.records-list{display:grid;gap:0}.record-row{display:grid;grid-template-columns:95px 1fr;gap:18px;padding:15px 0;border-bottom:1px solid #edf1f5}.record-row:last-child{border-bottom:0}.record-time{font-weight:900;font-size:11px;color:#43546a}.record-time small{display:block;color:#9aa5b3;margin-top:3px}.record-main>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.record-main p{margin:7px 0 4px;color:#5e6d80;font-size:12px}.record-main>small{color:#8a96a5}.portal-share-option{display:inline-flex;align-items:center;gap:6px;margin:9px 0;padding:8px 10px;border-radius:9px;background:#f1f8ff;color:#1167e8;font-weight:800;font-size:11px}.customer-login-body .customer-auth-panel{background:linear-gradient(145deg,#082e61,#0c6bd7 72%,#1989ee)}
@media(max-width:700px){.vpc-head{flex-direction:column}.vpc-side{justify-content:flex-start}.vpc-progress{grid-template-columns:1fr auto}.vpc-progress strong{grid-column:1/-1}.record-row{grid-template-columns:1fr;gap:5px}.record-time small{display:inline;margin-left:5px}.records-filter{grid-template-columns:1fr}.app-error-card{padding:25px}.quick-filter-row{overflow:auto;flex-wrap:nowrap;padding-bottom:4px}}
.invoice-lines{display:grid;gap:8px}.invoice-line{display:grid;grid-template-columns:1fr 110px 140px 42px;gap:8px;align-items:center}.invoice-edit-options{margin-top:18px}.invoice-editor{max-width:100%}
@media(max-width:650px){.invoice-line{grid-template-columns:1fr 1fr 42px}.invoice-line input:first-child{grid-column:1/-1}.invoice-edit-options{grid-template-columns:1fr}}


/* Unified East Midlands Vans authentication */
.unified-auth{background:#f6f9fc;color:#10151d;min-height:100vh}
.auth-header{height:82px;display:flex;align-items:center;padding:0 5vw;background:#fff;border-bottom:1px solid #e7edf4}
.auth-header a{display:block;line-height:0}
.auth-header img{display:block;width:250px;max-width:42vw;height:auto}
.unified-shell{min-height:calc(100vh - 82px);grid-template-columns:minmax(430px,.9fr) minmax(500px,1.1fr);max-width:1500px;margin:0 auto}
.unified-panel{padding:72px clamp(36px,7vw,100px);background:linear-gradient(145deg,#061326,#0b2d55 65%,#0f67c9);color:#fff;border-right:1px solid #dce7f2;justify-content:center;gap:30px}
.unified-panel:after{display:none}
.auth-panel-label{font-size:11px;letter-spacing:2.8px;font-weight:800;color:#83bcf4}
.unified-panel .auth-intro{margin:0;max-width:520px}
.unified-panel .auth-kicker{color:#83bcf4;margin-bottom:16px}
.unified-panel .auth-intro h1{font-size:clamp(42px,5vw,68px);font-weight:700;letter-spacing:-3px;line-height:.98;margin-bottom:22px}
.unified-panel .auth-intro p{font-size:15px;color:#c4d5e7;line-height:1.7}
.auth-panel-footer{font-size:12px;color:#8da8c3;margin-top:80px}
.unified-auth .auth-form-wrap{background:#f6f9fc;padding:56px clamp(28px,6vw,90px);place-items:center}
.unified-auth .auth-form{width:min(500px,100%)}
.unified-auth .auth-mobile-logo{display:none}
.portal-switcher{display:inline-flex;padding:4px;background:#e9eff6;border-radius:10px;margin-bottom:34px}
.portal-switcher a{padding:9px 20px;border-radius:7px;text-decoration:none;color:#607086;font-size:12px;font-weight:800}
.portal-switcher a.active{background:#fff;color:#075ecb;box-shadow:0 2px 8px rgba(20,55,90,.09)}
.auth-form-heading .auth-kicker{color:#1167e8;font-size:10px;letter-spacing:2px;margin-bottom:9px}
.unified-auth .auth-form h2{color:#1167e8;font-size:42px;font-weight:800;letter-spacing:-1.8px;margin:0 0 6px}
.unified-auth .auth-form>p.muted{margin-bottom:25px}
.unified-auth .auth-form label{color:#273447;margin-top:16px}
.unified-auth .auth-form input,.unified-auth .auth-form textarea{background:#fff;border-color:#d5dee9;color:#10151d}
.unified-auth .auth-form input:focus,.unified-auth .auth-form textarea:focus{border-color:#3d91ef;box-shadow:0 0 0 3px rgba(17,103,232,.1)}
.unified-auth .auth-submit{background:linear-gradient(135deg,#1167e8,#0a4eb5)!important;box-shadow:0 10px 25px rgba(17,103,232,.18)!important}
.auth-two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.auth-secondary-link{margin-top:12px;background:#fff}
.unified-auth .portal-link:hover{border-color:#9fcaf5;background:#fff}
.unified-auth .auth-footer{margin-top:24px;color:#98a4b3}
@media(max-width:900px){
 .auth-header{height:70px;padding:0 24px}.auth-header img{width:210px}
 .unified-shell{min-height:calc(100vh - 70px);grid-template-columns:1fr}
 .unified-panel{display:none}
 .unified-auth .auth-form-wrap{padding:38px 24px}
 .unified-auth .auth-mobile-logo{display:block;margin-bottom:22px}.unified-auth .auth-mobile-logo img{width:210px;max-width:100%;height:auto}
}
@media(max-width:600px){.auth-two-col{grid-template-columns:1fr}.unified-auth .auth-form h2{font-size:36px}.portal-switcher{margin-bottom:26px}}

.driver-instructions{padding:16px 18px;margin:0 0 20px;border:1px solid #cfe1f5;border-radius:14px;background:#f7fbff;color:#334155}.driver-instructions b{display:block;color:#123f73;font-size:15px;margin-bottom:5px}.driver-instructions p{margin:0;line-height:1.6;font-size:14px}

/* Refined EMED drop-off and collection forms */
.public-intake{background:#f4f8fc;place-items:start center;padding:42px 22px;position:relative}
.public-intake:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(180deg,#ffffff 0,#f4f8fc 42%,#eef4fa 100%);z-index:0}
.public-card{position:relative;z-index:1;width:min(900px,100%);background:#fff;border:1px solid #e4ebf3;border-radius:22px;padding:38px;box-shadow:0 18px 55px rgba(23,59,102,.10)}
.public-brand{padding-bottom:22px;margin-bottom:28px;border-bottom:1px solid #e8eef5}
.public-brand img{display:block;max-width:270px;width:100%;height:auto;margin:0}
.public-card .eyebrow{color:#1167e8;font-size:10px;font-weight:900;letter-spacing:2px;margin-bottom:9px}
.public-card h1{color:#1167e8;font-size:36px;letter-spacing:-1.3px;margin:0 0 24px;font-weight:800}
.driver-instructions{margin:0 0 24px;padding:15px 17px;border:1px solid #d8e7f7;border-radius:13px;background:#f6faff;color:#31445a}
.driver-instructions b{color:#1167e8;font-size:13px;margin:0 0 3px}
.driver-instructions p{font-size:12px;line-height:1.55}
.dropoff-form{gap:14px}
.intake-section{padding:22px;border:1px solid #e1e8f0;border-radius:15px;background:#fff;box-shadow:0 4px 16px rgba(24,59,96,.035)}
.intake-title{margin-bottom:18px}
.intake-title>span{background:#1167e8;color:#fff;width:30px;height:30px;border-radius:9px;font-size:11px}
.intake-title b{font-size:14px;color:#172b45}
.intake-title small{display:none}
.intake-section label{display:block;font-weight:800;color:#172b45;font-size:12px;margin-bottom:7px}
.intake-section .required{color:#1167e8}
.intake-section .optional{color:#8a97a8;font-weight:600}
.intake-section input,.intake-section select,.intake-section textarea{width:100%;box-sizing:border-box;background:#fff;border:1px solid #d7e0ea;border-radius:10px;padding:11px 12px;color:#17212e;outline:none;transition:border-color .18s,box-shadow .18s}
.intake-section input:focus,.intake-section select:focus,.intake-section textarea:focus{border-color:#5a9fe8;box-shadow:0 0 0 3px rgba(17,103,232,.09)}
.intake-section input::placeholder,.intake-section textarea::placeholder{color:#9aa7b7}
.arrival-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.arrival-choice label{display:block;margin:0;padding:16px;border:1px solid #dce5ee;border-radius:12px;background:#fbfdff;cursor:pointer;font-size:12px}
.arrival-choice label:has(input:checked){border-color:#76aee8;background:#f4f9ff;box-shadow:0 0 0 2px rgba(17,103,232,.06)}
.arrival-choice input{width:auto;margin-right:7px;accent-color:#1167e8}
.actions{display:flex;gap:10px;align-items:center;margin-top:4px}
.public-card .btn{border-radius:10px;background:linear-gradient(135deg,#1167e8,#0a57bd);box-shadow:0 7px 18px rgba(17,103,232,.16)}
.public-card .btn.light{background:#fff;color:#1167e8;border:1px solid #d5e0ec;box-shadow:none}
.approval-note{display:none}
.success-screen h1{color:#1167e8}
@media(max-width:700px){.public-intake{padding:18px 12px}.public-card{padding:24px 18px;border-radius:18px}.public-card h1{font-size:30px}.arrival-choice{grid-template-columns:1fr}.actions{flex-direction:column}.actions .btn{width:100%;box-sizing:border-box;text-align:center}}

.vehicle-steps{display:flex;gap:6px;align-items:stretch;overflow-x:auto;padding:4px 0 8px}.vehicle-step{display:flex;align-items:center;gap:6px;min-width:92px;padding:8px 9px;border:1px solid #dfe6ee;border-radius:10px;background:#f7f9fb;color:#7a8796;font-size:10px;font-weight:800;line-height:1.2}.vehicle-step i{display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:#e4eaf1;color:#647184;font-style:normal;font-size:10px}.vehicle-step.done{background:#edf5ff;border-color:#c8def9;color:#165da8}.vehicle-step.done i{background:#1167e8;color:#fff}.vehicle-step.current{box-shadow:0 0 0 2px #1167e812;border-color:#8fbeef}.vehicle-step.current:not(.done){background:#f4f8fd;color:#165da8}.vehicle-step.current:not(.done) i{background:#1167e8;color:#fff}

/* UK registration plate display */
.uk-reg-plate{display:inline-flex;align-items:stretch;vertical-align:middle;background:#f7d900;color:#111;border:2px solid #111;border-radius:6px;box-shadow:0 2px 5px rgba(0,0,0,.16);font-family:Arial,Helvetica,sans-serif;font-weight:900;letter-spacing:2px;line-height:1;overflow:hidden;white-space:nowrap;min-height:30px}
.uk-reg-band{display:flex;align-items:center;justify-content:center;background:#0b45a0;color:#fff;font-size:9px;letter-spacing:.3px;padding:0 5px;min-width:24px;font-weight:800}
.uk-reg-text{display:flex;align-items:center;padding:6px 10px 5px;font-size:16px}
.uk-reg-plate.large{min-height:40px;border-radius:7px}.uk-reg-plate.large .uk-reg-text{font-size:22px;padding:8px 13px 7px}.uk-reg-plate.large .uk-reg-band{font-size:10px;min-width:28px}
@media(max-width:600px){.uk-reg-text{font-size:14px;padding:6px 8px}.uk-reg-plate.large .uk-reg-text{font-size:18px}}

/* Operational control / sustainability upgrades */
.flag-stack{display:flex;flex-direction:column;align-items:flex-start;gap:5px}.flag-stack.large{flex-direction:row;flex-wrap:wrap;gap:8px}.operational-flags{border-left:4px solid #d43b3b}.important-history{border-left:4px solid #1167e8}.history-stream{display:grid;gap:10px}.history-entry{border:1px solid #e1e7ee;border-radius:12px;padding:12px 14px;background:#fbfcfe}.history-entry.good{border-color:#b8dfc8;background:#f2fbf5}.history-entry.warn{border-color:#efd59c;background:#fffaf0}.history-entry.bad{border-color:#efb3b3;background:#fff6f6}.history-entry p{margin:8px 0}.history-entry small{color:#728096}.po-entry{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.po-entry input{max-width:250px}.flag-metrics{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:10px}.flag-metric{display:flex;flex-direction:column;gap:5px;padding:14px;border:1px solid #dfe6ee;border-radius:12px;background:#f8fafc;text-decoration:none;color:inherit}.flag-metric b{font-size:26px}.flag-metric span{font-size:11px;font-weight:800;color:#5f6d7c}.flag-metric.attention{border-color:#e5b0b0;background:#fff5f5}.typed-line{display:grid!important;grid-template-columns:130px minmax(240px,1fr) 110px 145px 42px!important;gap:8px!important;align-items:start!important}.qty-field{position:relative}.qty-field small{display:block;margin-top:3px;color:#687688;font-weight:700;font-size:10px}.quote-row .qty-label{display:block;font-size:10px;font-weight:800;color:#687688;margin-top:3px}.critical-followup{border-top:4px solid #d43b3b}
@media(max-width:1100px){.flag-metrics{grid-template-columns:repeat(2,minmax(160px,1fr))}.typed-line{grid-template-columns:1fr 1.4fr 1fr 1fr 42px!important}}
@media(max-width:700px){.flag-metrics{grid-template-columns:1fr}.typed-line{grid-template-columns:1fr!important}.po-entry input{max-width:none;width:100%}}


/* Work-order usability pass */
.work-order-hero{padding:22px 24px}.work-order-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.work-order-heading h2{margin:4px 0 5px}.work-order-status{padding:9px 12px;white-space:nowrap}.work-order-summary-grid{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:9px;margin:18px 0 16px}.work-order-summary-grid>div{min-width:0;padding:12px 13px;border:1px solid #e1e8f0;border-radius:11px;background:#f8fafc}.work-order-summary-grid span,.work-order-summary-grid small{display:block;color:#718096;font-size:10px}.work-order-summary-grid span{text-transform:uppercase;letter-spacing:.65px;font-weight:900;margin-bottom:5px}.work-order-summary-grid b{display:block;color:#172b45;overflow-wrap:anywhere}.work-order-summary-grid small{margin-top:5px}.work-order-progress-row{display:grid;grid-template-columns:150px minmax(220px,1fr) auto;gap:13px;align-items:center;padding:13px 0;border-top:1px solid #e5ebf2}.work-order-progress-row>div:first-child span,.work-order-progress-row>div:first-child b{display:block}.work-order-progress-row>div:first-child span{font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:#718096;font-weight:900}.work-order-progress-row>div:first-child b{font-size:20px;color:#1167e8}.work-order-progress-row .progress{margin:0}.work-order-progress-row small{color:#718096;text-align:right}.work-order-complaint{padding:13px 15px;border-radius:11px;background:#fff;border:1px solid #e4eaf1}.work-order-complaint>span{font-size:10px;text-transform:uppercase;letter-spacing:.6px;font-weight:900;color:#718096}.work-order-complaint p{margin:6px 0 0;line-height:1.55}.work-order-nav{position:sticky;top:0;z-index:5;display:flex;gap:7px;flex-wrap:wrap;padding:9px 10px;margin:0 0 14px;border:1px solid #dfe7ef;border-radius:12px;background:rgba(255,255,255,.95);backdrop-filter:blur(8px);box-shadow:0 5px 18px rgba(25,51,80,.05)}.work-order-nav a{padding:7px 10px;border-radius:8px;text-decoration:none;color:#4c5d70;font-size:11px;font-weight:800}.work-order-nav a:hover{background:#edf5ff;color:#1167e8}.work-order-section-label{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:22px 2px 8px;padding-top:3px;scroll-margin-top:70px}.work-order-section-label span{font-size:10px;text-transform:uppercase;letter-spacing:1.1px;font-weight:900;color:#1167e8}.work-order-section-label b{font-size:13px;color:#526174}.work-order-subcard{min-width:0}.important-history,.operational-flags,#commercial-control,#workshop-control,#evidence-parts,#admin-controls{scroll-margin-top:70px}.labour-help{margin:0 0 10px;padding:10px 12px;border-radius:10px;background:#f3f8ff;border:1px solid #d6e6f7;color:#455b73;font-size:12px}.labour-help b{color:#1167e8}
@media(max-width:1200px){.work-order-summary-grid{grid-template-columns:repeat(3,1fr)}.work-order-progress-row{grid-template-columns:130px 1fr}.work-order-progress-row small{grid-column:1/-1;text-align:left}}
@media(max-width:700px){.work-order-heading{flex-direction:column}.work-order-summary-grid{grid-template-columns:1fr 1fr}.work-order-progress-row{grid-template-columns:1fr}.work-order-nav{position:static}.work-order-section-label{align-items:flex-start;flex-direction:column}.work-order-summary-grid>div{padding:10px}.work-order-status{align-self:flex-start}}
.chat-compose-card{border-left:4px solid #1167e8}.work-order-chat-form textarea{min-height:90px}.chat-form-grid{display:grid;grid-template-columns:220px 1fr;gap:9px}.chat-form-grid select,.chat-form-grid input{margin:0}.admin-secondary{border-style:dashed;background:#fbfcfe}.admin-secondary>h3{margin-top:0}
@media(max-width:700px){.chat-form-grid{grid-template-columns:1fr}}


/* Change Impact Plan — October 2026 */
.nav-group-label{margin:16px 12px 6px;font-size:9px;font-weight:900;letter-spacing:1.35px;text-transform:uppercase;color:#7f8ea2}.sidebar nav .nav-group-label:first-child{margin-top:6px}.sidebar nav hr{margin:16px 10px;border:0;border-top:1px solid rgba(255,255,255,.08)}
.dashboard-kpis{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px;margin-top:18px}.dashboard-kpi{text-decoration:none;color:inherit;min-height:118px;display:flex;flex-direction:column;justify-content:center}.dashboard-kpi small{color:#758397;margin-top:4px}.dashboard-kpi.attention{border-color:#e7b3b3;box-shadow:0 0 0 1px rgba(180,42,42,.05)}.action-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.action-list a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid #e2e8ef;border-radius:10px;text-decoration:none;color:#2f4055;background:#fbfcfe}.action-list a:hover{border-color:#b9d3ef;background:#f4f9ff}
.mileage-intake{grid-template-columns:minmax(180px,.7fr) minmax(260px,1.3fr);gap:12px;margin:12px 0;padding:14px;border:1px solid #cfe0f3;border-radius:12px;background:#f7fbff}.mileage-intake>div{min-width:0}.mileage-intake .metric-label{display:block;margin-bottom:5px}.mileage-intake #previousMileage{font-size:18px;color:#124f91}.mileage-intake small{display:block;color:#6f7e90;margin-top:5px}.required{color:#c93232;font-weight:900}
.work-order-nav{top:8px}.work-order-nav-menu{position:relative}.work-order-nav-menu>summary{list-style:none;cursor:pointer;padding:7px 10px;border-radius:8px;color:#4c5d70;font-size:11px;font-weight:800}.work-order-nav-menu>summary::-webkit-details-marker{display:none}.work-order-nav-menu[open]>summary,.work-order-nav-menu>summary:hover{background:#edf5ff;color:#1167e8}.work-order-nav-menu>div{position:absolute;z-index:20;top:38px;left:0;min-width:190px;padding:6px;border:1px solid #dfe7ef;border-radius:10px;background:#fff;box-shadow:0 10px 28px rgba(25,51,80,.14)}.work-order-nav-menu>div a{display:block;white-space:nowrap}.anchor-offset{display:block;position:relative;top:-78px;visibility:hidden}.invoice-job-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:12px 0}.invoice-job-summary>div{padding:11px;border:1px solid #e1e7ee;border-radius:10px;background:#f8fafc}.invoice-job-summary span{display:block;font-size:10px;color:#718096;text-transform:uppercase;font-weight:900;letter-spacing:.5px;margin-bottom:4px}.chat-options{margin:10px 0}.chat-options summary{cursor:pointer;font-size:11px;font-weight:800;color:#5a6d82}.chat-stream{display:grid;gap:9px;margin-top:16px;padding-top:14px;border-top:1px solid #e3e9ef}.chat-bubble{max-width:82%;padding:11px 13px;border-radius:14px 14px 14px 4px;background:#f1f4f8;border:1px solid #e0e6ed}.chat-bubble.mine{margin-left:auto;border-radius:14px 14px 4px 14px;background:#edf5ff;border-color:#c9def6}.chat-meta{display:flex;gap:7px;align-items:center;flex-wrap:wrap;font-size:10px;color:#718096}.chat-meta b{color:#2d4056}.chat-meta time{margin-left:auto}.chat-subject{display:block;margin-top:5px;font-weight:800;color:#4c6077}.chat-bubble p{margin:6px 0 0;line-height:1.45}.status-card.attention{border-color:#e5b0b0;background:#fff7f7}
@media(max-width:1000px){.dashboard-kpis{grid-template-columns:repeat(2,1fr)}.action-list{grid-template-columns:1fr}.mileage-intake{grid-template-columns:1fr}.invoice-job-summary{grid-template-columns:1fr}.work-order-nav{overflow-x:auto;flex-wrap:nowrap}.work-order-nav>a,.work-order-nav-menu>summary{white-space:nowrap}.work-order-nav-menu>div{position:fixed;left:18px;right:18px;top:auto;min-width:0}.chat-bubble{max-width:94%}}
@media(max-width:620px){.dashboard-kpis{grid-template-columns:1fr}.work-order-summary-grid{grid-template-columns:1fr!important}.sidebar{max-width:86vw}.topbar{gap:10px}.content{padding-left:14px;padding-right:14px}}


/* Work-order real tabbed workspace — user-requested refinement */
.job-panel[hidden]{display:none!important}.work-order-nav a.active{background:#1167e8;color:#fff;box-shadow:0 4px 12px rgba(17,103,232,.2)}.job-panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.job-chat-workspace{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(380px,1.28fr);gap:16px;align-items:start}.job-chat-compose{position:sticky;top:76px;padding:14px;border:1px solid #dfe7ef;border-radius:13px;background:#f9fbfd}.job-chat-conversation{min-width:0;border:1px solid #dfe7ef;border-radius:13px;background:#fff;overflow:hidden}.chat-pane-title{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid #e3e9ef;background:#f7f9fc}.chat-pane-title span{font-size:11px;color:#718096}.job-chat-conversation .chat-stream{max-height:520px;overflow:auto;margin:0;padding:14px;border-top:0}.job-chat-conversation .empty{padding:26px}.work-order-chat-form textarea{min-height:150px;resize:vertical}.additional-po-hold{border-left:4px solid #d97706}
@media(max-width:900px){.job-panel-grid,.job-chat-workspace{grid-template-columns:1fr}.job-chat-compose{position:static}.job-chat-conversation .chat-stream{max-height:440px}}

/* V3 work-order notes + EMED job detail refinement */
.quick-notes-card{border-left:4px solid #1167e8}.quick-note-form{padding:14px;border:1px solid #dce7f2;border-radius:12px;background:#f8fbff;margin:14px 0}.quick-note-form textarea{min-height:86px;max-height:118px;line-height:1.45;resize:none}.quick-note-help{display:flex;justify-content:space-between;gap:12px;color:#718096;margin:-5px 1px 10px}.quick-note-stream{display:grid;gap:9px;margin-top:14px}.quick-note-item{padding:13px 14px;border:1px solid #e0e7ef;border-radius:12px;background:#fff}.quick-note-item .top{align-items:flex-start}.quick-note-item time{font-size:10px;color:#718096}.quick-note-item p{margin:7px 0 0;line-height:1.5}.emed-job-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.emed-job-card{padding:16px;border:1px solid #dfe7ef;border-radius:15px;background:#fbfcfe}.emed-job-card h3{margin:10px 0 3px}.emed-job-card p{margin:7px 0}.emed-job-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:12px 0}.emed-job-meta span{padding:9px;border-radius:9px;background:#f1f5f9;color:#6b7888;font-size:10px}.emed-job-meta b{display:block;color:#25384e;margin-top:3px}.emed-document-actions{margin-top:13px}
@media(max-width:1100px){.emed-job-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.emed-job-grid{grid-template-columns:1fr}.quick-note-help{flex-direction:column;gap:2px}.emed-job-meta{grid-template-columns:1fr}}

/* V4 quick-update dock: always visible above the work-order tabs */
.quick-update-dock{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:12px;margin:12px 0 14px;padding:14px;border:1px solid #cfe0f3;border-left:5px solid #1167e8;border-radius:14px;background:linear-gradient(135deg,#f8fbff,#fff);box-shadow:0 6px 20px rgba(27,72,120,.05)}
.quick-update-latest{min-width:0}.quick-update-message{font-size:14px;line-height:1.5;color:#263a51;margin:5px 0 6px;overflow-wrap:anywhere}.quick-update-latest small{color:#718096}.quick-update-history-link{display:inline-block;margin-top:8px;font-size:11px;font-weight:900;text-decoration:none;color:#1167e8}.quick-update-inline-form{padding:11px 12px;border:1px solid #dbe6f1;border-radius:11px;background:#fff}.quick-update-compose-head,.quick-update-inline-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.quick-update-compose-head small,.quick-update-inline-actions small{color:#718096}.quick-update-inline-form textarea{min-height:64px;max-height:94px;margin:8px 0;resize:none;line-height:1.4}.quick-update-customer-hint{display:flex;flex-direction:column;justify-content:center;padding:12px;border-radius:11px;background:#edf6ff;color:#36516f}.quick-update-customer-hint span{font-size:12px;margin-top:4px;color:#60758b}
.portal-quick-updates{display:grid;gap:8px}.portal-quick-update{display:grid;grid-template-columns:minmax(100px,.32fr) minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 12px;border:1px solid #e0e7ef;border-radius:11px;background:#fbfcfe}.portal-quick-update a{text-decoration:none}.portal-quick-update p{margin:0;line-height:1.4}.portal-quick-update small{color:#718096;white-space:nowrap}
@media(max-width:900px){.quick-update-dock{grid-template-columns:1fr}.quick-update-inline-actions{align-items:flex-start;flex-direction:column}.portal-quick-update{grid-template-columns:1fr}.portal-quick-update small{white-space:normal}}

/* V5 - organised vehicle history */
.history-hero{padding:22px 24px}.history-hero-main{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.history-hero h2{margin:5px 0 6px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.history-hero h2 span{font-size:20px;font-weight:700;color:#34465b}.history-hero p{margin:0;color:#657487}.history-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px}.history-stats>div{padding:12px 14px;border:1px solid #e0e8f1;border-radius:12px;background:#f8fbff}.history-stats span,.history-stats b{display:block}.history-stats span{font-size:10px;text-transform:uppercase;letter-spacing:.7px;color:#738297;font-weight:800}.history-stats b{margin-top:4px;font-size:17px;color:#152438}.history-filter-card{padding:18px 20px}.history-filter-bar{display:grid;grid-template-columns:minmax(280px,1.6fr) minmax(150px,.7fr) 150px 150px auto;gap:10px;align-items:end}.history-filter-bar input,.history-filter-bar select{margin:0}.history-list-card{padding:18px 20px}.history-table-wrap{overflow:auto;border:1px solid #e2e8f0;border-radius:14px}.history-table{width:100%;min-width:1180px;border-collapse:collapse}.history-table thead th{position:sticky;top:0;background:#f3f7fb;color:#5e6d7f;font-size:10px;text-transform:uppercase;letter-spacing:.65px;padding:11px 10px;text-align:left;border-bottom:1px solid #dfe7ef}.history-table tbody>tr:not(.history-detail-row)>td{padding:13px 10px;vertical-align:top;border-bottom:0}.history-table tbody>tr:not(.history-detail-row):hover{background:#fbfdff}.history-detail-row td{padding:0 10px 12px;border-bottom:1px solid #e5ebf2}.history-ref{font-weight:900;text-decoration:none;color:#1167e8}.history-note-preview{max-width:280px;line-height:1.35}.history-docs{display:grid;gap:5px;min-width:150px}.history-doc-link{display:inline-block;text-decoration:none;color:#155fae;font-weight:700;font-size:11px}.history-details{border:1px solid #e5ebf2;border-radius:10px;background:#fafcff}.history-details summary{cursor:pointer;padding:10px 12px;font-weight:800;color:#405166}.history-details[open] summary{border-bottom:1px solid #e5ebf2}.history-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:14px}.history-mini-timeline{display:grid;gap:8px}.history-mini-timeline>div{padding:10px 11px;border-left:3px solid #b7d5f5;background:#fff;border-radius:0 9px 9px 0}.history-mini-timeline b{margin-right:8px}.history-mini-timeline span{font-size:11px;color:#758397}.history-mini-timeline p{margin:5px 0 0}.history-photo-strip{display:grid;grid-template-columns:repeat(4,minmax(90px,1fr));gap:8px}.history-photo-strip a{display:block;text-decoration:none;color:#33465a;border:1px solid #e0e7ef;border-radius:9px;overflow:hidden;background:#fff}.history-photo-strip img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.history-photo-strip span{display:block;padding:6px 7px;font-size:10px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:1050px){.history-filter-bar{grid-template-columns:1fr 1fr 1fr}.history-search-wide{grid-column:1/-1}.history-stats{grid-template-columns:repeat(2,1fr)}.history-detail-grid{grid-template-columns:1fr}}
@media(max-width:700px){.history-hero-main{flex-direction:column}.history-stats{grid-template-columns:1fr 1fr}.history-filter-bar{grid-template-columns:1fr}.history-search-wide{grid-column:auto}.history-photo-strip{grid-template-columns:repeat(2,1fr)}}
/* V5 vehicle history: one extra sort control without making the search card feel cramped. */
.history-filter-bar{grid-template-columns:minmax(250px,1.6fr) minmax(135px,.7fr) 140px 140px minmax(135px,.7fr) auto}
@media(max-width:1200px){.history-filter-bar{grid-template-columns:1.4fr 1fr 1fr}.history-search-wide{grid-column:1/-1}}
@media(max-width:700px){.history-filter-bar{grid-template-columns:1fr}.history-search-wide{grid-column:auto}}

/* V7 notification and compact history controls */
.notification-inbox .notice{margin:10px 0}.notification-inbox .notice .actions{display:flex;gap:8px;align-items:center}.vehicle-card .topline .actions form{margin:0}

/* V8 go-live polish: persistent navigation, active-area alerts, dashboard and notification centre */
.v8-sidebar{width:278px;padding:20px 14px 24px;background:linear-gradient(180deg,#07101b 0%,#0b1623 58%,#08111c 100%);border-right:1px solid #1e2c3c}
.v8-sidebar .brand{padding:4px 8px 18px}.v8-sidebar .brand img{width:205px;max-width:100%;height:auto}.v8-content{margin-left:278px;width:calc(100% - 278px);padding-top:24px}
.v8-profile-mini{margin:0 4px 18px;padding:13px 10px;border:1px solid #1f3042;border-radius:12px;background:#0d1926}.v8-profile-mini small{display:block;color:#8192a6;margin-top:3px;font-size:10px;text-transform:uppercase;letter-spacing:.55px}
.v8-nav .nav-group-label{margin:16px 10px 6px;color:#60758c;font-size:9px;font-weight:900;letter-spacing:1.35px;text-transform:uppercase}.v8-nav a{justify-content:space-between;padding:9px 10px;margin:2px 0;border-radius:9px;color:#b7c4d3;font-size:12px;font-weight:650}.v8-nav a>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v8-nav a:hover{background:#111f2e}.v8-nav a.active{background:#102d4e;color:#fff;box-shadow:inset 3px 0 0 #3f9cff,0 5px 16px rgba(0,0,0,.12)}.nav-divider{height:1px;background:#1d2a38;margin:17px 7px 12px}.nav-activity-count{margin-left:auto;display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#e94949;color:#fff;font-size:10px;line-height:1;box-shadow:0 0 0 3px rgba(233,73,73,.12)}.notification-count{background:#ff5c60}.sidebar-foot{background:#08111ce8;padding:14px 8px 3px;margin-top:24px}
.v8-topbar{align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #dfe6ee}.v8-topbar h1{font-size:27px}.top-notification-button{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;border:1px solid #d9e2ec;background:#fff;color:#33465a;text-decoration:none;font-weight:800;font-size:12px}.top-notification-button.has-new{border-color:#f0b3b3;background:#fff8f8;color:#9e2d2d}.top-notification-button b{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:#d93e44;color:#fff;font-size:10px}
.dashboard-welcome{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;padding:24px 26px;border-radius:18px;background:linear-gradient(135deg,#0b1725,#102b49 64%,#0e66d8);color:#fff;box-shadow:0 16px 36px rgba(15,57,105,.18);margin-bottom:16px}.dashboard-welcome h2{margin:4px 0 7px;font-size:27px;letter-spacing:-.6px}.dashboard-welcome p{margin:0;color:#c9d7e7;max-width:720px}.dashboard-primary-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.dashboard-welcome .btn.light{background:rgba(255,255,255,.11);color:#fff;border:1px solid rgba(255,255,255,.16)}.inline-new-count{display:inline-grid;place-items:center;margin-left:5px;min-width:19px;height:19px;padding:0 5px;border-radius:99px;background:#ff5f62;color:#fff;font-size:9px}
.v8-dashboard-kpis{grid-template-columns:repeat(6,minmax(140px,1fr));gap:10px}.v8-dashboard-kpis .dashboard-kpi{min-height:126px;padding:17px}.v8-dashboard-kpis .metric{font-size:34px}.dashboard-kpi.attention-good{border-color:#b9dfcd;background:#fbfffd}.dashboard-main-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);gap:14px;margin-top:14px}.dashboard-bottom-grid{display:grid;grid-template-columns:.65fr 1.35fr;gap:14px}.section-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.section-head h3{margin:5px 0}.text-link{text-decoration:none;font-size:11px;font-weight:800;color:#1167e8;white-space:nowrap}.priority-list{display:grid;gap:7px;margin-top:12px}.priority-list a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;border:1px solid #e2e8ef;border-radius:10px;text-decoration:none;color:#273b50;background:#fbfcfe}.priority-list a:hover{background:#f5f9fe;border-color:#c8d9ec}.priority-list span{display:grid;gap:2px}.priority-list small{color:#758397}.priority-list strong{display:grid;place-items:center;min-width:31px;height:31px;border-radius:9px;background:#edf2f7;color:#526276}.priority-list strong.bad{background:#fff0f0;color:#b42f36}.priority-list strong.warn{background:#fff5df;color:#9a6500}.priority-list strong.ok{background:#eaf7f1;color:#15734f}.dashboard-alert-list{display:grid;gap:6px;margin-top:11px}.dashboard-alert-list a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:9px;padding:9px 10px;border-radius:10px;text-decoration:none;color:#26394d;background:#f8fafc}.dashboard-alert-list a:hover{background:#eef5fc}.dashboard-alert-list span:nth-child(2){display:grid;gap:3px;min-width:0}.dashboard-alert-list small{color:#748397;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-alert-list time{font-size:10px;color:#8794a4}.dashboard-alert-dot{width:8px;height:8px;margin-top:5px;border-radius:50%;background:#1681ff;box-shadow:0 0 0 4px rgba(22,129,255,.09)}.dashboard-alert-dot.warn{background:#d58900;box-shadow:0 0 0 4px rgba(213,137,0,.10)}.dashboard-today-number{font-size:42px;font-weight:900;letter-spacing:-1px;margin:8px 0 0}.dashboard-quick-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.dashboard-quick-links a{padding:12px;border:1px solid #e1e8ef;border-radius:10px;text-decoration:none;color:#2e4359;background:#fafcff;font-weight:750}.dashboard-quick-links a:hover{border-color:#bcd4ed;background:#f2f8ff}.compact-empty{padding:28px 10px}
.notification-centre-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-end}.notification-centre-head h2{margin:5px 0 6px}.notification-centre-head p{margin:0;max-width:800px}.notification-centre-actions{display:flex;gap:7px;flex-wrap:wrap}.notification-history-card{padding:12px}.notification-history-list{display:grid}.notification-history-item{display:grid;grid-template-columns:10px minmax(0,1fr);gap:12px;padding:15px 14px;border-bottom:1px solid #e6ebf1}.notification-history-item:last-child{border-bottom:0}.notification-history-item.is-new{background:#f7fbff}.notification-history-item.is-warning{background:#fffdf8}.notification-marker{width:8px;height:8px;border-radius:50%;background:#b6c2cf;margin-top:8px}.notification-history-item.is-new .notification-marker{background:#1679ec;box-shadow:0 0 0 4px rgba(22,121,236,.10)}.notification-history-item.is-warning .notification-marker{background:#d48a00}.notification-history-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.notification-history-top h3{margin:5px 0 0;font-size:14px}.notification-history-body>p{margin:7px 0 0;line-height:1.55;color:#45566a}.notification-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:#8390a0;font-size:10px}.notification-meta time{padding-left:8px;border-left:1px solid #dce3eb}.notification-new-chip{display:inline-flex;padding:3px 6px;border-radius:999px;background:#e9f3ff;color:#0b62c8;font-size:9px;font-weight:900;letter-spacing:.7px}.security-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0 18px}.security-summary>div{padding:12px;border:1px solid #e1e8ef;border-radius:10px;background:#f8fafc}.security-summary b,.security-summary span{display:block}.security-summary span{margin-top:4px;color:#718096;font-size:11px}
@media(max-width:1300px){.v8-dashboard-kpis{grid-template-columns:repeat(3,1fr)}.dashboard-main-grid{grid-template-columns:1fr}.dashboard-bottom-grid{grid-template-columns:1fr 1fr}}
@media(max-width:950px){.v8-sidebar{position:static;width:100%;height:auto;max-width:none}.v8-content{margin-left:0;width:100%}.dashboard-welcome{align-items:flex-start;flex-direction:column}.dashboard-primary-actions{justify-content:flex-start}.v8-topbar{align-items:stretch}.top-actions{flex-wrap:wrap}.top-notification-button{width:max-content}}
@media(max-width:680px){.v8-dashboard-kpis{grid-template-columns:1fr 1fr}.dashboard-bottom-grid{grid-template-columns:1fr}.dashboard-quick-links{grid-template-columns:1fr}.notification-centre-head,.notification-history-top{flex-direction:column;align-items:flex-start}.notification-centre-actions{width:100%}.security-summary{grid-template-columns:1fr}}
@media(max-width:440px){.v8-dashboard-kpis{grid-template-columns:1fr}}

/* V8.1 explicit notification read controls */
.notification-item-actions{display:flex;gap:7px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.notification-item-actions form{margin:0}.notification-read-chip{display:inline-flex;padding:3px 6px;border-radius:999px;background:#eef2f6;color:#68788a;font-size:9px;font-weight:900;letter-spacing:.7px}.notification-read-time{margin-top:8px;color:#8995a3;font-size:10px}.notification-centre-actions form{margin:0}
@media(max-width:680px){.notification-item-actions{justify-content:flex-start;width:100%}}


/* V8.2 smooth action feedback — shared across every authenticated portal */
.toast-stack{position:fixed;top:18px;right:18px;z-index:10000;width:min(390px,calc(100vw - 28px));pointer-events:none}
.app-toast{pointer-events:auto;display:grid;grid-template-columns:34px minmax(0,1fr) 28px;gap:11px;align-items:start;padding:14px 13px;border:1px solid #dce5ee;border-radius:14px;background:rgba(255,255,255,.98);box-shadow:0 16px 42px rgba(20,43,68,.18);color:#25384c;animation:emvToastIn .22s ease-out both;backdrop-filter:blur(10px)}
.app-toast.toast-leaving{animation:emvToastOut .2s ease-in both}
.toast-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;font-weight:900;font-size:15px;background:#e9f7ef;color:#137a4b}
.toast-copy{display:grid;gap:3px;min-width:0}.toast-copy b{font-size:12px;color:#203246}.toast-copy span{font-size:12px;line-height:1.45;color:#5c6d7e;overflow-wrap:anywhere}
.toast-close{appearance:none;border:0;background:transparent;color:#8290a0;font-size:22px;line-height:24px;width:28px;height:28px;border-radius:7px;cursor:pointer;padding:0}.toast-close:hover{background:#f0f4f8;color:#33485d}
.toast-warning{border-color:#f0dfb5}.toast-warning .toast-icon{background:#fff5dc;color:#9c6800}
.toast-error{border-color:#efc7c9}.toast-error .toast-icon{background:#fff0f1;color:#bd3238}
.toast-info{border-color:#cfe0f4}.toast-info .toast-icon{background:#edf6ff;color:#176bc1}
button.is-submitting,input.is-submitting{opacity:.78;cursor:wait!important}.button-spinner{display:inline-block;width:12px;height:12px;margin-right:6px;vertical-align:-2px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:emvSpin .65s linear infinite}
@keyframes emvSpin{to{transform:rotate(360deg)}}
@keyframes emvToastIn{from{opacity:0;transform:translateY(-8px) scale(.985)}to{opacity:1;transform:none}}
@keyframes emvToastOut{from{opacity:1;transform:none}to{opacity:0;transform:translateY(-6px) scale(.985)}}
@media(max-width:680px){.toast-stack{top:10px;right:10px;width:calc(100vw - 20px)}.app-toast{grid-template-columns:32px minmax(0,1fr) 26px;padding:12px}}

/* V8.3 polished action feedback */
.toast-stack{position:fixed;top:16px;left:50%;right:auto;transform:translateX(-50%);z-index:10000;width:min(520px,calc(100vw - 28px));pointer-events:none}
.app-toast{position:relative;overflow:hidden;pointer-events:auto;display:grid;grid-template-columns:38px minmax(0,1fr) 30px;gap:12px;align-items:center;padding:13px 14px 15px;border:1px solid #dce5ee;border-radius:12px;background:#fff;box-shadow:0 14px 34px rgba(17,39,63,.16);color:#25384c;animation:emvToastInV83 .2s ease-out both}
.toast-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;font-weight:900;font-size:15px;background:#e9f7ef;color:#137a4b}
.toast-copy{display:grid;gap:2px;min-width:0}.toast-copy b{font-size:12px;font-weight:850;color:#172a3e;letter-spacing:.05px}.toast-copy span{font-size:12px;line-height:1.42;color:#607184;overflow-wrap:anywhere}
.toast-close{appearance:none;border:0;background:#f4f6f8;color:#778697;font-size:18px;line-height:26px;width:28px;height:28px;border-radius:50%;cursor:pointer;padding:0}.toast-close:hover{background:#e9eef3;color:#263b50}
.toast-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:#22a06b;transform-origin:left center;animation:emvToastProgress 6.5s linear both}
.toast-warning{border-color:#ead9a8}.toast-warning .toast-icon{background:#fff4d7;color:#936000}.toast-warning .toast-progress{background:#d99a18}
.toast-error{border-color:#ebc4c7}.toast-error .toast-icon{background:#fdecee;color:#b62d35}.toast-error .toast-progress{background:#d84a52}
.toast-info{border-color:#c9def2}.toast-info .toast-icon{background:#eaf4ff;color:#176bc1}.toast-info .toast-progress{background:#2f82d6}
.app-toast.toast-leaving{animation:emvToastOutV83 .18s ease-in both}.app-toast.toast-leaving .toast-progress{animation-play-state:paused}
@keyframes emvToastInV83{from{opacity:0;transform:translateY(-10px) scale(.99)}to{opacity:1;transform:none}}
@keyframes emvToastOutV83{from{opacity:1;transform:none}to{opacity:0;transform:translateY(-7px) scale(.99)}}
@keyframes emvToastProgress{from{transform:scaleX(1)}to{transform:scaleX(0)}}
@media(max-width:680px){.toast-stack{top:10px;width:calc(100vw - 20px)}.app-toast{grid-template-columns:34px minmax(0,1fr) 28px;padding:11px 12px 14px}.toast-icon{width:31px;height:31px}}


/* V8.4 refined action notifications */
.toast-stack{top:18px;right:22px;left:auto;transform:none;width:min(410px,calc(100vw - 28px))}
.app-toast{grid-template-columns:36px minmax(0,1fr) 28px;gap:11px;align-items:start;padding:13px 13px 15px;border-radius:13px;border:1px solid #dce5ee;border-left:4px solid #1f9d67;box-shadow:0 18px 44px rgba(15,35,58,.17)}
.toast-icon{width:32px;height:32px;border-radius:9px;font-size:14px}
.toast-copy{padding-top:1px;gap:3px}.toast-copy b{font-size:12.5px}.toast-copy span{font-size:11.5px;line-height:1.45}
.toast-progress{height:2px;background:#1f9d67}
.toast-warning{border-left-color:#d99a18}.toast-error{border-left-color:#d84a52}.toast-info{border-left-color:#2f82d6}
@media(max-width:680px){.toast-stack{top:10px;right:10px;left:auto;transform:none;width:calc(100vw - 20px)}}


/* V8.5 live EMED organisation + invoice controls */
.emed-v85-hero{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 24px;border:1px solid #dbe5ef;border-radius:16px;background:linear-gradient(135deg,#f8fbff,#fff)}
.emed-v85-hero h2{margin:3px 0 7px}.emed-v85-hero p{margin:0;color:#64758a;max-width:760px}.emed-v85-actions{display:flex;gap:8px;flex-wrap:wrap}
.emed-v85-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:16px 0}.emed-v85-metric{display:block;text-decoration:none;color:inherit}.emed-v85-metric b{display:block;font-size:27px;color:#102a49;margin-top:6px}.emed-v85-metric small{display:block;color:#708197;margin-top:4px}
.emed-simple-table td,.emed-simple-table th{vertical-align:middle}.emed-simple-table .muted{max-width:420px}.emed-ref{font-weight:800;letter-spacing:.04em;color:#0b67b2}.emed-ref-box{padding:20px;border:2px solid #1489c7;border-radius:14px;background:#eef8ff;text-align:center}.emed-ref-box .emed-ref-number{font-size:30px;font-weight:900;color:#0e2745;letter-spacing:.07em;margin:8px 0}.emed-ref-box p{margin:5px auto;max-width:700px}
.fleet-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:10px;align-items:end}.fleet-import-card{border:1px dashed #9fb5cb;background:#f8fbfe}.fleet-import-card code{background:#eef3f8;padding:2px 5px;border-radius:5px}.fleet-row-actions{display:flex;gap:7px;justify-content:flex-end;flex-wrap:wrap}
.v85-pagination{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:15px}.v85-pagination .pages{display:flex;gap:6px;flex-wrap:wrap}
.commercial-card{border:1px solid #dce6ef;border-radius:14px;padding:17px;margin:12px 0;background:#fff}.commercial-card-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.commercial-card-meta{display:flex;gap:12px;flex-wrap:wrap;color:#64758a;font-size:13px;margin-top:5px}.commercial-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.commercial-po{margin-top:12px;padding:13px;border-radius:10px;background:#fff8e9;border:1px solid #ead59c}.commercial-po form{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.commercial-po input{max-width:280px}
.invoice-payment-status{font-weight:800}.invoice-payment-status.paid{color:#138a59}.invoice-payment-status.unpaid{color:#bd3c42}.invoice-action-menu{position:relative;display:inline-block}.invoice-action-menu summary{list-style:none;cursor:pointer}.invoice-action-menu summary::-webkit-details-marker{display:none}.invoice-action-popover{position:absolute;right:0;top:calc(100% + 6px);z-index:100;min-width:225px;padding:8px;border:1px solid #d9e3ed;border-radius:12px;background:#fff;box-shadow:0 16px 36px rgba(21,43,67,.18)}.invoice-action-popover a,.invoice-action-popover button{display:flex;width:100%;justify-content:flex-start;margin:2px 0}.invoice-action-popover form{margin:0}.invoice-action-popover .danger{margin-top:7px}
.mileage-card{padding:12px 14px;border:1px solid #dce5ee;border-radius:10px;background:#f8fbfe}.mileage-card span{display:block;color:#6c7c8f;font-size:12px;text-transform:uppercase;letter-spacing:.05em}.mileage-card b{display:block;margin-top:4px}.mileage-edit-inline{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin-top:9px}.mileage-edit-inline input{max-width:180px}
.request-vehicle-picker{display:grid;grid-template-columns:minmax(240px,1fr) minmax(260px,2fr);gap:12px}.request-compact-details summary{cursor:pointer;font-weight:700;color:#33516f;padding:10px 0}.request-compact-details[open] summary{margin-bottom:6px}
@media(max-width:1000px){.emed-v85-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fleet-toolbar{grid-template-columns:1fr 1fr}.fleet-toolbar>div:first-child{grid-column:1/-1}}
@media(max-width:700px){.emed-v85-hero{display:block}.emed-v85-actions{margin-top:14px}.emed-v85-grid{grid-template-columns:1fr 1fr}.request-vehicle-picker{grid-template-columns:1fr}.fleet-toolbar{display:block}.fleet-toolbar>*{margin-top:8px}.commercial-card-head{display:block}.invoice-action-popover{left:0;right:auto}.v85-pagination{align-items:flex-start;flex-direction:column}}

/* V8.5.1 invoice action menu: keep controls visible inside scrollable invoice tables. */
.invoice-action-menu{position:relative;display:inline-block;vertical-align:top}
.invoice-action-menu[open]{display:block;min-width:230px}
.invoice-action-popover{position:static!important;right:auto!important;top:auto!important;left:auto!important;z-index:auto!important;min-width:230px;max-width:290px;margin-top:7px;padding:8px;border:1px solid #d9e3ed;border-radius:12px;background:#fff;box-shadow:0 10px 24px rgba(21,43,67,.13)}
.invoice-action-popover a,.invoice-action-popover button{white-space:normal;text-align:left;line-height:1.3}
@media(max-width:700px){.invoice-action-menu[open],.invoice-action-popover{min-width:210px;max-width:100%}}


/* Invoice Actions flyout: float above scroll containers instead of being clipped by the invoice table. */
.invoice-action-menu{position:relative;display:inline-block;vertical-align:middle}
.invoice-action-menu[open]{display:inline-block;min-width:0}
.invoice-action-popover{position:fixed!important;z-index:99999!important;min-width:230px;max-width:290px;margin:0!important;padding:8px;border:1px solid #d9e3ed;border-radius:12px;background:#fff;box-shadow:0 18px 42px rgba(21,43,67,.24);overflow:visible!important}
.invoice-action-popover a,.invoice-action-popover button{display:flex;width:100%;justify-content:flex-start;white-space:normal;text-align:left;line-height:1.3}
.invoice-action-popover form{margin:0}
@media(max-width:700px){.invoice-action-popover{min-width:210px;max-width:calc(100vw - 24px)}}


/* Invoice Actions portal fix: menu is moved to <body> while open, so table overflow cannot clip it. */
body>.invoice-action-popover.invoice-action-popover-portal{
  position:fixed!important;
  z-index:2147483000!important;
  display:block!important;
  min-width:235px;
  max-width:300px;
  margin:0!important;
  padding:8px;
  border:1px solid #d9e3ed;
  border-radius:12px;
  background:#fff;
  box-shadow:0 20px 46px rgba(21,43,67,.28);
  overflow:visible!important;
}
body>.invoice-action-popover.invoice-action-popover-portal a,
body>.invoice-action-popover.invoice-action-popover-portal button{
  display:flex;
  width:100%;
  justify-content:flex-start;
  white-space:normal;
  text-align:left;
  line-height:1.3;
}
body>.invoice-action-popover.invoice-action-popover-portal form{margin:0}
@media(max-width:700px){
  body>.invoice-action-popover.invoice-action-popover-portal{max-width:calc(100vw - 24px);min-width:210px}
}
