:root{--ink:#17201d;--muted:#65726d;--paper:#f5f4ef;--white:#fff;--green:#184f43;--green-2:#0f6b57;--lime:#ddeb67;--border:#dde2dd;--danger:#9c2f2f;--success:#1c684e;--shadow:0 24px 70px rgba(23,32,29,.12)}
.oil-master-heading>div:last-child{flex-wrap:wrap}.oil-hierarchy-grid{align-items:start}
*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--paper)}button,input{font:inherit}.muted{color:var(--muted);line-height:1.65}.eyebrow{margin:0 0 18px;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:800}.accent{color:var(--green-2)}
.login-page{min-height:100vh;display:grid;place-items:center;padding:32px;background:radial-gradient(circle at 15% 12%,#e9efcc 0,transparent 28%),var(--paper)}.login-shell{width:min(1050px,100%);min-height:650px;display:grid;grid-template-columns:1.05fr .95fr;background:var(--white);border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}.brand-panel{position:relative;padding:72px;color:#fff;background:linear-gradient(145deg,#123d34,#1e6655);display:flex;flex-direction:column;justify-content:center;overflow:hidden}.brand-panel:after{content:"";position:absolute;width:340px;height:340px;border:70px solid rgba(221,235,103,.1);border-radius:50%;right:-150px;bottom:-100px}.brand-panel h1{font-family:Georgia,serif;font-size:clamp(3.2rem,6vw,5.6rem);font-weight:500;line-height:.94;letter-spacing:-.055em;margin:0 0 28px}.brand-panel .muted{color:#cadbd5;max-width:440px}.route-line{display:flex;align-items:center;gap:0;margin-top:60px}.route-line:before,.route-line:after{content:"";height:2px;background:#90ac64;flex:1}.route-line span{position:relative;width:12px;height:12px;background:var(--lime);border-radius:50%;margin:0 32px}.login-card{padding:72px;display:flex;flex-direction:column;justify-content:center}.login-card h2{font-family:Georgia,serif;font-size:2.6rem;font-weight:500;letter-spacing:-.035em;margin:0 0 10px}.login-card form{display:grid;gap:10px;margin-top:22px}.login-card label{margin-top:12px;font-size:.86rem;font-weight:750}.login-card input{width:100%;border:1px solid var(--border);border-radius:12px;padding:15px 16px;outline:none;background:#fbfcfa}.login-card input:focus{border-color:var(--green-2);box-shadow:0 0 0 4px rgba(15,107,87,.1)}.login-card button{margin-top:18px;border:0;border-radius:12px;padding:16px;background:var(--green);color:white;font-weight:800;cursor:pointer}.login-card button:hover{background:var(--green-2)}.support{text-align:center;color:var(--muted);font-size:.82rem;margin-top:28px}.alert{padding:12px 14px;border-radius:10px;margin-top:18px;font-size:.88rem}.alert.error{background:#faeaea;color:var(--danger)}.alert.success{background:#e7f5ee;color:var(--success)}
.topbar{height:76px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 max(28px,calc((100vw - 1180px)/2))}.wordmark{color:var(--ink);text-decoration:none;font-weight:850;display:flex;align-items:center;gap:12px}.wordmark span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--green);color:var(--lime);font-size:.78rem}.ghost-button{border:1px solid var(--border);background:#fff;border-radius:10px;padding:10px 15px;cursor:pointer}.dashboard-shell{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:70px 0}.welcome{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:70px}.welcome h1{font-family:Georgia,serif;font-size:clamp(2.6rem,5vw,4.6rem);font-weight:500;letter-spacing:-.05em;margin:0}.role-list{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.role-chip{border:1px solid #bad0c8;color:var(--green);background:#edf5f2;border-radius:999px;padding:8px 12px;font-size:.72rem;font-weight:850;letter-spacing:.08em}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.section-heading h2{margin:0;font-size:1.35rem}.section-heading span{color:var(--muted);font-size:.86rem}.module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.module-card{padding:28px;background:#fff;border:1px solid var(--border);border-radius:18px;min-height:230px;transition:.2s}.module-card:hover{transform:translateY(-3px);box-shadow:0 16px 35px rgba(23,32,29,.08)}.module-icon{width:45px;height:45px;display:grid;place-items:center;border-radius:13px;background:var(--green);color:var(--lime);font-family:Georgia,serif;font-size:1.35rem}.module-card h3{margin:28px 0 8px}.module-card p{color:var(--muted);line-height:1.55;min-height:50px}.module-card span{font-size:.82rem;font-weight:800;color:var(--green-2)}
@media(max-width:760px){.login-page{padding:0}.login-shell{display:block;border-radius:0;min-height:100vh}.brand-panel{padding:42px 28px}.brand-panel h1{font-size:3.2rem}.brand-panel .muted,.route-line{display:none}.login-card{padding:48px 28px}.welcome{display:block}.role-list{justify-content:flex-start;margin-top:20px}.module-grid{grid-template-columns:1fr}.dashboard-shell{padding-top:44px}.topbar{padding:0 24px}}

/* Admin application shell */
.admin-page{min-height:100vh;background:#f3f5f2;overflow-x:hidden}.admin-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:272px;background:#123d34;color:#fff;display:flex;flex-direction:column;z-index:30;box-shadow:12px 0 40px rgba(13,45,38,.08)}.sidebar-brand{height:86px;padding:0 24px;display:flex;align-items:center;gap:12px;border-bottom:1px solid rgba(255,255,255,.1)}.brand-badge{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:12px;background:var(--lime);color:var(--green);font-size:.78rem;font-weight:950}.sidebar-brand strong{display:block;font-size:.98rem}.sidebar-brand small{display:block;margin-top:3px;color:#a9c2ba;font-size:.64rem;letter-spacing:.04em}.sidebar-close{display:none;margin-left:auto;border:0;background:transparent;color:#fff;font-size:1.65rem}.side-nav{flex:1;padding:26px 14px;overflow-y:auto}.nav-label{margin:0 14px 11px;color:#79998e;font-size:.64rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.nav-link{position:relative;display:flex;align-items:center;gap:12px;margin:4px 0;padding:11px 13px;border-radius:11px;color:#b9ccc6;text-decoration:none;font-size:.86rem;font-weight:650;transition:.18s}.nav-link:hover{background:rgba(255,255,255,.07);color:#fff}.nav-link.active{background:#fff;color:var(--green);box-shadow:0 8px 24px rgba(3,25,20,.18)}.nav-link.active:before{content:"";position:absolute;left:-14px;width:4px;height:25px;border-radius:0 6px 6px 0;background:var(--lime)}.nav-icon{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:rgba(255,255,255,.08);font-family:Georgia,serif;font-weight:800}.nav-link.active .nav-icon{background:#eaf1ee}.sidebar-user{margin:14px;padding:15px 10px;border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:11px}.user-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#2c6a5b;color:var(--lime);font-weight:850}.sidebar-user strong{display:block;max-width:155px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.8rem}.sidebar-user small{display:block;margin-top:4px;color:#91aba2;font-size:.61rem;letter-spacing:.08em}.sidebar-scrim{display:none}.admin-main{min-height:100vh;margin-left:272px;display:grid;grid-template-rows:auto 1fr auto}.page-header{position:sticky;top:0;z-index:20;min-height:86px;padding:17px 34px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:rgba(255,255,255,.94);border-bottom:1px solid var(--border);backdrop-filter:blur(16px)}.page-header-left{display:flex;align-items:center;gap:14px}.menu-button{display:none;border:1px solid var(--border);background:#fff;width:42px;height:42px;border-radius:10px}.breadcrumb{margin:0 0 4px;color:#8a9692;font-size:.68rem}.breadcrumb span{margin:0 6px}.breadcrumb strong{color:var(--green-2)}.page-header h1{margin:0;font-family:Georgia,serif;font-size:1.55rem;font-weight:500;letter-spacing:-.025em}.header-actions{display:flex;align-items:center;gap:10px}.notification-button{position:relative;width:38px;height:38px;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--green);font-size:.6rem}.notification-button:after{content:"";position:absolute;right:8px;top:7px;width:6px;height:6px;border-radius:50%;background:#e05b45;border:2px solid white}.content-panel{min-width:0;padding:30px 34px 48px;transition:opacity .15s}.content-panel:focus{outline:none}.content-panel.is-loading{opacity:.45;pointer-events:none}.content-fragment{animation:content-in .22s ease}@keyframes content-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.content-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:25px}.content-intro .eyebrow{margin-bottom:8px}.content-intro h2{margin:0;font-family:Georgia,serif;font-weight:500;font-size:2.15rem;letter-spacing:-.04em}.content-intro p:not(.eyebrow){margin:8px 0 0;color:var(--muted)}.date-chip{padding:9px 13px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--muted);font-size:.75rem;font-weight:750}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:20px}.metric-card{min-width:0;padding:21px;background:#fff;border:1px solid var(--border);border-radius:15px}.metric-card span,.metric-card small{display:block;color:var(--muted);font-size:.73rem}.metric-card strong{display:block;margin:13px 0 10px;font-family:Georgia,serif;font-size:2rem;font-weight:500;letter-spacing:-.04em}.metric-card .positive{color:#2b7a59}.metric-card .warning{color:#b2682f}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(270px,.7fr);gap:20px}.panel-card{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden}.panel-heading{padding:21px 23px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #e9ece9}.panel-heading h3{margin:0 0 4px;font-size:.96rem}.panel-heading p{margin:0;color:var(--muted);font-size:.72rem}.panel-heading button{border:1px solid var(--border);border-radius:9px;background:#fff;padding:8px 11px;color:var(--green);font-size:.72rem;font-weight:750}.data-table{overflow-x:auto}.table-row{min-width:650px;display:grid;grid-template-columns:.75fr 1.45fr 1fr .8fr;gap:12px;padding:15px 23px;align-items:center;border-bottom:1px solid #eff1ef;font-size:.75rem}.table-row:last-child{border-bottom:0}.table-head{padding-top:11px;padding-bottom:11px;background:#fafbfa;color:#84908b;font-size:.63rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.status{display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%}.status.moving{background:#31876a}.status.ready{background:#6d89b6}.status.pending{background:#dc9a41}.attention-list{list-style:none;margin:0;padding:7px 22px}.attention-list li{display:flex;gap:12px;padding:17px 0;border-bottom:1px solid #eef0ee}.attention-list li:last-child{border:0}.attention-list>li>span{display:grid;place-items:center;flex:0 0 29px;height:29px;border-radius:9px;background:#fff0e2;color:#b76628;font-weight:900}.attention-list strong,.attention-list small{display:block}.attention-list strong{font-size:.76rem}.attention-list small{margin-top:5px;color:var(--muted);font-size:.68rem}.empty-module{min-height:380px;max-width:650px;margin:auto;padding:65px 30px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.large-icon{width:70px;height:70px;display:grid;place-items:center;border-radius:20px;background:#eaf1ee;color:var(--green);font-family:Georgia,serif;font-size:1.8rem;font-weight:700}.empty-module h3{margin:22px 0 9px;font-size:1.1rem}.empty-module p{max-width:530px;margin:0;color:var(--muted);line-height:1.65;font-size:.83rem}.content-error{padding:45px;background:#fff;border:1px solid #ecc9c5;border-radius:14px;color:#8c3028}.content-error p{margin-bottom:0}.admin-footer{min-height:58px;padding:16px 34px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--border);background:#fff;color:#87918d;font-size:.68rem}
@media(max-width:1100px){.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-columns{grid-template-columns:1fr}}
@media(max-width:820px){.sidebar{transform:translateX(-100%);transition:transform .24s}.nav-open .sidebar{transform:translateX(0)}.sidebar-close,.menu-button{display:block}.nav-open .sidebar-scrim{display:block;position:fixed;inset:0;background:rgba(14,28,24,.5);z-index:25}.admin-main{margin-left:0}.page-header{padding:15px 20px}.content-panel{padding:24px 20px 38px}.admin-footer{padding:16px 20px}.header-actions .notification-button{display:none}}
@media(max-width:560px){.page-header h1{font-size:1.25rem}.breadcrumb{display:none}.content-intro{align-items:flex-start;flex-direction:column}.content-intro h2{font-size:1.8rem}.metric-grid{grid-template-columns:1fr}.header-actions .ghost-button{padding:9px 11px}.admin-footer{display:block;text-align:center}.admin-footer span{display:block;margin:3px}.panel-heading{align-items:flex-start}.data-table{margin-bottom:4px}}

/* Scrollable accordion navigation */
.side-nav{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#4b766b transparent}.side-nav::-webkit-scrollbar{width:6px}.side-nav::-webkit-scrollbar-thumb{border-radius:999px;background:#4b766b}.nav-group{margin:4px 0}.nav-group-toggle{width:100%;display:grid;grid-template-columns:31px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:10px 12px;border:0;border-radius:11px;background:transparent;color:#afc6bf;text-align:left;font-size:.76rem;font-weight:800;cursor:pointer;transition:.18s}.nav-group-toggle:hover{background:rgba(255,255,255,.07);color:#fff}.nav-group.open>.nav-group-toggle{background:rgba(255,255,255,.09);color:#fff}.nav-group-icon{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:rgba(255,255,255,.08);color:var(--lime);font-family:Georgia,serif;font-size:.8rem}.nav-caret{justify-self:end;color:#789b91;font-size:1rem;transition:transform .2s}.nav-group.open .nav-caret{transform:rotate(180deg);color:var(--lime)}.nav-submenu{display:none;margin:4px 0 8px;padding-left:17px;border-left:1px solid rgba(255,255,255,.1)}.nav-group.open>.nav-submenu{display:block;animation:submenu-in .18s ease}@keyframes submenu-in{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.nav-submenu .nav-link{margin:2px 0;padding:8px 10px;font-size:.72rem}.nav-submenu .nav-icon{width:25px;height:25px;border-radius:7px;font-size:.72rem}.nav-submenu .nav-link.active:before{left:-18px;height:22px}.sidebar-user{flex:0 0 auto;background:#123d34}

/* Compact sidebar sizing and inline vector icons */
.sidebar-brand{height:72px;padding:0 18px}.brand-badge{flex-basis:36px;height:36px;border-radius:10px;font-size:.7rem}.side-nav{padding:12px 10px}.nav-label{margin:0 10px 6px;font-size:.59rem}.nav-group{margin:1px 0}.nav-group-toggle{grid-template-columns:27px minmax(0,1fr) 16px;gap:8px;padding:6px 9px;border-radius:9px;font-size:.71rem}.nav-group-icon{width:27px;height:27px;border-radius:7px}.nav-group-icon svg,.nav-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.nav-caret{font-size:.88rem}.nav-submenu{margin:2px 0 4px;padding-left:14px}.nav-submenu .nav-link{gap:8px;margin:1px 0;padding:6px 8px;border-radius:8px;font-size:.68rem}.nav-submenu .nav-icon{width:23px;height:23px;border-radius:6px}.nav-submenu .nav-icon svg{width:13px;height:13px}.nav-submenu .nav-link.active:before{left:-15px;height:19px}.sidebar-user{margin:8px 10px;padding:10px 8px}.user-avatar{width:34px;height:34px}.sidebar-user strong{font-size:.75rem}.sidebar-user small{margin-top:2px;font-size:.56rem}

/* Users and roles */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.module-alert{margin-bottom:16px;padding:13px 16px;border-radius:11px;font-size:.78rem;font-weight:700}.module-alert.success{background:#e6f4ed;color:#226449;border:1px solid #c7e6d6}.module-alert.error{background:#fce9e7;color:#8a302a;border:1px solid #f1cac6}.user-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.user-summary-grid article{padding:18px 20px;border:1px solid var(--border);border-radius:14px;background:#fff}.user-summary-grid span{display:block;color:var(--muted);font-size:.7rem}.user-summary-grid strong{display:block;margin-top:9px;font-family:Georgia,serif;font-size:1.65rem;font-weight:500}.users-toolbar{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--border)}.user-search-wrap{width:min(420px,100%);height:42px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--border);border-radius:10px;background:#fafbfa}.user-search-wrap span{color:var(--muted);font-size:1.15rem}.user-search-wrap input{width:100%;border:0;outline:0;background:transparent;font-size:.78rem}.users-table-wrap{overflow-x:auto}.users-table{width:100%;min-width:780px;border-collapse:collapse}.users-table th{padding:12px 20px;background:#fafbfa;color:#84908b;text-align:left;font-size:.62rem;text-transform:uppercase;letter-spacing:.09em}.users-table td{padding:15px 20px;border-top:1px solid #edf0ed;font-size:.76rem}.table-user{display:flex;align-items:center;gap:11px}.table-avatar{width:36px;height:36px;display:grid;place-items:center;flex:0 0 36px;border-radius:11px;background:#eaf1ee;color:var(--green);font-family:Georgia,serif;font-size:1rem;font-weight:700}.table-user strong,.table-user small{display:block}.table-user small{margin-top:3px;color:var(--muted);font-size:.68rem}.table-roles{display:flex;gap:5px;flex-wrap:wrap}.table-roles span{padding:5px 7px;border-radius:6px;background:#edf3f1;color:var(--green);font-size:.58rem;font-weight:850;letter-spacing:.05em}.account-status{display:inline-flex;align-items:center;gap:6px;font-weight:750}.account-status:before{content:"";width:7px;height:7px;border-radius:50%}.account-status.active{color:#317254}.account-status.active:before{background:#43a678}.account-status.disabled{color:#8b7774}.account-status.disabled:before{background:#b8aaa8}.row-actions{text-align:right;white-space:nowrap}.inline-form{display:inline}.table-action{border:0;background:transparent;padding:6px 7px;color:var(--green-2);font-size:.7rem;font-weight:750;cursor:pointer}.table-action.danger{color:#a24b43}.table-action:disabled{color:#aeb5b2;cursor:not-allowed}.user-empty-filter{padding:50px;text-align:center;color:var(--muted);font-size:.82rem}.user-dialog{width:min(620px,calc(100% - 32px));max-height:calc(100vh - 40px);padding:0;border:0;border-radius:18px;box-shadow:0 30px 90px rgba(14,35,29,.25);overflow:auto}.user-dialog::backdrop{background:rgba(14,31,26,.58);backdrop-filter:blur(3px)}.user-form{padding:25px}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:22px}.dialog-heading .eyebrow{margin-bottom:5px}.dialog-heading h3{margin:0;font-family:Georgia,serif;font-size:1.65rem;font-weight:500}.dialog-close{border:0;background:#f0f3f1;width:34px;height:34px;border-radius:9px;color:var(--muted);font-size:1.25rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.full-field{grid-column:1/-1}.user-form label:not(.role-fieldset label){display:grid;gap:7px;color:var(--ink);font-size:.72rem;font-weight:750}.user-form input[type="text"],.user-form input[type="email"],.user-form input[type="password"],.user-form input:not([type]){width:100%;padding:12px 13px;border:1px solid var(--border);border-radius:10px;outline:0;background:#fafbfa}.user-form input:focus{border-color:var(--green-2);box-shadow:0 0 0 3px rgba(15,107,87,.1)}.user-form label small{color:var(--muted);font-weight:500}.role-fieldset{margin:3px 0 0;padding:14px;border:1px solid var(--border);border-radius:11px}.role-fieldset legend{padding:0 5px;font-size:.7rem;font-weight:800}.role-fieldset>label{display:flex;align-items:flex-start;gap:10px;padding:9px;border-radius:8px}.role-fieldset>label:hover{background:#f5f7f5}.role-fieldset input{margin-top:3px;accent-color:var(--green)}.role-fieldset strong,.role-fieldset small{display:block}.role-fieldset strong{font-size:.72rem}.role-fieldset small{margin-top:3px;font-size:.63rem}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px;padding-top:18px;border-top:1px solid var(--border)}
@media(max-width:900px){.user-summary-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.user-summary-grid{grid-template-columns:1fr 1fr}.users-toolbar{align-items:stretch;flex-direction:column}.users-toolbar .primary-action{width:100%}.user-form{padding:20px}.form-grid{grid-template-columns:1fr}}
.user-admin-accordion{display:grid;gap:12px}.admin-accordion-item{overflow:hidden;border:1px solid var(--border);border-radius:15px;background:#fff;transition:border-color .18s,box-shadow .18s}.admin-accordion-item.is-open{border-color:#b9d0c7;box-shadow:0 10px 28px rgba(23,32,29,.06)}.admin-accordion-trigger{width:100%;display:grid;grid-template-columns:40px minmax(0,1fr) auto 22px;align-items:center;gap:13px;padding:16px 18px;border:0;background:#fff;color:var(--ink);text-align:left;cursor:pointer}.admin-accordion-trigger:hover{background:#fafcfb}.admin-accordion-trigger:focus-visible{outline:3px solid rgba(15,107,87,.2);outline-offset:-3px}.admin-accordion-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:#eaf2ef;color:var(--green)}.admin-accordion-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.admin-accordion-trigger>span:nth-child(2) strong,.admin-accordion-trigger>span:nth-child(2) small{display:block}.admin-accordion-trigger>span:nth-child(2) strong{font-size:.88rem}.admin-accordion-trigger>span:nth-child(2) small{margin-top:4px;color:var(--muted);font-size:.66rem;font-weight:500}.admin-accordion-count{padding:6px 9px;border-radius:999px;background:#f0f3f1;color:var(--green-2);font-size:.61rem;font-weight:800;white-space:nowrap}.admin-accordion-chevron{color:var(--green);font-size:1.2rem;transition:transform .18s}.admin-accordion-item.is-open .admin-accordion-chevron{transform:rotate(180deg)}.admin-accordion-panel{padding:0 16px 16px;border-top:1px solid #edf0ed}.admin-accordion-panel[hidden]{display:none!important}.admin-accordion-panel>.users-card{margin-top:16px}.admin-accordion-panel>.role-catalogue,.admin-accordion-panel>.operation-management{margin-top:16px}@media(max-width:650px){.admin-accordion-trigger{grid-template-columns:36px minmax(0,1fr) 20px;padding:14px}.admin-accordion-count{display:none}.admin-accordion-icon{width:34px;height:34px}.admin-accordion-panel{padding:0 10px 10px}}
.site-manager-admin{display:grid;gap:16px;margin-top:16px}.site-manager-assignment-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(260px,1.4fr) auto;align-items:end;gap:12px;padding:16px;border:1px solid #dce8e3;border-radius:13px;background:#f7faf8}.site-manager-assignment-form label{display:grid;gap:6px;color:var(--ink);font-size:.66rem;font-weight:800}.site-manager-assignment-form select{min-height:42px;padding:0 10px;border:1px solid var(--border);border-radius:9px;background:#fff;color:var(--ink)}.site-manager-assignment-table td>small{display:block;margin-top:3px;color:var(--muted)}@media(max-width:850px){.site-manager-assignment-form{grid-template-columns:1fr}.site-manager-assignment-form .primary-action{width:100%}}
.site-manager-phase2-workspace{gap:14px}.site-manager-phase2-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.site-manager-phase2-summary article{min-width:0;padding:14px 16px;border:1px solid #dce8e3;border-radius:12px;background:linear-gradient(135deg,#f8fbf9,#f0f6f3)}.site-manager-phase2-summary span,.site-manager-phase2-summary strong,.site-manager-phase2-summary small{display:block}.site-manager-phase2-summary span{color:var(--muted);font-size:.58rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.site-manager-phase2-summary strong{overflow:hidden;margin-top:6px;color:var(--green-2);font-size:.91rem;text-overflow:ellipsis;white-space:nowrap}.site-manager-phase2-summary small{margin-top:3px;color:var(--muted);font-size:.61rem}.site-manager-phase2-card{overflow:hidden;border:1px solid var(--border);border-radius:14px;background:#fff}.site-manager-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:17px 18px;border-bottom:1px solid #e8eeeb;background:#fbfcfb}.site-manager-card-heading>div>span{color:var(--green);font-size:.56rem;font-weight:900;letter-spacing:.13em}.site-manager-card-heading h3{margin:4px 0;font-size:.94rem}.site-manager-card-heading p{max-width:650px;margin:0;color:var(--muted);font-size:.66rem;line-height:1.5}.configuration-state,.section-total{flex:0 0 auto;padding:6px 9px;border-radius:999px;background:#f2eee3;color:#866316;font-size:.59rem;font-weight:850;white-space:nowrap}.configuration-state.configured{background:#e7f2ec;color:#17664d}.section-total{background:#eaf2ef;color:var(--green)}.site-manager-identity-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:16px;padding:18px}.site-manager-config-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.site-manager-config-form label,.site-manager-category-form label{display:grid;align-content:start;gap:6px;color:var(--ink);font-size:.64rem;font-weight:800}.site-manager-config-form input,.site-manager-config-form textarea,.site-manager-category-form input,.site-expense-review-form input,.site-expense-review-form select{width:100%;min-height:41px;padding:9px 11px;border:1px solid var(--border);border-radius:9px;background:#fafbfa;color:var(--ink);font:inherit;outline:0}.site-manager-config-form textarea{resize:vertical}.site-manager-config-form input:focus,.site-manager-config-form textarea:focus,.site-manager-category-form input:focus,.site-expense-review-form input:focus,.site-expense-review-form select:focus{border-color:var(--green-2);box-shadow:0 0 0 3px rgba(15,107,87,.1)}.site-manager-config-form .full-field{grid-column:1/-1}.form-action-row{display:flex!important;align-items:center;justify-content:flex-end}.site-manager-logo-card{display:flex;min-width:0;align-items:flex-start;flex-direction:column;padding:17px;border:1px dashed #a9c4b9;border-radius:12px;background:#f4f8f6}.logo-state-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:#e3efea;color:var(--green)}.logo-state-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.site-manager-logo-card>strong{margin-top:13px;font-size:.78rem}.site-manager-logo-card>p{margin:6px 0 14px;color:var(--muted);font-size:.62rem;line-height:1.55}.site-manager-logo-form{display:grid;width:100%;gap:10px;margin-top:auto}.site-manager-logo-form input[type=file]{width:100%;padding:9px;border:1px solid #cbded6;border-radius:9px;background:#fff;font-size:.61rem}.site-manager-logo-form .secondary-action{width:100%}.site-manager-category-form{display:grid;grid-template-columns:minmax(150px,.75fr) minmax(180px,1fr) minmax(220px,1.35fr) 105px auto auto;align-items:end;gap:10px;padding:16px 18px;background:#f7faf8}.site-manager-category-form .checkbox-line{display:flex;min-height:41px;align-items:center;gap:7px;padding:0 5px}.site-manager-category-form .checkbox-line input{width:16px;min-height:16px;margin:0}.site-manager-table-wrap{margin:0;border:0;border-radius:0}.site-manager-category-table,.site-manager-expense-table{min-width:780px}.site-manager-category-table td>small,.site-manager-expense-table td>small{display:block;margin-top:4px;color:var(--muted);line-height:1.35}.site-manager-expense-table{min-width:900px}.site-manager-expense-table td{vertical-align:top}.expense-amount{font-weight:850;white-space:nowrap}.receipt-link{display:grid;max-width:190px;gap:3px;color:var(--green);font-size:.64rem;font-weight:800;text-decoration:none;word-break:break-word}.receipt-link:hover{text-decoration:underline}.receipt-link small{font-weight:600}.missing-receipt{display:inline-block;padding:5px 7px;border-radius:6px;background:#f4eeee;color:#995555;font-size:.59rem;font-weight:800}.reviewed-by{display:block;margin-top:5px;color:var(--muted);font-size:.58rem}.site-expense-review-form{display:grid;grid-template-columns:minmax(100px,.7fr) minmax(135px,1fr);gap:7px;min-width:275px}.site-expense-review-form .table-action{grid-column:1/-1;justify-self:end}.compact-empty{margin:16px 18px}.site-manager-phase2-card>.vehicle-empty{border-radius:10px}@media(max-width:1100px){.site-manager-category-form{grid-template-columns:repeat(2,minmax(0,1fr))}.site-manager-category-form .category-description{grid-column:1/-1}.site-manager-category-form .primary-action{justify-self:end}.site-manager-identity-layout{grid-template-columns:minmax(0,1fr) 220px}}@media(max-width:760px){.site-manager-phase2-summary{grid-template-columns:1fr}.site-manager-card-heading{align-items:flex-start;flex-direction:column}.site-manager-identity-layout{grid-template-columns:1fr}.site-manager-config-form{grid-template-columns:1fr}.site-manager-config-form .full-field{grid-column:auto}.site-manager-logo-card{min-height:0}.site-manager-category-form{grid-template-columns:1fr}.site-manager-category-form .category-description{grid-column:auto}.site-manager-category-form .primary-action,.form-action-row .primary-action{width:100%}.form-action-row{display:block!important}}@media(max-width:480px){.site-manager-card-heading,.site-manager-identity-layout,.site-manager-category-form{padding:14px}.site-manager-phase2-summary article{padding:12px 14px}}
.role-catalogue{margin-top:20px}.role-catalogue-heading{margin-bottom:13px;display:flex;align-items:center;justify-content:space-between;gap:16px}.role-catalogue-heading h3{margin:0 0 4px;font-size:.96rem}.role-catalogue-heading p{margin:0;color:var(--muted);font-size:.72rem}.role-catalogue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.role-catalogue-grid article{padding:17px;background:#fff;border:1px solid var(--border);border-radius:13px}.role-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.role-code{display:inline-block;padding:5px 7px;border-radius:6px;background:#eaf1ee;color:var(--green);font-size:.58rem;font-weight:900;letter-spacing:.07em}.system-role-badge{padding:4px 7px;border-radius:999px;background:#f0f1ed;color:#77807c;font-size:.55rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.role-catalogue-grid h4{margin:13px 0 6px;font-size:.82rem}.role-catalogue-grid p{min-height:42px;margin:0;color:var(--muted);font-size:.66rem;line-height:1.5}.role-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:13px;padding-top:10px;border-top:1px solid #edf0ed}.role-card-footer>span{color:var(--green-2);font-size:.63rem;font-weight:750}.role-actions{display:flex;align-items:center}.role-form textarea{width:100%;resize:vertical;padding:12px 13px;border:1px solid var(--border);border-radius:10px;outline:0;background:#fafbfa;font:inherit}.role-form textarea:focus{border-color:var(--green-2);box-shadow:0 0 0 3px rgba(15,107,87,.1)}.role-form input:read-only{color:#68736f;background:#edf0ed;cursor:not-allowed}@media(max-width:1150px){.role-catalogue-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.role-catalogue-heading{align-items:stretch;flex-direction:column}.role-catalogue-heading .primary-action{width:100%}.role-catalogue-grid{grid-template-columns:1fr}}@media(max-width:420px){.role-card-footer{align-items:flex-start;flex-direction:column}}

/* Dynamic operations and permissions */
.module-access-strip{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:-10px 0 20px}.module-access-label{margin-right:3px;color:var(--muted);font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.operation-chip{padding:6px 9px;border:1px solid #d7e4df;border-radius:999px;background:#edf5f2;color:var(--green);font-size:.62rem;font-weight:750}.operation-fieldset{max-height:310px;overflow:auto}.operation-checkbox-group{padding:4px 0 10px;border-bottom:1px solid #edf0ed}.operation-checkbox-group:last-child{border-bottom:0}.operation-checkbox-group h4{margin:8px 9px 4px;color:var(--green);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em}.operation-checkbox-group label{display:flex;align-items:flex-start;gap:10px;padding:7px 9px;border-radius:8px}.operation-checkbox-group label:hover{background:#f5f7f5}.operation-checkbox-group input{margin-top:3px;accent-color:var(--green)}.operation-checkbox-group strong,.operation-checkbox-group small{display:block}.operation-checkbox-group strong{font-size:.7rem}.operation-checkbox-group small{margin-top:2px;color:var(--muted);font-size:.58rem}.operation-management{margin-top:24px}.operation-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.operation-module-card{overflow:hidden;border:1px solid var(--border);border-radius:14px;background:#fff}.operation-module-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;background:#fafbfa;border-bottom:1px solid var(--border)}.operation-module-heading h4{margin:0 0 4px;font-size:.82rem}.operation-module-heading code{color:var(--green-2);font-size:.61rem}.operation-module-heading>span{color:var(--muted);font-size:.62rem}.operation-list{padding:3px 15px}.operation-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:11px 2px;border-bottom:1px solid #edf0ed}.operation-row:last-child{border-bottom:0}.operation-row strong,.operation-row small{display:block}.operation-row strong{font-size:.7rem}.operation-row small{margin-top:3px;color:var(--muted);font-size:.57rem;letter-spacing:.04em}.operation-row>span{color:var(--muted);font-size:.61rem}.dynamic-operation-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:22px}.dynamic-operation-list article{padding:18px;border:1px solid var(--border);border-radius:12px;background:#fafbfa}.dynamic-operation-list h3{margin:13px 0 6px;font-size:.84rem}.dynamic-operation-list p{margin:0;color:var(--muted);font-size:.68rem;line-height:1.5}@media(max-width:1050px){.operation-module-grid{grid-template-columns:1fr}}@media(max-width:650px){.operation-row{grid-template-columns:1fr auto}.operation-row>span{display:none}.dynamic-operation-list{grid-template-columns:1fr;padding:15px}}

/* Vehicle register */
.vehicle-toolbar{padding:17px 19px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--border)}.vehicle-table-controls{display:flex;align-items:center;gap:14px;flex:1}.vehicle-page-size{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.69rem}.vehicle-page-size select,.vehicle-status-form select{padding:8px 9px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--ink);font-size:.67rem}.vehicles-table-wrap{overflow-x:auto}.vehicles-table{width:100%;min-width:1280px;border-collapse:collapse}.vehicles-table th{padding:11px 14px;background:#fafbfa;border-bottom:1px solid var(--border);text-align:left}.vehicles-table th button{display:flex;align-items:center;gap:7px;padding:0;border:0;background:transparent;color:#7e8a85;font-size:.6rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em;cursor:pointer}.vehicles-table th button span{color:#b2bab7}.vehicles-table th button.sorted{color:var(--green)}.vehicles-table th button[data-direction="asc"] span:after{content:" ↑"}.vehicles-table th button[data-direction="desc"] span:after{content:" ↓"}.vehicles-table td{padding:13px 14px;border-bottom:1px solid #edf0ed;vertical-align:top;font-size:.7rem}.vehicles-table td>strong,.vehicles-table td>small,.vehicle-primary strong,.vehicle-primary small{display:block}.vehicles-table td>small,.vehicle-primary small{margin-top:4px;color:var(--muted);font-size:.61rem}.vehicle-primary strong{color:var(--green);font-size:.76rem}.vehicle-details{margin-top:7px}.vehicle-details summary{color:var(--green-2);font-size:.6rem;font-weight:750;cursor:pointer}.vehicle-detail-popover{width:330px;display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:9px;padding:11px;border:1px solid var(--border);border-radius:9px;background:#fafbfa}.vehicle-detail-popover span{min-width:0}.vehicle-detail-popover .full{grid-column:1/-1}.vehicle-detail-popover small,.vehicle-detail-popover strong{display:block}.vehicle-detail-popover small{color:var(--muted);font-size:.55rem}.vehicle-detail-popover strong{margin-top:3px;overflow-wrap:anywhere;font-size:.62rem}.vehicle-documents{display:grid;grid-template-columns:1fr 1fr;gap:7px}.vehicle-documents span{display:block}.vehicle-documents small,.vehicle-documents strong{display:block}.vehicle-documents small{color:var(--muted);font-size:.54rem}.vehicle-documents strong{margin-top:2px;font-size:.6rem}.vehicle-status{display:inline-flex;padding:5px 8px;border-radius:999px;background:#edf3f1;color:var(--green);font-size:.59rem;font-weight:800;white-space:nowrap}.vehicle-status.status-maintenance{background:#fff2df;color:#9a5d22}.vehicle-status.status-out_of_service{background:#f8e7e5;color:#913f38}.vehicle-status.status-sold,.vehicle-status.status-retired{background:#eceeed;color:#68726e}.vehicle-actions{min-width:180px}.vehicle-status-form{display:flex;align-items:center;gap:3px;margin-top:4px}.vehicle-empty{padding:45px;text-align:center;color:var(--muted);font-size:.75rem}.vehicle-table-footer{min-height:58px;padding:12px 18px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--border);color:var(--muted);font-size:.66rem}.vehicle-pagination{display:flex;gap:4px}.vehicle-pagination button{min-width:32px;padding:7px 9px;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--green);font-size:.62rem;cursor:pointer}.vehicle-pagination button.active{border-color:var(--green);background:var(--green);color:#fff}.vehicle-pagination button:disabled{color:#aeb5b2;cursor:not-allowed}.vehicle-dialog{width:min(920px,calc(100% - 32px))}.vehicle-form-sections{display:grid;grid-template-columns:1fr 1fr;gap:14px}.vehicle-form-sections fieldset{min-width:0;margin:0;padding:15px;border:1px solid var(--border);border-radius:12px}.vehicle-form-sections legend{padding:0 6px;color:var(--green);font-size:.7rem;font-weight:850}.vehicle-form label{display:grid;gap:6px;color:var(--ink);font-size:.68rem;font-weight:750}.vehicle-form input,.vehicle-form select,.vehicle-form textarea{width:100%;padding:10px 11px;border:1px solid var(--border);border-radius:9px;outline:0;background:#fafbfa;font:inherit}.vehicle-form textarea{resize:vertical}.vehicle-form input:focus,.vehicle-form select:focus,.vehicle-form textarea:focus{border-color:var(--green-2);box-shadow:0 0 0 3px rgba(15,107,87,.1)}@media(max-width:850px){.vehicle-form-sections{grid-template-columns:1fr}.vehicle-toolbar,.vehicle-table-controls{align-items:stretch;flex-direction:column}.vehicle-toolbar .primary-action{width:100%}.vehicle-table-controls .user-search-wrap{width:100%}}@media(max-width:560px){.vehicle-summary-grid{grid-template-columns:1fr 1fr}.vehicle-table-footer{align-items:flex-start;flex-direction:column}.vehicle-pagination{flex-wrap:wrap}}

/* Vehicle bulk import */
.vehicle-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.vehicle-template-link{display:inline-flex;align-items:center;text-decoration:none}.vehicle-import-dialog{width:min(820px,calc(100% - 32px))}.vehicle-import-content{padding:25px}.vehicle-import-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 20px;padding:0;list-style:none;counter-reset:vehicle-import}.vehicle-import-steps li{position:relative;min-height:76px;padding:13px 13px 13px 46px;border:1px solid var(--border);border-radius:11px;background:#fafbfa;counter-increment:vehicle-import}.vehicle-import-steps li:before{content:counter(vehicle-import);position:absolute;left:13px;top:13px;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#e4eee9;color:var(--green);font-size:.66rem;font-weight:900}.vehicle-import-steps strong,.vehicle-import-steps span{display:block}.vehicle-import-steps strong{font-size:.72rem}.vehicle-import-steps span{margin-top:5px;color:var(--muted);font-size:.63rem;line-height:1.4}.vehicle-import-upload{display:flex;align-items:end;gap:12px;padding:16px;border:1px dashed #aebfba;border-radius:12px;background:#f6f9f7}.vehicle-import-upload label{display:grid;flex:1;gap:7px;color:var(--ink);font-size:.7rem;font-weight:800}.vehicle-import-upload input{width:100%;padding:10px;border:1px solid var(--border);border-radius:9px;background:#fff;font-size:.68rem}.vehicle-import-result{margin-top:18px;padding:17px;border:1px solid var(--border);border-radius:12px}.vehicle-import-result.valid{border-color:#b9ddca;background:#f4fbf7}.vehicle-import-result.invalid{border-color:#edc1bc;background:#fff8f7}.vehicle-import-result-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.vehicle-import-result-heading strong,.vehicle-import-result-heading span{display:block}.vehicle-import-result-heading strong{font-size:.84rem}.vehicle-import-result-heading div>span{margin-top:5px;color:var(--muted);font-size:.65rem}.vehicle-validation-badge{padding:6px 9px;border-radius:999px;background:#f2d9d6;color:#8a302a;font-size:.59rem;font-weight:850;white-space:nowrap}.vehicle-import-result.valid .vehicle-validation-badge{background:#dcefe5;color:#246347}.vehicle-import-errors>p,.vehicle-import-ready>p{margin:15px 0 12px;color:var(--muted);font-size:.7rem;line-height:1.55}.vehicle-import-error-table-wrap{max-height:250px;margin-bottom:13px;overflow:auto;border:1px solid var(--border);border-radius:9px;background:#fff}.vehicle-import-error-table{width:100%;border-collapse:collapse}.vehicle-import-error-table th{position:sticky;top:0;padding:9px 11px;background:#f5f6f5;color:#737f7a;text-align:left;font-size:.58rem;text-transform:uppercase;letter-spacing:.06em}.vehicle-import-error-table td{padding:9px 11px;border-top:1px solid #edf0ed;font-size:.66rem;vertical-align:top}.vehicle-import-error-table th:first-child,.vehicle-import-error-table td:first-child{width:80px}.vehicle-import-error-table th:nth-child(2),.vehicle-import-error-table td:nth-child(2){width:180px}.marked-workbook-link{display:inline-flex;text-decoration:none}.vehicle-import-ready{display:flex;align-items:center;justify-content:space-between;gap:15px}.vehicle-import-ready p{margin-bottom:0}@media(max-width:850px){.vehicle-toolbar-actions{width:100%;justify-content:stretch}.vehicle-toolbar-actions>*{flex:1;text-align:center;justify-content:center}.vehicle-import-steps{grid-template-columns:1fr}.vehicle-import-upload,.vehicle-import-ready{align-items:stretch;flex-direction:column}}@media(max-width:560px){.vehicle-import-content{padding:20px}.vehicle-import-result-heading{align-items:flex-start;flex-direction:column}.vehicle-toolbar-actions>*{flex-basis:100%}}

/* Driver register */
.driver-admin-module .vehicles-table{min-width:1320px}.driver-admin-module .vehicle-detail-popover{width:390px}.vehicle-status.status-on_leave{background:#fff2df;color:#9a5d22}.vehicle-status.status-suspended{background:#f8e7e5;color:#913f38}.vehicle-status.status-inactive,.vehicle-status.status-retired{background:#eceeed;color:#68726e}

/* Vehicle-driver allocation */
.allocation-table{min-width:850px}.allocation-dialog{width:min(760px,calc(100% - 32px))}.allocation-dialog form{padding:25px}.allocation-availability-note{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px;padding:12px 14px;border:1px solid #d8e6e0;border-radius:10px;background:#f2f8f5}.allocation-availability-note strong,.allocation-availability-note span{font-size:.67rem}.allocation-availability-note strong{color:var(--green)}.allocation-availability-note span{color:var(--muted);text-align:right}.allocation-form-grid select,.allocation-form-grid input,.allocation-form-grid textarea{width:100%;padding:11px 12px;border:1px solid var(--border);border-radius:9px;background:#fafbfa;font:inherit}.vehicle-status.status-planned{background:#e8eef8;color:#49658d}.vehicle-status.status-completed{background:#e6f4ed;color:#226449}.vehicle-status.status-cancelled{background:#eceeed;color:#68726e}@media(max-width:650px){.allocation-availability-note{flex-direction:column}.allocation-availability-note span{text-align:left}}

/* Vehicle and driver compliance */
.compliance-workspace{overflow:hidden}.compliance-scope-tabs{display:flex;padding:6px;background:#edf2ef;border-bottom:1px solid var(--border)}.compliance-scope-tabs button{flex:1;padding:13px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:.73rem;font-weight:800;cursor:pointer}.compliance-scope-tabs button.active{background:#fff;color:var(--green);box-shadow:0 2px 8px rgba(20,54,44,.08)}.compliance-mode-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 19px;border-bottom:1px solid var(--border)}.compliance-mode-tabs{display:flex;gap:5px;padding:4px;border-radius:10px;background:#f3f5f3}.compliance-mode-tabs button{padding:9px 12px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:.65rem;font-weight:750;cursor:pointer}.compliance-mode-tabs button.active{background:var(--green);color:#fff}.compliance-actions{display:flex;gap:8px}.compliance-filter-bar{display:flex;align-items:end;gap:12px;padding:14px 19px;border-bottom:1px solid var(--border);background:#fbfcfb}.compliance-filter-bar .user-search-wrap{flex:1}.compliance-filter-bar label{display:grid;gap:5px;color:var(--muted);font-size:.61rem;font-weight:750}.compliance-filter-bar select{min-width:150px;padding:9px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--ink);font-size:.66rem}.compliance-overall-note{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 19px;background:#f2f8f5;border-bottom:1px solid #dce9e3}.compliance-overall-note div strong,.compliance-overall-note div span{display:block}.compliance-overall-note strong{color:var(--green);font-size:.71rem}.compliance-overall-note span{margin-top:3px;color:var(--muted);font-size:.62rem}.compliance-overall-note b{padding:6px 9px;border-radius:999px;background:#deede6;color:var(--green);font-size:.61rem;white-space:nowrap}.compliance-table{min-width:1250px}.compliance-health{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:.59rem;font-weight:850;white-space:nowrap}.health-compliant{background:#e2f1e9;color:#226449}.health-expiring_soon{background:#fff1d8;color:#98601f}.health-expired,.health-rejected{background:#f8e3e1;color:#913f38}.health-missing{background:#eceeed;color:#68726e}.health-pending{background:#e6edf8;color:#49658d}.compliance-documents{display:grid;gap:5px;max-width:230px}.compliance-documents a{overflow:hidden;color:var(--green-2);font-size:.61rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.compliance-no-document{color:#929b97;font-size:.61rem}.compliance-dialog{width:min(760px,calc(100% - 32px))}.compliance-form-grid select,.compliance-form-grid input,.compliance-form-grid textarea,.compliance-type-dialog select,.compliance-type-dialog textarea{width:100%;padding:11px 12px;border:1px solid var(--border);border-radius:9px;background:#fafbfa;font:inherit}.compliance-upload-field{padding:13px;border:1px dashed #aebfba;border-radius:10px;background:#f6f9f7}.compliance-upload-field input{background:#fff}.compliance-checkbox{display:flex!important;align-items:center;gap:9px;grid-column:1/-1}.compliance-checkbox input{width:auto!important;accent-color:var(--green)}@media(max-width:950px){.compliance-mode-bar,.compliance-filter-bar{align-items:stretch;flex-direction:column}.compliance-actions>*{flex:1}.compliance-filter-bar .user-search-wrap,.compliance-filter-bar label,.compliance-filter-bar select{width:100%}.compliance-mode-tabs{display:grid;grid-template-columns:1fr 1fr 1fr}}@media(max-width:600px){.compliance-scope-tabs,.compliance-actions{flex-direction:column}.compliance-mode-tabs{grid-template-columns:1fr}.compliance-overall-note{align-items:flex-start;flex-direction:column}}

/* POL workspace */
.oil-workspace-tabs{display:flex;gap:4px;margin-bottom:18px;padding:5px;overflow-x:auto;border:1px solid var(--border);border-radius:12px;background:#edf2ef}.oil-workspace-tabs button{padding:10px 13px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:.65rem;font-weight:800;white-space:nowrap;cursor:pointer}.oil-workspace-tabs button.active{background:var(--green);color:#fff}.oil-workspace-tabs button:disabled{opacity:.42;cursor:not-allowed}.oil-summary-grid{grid-template-columns:repeat(6,1fr)}.oil-summary-grid article small{display:block;margin-top:5px;color:var(--muted);font-size:.58rem}.oil-dashboard-columns{grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr)}.oil-flow-strip{display:flex;align-items:center;gap:7px;padding:22px;overflow-x:auto}.oil-flow-strip span{padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:#f7f8f7;color:#89928e;font-size:.62rem;font-weight:800;white-space:nowrap}.oil-flow-strip span.ready{border-color:#bdd9cc;background:#e8f4ee;color:var(--green)}.oil-flow-strip i{color:#a6b0ab;font-style:normal}.oil-phase-message{padding:0 22px 22px}.oil-phase-message strong{font-size:.82rem}.oil-phase-message p{margin:6px 0 15px;color:var(--muted);font-size:.69rem;line-height:1.55}.oil-master-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}.oil-master-heading h3{margin:0 0 4px;font-family:Georgia,serif;font-size:1.25rem;font-weight:500}.oil-master-heading p{margin:0;color:var(--muted);font-size:.69rem}.oil-master-heading>div:last-child{display:flex;gap:8px}.oil-master-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.oil-master-card{min-width:0;overflow:hidden}.oil-list-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--border)}.oil-list-heading h3,.oil-list-heading p{margin:0}.oil-list-heading h3{font-size:.86rem}.oil-list-heading p{margin-top:3px;color:var(--muted);font-size:.6rem}.oil-list-heading .user-search-wrap{width:230px;height:36px}.oil-card-list{max-height:620px;overflow:auto}.oil-card-list>article{padding:15px 17px;border-bottom:1px solid #edf0ed}.oil-card-main h4{margin:8px 0 4px;font-size:.78rem}.oil-card-main p{margin:0;color:var(--muted);font-size:.62rem;line-height:1.45}.oil-card-list dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:13px 0 0}.oil-card-list dl div{min-width:0}.oil-card-list dt{color:#8a9490;font-size:.53rem;text-transform:uppercase;letter-spacing:.06em}.oil-card-list dd{margin:3px 0 0;overflow-wrap:anywhere;font-size:.62rem}.oil-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:10px;border-top:1px solid #f0f2f0}.oil-dialog{width:min(780px,calc(100% - 32px))}.oil-dialog select,.oil-dialog textarea,.oil-dialog input{width:100%;padding:11px 12px;border:1px solid var(--border);border-radius:9px;background:#fafbfa;font:inherit}.oil-dialog textarea{resize:vertical}@media(max-width:1250px){.oil-summary-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:950px){.oil-master-grid,.oil-dashboard-columns{grid-template-columns:1fr}.oil-master-heading{align-items:stretch;flex-direction:column}}@media(max-width:620px){.oil-summary-grid{grid-template-columns:1fr 1fr}.oil-master-heading>div:last-child,.oil-list-heading{align-items:stretch;flex-direction:column}.oil-list-heading .user-search-wrap{width:100%}.oil-master-heading button{flex:1}}

/* POL contracts */
.oil-contract-heading{padding:18px 19px;margin:0;border-bottom:1px solid var(--border)}.oil-contract-toolbar{display:flex;align-items:end;gap:14px;padding:14px 19px;background:#fafbfa;border-bottom:1px solid var(--border)}.oil-contract-toolbar .user-search-wrap{flex:1}.oil-contract-toolbar label{display:grid;gap:5px;color:var(--muted);font-size:.6rem;font-weight:800}.oil-contract-toolbar select{min-width:170px;padding:9px;border:1px solid var(--border);border-radius:8px;background:#fff;font-size:.66rem}.oil-tender-list>article{padding:18px 19px;border-bottom:1px solid var(--border)}.oil-tender-header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.oil-tender-header>div:last-child{display:flex;align-items:center;gap:5px}.oil-tender-header h4{margin:9px 0 4px;font-size:.88rem}.oil-tender-header p{margin:0;color:var(--muted);font-size:.65rem}.oil-tender-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:14px}.oil-tender-metrics span{padding:10px;border-radius:9px;background:#f7f8f7}.oil-tender-metrics small,.oil-tender-metrics strong{display:block}.oil-tender-metrics small{color:var(--muted);font-size:.54rem}.oil-tender-metrics strong{margin-top:4px;font-size:.64rem}.oil-utilization{margin-top:13px}.oil-utilization>div{display:flex;justify-content:space-between;color:var(--muted);font-size:.59rem}.oil-utilization progress{width:100%;height:7px;margin-top:7px;border:0;border-radius:999px;overflow:hidden}.oil-utilization progress::-webkit-progress-bar{background:#e8ece9}.oil-utilization progress::-webkit-progress-value{background:var(--green-2)}.oil-contract-docs,.oil-inline-docs{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:11px}.oil-contract-docs span{color:var(--muted);font-size:.57rem;font-weight:800;text-transform:uppercase}.oil-contract-docs a,.oil-inline-docs a{padding:5px 7px;border-radius:6px;background:#edf4f1;color:var(--green-2);font-size:.57rem;font-weight:700;text-decoration:none}.oil-contract-details{margin-top:14px}.oil-contract-details>summary{color:var(--green-2);font-size:.64rem;font-weight:800;cursor:pointer}.oil-contract-columns{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:11px}.oil-contract-columns>section{padding:12px;border:1px solid var(--border);border-radius:10px;background:#fafbfa}.oil-subheading{display:flex;align-items:center;justify-content:space-between}.oil-subheading h5{margin:0;font-size:.69rem}.oil-sub-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid #e8ece9}.oil-sub-list>article:last-child{border-bottom:0}.oil-sub-list strong,.oil-sub-list small{display:block}.oil-sub-list strong{font-size:.63rem}.oil-sub-list small,.oil-sub-list>article>span,.oil-sub-list>p{margin-top:3px;color:var(--muted);font-size:.56rem}.oil-inline-docs{grid-column:1/-1;margin-top:0}.oil-contract-dialog{width:min(920px,calc(100% - 32px))}@media(max-width:900px){.oil-contract-columns{grid-template-columns:1fr}.oil-tender-metrics{grid-template-columns:1fr 1fr}.oil-contract-toolbar{align-items:stretch;flex-direction:column}.oil-contract-toolbar select{width:100%}}@media(max-width:600px){.oil-tender-header{flex-direction:column}.oil-tender-metrics{grid-template-columns:1fr}.oil-contract-heading>div:last-child{flex-direction:column}}

/* POL consignments */
.document-prefill-status{padding:11px 13px;border:1px solid #bed8ce;border-radius:9px;background:#edf7f3;color:var(--green);font-size:.68rem;line-height:1.5}.document-prefill-status.is-loading{border-color:#d9d5b2;background:#fffbea;color:#6f6421}.document-prefill-status.is-error{border-color:#e8c5c2;background:#fff0ee;color:var(--danger)}.document-prefill-status.is-warning{border-color:#e2d29d;background:#fff8df;color:#735f18}.document-prefill-status ul{margin:6px 0 0;padding-left:18px}.document-prefill-filled{outline:2px solid rgba(15,107,87,.25);outline-offset:1px}
.consignment-form-section{margin-top:7px;padding:10px 12px;border-left:3px solid var(--green-2);background:#f2f7f5}.consignment-form-section strong,.consignment-form-section small{display:block}.consignment-form-section strong{color:var(--green);font-size:.76rem}.consignment-form-section small{margin-top:3px;color:var(--muted);font-size:.61rem}.trip-source-preview{padding:10px 12px;border-radius:8px;background:#edf4f1;color:var(--green);font-size:.65rem;font-weight:700}
.consignment-product-options{display:flex;flex-wrap:wrap;gap:8px}.consignment-product-options label{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid var(--line);border-radius:9px;background:#fff;font-size:.72rem;font-weight:700}.consignment-product-options input{width:16px;height:16px;margin:0;accent-color:var(--green)}
.oil-consignment-table{min-width:1450px}.oil-consignment-table td>strong,.oil-consignment-table td>small{display:block}.oil-consignment-table td>small{margin-top:4px;color:var(--muted);font-size:.59rem}.oil-consignment-actions{min-width:210px}.oil-status-form{display:flex;align-items:center;gap:3px;margin-top:4px}.oil-status-form select{max-width:130px;padding:7px;border:1px solid var(--border);border-radius:7px;background:#fff;font-size:.6rem}.vehicle-status.status-draft{background:#eceeed;color:#68726e}.vehicle-status.status-confirmed{background:#e6edf8;color:#49658d}.vehicle-status.status-awaiting_allocation{background:#fff1d8;color:#98601f}.vehicle-status.status-trip_created,.vehicle-status.status-in_transit{background:#e7eef8;color:#315e91}.vehicle-status.status-delivered,.vehicle-status.status-awaiting_closure{background:#e2f1e9;color:#226449}.vehicle-status.status-closed{background:#dcebe4;color:#184f43}.vehicle-status.status-cancelled{background:#f8e3e1;color:#913f38}

/* POL trips */
.oil-trip-workspace{overflow:hidden}.oil-trip-list{display:grid;gap:14px;padding:18px;background:#f7f9f8}.oil-trip-card{padding:18px;border:1px solid var(--border);border-radius:13px;background:#fff;box-shadow:0 3px 12px rgba(24,54,45,.04)}.oil-trip-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.oil-trip-card h4{margin:8px 0 4px;font-size:.88rem}.oil-trip-card header p{margin:0;color:var(--muted);font-size:.65rem}.oil-trip-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.oil-trip-metrics span{padding:10px;border-radius:9px;background:#f5f7f6}.oil-trip-metrics small,.oil-trip-metrics strong{display:block}.oil-trip-metrics small{color:var(--muted);font-size:.54rem}.oil-trip-metrics strong{margin-top:4px;font-size:.63rem}.oil-trip-actions{display:flex;justify-content:flex-end;margin-top:12px}.oil-trip-actions form{display:flex;align-items:end;gap:8px}.oil-trip-actions label{display:grid;gap:4px;color:var(--muted);font-size:.58rem}.oil-trip-actions input{padding:9px;border:1px solid var(--border);border-radius:8px}.oil-trip-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.oil-trip-detail-grid>section{min-width:0;padding:13px;border:1px solid var(--border);border-radius:10px;background:#fafbfa}.oil-trip-detail-grid>section:last-child{grid-column:1/-1}.oil-subheading small{color:var(--muted);font-size:.56rem}.oil-check-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,.7fr) auto;align-items:center;gap:7px;padding:8px 0;border-bottom:1px solid #e8ece9}.oil-check-row label{display:flex;align-items:center;gap:7px;font-size:.62rem}.oil-check-row input[type=checkbox]{accent-color:var(--green)}.oil-check-row>input,.oil-trip-mini-form input,.oil-trip-mini-form select,.oil-trip-upload input,.oil-trip-upload select{min-width:0;width:100%;padding:8px;border:1px solid var(--border);border-radius:7px;background:#fff;font-size:.62rem}.oil-trip-mini-form{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.oil-trip-mini-form label{display:grid;gap:4px;color:var(--muted);font-size:.57rem}.oil-trip-mini-form .full-field,.oil-trip-mini-form button{grid-column:1/-1}.oil-event-list{display:grid;gap:5px;margin:11px 0 0;padding:0;list-style:none}.oil-event-list li{display:grid;grid-template-columns:auto auto 1fr;gap:8px;padding:7px;border-radius:7px;background:#fff;font-size:.58rem}.oil-event-list small{color:var(--muted)}.oil-trip-upload{display:grid;grid-template-columns:150px 1fr auto;gap:8px;margin-top:10px}.vehicle-status.status-awaiting_driver_assignment{background:#fff1d8;color:#98601f}.vehicle-status.status-allocated,.vehicle-status.status-pre_dispatch_ready,.vehicle-status.status-at_loading_terminal,.vehicle-status.status-loaded,.vehicle-status.status-dispatched,.vehicle-status.status-at_delivery_point{background:#e7eef8;color:#315e91}.vehicle-status.status-unloaded,.vehicle-status.status-pod_uploaded{background:#fff1d8;color:#98601f}@media(max-width:900px){.oil-trip-detail-grid{grid-template-columns:1fr}.oil-trip-detail-grid>section:last-child{grid-column:auto}.oil-trip-metrics{grid-template-columns:1fr 1fr}}@media(max-width:600px){.oil-trip-card>header{flex-direction:column}.oil-trip-metrics,.oil-trip-mini-form{grid-template-columns:1fr}.oil-trip-mini-form .full-field,.oil-trip-mini-form button{grid-column:auto}.oil-check-row,.oil-trip-upload{grid-template-columns:1fr}.oil-event-list li{grid-template-columns:1fr}}

/* POL consignment closure */
.oil-closure-workspace{overflow:hidden}.oil-closure-list{display:grid;gap:14px;padding:18px;background:#f7f9f8}.oil-closure-card{padding:18px;border:1px solid var(--border);border-radius:13px;background:#fff}.oil-closure-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.oil-closure-card h4{margin:8px 0 4px;font-size:.88rem}.oil-closure-card header p{margin:0;color:var(--muted);font-size:.64rem}.oil-closure-quantities{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:14px}.oil-closure-quantities span,.oil-closure-breakdown span{padding:10px;border-radius:9px;background:#f5f7f6}.oil-closure-quantities small,.oil-closure-quantities strong,.oil-closure-breakdown small,.oil-closure-breakdown strong{display:block}.oil-closure-quantities small,.oil-closure-breakdown small{color:var(--muted);font-size:.53rem}.oil-closure-quantities strong,.oil-closure-breakdown strong{margin-top:4px;font-size:.63rem}.oil-closure-quantities .closure-exception{background:#fff0ee;color:#8b342e}.oil-closure-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;margin-top:13px}.closure-reject-form{display:flex;gap:5px}.closure-reject-form input{min-width:220px;padding:9px;border:1px solid var(--border);border-radius:8px}.oil-closure-breakdown{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:11px}.oil-closure-note{padding:10px;border-left:3px solid #d69a44;background:#fff8ed;color:#74501d;font-size:.64rem}.closure-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.closure-preview span{padding:10px;border-radius:8px;background:#edf4f1;color:var(--muted);font-size:.62rem}.closure-preview strong{display:block;margin-top:4px;color:var(--green);font-size:.76rem}.vehicle-status.status-submitted{background:#e7eef8;color:#315e91}.vehicle-status.status-rejected{background:#f8e3e1;color:#913f38}.vehicle-status.status-approved{background:#dcebe4;color:#184f43}@media(max-width:1050px){.oil-closure-quantities,.oil-closure-breakdown{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.oil-closure-card>header{flex-direction:column}.oil-closure-quantities,.oil-closure-breakdown,.closure-preview{grid-template-columns:1fr 1fr}.closure-reject-form{width:100%}.closure-reject-form input{min-width:0;flex:1}}

/* CNG reports */
.cng-reports-workspace,.oil-reports-workspace{overflow:hidden}.cng-report-actions,.oil-report-actions{display:flex;gap:8px}.cng-report-panel .vehicles-table,.oil-report-panel .vehicles-table{min-width:1080px}.cng-report-panel .oil-list-heading,.oil-report-panel .oil-list-heading{background:#fff}.cng-report-panel td>strong,.cng-report-panel td>small,.oil-report-panel td>strong,.oil-report-panel td>small{display:block}.cng-report-panel td>small,.oil-report-panel td>small{margin-top:4px;color:var(--muted);font-size:.59rem}@media(max-width:700px){.cng-report-actions,.oil-report-actions{align-items:stretch;flex-direction:column}}
.oil-bills-layout{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(520px,1.28fr);gap:16px}.oil-bill-entry-panel,.oil-bill-review-panel{min-width:0;overflow:hidden}.oil-bill-form{padding:18px}.oil-bill-form fieldset{display:grid;gap:12px;margin:0;padding:0;border:0}.oil-bill-form fieldset:disabled{opacity:.62}.oil-bill-form label{display:grid;gap:6px;color:#34433c;font-size:.65rem;font-weight:800}.oil-bill-form input,.oil-bill-form select,.oil-bill-form textarea{width:100%;padding:10px 11px;border:1px solid var(--border);border-radius:8px;background:#fafbfa;font:inherit}.oil-bill-form textarea{resize:vertical}.oil-bill-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.oil-bill-selected{padding:13px;border:1px solid #c6dbd1;border-radius:10px;background:#eef6f2}.oil-bill-selected small,.oil-bill-selected strong,.oil-bill-selected span{display:block}.oil-bill-selected small{color:var(--muted);font-size:.55rem;text-transform:uppercase;letter-spacing:.07em}.oil-bill-selected strong{margin-top:4px;font-size:.78rem}.oil-bill-selected span{margin-top:3px;color:var(--muted);font-size:.61rem}.oil-bill-review-content{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(320px,1.2fr);min-height:560px;border-top:1px solid var(--border)}.oil-bill-list{max-height:650px;overflow:auto;border-right:1px solid var(--border)}.oil-bill-list>button{display:grid;width:100%;gap:9px;padding:14px 16px;border:0;border-bottom:1px solid #edf0ed;background:#fff;text-align:left;cursor:pointer}.oil-bill-list>button:hover,.oil-bill-list>button.active{background:#edf6f2}.oil-bill-list>button>span:not(.vehicle-status){min-width:0}.oil-bill-list strong,.oil-bill-list small{display:block;overflow-wrap:anywhere}.oil-bill-list strong{font-size:.69rem}.oil-bill-list small{margin-top:3px;color:var(--muted);font-size:.58rem}.oil-bill-list .vehicle-status{justify-self:start}.oil-bill-preview-shell{display:flex;min-height:560px;padding:14px;align-items:center;flex-direction:column;gap:10px;background:#f3f6f4}.oil-bill-preview-shell iframe{width:100%;min-height:505px;border:1px solid var(--border);border-radius:9px;background:#fff}.oil-bill-preview-shell>a{align-self:flex-end;background:#fff}.oil-bill-preview-shell>div{margin:auto;max-width:280px;text-align:center;color:var(--muted)}.oil-bill-preview-shell>div strong{color:var(--ink)}.oil-bill-preview-shell>div p{font-size:.66rem;line-height:1.55}@media(max-width:1100px){.oil-bills-layout{grid-template-columns:1fr}.oil-bill-review-content{grid-template-columns:minmax(250px,.75fr) minmax(300px,1.25fr)}}@media(max-width:720px){.oil-bill-review-content{grid-template-columns:1fr}.oil-bill-list{max-height:360px;border-right:0;border-bottom:1px solid var(--border)}.oil-bill-form-row{grid-template-columns:1fr}}
.oil-admin-bill-upload{background:#f7faf8}.oil-admin-bill-upload label>small{color:var(--muted);font-size:.55rem;font-weight:500}.oil-admin-bill-upload button{justify-self:start}.oil-bill-form-divider{display:flex;align-items:center;gap:10px;padding:0 18px;color:var(--green);font-size:.57rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.oil-bill-form-divider:before,.oil-bill-form-divider:after{content:"";height:1px;flex:1;background:#d9e3de}.oil-bill-form-divider span{white-space:nowrap}
.billing-workspace-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px;padding:18px 20px;border:1px solid #cbded6;border-radius:15px;background:linear-gradient(135deg,#f5faf7,#eaf4ef)}.billing-workspace-heading span,.foundation-kicker{color:var(--green);font-size:.58rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.billing-workspace-heading h3{margin:5px 0 3px;font-family:Georgia,serif;font-size:1.35rem}.billing-workspace-heading p{margin:0;color:var(--muted);font-size:.68rem;line-height:1.5}.billing-accordion .admin-accordion-panel{background:#fbfcfb}.billing-accordion .admin-accordion-panel>*{margin-top:16px}.billing-accordion .oil-contract-summary{margin-bottom:14px}.transport-bill-foundation,.finance-bill-foundation{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:16px}.transport-bill-foundation>section,.finance-bill-foundation>section{padding:20px;border:1px solid var(--border);border-radius:13px;background:#fff}.transport-bill-foundation h4,.finance-bill-foundation h4{margin:6px 0;font-size:.9rem}.transport-bill-foundation p,.finance-bill-foundation p{margin:0;color:var(--muted);font-size:.66rem;line-height:1.55}.foundation-upload-placeholder{display:grid;gap:4px;margin-top:18px;padding:22px;border:1px dashed #9fbeb1;border-radius:12px;background:#f3f8f5;text-align:center}.foundation-upload-placeholder strong{font-size:.74rem}.foundation-upload-placeholder small{color:var(--muted);font-size:.61rem}.foundation-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:16px}.foundation-field-grid span{padding:10px;border:1px solid #e1e8e4;border-radius:8px;background:#f8faf9;color:#35463f;font-size:.63rem;font-weight:700}.finance-module,.finance-section-page{display:grid;gap:14px}.finance-billing-heading{margin-bottom:0}@media(max-width:820px){.transport-bill-foundation,.finance-bill-foundation{grid-template-columns:1fr}.foundation-field-grid{grid-template-columns:1fr}.billing-workspace-heading{align-items:flex-start;flex-direction:column}}
.transport-bill-upload{display:grid;gap:10px;margin-top:16px}.transport-bill-upload label{display:grid;gap:6px;font-size:.65rem;font-weight:800}.transport-bill-upload input{padding:10px;border:1px dashed #9fbeb1;border-radius:9px;background:#f7faf8}.transport-bill-list{display:grid;gap:14px}.transport-bill-card{padding:18px}.transport-bill-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.transport-bill-card h4{margin:5px 0 3px;font-size:.86rem}.transport-bill-card p{margin:0;color:var(--muted);font-size:.64rem}.transport-discrepancy-list{display:grid;gap:8px}.transport-discrepancy-list article{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:6px 12px}.transport-discrepancy-list article small,.transport-discrepancy-list article form{grid-column:1/-1}.transport-discrepancy-list span{font-size:.64rem}.transport-discrepancy-list .inline-review-form{display:flex;gap:8px}.transport-discrepancy-list .inline-review-form input{flex:1}@media(max-width:820px){.transport-bill-card>header{flex-direction:column}.transport-discrepancy-list article{grid-template-columns:1fr}}
.transport-bill-details{margin-top:14px}.transport-bill-sheet{margin-top:10px;border:1px solid #aab5b0;background:#fff;color:#17211d}.transport-bill-sheet-title{display:grid;grid-template-columns:1fr auto 1fr;align-items:start;gap:18px;padding:14px 16px;border-bottom:1px solid #aab5b0}.transport-bill-sheet-title>div:first-child,.transport-bill-document-meta{display:grid;gap:3px}.transport-bill-sheet-title span,.transport-bill-sheet-title small{font-size:.58rem}.transport-bill-sheet-title h5{margin:4px 0 0;font-family:Georgia,serif;font-size:1rem;text-align:center;text-decoration:underline}.transport-bill-document-meta{text-align:right}.transport-bill-meta-grid{display:grid;grid-template-columns:repeat(6,minmax(125px,1fr));border-bottom:1px solid #aab5b0}.transport-bill-meta-grid>span{display:grid;gap:4px;padding:10px 12px;border-right:1px solid #d6dcda}.transport-bill-meta-grid>span:last-of-type{border-right:0}.transport-bill-meta-grid small{color:#59655f;font-size:.52rem;font-weight:700;text-transform:uppercase}.transport-bill-meta-grid strong{font-size:.62rem}.transport-bill-declaration{grid-column:1/-1;margin:0!important;padding:9px 12px;border-top:1px solid #d6dcda;color:#34423c!important;font-size:.57rem!important;line-height:1.45!important}.transport-bill-table-wrap{width:100%;overflow:auto}.transport-bill-table{width:100%;min-width:1860px;border-collapse:collapse;font-size:.57rem;font-variant-numeric:tabular-nums}.transport-bill-table th,.transport-bill-table td{padding:6px 7px;border-right:1px solid #c8cfcc;border-bottom:1px solid #c8cfcc;text-align:right;white-space:nowrap}.transport-bill-table th{background:#e8eeeb;color:#21322b;font-weight:850;text-align:center}.transport-bill-table th:last-child,.transport-bill-table td:last-child{border-right:0}.transport-bill-table td:nth-child(5){text-align:left}.transport-party-cell{min-width:245px;white-space:normal!important}.transport-party-cell strong{line-height:1.35}.transport-bill-table td .account-status{font-size:.49rem}.transport-bill-table td>small{display:block;margin-top:3px;color:#67736d;font-size:.49rem}.transport-vehicle-row td{padding:6px 9px;background:#f1f5f3;text-align:left!important}.transport-subtotal-row td,.transport-bill-total-row td,.transport-all-total-row td{font-weight:800}.transport-subtotal-row td:first-child,.transport-bill-total-row td:first-child,.transport-all-total-row td:first-child{text-align:right}.transport-bill-total-row td{background:#f2f5f3}.transport-all-total-row td{background:#dfe9e4;color:#123e31}.transport-bill-source-note{margin:0!important;padding:10px 12px;color:#4d5954!important;font-size:.55rem!important;line-height:1.5!important}.transport-bill-table-wrap::-webkit-scrollbar{height:10px}.transport-bill-table-wrap::-webkit-scrollbar-thumb{border:2px solid #f5f7f6;border-radius:10px;background:#9eada6}@media(max-width:1050px){.transport-bill-meta-grid{grid-template-columns:repeat(3,1fr)}.transport-bill-meta-grid>span:nth-child(3){border-right:0}}@media(max-width:650px){.transport-bill-sheet-title{grid-template-columns:1fr}.transport-bill-sheet-title h5{text-align:left}.transport-bill-document-meta{text-align:left}.transport-bill-meta-grid{grid-template-columns:1fr 1fr}.transport-bill-meta-grid>span{border-bottom:1px solid #d6dcda}.transport-bill-meta-grid>span:nth-child(3){border-right:1px solid #d6dcda}.transport-bill-meta-grid>span:nth-child(even){border-right:0}}
.petrol-pump-admin{display:grid;gap:15px;margin-top:16px}.parser-profile-note{display:grid;gap:5px;padding:13px 15px;border:1px solid #d8e5df;border-radius:11px;background:#f5f9f7}.parser-profile-note strong{font-size:.68rem}.parser-profile-note span{color:var(--muted);font-size:.62rem;line-height:1.5}.petrol-pump-table{min-width:850px}.petrol-pump-table td>small,.diesel-bill-table td>small{display:block;margin-top:4px;color:var(--muted);line-height:1.35}.parser-key{display:inline-block;padding:5px 7px;border-radius:6px;background:#eaf2ef;color:var(--green);font-size:.56rem;font-weight:850;letter-spacing:.03em}.diesel-bill-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.diesel-bill-summary article{padding:13px 15px;border:1px solid #dce8e3;border-radius:11px;background:#fff}.diesel-bill-summary span,.diesel-bill-summary strong{display:block}.diesel-bill-summary span{color:var(--muted);font-size:.59rem;font-weight:750}.diesel-bill-summary strong{margin-top:5px;color:var(--green-2);font-size:1.05rem}.diesel-bill-upload select{min-height:41px;padding:8px 10px;border:1px solid var(--border);border-radius:9px;background:#fff;color:var(--ink)}.diesel-bill-upload .primary-action{justify-self:start}.diesel-bill-register{padding:18px;border:1px solid var(--border);border-radius:13px;background:#fff}.diesel-bill-register .users-table-wrap{margin-top:12px}.diesel-bill-table{min-width:940px}.diesel-bill-table td{vertical-align:top}.diesel-bill-table td:nth-child(5){max-width:240px}.diesel-bill-table .account-status+small{max-width:240px}.finance-billing-accordion .module-alert{margin-bottom:0}@media(max-width:820px){.diesel-bill-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.diesel-bill-summary{grid-template-columns:1fr}}
@media print{body.cng-report-printing *{visibility:hidden!important}body.cng-report-printing [data-cng-print-pane]:not([hidden]),body.cng-report-printing [data-cng-print-pane]:not([hidden]) *{visibility:visible!important}body.cng-report-printing [data-cng-print-pane]:not([hidden]){position:absolute;inset:0;width:100%;padding:0}body.cng-report-printing .oil-workspace-tabs,body.cng-report-printing .oil-contract-toolbar,body.cng-report-printing .cng-report-actions,body.cng-report-printing .user-summary-grid{display:none!important}body.cng-report-printing .cng-report-panel[hidden]{display:none!important}body.cng-report-printing .panel-card{border:0;box-shadow:none}body.cng-report-printing .vehicles-table{min-width:0;font-size:9pt}}
@media print{body.oil-report-printing *{visibility:hidden!important}body.oil-report-printing [data-oil-pane="reports"],body.oil-report-printing [data-oil-pane="reports"] *{visibility:visible!important}body.oil-report-printing [data-oil-pane="reports"]{position:absolute;inset:0;width:100%;padding:0}body.oil-report-printing .oil-workspace-tabs,body.oil-report-printing .oil-contract-toolbar,body.oil-report-printing .oil-report-actions,body.oil-report-printing .user-summary-grid{display:none!important}body.oil-report-printing .oil-report-panel[hidden]{display:none!important}body.oil-report-printing .panel-card{border:0;box-shadow:none}body.oil-report-printing .vehicles-table{min-width:0;font-size:9pt}}

/* POL trip preparation */
.trip-preparation{margin:14px 0;padding:14px;border:1px solid var(--border);border-radius:11px;background:#fafcfa}.trip-preparation-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:11px}.trip-preparation-step{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px;border:1px solid #dde4e0;border-radius:9px;background:#fff}.trip-preparation-step>span{display:grid;width:25px;height:25px;place-items:center;border-radius:50%;background:#edf1ef;color:#53605b;font-size:.65rem;font-weight:800}.trip-preparation-step.is-complete>span{background:#dceee6;color:#17624c}.trip-preparation-step strong,.trip-preparation-step small{display:block}.trip-preparation-step strong{font-size:.64rem}.trip-preparation-step small{margin-top:3px;color:var(--muted);font-size:.54rem}.trip-preparation-step button:disabled{cursor:not-allowed;opacity:.45}.expense-step{grid-column:1/-1}.trip-expense-form{grid-column:1/-1}.trip-expense-form fieldset{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0;padding:11px;border:1px dashed #cfd9d4;border-radius:9px}.trip-expense-form label{display:grid;gap:4px;color:var(--muted);font-size:.56rem}.trip-expense-form input,.trip-expense-form select,.ccms-form select{width:100%;padding:8px;border:1px solid var(--border);border-radius:7px;background:#fff}.trip-expense-form .full-field{grid-column:1/-1}.trip-expense-form button{grid-column:1/-1}.trip-expense-list{grid-column:1/-1;display:grid;gap:5px}.trip-expense-list>div{display:grid;grid-template-columns:100px minmax(120px,1fr) 100px minmax(100px,1fr);gap:8px;padding:8px 10px;border-radius:7px;background:#fff;font-size:.58rem}.trip-expense-list small{color:var(--muted)}.ccms-form{display:flex;align-items:center;gap:6px}.ccms-form select{min-width:82px}@media(max-width:800px){.trip-preparation-grid{grid-template-columns:1fr}.expense-step,.trip-expense-form,.trip-expense-list{grid-column:auto}.trip-expense-form fieldset{grid-template-columns:1fr 1fr}.trip-expense-list>div{grid-template-columns:1fr 1fr}}@media(max-width:520px){.trip-expense-form fieldset{grid-template-columns:1fr}.trip-preparation-step{grid-template-columns:28px 1fr}.trip-preparation-step form{grid-column:2}.trip-expense-list>div{grid-template-columns:1fr}}

/* POL and CNG vertical trip workspace */
.trip-workspace{padding:16px}.trip-workspace-panels{display:grid;gap:14px;margin-top:11px}.trip-workspace-panel{display:block!important;min-width:0;padding:14px;border:1px solid var(--border);border-radius:10px;background:#fff}.trip-workspace-panel>.trip-preparation-step{margin-bottom:10px}.trip-workspace-panel>.trip-preparation-step:last-child{margin-bottom:0}.trip-status-detail-grid{margin-top:0}.trip-status-detail-grid>section:first-child{grid-column:1/-1;background:#f2f7f4}.trip-status-detail-grid .oil-trip-actions{justify-content:flex-start}.trip-status-detail-grid>section:last-child{grid-column:1/-1}@media(max-width:900px){.trip-status-detail-grid>section:first-child,.trip-status-detail-grid>section:last-child{grid-column:auto}}@media(max-width:520px){.trip-workspace{padding:10px}.trip-workspace-panel{padding:10px}}

/* CNG consignment-to-closure workflow */
.cng-operational-flow{display:grid;grid-template-columns:repeat(7,max-content);align-items:center;justify-content:center;gap:10px;margin:0 0 16px;padding:11px 14px;border:1px solid #dce7e1;border-radius:12px;background:#f8fbf9;overflow-x:auto}.cng-operational-flow button{display:flex;align-items:center;gap:7px;padding:7px 10px;border:0;border-radius:9px;background:transparent;color:#64716b;font:inherit;font-size:.62rem;font-weight:800;white-space:nowrap;cursor:pointer}.cng-operational-flow button small{display:grid;width:21px;height:21px;place-items:center;border-radius:50%;background:#e6ece9;color:#53605b;font-size:.55rem}.cng-operational-flow button:hover,.cng-operational-flow button.active{background:#e3f1eb;color:#145b47}.cng-operational-flow button.active small{background:#197356;color:#fff}.cng-operational-flow i{color:#93a19a;font-style:normal}.cng-operational-toolbar{margin-bottom:14px}.cng-operational-toolbar input{min-width:min(430px,100%)}@media(max-width:720px){.cng-operational-flow{justify-content:start;grid-template-columns:repeat(7,max-content)}.cng-operational-toolbar{align-items:stretch;flex-direction:column}.cng-operational-toolbar input,.cng-operational-toolbar select{width:100%;min-width:0}}

/* Live operations overview */
.attention-list li.attention-clear>span{background:#e3f1eb;color:#17624c}.data-table>.vehicle-empty{border-top:1px solid #eff1ef}

/* POL contract mappings */
.contract-mapping-tabs{display:flex;gap:5px;padding:12px 19px;border-bottom:1px solid var(--border);background:#f7faf8}.contract-mapping-tabs button{padding:8px 13px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font:inherit;font-size:.63rem;font-weight:800;cursor:pointer}.contract-mapping-tabs button.active{border-color:#b8d5c8;background:#e6f2ec;color:var(--green)}.contract-mapping-intro{display:flex;align-items:center;justify-content:space-between;padding:18px 19px;border-bottom:1px solid var(--border)}.contract-mapping-intro h4{margin:0 0 4px;font-size:.82rem}.contract-mapping-intro p{margin:0;color:var(--muted);font-size:.64rem}.contract-mapping-table strong,.contract-mapping-table small{display:block}.contract-mapping-table small{margin-top:3px;color:var(--muted);font-size:.58rem}.mapping-chip-list{display:flex;flex-wrap:wrap;gap:5px}.mapping-chip-list span{padding:5px 7px;border-radius:7px;background:#eaf4ef;color:#17624c;font-size:.58rem;font-weight:750}.mapping-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-height:420px;padding:4px;overflow:auto}.mapping-choice-grid>label{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--border);border-radius:9px;background:#fafbfa;cursor:pointer}.mapping-choice-grid input{width:auto;margin-top:2px}.mapping-choice-grid strong,.mapping-choice-grid small{display:block}.mapping-choice-grid strong{font-size:.66rem}.mapping-choice-grid small{margin-top:3px;color:var(--muted);font-size:.57rem}.mapping-limit-note{margin-bottom:12px;padding:9px 11px;border-radius:8px;background:#edf4f1;color:var(--green);font-size:.63rem;font-weight:800}@media(max-width:700px){.mapping-choice-grid{grid-template-columns:1fr}.contract-mapping-tabs{overflow-x:auto}.contract-mapping-tabs button{white-space:nowrap}}

/* Consignee form sections */
.consignee-form-divider{display:flex;align-items:center;gap:12px;margin:5px 0 0;color:var(--green);font-size:.65rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.consignee-form-divider:before,.consignee-form-divider:after{content:"";height:1px;flex:1;background:#d9e3de}.consignee-form-divider span{white-space:nowrap}

/* Management reports */
.management-report{display:grid;gap:16px}.report-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:22px 24px;border:1px solid #c9ddd4;border-radius:16px;background:linear-gradient(135deg,#f6faf8,#e8f3ee)}.report-hero span{color:var(--green);font-size:.58rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.report-hero h3{margin:5px 0 4px;font-family:Georgia,serif;font-size:1.55rem;font-weight:500}.report-hero p{margin:0;color:var(--muted);font-size:.69rem}.report-summary-grid{margin-bottom:0}.report-summary-grid small{display:block;margin-top:4px;color:var(--muted);font-size:.58rem}.report-register{overflow:hidden}.report-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;padding:16px 19px;border-bottom:1px solid var(--border)}.report-toolbar label{display:grid;gap:5px;color:var(--muted);font-size:.6rem;font-weight:800}.report-toolbar select{min-width:170px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:#fff;color:var(--ink)}.report-table{min-width:1080px}.report-table td{vertical-align:top}.report-table td>strong,.report-table td>small,.report-table td>.report-source{display:block}.report-table td>small{margin-top:4px;color:var(--muted);font-size:.61rem}.report-source{width:max-content;margin-bottom:5px;padding:4px 7px;border-radius:999px;background:#e7f2ed;color:#17624c;font-size:.52rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.report-source.cng{background:#eef0df;color:#68751d}.health-expired,.health-missing,.health-rejected{background:#f8e5e3!important;color:#8d3831!important}.health-expiring_soon,.health-pending{background:#fbf0d7!important;color:#85631d!important}.health-compliant{background:#e2f1e9!important;color:#21684f!important}@media(max-width:720px){.report-hero,.report-toolbar{align-items:stretch;flex-direction:column}.report-toolbar .user-search-wrap,.report-toolbar select{width:100%;min-width:0}.report-summary-grid{grid-template-columns:1fr 1fr}}
.financial-report-nav{display:flex;gap:7px;overflow-x:auto;padding:7px;border:1px solid var(--border);border-radius:12px;background:#fff}.financial-report-nav a{flex:0 0 auto;padding:9px 12px;border-radius:8px;color:var(--muted);font-size:.63rem;font-weight:800;text-decoration:none;white-space:nowrap}.financial-report-nav a:hover,.financial-report-nav a.active{background:#e7f2ed;color:var(--green-2)}.report-row-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.dispute-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.dispute-heading small{display:block;margin-top:4px;color:var(--muted)}
.finance-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.finance-chart{padding:18px;border:1px solid var(--border);border-radius:13px;background:#fff}.finance-chart>div:first-child h4{margin:0 0 4px;font-size:.82rem}.finance-chart>div:first-child p{margin:0;color:var(--muted);font-size:.63rem;line-height:1.45}.finance-ring-chart{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px}.finance-ring{grid-row:1/3;grid-column:2;display:grid;place-items:center;width:132px;height:132px;border-radius:50%;background:conic-gradient(var(--green) 0 var(--match),#e8eeeb var(--match) 100%);position:relative}.finance-ring:after{content:"";width:86px;height:86px;border-radius:50%;background:#fff}.finance-ring span{position:absolute;z-index:1;text-align:center}.finance-ring strong,.finance-ring small{display:block}.finance-ring strong{font-size:1.1rem;color:var(--green-2)}.finance-ring small{color:var(--muted);font-size:.56rem}.chart-legend{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:.59rem}.chart-legend span:before{content:"";display:inline-block;width:8px;height:8px;margin-right:5px;border-radius:2px;background:#e8eeeb}.chart-legend .matched:before{background:var(--green)}.chart-legend .unmatched:before{background:#d8a240}.chart-legend .igst:before{background:var(--green)}.chart-legend .cgst:before{background:#d8a240}.chart-legend .sgst:before{background:#6288a8}.finance-bars,.tax-chart,.value-bridge{display:grid;gap:13px;margin-top:16px}.finance-bar-label,.bridge-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px;font-size:.62rem}.finance-bar-label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.finance-bar-label strong,.bridge-heading strong{font-size:.64rem}.finance-bar-track,.tax-stack{height:12px;overflow:hidden;border-radius:999px;background:#e8eeeb}.finance-bar-track.large{height:18px}.finance-bar-track i,.tax-stack i{display:block;height:100%;background:var(--green)}.finance-bar-track.warning i{background:#d8a240}.finance-bar-track.danger i{background:#b95a50}.tax-stack{display:flex}.tax-stack .igst{background:var(--green)}.tax-stack .cgst{background:#d8a240}.tax-stack .sgst{background:#6288a8}.chart-empty{padding:18px 0;color:var(--muted);font-size:.63rem;text-align:center}.aging-wide,.provider-wide{max-width:900px}@media(max-width:800px){.finance-chart-grid{grid-template-columns:1fr}}@media(max-width:520px){.finance-ring-chart{grid-template-columns:1fr}.finance-ring{grid-row:auto;grid-column:auto;justify-self:center}}
@media print{body.management-report-printing *{visibility:hidden!important}body.management-report-printing .management-report,body.management-report-printing .management-report *{visibility:visible!important}body.management-report-printing .management-report{position:absolute;inset:0;width:100%;gap:10px}body.management-report-printing .report-hero button,body.management-report-printing .report-hero a,body.management-report-printing .report-toolbar{display:none!important}body.management-report-printing .report-hero,body.management-report-printing .panel-card,body.management-report-printing .user-summary-grid article{border-color:#999;box-shadow:none;background:#fff}body.management-report-printing .report-table{min-width:0;font-size:8pt}body.management-report-printing [data-report-row][hidden]{display:none!important}}

/* Vehicle maintenance bill intake and review */
.service-station-register{display:grid;gap:14px}.service-station-form{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));align-items:end;gap:10px}.service-station-form label{display:grid;gap:5px;color:var(--muted);font-size:.6rem;font-weight:800}.service-station-form input,.service-station-form select{width:100%;padding:10px;border:1px solid var(--border);border-radius:9px;background:#fff}.service-station-form .station-active{display:flex;align-items:center;gap:8px;min-height:40px}.service-station-form .station-active input{width:auto}.station-chip-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.station-chip-list article{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border:1px solid #dce6e1;border-radius:9px;background:#f8faf9}.station-chip-list strong,.station-chip-list small{display:block}.station-chip-list strong{font-size:.64rem}.station-chip-list small{margin-top:3px;color:var(--muted);font-size:.54rem}.maintenance-bill-list{display:grid;gap:12px;margin-top:16px}.maintenance-bill-card{padding:17px}.maintenance-bill-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.maintenance-bill-card>header h4{margin:6px 0 3px;font-size:.82rem}.maintenance-bill-card>header p{margin:0;color:var(--muted);font-size:.61rem}.maintenance-bill-card>header>div:last-child{display:grid;justify-items:end;gap:6px}.maintenance-bill-metrics{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:13px}.maintenance-bill-metrics span{padding:10px;border-radius:8px;background:#f4f7f5}.maintenance-bill-metrics small,.maintenance-bill-metrics strong{display:block}.maintenance-bill-metrics small{color:var(--muted);font-size:.53rem}.maintenance-bill-metrics strong{margin-top:4px;font-size:.67rem}.maintenance-bill-details{margin-top:12px}.maintenance-bill-details summary{cursor:pointer;color:var(--green);font-size:.64rem;font-weight:850}.maintenance-bill-details .users-table-wrap{margin-top:10px;border:1px solid var(--border);border-radius:9px}.maintenance-line-table{min-width:1180px}.maintenance-review-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.maintenance-review-footer p{margin:0;color:var(--muted);font-size:.6rem}.diesel-review-list{padding:18px;border:1px solid var(--border);border-radius:13px;background:#f8faf9}.diesel-review-list .maintenance-bill-card{background:#fff}@media(max-width:900px){.service-station-form{grid-template-columns:1fr 1fr}.station-chip-list{grid-template-columns:1fr 1fr}.maintenance-bill-metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.service-station-form,.station-chip-list{grid-template-columns:1fr}.maintenance-review-footer{align-items:flex-start;flex-direction:column}}

/* Site Manager operations */
.site-manager-operations{display:grid;gap:16px}.site-manager-work-summary{margin-bottom:0}.site-manager-site-panel{padding:0;overflow:hidden}.site-manager-site-panel .panel-heading{padding:17px 19px;border-bottom:1px solid var(--border)}.site-manager-site-list{display:flex;flex-wrap:wrap;gap:9px;padding:15px 19px}.site-manager-site-list>span{min-width:190px;padding:10px 12px;border:1px solid #d7e5df;border-radius:10px;background:#f6faf8}.site-manager-site-list strong,.site-manager-site-list small{display:block}.site-manager-site-list strong{font-size:.68rem}.site-manager-site-list small{margin-top:4px;color:var(--muted);font-size:.56rem}.site-manager-trip-toolbar{padding:0;border:0}.site-manager-trip-list{display:grid;gap:13px}.site-manager-trip-card{padding:0;overflow:hidden}.site-manager-trip-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:18px 20px}.site-manager-trip-heading h3{margin:6px 0 3px;font-size:.84rem}.site-manager-trip-heading p{margin:0;color:var(--muted);font-size:.62rem}.site-manager-trip-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;border-block:1px solid var(--border);background:var(--border)}.site-manager-trip-metrics span{padding:11px 15px;background:#f8faf9}.site-manager-trip-metrics small,.site-manager-trip-metrics strong{display:block}.site-manager-trip-metrics small{color:var(--muted);font-size:.53rem}.site-manager-trip-metrics strong{margin-top:4px;font-size:.66rem}.site-manager-workflow>summary{cursor:pointer;padding:13px 20px;color:var(--green);font-size:.65rem;font-weight:900}.site-manager-workflow[open]>summary{border-bottom:1px solid var(--border)}.site-manager-progress{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;padding:16px 20px;background:#f5f8f6}.site-manager-progress>span{display:grid;grid-template-columns:24px 1fr;align-items:center;gap:7px;padding:8px;border:1px solid #dce6e1;border-radius:9px;background:#fff;color:#8b9993;font-size:.6rem;font-weight:900}.site-manager-progress>span:before{content:''}.site-manager-progress>span small{font-size:.52rem;line-height:1.25}.site-manager-progress>span.complete{border-color:#a9d2c0;background:#eaf5f0;color:#17624c}.site-manager-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:18px 20px}.site-manager-action-card{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:14px;padding:15px;border:1px solid var(--border);border-radius:11px;background:#fff}.site-manager-action-card>div:first-child{min-width:0}.site-manager-action-card>div:first-child>span{color:var(--green);font-size:.51rem;font-weight:900;letter-spacing:.1em}.site-manager-action-card h4{margin:4px 0;font-size:.72rem}.site-manager-action-card p{margin:0;color:var(--muted);font-size:.57rem;line-height:1.45}.site-manager-action-card>form{display:grid;flex:0 0 210px;gap:8px}.site-manager-action-card input,.site-manager-action-card select{width:100%;min-height:38px;padding:8px 9px;border:1px solid var(--border);border-radius:8px;background:#fff;font:inherit;font-size:.6rem}.site-manager-done,.site-manager-waiting{align-self:center;padding:7px 9px;border-radius:999px;background:#e4f2eb;color:#17624c;font-size:.57rem;font-weight:850;white-space:nowrap}.site-manager-waiting{background:#fbf0d7;color:#85631d}.site-manager-expense-card{grid-column:1/-1;display:block}.site-manager-expense-entry{display:grid!important;grid-template-columns:repeat(4,minmax(120px,1fr));align-items:end;margin-top:12px}.site-manager-expense-entry label{display:grid;gap:4px;color:var(--muted);font-size:.54rem;font-weight:800}.site-manager-expense-entry .full-field{grid-column:span 3}.site-manager-expense-list{display:grid;gap:7px;margin-top:12px}.site-manager-expense-list>article{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:8px;background:#f6f8f7}.site-manager-expense-list>article>div{margin-right:auto}.site-manager-expense-list strong,.site-manager-expense-list small{display:block}.site-manager-expense-list strong{font-size:.62rem}.site-manager-expense-list small{margin-top:3px;color:var(--muted);font-size:.54rem}.site-manager-receipt-form{display:flex!important;flex:0 1 330px!important;grid-template-columns:1fr auto;align-items:center}.site-manager-ccms-form{grid-template-columns:1fr}.site-manager-complete-card{grid-column:1/-1;border-color:#b8d7c9;background:#f1f8f5}.site-manager-document-register{padding:0 20px 20px}.site-manager-document-register h4{margin:0 0 9px;font-size:.67rem}.site-manager-document-register>div{display:flex;flex-wrap:wrap;gap:8px}.site-manager-document-register a{display:grid;max-width:240px;gap:3px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;color:var(--green);text-decoration:none}.site-manager-document-register a strong{font-size:.56rem}.site-manager-document-register a small{overflow:hidden;font-size:.52rem;text-overflow:ellipsis;white-space:nowrap}@media(max-width:1050px){.site-manager-progress{grid-template-columns:repeat(4,1fr)}.site-manager-action-grid{grid-template-columns:1fr}.site-manager-expense-card,.site-manager-complete-card{grid-column:auto}.site-manager-expense-entry{grid-template-columns:repeat(2,1fr)}.site-manager-expense-entry .full-field{grid-column:span 2}}@media(max-width:700px){.site-manager-trip-heading{align-items:flex-start;flex-direction:column}.site-manager-trip-metrics{grid-template-columns:repeat(2,1fr)}.site-manager-progress{grid-template-columns:1fr 1fr}.site-manager-action-card{align-items:stretch;flex-direction:column}.site-manager-action-card>form{flex-basis:auto;width:100%}.site-manager-expense-entry{grid-template-columns:1fr}.site-manager-expense-entry .full-field{grid-column:auto}.site-manager-expense-list>article{align-items:flex-start;flex-direction:column}.site-manager-receipt-form{display:grid!important;width:100%}.site-manager-trip-toolbar{align-items:stretch;flex-direction:column}.site-manager-trip-toolbar .user-search-wrap,.site-manager-trip-toolbar select{width:100%}}

/* Professional application experience */
:root{--ink:#17231f;--muted:#61706a;--paper:#f3f6f5;--green:#124d3e;--green-2:#0c6b55;--border:#d8e1de;--shadow:0 14px 34px rgba(20,47,39,.08)}
:focus-visible{outline:3px solid rgba(12,107,85,.24);outline-offset:2px}.skip-link{position:fixed;left:16px;top:-60px;z-index:100;padding:10px 14px;border-radius:8px;background:#fff;color:var(--green);font-size:.78rem;font-weight:800;box-shadow:var(--shadow)}.skip-link:focus{top:12px}.search-hidden{display:none!important}
.sidebar{width:244px;background:linear-gradient(180deg,#103f34,#0c332a);box-shadow:8px 0 30px rgba(10,35,29,.08)}.sidebar-brand{height:68px;padding:0 14px 0 16px}.sidebar-brand>span:nth-child(2){min-width:0}.brand-badge{flex-basis:34px;height:34px;border-radius:9px}.sidebar-collapse{display:grid;place-items:center;width:30px;height:30px;margin-left:auto;border:0;border-radius:8px;background:rgba(255,255,255,.08);color:#cbe0d8}.sidebar-collapse:hover{background:rgba(255,255,255,.14);color:#fff}.sidebar-collapse svg,.notification-button svg,.global-navigation-search svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.side-nav{padding:14px 10px}.nav-group-toggle{min-height:40px;font-weight:700}.nav-submenu{border-left-color:rgba(255,255,255,.13)}.nav-submenu .nav-link{min-height:34px;color:#a8c1b8}.nav-submenu .nav-link.active{background:#205c4b;color:#fff;box-shadow:none}.nav-submenu .nav-link.active .nav-icon{background:rgba(255,255,255,.1)}.nav-submenu .nav-link.active:before{background:#9cd6bf}.sidebar-user{background:transparent}.admin-main{margin-left:244px;transition:margin-left .22s}.nav-collapsed .sidebar{width:76px}.nav-collapsed .admin-main{margin-left:76px}.nav-collapsed .sidebar-brand{justify-content:center;padding:0}.nav-collapsed .sidebar-brand>span:nth-child(2),.nav-collapsed .nav-label,.nav-collapsed .nav-group-toggle>span:nth-child(2),.nav-collapsed .nav-caret,.nav-collapsed .nav-submenu,.nav-collapsed .nav-group.open>.nav-submenu,.nav-collapsed .sidebar-user>div:not(.user-avatar){display:none}.nav-collapsed .sidebar-collapse{position:absolute;left:61px;top:19px;background:#fff;color:var(--green);box-shadow:0 4px 16px rgba(0,0,0,.16)}.nav-collapsed .sidebar-collapse svg{transform:rotate(180deg)}.nav-collapsed .nav-group-toggle{grid-template-columns:1fr;justify-items:center;padding:6px}.nav-collapsed .nav-group-icon{width:34px;height:34px}.nav-collapsed .sidebar-user{justify-content:center;margin-inline:8px;padding-inline:0}
.page-header{min-height:72px;padding:12px 28px;background:rgba(255,255,255,.97);box-shadow:0 1px 0 rgba(20,50,41,.03)}.page-header h1{font-family:inherit;font-size:1.25rem;font-weight:750;letter-spacing:-.015em}.breadcrumb{font-size:.65rem}.global-navigation-search{width:min(360px,34vw);height:40px;display:flex;align-items:center;gap:9px;margin-inline:auto;padding:0 11px;border:1px solid var(--border);border-radius:10px;background:#f7f9f8;color:#7a8983}.global-navigation-search:focus-within{border-color:#8ab8a8;background:#fff;box-shadow:0 0 0 3px rgba(12,107,85,.08)}.global-navigation-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:.76rem}.global-navigation-search kbd{padding:2px 6px;border:1px solid var(--border);border-radius:5px;background:#fff;color:#84918c;font:inherit;font-size:.61rem}.header-user-summary{display:flex;align-items:center;gap:8px;padding-right:2px}.header-user-summary>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e6f1ed;color:var(--green);font-weight:850}.header-user-summary strong,.header-user-summary small{display:block;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-user-summary strong{font-size:.69rem}.header-user-summary small{margin-top:2px;color:var(--muted);font-size:.53rem}.notification-button{display:grid;place-items:center;color:#53645e;font-size:inherit}.notification-button:after{display:none}.ghost-button,.table-action{transition:background-color .16s,border-color .16s,color .16s,transform .16s}.ghost-button:hover{border-color:#aac4ba;background:#f4f8f6}.ghost-button:active{transform:translateY(1px)}
.content-panel{width:100%;max-width:1520px;margin:0 auto;padding:26px 30px 48px}.content-intro{align-items:flex-start;margin-bottom:20px}.content-intro .eyebrow{margin-bottom:6px;font-size:.62rem}.content-intro h2{font-family:inherit;font-size:1.65rem;font-weight:750;letter-spacing:-.025em}.content-intro p:not(.eyebrow){max-width:760px;margin-top:6px;font-size:.78rem;line-height:1.55}.module-access-strip{margin-bottom:18px}.panel-card,.metric-card,.user-summary-grid article,.finance-chart{border-color:#d7e0dd;border-radius:12px;box-shadow:0 1px 2px rgba(18,49,40,.025)}.panel-card:hover,.metric-card:hover,.user-summary-grid article:hover{border-color:#c6d5d0}.metric-card,.user-summary-grid article{padding:17px 18px}.metric-card strong,.user-summary-grid strong{font-family:inherit;font-weight:650;letter-spacing:-.025em}.panel-heading{padding:17px 19px}.panel-heading h3{font-size:.85rem}.panel-heading p{font-size:.67rem}.users-table th{position:sticky;top:0;z-index:1;background:#f6f8f7}.users-table tbody tr,.vehicles-table tbody tr{transition:background-color .14s}.users-table tbody tr:hover,.vehicles-table tbody tr:hover{background:#f7faf9}.user-search-wrap{background:#f7f9f8}.admin-footer{background:#fbfcfb}
.management-report{gap:14px}.report-hero{align-items:center;padding:18px 20px;border-color:#d6e3de;border-radius:12px;background:linear-gradient(135deg,#f7faf9,#edf5f2)}.report-hero h3{font-family:inherit;font-size:1.25rem;font-weight:700;letter-spacing:-.02em}.report-hero p{font-size:.66rem}.financial-report-nav{position:sticky;top:82px;z-index:8;gap:4px;padding:5px;border-radius:10px;box-shadow:0 6px 22px rgba(18,49,40,.06)}.financial-report-nav a{padding:9px 11px;border-radius:7px;font-size:.61rem}.finance-chart{padding:17px}.finance-chart>div:first-child h4{font-size:.78rem}.finance-ring{width:124px;height:124px}.finance-ring:after{width:80px;height:80px}.finance-bar-track{height:10px}.report-toolbar{padding:14px 17px}.report-table th{white-space:nowrap}.report-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.report-summary-grid article{min-width:0}.report-summary-grid strong{overflow-wrap:anywhere}.date-chip{border-radius:8px}
@media(max-width:1180px){.header-user-summary{display:none}.report-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.global-navigation-search{width:min(290px,32vw)}.report-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.sidebar{width:272px}.admin-main,.nav-collapsed .admin-main{margin-left:0}.nav-collapsed .sidebar{width:272px}.nav-collapsed .sidebar-brand{justify-content:flex-start;padding:0 18px}.nav-collapsed .sidebar-brand>span:nth-child(2),.nav-collapsed .nav-label,.nav-collapsed .nav-group-toggle>span:nth-child(2),.nav-collapsed .nav-caret,.nav-collapsed .nav-submenu,.nav-collapsed .sidebar-user>div:not(.user-avatar){display:initial}.nav-collapsed .nav-submenu{display:none}.nav-collapsed .nav-group.open>.nav-submenu{display:block}.nav-collapsed .nav-group-toggle{grid-template-columns:27px minmax(0,1fr) 16px;justify-items:initial;padding:6px 9px}.nav-collapsed .nav-group-icon{width:27px;height:27px}.nav-collapsed .sidebar-user{justify-content:flex-start}.sidebar-collapse{display:none}.global-navigation-search{display:none}.content-panel{padding:22px 18px 38px}.financial-report-nav{top:73px}}
@media(max-width:560px){.header-user-summary{display:none}.content-panel{padding:18px 14px 34px}.content-intro h2{font-size:1.4rem}.report-summary-grid{grid-template-columns:1fr 1fr}.report-hero{align-items:stretch}.finance-ring-chart{gap:12px}.finance-ring{width:104px;height:104px}.finance-ring:after{width:68px;height:68px}}
.fleet-report-filter{display:grid;grid-template-columns:repeat(2,minmax(140px,180px)) minmax(220px,1fr) auto;align-items:end;gap:14px;padding:16px 18px}.fleet-report-filter>div{display:grid;gap:6px}.fleet-report-filter label{color:var(--muted);font-size:.6rem;font-weight:800}.fleet-report-filter input,.fleet-report-filter select{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:#fff;color:var(--ink)}.fleet-report-filter-actions{display:flex!important;grid-auto-flow:column;align-items:center;gap:8px!important}.fleet-report-summary{grid-template-columns:repeat(6,minmax(0,1fr))}.fleet-report-tabs{display:flex;gap:5px;overflow-x:auto;padding:5px;border:1px solid var(--border);border-radius:11px;background:#edf4f1}.fleet-report-tabs button{flex:0 0 auto;padding:10px 14px;border:0;border-radius:8px;background:transparent;color:#4d665e;font:inherit;font-size:.62rem;font-weight:800;cursor:pointer}.fleet-report-tabs button:hover{background:#fff}.fleet-report-tabs button.active{background:var(--green);color:#fff}.fleet-report-workspace [data-fleet-report-pane][hidden],.driver-report-workspace [data-driver-report-pane][hidden]{display:none!important}.fleet-detail-table{min-width:1260px}.report-toolbar h4{margin:0 0 4px;font-size:.78rem}.report-toolbar p{margin:0;color:var(--muted);font-size:.61rem}@media(max-width:1180px){.fleet-report-filter{grid-template-columns:repeat(2,minmax(140px,1fr))}.fleet-report-vehicle{grid-column:1/2}.fleet-report-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.fleet-report-filter{grid-template-columns:1fr}.fleet-report-vehicle{grid-column:auto}.fleet-report-filter-actions{grid-auto-flow:row}.fleet-report-summary{grid-template-columns:1fr 1fr}}@media print{body.management-report-printing .fleet-report-filter,body.management-report-printing .fleet-report-tabs{display:none!important}body.management-report-printing [data-fleet-report-pane][hidden],body.management-report-printing [data-driver-report-pane][hidden]{display:none!important}}
.report-context-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 14px;border:1px solid var(--border);border-radius:10px;background:#fff}.report-live-status{display:flex;align-items:center;gap:10px;min-width:0}.report-live-status>span{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:#35a276;box-shadow:0 0 0 4px #e3f2eb}.report-live-status strong,.report-live-status small{display:block}.report-live-status strong{font-size:.65rem}.report-live-status small{margin-top:2px;color:var(--muted);font-size:.57rem}.report-context-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.report-context-actions a{padding:7px 9px;border:1px solid var(--border);border-radius:7px;color:var(--green);font-size:.58rem;font-weight:800;text-decoration:none}.report-context-actions a:hover{border-color:#a9c4ba;background:#f3f8f6}.reconciliation-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none;border:1px solid var(--border);border-radius:12px;background:#fff;overflow:hidden}.reconciliation-steps li{position:relative;display:grid;grid-template-columns:30px 1fr;align-items:center;gap:9px;min-width:0;padding:13px 14px;border-right:1px solid var(--border)}.reconciliation-steps li:last-child{border-right:0}.reconciliation-steps li>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#edf1ef;color:#72807b;font-size:.63rem;font-weight:900}.reconciliation-steps strong,.reconciliation-steps small{display:block}.reconciliation-steps strong{font-size:.63rem}.reconciliation-steps small{margin-top:3px;color:var(--muted);font-size:.53rem;line-height:1.35}.reconciliation-steps li.complete>span{background:#dff0e8;color:#17654d}.reconciliation-steps li.current{background:#fbf8ef}.reconciliation-steps li.current>span{background:#f1dfb3;color:#7e5d17}@media(max-width:900px){.reconciliation-steps{grid-template-columns:1fr 1fr}.reconciliation-steps li:nth-child(2){border-right:0}.reconciliation-steps li:nth-child(-n+2){border-bottom:1px solid var(--border)}}@media(max-width:620px){.report-context-bar{align-items:flex-start;flex-direction:column}.report-context-actions{justify-content:flex-start}.reconciliation-steps{grid-template-columns:1fr}.reconciliation-steps li{border-right:0;border-bottom:1px solid var(--border)}.reconciliation-steps li:last-child{border-bottom:0}}
.report-module-divider{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0 14px;padding:12px 16px;border:1px solid #dbe5ef;border-radius:12px;background:#f6f9fc;color:#455468}.report-module-divider span{font-size:.6rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#147a75}.report-module-divider strong{font-size:.65rem;color:#18263a}
.compliance-scope-tabs button>span{display:inline-grid;place-items:center;min-width:24px;margin-left:7px;padding:3px 7px;border-radius:999px;background:#dfe9e5;color:#50645d;font-size:.56rem}.compliance-scope-tabs button.active>span{background:#d9eee6;color:var(--green)}
.operations-report-workspace [data-operations-report-pane][hidden]{display:none!important}
.compliance-report-workspace [data-compliance-report-pane][hidden]{display:none!important}
.operations-report-filter{grid-template-columns:repeat(2,minmax(140px,170px)) repeat(2,minmax(170px,1fr)) auto}
.operations-report-summary{grid-template-columns:repeat(7,minmax(0,1fr))}
@media(max-width:1280px){.operations-report-filter{grid-template-columns:repeat(2,minmax(160px,1fr))}.operations-report-summary{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:720px){.operations-report-filter{grid-template-columns:1fr}.operations-report-summary{grid-template-columns:1fr 1fr}}
@media print{body.management-report-printing [data-operations-report-pane][hidden]{display:none!important}}
@media print{body.management-report-printing [data-compliance-report-pane][hidden]{display:none!important}}

.trip-status-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px 18px;border-bottom:1px solid var(--border)}
.trip-status-card{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid currentColor;border-radius:12px}
.trip-status-card .trip-status-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.72);font-size:1rem;font-weight:900}
.trip-status-card div{display:grid;gap:2px}.trip-status-card strong{font-size:1.25rem}.trip-status-card small{font-size:.62rem;font-weight:800}
.trip-status-badge{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;padding:7px 10px;border-radius:999px;font-size:.61rem}
.trip-status-badge>span{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:rgba(255,255,255,.72);font-weight:900}
.trip-status-completed{color:#126447;background:#e6f4ed}.trip-status-pod-pending{color:#8a5700;background:#fff3cd}.trip-status-ongoing{color:#205a91;background:#e7f1fb}.trip-status-cancelled{color:#9b3030;background:#f9e8e8}
@media(max-width:900px){.trip-status-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.trip-status-summary{grid-template-columns:1fr}}

.allocation-table th{padding:8px 12px}
.allocation-table td{padding:7px 12px;vertical-align:middle;line-height:1.3}
.allocation-table td>small,.allocation-table .vehicle-primary small{margin-top:2px}
.allocation-table .vehicle-details{margin-top:3px}
.allocation-table .vehicle-status{padding:3px 7px}
.allocation-table .vehicle-actions{min-width:150px;white-space:nowrap}
.allocation-table .vehicle-actions>form{display:inline-flex;align-items:center;margin:0 4px 0 0;vertical-align:middle}
.allocation-table .vehicle-actions>.table-action{margin-right:4px}
.allocation-table .vehicle-status-form select{padding:5px 7px}
.allocation-table .table-action{padding:5px 7px;line-height:1.2}
.allocation-table .allocation-serial{width:64px;white-space:nowrap;text-align:center}
.oil-consignment-workspace .consignment-trip-expansion{width:100%;min-width:0;box-sizing:border-box;padding:8px;container-type:inline-size}
.oil-consignment-workspace .oil-consignment-table{width:100%;min-width:0;table-layout:fixed}
.oil-consignment-table th,.oil-consignment-table td{padding:7px 6px;overflow-wrap:anywhere;white-space:normal}
.oil-consignment-table th,.oil-consignment-table th button,.consignee-table th,.transport-bill-register .vehicles-table>thead>tr>th,.transport-bill-register .transport-bill-table th{font-family:inherit;color:#7e8a85;font-size:.6rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.consignee-table{width:100%;min-width:980px;table-layout:fixed}
.consignee-table th,.consignee-table td{padding:7px 6px;overflow-wrap:anywhere;white-space:normal}
.consignee-table .consignee-serial{width:4em;white-space:nowrap}
.consignee-table .vehicle-primary strong{font-size:.7rem}
.consignee-table td>small,.consignee-table .vehicle-primary small{font-size:.59rem;margin-top:4px}
.consignee-table .vehicle-actions{min-width:0}
.consignee-table td select{max-width:100%;padding:7px;border:1px solid var(--border);border-radius:7px;background:#fff;font-size:.6rem;color:var(--ink)}
.consignee-table .table-action{font-size:.62rem;padding:2px 0}
.transport-bill-register .vehicles-table>thead>tr>th,.transport-bill-register .transport-bill-table th{background:#fafbfa;padding:7px 6px}
.oil-consignment-table th:first-child{width:5%}
.oil-consignment-table th:nth-child(2){width:13%}
.oil-consignment-table th:nth-child(3){width:9%}
.oil-consignment-table .oil-consignment-actions{min-width:0;white-space:normal;margin-top:3px}
.oil-consignment-table .consignment-trip-link{display:block;margin-top:3px;color:var(--green)}
.oil-consignment-table .vehicle-status{white-space:normal}
.oil-consignment-table .consignment-trip-inline>td{padding:0;background:#f5f8f6}
.consignment-trip-expansion .oil-trip-card{min-width:0;margin:0;padding:10px;box-shadow:none}
.consignment-trip-expansion .oil-trip-card h4{margin:4px 0 2px}
.consignment-trip-expansion .oil-trip-card{border:0;border-radius:0;background:transparent;padding:6px;box-shadow:none}
.consignment-trip-expansion .inline-trip-reference{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0;padding:2px 4px;font-size:.65rem}
.consignment-trip-expansion .inline-trip-reference small{color:var(--muted)}
.consignment-trip-expansion .inline-trip-workspace-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}
.consignment-trip-expansion .inline-trip-workspace-heading>span:first-child::before{content:'▸ ';display:inline-block}
.consignment-trip-expansion details[open]>.inline-trip-workspace-heading>span:first-child::before{content:'▾ '}
.consignment-trip-expansion .oil-trip-metrics{gap:5px;margin-top:6px;grid-template-columns:repeat(4,minmax(0,1fr))}
.consignment-trip-expansion .oil-trip-metrics span{padding:6px}
.consignment-trip-expansion .oil-trip-metrics strong{margin-top:2px;overflow-wrap:anywhere}
.consignment-trip-expansion .oil-contract-details{margin-top:6px}
.consignment-trip-expansion .trip-workspace{padding:8px;margin:6px 0 0}
.consignment-trip-expansion .trip-workspace-panels{gap:6px;margin-top:6px}
.consignment-trip-expansion .trip-workspace-panel{padding:7px}
.consignment-trip-expansion .trip-preparation-step{padding:6px;gap:6px;grid-template-columns:25px minmax(0,1fr) auto}
.consignment-trip-expansion .trip-workspace-panel>.trip-preparation-step{margin-bottom:6px}
.consignment-trip-expansion .primary-action{white-space:normal}
.consignment-trip-expansion .trip-expense-form fieldset{padding:7px;gap:6px;min-width:0;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
.consignment-trip-expansion label,.consignment-trip-expansion form,.consignment-trip-expansion fieldset{min-width:0}
.consignment-trip-expansion input,.consignment-trip-expansion select{max-width:100%;box-sizing:border-box;padding:6px;font-size:.65rem}
.consignment-trip-expansion .oil-trip-detail-grid{gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}
.consignment-trip-expansion .oil-trip-detail-grid>section{padding:7px}
.consignment-trip-expansion .oil-trip-mini-form{gap:6px;margin-top:6px;grid-template-columns:repeat(2,minmax(0,1fr))}
.consignment-trip-expansion .oil-trip-actions{margin-top:6px}
.consignment-trip-expansion .oil-trip-actions form,.consignment-trip-expansion .ccms-form{flex-wrap:wrap}
.consignment-trip-expansion .oil-trip-upload{grid-template-columns:minmax(0,150px) minmax(0,1fr) auto;gap:6px}
.consignment-trip-expansion .trip-expense-list>div{grid-template-columns:repeat(4,minmax(0,1fr));padding:5px 7px;overflow-wrap:anywhere}
@container(max-width:650px){.consignment-trip-expansion .oil-trip-metrics,.consignment-trip-expansion .oil-trip-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.consignment-trip-expansion .oil-trip-detail-grid>section{grid-column:1/-1}.consignment-trip-expansion .trip-preparation-step{grid-template-columns:25px minmax(0,1fr)}.consignment-trip-expansion .trip-preparation-step>form{grid-column:2}.consignment-trip-expansion .oil-trip-upload{grid-template-columns:minmax(0,1fr)}}
.oil-consignment-workspace .vehicle-pagination{flex-wrap:wrap}
.consignment-bills-inline>td{padding:8px!important;background:#f5f8f6}
.oil-inline-trip-bills{width:100%;min-width:0;container-type:inline-size}
.oil-inline-trip-bills .oil-bills-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:8px}
.oil-inline-trip-bills .oil-bill-form{padding:10px}
.oil-inline-trip-bills .oil-bill-form fieldset{gap:7px;min-width:0}
.oil-inline-trip-bills .oil-bill-form label{min-width:0;gap:3px}
.oil-inline-trip-bills .oil-bill-form input,.oil-inline-trip-bills .oil-bill-form select,.oil-inline-trip-bills .oil-bill-form textarea{min-width:0;max-width:100%;box-sizing:border-box;padding:7px}
.oil-inline-trip-bills .oil-bill-review-content{grid-template-columns:minmax(0,.65fr) minmax(0,1fr);min-height:360px}
.oil-inline-trip-bills .oil-bill-preview-shell{min-width:0;min-height:360px;padding:8px}
.oil-inline-trip-bills .oil-bill-preview-shell iframe{min-width:0;min-height:350px}
.oil-inline-trip-bills .oil-bill-list>button{padding:8px;gap:5px}
.oil-inline-trip-bills .oil-bill-selected{padding:7px}
@container(max-width:800px){.oil-inline-trip-bills .oil-bills-layout{grid-template-columns:minmax(0,1fr)}}
@container(max-width:550px){.oil-inline-trip-bills .oil-bill-review-content{grid-template-columns:minmax(0,1fr)}}
.consignment-trip-expansion .trip-workspace-panels{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start}
.consignment-trip-expansion .trip-workspace-panel:nth-child(n+5){grid-column:1/-1}
.consignment-trip-expansion .trip-workspace-panel:nth-child(-n+4)>.trip-preparation-step{grid-template-columns:25px minmax(0,1fr);align-items:start}
.consignment-trip-expansion .trip-workspace-panel:nth-child(-n+4)>.trip-preparation-step>form{grid-column:1/-1;min-width:0}
.consignment-trip-expansion .trip-workspace-panel:nth-child(-n+4) .trip-expense-form fieldset{grid-template-columns:minmax(0,1fr)}
.consignment-trip-expansion .trip-workspace-panel:nth-child(-n+4) .trip-expense-list>div{grid-template-columns:repeat(2,minmax(0,1fr))}
.consignment-trip-expansion .trip-workspace-panel:nth-child(-n+4) .ccms-form{display:grid;grid-template-columns:minmax(0,1fr)}
@container(max-width:1000px){.consignment-trip-expansion .trip-workspace-panels{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container(max-width:550px){.consignment-trip-expansion .trip-workspace-panels{grid-template-columns:minmax(0,1fr)}}
.consignment-trip-expansion .oil-preparation-layout{grid-template-columns:repeat(4,minmax(0,1fr))}
.transport-bill-register{min-width:0;overflow:hidden}
.oil-hierarchy-stack{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.oil-hierarchy-card{min-width:0;overflow:hidden}
.oil-hierarchy-card>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;cursor:pointer;border-bottom:1px solid var(--border)}
.oil-hierarchy-card>summary>span{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:center}
.oil-hierarchy-card>summary>span:before{content:'▸';grid-row:1/3;color:var(--green)}
.oil-hierarchy-card[open]>summary>span:before{content:'▾'}
.oil-hierarchy-card>summary small{grid-column:2;color:var(--muted);font-size:.62rem}
.oil-hierarchy-card>summary strong{font-size:.86rem}
.hierarchy-table-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:12px 18px}
.hierarchy-table-controls .user-search-wrap{width:min(390px,100%)}
.oil-hierarchy-table{min-width:850px}
.oil-hierarchy-table td{padding:8px 12px}
.oil-hierarchy-table th{color:#7e8a85;font-size:.6rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.oil-hierarchy-table .role-actions{display:flex;align-items:center;gap:8px}
.ccms-register .ccms-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ccms-register{min-width:0;overflow:hidden}
.transportation-discrepancy-table{min-width:1900px}
.billing-status-legend{display:flex;flex-wrap:wrap;gap:8px;padding:12px 18px;border-bottom:1px solid var(--border)}
.billing-report-status{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:7px;font-size:.6rem;font-weight:800;line-height:1.4}
.billing-report-status.current{background:#e2f1e9;color:#226449}
.billing-report-status.earlier{background:#e7eef8;color:#315e91}
.billing-report-status.pending{background:#fff1d8;color:#98601f}
.billing-report-status.return-invoice{background:#f8e3e1;color:#913f38}
.billing-report-status.billing-completed{background:#e2f1e9;color:#16834d}
.billing-report-status.billing-due-billing{background:#e8edff;color:#173dd1}
.billing-report-status.billing-due-pri{background:#def5fb;color:#007f9b}
.billing-report-status.billing-due-billing-pri{background:#fff0df;color:#ad4c0a}
.transportation-discrepancy-table td>small{display:block;margin-top:4px;color:var(--muted)}
.ccms-register>.oil-master-heading{margin:0;padding:16px 18px;border-bottom:1px solid var(--border)}
.ccms-register>.oil-master-heading h3{margin:0 0 4px;font-family:inherit;font-size:.85rem;font-weight:750}
.ccms-register>.oil-master-heading p{font-size:.67rem;line-height:1.45}
.ccms-register>.vehicles-table-wrap{padding:12px 10px 14px}
.ccms-register .vehicles-table{min-width:0;table-layout:fixed}
.ccms-register .vehicles-table th:first-child{width:5%}
.ccms-register .vehicles-table th:nth-child(4){width:17%}
.ccms-register .vehicles-table th:last-child{width:14%}
.ccms-register .vehicles-table td{overflow-wrap:anywhere;white-space:normal}
@media(max-width:700px){.ccms-register .vehicles-table{min-width:760px}}
.ccms-register .ccms-form label{font-size:.68rem;display:grid;gap:3px}
.ccms-register .ccms-form input{width:145px;max-width:100%}
.ccms-register .ccms-form select{min-width:85px}
.ccms-register .vehicles-table td{padding:7px 8px;vertical-align:middle}
.ccms-register .ccms-form input,.ccms-register .ccms-form select{font:inherit;padding:7px 8px;border:1px solid var(--border);border-radius:7px;background:#fff}
.ccms-register .vehicle-table-controls .user-search-wrap{width:min(440px,100%)}
.ccms-register .vehicle-pagination{align-items:center;flex-wrap:wrap}
.ccms-entry-dialog{width:min(1760px,calc(100% - 32px));padding:0;max-height:90vh;overflow:auto}
.ccms-entry-dialog .dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;margin:0;border-bottom:1px solid var(--border)}
.ccms-entry-dialog .dialog-heading h2{margin:4px 0 0;font-size:1.25rem}
.ccms-entry-dialog .dialog-close{width:36px;height:36px;flex-shrink:0;border:0;border-radius:9px;background:#edf3f1;color:var(--green);font-size:1.2rem;cursor:pointer}
.ccms-entry-body{padding:18px 20px}
.ccms-entry-dialog > .dialog-actions{margin:0;padding:12px 20px}
:is(.ccms-entry-table,.expense-entry-table){min-width:0;table-layout:fixed}
:is(.ccms-entry-table,.expense-entry-table) th,:is(.ccms-entry-table,.expense-entry-table) td{padding:7px 8px;font-family:inherit;font-size:.7rem;overflow-wrap:anywhere}
:is(.ccms-entry-table,.expense-entry-table) th{font-size:.6rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em;color:#7e8a85}
:is(.ccms-entry-table,.expense-entry-table) th:first-child{width:5%}
:is(.ccms-entry-table,.expense-entry-table) th:last-child{width:10%}
.ccms-entry-add{margin:16px 0}
:is(.ccms-entry-form,.expense-entry-form){padding:14px;border:1px solid var(--border);border-radius:10px;background:#fafbfa}
:is(.ccms-entry-form,.expense-entry-form) h3{margin:0 0 12px;font-size:.85rem}
:is(.ccms-entry-form,.expense-entry-form) .dialog-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 0 0}
@media(max-width:700px){:is(.ccms-entry-table,.expense-entry-table){min-width:680px}.ccms-entry-body{padding:14px}.ccms-entry-dialog .dialog-heading{padding:14px}}
.transport-bill-toggle{display:block;margin-top:5px;text-align:left}
.transport-bill-register-scroll{overflow-x:auto}
.transport-bill-register .vehicles-table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse}
.oil-consignment-table>thead>tr>th,.transport-bill-register .vehicles-table>thead>tr>th{padding:7px 6px;background:#fafbfa;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;line-height:1.35;overflow-wrap:anywhere;white-space:normal}
.transport-bill-register .vehicles-table>thead>tr>th:first-child{width:5%}
.transport-bill-register .vehicles-table>thead>tr>th:nth-child(2){width:22%}
.transport-bill-register .vehicles-table>thead>tr>th:nth-child(3){width:13%}
.transport-bill-register .vehicles-table>tbody>tr>td{padding:10px 12px;vertical-align:top}
.transport-bill-register .vehicles-table>tbody>tr>td small{display:block;overflow-wrap:anywhere}
.transport-bill-register-expansion>td{background:#f8faf9;border-bottom:1px solid #dce5e1}
.transport-bill-register-expansion .oil-contract-details{margin:0;padding:8px 0}
.transport-bill-register-expansion .oil-contract-details>summary{cursor:pointer}
.transport-bill-no-issues{margin:4px 0;font-size:12px;color:#64766e}
.consignment-trip-expansion .oil-preparation-layout>.trip-workspace-panel{grid-column:auto}
.consignment-trip-expansion .oil-preparation-layout>.oil-return-invoice-panel{grid-column:auto}
.consignment-trip-expansion .oil-preparation-layout .oil-trip-mini-form{grid-template-columns:minmax(0,1fr)}
.consignment-trip-expansion .oil-preparation-layout .oil-trip-upload{grid-template-columns:minmax(0,1fr)}
@container(max-width:850px){.consignment-trip-expansion .oil-preparation-layout{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container(max-width:550px){.consignment-trip-expansion .oil-preparation-layout{grid-template-columns:minmax(0,1fr)}}
@media print{body.oil-report-printing [data-oil-report-panel="bill-discrepancies"] .hierarchy-table-controls,body.oil-report-printing [data-oil-report-panel="bill-discrepancies"] .vehicle-table-footer{display:none!important}}
.tender-allocated-vehicle-table,.tender-mapped-terminal-table{min-width:750px}.tender-allocated-vehicle-table th,.tender-allocated-vehicle-table td,.tender-mapped-terminal-table th,.tender-mapped-terminal-table td{padding:8px}.tender-vehicle-picker,.tender-terminal-picker{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,2fr) auto;align-items:end;gap:12px;margin-top:16px}.tender-vehicle-picker label,.tender-terminal-picker label{display:grid;gap:6px;font-size:.7rem;font-weight:700}.tender-vehicle-picker small,.tender-terminal-picker small{font-weight:400;color:var(--muted)}@media(max-width:700px){.tender-vehicle-picker,.tender-terminal-picker{grid-template-columns:1fr}}
.transportation-bill-dialog{width:min(1500px,calc(100% - 32px));max-height:calc(100dvh - 40px)}.transportation-bill-dialog>.dialog-heading{padding:16px 20px;border-bottom:1px solid var(--border)}.transportation-bill-dialog>.transport-bill-details{margin:0;padding:16px 20px}.transportation-bill-dialog .transport-bill-sheet{margin-top:0}
.transportation-bill-dialog .transport-bill-table{min-width:1300px}
.oil-tender-allocation-body{padding:14px 20px 20px}.oil-tender-allocation-dialog .contract-mapping-table{min-width:650px}.oil-tender-allocation-dialog .contract-mapping-table th,.oil-tender-allocation-dialog .contract-mapping-table td{padding:8px;vertical-align:middle}
.oil-tender-table>thead>tr>th,.oil-tender-table .oil-tender-summary-row>td{padding:7px 8px;vertical-align:middle;line-height:1.3}.oil-tender-table .oil-tender-summary-row small{margin-top:2px}.oil-tender-table .oil-tender-summary-row .table-action{white-space:nowrap}.oil-tender-overview-dialog{width:min(1000px,calc(100% - 32px))}.oil-tender-overview-dialog>.dialog-heading{padding:18px 20px;border-bottom:1px solid var(--border)}.oil-tender-overview{padding:14px 20px;white-space:normal}.oil-tender-allocation-overview{margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}.oil-tender-allocation-overview h5{margin:0 0 10px}.oil-tender-allocation-overview>div+div{margin-top:10px}.oil-tender-allocation-overview .mapping-chip-list{margin-top:6px}
.administration-page{display:grid;gap:14px}.admin-section-page{overflow:hidden;border:1px solid var(--border);border-radius:15px;background:#fff}.admin-page-heading{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:13px;padding:16px 18px}.admin-page-heading>span:nth-child(2) strong,.admin-page-heading>span:nth-child(2) small{display:block}.admin-page-heading>span:nth-child(2) strong{font-size:.88rem}.admin-page-heading>span:nth-child(2) small{margin-top:4px;color:var(--muted);font-size:.66rem}.admin-page-content{padding:16px;border-top:1px solid var(--border)}@media(max-width:650px){.admin-page-heading{grid-template-columns:34px minmax(0,1fr);padding:14px}.admin-page-content{padding:12px}}
.master-workspace-tabs{display:flex;flex-wrap:wrap;gap:.65rem;margin:1rem 0 1.5rem}.master-workspace-tabs a{text-decoration:none}.master-workspace-tabs a.active{background:var(--forest,#125744);border-color:var(--forest,#125744);color:#fff}

/* Shared POL-style tabs, with operations outside the scrolling tab strip. */
.workspace-toolbar{display:flex;align-items:center;gap:10px;min-width:0;margin:0 0 14px}
.all-partner-masters{display:grid;gap:18px}
.workspace-tabs{display:flex;flex:1;flex-wrap:nowrap;align-items:center;gap:4px;min-width:0;margin:0;padding:5px;overflow-x:auto;border:1px solid var(--border);border-radius:12px;background:#edf2ef}
.workspace-tabs>button,.workspace-tabs>a{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:4px;padding:10px 13px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-family:inherit;font-size:.65rem;font-weight:800;line-height:1.4;text-decoration:none;white-space:nowrap;box-shadow:none;cursor:pointer}
.workspace-tabs>button:hover,.workspace-tabs>a:hover{background:#fff;color:var(--green)}
.workspace-tabs>button.active,.workspace-tabs>a.active{border-color:transparent;background:var(--green);color:#fff;box-shadow:0 3px 9px rgba(20,54,44,.12)}
.workspace-tabs>button:focus-visible,.workspace-tabs>a:focus-visible,.module-operations-toggle:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.workspace-heading{align-items:center;gap:12px;margin-bottom:14px}
.workspace-heading>div:first-child{flex:1;min-width:0}
.workspace-heading h2{margin:0;font-size:1.05rem}
.module-operations{position:relative;flex:0 0 auto;margin-left:auto}
.module-operations-toggle{display:grid;place-items:center;width:42px;height:42px;padding:10px;border:1px solid var(--border);border-radius:10px;background:#edf2ef;color:var(--green);cursor:pointer}
.module-operations-toggle:hover,.module-operations-toggle[aria-expanded="true"]{border-color:var(--green);background:#e0ede7}
.module-operations-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.module-operations-popover{position:absolute;z-index:30;top:100%;right:0;width:min(340px,calc(100vw - 40px));max-height:min(440px,65vh);overflow-y:auto;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fff;box-shadow:0 12px 32px rgba(18,49,40,.18);color:var(--ink)}
.module-operations-popover[hidden]{display:none}
.module-operations-popover h3{margin:0 0 9px;font-size:.8rem}
.module-operations-popover ul{margin:0;padding:0;list-style:none}
.module-operations-popover li{padding:9px 0;border-top:1px solid #edf0ed;font-size:.7rem;overflow-wrap:anywhere}
.module-operations-popover strong,.module-operations-popover small{display:block}
.module-operations-popover small{margin-top:4px;color:var(--muted);font-size:.63rem;line-height:1.45}
.compliance-workspace{overflow:visible}
.compliance-toolbar{margin:0;padding:10px 14px;border-bottom:1px solid var(--border)}
.compliance-mode-tabs.workspace-tabs{flex:0 1 auto}
@media(max-width:650px){.workspace-toolbar{gap:6px}.workspace-tabs>button,.workspace-tabs>a{padding:9px 11px}.module-operations-toggle{width:40px;height:40px}.workspace-heading{gap:8px}.compliance-toolbar{padding:10px}.compliance-mode-bar{flex-wrap:wrap}.compliance-mode-tabs.workspace-tabs{flex:1 1 100%}.workspace-heading .date-chip{display:none}}
@media print{.workspace-toolbar,.module-operations{display:none!important}}

/* Module layout stays separate from shared table typography and print documents. */
@media screen {
.table-sort-button:focus-visible{outline:2px solid var(--green-2);outline-offset:3px;border-radius:3px}
.table-sort-indicator{white-space:nowrap;flex-shrink:0}
#contentPanel th[aria-sort="ascending"],#contentPanel th[aria-sort="descending"]{color:var(--green)}
/* Hidden legacy controls must stay hidden even when their layout uses flex/grid. */
#contentPanel [hidden]{display:none!important}
[data-browser-register-key]{min-width:0;max-width:100%}
.browser-register-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:14px 18px;border-bottom:1px solid var(--border);color:var(--muted);font-size:.7rem;background:#fff}
.pol-register-filter{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0;max-width:100%}
.pol-register-filter label{display:flex;align-items:center;gap:6px;white-space:nowrap}
.pol-register-filter input[type=date],.pol-register-filter .ui-date-control{width:140px;min-width:0}
.pol-register-filter small{font-size:inherit;color:var(--muted)}
.browser-register-controls label{display:flex;align-items:center;gap:6px;white-space:nowrap}
.browser-register-controls input,.browser-register-controls select,.browser-register-controls button{padding:9px 10px;border:1px solid var(--border);border-radius:8px;background:#fafbfa;color:var(--ink);font:inherit}
.browser-register-controls input[type=search]{flex:1 1 200px;min-width:160px}
.browser-register-controls input:not([type=search]){width:120px}
.browser-register-controls button{color:var(--green);cursor:pointer}
.browser-register-controls :focus-visible,.browser-table-scroll:focus-visible{outline:2px solid var(--green-2);outline-offset:2px}
.browser-table-scroll{position:relative;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.vehicles-table-wrap,.users-table-wrap{position:relative}
[data-browser-footer]{flex-wrap:wrap}
[data-browser-footer] .vehicle-pagination{flex-wrap:wrap;margin-left:auto}
.vehicle-table-card .vehicle-toolbar{flex-wrap:wrap;justify-content:flex-end}
.vehicle-table-card .vehicle-table-controls{flex:1 1 100%;min-width:0;flex-wrap:wrap}
.vehicle-table-card .vehicle-table-controls .user-search-wrap{flex:1 1 220px;min-width:180px;width:auto}
.vehicle-table-card .vehicle-table-controls:has(>[hidden]):not(:has(>:not([hidden]))){display:none}
.hierarchy-table-controls:has(>[hidden]):not(:has(>:not([hidden]))),.compliance-filter-bar:has(>[hidden]):not(:has(>:not([hidden]))){display:none}
.vehicle-toolbar-actions{flex-wrap:wrap}
.consignee-table .vehicle-actions{min-width:96px;white-space:nowrap}
.consignee-table .vehicle-actions>form{display:inline-block;margin-left:6px}
.consignee-table .icon-action{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:30px;height:30px;padding:0;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--green-2);font:inherit;cursor:pointer}
.consignee-table .icon-action.danger{color:var(--danger)}
.transport-bill-register .icon-action,.ccms-register .icon-action,.common-tender-workspace .icon-action,.petrol-pump-table .icon-action,.shared-master-register .icon-action,#vehiclesTable .icon-action,#allocationsTable .icon-action,#driversTable .icon-action,.oil-consignment-table .icon-action,.operations-register-card .icon-action{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--green-2);font:inherit;cursor:pointer}
.petrol-pump-table .icon-action.danger,.oil-consignment-table .icon-action.danger{color:var(--danger)}
.icon-action svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.vehicle-pagination>span{display:flex;align-items:center;padding:0 7px;white-space:nowrap}
[data-browser-register-key="vehicles"] .vehicles-table{min-width:980px}
[data-browser-register-key="drivers"] .vehicles-table{min-width:780px}
[data-browser-register-key="allocations"] .vehicles-table{min-width:850px}
[data-browser-register-key="compliance"] .vehicles-table{min-width:1100px}
@media(max-width:600px){.browser-register-controls{padding:12px;gap:8px}.browser-register-controls input[type=search]{flex-basis:100%;width:100%}.vehicle-table-card .vehicle-toolbar-actions{width:100%}.vehicle-table-card .vehicle-toolbar-actions>*{flex:1 1 160px;text-align:center}}
.bulk-workspace .table-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:16px 18px;color:var(--muted);font-size:.7rem}
.bulk-workspace .table-toolbar input,.bulk-workspace .table-toolbar select{padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:#fafbfa;color:var(--ink);font:inherit}
.bulk-workspace .table-toolbar input[type=search]{flex:1;min-width:180px}
.bulk-workspace .table-toolbar input:not([type=search]){width:150px}
.bulk-workspace .table-toolbar .primary-action{margin-left:auto}
.bulk-workspace .vehicle-table-footer{justify-content:flex-end;gap:6px}
.bulk-workspace .vehicle-table-footer>span{margin-right:auto}
.bulk-workspace .vehicle-table-footer button:disabled{opacity:.5;cursor:not-allowed}
.bulk-workspace .vehicles-table{min-width:900px}
.bulk-workspace [data-bulk-register]>h3{padding:16px 18px 0}
.bulk-workspace .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.bulk-workspace .vehicle-form input[type=checkbox]{width:auto;justify-self:start}
.bulk-workspace .lookup-pages{display:flex;align-items:center;gap:8px;font-weight:400}
.shared-master-registers{display:grid;gap:18px;margin-bottom:18px}
.shared-master-register .vehicles-table{min-width:1100px}
.shared-master-register .vehicles-table th,.shared-master-register .vehicles-table th button{white-space:nowrap}
#sharedMasterDialog textarea{width:100%;min-height:70px;border:1px solid var(--border);border-radius:8px;padding:10px 12px;background:#fafbfa;color:var(--ink);font:inherit;resize:vertical}
@media(max-width:600px){.bulk-workspace .form-grid{grid-template-columns:1fr}.bulk-workspace .table-toolbar .primary-action{width:100%}.bulk-workspace .vehicle-table-footer{flex-wrap:wrap}.bulk-workspace .vehicle-table-footer>span{width:100%}}
}

.compliance-mode-bar.compliance-management-toolbar{justify-content:flex-end}

.shared-master-registers [data-shared-master-panel][hidden]{display:none}
.lookup-autocomplete{position:relative}
.lookup-autocomplete select[hidden],.lookup-autocomplete-results[hidden]{display:none}
.lookup-autocomplete-results{position:absolute;top:100%;left:0;right:0;z-index:10;max-height:240px;overflow-y:auto;border:1px solid var(--border,#d5dfdc);border-radius:10px;background:#fff;box-shadow:0 8px 20px #102f2526;padding:5px;margin-top:4px}
.lookup-autocomplete-results button{display:block;width:100%;padding:10px 12px;border:0;border-radius:6px;text-align:left;background:#fff;color:inherit;font:inherit;cursor:pointer}
.lookup-autocomplete-results button:hover,.lookup-autocomplete-results button[aria-selected="true"]{background:#e8f3ee;color:#124f40}
.lookup-autocomplete-message{display:block;padding:10px 12px;color:#63736d;font-weight:400}
.lookup-autocomplete-results .lookup-autocomplete-more{color:#12634d;font-weight:600}
#complianceTable .compliance-documents{gap:2px}
#vehiclesTable .vehicle-actions,#driversTable .vehicle-actions{min-width:96px;width:110px;white-space:nowrap}
.vehicle-details-dialog{width:min(820px,calc(100% - 32px))}
.vehicle-details-body{padding:24px}
.vehicle-details-dialog .dialog-heading{gap:16px}
.vehicle-details-dialog .dialog-heading h3{font-family:inherit;font-size:1.25rem;font-weight:650}
.vehicle-details-dialog .dialog-close{flex-shrink:0}
.vehicle-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px}
.vehicle-detail-grid>span{min-width:0;padding-bottom:10px;border-bottom:1px solid #edf0ed}
.vehicle-detail-grid .full{grid-column:1/-1}
.vehicle-detail-grid small,.vehicle-detail-grid strong{display:block}
.vehicle-detail-grid small{color:var(--muted);font-size:.7rem}
.vehicle-detail-grid strong{margin-top:4px;font-size:.8rem;overflow-wrap:anywhere;white-space:pre-wrap}
@media(max-width:560px){.vehicle-detail-grid{grid-template-columns:1fr}.vehicle-details-body{padding:20px}}
#allocationsTable .allocation-period{white-space:nowrap}
#allocationsTable .allocation-row-actions{display:flex;align-items:center;gap:8px}
#allocationsTable .allocation-row-actions>form{margin:0}
#allocationsTable .allocation-identity-meta{display:flex;align-items:center;gap:10px}
#allocationsTable .allocation-identity-meta small{margin-top:0}
#contentPanel table .register-serial{width:3rem;text-align:center;white-space:nowrap;font-variant-numeric:tabular-nums}

.consignee-overview-table{min-width:1300px}
.common-tender-subject{text-align:left;white-space:normal}
/* Finance grids must shrink around scrollable registers instead of widening the page. */
.finance-module,.finance-section-page{min-width:0;grid-template-columns:minmax(0,1fr)}
.finance-module>*,.finance-section-page>*,.finance-bill-foundation>section,.transport-bill-foundation>section{min-width:0}
.consignee-overview .vehicle-toolbar p{margin:0;font-size:.72rem;line-height:1.5}

.driver-overview-table{min-width:1450px}
.driver-overview .vehicle-toolbar p{margin:0;font-size:.72rem;line-height:1.5}

.vehicle-overview-table{min-width:1450px}
.overview-reference-tooltip{cursor:help;text-decoration:underline dotted;text-underline-offset:3px}
.overview-invoice-tooltip{position:fixed;z-index:10000;max-width:min(420px,calc(100vw - 24px));padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--ink);box-shadow:0 5px 20px #0003;white-space:pre-line;font-size:12px;font-weight:400;line-height:1.5;overflow-wrap:anywhere}
.overview-reference-tooltip:focus-visible{outline:2px solid var(--green-2);outline-offset:3px}
.vehicle-overview .vehicle-toolbar p{margin:0;font-size:.72rem;line-height:1.5}
.overview-trip-count{padding:2px 6px;min-width:28px;text-decoration:underline;text-underline-offset:3px}
.overview-trips-dialog{width:min(1500px,calc(100% - 32px))}
.overview-trips-dialog>.dialog-heading{padding:18px 20px;margin:0;border-bottom:1px solid var(--border);gap:14px}
.overview-trips-dialog .dialog-heading h3{font-family:inherit;font-size:1.15rem;font-weight:650}
.overview-trips-content{padding:0 20px 16px;min-width:0}
.overview-trips-content>p{font-size:.75rem;line-height:1.5}
.overview-trips-controls{display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding:12px 0}
.overview-trips-controls input,.overview-trips-controls select{padding:9px;border:1px solid var(--border);border-radius:8px;font:inherit;max-width:100%}
.overview-trips-controls input{flex:1;min-width:160px}
.overview-trips-table{min-width:1600px}
.vehicle-overview .overview-trips-table,.driver-overview .overview-trips-table{min-width:0}
.overview-trips-table .vehicle-empty{text-align:left;white-space:normal}

[data-consignee-types] .vehicles-table{min-width:520px}
[data-consignee-types] .vehicles-table td:last-child{white-space:nowrap}
[data-consignee-types] .vehicle-table-controls .user-search-wrap{flex:1 1 auto;height:42px;min-height:42px}
[data-consignee-types] .table-sort-button{color:inherit;text-decoration:none}

/* CCMS evidence and itemized entry share one review workspace. */
.ccms-review-layout{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:18px;align-items:start}
.ccms-review-layout section{min-width:0}.ccms-review-layout h3{margin:0 0 12px;font-size:.9rem}
.ccms-document-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.ccms-document-list button{overflow-wrap:anywhere;text-align:left}
.ccms-document-upload{display:grid;gap:9px;margin-bottom:14px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#f7faf8}.ccms-document-upload label{display:grid;gap:7px;font-size:.75rem;font-weight:750}.ccms-document-upload input{width:100%;min-width:0}.ccms-document-upload small{color:var(--muted);font-size:.66rem;line-height:1.5}.ccms-document-upload button{justify-self:start}.ccms-document-upload p:empty{display:none}.ccms-document-upload p{margin:0;font-size:.72rem}
.ccms-document-preview iframe{width:100%;height:560px;border:1px solid var(--border);border-radius:8px;background:#f6f8f7}
.ccms-document-preview img{display:block;max-width:100%;max-height:620px;object-fit:contain;margin:auto}
.ccms-pdf-controls{display:flex;justify-content:space-between;gap:10px;margin-bottom:10px}.ccms-pdf-controls button{padding:7px 10px;font-size:.7rem}
.ccms-entry-side :is(.ccms-entry-form,.expense-entry-form){padding:10px;margin-bottom:10px}.ccms-entry-row-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}:is(.ccms-entry-form,.expense-entry-form) :is(.ccms-entry-grid,.expense-entry-grid){grid-template-columns:148px minmax(150px,1.5fr) minmax(125px,1.4fr) minmax(80px,1fr) 64px minmax(95px,1fr) minmax(100px,1fr) auto;min-width:960px;gap:8px;align-items:end}:is(.ccms-entry-grid,.expense-entry-grid) label{min-width:0;gap:4px;white-space:nowrap}:is(.ccms-entry-grid,.expense-entry-grid) input{min-width:0;min-height:36px;padding:8px 10px}:is(.ccms-entry-form,.expense-entry-form) :is(.ccms-entry-grid,.expense-entry-grid)>.dialog-actions{margin:0;padding:0;border:0;align-self:end}:is(.ccms-entry-grid,.expense-entry-grid) .primary-action{white-space:nowrap;min-height:36px;padding:8px 10px}:is(.ccms-entry-grid,.expense-entry-grid) .primary-action[hidden]{display:none}.ccms-entry-side :is(.ccms-entry-table,.expense-entry-table){min-width:650px;table-layout:auto}.ccms-entry-side :is(.ccms-entry-table,.expense-entry-table) th{white-space:nowrap}
:is(.ccms-entry-table,.expense-entry-table) tfoot th,:is(.ccms-entry-table,.expense-entry-table) tfoot td{padding:9px 8px;border-top:2px solid var(--border);font-size:.75rem;font-weight:800;background:#edf3f1}
@media(max-width:900px){.ccms-review-layout{grid-template-columns:minmax(0,1fr)}.ccms-document-preview iframe{height:360px}}

/* Lazy bill rows reuse the shared register controls and keep only data horizontally scrollable. */
.provider-bill-rows{min-width:0;max-width:100%}.provider-bill-rows .vehicles-table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.provider-bill-rows .vehicles-table{min-width:0}.provider-bill-rows .vehicles-table td{white-space:nowrap}.provider-bill-rows .vehicles-table td.numeric{text-align:right;font-variant-numeric:tabular-nums}.provider-bill-rows .vehicle-table-footer{flex-wrap:wrap;gap:10px;min-height:46px;padding:10px 12px}.provider-bill-rows .vehicle-pagination{margin-left:auto}.provider-bill-rows .browser-register-controls{padding:10px 12px;gap:8px}.provider-bill-rows .browser-register-controls input,.provider-bill-rows .browser-register-controls select{padding:7px 9px}.transportation-bill-dialog .transport-bill-lines{min-width:0;max-width:100%}.transportation-bill-dialog .transport-bill-meta-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.transportation-bill-dialog .transport-bill-header-notice{margin:0 0 10px;padding:8px 10px;border-radius:7px;background:#f3f7f5;color:var(--muted);font-size:.66rem;line-height:1.4}.transportation-bill-dialog>.dialog-heading h3{overflow-wrap:anywhere}.transportation-bill-dialog>.transport-bill-details{padding:12px 16px}

/* Financial progress uses shared register controls and keeps wide values in its own scroller. */
.financial-progress-workspace{min-width:0;max-width:100%}
.diesel-bill-register.pump-bills-report{padding:0;overflow:hidden}
.financial-progress-workspace.pump-comparison>.user-summary-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.financial-progress-heading{padding:14px 18px 0}.financial-progress-heading h3{margin:0;font-size:.95rem}.financial-progress-heading p{margin:6px 0 0;color:var(--muted);font-size:.7rem;line-height:1.45}
.financial-progress-workspace>.user-summary-grid{padding:12px 18px;margin:0;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}
.financial-progress-workspace>.user-summary-grid article{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:9px}
.financial-progress-workspace>.user-summary-grid strong{margin:0;font-family:inherit;font-size:1.1rem;font-weight:750}
.financial-progress-workspace .browser-register-controls{padding:10px 18px;gap:8px}.financial-progress-workspace .browser-register-controls input,.financial-progress-workspace .browser-register-controls select{padding:7px 9px;min-height:34px}
.financial-progress-workspace .vehicles-table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
#contentPanel .financial-progress-workspace .financial-progress-table{width:max-content;min-width:100%}
.financial-progress-workspace .financial-progress-table td,.financial-progress-workspace .billing-report-status{white-space:nowrap}
.financial-progress-workspace .vehicle-table-footer{padding:10px 18px;gap:10px;flex-wrap:wrap}.financial-progress-workspace .vehicle-pagination{margin-left:auto}
@media(max-width:1100px){.financial-progress-workspace>.user-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.financial-progress-heading{padding:12px 12px 0}.financial-progress-workspace>.user-summary-grid{padding:12px;grid-template-columns:minmax(0,1fr)}.financial-progress-workspace .browser-register-controls,.financial-progress-workspace .vehicle-table-footer{padding:10px 12px}}

.financial-progress-workspace .financial-progress-table td.numeric{text-align:right;font-variant-numeric:tabular-nums}
@media print{body.oil-report-printing .financial-progress-workspace .browser-register-controls,body.oil-report-printing .financial-progress-workspace .vehicle-table-footer{display:none!important}}

/* Shared POL report date range stays beside the report selector on desktop. */
:is(.oil-reports-workspace,.cng-reports-workspace) > .oil-contract-toolbar {display:flex;flex-direction:row;align-items:flex-end;flex-wrap:wrap;gap:12px;}
:is(.oil-reports-workspace,.cng-reports-workspace) .oil-report-date-range {display:flex;align-items:flex-end;flex-wrap:wrap;gap:10px;margin:0;}
.oil-report-date-range label {display:flex;flex-direction:column;gap:6px;flex:0 0 164px;}
.oil-report-date-range input {box-sizing:border-box;min-height:41px;border:1px solid var(--border);border-radius:10px;background:#fff;padding:9px 12px;color:inherit;font:inherit;}
.oil-report-date-range .secondary-action {min-height:41px;}
.oil-report-date-range small {align-self:center;color:var(--muted);font-size:12px;}
@media(max-width:700px) {:is(.oil-reports-workspace,.cng-reports-workspace) > .oil-contract-toolbar > label,:is(.oil-reports-workspace,.cng-reports-workspace) .oil-report-date-range {width:100%;}.oil-report-date-range label {flex:1 1 140px;}.oil-report-date-range small {flex-basis:100%;}}

/* Expense report views reuse shared table spacing within a naturally sized modal. */
.transportation-cost-dialog{width:min(1250px,calc(100% - 32px))}
.transportation-cost-dialog .vehicles-table{min-width:0;width:100%}
.transportation-cost-dialog [data-cost-detail-content] h3{margin:0;font-size:1rem}
.transportation-cost-dialog [data-cost-detail-content] p{font-size:.78rem;line-height:1.4}
.transportation-cost-dialog .vehicles-table td.numeric{text-align:right;font-variant-numeric:tabular-nums}

/* Common Tender setup uses one document-upload surface and keeps the next step visible. */
.common-contract-guide { margin: .75rem 0; padding: .75rem 1rem; border: 1px solid var(--border, #d5e0de); border-radius: .75rem; background: var(--surface-soft, #f5f8f7); }
.common-contract-guide p { margin: 0 0 .4rem; }
.common-contract-guide ol { margin: 0; padding-left: 1.2rem; display: grid; gap: .35rem; font-size: .85rem; }
.common-contract-guide .module-alert { margin: .6rem 0 0; }
[data-common-tender-contracts] .oil-contract-details { margin-top: .75rem; }

[data-common-document-field] { min-width: 0; display: grid; gap: .35rem; }
[data-common-document-current]:not([hidden]) { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem; }
[data-common-document-current] a { overflow-wrap: anywhere; }

/* The Tender editor is one workspace; related contract forms expand inline. */
#commonTenderDialog.common-tender-editor {width:min(1200px,calc(100% - 32px));padding:0;max-height:92vh;overflow:auto;}
#commonTenderForm {padding:0;margin:0;}
#commonTenderDialog .tender-editor-header .dialog-heading {padding:18px 24px 14px;margin:0;border-bottom:1px solid var(--border);background:#fff;}
.tender-editor-state {margin:5px 0 0;color:var(--muted);font-size:.8rem;line-height:1.4;}
.tender-editor-tabs {display:flex;gap:5px;overflow-x:auto;padding:10px 24px;border-bottom:1px solid var(--border);background:var(--surface-soft,#f5f8f7);}
.tender-editor-tabs button {flex:0 0 auto;border:0;border-radius:8px;padding:10px 15px;background:transparent;color:var(--muted);font:inherit;font-size:.85rem;font-weight:700;cursor:pointer;white-space:nowrap;}
.tender-editor-tabs button[aria-selected="true"] {background:var(--green-2,#145747);color:#fff;box-shadow:0 2px 5px #102c2415;}
.tender-editor-tabs button:focus-visible {outline:2px solid var(--green-2);outline-offset:2px;}
#commonTenderForm > [data-tender-panel] {padding:20px 24px;min-height:300px;}
#commonTenderForm > [data-tender-panel="documents"] {min-height:0;padding-bottom:0;}
#commonTenderForm > [data-common-tender-error]:not([hidden]) {margin:12px 24px;}
#commonTenderForm .common-tender-locations,#commonTenderForm .common-tender-documents {margin:0;}
.tender-editor-contract-area {padding:18px 24px;min-height:300px;}
.tender-editor-contract-area [data-tender-contract-panel="work-orders"] {margin-top:20px;}
.tender-editor-operation-bar {display:flex;align-items:center;gap:18px;margin-bottom:16px;}
.tender-editor-operation-bar label {display:grid;gap:5px;min-width:150px;font-size:.85rem;font-weight:700;}
.tender-editor-operation-bar select {border:1px solid var(--border);border-radius:9px;padding:9px 12px;background:#fff;font:inherit;}
.tender-editor-operation-bar p {margin:0;color:var(--muted);font-size:.8rem;line-height:1.4;}
.tender-editor-footer {position:sticky;bottom:0;z-index:4;display:flex;justify-content:flex-end;gap:10px;margin:0;padding:14px 24px;border-top:1px solid var(--border);background:#fff;}
#commonTenderDialog .tender-inline-dialog[open] {position:static;inset:auto;width:100%;max-width:none;max-height:none;box-sizing:border-box;margin:16px 0 0;padding:14px;border:1px solid var(--border);border-radius:12px;box-shadow:none;overflow:visible;background:var(--surface-soft,#f5f8f7);}
#commonTenderDialog .tender-inline-dialog .dialog-heading {margin:0 0 12px;padding:0 0 10px;}
#commonTenderDialog .tender-inline-dialog .user-form {padding:0;}
#commonTenderDialog [data-tender-contract-panel] > section {padding:0;}
#commonTenderDialog [data-tender-contract-panel] .oil-sub-list {margin-top:10px;}
#commonTenderDialog [hidden] {display:none!important;}
@media(max-width:700px) {#commonTenderDialog.common-tender-editor {width:calc(100% - 16px);max-height:96vh;}#commonTenderDialog .tender-editor-header .dialog-heading,.tender-editor-tabs,#commonTenderForm > [data-tender-panel],.tender-editor-contract-area,.tender-editor-footer {padding-left:14px;padding-right:14px;}.tender-editor-operation-bar {align-items:flex-start;flex-direction:column;gap:8px;}.tender-editor-tabs button {padding:9px 12px;}}

.tender-editor-header {position:sticky;top:0;z-index:6;background:#fff;}
.tender-document-column {text-align:center;white-space:nowrap;}
.tender-document-column .common-tender-row-actions {justify-content:center;}
.common-tender-workspace .tender-document-action.document-uploaded {color:#166447;background:#e4f3eb;border-color:#a7d2bc;}
.common-tender-workspace .tender-document-action.document-missing {color:#98610b;background:#fff3da;border-color:#e8ca8d;}
.common-tender-workspace .tender-document-action.document-partial {color:#245c9d;background:#e7effa;border-color:#b5cbea;}
#commonTenderDialog .tender-inline-dialog {scroll-margin-top:180px;}
#commonTenderDialog[data-unified-contract="true"] .tender-editor-contract-area {min-height:0;padding-top:16px;}
#commonTenderDialog[data-unified-contract="true"] .tender-inline-dialog[open] {margin-top:0;background:#fff;}
#commonTenderDialog .common-contract-unified-form > .dialog-heading,
#commonTenderDialog .common-contract-unified-form .dialog-actions > button[type="button"] {display:none;}
#commonTenderDialog .common-contract-unified-form .form-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
#commonTenderDialog .common-contract-unified-form label:has(> select[name="loaId"]) {grid-column:span 2;}
#commonTenderDialog .common-contract-unified-form #oilWorkInherited,
#commonTenderDialog .common-contract-unified-form #cngWorkInherited {display:none;}
#commonTenderDialog .common-contract-unified-form textarea {min-height:64px;height:64px;}
#commonTenderDialog .common-contract-unified-form .dialog-actions {margin-top:12px;padding-top:12px;}
#commonTenderDialog .common-contract-upload {padding:12px;border:1px solid var(--border);border-radius:9px;background:var(--surface-soft,#f5f8f7);}
#commonTenderDialog .common-contract-upload [data-common-document-current] {display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:7px;}
#commonTenderDialog[data-unified-contract="true"] [data-tender-contract-panel="loa"] > section {margin-top:14px;}
#commonTenderDialog[data-unified-contract="true"] [data-tender-contract-panel="work-orders"] {margin-top:0;}
#commonTenderDialog[data-unified-contract="true"] [data-tender-contract-panel="work-orders"] > section {margin-top:14px;}
@media(max-width:700px) {#commonTenderDialog .common-contract-unified-form .form-grid {grid-template-columns:1fr;}#commonTenderDialog .common-contract-unified-form label:has(> select[name="loaId"]) {grid-column:1;}}

/* Add, Edit and View Tender share the same compact details layout. */
#commonTenderDialog[data-tender-section="vehicles"] .tender-editor-contract-area {padding:12px 18px;min-height:0;}
#commonTenderDialog[data-tender-section="vehicles"] [data-common-tender-contracts] {border:0;padding:0;}
#commonTenderDialog[data-tender-section="vehicles"] .tender-inline-dialog[open] {margin:0;padding:0;border:0;background:#fff;}
#commonTenderDialog[data-tender-section="vehicles"] .tender-inline-dialog > .dialog-heading {display:none;}
#commonTenderDialog[data-tender-section="vehicles"] .oil-tender-allocation-body {padding:0;}
#commonTenderDialog[data-tender-section="vehicles"] .tender-editor-operation-bar {margin-bottom:10px;}
[data-tender-vehicle-content] {display:flex;flex-direction:column;gap:10px;}
[data-tender-vehicle-content] > .module-alert {order:-2;margin:0;}
[data-tender-vehicle-content] > [data-tender-vehicle-add] {order:-1;margin:0;}
[data-tender-vehicle-content] .tender-vehicle-picker {margin:0;padding:0;}
[data-tender-vehicle-content] .vehicle-empty {margin:4px 0;padding:12px;}
[data-tender-vehicle-content] .tender-vehicle-help {margin:0;color:var(--muted);font-size:.8rem;}
[data-tender-vehicle-content] [data-tender-vehicle-search-status]:empty {display:none;}
[data-tender-vehicle-content] [data-tender-vehicle-search-status] {margin:5px 0;font-size:.8rem;}
#commonTenderDialog[data-tender-section="details"],#commonTenderOverviewDialog.common-tender-view {width:min(1080px,calc(100% - 32px));padding:0;max-height:92vh;overflow:auto;}
#commonTenderDialog[data-tender-section="details"] .tender-editor-header .dialog-heading,
#commonTenderOverviewDialog.common-tender-view > .dialog-heading {padding:12px 18px;margin:0;border-bottom:1px solid var(--border);}
#commonTenderDialog[data-tender-section="details"] .tender-editor-tabs {padding:6px 18px;}
#commonTenderDialog[data-tender-section="details"] .tender-editor-tabs button {padding:7px 12px;}
#commonTenderDialog[data-tender-section="details"] .tender-editor-footer {padding:10px 18px;}
#commonTenderForm > [data-tender-panel="details"] {padding:12px 18px;min-height:0;}
#commonTenderForm [data-tender-panel="details"] .form-grid,.common-tender-detail-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 14px;}
#commonTenderForm [data-tender-panel="details"] label {gap:4px;font-size:var(--ui-label-size,.72rem);}
#commonTenderForm [data-tender-panel="details"] input:not([type="checkbox"]),
#commonTenderForm [data-tender-panel="details"] select {height:var(--ui-control-height,34px);min-height:var(--ui-control-height,34px);padding:var(--ui-control-padding,6px 9px);font-size:var(--ui-control-size,.75rem);}
#commonTenderForm [data-tender-panel="details"] textarea {min-height:50px;height:50px;padding:7px 10px;}
#commonTenderForm .common-tender-operations {grid-column:span 2;padding:6px 10px;margin:0;align-self:end;}
#commonTenderForm .common-tender-operations legend {font-size:var(--ui-label-size,.72rem);padding:0 4px;}
#commonTenderForm .common-tender-operations label {margin:0 16px 0 0;}
#commonTenderOverviewDialog.common-tender-view > .dialog-heading {position:sticky;top:0;z-index:2;background:#fff;}
#commonTenderOverviewDialog.common-tender-view .oil-tender-overview {padding:12px 18px;}
.common-tender-detail-grid > span {display:grid;align-content:start;gap:5px;min-width:0;padding:8px 10px;border:1px solid var(--border);border-radius:7px;background:var(--surface-soft,#f5f8f7);}
.common-tender-detail-grid small,.common-tender-related small {font-size:.75rem;color:var(--muted);}
.common-tender-detail-grid strong {font-size:.85rem;font-weight:500;line-height:1.35;overflow-wrap:anywhere;}
.common-tender-detail-grid .full-field {grid-column:1/-1;}
.common-tender-operation-summary {grid-column:span 2;}
.common-tender-notes strong {white-space:pre-wrap;}
.common-tender-related {display:grid;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid var(--border);font-size:.8rem;}
.common-tender-related .mapping-chip-list {margin:0;gap:6px;align-items:center;}
.common-tender-view-documents {display:flex;gap:6px 14px;flex-wrap:wrap;align-items:center;}
#commonTenderOverviewDialog .common-tender-view-documents p {margin:0;font-size:.8rem;}
#commonTenderOverviewDialog .common-tender-view-actions {margin-top:12px;padding-top:10px;gap:8px;}
@media(max-width:700px) {
 #commonTenderForm [data-tender-panel="details"] .form-grid,.common-tender-detail-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 #commonTenderForm .common-tender-operations,.common-tender-operation-summary {grid-column:1/-1;}
}
@media(max-width:480px) {
 #commonTenderForm [data-tender-panel="details"] .form-grid,.common-tender-detail-grid {grid-template-columns:1fr;}
}

.health-not_yet_valid{background:#e6edf8;color:#49658d}

/* Shared controls for editing register cells without changing table layout. */
.vehicles-table .register-inline-input{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:7px 9px;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--ink);font:inherit;font-weight:400}.vehicles-table .register-inline-input:focus{outline:2px solid var(--green-2);outline-offset:1px}.vehicles-table [data-column-align="right"] .register-inline-input{text-align:right}

/* Product rows share the portal table/form controls and stay within the consignment dialog. */
.pol-product-editor table{table-layout:fixed;min-width:0;width:100%;margin-bottom:.65rem}
.pol-product-editor th:nth-child(1){width:20%}.pol-product-editor th:nth-child(2){width:36%}.pol-product-editor th:nth-child(3){width:15%}.pol-product-editor th:nth-child(4){width:20%}.pol-product-editor th:last-child{width:9%}
.pol-product-editor td{padding:.45rem}.pol-product-editor input{width:100%;min-width:0;box-sizing:border-box}.pol-product-editor [data-pol-product-status]{display:block;margin-top:.4rem}
