
:root{--bg:#f4f7fb;--card:#fff;--text:#172033;--muted:#6c7687;--border:#dde3eb;--primary:#1769e0;--danger:#c93636;--success:#15803d}
*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text)}
button,input{font:inherit}.hidden{display:none!important}.btn{border:0;border-radius:9px;padding:10px 14px;font-weight:700;cursor:pointer}.btn-primary{background:var(--primary);color:#fff}.btn-light{background:#eef2f7;color:#26344a}
.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(430px,100%);background:#fff;border:1px solid var(--border);border-radius:18px;padding:28px;box-shadow:0 10px 30px rgba(22,32,51,.08)}
.login-card h1{margin:0 0 6px}.login-card p{margin:0 0 22px;color:var(--muted)}label{display:block;font-size:13px;font-weight:700;margin:13px 0 6px}input{width:100%;border:1px solid #cfd6e0;border-radius:10px;padding:12px}
.login-card .btn{width:100%;margin-top:18px;padding:12px}.msg{font-size:13px;margin-top:12px}.msg.error{color:var(--danger)}.msg.success{color:var(--success)}
.note{background:#eef5ff;border:1px solid #d1e1fb;color:#355a86;border-radius:10px;padding:12px;font-size:13px;line-height:1.45}
.topbar{height:68px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 24px}.brand{font-weight:800;font-size:20px}.brand span{color:var(--primary)}
.layout{display:grid;grid-template-columns:230px 1fr;min-height:calc(100vh - 68px)}.sidebar{background:#fff;border-right:1px solid var(--border);padding:18px 12px}.nav-btn{display:block;width:100%;text-align:left;border:0;background:transparent;border-radius:9px;padding:11px 12px;margin-bottom:5px;color:#344054;font-weight:650}.nav-btn.active{background:#eef4ff;color:#1557b0}
.main{padding:24px;max-width:1400px}h2{margin:0}.subtitle{color:var(--muted);margin:5px 0 20px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.stat{background:#fff;border:1px solid var(--border);border-radius:14px;padding:17px}.stat-label{font-size:12px;color:var(--muted);font-weight:700}.stat-value{font-size:30px;font-weight:800;margin-top:6px}
.panel{background:#fff;border:1px solid var(--border);border-radius:14px;padding:18px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:11px 10px;border-bottom:1px solid #edf0f4;white-space:nowrap}th{font-size:12px;color:var(--muted)}.badge{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eef2f7;font-size:12px;font-weight:700}
@media(max-width:900px){.stats{grid-template-columns:repeat(2,1fr)}.layout{grid-template-columns:1fr}.sidebar{display:none}}@media(max-width:520px){.stats{grid-template-columns:1fr}}

.section-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.search{max-width:340px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.form-grid .full{grid-column:1/-1}.customer-list{display:grid;gap:10px}.customer-card{border:1px solid var(--border);border-radius:12px;padding:14px;background:#fff;display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.customer-card h4{margin:0 0 5px;font-size:16px}.customer-card .meta{font-size:12px;color:var(--muted);line-height:1.5}.customer-actions{display:flex;gap:6px;flex-wrap:wrap}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.45);display:none;align-items:center;justify-content:center;padding:18px;z-index:30}.modal.show{display:flex}.modal-card{background:#fff;border-radius:16px;border:1px solid var(--border);width:min(720px,100%);max-height:92vh;overflow:auto;padding:20px;box-shadow:0 20px 60px rgba(0,0,0,.18)}
.modal-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.modal-head h3{margin:0}
.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0 18px}.profile-item{background:#f8fafc;border:1px solid #edf0f4;border-radius:10px;padding:10px}.profile-item b{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;margin-bottom:3px}
@media(max-width:700px){.form-grid{grid-template-columns:1fr}.profile-grid{grid-template-columns:1fr}.customer-card{flex-direction:column}}

.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}
.list-row{border:1px solid var(--border);border-radius:12px;padding:13px;margin-bottom:9px;background:#fff}
.list-row h4{margin:0 0 4px}.muted{color:var(--muted);font-size:12px}.spacer{height:10px}
.item-line{display:grid;grid-template-columns:1.2fr .7fr .7fr .7fr auto;gap:8px;align-items:end;margin-bottom:8px}
.item-line input,.item-line select{width:100%;border:1px solid #cfd6e0;border-radius:9px;padding:10px;background:#fff}
select{width:100%;border:1px solid #cfd6e0;border-radius:10px;padding:12px;background:#fff}
.summary-box{background:#f8fafc;border:1px solid #edf0f4;border-radius:12px;padding:14px}
.summary-row{display:flex;justify-content:space-between;padding:5px 0}.summary-row.total{font-weight:800;border-top:1px solid #e5e7eb;margin-top:6px;padding-top:10px}
@media(max-width:900px){.two-col{grid-template-columns:1fr}.item-line{grid-template-columns:1fr 1fr}.item-line .wide{grid-column:1/-1}}

.container-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.assign-list{max-height:340px;overflow:auto;border:1px solid var(--border);border-radius:10px;padding:8px}
.assign-row{display:flex;align-items:center;gap:9px;padding:9px;border-bottom:1px solid #eef1f4}
.assign-row:last-child{border-bottom:0}.assign-row input[type=checkbox]{width:18px;flex:0 0 auto}
.container-card{border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:10px;background:#fff}
.container-card h4{margin:0 0 5px}.pill-row{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
@media(max-width:700px){.container-grid{grid-template-columns:1fr}}

.payment-status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:12px;font-weight:800}
.payment-unpaid{background:#fff1f0;color:#b42318}.payment-partial{background:#fff8e6;color:#9a6700}.payment-paid{background:#ecfdf3;color:#027a48}
.payment-card{border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:10px;background:#fff}
.history-list{display:grid;gap:8px}.history-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:8px;padding:10px;border:1px solid #edf0f4;border-radius:10px;background:#fafbfc}
@media(max-width:700px){.history-row{grid-template-columns:1fr 1fr}}

.doc-card{border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:10px;background:#fff}
.doc-meta{font-size:12px;color:var(--muted);line-height:1.55}
.doc-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}
.file-input{padding:10px;border:1px dashed #b9c4d1;border-radius:10px;background:#fafbfc}
.toggle-row{display:flex;align-items:center;gap:9px;margin-top:12px}
.toggle-row input{width:18px}

.public-wrap{max-width:900px;margin:40px auto;padding:0 16px}.public-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:20px;box-shadow:0 8px 30px rgba(0,0,0,.05)}
.track-form{display:flex;gap:8px;flex-wrap:wrap}.track-form input{flex:1;min-width:220px}.timeline{display:grid;gap:12px;margin-top:16px}.event{border-left:3px solid #d9e2ef;padding-left:14px}.event h4{margin:0 0 3px}.event .muted{font-size:12px}
.portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.portal-section{background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px}
.auth-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.auth-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:18px}
@media(max-width:760px){.portal-grid,.auth-grid{grid-template-columns:1fr}}

.wa-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}
.wa-list{max-height:520px;overflow:auto;border:1px solid var(--border);border-radius:12px;padding:8px;background:#fff}
.wa-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px;border-bottom:1px solid #edf0f4}
.wa-row:last-child{border-bottom:0}.wa-row input[type=checkbox]{width:18px}
.wa-name{font-weight:800}.wa-meta{font-size:12px;color:var(--muted);line-height:1.4}
.template-box textarea{width:100%;min-height:210px;border:1px solid #cfd6e0;border-radius:10px;padding:12px;font:inherit;resize:vertical}
.wa-preview{white-space:pre-wrap;background:#f8fafc;border:1px solid #edf0f4;border-radius:10px;padding:12px;min-height:180px}
.wa-summary{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
@media(max-width:900px){.wa-grid{grid-template-columns:1fr}}

.recipient-card{border:1px solid var(--border);border-radius:10px;padding:10px;margin-top:8px;background:#fafbfc}
.recipient-select-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}

.track-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.track-event-card{border:1px solid var(--border);border-radius:12px;padding:12px;margin-bottom:10px;background:#fff}
.track-event-card h4{margin:0 0 4px}
.track-event-meta{font-size:12px;color:var(--muted);line-height:1.5}
@media(max-width:850px){.track-admin-grid{grid-template-columns:1fr}}

.invoice-steps{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.invoice-step{padding:7px 10px;border-radius:999px;background:#eef2f7;font-size:12px;font-weight:800}
.invoice-step.active{background:#e8f1ff;color:#1557b0}
.invoice-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.invoice-summary-card{background:#f8fafc;border:1px solid #edf0f4;border-radius:12px;padding:12px}
.invoice-summary-card b{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;margin-bottom:4px}
.invoice-print{background:#fff;border:1px solid var(--border);border-radius:14px;padding:18px}
.invoice-parties{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.invoice-party{border:1px solid #edf0f4;border-radius:10px;padding:12px}
.price-shortcuts{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}
@media(max-width:760px){.invoice-summary-grid,.invoice-parties{grid-template-columns:1fr}}

.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.settings-grid .full{grid-column:1/-1}
textarea.settings-text{width:100%;min-height:120px;border:1px solid #cfd6e0;border-radius:10px;padding:12px;font:inherit;resize:vertical}
@media(max-width:700px){.settings-grid{grid-template-columns:1fr}.settings-grid .full{grid-column:auto}}

.checkout-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.checkout-card{background:#f8fafc;border:1px solid #edf0f4;border-radius:12px;padding:12px}
.checkout-card b{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;margin-bottom:4px}
@media(max-width:760px){.checkout-grid{grid-template-columns:1fr}}

.receipt-box{background:#fff;border:1px solid var(--border);border-radius:14px;padding:18px}
.receipt-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.portal-invoice-card{border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:10px;background:#fff}
.portal-invoice-card h4{margin:0 0 5px}
@media(max-width:700px){.receipt-head{flex-direction:column}}

.bulk-update-box{background:#f8fafc;border:1px solid #e6ebf2;border-radius:12px;padding:14px;margin-top:18px}
.bulk-update-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.bulk-status-note{font-size:12px;color:var(--muted);margin-top:6px}
@media(max-width:700px){.bulk-update-grid{grid-template-columns:1fr}}

.catalog-card{border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:10px;background:#fff}
.catalog-price{font-weight:800}
.catalog-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}
.catalog-pill{display:inline-flex;padding:4px 7px;border-radius:999px;background:#f1f5f9;font-size:11px;margin-right:5px}
.quick-catalog{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}

.driver-card{border:1px solid var(--border);border-radius:14px;padding:14px;background:#fff;margin-bottom:10px}
.driver-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}
.driver-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.driver-detail{background:#f8fafc;border:1px solid #edf0f4;border-radius:10px;padding:10px}
.driver-detail b{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;margin-bottom:3px}
.assignment-row{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid #edf0f4;border-radius:10px;padding:10px;margin-top:8px}
@media(max-width:700px){.driver-grid{grid-template-columns:1fr}}

.driver-login-page{min-height:100vh;background:
radial-gradient(circle at 20% 20%,rgba(255,255,255,.95),rgba(255,255,255,0) 35%),
linear-gradient(180deg,#edf5ff 0%,#f7fbff 45%,#eef6ff 100%);color:#17345d}
.driver-login-header{max-width:980px;margin:0 auto;padding:42px 20px 14px;display:flex;justify-content:space-between;align-items:flex-start}
.driver-brand-mark{display:flex;align-items:center;gap:14px;margin:auto}
.driver-logo-box{width:54px;height:54px;border:3px solid #2f6cdf;border-radius:14px;display:grid;place-items:center;font-weight:900;color:#2f6cdf;background:#fff;box-shadow:0 8px 24px rgba(47,108,223,.08)}
.driver-brand-name{font-size:28px;font-weight:900;letter-spacing:.04em;color:#18345d}
.driver-brand-sub{font-size:18px;color:#2f6cdf;text-align:center;margin-top:2px}
.driver-login-shell{max-width:900px;margin:0 auto;padding:18px 18px 34px}
.driver-auth-card{width:min(620px,100%);margin:18px auto;background:rgba(255,255,255,.96);border:1px solid rgba(214,224,239,.9);border-radius:24px;padding:38px;box-shadow:0 20px 55px rgba(38,78,130,.12)}
.driver-auth-card h1,.driver-auth-card h2{text-align:center;margin:0;color:#17345d}
.driver-lock{width:72px;height:72px;margin:0 auto 18px;border-radius:50%;background:#eef5ff;display:grid;place-items:center;font-size:30px}
.driver-auth-sub{text-align:center;color:#71809a;line-height:1.55;margin:12px auto 28px;max-width:470px}
.driver-auth-card label{display:block;margin:14px 0 7px;font-weight:700;color:#243b63}
.driver-auth-card input{width:100%;border:1px solid #cfd9e8;border-radius:12px;padding:14px 15px;font-size:16px;background:#fff}
.driver-main-btn{width:100%;margin-top:18px;padding:14px 18px;font-size:17px;border-radius:12px}
.driver-divider{display:flex;align-items:center;gap:12px;color:#8794a9;margin:24px 0 18px}
.driver-divider:before,.driver-divider:after{content:"";height:1px;background:#dfe6ef;flex:1}
.driver-register-line{text-align:center;color:#65758d}
.driver-link-btn{border:0;background:transparent;color:#2f6cdf;font:inherit;font-weight:700;cursor:pointer;padding:0}
.driver-login-footer{text-align:center;color:#71809a;padding:6px 20px 30px;line-height:1.7}
.driver-login-footer span{font-size:13px}
.driver-login-page #driverPortal{max-width:1000px;margin:10px auto}
.driver-login-page .public-card{border-radius:18px;box-shadow:0 12px 35px rgba(38,78,130,.08)}
@media(max-width:700px){
 .driver-login-header{padding-top:28px}
 .driver-brand-name{font-size:23px}
 .driver-brand-sub{font-size:16px}
 .driver-auth-card{padding:26px 20px;border-radius:20px}
}

.driver-balance-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:110px;
  min-height:34px;
  padding:7px 12px;
  border-radius:999px;
  text-align:center;
  line-height:1;
  font-weight:800;
  white-space:nowrap;
}
.driver-recipient-name{
  font-size:20px;
  font-weight:900;
  color:#17345d;
  line-height:1.2;
}
.driver-invoice-line{
  font-size:12px;
  color:var(--muted);
  margin-top:4px;
}

.pod-badge{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:5px 9px;border-radius:999px;background:#eef8f1;color:#247443;font-size:11px;font-weight:800}
.pod-card{border:1px solid var(--border);border-radius:12px;padding:12px;margin-top:10px;background:#fff}
.pod-preview{max-width:100%;max-height:420px;border-radius:10px;border:1px solid #e5e7eb;margin-top:10px}

.access-badge{display:inline-flex;align-items:center;justify-content:center;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800}
.access-active{background:#ecfdf3;color:#027a48}
.access-revoked{background:#fff1f0;color:#b42318}
.access-reason{font-size:12px;color:var(--muted);margin-top:6px}
.disabled-control{opacity:.55;pointer-events:none}

.customer-login-page{min-height:100vh;background:
radial-gradient(circle at 20% 20%,rgba(255,255,255,.95),rgba(255,255,255,0) 35%),
linear-gradient(180deg,#edf5ff 0%,#f7fbff 45%,#eef6ff 100%);color:#17345d}
.customer-login-header{max-width:980px;margin:0 auto;padding:36px 20px 12px;display:flex;justify-content:space-between;align-items:flex-start}
.customer-brand-mark{display:flex;align-items:center;gap:14px;margin:auto}
.customer-logo-box{width:54px;height:54px;border:3px solid #2f6cdf;border-radius:14px;display:grid;place-items:center;font-weight:900;color:#2f6cdf;background:#fff;box-shadow:0 8px 24px rgba(47,108,223,.08)}
.customer-brand-name{font-size:28px;font-weight:900;letter-spacing:.04em;color:#18345d}
.customer-brand-sub{font-size:18px;color:#2f6cdf;text-align:center;margin-top:2px}
.customer-login-shell{max-width:900px;margin:0 auto;padding:18px 18px 34px}
.customer-auth-card{width:min(620px,100%);margin:18px auto;background:rgba(255,255,255,.96);border:1px solid rgba(214,224,239,.9);border-radius:24px;padding:38px;box-shadow:0 20px 55px rgba(38,78,130,.12)}
.customer-auth-card h1,.customer-auth-card h2{text-align:center;margin:0;color:#17345d}
.customer-auth-icon{width:72px;height:72px;margin:0 auto 18px;border-radius:50%;background:#eef5ff;display:grid;place-items:center;font-size:30px}
.customer-auth-sub{text-align:center;color:#71809a;line-height:1.55;margin:12px auto 28px;max-width:470px}
.customer-auth-card label{display:block;margin:14px 0 7px;font-weight:700;color:#243b63}
.customer-auth-card input{width:100%;border:1px solid #cfd9e8;border-radius:12px;padding:14px 15px;font-size:16px;background:#fff}
.customer-main-btn{width:100%;margin-top:18px;padding:14px 18px;font-size:17px;border-radius:12px}
.customer-divider{display:flex;align-items:center;gap:12px;color:#8794a9;margin:24px 0 18px}
.customer-divider:before,.customer-divider:after{content:"";height:1px;background:#dfe6ef;flex:1}
.customer-register-line{text-align:center;color:#65758d}
.customer-link-btn{border:0;background:transparent;color:#2f6cdf;font:inherit;font-weight:700;cursor:pointer;padding:0}
.customer-login-footer{text-align:center;color:#71809a;padding:6px 20px 30px;line-height:1.7}
.lang-toggle{display:inline-flex;background:#fff;border:1px solid #d7e1ef;border-radius:999px;padding:4px;box-shadow:0 5px 15px rgba(38,78,130,.06)}
.lang-toggle button{border:0;background:transparent;border-radius:999px;padding:7px 11px;font-weight:800;color:#6c7c93;cursor:pointer}
.lang-toggle button.active{background:#eaf2ff;color:#245eb8}
@media(max-width:700px){.customer-auth-card{padding:26px 20px}.customer-brand-name{font-size:23px}}

.track-page{min-height:100vh;background:
radial-gradient(circle at 20% 18%,rgba(255,255,255,.95),rgba(255,255,255,0) 36%),
linear-gradient(180deg,#edf5ff 0%,#f7fbff 48%,#eef6ff 100%);color:#17345d}
.track-header{max-width:980px;margin:0 auto;padding:34px 20px 14px;display:flex;justify-content:space-between;align-items:center}
.track-brand{display:flex;align-items:center;gap:12px}
.track-logo{width:52px;height:52px;border:3px solid #2f6cdf;border-radius:14px;display:grid;place-items:center;font-weight:900;color:#2f6cdf;background:#fff}
.track-title{font-size:25px;font-weight:900;letter-spacing:.04em}
.track-subbrand{font-size:15px;color:#2f6cdf}
.track-shell{max-width:860px;margin:0 auto;padding:18px}
.track-card{background:rgba(255,255,255,.97);border:1px solid #dbe5f1;border-radius:24px;padding:30px;box-shadow:0 20px 55px rgba(38,78,130,.12)}
.track-card h1{text-align:center;margin:0;color:#17345d}
.track-intro{text-align:center;color:#71809a;margin:10px auto 24px;max-width:560px}
.track-search{display:flex;gap:9px;flex-wrap:wrap}
.track-search input{flex:1;min-width:220px;border:1px solid #cfd9e8;border-radius:12px;padding:14px 15px;font-size:16px}
.track-search button{min-width:120px}
.track-current{background:#f5f9ff;border:1px solid #dce8f7;border-radius:16px;padding:16px;margin-top:16px}
.track-current h3{margin:0 0 10px}
.timeline-clean{display:grid;gap:14px;margin-top:12px}
.timeline-clean .event{border-left:3px solid #7ba8eb;padding-left:14px}
.timeline-clean .event h4{margin:0 0 4px;color:#17345d}
.track-footer{text-align:center;color:#71809a;padding:18px 20px 30px}
@media(max-width:700px){.track-header{align-items:flex-start}.track-card{padding:22px 18px}.track-title{font-size:21px}.track-search button{width:100%}}

.admin-shell{background:#f6f8fb}
.sidebar{background:linear-gradient(180deg,#10294a 0%,#17345d 100%);color:#fff}
.sidebar .brand{color:#fff}
.sidebar .brand span{color:#8fb8ff}
.nav-btn{border-radius:10px;margin-bottom:4px}
.nav-btn.active{background:rgba(255,255,255,.14);color:#fff}
.nav-btn:hover{background:rgba(255,255,255,.08)}
.topbar{backdrop-filter:saturate(140%) blur(8px)}
.dashboard-hero{background:linear-gradient(135deg,#17345d,#2f6cdf);color:#fff;border-radius:20px;padding:22px;box-shadow:0 16px 40px rgba(34,76,130,.14);margin-bottom:18px}
.dashboard-hero h2{margin:0 0 6px;color:#fff}
.dashboard-hero .subtitle{color:#dbe8ff}
.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}
.kpi-card{background:#fff;border:1px solid #e7ebf0;border-radius:16px;padding:16px;box-shadow:0 8px 24px rgba(26,52,93,.05)}
.kpi-card .kpi-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#7d8aa0;font-weight:800}
.kpi-card .kpi-value{font-size:28px;font-weight:900;color:#17345d;margin-top:5px}
.kpi-card .kpi-sub{font-size:12px;color:#8b97aa;margin-top:3px}
.dashboard-two-col{display:grid;grid-template-columns:1.15fr .85fr;gap:14px}
.quick-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.quick-action{border:1px solid #e6ebf2;border-radius:14px;padding:14px;background:#fff;cursor:pointer}
.quick-action:hover{box-shadow:0 8px 20px rgba(26,52,93,.08)}
@media(max-width:1000px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.dashboard-two-col{grid-template-columns:1fr}}
@media(max-width:620px){.kpi-grid{grid-template-columns:1fr}.quick-action-grid{grid-template-columns:1fr}}

/* V20.1 Admin sidebar contrast refinement */
.admin-shell .sidebar{
  background:#edf4ff;
  color:#17345d;
  border-right:1px solid #d7e3f2;
}
.admin-shell .sidebar .brand{
  color:#17345d;
}
.admin-shell .sidebar .brand span{
  color:#2f6cdf;
}
.admin-shell .sidebar .nav-btn{
  color:#29415f;
  background:transparent;
  font-weight:700;
  border:1px solid transparent;
}
.admin-shell .sidebar .nav-btn:hover{
  color:#17345d;
  background:#dfeaff;
  border-color:#d2e0f5;
}
.admin-shell .sidebar .nav-btn.active{
  color:#fff;
  background:#2f6cdf;
  border-color:#2f6cdf;
  box-shadow:0 5px 14px rgba(47,108,223,.16);
}

.report-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.report-card{background:#fff;border:1px solid #e6ebf2;border-radius:14px;padding:14px}
.report-card b{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;margin-bottom:5px}
.report-card span{font-size:24px;font-weight:900;color:#17345d}
.export-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
@media(max-width:900px){.report-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.report-grid{grid-template-columns:1fr}}

.manifest-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}
.manifest-stat{background:#f8fafc;border:1px solid #e6ebf2;border-radius:12px;padding:12px}
.manifest-stat b{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;margin-bottom:4px}
.manifest-stat span{font-size:20px;font-weight:900;color:#17345d}
.manifest-table-wrap{max-height:520px;overflow:auto;border:1px solid #e6ebf2;border-radius:12px}
@media(max-width:760px){.manifest-summary{grid-template-columns:repeat(2,1fr)}}

.driver-collection-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}
.driver-collection-card{background:#fff;border:1px solid #e6ebf2;border-radius:14px;padding:14px}
.driver-collection-card b{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;margin-bottom:5px}
.driver-collection-card span{font-size:24px;font-weight:900;color:#17345d}
.driver-history-table{max-height:420px;overflow:auto;border:1px solid #e6ebf2;border-radius:12px}
@media(max-width:800px){.driver-collection-grid{grid-template-columns:repeat(2,1fr)}}

.collection-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}
.collection-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}
.collection-kpi{background:#fff;border:1px solid #e6ebf2;border-radius:14px;padding:14px}
.collection-kpi b{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;margin-bottom:5px}
.collection-kpi span{font-size:24px;font-weight:900;color:#17345d}
@media(max-width:800px){.collection-filter-grid,.collection-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.collection-filter-grid,.collection-kpis{grid-template-columns:1fr}}

.wa-queue-progressbar{height:8px;background:#edf1f5;border-radius:999px;overflow:hidden;margin-bottom:16px}
.wa-queue-progressbar>div{height:100%;width:0;background:#24364b;transition:width .2s ease}
.wa-queue-current{border:1px solid #e2e8ef;border-radius:14px;padding:14px;background:#fafbfc}
.wa-queue-current h4{margin:0 0 6px;color:#24364b}
.wa-queue-message-box{margin-top:14px}
.wa-queue-actions{flex-wrap:wrap}
.wa-queue-history{margin-top:16px;display:grid;gap:7px}
.wa-queue-history-row{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid #edf1f5;padding-top:7px;font-size:13px}
.wa-queue-status-sent{color:#2f6f4e;font-weight:700}
.wa-queue-status-skipped{color:#7a5d2b;font-weight:700}
@media(max-width:650px){
  .wa-queue-actions .btn{flex:1 1 100%}
}

.mobile-invoice-launch{font-weight:700}
.mobile-success-mark{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;margin:0 auto;font-size:30px;font-weight:800;background:#eef6f1;color:#315f46}
.mobile-done-card{width:min(520px,100%)}
.mobile-done-actions{display:grid;gap:9px;margin-top:18px}
.mobile-done-actions .btn{min-height:48px}

@media(max-width:820px){
  body.mobile-invoice-mode{overflow:hidden}
  body.mobile-invoice-mode #shipmentModal{padding:0;align-items:stretch}
  body.mobile-invoice-mode #shipmentModal .modal-card{
    width:100%;max-width:none;height:100dvh;max-height:100dvh;border-radius:0;margin:0;padding:16px;
    overflow:auto;padding-bottom:calc(110px + env(safe-area-inset-bottom));
  }
  body.mobile-invoice-mode #shipmentModal .modal-head{
    position:sticky;top:-16px;z-index:20;background:#fff;padding:14px 0 10px;margin-bottom:8px;border-bottom:1px solid #edf0f3
  }
  body.mobile-invoice-mode .invoice-steps{
    position:sticky;top:58px;z-index:19;background:#fff;overflow-x:auto;display:flex;flex-wrap:nowrap;padding:8px 0;margin-bottom:12px
  }
  body.mobile-invoice-mode .invoice-step{white-space:nowrap;flex:0 0 auto}
  body.mobile-invoice-mode #shipmentForm .form-grid,
  body.mobile-invoice-mode #shipmentForm .two-col,
  body.mobile-invoice-mode #shipmentForm .checkout-grid,
  body.mobile-invoice-mode #shipmentForm .invoice-summary-grid{grid-template-columns:1fr}
  body.mobile-invoice-mode #shipmentForm input,
  body.mobile-invoice-mode #shipmentForm select,
  body.mobile-invoice-mode #shipmentForm textarea{font-size:16px;min-height:48px}
  body.mobile-invoice-mode #shipmentForm label{font-size:13px;font-weight:700}
  body.mobile-invoice-mode #shipmentForm .item-line{
    grid-template-columns:1fr 1fr;gap:8px;border:1px solid #e4e9ef;border-radius:14px;padding:12px;margin-bottom:10px
  }
  body.mobile-invoice-mode #shipmentForm .item-line .wide{grid-column:1/-1}
  body.mobile-invoice-mode #shipmentForm .item-line>div:last-child{display:flex;align-items:end}
  body.mobile-invoice-mode #shipmentForm .item-line .remove-item{width:100%;min-height:48px}
  body.mobile-invoice-mode #quickCatalogButtons{display:flex;overflow-x:auto;flex-wrap:nowrap;padding-bottom:7px}
  body.mobile-invoice-mode #quickCatalogButtons .btn{white-space:nowrap;min-height:44px}
  body.mobile-invoice-mode #shipmentForm>.section-actions:last-of-type{
    position:sticky;bottom:0;z-index:20;background:#fff;padding:12px 0 calc(8px + env(safe-area-inset-bottom));border-top:1px solid #e8edf2
  }
  body.mobile-invoice-mode #shipmentForm>.section-actions:last-of-type .btn{flex:1;min-height:50px}
}

.mobile-nav-toggle,.mobile-nav-backdrop{display:none}
@media(max-width:1024px){
  .main,.main-content,.content,.admin-content{padding-left:18px!important;padding-right:18px!important}
  .title-row{flex-wrap:wrap!important;gap:12px!important}
  .modal-card{width:min(94vw,900px)!important;max-height:92vh!important;overflow:auto!important}
}
@media(max-width:820px){
  html,body{overflow-x:hidden!important}
  .mobile-nav-toggle{display:inline-flex!important;align-items:center;justify-content:center;width:42px;height:42px;min-width:42px;border:1px solid #d8e0e8;border-radius:10px;background:#fff;color:#24364b;font-size:22px;z-index:1002}
  .mobile-nav-backdrop{display:block;position:fixed;inset:0;background:rgba(19,29,41,.38);opacity:0;pointer-events:none;transition:.18s;z-index:998}
  body.mobile-nav-open .mobile-nav-backdrop{opacity:1;pointer-events:auto}
  .sidebar,.admin-sidebar,nav.sidebar{position:fixed!important;top:0!important;left:0!important;bottom:0!important;width:min(84vw,320px)!important;height:100dvh!important;transform:translateX(-105%);transition:transform .2s ease;z-index:1000!important;overflow-y:auto!important;box-shadow:0 18px 50px rgba(31,41,55,.22)}
  body.mobile-nav-open .sidebar,body.mobile-nav-open .admin-sidebar,body.mobile-nav-open nav.sidebar{transform:translateX(0)}
  .main,.main-content,.content,.admin-content,.page-shell{margin-left:0!important;width:100%!important;max-width:100%!important;padding:14px!important}
  .topbar,.admin-topbar{position:sticky!important;top:0!important;z-index:100!important;display:flex!important;align-items:center!important;min-height:58px!important;padding:8px 12px!important;background:#fff!important;border-bottom:1px solid #e4e9ef!important}
  .title-row{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important}
  .title-row h2{font-size:22px!important}
  .section-actions,.customer-actions,.catalog-actions,.pill-row{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
  .dashboard-grid,.stats-grid,.summary-grid,.driver-grid,.driver-collection-grid,.form-grid,.container-grid,.settings-grid,.two-col,.checkout-grid,.invoice-summary-grid,.bulk-update-grid,.track-admin-grid{grid-template-columns:1fr!important}
  .form-grid .full,.container-grid .full,.settings-grid .full,.bulk-update-grid .full{grid-column:1!important}
  input,select,textarea{font-size:16px!important;min-height:44px}
  .btn{min-height:42px}
  .item-line{grid-template-columns:1fr 1fr!important;gap:8px!important;border:1px solid #e4e9ef!important;border-radius:12px!important;padding:10px!important;margin-bottom:10px!important}
  .item-line .wide{grid-column:1/-1!important}
  .table-wrap,.manifest-table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch}
  .table-wrap table,.manifest-table-wrap table{min-width:680px}
  .list-row{padding:13px!important;margin-bottom:8px!important;background:#fff;border:1px solid #e4e9ef;border-radius:14px!important}
  #waContainerFilter,#waStatusFilter,#waSearch{width:100%!important;flex:1 1 100%!important}
  #waSelectAll,#waClearAll{flex:1 1 calc(50% - 4px)!important}
  .track-admin-grid{display:block!important}
  .track-admin-grid>.panel{margin-bottom:12px!important}
  .modal{padding:0!important;align-items:stretch!important}
  .modal-card{width:100%!important;max-width:none!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important;margin:0!important;overflow:auto!important;padding:14px!important}
  .modal-head{position:sticky!important;top:-14px!important;z-index:20!important;background:#fff!important;padding:12px 0 10px!important;border-bottom:1px solid #edf1f5!important}
  .invoice-parties{grid-template-columns:1fr!important}
  .assign-list{max-height:none!important}
}
@media(max-width:480px){
  .main,.main-content,.content,.admin-content,.page-shell{padding:10px!important}
  .panel{padding:12px!important}
  .title-row h2{font-size:20px!important}
  .section-actions .btn,.customer-actions .btn{flex:1 1 100%!important}
  .item-line{grid-template-columns:1fr!important}
  .item-line .wide{grid-column:1!important}
}

/* V23.8 Quick Invoice nav refinement */
.quick-invoice-nav{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  margin:3px 8px 8px!important;
  padding:10px 12px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:11px!important;
  background:rgba(255,255,255,.06)!important;
  font-weight:700!important;
}
.quick-invoice-nav:hover{
  background:rgba(255,255,255,.10)!important;
}
.quick-invoice-icon{
  display:inline-grid;
  place-items:center;
  width:24px;
  height:24px;
  min-width:24px;
  border-radius:7px;
  background:rgba(255,255,255,.12);
  font-size:17px;
  line-height:1;
}
@media(max-width:820px){
  .quick-invoice-nav{
    margin:4px 8px 10px!important;
    min-height:44px!important;
  }
}

/* V23.8.1 - Make Quick Invoice hover behave like standard nav buttons */
.quick-invoice-nav:hover,
.quick-invoice-nav:focus-visible{
  background:rgba(255,255,255,.14)!important;
  border-color:rgba(255,255,255,.22)!important;
  transform:translateX(2px);
}
.quick-invoice-nav{
  transition:background .16s ease,border-color .16s ease,transform .16s ease!important;
}
.quick-invoice-nav:hover .quick-invoice-icon,
.quick-invoice-nav:focus-visible .quick-invoice-icon{
  background:rgba(255,255,255,.20);
}

/* =========================================================
   V23.12.40 — Admin Shell + Dashboard Modernization
   Visual-only foundation. Existing workflows and data remain intact.
   ========================================================= */
.admin-shell{
  --admin-navy:#102a56;
  --admin-blue:#1265d8;
  --admin-blue-soft:#edf5ff;
  --admin-red:#e53935;
  --admin-green:#18a86b;
  --admin-amber:#e9a21b;
  --admin-purple:#7155d9;
  --admin-surface:#ffffff;
  --admin-bg:#f6f8fc;
  --admin-line:#e6ebf2;
  --admin-shadow:0 8px 26px rgba(16,42,86,.055);
  background:var(--admin-bg);
}
.admin-shell .topbar{
  position:sticky;top:0;z-index:120;
  min-height:72px;height:72px;
  padding:0 24px;
  background:rgba(255,255,255,.96)!important;
  border-bottom:1px solid var(--admin-line)!important;
  box-shadow:0 1px 0 rgba(16,42,86,.02);
  backdrop-filter:blur(10px) saturate(140%);
}
.topbar-left,.topbar-account,.topbar-brand,.account-chip{display:flex;align-items:center}
.topbar-left{gap:12px}.topbar-account{gap:10px}
.topbar-brand{gap:10px}
.topbar-brand-mark,.sidebar-logo-mark{
  display:grid;place-items:center;
  font-weight:900;letter-spacing:-.04em;
  color:#fff;background:linear-gradient(145deg,#0d4f9f,#1875e8);
  box-shadow:0 6px 16px rgba(18,101,216,.18);
}
.topbar-brand-mark{width:36px;height:36px;border-radius:11px;font-size:13px}
.topbar-brand-name{font-size:15px;font-weight:900;color:var(--admin-navy);line-height:1.15}
.topbar-brand-sub{font-size:11px;color:#7b8799;margin-top:2px}
.account-chip{gap:8px;padding:8px 11px;border:1px solid #e5eaf1;border-radius:999px;background:#fafcff;max-width:340px}
.account-chip #accountEmail{font-size:12px;color:#58677d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.account-dot{width:8px;height:8px;border-radius:50%;background:#20b16f;box-shadow:0 0 0 4px rgba(32,177,111,.10)}
.topbar-signout{border:1px solid #e3e8ef;background:#fff!important;color:#29405f!important;min-height:38px}
.topbar-signout:hover{background:#f5f8fc!important}

.admin-shell .layout{grid-template-columns:248px minmax(0,1fr);min-height:calc(100vh - 72px)}
.admin-shell .sidebar{
  display:block!important;
  position:sticky;top:72px;
  height:calc(100vh - 72px);
  overflow-y:auto;
  padding:18px 12px 20px;
  background:#fff!important;color:#33445f!important;
  border-right:1px solid var(--admin-line)!important;
  box-shadow:none;
}
.sidebar-company{display:flex;align-items:center;gap:11px;padding:3px 8px 17px;margin-bottom:6px;border-bottom:1px solid #edf1f5}
.sidebar-logo-mark{width:42px;height:42px;border-radius:12px;font-size:14px;flex:0 0 auto}
.sidebar-company strong{display:block;color:#102a56;font-size:15px;line-height:1.15}.sidebar-company span{display:block;color:#e12f2f;font-size:11px;font-weight:800;margin-top:3px}
.nav-section-label{padding:14px 11px 6px;font-size:10px;line-height:1;text-transform:uppercase;letter-spacing:.105em;color:#9aa5b5;font-weight:900}
.admin-shell .nav-btn{
  display:flex;align-items:center;gap:10px;
  width:100%;min-height:42px;
  padding:9px 10px;margin:2px 0;
  border-radius:10px;
  color:#4b5e78!important;background:transparent!important;
  font-size:13px;font-weight:720;
  transition:background .15s ease,color .15s ease,transform .15s ease;
}
.admin-shell .nav-btn:hover{background:#f3f7fc!important;color:#173d72!important;transform:translateX(1px)}
.admin-shell .nav-btn.active{background:#eaf3ff!important;color:#0b5fc4!important;box-shadow:inset 3px 0 0 #1265d8}
.nav-glyph{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:#f2f5f9;color:#5f728c;font-size:15px;font-weight:900;flex:0 0 auto}
.admin-shell .nav-btn.active .nav-glyph{background:#dcecff;color:#0b62ca}
.admin-shell .quick-invoice-nav{margin:4px 0 2px!important;color:#fff!important;background:linear-gradient(135deg,#e6433f,#d92f2b)!important;box-shadow:0 7px 18px rgba(217,47,43,.16)}
.admin-shell .quick-invoice-nav:hover{background:linear-gradient(135deg,#dc3b37,#c92926)!important;color:#fff!important;transform:none}
.admin-shell .quick-invoice-nav .nav-glyph{background:rgba(255,255,255,.16);color:#fff}
.sidebar-footer{margin:18px 8px 0;padding:14px 12px;border-radius:12px;background:#f5f9ff;border:1px solid #e3edfa}.sidebar-footer strong{display:block;font-size:12px;color:#173d72}.sidebar-footer span{font-size:10px;color:#7a8ba2}

.admin-shell .main{width:100%;max-width:1600px;padding:28px 28px 40px;margin:0 auto}
.admin-shell .panel{border:1px solid var(--admin-line);border-radius:16px;box-shadow:var(--admin-shadow);background:#fff}

.dashboard-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
.dashboard-heading-row h2{font-size:30px;letter-spacing:-.035em;color:#0c2450;line-height:1.1}
.dashboard-heading-row .subtitle{margin:6px 0 0;font-size:13px;color:#738096}
.dashboard-eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:#1265d8;margin-bottom:7px}
.dashboard-heading-meta{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #e5eaf1;border-radius:999px;background:#fff;color:#6b788c;font-size:11px;font-weight:700;box-shadow:0 4px 15px rgba(16,42,86,.035)}
.live-dot{width:7px;height:7px;border-radius:50%;background:#17a96b;box-shadow:0 0 0 4px rgba(23,169,107,.10)}

.dashboard-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 16px}
.admin-shell .kpi-card{position:relative;overflow:hidden;border:1px solid #e7ecf3;border-radius:16px;padding:17px 17px 16px;box-shadow:0 7px 22px rgba(16,42,86,.05);min-height:132px}
.kpi-card:after{content:"";position:absolute;width:82px;height:82px;border-radius:50%;right:-27px;bottom:-37px;background:rgba(18,101,216,.06)}
.kpi-card-top{display:flex;align-items:center;gap:9px;position:relative;z-index:1}.kpi-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-size:17px;font-weight:900;background:#edf5ff;color:#1265d8}.kpi-card .kpi-label{font-size:11px;text-transform:none;letter-spacing:0;color:#5d6c81;font-weight:800}.kpi-card .kpi-value{position:relative;z-index:1;font-size:27px;letter-spacing:-.025em;color:#102a56;margin-top:12px}.kpi-card .kpi-sub{position:relative;z-index:1;font-size:11px;color:#8a96a7;margin-top:3px}
.kpi-danger .kpi-icon{background:#fff0f0;color:#df3532}.kpi-danger:after{background:rgba(223,53,50,.055)}
.kpi-info .kpi-icon{background:#eef5ff;color:#1265d8}
.kpi-success .kpi-icon{background:#edfbf4;color:#119a5f}.kpi-success:after{background:rgba(17,154,95,.055)}

.dashboard-top-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.85fr);gap:14px;margin-bottom:14px}
.dashboard-main-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.85fr);gap:14px;align-items:start}
.dashboard-side-stack{display:grid;gap:14px}
.dashboard-panel{padding:17px!important}
.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.panel-heading h3{margin:0;color:#102a56;font-size:16px;letter-spacing:-.015em}.panel-subtitle{font-size:11px;color:#8793a5;margin-top:4px}
.panel-link{border:0;background:transparent;color:#1265d8;font-size:11px;font-weight:800;cursor:pointer;padding:4px 0;white-space:nowrap}.panel-link:hover{text-decoration:underline}

.status-snapshot-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.status-snapshot{display:flex;align-items:center;gap:9px;min-height:70px;padding:11px;border-radius:12px;border:1px solid #e9edf3;background:#f8fafc}.status-snapshot .status-icon{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;font-weight:900;flex:0 0 auto}.status-snapshot div{min-width:0}.status-snapshot span:not(.status-icon){display:block;font-size:10px;font-weight:800;line-height:1.15;color:#53647a;white-space:normal}.status-snapshot strong{display:block;font-size:19px;color:#102a56;margin-top:3px}
.status-received{background:#f5f7fa}.status-received .status-icon{background:#e7edf4;color:#667b96}
.status-transit{background:#edf7ff;border-color:#dfedfb}.status-transit .status-icon{background:#d8edff;color:#1372d7}
.status-customs{background:#fff8e9;border-color:#f5e8c5}.status-customs .status-icon{background:#ffedbd;color:#c57b00}
.status-delivery{background:#f5f0ff;border-color:#eae0fd}.status-delivery .status-icon{background:#e8ddff;color:#7049c9}
.status-delivered{background:#edf9f3;border-color:#dcefe5}.status-delivered .status-icon{background:#d9f2e5;color:#15945c}

.modern-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.modern-quick-actions .quick-action{display:flex;align-items:center;gap:10px;text-align:left;width:100%;min-height:72px;padding:11px 12px;border:1px solid #dfe7f0;border-radius:12px;background:#fff;color:#17345d;box-shadow:none;cursor:pointer}.modern-quick-actions .quick-action:hover{border-color:#bfd2ea;background:#f8fbff;transform:translateY(-1px)}
.quick-action-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#edf4fd;color:#1265d8;font-size:18px;font-weight:900;flex:0 0 auto}.modern-quick-actions b{display:block;font-size:12px}.modern-quick-actions small{display:block;font-size:9px;font-weight:600;color:#7b889b;margin-top:3px;line-height:1.25}
.modern-quick-actions .quick-action-primary{border-color:#df3c38;background:linear-gradient(135deg,#e43d39,#cf2c29);color:#fff}.modern-quick-actions .quick-action-primary .quick-action-icon{background:rgba(255,255,255,.16);color:#fff}.modern-quick-actions .quick-action-primary small{color:#ffe5e4}.modern-quick-actions .quick-action-primary:hover{background:linear-gradient(135deg,#da3733,#c72724);border-color:#c72724}
.modern-quick-actions .quick-action-blue{border-color:#1463c5;background:linear-gradient(135deg,#155da9,#0d4d93);color:#fff}.modern-quick-actions .quick-action-blue .quick-action-icon{background:rgba(255,255,255,.15);color:#fff}.modern-quick-actions .quick-action-blue small{color:#dcecff}.modern-quick-actions .quick-action-blue:hover{background:linear-gradient(135deg,#12569e,#0b4788);border-color:#0b4788}

.dashboard-table-wrap{border:1px solid #edf1f5;border-radius:12px;overflow:auto}.dashboard-table{font-size:12px}.dashboard-table th{padding:9px 10px;background:#f7f9fc;color:#738197;font-size:10px;text-transform:uppercase;letter-spacing:.035em}.dashboard-table td{padding:11px 10px;color:#40516a}.dashboard-table td:first-child strong{color:#0f63c8}.dashboard-table tr:last-child td{border-bottom:0}
.dashboard-status{font-size:10px!important;padding:5px 8px!important;border:1px solid transparent}.status-chip-neutral{background:#f0f3f7!important;color:#607188!important}.status-chip-transit{background:#eaf5ff!important;color:#1268bf!important}.status-chip-customs{background:#fff3cf!important;color:#a76b00!important}.status-chip-delivery{background:#efe8ff!important;color:#6840bd!important}.status-chip-delivered{background:#e3f6ec!important;color:#118353!important}.status-chip-released{background:#e7f7f6!important;color:#087f79!important}

.dashboard-container-progress{display:grid;gap:12px}.dashboard-container-row{padding:0 0 12px;border-bottom:1px solid #edf1f5}.dashboard-container-row:last-child{padding-bottom:0;border-bottom:0}.dashboard-container-head{display:flex;justify-content:space-between;align-items:flex-start;gap:9px}.dashboard-container-head strong{display:block;color:#17345d;font-size:12px}.dashboard-container-head span{display:block;margin-top:2px;color:#8490a2;font-size:9px}.dashboard-container-head small{color:#78869a;font-size:9px;white-space:nowrap}.dashboard-progress-track{height:7px;border-radius:99px;background:#e7ebf1;overflow:hidden;margin:9px 0 7px}.dashboard-progress-track span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#1dac69,#37c47c)}.dashboard-container-meta{display:flex;align-items:center;gap:12px;color:#738197;font-size:9px}.dashboard-container-meta span:last-child{margin-left:auto;color:#17345d;font-weight:900}.dashboard-container-meta b{color:#17345d}
.dashboard-empty{font-size:11px;padding:14px!important}

.payments-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.payment-overview{padding:11px;border:1px solid #e7ecf2;border-radius:11px;background:#f8fafc;min-width:0}.payment-overview span{display:block;color:#7a8798;font-size:9px;font-weight:800}.payment-overview strong{display:block;color:#17345d;font-size:14px;margin-top:4px;overflow-wrap:anywhere}.payment-collected{background:#eefaf4;border-color:#def0e7}.payment-collected strong{color:#0c8b55}.payment-balance{background:#fff2f1;border-color:#f4dfdd}.payment-balance strong{color:#d23430}.payment-paid-count{background:#eef6ff;border-color:#deebfb}.payment-paid-count strong{color:#1265d8}.payment-open-count{background:#f7f3ff;border-color:#ebe3fa}.payment-open-count strong{color:#6840bd}

@media(min-width:821px){
  .admin-shell .layout{grid-template-columns:248px minmax(0,1fr)!important}
  .admin-shell .sidebar{display:block!important}
}
@media(max-width:1180px){
  .dashboard-top-grid,.dashboard-main-grid{grid-template-columns:1fr}
  .dashboard-side-stack{grid-template-columns:repeat(2,minmax(0,1fr))}
  .status-snapshot-grid{grid-template-columns:repeat(5,minmax(120px,1fr));overflow-x:auto;padding-bottom:3px}
}
@media(max-width:900px){
  .dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  .admin-shell .topbar{height:62px;min-height:62px;padding:0 12px!important}
  .admin-shell .layout{grid-template-columns:1fr!important;min-height:calc(100vh - 62px)}
  .admin-shell .sidebar{display:block!important;top:0!important;height:100dvh!important;padding-top:16px!important}
  .admin-shell .main{padding:18px 14px 30px!important}
  .sidebar-company{padding-right:48px}
  .topbar-brand-mark{width:32px;height:32px;border-radius:9px}.topbar-brand-name{font-size:13px}.topbar-brand-sub{font-size:10px}
  .account-chip{max-width:190px;padding:7px 9px}.topbar-signout{padding:8px 10px;font-size:11px}
  .dashboard-heading-row{margin-bottom:14px}.dashboard-heading-row h2{font-size:26px}.dashboard-heading-meta{display:none}
  .dashboard-side-stack{grid-template-columns:1fr}
}
@media(max-width:700px){
  .dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.admin-shell .kpi-card{padding:13px;min-height:118px}.kpi-icon{width:30px;height:30px;font-size:14px}.kpi-card .kpi-label{font-size:10px}.kpi-card .kpi-value{font-size:22px;margin-top:10px}.kpi-card .kpi-sub{font-size:9px}
  .status-snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.status-snapshot{min-height:64px}.status-snapshot:last-child{grid-column:1/-1}
  .modern-quick-actions{grid-template-columns:1fr 1fr}.modern-quick-actions .quick-action{min-height:66px;padding:9px}.modern-quick-actions small{display:none}
  .dashboard-table-wrap{border:0;overflow:visible}.dashboard-table,.dashboard-table tbody,.dashboard-table tr,.dashboard-table td{display:block;width:100%}.dashboard-table thead{display:none}.dashboard-table tr{border:1px solid #e7ecf2;border-radius:12px;padding:8px 11px;margin-bottom:9px;background:#fff}.dashboard-table td{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0!important;border-bottom:1px solid #f0f2f5!important;white-space:normal;text-align:right}.dashboard-table td:last-child{border-bottom:0!important}.dashboard-table td:before{content:attr(data-label);font-size:9px;text-transform:uppercase;letter-spacing:.035em;font-weight:900;color:#8b96a7;text-align:left}.dashboard-table td>*{margin-left:auto}
}
@media(max-width:560px){
  .account-chip{display:none}.topbar-account{margin-left:auto}
  .dashboard-heading-row h2{font-size:24px}.dashboard-heading-row .subtitle{font-size:11px;line-height:1.45}
  .dashboard-panel{padding:14px!important}.panel-heading h3{font-size:15px}
  .modern-quick-actions{grid-template-columns:1fr}.modern-quick-actions small{display:block}
}
@media(max-width:390px){
  .dashboard-kpi-grid{grid-template-columns:1fr 1fr}.kpi-card .kpi-label{line-height:1.15}.kpi-card .kpi-value{font-size:20px}
  .status-snapshot-grid{grid-template-columns:1fr}.status-snapshot:last-child{grid-column:auto}
  .payments-overview-grid{grid-template-columns:1fr 1fr}
}

/* V23.12.40.2 — Dashboard Payments Overview container filter */
.panel-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.dashboard-container-filter{height:34px;max-width:190px;padding:0 30px 0 10px;border:1px solid #dfe6ef;border-radius:9px;background:#fff;color:#17345d;font:inherit;font-size:11px;font-weight:700;outline:none;box-shadow:0 1px 2px rgba(15,43,86,.03)}
.dashboard-container-filter:focus{border-color:#6aa8ef;box-shadow:0 0 0 3px rgba(18,101,216,.10)}
@media(max-width:640px){.panel-heading-actions{width:100%;justify-content:space-between}.dashboard-container-filter{flex:1;max-width:none;min-width:0}.dashboard-side-stack .panel-heading{flex-wrap:wrap}}

/* =========================================================
   V23.12.41 — Modern Customers
   Visual modernization only. Customer/recipient workflows unchanged.
   ========================================================= */
.modern-customers-view{max-width:100%}
.customers-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
.customers-heading-row h2{margin:2px 0 0;font-size:30px;line-height:1.1;letter-spacing:-.035em;color:#0c2450}
.customers-heading-row .subtitle{margin:6px 0 0;font-size:13px;color:#738096}
.customers-add-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:10px 15px;border-radius:11px;box-shadow:0 6px 16px rgba(18,101,216,.14)}
.customers-panel{padding:18px!important}
.customers-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.customer-search-wrap{position:relative;display:flex;align-items:center;flex:1;min-width:0;margin:0}
.customer-search-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);z-index:1;color:#74849a;font-size:19px;line-height:1;pointer-events:none}
.customer-search-wrap .search{width:100%;max-width:none;padding-left:40px!important;min-height:44px;border:1px solid #dfe6ef;border-radius:11px;background:#fbfcfe;box-shadow:inset 0 1px 2px rgba(16,42,86,.02);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.customer-search-wrap .search:focus{background:#fff;border-color:#70a8ea;box-shadow:0 0 0 3px rgba(18,101,216,.09);outline:none}
.customer-count-pill{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 11px;border-radius:999px;background:#edf5ff;color:#1761b4;border:1px solid #dceafe;font-size:10px;font-weight:900;white-space:nowrap}
.customer-directory-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px!important}
.customer-card-modern{display:flex!important;flex-direction:column!important;justify-content:space-between!important;gap:15px!important;min-width:0;padding:16px!important;border:1px solid #e4eaf1!important;border-radius:15px!important;background:#fff!important;box-shadow:0 4px 16px rgba(16,42,86,.035);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.customer-card-modern:hover{border-color:#cfdae7!important;box-shadow:0 8px 22px rgba(16,42,86,.07);transform:translateY(-1px)}
.customer-card-content{display:flex;align-items:flex-start;gap:12px;min-width:0}
.customer-avatar{display:grid;place-items:center;width:44px;height:44px;min-width:44px;border-radius:13px;background:linear-gradient(145deg,#eaf3ff,#dcecff);color:#0d5db7;border:1px solid #d4e6fb;font-size:13px;font-weight:900;letter-spacing:.025em}
.customer-card-main{flex:1;min-width:0}
.customer-card-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.customer-card-title{min-width:0}
.customer-card-modern h4{margin:0;color:#132e56;font-size:15px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.customer-record-label{display:inline-flex;align-items:center;gap:5px;margin-top:5px;color:#8793a5;font-size:9px;font-weight:750}
.customer-record-label i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#20b16f;box-shadow:0 0 0 3px rgba(32,177,111,.09)}
.customer-id-chip{display:inline-flex;align-items:center;max-width:150px;padding:5px 7px;border-radius:8px;background:#f4f7fb;color:#586c86;border:1px solid #e7ecf2;font-size:9px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.customer-id-missing{background:#fafbfc;color:#9aa5b4}
.customer-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px;margin-top:13px}
.customer-detail{display:flex;align-items:flex-start;gap:7px;min-width:0}
.customer-detail-wide{grid-column:1/-1}
.customer-detail-icon{display:grid;place-items:center;width:22px;height:22px;min-width:22px;border-radius:7px;background:#f3f7fc;color:#5f7592;font-size:11px}
.customer-detail div{min-width:0}
.customer-detail small{display:block;color:#97a1b0;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.035em;line-height:1.2}
.customer-detail strong{display:block;margin-top:2px;color:#4b5f79;font-size:10px;font-weight:750;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.customer-card-actions{display:grid!important;grid-template-columns:1.2fr 1fr .75fr;gap:7px!important;margin-top:auto;padding-top:12px;border-top:1px solid #edf1f5}
.customer-card-actions .btn{width:100%;min-height:36px;padding:7px 8px;border-radius:9px;font-size:10px;font-weight:800}
.customer-card-actions .customer-view-btn{background:#edf5ff!important;color:#0f62bd!important;border-color:#d7e8fb!important}
.customer-card-actions .customer-view-btn:hover{background:#e3f0ff!important;border-color:#c4ddf7!important}
.customer-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:210px;padding:28px!important;text-align:center;color:#74849a;background:#fbfcfe;border:1px dashed #dbe3ed;border-radius:14px}
.customer-empty-state .customer-empty-icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:10px;border-radius:14px;background:#edf5ff;color:#1768bd;font-size:22px;font-weight:900}
.customer-empty-state strong{display:block;color:#29405f;font-size:13px}
.customer-empty-state span{display:block;margin-top:4px;font-size:10px;color:#8d98a8}

/* Customer-related modals: same workflows, cleaner visual hierarchy. */
.customer-related-modal{background:rgba(15,30,50,.46)}
.customer-related-modal-card{width:min(760px,94vw);padding:0!important;border:1px solid #e1e7ee!important;border-radius:17px!important;overflow:auto!important;box-shadow:0 24px 70px rgba(15,30,50,.22)!important}
.customer-related-modal-card>.modal-head{position:sticky;top:0;z-index:15;margin:0!important;padding:17px 19px!important;background:rgba(255,255,255,.97)!important;border-bottom:1px solid #e8edf3!important;backdrop-filter:blur(8px)}
.customer-related-modal-card>.modal-head h3{color:#132e56;font-size:18px;letter-spacing:-.015em}
.customer-related-modal-card>.modal-head .btn{min-height:36px;padding:7px 11px;border-radius:9px;font-size:10px}
.customer-related-modal-card>form,.customer-related-modal-card>#profileDetails,.customer-related-modal-card>#recipientList{margin-left:19px;margin-right:19px}
.customer-related-modal-card>form{padding:18px 0 20px}
.customer-profile-modal-card>#profileDetails{margin-top:18px}
.customer-profile-modal-card>h3,.customer-profile-modal-card>.table-wrap,.customer-profile-modal-card>#profileNoShipments{margin-left:19px;margin-right:19px}
.customer-profile-modal-card>h3{color:#17345d;font-size:14px}
.customer-profile-modal-card>.table-wrap{margin-bottom:20px;border:1px solid #e8edf3;border-radius:12px;overflow:auto}
.customer-profile-modal-card>.table-wrap table{font-size:11px}
.customer-profile-modal-card>.table-wrap th{background:#f7f9fc;color:#77859a;font-size:9px;text-transform:uppercase;letter-spacing:.03em}
.customer-profile-modal-card>.table-wrap td{color:#485b74}
.customer-profile-modal-card #profileDetails .profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0 0 18px}
.customer-profile-modal-card .profile-item{padding:11px 12px;border:1px solid #e8edf3;border-radius:11px;background:#f9fbfd;color:#42556f;font-size:11px}
.customer-profile-modal-card .profile-item b{color:#8a96a7;font-size:8px;letter-spacing:.04em;margin-bottom:4px}
#recipientsModal .customer-related-modal-card>#recipientList{padding-top:10px}
#recipientsModal .customer-related-modal-card>h3{margin:17px 19px 0!important;color:#17345d;font-size:14px}
#recipientsModal .recipient-card{padding:12px 13px;border:1px solid #e4eaf1;border-radius:12px;background:#fafcff;box-shadow:none}
#recipientsModal .recipient-card>b{color:#17345d;font-size:12px}
#recipientsModal .recipient-card .muted{margin-top:4px;font-size:10px;line-height:1.45}
#recipientsModal .recipient-card .customer-actions{display:flex!important;border-top:0;padding-top:0;margin-top:8px!important}
#recipientsModal .recipient-card .customer-actions .btn{width:auto;min-height:34px;font-size:10px}

@media(max-width:1180px){
  .customer-directory-grid{grid-template-columns:1fr}
}
@media(max-width:820px){
  .customers-heading-row{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:14px}
  .customers-heading-row h2{font-size:26px}
  .customers-add-btn{width:100%;min-height:44px}
  .customers-panel{padding:14px!important}
  .customer-related-modal-card{width:100%!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important}
  .customer-related-modal-card>.modal-head{top:0!important;padding:13px 14px!important}
  .customer-related-modal-card>form,.customer-related-modal-card>#profileDetails,.customer-related-modal-card>#recipientList,.customer-profile-modal-card>h3,.customer-profile-modal-card>.table-wrap,.customer-profile-modal-card>#profileNoShipments{margin-left:14px;margin-right:14px}
  #recipientsModal .customer-related-modal-card>h3{margin-left:14px!important;margin-right:14px!important}
}
@media(max-width:640px){
  .customers-toolbar{flex-direction:column;align-items:stretch;gap:8px}
  .customer-count-pill{align-self:flex-start}
  .customer-card-modern{padding:14px!important}
  .customer-card-content{gap:10px}
  .customer-avatar{width:40px;height:40px;min-width:40px;border-radius:11px}
  .customer-details-grid{grid-template-columns:1fr;gap:8px;margin-top:11px}
  .customer-detail-wide{grid-column:auto}
  .customer-card-actions{grid-template-columns:1fr 1fr 1fr!important}
  .customer-card-actions .btn{min-height:40px;font-size:10px;padding:7px 5px}
  .customer-profile-modal-card #profileDetails .profile-grid{grid-template-columns:1fr 1fr}
  .customer-profile-modal-card>.table-wrap{border:0;overflow:visible}
  .customer-profile-modal-card>.table-wrap table,.customer-profile-modal-card>.table-wrap tbody,.customer-profile-modal-card>.table-wrap tr,.customer-profile-modal-card>.table-wrap td{display:block;width:100%}
  .customer-profile-modal-card>.table-wrap thead{display:none}
  .customer-profile-modal-card>.table-wrap tr{margin-bottom:9px;padding:7px 10px;border:1px solid #e7ecf2;border-radius:11px;background:#fff}
  .customer-profile-modal-card>.table-wrap td{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0!important;border-bottom:1px solid #eff2f6!important;text-align:right;white-space:normal}
  .customer-profile-modal-card>.table-wrap td:last-child{border-bottom:0!important}
  .customer-profile-modal-card>.table-wrap td:before{content:attr(data-label);font-size:8px;text-transform:uppercase;letter-spacing:.035em;font-weight:900;color:#8b96a7;text-align:left}
  .customer-profile-modal-card>.table-wrap td>*{margin-left:auto}
}
@media(max-width:430px){
  .customers-heading-row h2{font-size:24px}
  .customer-card-title-row{display:block}
  .customer-id-chip{margin-top:7px;max-width:100%}
  .customer-card-actions{grid-template-columns:1fr 1fr!important}
  .customer-card-actions .customer-view-btn{grid-column:1/-1}
  .customer-profile-modal-card #profileDetails .profile-grid{grid-template-columns:1fr}
}

/* =========================================================
   V23.12.41.1 — Customer modal layering fix
   Keep Customer / Recipients / Profile full-screen modals above
   the sticky Admin header on tablet and mobile.
   ========================================================= */
.customer-related-modal{
  z-index:1300!important;
}

/* =========================================================
   V23.12.42 — Modern Invoices / Shipments
   Visual modernization only. Existing shipment workflows unchanged.
   ========================================================= */
.shipments-heading-row{align-items:flex-end;margin-bottom:18px}
.shipments-heading-row h2{font-size:30px;letter-spacing:-.035em;color:#0c2450;line-height:1.1}
.shipments-heading-row .subtitle{margin-top:6px;font-size:13px;color:#738096}
.shipments-new-btn{min-height:42px;padding:9px 15px;border-radius:10px;font-size:11px;font-weight:850;box-shadow:0 6px 16px rgba(18,101,216,.12)}
.shipments-panel{padding:17px!important}
.shipments-toolbar{display:flex!important;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px!important}
.shipments-search-wrap{position:relative;flex:1;min-width:0;max-width:620px}
.shipments-search-wrap .search{width:100%;height:42px;padding-left:39px!important;border:1px solid #dfe6ef!important;border-radius:11px!important;background:#fbfcfe!important;font-size:12px!important;box-shadow:inset 0 1px 1px rgba(15,43,86,.015)}
.shipments-search-wrap .search:focus{background:#fff!important;border-color:#6aa8ef!important;box-shadow:0 0 0 3px rgba(18,101,216,.09)!important}
.shipments-search-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);z-index:1;color:#7a8ba0;font-size:17px;font-weight:900;pointer-events:none}
.shipment-count-pill{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 11px;border-radius:999px;background:#edf5ff;color:#1761b4;border:1px solid #dceafe;font-size:10px;font-weight:900;white-space:nowrap}
.shipment-directory{display:grid;gap:11px}
.shipment-card-modern{padding:15px 16px;border:1px solid #e4eaf1;border-radius:15px;background:#fff;box-shadow:0 4px 16px rgba(16,42,86,.035);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.shipment-card-modern:hover{border-color:#cfdbe8;box-shadow:0 8px 22px rgba(16,42,86,.07);transform:translateY(-1px)}
.shipment-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}
.shipment-card-identity{min-width:0;flex:1}
.shipment-invoice-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.shipment-invoice-number{color:#0f63c8;font-size:12px;font-weight:900;letter-spacing:-.01em}
.shipment-card-modern h4{margin:6px 0 0;color:#17345d;font-size:15px;line-height:1.25}
.shipment-card-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:6px;color:#8290a3;font-size:10px;font-weight:700}
.shipment-card-meta i{font-style:normal;color:#c1c9d3}
.shipment-card-actions{display:flex;align-items:center;gap:7px;flex:0 0 auto}
.shipment-card-actions .btn{min-height:35px;padding:7px 10px;border-radius:9px;font-size:10px;font-weight:800}
.shipment-card-actions .shipment-preview-btn{background:#edf5ff!important;color:#0f62bd!important;border-color:#d7e8fb!important}
.shipment-card-actions .shipment-preview-btn:hover{background:#e3f0ff!important;border-color:#c4ddf7!important}
.shipment-info-grid{display:grid;grid-template-columns:1.15fr 1fr .72fr .72fr .9fr;gap:8px;margin-top:14px;padding-top:13px;border-top:1px solid #edf1f5}
.shipment-info{min-width:0;padding:9px 10px;border-radius:10px;background:#f8fafc;border:1px solid #edf1f5}
.shipment-info small{display:block;color:#909bad;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.04em;line-height:1.2}
.shipment-info strong{display:block;margin-top:4px;color:#435872;font-size:11px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.shipment-info .shipment-paid-value{color:#0b8a55}
.shipment-balance-due{background:#fff4f3;border-color:#f3e1df}.shipment-balance-due strong{color:#d23531}
.shipment-balance-paid{background:#eef9f4;border-color:#dcefe5}.shipment-balance-paid strong{color:#118353}
.shipment-delivered-line{margin-top:9px;color:#118353;font-size:9px;font-weight:800}
.shipment-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:210px;padding:28px!important;text-align:center;color:#74849a;background:#fbfcfe;border:1px dashed #dbe3ed;border-radius:14px}
.shipment-empty-state .shipment-empty-icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:10px;border-radius:14px;background:#edf5ff;color:#1768bd;font-size:22px;font-weight:900}
.shipment-empty-state strong{display:block;color:#29405f;font-size:13px}.shipment-empty-state span{display:block;margin-top:4px;font-size:10px;color:#8d98a8}

/* Shipment modal remains the same workflow; this only improves hierarchy and mobile usability. */
.shipment-related-modal{z-index:1300!important;background:rgba(15,30,50,.48)}
.shipment-modal-card{width:min(960px,94vw)!important;max-height:94dvh!important;padding:0!important;border:1px solid #dfe6ee!important;border-radius:18px!important;overflow:auto!important;box-shadow:0 26px 80px rgba(15,30,50,.24)!important}
.shipment-modal-card>.modal-head{position:sticky;top:0;z-index:25;margin:0!important;padding:17px 19px!important;background:rgba(255,255,255,.97)!important;border-bottom:1px solid #e8edf3!important;backdrop-filter:blur(8px)}
.shipment-modal-card>.modal-head h3{margin:0;color:#132e56;font-size:18px;letter-spacing:-.015em}.shipment-modal-card>.modal-head .muted{font-size:9px;margin-top:3px}.shipment-modal-card>.modal-head .btn{min-height:36px;padding:7px 11px;border-radius:9px;font-size:10px}
.shipment-modal-card>.invoice-steps{margin:15px 19px 0;padding:8px;border:1px solid #e7edf4;border-radius:12px;background:#f8fafc;gap:6px}
.shipment-modal-card .invoice-step{padding:7px 9px;border-radius:8px;font-size:9px;font-weight:800;color:#718197;background:transparent}.shipment-modal-card .invoice-step.active{background:#e6f1ff;color:#0c63c7;box-shadow:inset 0 0 0 1px #d4e6fb}
.shipment-modal-card>#shipmentForm{padding:16px 19px 21px}
.shipment-modal-card>#shipmentForm>.form-grid{padding:14px;border:1px solid #e8edf3;border-radius:13px;background:#fbfcfe}
.shipment-modal-card>#shipmentForm h3{color:#17345d;font-size:14px;letter-spacing:-.01em;margin-top:19px!important;margin-bottom:10px}
.shipment-modal-card label{color:#68788f;font-size:10px;font-weight:800}.shipment-modal-card input,.shipment-modal-card select,.shipment-modal-card textarea{border-color:#dce4ed;border-radius:9px;background:#fff}.shipment-modal-card input:focus,.shipment-modal-card select:focus,.shipment-modal-card textarea:focus{border-color:#6aa8ef;box-shadow:0 0 0 3px rgba(18,101,216,.08)}
.shipment-modal-card .quick-catalog{padding:10px;border:1px solid #e8edf3;border-radius:12px;background:#f8fafc}
.shipment-modal-card .summary-box{border:1px solid #e6ebf1;border-radius:12px;background:#f9fbfd}.shipment-modal-card .checkout-card,.shipment-modal-card .invoice-summary-card{border-radius:11px;border-color:#e5ebf2;background:#f9fbfd}
.shipment-modal-card>#shipmentForm>.section-actions:last-of-type{padding-top:14px;border-top:1px solid #edf1f5}

@media(max-width:1050px){.shipment-info-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.shipment-balance{grid-column:auto}}
@media(max-width:820px){
  .shipments-heading-row{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:14px}.shipments-heading-row h2{font-size:26px}.shipments-new-btn{width:100%;min-height:44px}
  .shipments-panel{padding:14px!important}.shipment-modal-card{width:100%!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important}.shipment-modal-card>.modal-head{padding:13px 14px!important}.shipment-modal-card>.invoice-steps{margin:12px 14px 0;overflow-x:auto;flex-wrap:nowrap}.shipment-modal-card .invoice-step{white-space:nowrap;flex:0 0 auto}.shipment-modal-card>#shipmentForm{padding:14px 14px 24px}
}
@media(max-width:700px){
  .shipments-toolbar{flex-direction:column;align-items:stretch}.shipments-search-wrap{max-width:none}.shipment-count-pill{align-self:flex-start}
  .shipment-card-modern{padding:14px}.shipment-card-head{display:block}.shipment-card-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.shipment-card-actions .btn{width:100%;min-height:40px;padding:7px 5px}
  .shipment-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.shipment-info:first-child,.shipment-info:nth-child(2){grid-column:1/-1}.shipment-info{padding:9px}.shipment-info strong{font-size:11px}
  .shipment-modal-card>#shipmentForm>.form-grid{padding:11px}.shipment-modal-card .checkout-grid,.shipment-modal-card .invoice-summary-grid{grid-template-columns:1fr!important}
}
@media(max-width:430px){.shipments-heading-row h2{font-size:24px}.shipment-info-grid{grid-template-columns:1fr 1fr}.shipment-card-meta{font-size:9px}.shipment-invoice-number{font-size:11px}.shipment-card-modern h4{font-size:14px}}

/* =========================================================
   V23.12.43 — Modern Payments
   Visual modernization only. Existing payment workflows unchanged.
   ========================================================= */
.modern-payments-view{max-width:100%}
.payments-heading-row{align-items:flex-end;margin-bottom:18px}
.payments-heading-row h2{font-size:30px;letter-spacing:-.035em;color:#0c2450;line-height:1.1}
.payments-heading-row .subtitle{margin-top:6px;font-size:13px;color:#738096}
.payments-new-btn{min-height:42px;padding:9px 15px;border-radius:10px;font-size:11px;font-weight:850;box-shadow:0 6px 16px rgba(18,101,216,.12)}
.payments-panel{padding:17px!important}
.payments-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.payment-search-wrap{position:relative;display:flex;align-items:center;flex:1;min-width:0;max-width:620px;margin:0}
.payment-search-wrap .search{width:100%;height:42px;padding-left:39px!important;border:1px solid #dfe6ef!important;border-radius:11px!important;background:#fbfcfe!important;font-size:12px!important;box-shadow:inset 0 1px 1px rgba(15,43,86,.015)}
.payment-search-wrap .search:focus{background:#fff!important;border-color:#6aa8ef!important;box-shadow:0 0 0 3px rgba(18,101,216,.09)!important;outline:none}
.payment-search-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);z-index:1;color:#7a8ba0;font-size:17px;font-weight:900;pointer-events:none}
.payment-count-pill{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 11px;border-radius:999px;background:#edf5ff;color:#1761b4;border:1px solid #dceafe;font-size:10px;font-weight:900;white-space:nowrap}
.payment-directory{display:grid;gap:11px}
.payment-card-modern{padding:15px 16px!important;margin:0!important;border:1px solid #e4eaf1!important;border-radius:15px!important;background:#fff!important;box-shadow:0 4px 16px rgba(16,42,86,.035);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.payment-card-modern:hover{border-color:#cfdae7!important;box-shadow:0 8px 22px rgba(16,42,86,.07);transform:translateY(-1px)}
.payment-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}
.payment-card-identity{min-width:0;flex:1}
.payment-invoice-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.payment-invoice-number{color:#0f63c8;font-size:12px;font-weight:900;letter-spacing:-.01em}
.payment-card-modern .payment-status{padding:5px 8px;border-radius:999px;font-size:9px;font-weight:900;line-height:1.2}
.payment-card-modern h4{margin:7px 0 0;color:#17345d;font-size:15px;line-height:1.25}
.payment-card-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:6px;color:#8290a3;font-size:10px;font-weight:700}
.payment-card-meta i{font-style:normal;color:#c1c9d3}
.payment-card-actions{display:flex;align-items:center;gap:7px;flex:0 0 auto}
.payment-card-actions .btn{min-height:36px;padding:7px 11px;border-radius:9px;font-size:10px;font-weight:800}
.payment-financial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px;padding-top:13px;border-top:1px solid #edf1f5}
.payment-financial{min-width:0;padding:10px 11px;border:1px solid #e8edf3;border-radius:10px;background:#f8fafc}
.payment-financial small{display:block;color:#909bad;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.04em;line-height:1.2}
.payment-financial strong{display:block;margin-top:5px;color:#435872;font-size:13px;line-height:1.3;overflow-wrap:anywhere}
.payment-financial-paid{background:#eef9f4;border-color:#dcefe5}.payment-financial-paid strong{color:#0b8a55}
.payment-financial-balance{background:#fff4f3;border-color:#f3e1df}.payment-financial-balance strong{color:#d23531}
.payment-financial-settled{background:#eef9f4;border-color:#dcefe5}.payment-financial-settled strong{color:#118353}
.payment-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:210px;padding:28px!important;text-align:center;color:#74849a;background:#fbfcfe;border:1px dashed #dbe3ed;border-radius:14px}
.payment-empty-state .payment-empty-icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:10px;border-radius:14px;background:#eef9f4;color:#0b8a55;font-size:20px;font-weight:900}
.payment-empty-state strong{display:block;color:#29405f;font-size:13px}.payment-empty-state span{display:block;margin-top:4px;font-size:11px;color:#8d98a8}

/* Payment dialogs use the same polished, safe layering pattern as Customers/Shipments. */
.payment-related-modal{z-index:1350!important;background:rgba(15,30,50,.48)}
.payment-receipt-modal{z-index:1450!important}
.payment-modal-card{width:min(720px,94vw)!important;max-height:94dvh!important;padding:0!important;border:1px solid #dfe6ee!important;border-radius:18px!important;overflow:auto!important;box-shadow:0 26px 80px rgba(15,30,50,.24)!important}
.payment-modal-card>.modal-head{position:sticky;top:0;z-index:25;margin:0!important;padding:17px 19px!important;background:rgba(255,255,255,.97)!important;border-bottom:1px solid #e8edf3!important;backdrop-filter:blur(8px)}
.payment-modal-card>.modal-head h3{margin:0;color:#132e56;font-size:18px;letter-spacing:-.015em}
.payment-modal-card>.modal-head .btn{min-height:36px;padding:7px 11px;border-radius:9px;font-size:10px}
.payment-modal-card>form,.payment-modal-card>#paymentReceiptArea,.payment-modal-card>#paymentHistorySummary,.payment-modal-card>#paymentHistoryList,.payment-modal-card>#paymentHistoryEmpty{margin-left:19px;margin-right:19px}
.payment-modal-card>form{padding:17px 0 21px}
.payment-modal-card>#paymentReceiptArea{margin-top:17px}
.payment-modal-card>#paymentHistorySummary{margin-top:17px}
.payment-modal-card>#paymentHistoryList{margin-top:11px!important;margin-bottom:19px}
.payment-modal-card>#paymentHistoryEmpty{margin-top:14px;margin-bottom:19px}
.payment-modal-card>.section-actions{margin-left:19px;margin-right:19px;margin-bottom:19px}
.payment-modal-card label{color:#68788f;font-size:11px;font-weight:800}
.payment-modal-card input,.payment-modal-card select{border-color:#dce4ed;border-radius:9px;background:#fff}
.payment-modal-card input:focus,.payment-modal-card select:focus{border-color:#6aa8ef;box-shadow:0 0 0 3px rgba(18,101,216,.08);outline:none}
.payment-modal-card .summary-box{border:1px solid #e6ebf1;border-radius:12px;background:#f9fbfd}
.payment-history-modal-card{width:min(800px,94vw)!important}
.payment-history-row{display:grid!important;grid-template-columns:1fr 1fr 1fr 1fr auto!important;gap:10px!important;align-items:center;padding:11px 12px!important;border:1px solid #e7edf3!important;border-radius:12px!important;background:#fbfcfe!important}
.payment-history-field{min-width:0}.payment-history-field small{display:block;color:#929eae;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.035em}.payment-history-field strong{display:block;margin-top:4px;color:#425770;font-size:11px;line-height:1.3;overflow-wrap:anywhere}.payment-history-amount strong{color:#0b8a55;font-size:12px}
.payment-history-actions{display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap}.payment-history-actions .btn{min-height:34px;padding:6px 9px;border-radius:8px;font-size:9px;font-weight:800}

@media(max-width:820px){
  .payments-heading-row{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:14px}.payments-heading-row h2{font-size:26px}.payments-new-btn{width:100%;min-height:44px}
  .payments-panel{padding:14px!important}
  .payment-modal-card{width:100%!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important}.payment-modal-card>.modal-head{padding:13px 14px!important}
  .payment-modal-card>form,.payment-modal-card>#paymentReceiptArea,.payment-modal-card>#paymentHistorySummary,.payment-modal-card>#paymentHistoryList,.payment-modal-card>#paymentHistoryEmpty{margin-left:14px;margin-right:14px}.payment-modal-card>.section-actions{margin-left:14px;margin-right:14px}
}
@media(max-width:700px){
  .payments-toolbar{flex-direction:column;align-items:stretch;gap:8px}.payment-search-wrap{max-width:none}.payment-count-pill{align-self:flex-start}
  .payment-card-modern{padding:14px!important}.payment-card-head{display:block}.payment-card-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:12px}.payment-card-actions .btn{width:100%;min-height:42px}
  .payment-financial-grid{grid-template-columns:1fr 1fr;gap:7px}.payment-financial:first-child{grid-column:1/-1}.payment-financial{padding:10px}.payment-financial strong{font-size:13px}
  .payment-history-row{grid-template-columns:1fr 1fr!important;align-items:start!important}.payment-history-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-top:8px;border-top:1px solid #edf1f5}.payment-history-actions .btn{width:100%;min-height:40px}
}
@media(max-width:430px){
  .payments-heading-row h2{font-size:24px}.payment-card-modern h4{font-size:14px}.payment-card-meta{font-size:10px}.payment-financial-grid{grid-template-columns:1fr 1fr}.payment-invoice-number{font-size:11px}
  .payment-history-row{grid-template-columns:1fr 1fr!important}.payment-history-field strong{font-size:11px}
}

/* =========================================================
   V23.12.44 — Modern Containers
   Visual modernization only. Existing container workflows unchanged.
   ========================================================= */
.modern-containers-view{max-width:100%}
.containers-heading-row{align-items:flex-end;margin-bottom:18px}
.containers-heading-row h2{font-size:30px;letter-spacing:-.035em;color:#0c2450;line-height:1.1}
.containers-heading-row .subtitle{margin-top:6px;font-size:13px;color:#738096}
.containers-new-btn{min-height:42px;padding:9px 15px;border-radius:10px;font-size:11px;font-weight:850;box-shadow:0 6px 16px rgba(18,101,216,.12)}
.containers-panel{padding:17px!important}
.containers-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.container-search-wrap{position:relative;display:flex;align-items:center;flex:1;min-width:0;max-width:650px;margin:0}
.container-search-wrap .search{width:100%;height:42px;padding-left:39px!important;border:1px solid #dfe6ef!important;border-radius:11px!important;background:#fbfcfe!important;font-size:12px!important;box-shadow:inset 0 1px 1px rgba(15,43,86,.015)}
.container-search-wrap .search:focus{background:#fff!important;border-color:#6aa8ef!important;box-shadow:0 0 0 3px rgba(18,101,216,.09)!important;outline:none}
.container-search-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);z-index:1;color:#7a8ba0;font-size:17px;font-weight:900;pointer-events:none}
.container-count-pill{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 11px;border-radius:999px;background:#edf5ff;color:#1761b4;border:1px solid #dceafe;font-size:10px;font-weight:900;white-space:nowrap}
.container-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.container-card-modern{display:flex;flex-direction:column;gap:0;margin:0!important;padding:16px!important;border:1px solid #e4eaf1!important;border-radius:15px!important;background:#fff!important;box-shadow:0 4px 16px rgba(16,42,86,.035);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.container-card-modern:hover{border-color:#cfdae7!important;box-shadow:0 8px 22px rgba(16,42,86,.07);transform:translateY(-1px)}
.container-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.container-card-identity{min-width:0;flex:1}
.container-number-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.container-number-label{color:#8a96a8;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.container-card-modern h4{margin:5px 0 0!important;color:#102d59;font-size:19px;line-height:1.15;letter-spacing:-.025em}
.container-route{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:7px;color:#65768e;font-size:11px;font-weight:750}
.container-route b{color:#a2adba;font-size:12px}
.container-status-chip{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:900;line-height:1.2;border:1px solid transparent}
.container-status-chip.is-preparing{background:#f3f5f8;color:#66758a;border-color:#e6eaf0}
.container-status-chip.is-transit{background:#edf5ff;color:#1e67bd;border-color:#dae9fb}
.container-status-chip.is-arrived{background:#eef9fb;color:#167787;border-color:#d9eef2}
.container-status-chip.is-customs{background:#fff6df;color:#94660a;border-color:#f3e4ba}
.container-status-chip.is-released{background:#edf9f4;color:#13704d;border-color:#dbeee5}
.container-status-chip.is-team{background:#eef6ff;color:#1d5f9e;border-color:#d8e8f8;max-width:180px;white-space:normal;text-align:center}
.container-status-chip.is-completed{background:#eaf8ef;color:#197344;border-color:#d6ebdf}
.container-card-actions{display:flex;align-items:center;gap:7px;flex:0 0 auto}
.container-card-actions .btn{min-height:36px;padding:7px 11px;border-radius:9px;font-size:10px;font-weight:800}
.container-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:14px;padding-top:13px;border-top:1px solid #edf1f5}
.container-info{min-width:0;padding:9px 10px;border:1px solid #e8edf3;border-radius:10px;background:#f8fafc}
.container-info small{display:block;color:#929eae;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;line-height:1.2}
.container-info strong{display:block;margin-top:4px;color:#425770;font-size:11px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.container-progress-shell{margin-top:12px;padding:10px 11px;border:1px solid #e8edf3;border-radius:11px;background:#fbfcfe}
.container-progress-shell .container-delivery-progress{margin-top:0}
.container-progress-shell .container-delivery-progress .muted{font-size:9px!important;color:#8c98a8!important}
.container-progress-shell .progress-track{height:7px!important;background:#e8edf3!important}
.container-progress-shell .progress-fill{background:linear-gradient(90deg,#1265d8,#2f86e8)!important}
.container-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:210px;padding:28px!important;text-align:center;color:#74849a;background:#fbfcfe;border:1px dashed #dbe3ed;border-radius:14px}
.container-empty-state .container-empty-icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:10px;border-radius:14px;background:#edf5ff;color:#1768bd;font-size:22px;font-weight:900}
.container-empty-state strong{display:block;color:#29405f;font-size:13px}.container-empty-state span{display:block;margin-top:4px;font-size:11px;color:#8d98a8}

/* Container dialogs: safe layering, sticky headers, cleaner form grouping. */
.container-related-modal{z-index:1350!important;background:rgba(15,30,50,.48)}
.container-modal-card{max-height:94dvh!important;padding:0!important;border:1px solid #dfe6ee!important;border-radius:18px!important;overflow:auto!important;box-shadow:0 26px 80px rgba(15,30,50,.24)!important}
.container-modal-card>.modal-head{position:sticky;top:0;z-index:25;margin:0!important;padding:17px 19px!important;background:rgba(255,255,255,.97)!important;border-bottom:1px solid #e8edf3!important;backdrop-filter:blur(8px)}
.container-modal-card>.modal-head h3{margin:0;color:#132e56;font-size:18px;letter-spacing:-.015em}
.container-modal-card>.modal-head .btn{min-height:36px;padding:7px 11px;border-radius:9px;font-size:10px}
.container-editor-modal-card{width:min(900px,94vw)!important}
.container-editor-modal-card>form{padding:18px 19px 21px}
.container-editor-modal-card .container-grid{padding:13px;border:1px solid #e7edf3;border-radius:13px;background:#fafcff}
.container-editor-modal-card label{color:#68788f;font-size:11px;font-weight:800}
.container-editor-modal-card input,.container-editor-modal-card select{border-color:#dce4ed;border-radius:9px;background:#fff}
.container-editor-modal-card input:focus,.container-editor-modal-card select:focus{border-color:#6aa8ef;box-shadow:0 0 0 3px rgba(18,101,216,.08);outline:none}
.container-editor-modal-card .assign-list{border-color:#e2e8ef;border-radius:12px;background:#fbfcfe;padding:8px}
.container-editor-modal-card .assign-row{border-radius:9px}
.container-editor-modal-card .bulk-update-box{border-color:#e2e8ef;border-radius:13px;background:#f8fafc}
.container-manifest-modal-card>.manifest-summary,.container-manifest-modal-card>.section-actions,.container-manifest-modal-card>#manifestPrintable{margin-left:19px;margin-right:19px}
.container-manifest-modal-card>.manifest-summary{margin-top:17px}
.container-manifest-modal-card>.section-actions{margin-top:12px}
.container-manifest-modal-card>#manifestPrintable{margin-bottom:20px}
.container-manifest-modal-card .manifest-stat{border:1px solid #e6ebf1;border-radius:11px;background:#f9fbfd;padding:11px 12px}
.container-manifest-modal-card .manifest-stat b{color:#8b97a8;font-size:9px;text-transform:uppercase;letter-spacing:.035em}
.container-manifest-modal-card .manifest-stat span{margin-top:5px;color:#29425f;font-size:13px;font-weight:900}
.container-manifest-modal-card .manifest-table-wrap{border:1px solid #e5ebf2;border-radius:12px;overflow:auto}
.container-manifest-modal-card table{font-size:11px}.container-manifest-modal-card th{background:#f7f9fc;color:#77859a;font-size:9px;text-transform:uppercase;letter-spacing:.03em}
.container-progress-modal-card>#containerDeliveryProgressList,.container-progress-modal-card>#containerDeliveryProgressEmpty,.container-progress-modal-card>.section-actions{margin-left:19px;margin-right:19px}
.container-progress-modal-card>.section-actions{margin-top:14px!important}
.container-progress-modal-card>#containerDeliveryProgressList{margin-bottom:19px}
.container-progress-modal-card .container-progress-row{border-color:#e4eaf1;border-radius:12px;background:#fbfcfe}

@media(max-width:1180px){.container-directory{grid-template-columns:1fr}}
@media(max-width:820px){
  .containers-heading-row{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:14px}.containers-heading-row h2{font-size:26px}.containers-new-btn{width:100%;min-height:44px}.containers-panel{padding:14px!important}
  .container-modal-card{width:100%!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important}.container-modal-card>.modal-head{padding:13px 14px!important}
  .container-editor-modal-card>form{padding:14px 14px 20px}.container-manifest-modal-card>.manifest-summary,.container-manifest-modal-card>.section-actions,.container-manifest-modal-card>#manifestPrintable,.container-progress-modal-card>#containerDeliveryProgressList,.container-progress-modal-card>#containerDeliveryProgressEmpty,.container-progress-modal-card>.section-actions{margin-left:14px;margin-right:14px}
}
@media(max-width:700px){
  .containers-toolbar{flex-direction:column;align-items:stretch;gap:8px}.container-search-wrap{max-width:none}.container-count-pill{align-self:flex-start}
  .container-card-modern{padding:14px!important}.container-card-head{display:block}.container-card-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:12px}.container-card-actions .btn{width:100%;min-height:42px}
  .container-info-grid{grid-template-columns:1fr 1fr;gap:7px}.container-info{padding:9px}.container-card-modern h4{font-size:18px}
  .container-manifest-modal-card .manifest-summary{grid-template-columns:1fr 1fr}
  .container-manifest-modal-card .manifest-table-wrap{border:0;overflow:visible}
  .container-manifest-modal-card .manifest-table-wrap table,.container-manifest-modal-card .manifest-table-wrap tbody,.container-manifest-modal-card .manifest-table-wrap tr,.container-manifest-modal-card .manifest-table-wrap td{display:block;width:100%}
  .container-manifest-modal-card .manifest-table-wrap thead{display:none}
  .container-manifest-modal-card .manifest-table-wrap tr{margin-bottom:10px;padding:7px 10px;border:1px solid #e5ebf2;border-radius:12px;background:#fff}
  .container-manifest-modal-card .manifest-table-wrap td{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:7px 0!important;border-bottom:1px solid #eff2f6!important;text-align:right;white-space:normal;overflow-wrap:anywhere}
  .container-manifest-modal-card .manifest-table-wrap td:last-child{border-bottom:0!important}
  .container-manifest-modal-card .manifest-table-wrap td:before{content:attr(data-label);flex:0 0 105px;text-align:left;color:#8c98a8;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.035em}
  .container-manifest-modal-card .manifest-table-wrap td[colspan]{display:block;text-align:center}.container-manifest-modal-card .manifest-table-wrap td[colspan]:before{display:none}
}
@media(max-width:430px){.containers-heading-row h2{font-size:24px}.container-info-grid{grid-template-columns:1fr 1fr}.container-route{font-size:10px}.container-manifest-modal-card .manifest-summary{grid-template-columns:1fr 1fr}}


/* =========================================================
   V23.12.45 — Admin Finish Pass
   Documents • WhatsApp • Driver Delivery Oversight • Staff/Pickup Access
   Final typography • accessibility/usability • targeted CSS cleanup
   No SQL or business-logic changes.
   ========================================================= */

/* Consolidated container-delivery progress rules formerly duplicated inline in dashboard.html. */
.container-delivery-progress{margin-top:12px;cursor:pointer}
.container-delivery-progress:hover .progress-track{box-shadow:0 0 0 2px rgba(36,54,75,.12)}
.container-delivery-progress .progress-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:12px;color:#667085;margin-bottom:5px}
.container-delivery-progress .progress-track{height:9px;background:#e9edf2;border-radius:999px;overflow:hidden;transition:.15s ease}
.container-delivery-progress .progress-fill{height:100%;background:#24364b;border-radius:999px;transition:width .2s ease}
.container-delivery-progress .progress-label{font-weight:700;color:#24364b}
.container-progress-row{border:1px solid #e4e7ec;border-radius:10px;padding:12px;margin-bottom:10px}
.container-progress-row-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.container-progress-status{font-size:12px;font-weight:700;padding:4px 8px;border-radius:999px;white-space:nowrap}
.container-progress-status.delivered{background:#eaf7ee;color:#24743c}.container-progress-status.out{background:#eef4ff;color:#3159a5}.container-progress-status.pending{background:#f3f4f6;color:#667085}
.container-progress-filter.active{background:#24364b;color:#fff;border-color:#24364b}.container-progress-invoice{font-weight:800;cursor:pointer;text-decoration:underline;text-underline-offset:2px}

/* Final typography: keep the compact admin look, but remove 8–9px operational text. */
.admin-shell .main{font-size:14px;line-height:1.45}
.admin-shell .subtitle{font-size:13px!important;line-height:1.45;color:#6f7e92}
.admin-shell .muted{font-size:12px;line-height:1.45}
.admin-shell label{font-size:12px;color:#5d6f87}
.admin-shell input,.admin-shell select,.admin-shell textarea{font-size:14px;color:#263a55}
.admin-shell .customer-detail small,.admin-shell .shipment-info small,.admin-shell .container-info small,.admin-shell .payment-financial small,.admin-shell .profile-item b,.admin-shell .payment-history-field small{font-size:10px!important;color:#78879b!important}
.admin-shell .customer-detail strong,.admin-shell .shipment-info strong,.admin-shell .container-info strong{font-size:12px!important}
.admin-shell .customer-record-label,.admin-shell .customer-id-chip,.admin-shell .shipment-delivered-line,.admin-shell .container-number-label,.admin-shell .container-status-chip,.admin-shell .payment-card-modern .payment-status,.admin-shell .dashboard-container-head span,.admin-shell .dashboard-container-head small,.admin-shell .dashboard-container-meta,.admin-shell .payment-overview span{font-size:10px!important}
.admin-shell .modern-quick-actions small{font-size:10px!important}
.admin-shell .customer-card-actions .btn,.admin-shell .shipment-card-actions .btn,.admin-shell .payment-card-actions .btn,.admin-shell .payment-history-actions .btn,.admin-shell .container-card-actions .btn,.admin-shell .customer-related-modal-card>.modal-head .btn,.admin-shell .shipment-modal-card>.modal-head .btn,.admin-shell .payment-modal-card>.modal-head .btn,.admin-shell .container-modal-card>.modal-head .btn{font-size:11px!important}
.admin-shell .shipment-modal-card label{font-size:11px!important}.admin-shell .shipment-modal-card .invoice-step{font-size:10px!important}.admin-shell .shipment-modal-card>.modal-head .muted{font-size:11px!important}
.admin-shell .container-manifest-modal-card .manifest-stat b,.admin-shell .container-manifest-modal-card th,.admin-shell .customer-profile-modal-card>.table-wrap th{font-size:10px!important}

/* Accessibility and usability. */
.admin-shell :where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:3px solid rgba(18,101,216,.28)!important;outline-offset:2px}
.admin-shell .btn:disabled,.admin-shell button:disabled{opacity:.55;cursor:not-allowed;filter:saturate(.7)}
.admin-shell .btn-danger{background:#fff0ef;color:#b42318;border:1px solid #f1d4d1}
.admin-shell .btn-danger:hover{background:#ffe8e6}
.admin-shell .msg:empty{display:none}
.admin-shell .empty{line-height:1.5}
.admin-shell a.btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}

/* Shared dialog treatment for the sections completed in this pass. */
.admin-finish-modal{z-index:1400!important;background:rgba(15,30,50,.5)}
.admin-finish-modal-card{max-height:94dvh!important;padding:0!important;border:1px solid #dfe6ee!important;border-radius:18px!important;overflow:auto!important;box-shadow:0 28px 85px rgba(15,30,50,.25)!important}
.admin-finish-modal-card>.modal-head{position:sticky;top:0;z-index:20;margin:0!important;padding:17px 19px!important;background:rgba(255,255,255,.97)!important;border-bottom:1px solid #e7edf3!important;backdrop-filter:blur(8px)}
.admin-finish-modal-card>.modal-head h3{margin:0;color:#132e56;font-size:18px;letter-spacing:-.015em}.admin-finish-modal-card>.modal-head .muted{margin-top:3px;font-size:11px}.admin-finish-modal-card>.modal-head .btn{min-height:38px;padding:8px 12px;border-radius:9px;font-size:11px}
.admin-finish-modal-body{padding:18px 19px 21px}.admin-finish-modal-actions{margin-top:16px}.admin-finish-modal-actions .btn{min-height:42px}

/* Documents */
.documents-heading-row,.whatsapp-heading-row,.staff-heading-row,.driver-oversight-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:18px}
.documents-heading-row h2,.whatsapp-heading-row h2,.staff-heading-row h2,.driver-oversight-heading-row h2{font-size:30px;letter-spacing:-.035em;color:#0c2450;line-height:1.1}
.documents-heading-row .subtitle,.whatsapp-heading-row .subtitle,.staff-heading-row .subtitle,.driver-oversight-heading-row .subtitle{margin-top:6px;margin-bottom:0}
.documents-upload-btn{min-height:42px;padding:9px 15px;border-radius:10px;font-size:12px;font-weight:850;box-shadow:0 6px 16px rgba(18,101,216,.12)}
.documents-panel{padding:17px!important}.documents-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.documents-search-wrap{position:relative;display:block;flex:1;max-width:650px;margin:0}.documents-search-wrap .search{width:100%;max-width:none;height:42px;padding-left:39px!important;border:1px solid #dfe6ef!important;border-radius:11px!important;background:#fbfcfe!important}.documents-search-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#7a8ba0;font-size:17px;pointer-events:none}
.document-count-pill{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 11px;border-radius:999px;background:#edf5ff;color:#1761b4;border:1px solid #dceafe;font-size:11px;font-weight:900;white-space:nowrap}
.document-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.document-card-modern{margin:0!important;padding:15px!important;border-color:#e4eaf1!important;border-radius:15px!important;box-shadow:0 4px 16px rgba(16,42,86,.035)}
.document-card-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:start}.document-file-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#edf5ff;color:#1768bd;font-size:18px;font-weight:900}.document-file-icon.is-image{background:#eef9f4;color:#168458}.document-file-icon.is-pdf{background:#fff1ef;color:#b54336}.document-file-icon.is-id{background:#f1efff;color:#6952b8}.document-file-icon.is-proof{background:#eef9f4;color:#168458}
.document-card-identity{min-width:0}.document-card-identity h4{margin:0;color:#17345d;font-size:14px;line-height:1.3;overflow-wrap:anywhere}.document-type-line{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:4px;color:#7e8ca0;font-size:11px}.document-type-line i{font-style:normal;color:#bdc5cf}.document-visibility{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:900;white-space:nowrap}.document-visibility.is-visible{background:#e9f8ef;color:#147648}.document-visibility.is-private{background:#f2f4f7;color:#64748a}
.document-owner-box{margin-top:12px;padding:9px 10px;border:1px solid #e8edf3;border-radius:10px;background:#f8fafc}.document-owner-box small{display:block;color:#8794a6;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.035em}.document-owner-box strong{display:block;margin-top:3px;color:#405570;font-size:12px;overflow-wrap:anywhere}.document-notes{margin-top:9px;color:#617188;font-size:12px;line-height:1.45}.document-card-actions{justify-content:flex-end}.document-card-actions .btn{min-height:36px;font-size:11px}
.document-empty-state{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;padding:28px!important;text-align:center;background:#fbfcfe;border:1px dashed #dbe3ed;border-radius:14px}.document-empty-state .document-empty-icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:10px;border-radius:14px;background:#edf5ff;color:#1768bd;font-size:22px}.document-empty-state strong{color:#29405f;font-size:14px}.document-empty-state span{margin-top:4px;color:#8290a3;font-size:12px}
.document-modal-card{width:min(820px,94vw)!important}.document-visibility-toggle{margin-top:16px!important;padding:12px;border:1px solid #e5ebf2;border-radius:11px;background:#f9fbfd;align-items:flex-start}.document-visibility-toggle span{display:block}.document-visibility-toggle strong{display:block;color:#334b69;font-size:12px}.document-visibility-toggle small{display:block;margin-top:2px;color:#8190a4;font-size:11px;font-weight:600;line-height:1.4}

/* WhatsApp / Communications */
.modern-wa-grid{grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);gap:14px}.wa-contacts-panel,.wa-composer-panel{padding:16px!important}.wa-panel-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:13px}.wa-panel-head h3{margin:0;color:#17345d;font-size:15px}.wa-panel-head span{display:block;margin-top:3px;color:#7d8b9f;font-size:11px;line-height:1.4}
.wa-filter-grid{display:grid;grid-template-columns:.8fr .8fr 1.2fr;gap:9px}.wa-filter-grid label{margin:0 0 5px;font-size:10px;text-transform:uppercase;letter-spacing:.03em;color:#7d8a9c}.wa-filter-grid select,.wa-filter-grid input{height:40px;padding:9px 10px;border-radius:9px}.wa-filter-grid .search{max-width:none}.wa-selection-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0 9px}.wa-summary{margin:0}.wa-count-pill{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;background:#f1f4f8;color:#65758a;font-size:10px;font-weight:850}.wa-selected-pill{background:#eaf3ff;color:#1662b8}.wa-selection-actions .btn{min-height:34px;padding:6px 9px;font-size:10px}
.modern-wa-list{max-height:560px;padding:6px;border-color:#e3e9f0;background:#f9fbfd}.wa-contact-card{margin-bottom:6px;border:1px solid #e7ecf2!important;border-radius:11px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.wa-contact-card:last-child{margin-bottom:0}.wa-contact-card:has(.wa-check:checked){border-color:#9ac2f1!important;box-shadow:0 0 0 2px rgba(18,101,216,.07);background:#fbfdff}.wa-contact-disabled{opacity:.68}.wa-contact-main{min-width:0}.wa-name{color:#29425f;font-size:13px}.wa-contact-line{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:3px;color:#6f7f94;font-size:11px}.wa-contact-line i{font-style:normal;color:#c0c8d2}.wa-contact-secondary{color:#8995a5}.wa-readiness{display:inline-flex;align-items:center;padding:5px 7px;border-radius:999px;font-size:10px;font-weight:850;white-space:nowrap}.wa-readiness.is-ready{background:#e9f8ef;color:#137648}.wa-readiness.is-missing{background:#f2f4f7;color:#748195}.wa-empty-state{background:#fff}
.wa-composer-fields{display:grid;gap:10px}.wa-composer-fields label{margin:0 0 5px}.wa-composer-panel textarea{min-height:180px;border-color:#dce4ed}.wa-placeholder-help{margin-top:6px;color:#7f8c9e;font-size:10px;line-height:1.5}.wa-placeholder-help code{display:inline-block;padding:2px 4px;border-radius:5px;background:#f0f4f8;color:#52677f;font-size:10px}.wa-preview-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:14px 0 6px}.wa-preview-heading strong{color:#405570;font-size:12px}.wa-preview-heading span{color:#8b97a7;font-size:10px}.wa-preview{min-height:125px;border-color:#e3e9f0;background:#f8fafc;font-size:12px;line-height:1.55;color:#405570}.wa-send-actions{margin-top:13px}.wa-send-actions .btn{width:100%;min-height:43px}
.whatsapp-related-modal{z-index:1420!important}.wa-queue-modal-card{width:min(760px,94vw)!important}.wa-queue-actions{margin-top:16px}.wa-queue-actions .btn{min-height:42px}.wa-queue-summary{margin-top:16px}.wa-queue-current{background:#f8fafc}.wa-queue-current h4{font-size:14px}.wa-queue-history-row{font-size:12px}

/* Staff & Pickup Access */
.staff-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.staff-config-card{padding:16px!important}.staff-panel-head{display:flex;gap:10px;align-items:flex-start;margin-bottom:14px}.staff-panel-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#edf5ff;color:#1768bd;font-size:18px;font-weight:900;flex:0 0 auto}.staff-panel-head h3{margin:0;color:#17345d;font-size:14px}.staff-panel-head p{margin:3px 0 0;color:#7e8ca0;font-size:11px;line-height:1.4}.staff-form-grid label{margin-top:0}.staff-primary-actions{margin-top:13px}.staff-primary-actions .btn{min-height:41px}.staff-temp-list{margin-top:14px}
.current-staff-panel{padding:16px!important}.staff-list-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.staff-list-heading h3{margin:0;color:#17345d;font-size:15px}.staff-list-heading span{display:block;margin-top:3px;color:#7e8ca0;font-size:11px}.staff-count-note{padding:5px 8px;border-radius:999px;background:#f1f4f8;color:#6b7a8e!important;font-size:10px!important;font-weight:850;white-space:nowrap}.staff-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.staff-card-modern{margin:0!important;padding:15px!important;border-color:#e4eaf1!important;box-shadow:0 4px 16px rgba(16,42,86,.03)}.staff-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.staff-identity{display:flex;gap:10px;align-items:flex-start;min-width:0}.staff-avatar{display:grid;place-items:center;width:37px;height:37px;border-radius:11px;background:#edf5ff;color:#1768bd;font-size:15px;font-weight:900;flex:0 0 auto}.staff-identity h4{margin:0;color:#29425f;font-size:13px;line-height:1.35;overflow-wrap:anywhere}.staff-role-line{margin-top:5px}.staff-role-pill{display:inline-flex;padding:4px 7px;border-radius:999px;background:#f2f4f7;color:#637388;font-size:10px;font-weight:850}.staff-access-block{margin-top:13px;padding-top:12px;border-top:1px solid #edf1f5}.staff-block-title{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.staff-block-title strong{color:#405570;font-size:12px}.staff-block-title span{color:#8996a7;font-size:10px;text-align:right;line-height:1.35}.staff-assignment-list{margin-top:8px}.staff-assignment-row{padding:8px 9px;background:#f9fbfd}.staff-assignment-row .btn{min-height:32px;padding:5px 8px;font-size:10px}.staff-inline-empty{margin-top:8px;padding:9px;border:1px dashed #dbe3ed;border-radius:9px;color:#8793a5;font-size:11px;background:#fbfcfe}.staff-assign-control{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:9px}.staff-assign-control select{height:38px;padding:8px 9px}.staff-assign-control .btn{min-height:38px}.staff-card-actions{margin-top:9px}.staff-card-actions .btn,.pickup-access-actions .btn{min-height:36px;padding:7px 9px;font-size:10px}.pickup-access-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.staff-empty-state{grid-column:1/-1}

/* Driver Delivery Oversight */
.driver-oversight-summary-panel,.driver-oversight-ledger-panel{padding:16px!important}.driver-oversight-ledger-panel{margin-top:14px}.driver-oversight-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.driver-oversight-filter-grid label{margin:0 0 5px;font-size:10px;text-transform:uppercase;letter-spacing:.03em;color:#7d8a9c}.driver-oversight-filter-grid select,.driver-oversight-filter-grid input{height:40px;padding:9px 10px;border-radius:9px}.driver-oversight-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:13px}.driver-oversight-kpi{padding:12px;border:1px solid #e6ebf2;border-radius:12px;background:#f8fafc}.driver-oversight-kpi small{display:block;color:#7b899c;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.03em}.driver-oversight-kpi strong{display:block;margin-top:5px;color:#17345d;font-size:20px;letter-spacing:-.02em}.driver-oversight-kpi span{display:block;margin-top:3px;color:#8b97a7;font-size:10px}.driver-oversight-kpi.is-total{background:#eefaf4;border-color:#dcefe5}.driver-oversight-kpi.is-total strong{color:#0b8954}.driver-oversight-group-summary{margin-top:13px;background:#fbfcfe}.driver-oversight-group-summary .summary-row{gap:12px;font-size:11px}.driver-oversight-actions{margin-top:12px}.driver-oversight-actions .btn{min-height:38px;font-size:11px}.driver-oversight-ledger-head{margin-bottom:11px}.driver-oversight-ledger-head h3{margin:0;color:#17345d;font-size:14px}.driver-oversight-ledger-head span{display:block;margin-top:3px;color:#7e8ca0;font-size:11px}.driver-oversight-table-wrap{border:1px solid #e5ebf2;border-radius:12px;overflow:auto}.driver-oversight-table{font-size:12px}.driver-oversight-table th{background:#f7f9fc;color:#77859a;font-size:10px;text-transform:uppercase;letter-spacing:.03em}.driver-oversight-table td{color:#405570}.driver-collection-amount{color:#0b8954!important;font-weight:900}.driver-oversight-empty{margin-top:10px}

/* Responsive/mobile finish for these sections. */
@media(max-width:1100px){.document-directory,.staff-directory{grid-template-columns:1fr}.modern-wa-grid{grid-template-columns:1fr}.driver-oversight-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){
  .documents-heading-row,.whatsapp-heading-row,.staff-heading-row,.driver-oversight-heading-row{flex-direction:column;align-items:stretch;gap:11px;margin-bottom:14px}.documents-heading-row h2,.whatsapp-heading-row h2,.staff-heading-row h2,.driver-oversight-heading-row h2{font-size:26px}.documents-upload-btn{width:100%;min-height:44px}
  .admin-finish-modal-card{width:100%!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important}.admin-finish-modal-card>.modal-head{padding:13px 14px!important}.admin-finish-modal-body{padding:14px 14px 20px}
  .staff-config-grid{grid-template-columns:1fr}.wa-filter-grid{grid-template-columns:1fr 1fr}.wa-search-field{grid-column:1/-1}.driver-oversight-filter-grid{grid-template-columns:1fr 1fr}.driver-oversight-filter-grid>div:last-child{grid-column:1/-1}
}
@media(max-width:700px){
  .admin-shell input,.admin-shell select,.admin-shell textarea{font-size:16px}
  .documents-panel,.wa-contacts-panel,.wa-composer-panel,.staff-config-card,.current-staff-panel,.driver-oversight-summary-panel,.driver-oversight-ledger-panel{padding:14px!important}
  .documents-toolbar{flex-direction:column;align-items:stretch;gap:8px}.documents-search-wrap{max-width:none}.document-count-pill{align-self:flex-start}.document-card-head{grid-template-columns:auto minmax(0,1fr)}.document-visibility{grid-column:2;justify-self:start}.document-card-actions{display:grid;grid-template-columns:1fr 1fr}.document-card-actions .btn{width:100%;min-height:42px}
  .wa-filter-grid,.driver-oversight-filter-grid{grid-template-columns:1fr}.wa-search-field,.driver-oversight-filter-grid>div:last-child{grid-column:auto}.wa-selection-bar{align-items:flex-start;flex-direction:column}.wa-selection-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.wa-selection-actions .btn{width:100%;min-height:40px}.modern-wa-list{max-height:none}.wa-contact-card{grid-template-columns:auto minmax(0,1fr);align-items:start;padding:11px}.wa-readiness{grid-column:2;justify-self:start}.wa-contact-line{font-size:11px}.wa-preview-heading{align-items:flex-start;flex-direction:column;gap:2px}.wa-queue-actions{display:grid;grid-template-columns:1fr 1fr}.wa-queue-actions .btn{width:100%}.wa-queue-actions .btn:first-child{grid-column:1/-1}
  .staff-list-heading{align-items:flex-start}.staff-block-title{display:block}.staff-block-title span{text-align:left;margin-top:3px}.staff-assign-control{grid-template-columns:1fr}.staff-assign-control .btn{width:100%;min-height:42px}.staff-card-actions,.pickup-access-actions{display:grid;grid-template-columns:1fr 1fr}.staff-card-actions .btn,.pickup-access-actions .btn{width:100%;min-height:42px}
  .driver-oversight-kpis{grid-template-columns:1fr 1fr}.driver-oversight-actions{display:grid;grid-template-columns:1fr 1fr}.driver-oversight-actions .btn{width:100%;min-height:42px}.driver-oversight-actions .btn:first-child{grid-column:1/-1}.driver-oversight-group-summary .summary-row{display:block}.driver-oversight-group-summary .summary-row strong:last-child{display:block;margin-top:4px}
  .driver-oversight-table-wrap{border:0;overflow:visible}.driver-oversight-table,.driver-oversight-table tbody,.driver-oversight-table tr,.driver-oversight-table td{display:block;width:100%}.driver-oversight-table thead{display:none}.driver-oversight-table tr{margin-bottom:10px;padding:7px 10px;border:1px solid #e5ebf2;border-radius:12px;background:#fff}.driver-oversight-table td{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:7px 0!important;border-bottom:1px solid #eff2f6!important;text-align:right;white-space:normal;overflow-wrap:anywhere}.driver-oversight-table td:last-child{border-bottom:0!important}.driver-oversight-table td:before{content:attr(data-label);flex:0 0 92px;text-align:left;color:#7d899a;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.03em}.driver-oversight-table td>*{margin-left:auto}
  .admin-shell .customer-profile-modal-card>.table-wrap td:before,.admin-shell .container-manifest-modal-card .manifest-table-wrap td:before{font-size:10px!important}
}
@media(max-width:430px){.documents-heading-row h2,.whatsapp-heading-row h2,.staff-heading-row h2,.driver-oversight-heading-row h2{font-size:24px}.driver-oversight-kpis{grid-template-columns:1fr 1fr}.driver-oversight-kpi strong{font-size:18px}.staff-card-head{display:block}.staff-card-head>.access-badge{margin-top:9px}.staff-card-actions,.pickup-access-actions{grid-template-columns:1fr}.document-card-head{grid-template-columns:auto minmax(0,1fr)} }

@media(prefers-reduced-motion:reduce){.admin-shell *, .admin-shell *:before,.admin-shell *:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* ==========================================================
   V23.12.46 — Driver Activity Audit + Driver Display Names
   ========================================================== */
.staff-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.staff-email-line{font-size:12px;color:#6b7788;margin-top:2px;overflow-wrap:anywhere}
.staff-driver-name-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;padding:12px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;margin-bottom:14px}
.staff-driver-name-control label{display:block;font-size:11px;font-weight:800;color:#516174;margin-bottom:5px;text-transform:uppercase;letter-spacing:.035em}
.staff-driver-name-control input{width:100%;min-height:42px}

.driver-oversight-tabs{display:inline-flex;gap:4px;padding:4px;background:#edf2f7;border:1px solid #dde5ed;border-radius:12px;margin:4px 0 14px}
.driver-oversight-tab{border:0;background:transparent;color:#526274;border-radius:9px;padding:9px 15px;font-size:12px;font-weight:800;cursor:pointer;min-height:38px}
.driver-oversight-tab:hover{background:rgba(255,255,255,.7);color:#173a63}
.driver-oversight-tab.active{background:#fff;color:#173a63;box-shadow:0 1px 5px rgba(23,58,99,.12)}
.driver-oversight-tab:focus-visible{outline:3px solid rgba(37,99,235,.28);outline-offset:2px}

.driver-activity-summary-panel{margin-bottom:14px}
.driver-activity-filter-grid{display:grid;grid-template-columns:1.1fr 1fr .9fr 1.15fr .8fr;gap:12px;align-items:end}
.driver-activity-filter-grid label{font-size:11px;font-weight:800;color:#566577;text-transform:uppercase;letter-spacing:.035em;margin-bottom:5px}
.driver-activity-filter-grid input,.driver-activity-filter-grid select{min-height:42px}
.driver-activity-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:14px}
.driver-activity-kpi{border:1px solid #e1e7ee;border-radius:13px;padding:12px;background:#fff;min-width:0}
.driver-activity-kpi small{display:block;font-size:10px;font-weight:900;color:#667589;text-transform:uppercase;letter-spacing:.045em;margin-bottom:5px}
.driver-activity-kpi strong{display:block;font-size:15px;line-height:1.25;color:#1e334d;overflow-wrap:anywhere}
.driver-activity-kpi span{display:block;font-size:11px;color:#738195;margin-top:5px;line-height:1.35}
.driver-activity-kpi.is-success{background:#f4fbf6;border-color:#cfe8d6}
.driver-activity-kpi.is-success strong{color:#17733b}

.driver-activity-ledger-panel{padding-top:16px}
.driver-activity-timeline{display:grid;gap:9px;margin-top:12px}
.driver-activity-item{display:grid;grid-template-columns:38px minmax(0,1fr);gap:11px;border:1px solid #e2e8ef;border-radius:13px;padding:12px;background:#fff}
.driver-activity-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-size:16px;font-weight:900;background:#eef3f8;color:#35526f}
.driver-activity-main{min-width:0}
.driver-activity-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.driver-activity-top strong{display:block;font-size:13px;color:#20364f}
.driver-activity-driver{display:block;font-size:11px;color:#667589;margin-top:2px;overflow-wrap:anywhere}
.driver-activity-top time{font-size:11px;color:#718096;white-space:nowrap}
.driver-activity-context{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:7px;font-size:11px;color:#526274}
.driver-activity-context span{display:inline-flex;gap:3px;align-items:center;line-height:1.35}
.driver-activity-item.is-delivered .driver-activity-icon{background:#eaf8ef;color:#17733b}
.driver-activity-item.is-route .driver-activity-icon{background:#eef4ff;color:#2b62aa}
.driver-activity-item.is-payment .driver-activity-icon{background:#edf9f2;color:#17733b}
.driver-activity-item.is-proof .driver-activity-icon{background:#f3efff;color:#6545a4}
.driver-activity-item.is-login .driver-activity-icon{background:#eef7ff;color:#236b9c}
.driver-activity-item.is-logout .driver-activity-icon{background:#f3f4f6;color:#5b6470}
.driver-activity-item.is-reopen .driver-activity-icon{background:#fff7e8;color:#9a6812}
.driver-activity-item.is-note .driver-activity-icon{background:#f8f3ff;color:#7250a4}

@media(max-width:1180px){
  .driver-activity-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .driver-activity-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:820px){
  .staff-form-grid{grid-template-columns:1fr}
  .driver-activity-filter-grid{grid-template-columns:1fr 1fr}
  .driver-activity-kpis{grid-template-columns:1fr 1fr}
  .driver-activity-top{display:block}
  .driver-activity-top time{display:block;margin-top:4px;white-space:normal}
}
@media(max-width:560px){
  .staff-driver-name-control{grid-template-columns:1fr}
  .staff-driver-name-control .btn{width:100%}
  .driver-oversight-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .driver-oversight-tab{width:100%;font-size:12px}
  .driver-activity-filter-grid,.driver-activity-kpis{grid-template-columns:1fr}
  .driver-activity-item{grid-template-columns:34px minmax(0,1fr);padding:11px}
  .driver-activity-icon{width:32px;height:32px;border-radius:9px}
  .driver-activity-top strong{font-size:14px}
  .driver-activity-driver,.driver-activity-top time,.driver-activity-context{font-size:12px}
}


/* ============================================================
   V23.12.47 — Mobile-first Driver Portal
   Isolated visual/layout pass. Existing delivery/payment/proof RPCs remain intact.
   ============================================================ */
.driver-mobile-portal{max-width:980px!important;margin:0 auto!important;color:#17345d}
.driver-portal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:4px 0 12px;padding:14px 16px;border:1px solid #dfe7f0;border-radius:18px;background:#fff;box-shadow:0 6px 18px rgba(23,52,93,.06)}
.driver-portal-identity{display:flex;align-items:center;gap:12px;min-width:0}.driver-avatar{width:48px;height:48px;flex:0 0 48px;border-radius:14px;background:#eef5ff;display:grid;place-items:center;font-size:24px}.driver-portal-copy{min-width:0}.driver-eyebrow{display:block;color:#6f8096;font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.driver-portal-copy h1{font-size:22px;line-height:1.15;margin:3px 0 0;color:#17345d;letter-spacing:-.025em}.driver-welcome-email{margin-top:3px;color:#75869b;font-size:12px;overflow-wrap:anywhere}.driver-head-logout{min-height:42px;white-space:nowrap}
.driver-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}.driver-kpi-card{display:flex;align-items:center;gap:10px;padding:13px;border:1px solid #e1e8f0;border-radius:16px;background:#fff;min-width:0}.driver-kpi-card .driver-kpi-icon{width:38px;height:38px;flex:0 0 38px;border-radius:12px;display:grid;place-items:center;background:#eef5ff;color:#205ca3;font-size:18px;font-weight:900}.driver-kpi-card small{display:block;color:#728196;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.035em}.driver-kpi-card strong{display:block;margin-top:2px;font-size:20px;color:#17345d;letter-spacing:-.03em;overflow-wrap:anywhere}.driver-kpi-card.is-success .driver-kpi-icon{background:#ebf8f0;color:#16824a}.driver-kpi-card.is-warning .driver-kpi-icon{background:#fff6e5;color:#b46f06}.driver-kpi-card.is-money .driver-kpi-icon{background:#edf9f2;color:#16824a}
.driver-control-panel{padding:14px!important;margin-bottom:12px!important}.driver-main-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;background:#edf2f7;border:1px solid #dfe6ee;border-radius:13px;padding:4px;margin-bottom:13px}.driver-main-tab{border:0;background:transparent;color:#607187;font-weight:850;min-height:42px;border-radius:10px;cursor:pointer}.driver-main-tab.active{background:#fff;color:#17345d;box-shadow:0 1px 5px rgba(23,52,93,.12)}.driver-main-tab:focus-visible,.driver-status-tab:focus-visible,.driver-action-btn:focus-visible,.driver-big-action:focus-visible,.driver-secondary-btn:focus-visible,.driver-issue-chips button:focus-visible{outline:3px solid rgba(37,99,235,.28);outline-offset:2px}
.driver-filter-grid{display:grid;grid-template-columns:minmax(190px,.75fr) minmax(0,1.5fr);gap:10px}.driver-filter-grid label,.driver-report-filter label{display:block;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:#6d7c91;margin-bottom:5px}.driver-filter-grid select,.driver-filter-grid input,.driver-report-filter select{width:100%;min-height:44px;border-radius:11px;font-size:14px}.driver-status-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:11px}.driver-status-tab{border:1px solid #dce4ed;background:#fff;color:#5c6e83;border-radius:11px;min-height:42px;font-size:12px;font-weight:850;cursor:pointer}.driver-status-tab span{display:inline-grid;place-items:center;min-width:22px;height:22px;margin-left:5px;padding:0 6px;border-radius:999px;background:#eef2f6;color:#607187;font-size:10px}.driver-status-tab.active{background:#173f70;border-color:#173f70;color:#fff}.driver-status-tab.active span{background:rgba(255,255,255,.18);color:#fff}.driver-toolbar-actions{display:flex;justify-content:flex-end;margin-top:10px}.driver-toolbar-actions .btn{min-height:40px;font-size:12px}
.driver-delivery-list{display:grid;gap:12px}.modern-driver-card{margin:0!important;border-radius:18px!important;padding:15px!important;box-shadow:0 6px 18px rgba(23,52,93,.055)!important;overflow:hidden}.modern-driver-card.is-route{border-left:4px solid #2f6cdf}.modern-driver-card.is-delivered{border-left:4px solid #21a05a}.modern-driver-card.is-pending{border-left:4px solid #b7c2cf}.driver-card-top{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:start}.driver-stop-number{width:32px;height:32px;border-radius:10px;background:#f0f4f8;color:#4c6078;display:grid;place-items:center;font-size:12px;font-weight:900}.driver-card-title{min-width:0}.driver-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px 8px;color:#738399;font-size:11px}.driver-invoice-number{font-size:15px;font-weight:950;color:#17345d;letter-spacing:.01em}.driver-card-title h3{margin:5px 0 0!important;font-size:18px!important;color:#17345d!important;line-height:1.2!important}.driver-status-pill{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.025em}.driver-status-pill.is-pending{background:#eff2f5;color:#586a80}.driver-status-pill.is-route{background:#eaf2ff;color:#2460ac}.driver-status-pill.is-delivered{background:#eaf8ef;color:#177a42}.driver-card-balance{text-align:right;min-width:90px}.driver-card-balance small{display:block;color:#7a899b;font-size:10px;font-weight:850;text-transform:uppercase}.driver-card-balance strong{display:block;margin-top:2px;color:#b42318;font-size:16px}.modern-driver-card.is-delivered .driver-card-balance strong{color:#486078}
.driver-contact-panel{display:grid;gap:6px;margin:12px 0;padding:11px 12px;border-radius:13px;background:#f8fafc;border:1px solid #e9eef3}.driver-contact-line{display:grid;grid-template-columns:20px minmax(0,1fr);gap:7px;align-items:start;color:#425770;font-size:13px;line-height:1.35}.driver-contact-line>span:first-child{color:#2f6cdf;font-weight:900;text-align:center}.driver-contact-line a{color:#173f70;text-decoration:none;font-weight:750}
.driver-primary-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.driver-action-btn{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:8px;border:1px solid #dce4ec;border-radius:11px;background:#fff;color:#26425f;text-decoration:none;font-size:12px;font-weight:850}.driver-action-btn.is-call{background:#eef5ff;color:#235ea5;border-color:#d9e8fb}.driver-action-btn.is-whatsapp{background:#ecfaf2;color:#168249;border-color:#d4efdf}.driver-action-spacer{min-height:44px;border:1px solid transparent;border-radius:11px;background:transparent;pointer-events:none}
.driver-status-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:8px}.driver-big-action{min-height:46px;border-radius:11px;border:1px solid #dce4ed;background:#fff;font-size:12px;font-weight:900;cursor:pointer}.driver-big-action.is-route{color:#225eaa;background:#eef5ff;border-color:#d7e7fa}.driver-big-action.is-route.is-current{background:#2f6cdf;border-color:#2f6cdf;color:#fff}.driver-big-action.is-delivered{color:#177a42;background:#ecf9f1;border-color:#d1ecd9}.driver-big-action.is-delivered.is-current{background:#21a05a;border-color:#21a05a;color:#fff}.driver-big-action.is-undo{color:#805b13;background:#fff9ec;border-color:#f0dfb5}.driver-big-action.is-pay{background:#173f70;border-color:#173f70;color:#fff}.driver-big-action.is-paid{background:#eef8f2;border-color:#d7eadf;color:#2c724b}.driver-big-action:disabled{cursor:default;opacity:1}
.driver-issue-area{margin-top:10px;padding-top:10px;border-top:1px solid #edf1f5}.driver-issue-area>span{display:block;font-size:10px;font-weight:900;color:#7b899a;text-transform:uppercase;letter-spacing:.04em;margin-bottom:7px}.driver-issue-chips{display:flex;flex-wrap:wrap;gap:6px}.driver-issue-chips button{min-height:34px;border:1px solid #e1e6ec;border-radius:999px;background:#fff;color:#53667d;padding:6px 10px;font-size:11px;font-weight:750;cursor:pointer}.driver-issue-chips button:hover{background:#f8fafc}
.driver-secondary-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px;padding-top:10px;border-top:1px solid #edf1f5}.driver-secondary-btn{min-height:42px;border:1px solid #dfe6ed;border-radius:10px;background:#fff;color:#405875;font-size:11px;font-weight:800;cursor:pointer}.driver-secondary-btn.has-content{background:#f4f8ff;border-color:#d9e7fa;color:#245f9f}.driver-secondary-btn.is-wide{grid-column:1/-1}.driver-empty-state{display:grid;gap:5px;text-align:center;padding:28px 16px;border:1px dashed #d6dfe8;border-radius:16px;background:#fff;color:#6f8094}.driver-empty-state strong{color:#2d425c}.driver-empty-state span{font-size:12px}
.driver-collections-card{padding:16px!important}.driver-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:12px}.driver-section-head h2{margin:3px 0 0!important;font-size:20px!important}.driver-container-totals{margin-top:12px}.driver-report-filter{margin-top:12px}.driver-collection-actions{margin-top:12px}.driver-collection-actions .btn{min-height:42px}.driver-login-page .modal{z-index:1400}.driver-login-page .modal-card{max-height:90dvh}.driver-login-page .modal-head{position:sticky;top:-16px;z-index:2;background:#fff;padding:12px 0 10px;margin-top:-12px}
@media(min-width:760px){.driver-delivery-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.modern-driver-card{height:100%}.driver-secondary-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:759px){
 .driver-login-page{background:#f3f6fa}.driver-login-header{padding:14px 14px 5px;align-items:center}.driver-login-header .driver-brand-mark{margin:0}.driver-login-header .driver-logo-box{width:42px;height:42px;border-radius:12px;font-size:13px}.driver-login-header .driver-brand-name{font-size:19px}.driver-login-header .driver-brand-sub{font-size:12px;text-align:left}.driver-login-header>#driverLogout{display:none!important}.driver-login-shell{padding:8px 10px 26px}.driver-login-page #driverPortal{margin:0 auto!important}.driver-portal-head{border-radius:15px;padding:12px}.driver-avatar{width:42px;height:42px;flex-basis:42px;border-radius:12px;font-size:20px}.driver-portal-copy h1{font-size:18px}.driver-welcome-email{font-size:11px}.driver-head-logout{min-height:38px;padding:7px 10px;font-size:11px}.driver-kpi-grid{grid-template-columns:1fr 1fr;gap:7px}.driver-kpi-card{padding:10px;gap:8px;border-radius:13px}.driver-kpi-card .driver-kpi-icon{width:34px;height:34px;flex-basis:34px;border-radius:10px;font-size:15px}.driver-kpi-card strong{font-size:18px}.driver-control-panel{padding:10px!important;border-radius:15px!important}.driver-filter-grid{grid-template-columns:1fr}.driver-filter-grid select,.driver-filter-grid input{font-size:16px;min-height:46px}.driver-status-tabs{gap:5px}.driver-status-tab{min-height:44px;padding:5px;font-size:11px}.driver-toolbar-actions{display:none}.modern-driver-card{padding:12px!important;border-radius:15px!important}.driver-card-top{grid-template-columns:30px minmax(0,1fr);gap:8px}.driver-stop-number{width:28px;height:28px;border-radius:9px}.driver-card-balance{grid-column:2;text-align:left;display:flex;align-items:baseline;gap:7px;min-width:0}.driver-card-balance small{display:inline}.driver-card-balance strong{display:inline;font-size:15px}.driver-card-title h3{font-size:17px!important}.driver-card-meta{font-size:10px}.driver-invoice-number{font-size:15px}.driver-action-spacer{min-height:46px}.driver-contact-panel{margin:10px 0;padding:10px}.driver-contact-line{font-size:12px}.driver-primary-actions{grid-template-columns:repeat(3,1fr)}.driver-action-btn{min-height:46px;font-size:11px;flex-direction:column;gap:2px}.driver-status-actions{grid-template-columns:1fr 1fr}.driver-big-action{min-height:48px;font-size:12px}.driver-big-action.is-pay,.driver-big-action.is-paid{grid-column:1/-1}.driver-issue-chips{display:grid;grid-template-columns:1fr 1fr}.driver-issue-chips button{border-radius:10px;min-height:40px;padding:7px}.driver-secondary-actions{grid-template-columns:1fr 1fr}.driver-secondary-btn{min-height:44px;font-size:11px}.driver-collection-grid{grid-template-columns:1fr 1fr!important}.driver-collection-card{padding:11px}.driver-collection-card span{font-size:19px}.driver-section-head{align-items:center}.driver-login-page .modal{padding:0;align-items:stretch}.driver-login-page .modal-card{width:100%!important;max-height:100dvh;height:100dvh;border-radius:0!important;padding:16px;padding-bottom:max(20px,env(safe-area-inset-bottom))}.driver-login-page .modal-head{top:-16px}.driver-login-footer{padding-top:0}
}
@media(max-width:380px){.driver-head-logout{padding:6px 8px}.driver-welcome-email{display:none}.driver-kpi-card small{font-size:9px}.driver-kpi-card strong{font-size:17px}.driver-status-tab span{display:none}.driver-primary-actions{gap:5px}.driver-action-btn{font-size:10px}.driver-status-actions{grid-template-columns:1fr}.driver-big-action.is-pay,.driver-big-action.is-paid{grid-column:auto}.driver-issue-chips,.driver-secondary-actions{grid-template-columns:1fr}}

.driver-login-page #driverLogout{display:none!important}

/* =========================================================
   V23.12.48 — Modern Public Tracking (Spanish-first)
   ========================================================= */
.track-modern-page{background:#f6f8fb;color:#17345d;min-height:100vh}
.track-modern-page .track-modern-header{max-width:1120px;padding:24px 22px 10px}
.track-modern-brand{text-decoration:none;color:inherit;min-width:0}
.track-modern-logo{width:46px;height:46px;border:0;border-radius:13px;background:#edf4ff;color:#1769e0;box-shadow:none}
.track-modern-logo svg{width:28px;height:28px;fill:currentColor}
.track-modern-page .track-title{font-size:20px;letter-spacing:.02em;color:#17345d}
.track-modern-page .track-subbrand{font-size:13px;color:#6c7c93;margin-top:2px}
.track-lang-toggle{box-shadow:none;background:#fff}
.track-modern-shell{max-width:1120px;padding:22px 22px 44px}
.track-search-panel{padding:36px 42px;background:#fff;border:1px solid #e2e8f0;border-radius:22px;box-shadow:0 10px 32px rgba(38,78,130,.06)}
.track-search-copy{max-width:700px}
.track-kicker,.track-section-kicker,.track-result-label{font-size:11px;line-height:1.2;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:#6f819a}
.track-search-panel h1{font-size:38px;line-height:1.08;margin:7px 0 8px;color:#122d54;letter-spacing:-.025em}
.track-modern-page .track-intro{text-align:left;max-width:680px;margin:0;color:#667790;font-size:16px;line-height:1.55}
.track-modern-search{margin-top:26px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}
.track-input-wrap{min-width:0}
.track-input-wrap label{margin:0 0 7px;color:#314b6e;font-size:12px}
.track-modern-search input{min-width:0;width:100%;height:52px;border-radius:12px;border:1px solid #cbd6e5;padding:0 15px;font-size:17px;background:#fff;color:#17345d}
.track-modern-search input:focus{outline:3px solid rgba(23,105,224,.14);border-color:#1769e0}
.track-example{font-size:12px;color:#7c8ba0;margin-top:6px}
.track-search-btn{height:52px;min-width:170px;border-radius:12px;padding:0 22px;font-size:15px}
.track-search-btn:disabled{opacity:.65;cursor:wait}
.track-message{min-height:18px;margin:12px 0 0;font-size:13px}
.track-result{margin-top:18px;background:#fff;border:1px solid #e2e8f0;border-radius:22px;padding:30px 32px;box-shadow:0 10px 32px rgba(38,78,130,.05)}
.track-result-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding-bottom:18px}
.track-invoice-number{font-size:30px;line-height:1.1;font-weight:900;letter-spacing:-.02em;color:#122d54;margin-top:4px}
.track-last-updated{font-size:12px;color:#708199;text-align:right;line-height:1.4}
.track-status-card{display:flex;gap:16px;align-items:center;border:1px solid #dbe7f6;background:#f6f9fe;border-radius:16px;padding:20px 22px}
.track-status-icon{width:48px;height:48px;flex:0 0 48px;border-radius:50%;display:grid;place-items:center;background:#e8f1ff;color:#1769e0;font-size:24px;font-weight:900}
.track-status-copy{min-width:0}
.track-status-label{font-size:11px;font-weight:800;color:#74859b;text-transform:uppercase;letter-spacing:.07em}
.track-status-title{font-size:25px;font-weight:900;color:#153760;margin-top:3px}
.track-status-description{font-size:14px;color:#566a84;line-height:1.45;margin-top:3px}
.track-status-card.is-delivered{background:#f1fbf5;border-color:#ccebd8}.track-status-card.is-delivered .track-status-icon{background:#daf3e3;color:#15803d}.track-status-card.is-delivered .track-status-title{color:#146b37}
.track-status-card.is-customs{background:#fffaf0;border-color:#f0dfb8}.track-status-card.is-customs .track-status-icon{background:#fff0c7;color:#a46800}.track-status-card.is-customs .track-status-title{color:#7e5000}
.track-status-card.is-route .track-status-icon,.track-status-card.is-transit .track-status-icon{background:#e7f0ff;color:#1769e0}
.track-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:22px 0 4px;border:1px solid #e6ebf2;border-radius:15px;overflow:hidden}
.track-info-card{display:flex;gap:10px;align-items:flex-start;padding:16px 17px;min-width:0;border-right:1px solid #e9edf3;background:#fff}
.track-info-card:last-child{border-right:0}
.track-info-icon{width:29px;height:29px;flex:0 0 29px;border-radius:9px;background:#f0f5fc;color:#1769e0;display:grid;place-items:center;font-weight:900}
.track-info-label{font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;color:#8290a3}
.track-info-value{font-size:13px;font-weight:750;color:#263d5c;line-height:1.35;margin-top:3px;overflow-wrap:anywhere}
.track-history-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-top:28px;padding-top:22px;border-top:1px solid #e7ebf0}
.track-history-head h2{font-size:20px;color:#17345d;margin:3px 0 0}
.track-history-toggle{border:0;background:transparent;color:#1769e0;font-weight:800;font-size:12px;cursor:pointer;padding:10px 0}
.track-history-toggle:focus-visible{outline:3px solid rgba(23,105,224,.16);outline-offset:3px;border-radius:6px}
.track-history-list{display:grid;gap:9px;margin-top:13px}
.track-event-card-public{display:grid;grid-template-columns:30px minmax(0,1fr);gap:11px;padding:14px 15px;border:1px solid #e6ebf2;border-radius:13px;background:#fff}
.track-event-card-public.is-current{background:#f5f9ff;border-color:#d7e5f8}
.track-event-marker{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#edf3fa;color:#547190;font-size:12px;font-weight:900}
.track-event-card-public.is-current .track-event-marker{background:#1769e0;color:#fff}
.track-event-content{min-width:0}
.track-event-title-row{display:flex;align-items:center;gap:8px;justify-content:space-between}
.track-event-title-row h3{font-size:14px;line-height:1.3;margin:0;color:#203a5d}
.track-current-pill{display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;background:#e5efff;color:#1769e0;font-size:10px;font-weight:850;white-space:nowrap}
.track-event-content p{font-size:12px;color:#667790;line-height:1.45;margin:4px 0 0}
.track-event-meta{font-size:11px;color:#8794a7;line-height:1.4;margin-top:5px}
.track-empty{padding:18px;border:1px dashed #d9e1eb;border-radius:12px;color:#78889e;text-align:center;font-size:13px}
.track-modern-footer{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:#7a899d;padding:4px 20px 30px}
.track-modern-footer a{color:#50709b;text-decoration:none;font-weight:700}
.track-modern-footer a:hover{text-decoration:underline}
@media(max-width:860px){
  .track-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .track-info-card:nth-child(2){border-right:0}.track-info-card:nth-child(-n+2){border-bottom:1px solid #e9edf3}
}
@media(max-width:700px){
  .track-modern-page .track-modern-header{padding:18px 16px 8px;align-items:center}
  .track-modern-logo{width:40px;height:40px;border-radius:11px}.track-modern-logo svg{width:24px;height:24px}
  .track-modern-page .track-title{font-size:17px}.track-modern-page .track-subbrand{font-size:12px}
  .track-lang-toggle button{padding:6px 9px;font-size:12px}
  .track-modern-shell{padding:14px 12px 34px}
  .track-search-panel{padding:24px 18px;border-radius:17px}
  .track-search-panel h1{font-size:30px}
  .track-modern-page .track-intro{font-size:14px}
  .track-modern-search{grid-template-columns:1fr;gap:10px;margin-top:20px}
  .track-modern-search input{height:50px;font-size:16px}.track-search-btn{height:50px;width:100%;min-width:0}
  .track-result{padding:20px 16px;border-radius:17px;margin-top:12px}
  .track-result-head{align-items:flex-start;flex-direction:column;gap:7px;padding-bottom:14px}
  .track-invoice-number{font-size:27px}.track-last-updated{text-align:left}
  .track-status-card{align-items:flex-start;padding:16px;gap:12px}
  .track-status-icon{width:42px;height:42px;flex-basis:42px;font-size:20px}.track-status-title{font-size:21px}.track-status-description{font-size:13px}
  .track-info-grid{grid-template-columns:1fr;margin-top:16px}
  .track-info-card{border-right:0!important;border-bottom:1px solid #e9edf3!important;padding:13px 14px}.track-info-card:last-child{border-bottom:0!important}
  .track-history-head{align-items:flex-start;flex-direction:column;gap:3px;margin-top:22px;padding-top:18px}
  .track-history-toggle{padding:7px 0}
  .track-event-card-public{padding:13px 12px;grid-template-columns:28px minmax(0,1fr)}
  .track-event-title-row{align-items:flex-start}.track-current-pill{margin-top:-1px}
}
@media(max-width:360px){
  .track-modern-page .track-title{font-size:15px}.track-modern-page .track-subbrand{font-size:11px}
  .track-modern-page .track-brand{gap:8px}.track-lang-toggle{padding:3px}
  .track-search-panel h1{font-size:27px}.track-result{padding-left:13px;padding-right:13px}
}

/* =========================================================
   V23.12.48.1 — Public Tracking polish + status translation
   ========================================================= */
.track-modern-page{
  background:
    radial-gradient(circle at 12% 0%,rgba(23,105,224,.055),transparent 34%),
    radial-gradient(circle at 92% 18%,rgba(42,137,213,.04),transparent 30%),
    #f6f8fb;
}
.track-search-panel{
  position:relative;
  overflow:hidden;
}
.track-search-panel::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:4px;
  background:linear-gradient(90deg,#1769e0,#5ba8ff 58%,#dbeafe);
}
.track-modern-search{align-items:start}
.track-search-btn{
  margin-top:19px;
  box-shadow:0 7px 16px rgba(23,105,224,.16);
}
.track-search-btn:hover{transform:translateY(-1px)}
.track-search-btn:active{transform:translateY(0)}
.track-result{position:relative;overflow:hidden}
.track-result::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:3px;
  background:linear-gradient(90deg,#1769e0,rgba(23,105,224,.18),transparent 72%);
}
.track-status-card{
  position:relative;
  overflow:hidden;
  box-shadow:inset 4px 0 0 #1769e0;
}
.track-status-card::after{
  content:"";
  position:absolute;
  width:150px;
  height:150px;
  right:-70px;
  top:-85px;
  border-radius:50%;
  background:rgba(23,105,224,.035);
  pointer-events:none;
}
.track-status-icon svg{width:25px;height:25px;fill:currentColor;display:block}
.track-status-card.is-delivered{box-shadow:inset 4px 0 0 #15803d}
.track-status-card.is-customs{box-shadow:inset 4px 0 0 #b77900}
.track-status-card.is-released{background:#f3fbf7;border-color:#d1eadc;box-shadow:inset 4px 0 0 #258356}
.track-status-card.is-released .track-status-icon{background:#ddf3e7;color:#1f7a4d}
.track-status-card.is-released .track-status-title{color:#17633e}
.track-status-card.is-team{background:#f1f7ff;border-color:#d3e5f8;box-shadow:inset 4px 0 0 #2f6fa9}
.track-status-card.is-team .track-status-icon{background:#dcecff;color:#245f96}
.track-status-card.is-team .track-status-title{color:#1d527f}
.track-info-card{transition:background .16s ease}
@media(hover:hover) and (pointer:fine){
  .track-info-card:hover{background:#f9fbfe}
}
@media(max-width:700px){
  .track-search-btn{margin-top:0;box-shadow:none}
  .track-search-btn:hover{transform:none}
  .track-search-panel::before{height:3px}
}
@media(prefers-reduced-motion:reduce){
  .track-search-btn,.track-info-card{transition:none!important}
}
