:root{--bg:#f5f7fb;--card:#fff;--text:#172033;--muted:#68728a;--line:#e2e7f0;--primary:#174ea6;--dark:#0f1f38;--green:#15803d;--red:#b91c1c}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text);background:var(--bg)}a{color:var(--primary);text-decoration:none}.layout{display:flex;min-height:100vh}.sidebar{width:245px;background:var(--dark);color:#fff;padding:24px 16px;position:fixed;inset:0 auto 0 0}.brand{font-size:22px;font-weight:800;padding:4px 10px 22px}.brand small{display:block;font-size:11px;opacity:.65;letter-spacing:1px;margin-top:3px}.sidebar nav{display:flex;flex-direction:column;gap:5px}.sidebar nav a{display:block;color:#dbe7fb;padding:11px 12px;border-radius:8px}.sidebar nav a:hover{background:#183257}.sidebar .muted{opacity:.45;cursor:default}.nav-section{font-size:10px;letter-spacing:1.2px;color:#7690b5;margin:18px 12px 4px}.main{margin-left:245px;width:calc(100% - 245px)}.topbar{height:68px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:4}.content{padding:28px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:19px;box-shadow:0 3px 12px rgba(16,32,56,.04)}.metric .label{color:var(--muted);font-size:13px}.metric .value{font-size:28px;font-weight:800;margin-top:8px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.toolbar{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-bottom:16px}.btn{display:inline-block;border:0;border-radius:8px;padding:10px 14px;background:var(--primary);color:#fff;font-weight:600;cursor:pointer}.btn.secondary{background:#fff;color:var(--text);border:1px solid var(--line)}.btn.danger{background:var(--red)}table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);font-size:13px}th{background:#f8fafc;color:#4c5870;font-size:12px}tr:last-child td{border-bottom:0}.form-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px;max-width:980px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.field label{display:block;font-size:12px;font-weight:700;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:11px;border:1px solid #cfd6e2;border-radius:8px;background:#fff}.field textarea{min-height:90px}.field.full{grid-column:1/-1}.actions{margin-top:18px;display:flex;gap:8px}.badge{display:inline-block;padding:5px 8px;border-radius:999px;background:#e8eef8;font-size:11px;font-weight:700}.alert{padding:12px 14px;border-radius:8px;margin-bottom:15px}.alert.success{background:#e9f8ef;color:#166534}.alert.info{background:#e8f1ff;color:#1e4f91}.alert.error{background:#feecec;color:#991b1b}.public{background:#fff}.public .wrap{max-width:1180px;margin:auto;padding:0 22px}.public-header{display:flex;align-items:center;justify-content:space-between;padding:18px 0}.public-nav{display:flex;gap:22px;align-items:center}.hero{padding:76px 0;background:linear-gradient(135deg,#edf4ff,#fff)}.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:35px;align-items:center}.hero h1{font-size:48px;line-height:1.08;margin:0 0 16px}.hero p{font-size:18px;color:var(--muted);line-height:1.6}.hero-panel{background:#0f1f38;color:#fff;padding:26px;border-radius:16px}.section{padding:62px 0}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service{border:1px solid var(--line);padding:20px;border-radius:12px}.public-footer{padding:28px 0;background:#0f1f38;color:#c9d6e8;margin-top:40px}.track-box{display:flex;gap:8px}.track-box input{flex:1;padding:12px;border:1px solid #cfd6e2;border-radius:8px}.timeline{border-left:3px solid #d9e4f5;margin-left:8px;padding-left:20px}.timeline-item{margin:0 0 20px}.small{font-size:12px;color:var(--muted)}@media(max-width:900px){.sidebar{position:static;width:100%}.layout{display:block}.main{margin:0;width:100%}.cards{grid-template-columns:1fr 1fr}.grid-2,.hero-grid,.services{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.public-nav{display:none}.hero h1{font-size:36px}}.table-wrap{overflow-x:auto;border-radius:12px}.row-actions{display:flex;align-items:center;gap:12px;white-space:nowrap}.row-actions form{margin:0}.link-button{background:none;border:0;padding:0;color:var(--primary);font:inherit;font-size:13px;cursor:pointer;font-weight:700}.small-btn{padding:7px 10px;font-size:12px}.btn:disabled{opacity:.45;cursor:not-allowed}.empty-state{background:#fff;border:1px dashed #cfd6e2;border-radius:12px;padding:30px;text-align:center;color:var(--muted)}.count-pill{display:inline-block;background:#e8eef8;border-radius:999px;padding:2px 8px;font-size:12px;margin-left:4px}.cards-3{grid-template-columns:repeat(3,1fr)}.metric-text{font-size:20px;font-weight:800;margin-top:8px}.large-badge{font-size:12px;padding:8px 11px}.warning-text{color:#b45309;margin-top:5px}.divider{border:0;border-top:1px solid var(--line);margin:22px 0}.workflow-mini{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:18px 0}.workflow-mini span{background:#f1f5fb;border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:12px;font-weight:700}.quote-total{text-align:right}.quote-total span{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.quote-total strong{font-size:24px}.tracking-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.route-card{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding:22px;background:#f8fafc;border:1px solid var(--line);border-radius:12px;margin:20px 0}.route-card span,.tracking-meta span{display:block;font-size:10px;letter-spacing:.8px;color:var(--muted);margin-bottom:5px}.route-card strong{display:block;font-size:16px}.route-arrow{font-size:24px;color:var(--primary)}.tracking-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}.tracking-meta>div{border:1px solid var(--line);border-radius:10px;padding:14px}.tracking-meta strong{font-size:13px}.status-delivered,.status-closed,.status-accepted,.status-converted,.status-completed{background:#dcfce7;color:#166534}.status-in-transit,.status-dispatched,.status-approved,.status-sent-to-client{background:#dbeafe;color:#1d4ed8}.status-cancelled,.status-rejected{background:#fee2e2;color:#991b1b}.status-scheduled,.status-for-dispatch,.status-draft,.status-new{background:#fef3c7;color:#92400e}@media(max-width:900px){.cards-3,.tracking-meta{grid-template-columns:1fr}.route-card{grid-template-columns:1fr}.route-arrow{transform:rotate(90deg);justify-self:center}.tracking-head{flex-direction:column}}
.kpi-money .value{font-size:24px}.cards-5{grid-template-columns:repeat(5,1fr)}.status-verified,.status-uploaded,.status-paid{background:#dcfce7;color:#166534}.status-for-verification,.status-partially-paid{background:#fef3c7;color:#92400e}.status-overdue{background:#fee2e2;color:#991b1b}.status-pending{background:#e8eef8;color:#334155}.status-ready-for-billing{background:#dbeafe;color:#1d4ed8}.file-link{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:#fff}.summary-strip{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0}.summary-chip{background:#f8fafc;border:1px solid var(--line);border-radius:10px;padding:11px 13px}.summary-chip span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}.summary-chip strong{display:block;margin-top:4px}.money-positive{color:#166534;font-weight:800}.money-negative{color:#991b1b;font-weight:800}.progress-bar{height:8px;background:#e5e7eb;border-radius:999px;overflow:hidden}.progress-bar>span{display:block;height:100%;background:#174ea6}.print-only{display:none}.report-filter{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.report-filter .field{min-width:180px}.aging-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.aging-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:15px}.aging-card span{font-size:11px;color:var(--muted)}.aging-card strong{display:block;font-size:20px;margin-top:6px}.invoice-sheet{max-width:900px;margin:auto;background:#fff;border:1px solid var(--line);padding:34px}.invoice-head{display:flex;justify-content:space-between;gap:20px}.invoice-title{font-size:30px;font-weight:800}.invoice-totals{margin-left:auto;max-width:360px}.invoice-totals>div{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--line)}.invoice-totals .grand{font-size:18px;font-weight:800;border-top:2px solid var(--text)}
@media(max-width:1100px){.cards-5,.aging-grid{grid-template-columns:repeat(2,1fr)}}
@media print{.sidebar,.topbar,.no-print,.alert{display:none!important}.main{margin:0!important;width:100%!important}.content{padding:0!important}.invoice-sheet{border:0;max-width:none}.print-only{display:block}body{background:#fff}}
.cards-6{grid-template-columns:repeat(6,1fr)}.status-posted,.status-active,.status-computed,.status-fully-depreciated{background:#dcfce7;color:#166534}.status-disposed,.status-inactive{background:#e5e7eb;color:#475569}.status-operating-expense{background:#dbeafe;color:#1d4ed8}.status-other-expense{background:#fef3c7;color:#92400e}.pnl-sheet{max-width:980px;margin:auto;background:#fff;border:1px solid var(--line);border-radius:12px;padding:26px}.pnl-row{display:grid;grid-template-columns:1fr 180px;gap:20px;padding:8px 0;border-bottom:1px solid #eef2f7}.pnl-row.section-head{font-weight:800;background:#f8fafc;padding:10px 12px;margin:12px -12px 2px;border-radius:8px}.pnl-row.total{font-weight:800;border-top:2px solid #cbd5e1}.pnl-row.grand{font-weight:900;font-size:18px;border-top:3px double #64748b;border-bottom:3px double #64748b;margin-top:8px}.pnl-row .amount{text-align:right;font-variant-numeric:tabular-nums}.asset-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.asset-summary>div{background:#f8fafc;border:1px solid var(--line);border-radius:10px;padding:14px}.asset-summary span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}.asset-summary strong{display:block;font-size:18px;margin-top:5px}.lock-note{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;padding:12px 14px;border-radius:9px;margin-bottom:15px}.tab-links{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.tab-links a{padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.tab-links a.active{background:var(--primary);color:#fff;border-color:var(--primary)}
@media(max-width:1200px){.cards-6{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.asset-summary,.cards-6{grid-template-columns:1fr 1fr}.pnl-row{grid-template-columns:1fr 130px}}@media(max-width:600px){.asset-summary,.cards-6{grid-template-columns:1fr}}

/* V5 · Employee + Asset Accountability */
.driver-panel{background:#f8fafc;border:1px solid var(--line);border-radius:10px;padding:16px}.driver-toggle{align-self:end;padding:10px 0}.asset-current{margin-top:7px;padding:9px 11px;background:#f8fafc;border-radius:7px;border:1px solid var(--line)}.scan-entry{display:flex;gap:8px}.scan-entry input{flex:1}.qr-video{display:none;width:100%;max-height:320px;object-fit:cover;background:#0f172a;border-radius:10px;margin-top:14px}.qr-video[srcObject],.qr-video:not([srcObject=""]){display:block}.qr-box{display:flex;align-items:center;justify-content:center;background:#fff}.qr-box canvas{display:block;max-width:100%;height:auto}.asset-account-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.status-open{background:#dbeafe;color:#1d4ed8}.status-closed{background:#e5e7eb;color:#475569}.status-found{background:#dcfce7;color:#166534}.status-wrong-location,.status-wrong-custodian,.status-wrong-location-and-custodian,.status-for-verification{background:#fef3c7;color:#92400e}.asset-public-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.asset-public-grid>div{border:1px solid var(--line);border-radius:10px;padding:14px}.asset-public-grid span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}.asset-public-grid strong{display:block;margin-top:5px}.tag-sheet{display:grid;grid-template-columns:repeat(3,2in);gap:.18in;justify-content:center}.asset-tag-card{width:2in;height:2in;border:1px solid #111;padding:.08in;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;page-break-inside:avoid;background:#fff}.tag-brand{font-size:8pt;font-weight:800;letter-spacing:.8px}.tag-no{font-size:10pt;font-weight:900;margin-top:2px}.tag-name{font-size:8pt;font-weight:700;max-width:1.8in;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tag-serial{font-size:6.5pt;margin-top:2px}.document-sheet{max-width:900px;margin:22px auto;background:#fff;padding:30px;border:1px solid var(--line)}.doc-title{text-align:center;font-size:22px;font-weight:900;letter-spacing:.4px}.doc-subtitle{text-align:center;color:var(--muted);margin:5px 0 22px}.doc-table{border-radius:0}.doc-table th{width:18%;background:#f3f4f6}.doc-note{margin:26px 0;line-height:1.6}.signature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;text-align:center;margin-top:55px}.signature-line{border-top:1px solid #111;margin-bottom:8px}
@media(max-width:900px){.asset-public-grid{grid-template-columns:1fr}.asset-account-head{flex-direction:column}.scan-entry{flex-direction:column}.tag-sheet{grid-template-columns:repeat(2,2in)}}
@media print{.document-sheet{border:0;margin:0;padding:0}.tag-sheet{grid-template-columns:repeat(3,2in);gap:.1in}.asset-tag-card{break-inside:avoid}.document-sheet .small{color:#333}}

/* V6 · Collapsible Sidebar Navigation */
.sidebar{overflow-y:auto;overflow-x:hidden}.sidebar-nav{gap:7px!important}.nav-dashboard{display:block;font-weight:700;margin-bottom:7px}.sidebar nav a.active{background:#1d4170;color:#fff;box-shadow:inset 3px 0 0 #8bb7ff}.nav-group{border-radius:10px}.nav-group-toggle{width:100%;border:0;background:transparent;color:#dbe7fb;padding:11px 12px;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:12px;font:inherit;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.75px;cursor:pointer;text-align:left}.nav-group-toggle:hover,.nav-group.open>.nav-group-toggle{background:#183257;color:#fff}.nav-chevron{font-size:17px;line-height:1;transition:transform .2s ease;opacity:.75}.nav-group.open .nav-chevron{transform:rotate(180deg)}.nav-submenu{max-height:0;opacity:0;overflow:hidden;transition:max-height .24s ease,opacity .18s ease}.nav-submenu.open{max-height:560px;opacity:1}.nav-submenu .nav-sub-link{margin:2px 0 2px 11px;padding:9px 12px 9px 18px;border-left:1px solid rgba(174,200,237,.24);border-radius:0 8px 8px 0;font-size:13px;color:#bcd0ec}.nav-submenu .nav-sub-link:hover{background:#183257;color:#fff;border-left-color:#7ba9e8}.nav-submenu .nav-sub-link.active{background:#1d4170;color:#fff;border-left:3px solid #8bb7ff;padding-left:16px;font-weight:700}.nav-group+.nav-group{margin-top:2px}.nav-group-toggle:focus-visible,.sidebar nav a:focus-visible{outline:2px solid #9ec5ff;outline-offset:2px}.sidebar::-webkit-scrollbar{width:7px}.sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:999px}
@media(max-width:900px){.sidebar{max-height:none}.nav-group-toggle{font-size:12px}}

/* V6.1 · Sidebar submenu layout fix */
.nav-group{overflow:hidden}
.nav-group-toggle{line-height:1.2}
.nav-submenu{display:flex;flex-direction:column;gap:2px;padding-top:4px}
.nav-submenu .nav-sub-link{display:block;width:calc(100% - 11px);line-height:1.35;white-space:normal;word-break:normal;overflow-wrap:break-word}
.nav-submenu .nav-sub-link:hover,.nav-submenu .nav-sub-link.active{position:relative;z-index:1}

/* V6.3 · Management approvals, locking and notifications */
.topbar-actions{display:flex;align-items:center;gap:14px}.notification-menu{position:relative}.notification-menu summary{list-style:none}.notification-menu summary::-webkit-details-marker{display:none}.notification-bell{position:relative;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer;font-size:17px}.notification-bell:hover{background:#f8fafc}.notification-count{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#b91c1c;color:#fff;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid #fff}.notification-dropdown{position:absolute;right:0;top:46px;width:360px;max-width:calc(100vw - 30px);background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 45px rgba(15,31,56,.18);z-index:30;overflow:hidden}.notification-dropdown-head{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border-bottom:1px solid var(--line)}.notification-mini{display:block;padding:12px 15px;border-bottom:1px solid #eef2f7;color:var(--text)}.notification-mini:hover{background:#f8fafc}.notification-mini.unread{background:#eef5ff}.notification-mini strong,.notification-mini span,.notification-mini small{display:block}.notification-mini span{font-size:12px;margin-top:3px;color:#46536a;line-height:1.35}.notification-mini small{font-size:10px;color:var(--muted);margin-top:5px}.notification-empty{padding:20px;color:var(--muted);font-size:12px;text-align:center}.notification-list{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.notification-row{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:15px 18px;color:var(--text);border-bottom:1px solid var(--line)}.notification-row:last-child{border-bottom:0}.notification-row:hover{background:#f8fafc}.notification-row.unread{background:#eef5ff}.notification-dot{width:9px;height:9px;border-radius:50%;background:var(--primary);flex:0 0 auto;margin-top:6px}.status-approved{background:#dcfce7;color:#166534}.status-rejected,.status-cancelled{background:#fee2e2;color:#991b1b}.status-used{background:#e5e7eb;color:#475569}.approval-form input{width:180px;max-width:100%;padding:8px;border:1px solid #cfd6e2;border-radius:7px}.locked-banner{display:flex;justify-content:space-between;align-items:center;gap:15px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;border-radius:10px;padding:14px 16px;margin-bottom:18px}.view-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.view-field{border:1px solid var(--line);background:#f8fafc;border-radius:9px;padding:12px}.view-field span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);margin-bottom:5px}.view-field strong{display:block;white-space:pre-wrap;word-break:break-word}.approval-chip{display:inline-block;margin-left:6px;padding:3px 7px;border-radius:999px;background:#dcfce7;color:#166534;font-size:10px;font-weight:800}.readonly-form input[readonly],.readonly-form textarea[readonly],.readonly-form select:disabled{background:#f1f5f9;color:#475569}
@media(max-width:900px){.topbar-actions>span{display:none}.notification-dropdown{position:fixed;right:12px;top:64px}.view-grid{grid-template-columns:1fr}.locked-banner{align-items:flex-start;flex-direction:column}}

/* V6.4 · Job Order workflow + Batch Billing */
.billing-ready-toolbar{align-items:flex-start}.billing-filter-total{text-align:right}.billing-filter-total span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}.billing-filter-total strong{display:block;font-size:20px;margin-top:4px}.billing-filter{padding:14px;background:#f8fafc;border:1px solid var(--line);border-radius:10px}.batch-summary-bar{display:grid;grid-template-columns:130px 190px minmax(170px,1fr) auto;gap:12px;align-items:center;background:#eef4ff;border:1px solid #cadbf7;border-radius:10px;padding:12px 14px;margin-bottom:12px}.batch-summary-bar>div span,.batch-net-total span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}.batch-summary-bar>div strong{display:block;margin-top:4px}.batch-client-label{min-width:0}.batch-client-label strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.batch-check{display:inline-flex;align-items:center;gap:7px;font-size:12px;white-space:nowrap;cursor:pointer}.batch-check input{width:16px;height:16px;accent-color:var(--primary)}.batch-check input:disabled+span{opacity:.5}.batch-invoice-layout{align-items:start}.batch-net-total{margin-top:18px;padding:14px;border:1px solid var(--line);background:#f8fafc;border-radius:10px;text-align:right}.batch-net-total strong{display:block;font-size:24px;margin-top:4px}.invoice-summary-section{margin-top:34px;page-break-inside:auto}.invoice-summary-section h3{margin-bottom:12px}.invoice-summary-table{font-size:11px}.invoice-summary-table th,.invoice-summary-table td{padding:9px}.summary-total-row td{border-top:2px solid #94a3b8}.status-confirmed{background:#dbeafe;color:#1d4ed8}
@media(max-width:950px){.batch-summary-bar{grid-template-columns:1fr 1fr}.batch-summary-bar .btn{grid-column:1/-1}.billing-ready-toolbar{flex-direction:column}.billing-filter-total{text-align:left}.batch-invoice-layout{grid-template-columns:1fr}}
@media(max-width:600px){.batch-summary-bar{grid-template-columns:1fr}.batch-summary-bar .btn{grid-column:auto}}
@media print{.invoice-summary-section{page-break-before:auto}.invoice-summary-table{font-size:9pt}.invoice-summary-table th,.invoice-summary-table td{padding:6px}}

/* V6.5 · Quotation rate engine + Billing landscape */
.quotation-form-card{max-width:1180px}.rate-engine-card{margin-top:20px;padding:18px;border:1px solid #d7e2f2;border-radius:12px;background:#f8fbff}.rate-calculator{background:#fff;border:1px solid var(--line);padding:12px;border-radius:10px}.calc-hint{margin-top:7px;font-size:12px;color:var(--muted)}.input-with-action{display:flex;gap:8px;align-items:stretch}.input-with-action input{min-width:0;flex:1}.mini-action{border:1px solid #bfd0e8;background:#eef5ff;color:#174ea6;border-radius:8px;padding:0 10px;font-size:11px;font-weight:700;cursor:pointer;white-space:nowrap}.mini-action:hover{background:#dfeeff}.rate-breakdown-grid,.billing-source-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.rate-breakdown-grid>div,.billing-source-grid>div{background:#f8fafc;border:1px solid var(--line);border-radius:10px;padding:14px}.rate-breakdown-grid span,.billing-source-grid span,.billing-source-total span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}.rate-breakdown-grid strong,.billing-source-grid strong{display:block;font-size:17px;margin-top:5px}.rate-breakdown-grid small{display:block;color:var(--muted);font-size:10px;margin-top:5px;line-height:1.35}.billing-source-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.billing-source-total{margin-top:12px;padding:12px 14px;border-radius:10px;background:#eef5ff;text-align:right}.billing-source-total strong{display:block;font-size:22px;margin-top:4px}.quotation-print-sheet{max-width:900px;margin:auto;background:#fff;border:1px solid var(--line);padding:32px}.quotation-rate-table{margin-top:18px}.quotation-rate-table td:last-child,.quotation-rate-table th:last-child{text-align:right}.quotation-route{margin:12px 0}.billing-breakdown-table{min-width:1050px}.billing-breakdown-table th,.billing-breakdown-table td{padding:9px 8px;font-size:11px;white-space:nowrap}.billing-breakdown-table td:nth-child(3){white-space:normal;min-width:170px}
.billing-print-body{background:#fff}.billing-landscape-sheet{width:100%;max-width:1120px;margin:0 auto;background:#fff;padding:22px 28px;color:#111827}.billing-print-action{text-align:right;margin-bottom:8px}.billing-print-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid #cbd5e1;padding-bottom:12px}.billing-brand{font-size:24px;font-weight:900;letter-spacing:.4px;color:#0f1f38}.billing-title-block{text-align:right}.billing-doc-title{font-size:31px;font-weight:900;line-height:1}.billing-client-strip{display:grid;grid-template-columns:1.7fr 1fr 1.2fr 1fr;gap:12px;margin:12px 0}.billing-client-strip>div{border:1px solid #d9e1ec;border-radius:8px;padding:9px 10px;min-width:0}.billing-client-strip span{display:block;font-size:8px;color:#64748b;letter-spacing:.7px}.billing-client-strip strong{display:block;font-size:12px;margin:3px 0}.billing-client-strip small{display:block;font-size:8px;color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.billing-summary-title{font-size:13px;margin:10px 0 6px}.billing-print-table{border:1px solid #cbd5e1;border-radius:0;table-layout:fixed}.billing-print-table th,.billing-print-table td{padding:5px 6px;font-size:8px;line-height:1.2;vertical-align:top}.billing-print-table th{font-size:7px;text-transform:uppercase;letter-spacing:.25px}.billing-print-table th:nth-child(1){width:11%}.billing-print-table th:nth-child(2){width:8%}.billing-print-table th:nth-child(3){width:19%}.billing-print-table th:nth-child(4){width:5%}.billing-print-table th:nth-child(n+5){width:9.5%}.billing-print-table td strong,.billing-print-table td span{display:block}.billing-print-table .num{text-align:right;white-space:nowrap}.billing-print-table .total-cell{font-weight:800}.billing-bottom{display:grid;grid-template-columns:1fr 360px;gap:24px;align-items:start;margin-top:10px}.billing-notes{font-size:9px;line-height:1.5;padding-top:4px}.billing-total-box>div{display:flex;justify-content:space-between;gap:15px;padding:4px 0;border-bottom:1px solid #dbe2ea;font-size:9px}.billing-total-box .grand{font-size:12px;font-weight:900;border-top:2px solid #111827;border-bottom:2px solid #111827;margin-top:2px}.billing-signatures{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:20px;font-size:8px;text-align:center}.billing-signatures>div{border-top:1px solid #334155;padding-top:4px}.many-items .billing-client-strip{margin:8px 0}.many-items .billing-print-table th,.many-items .billing-print-table td{padding:3px 4px;font-size:7px}.many-items .billing-bottom{margin-top:6px}.many-items .billing-signatures{margin-top:12px}
@media(max-width:1000px){.rate-breakdown-grid{grid-template-columns:repeat(2,1fr)}.billing-source-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.rate-breakdown-grid,.billing-source-grid{grid-template-columns:1fr}.input-with-action{flex-direction:column}.mini-action{padding:9px 10px}}
@media print{.billing-print-body{margin:0}.billing-landscape-sheet{max-width:none;width:100%;padding:0;border:0}.billing-print-action{display:none!important}.billing-print-table{page-break-inside:auto}.billing-print-table tr{page-break-inside:avoid}.quotation-print-sheet{border:0;max-width:none;padding:0}.quotation-rate-table table{font-size:10pt}}

/* V6.7 · DOE Draft Sync + Billing/POD/Collection refinements */
.fuel-reference-card{margin-top:20px;padding:18px;border:1px solid #cddcef;border-radius:12px;background:#fff}.doe-reference-grid,.doe-reference-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.doe-reference-grid>div,.doe-reference-strip>div{border:1px solid var(--line);background:#f8fafc;border-radius:9px;padding:11px 12px}.doe-reference-grid span,.doe-reference-strip span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.55px;margin-bottom:4px}.doe-reference-grid strong,.doe-reference-strip strong{display:block;font-size:13px;line-height:1.35}.doe-reference-strip{margin-top:14px}.completed-banner{display:flex;justify-content:space-between;align-items:center;gap:15px;background:#ecfdf3;border:1px solid #bbf7d0;color:#166534;border-radius:10px;padding:14px 16px;margin-bottom:18px}.status-current{background:#dcfce7;color:#166534}.status-historical{background:#e5e7eb;color:#475569}#overrideReasonWrap{border:1px solid #fed7aa;background:#fff7ed;border-radius:10px;padding:12px}
@media(max-width:900px){.doe-reference-grid,.doe-reference-strip{grid-template-columns:1fr 1fr}.completed-banner{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.doe-reference-grid,.doe-reference-strip{grid-template-columns:1fr}}

/* V6.7 · Billing tax/settlement refinements */
.cards-4{grid-template-columns:repeat(4,1fr)}
.tax-preview,.collection-settlement-preview{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:16px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#f8fafc}
.collection-settlement-preview{grid-template-columns:repeat(4,minmax(0,1fr))}
.tax-preview>div,.collection-settlement-preview>div{min-width:0}
.tax-preview span,.collection-settlement-preview span{display:block;font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}
.tax-preview strong,.collection-settlement-preview strong{display:block;margin-top:4px;font-size:13px;white-space:nowrap}
.invoice-totals.wide{max-width:none;margin-left:0}
.v67-billing-table{min-width:1320px}
.v67-billing-table th,.v67-billing-table td{padding:8px 7px;font-size:10.5px}
.v67-billing-table td:nth-child(4){white-space:normal;min-width:190px}
.compact-money{min-width:110px;padding:7px!important}
.quote-total small{display:block;margin-top:4px;color:var(--muted);font-size:10px;text-transform:none;letter-spacing:0}
@media(max-width:1100px){.cards-4{grid-template-columns:repeat(2,1fr)}.tax-preview{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.cards-4,.tax-preview,.collection-settlement-preview{grid-template-columns:1fr}}

/* V6.8 · Dispatch Waybill + Billing print-safe layout */
.billing-bottom{min-width:0}
.billing-notes,.billing-total-box{min-width:0}
.billing-total-box{max-width:100%}
@media print{
  .billing-print-body{width:auto!important;max-width:none!important;overflow:visible!important}
  .billing-landscape-sheet{box-sizing:border-box;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;overflow:visible!important}
  .billing-client-strip,.billing-print-table,.billing-bottom,.billing-signatures{max-width:100%!important}
  .billing-bottom{grid-template-columns:minmax(0,1fr) 340px!important;gap:16px!important;min-width:0!important;overflow:visible!important}
  .billing-notes,.billing-total-box{min-width:0!important;max-width:100%!important;overflow:visible!important}
  .billing-total-box>div{min-width:0}
  .billing-total-box>div strong{white-space:nowrap}
  .billing-signatures{break-inside:avoid;page-break-inside:avoid}
}

/* V7.0 · Public map quotation + progressive distance pricing */
.quote-map-layout{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:18px;align-items:start;margin-top:16px}.quote-map-panel{position:sticky;top:16px}.quote-map{height:430px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#eef2f7}.map-status{margin-top:8px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#f8fafc;font-size:12px;color:var(--muted)}.route-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.route-summary-grid>div{border:1px solid var(--line);border-radius:9px;background:#fff;padding:10px}.route-summary-grid span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.route-summary-grid strong{display:block;margin-top:4px;font-size:14px}.location-field{position:relative}.address-suggestions{display:none;position:absolute;z-index:1000;left:0;right:0;top:100%;margin-top:4px;background:#fff;border:1px solid #cfd6e2;border-radius:9px;box-shadow:0 10px 25px rgba(15,31,56,.14);max-height:220px;overflow:auto}.address-suggestions.open{display:block}.address-option{padding:9px 11px;border-bottom:1px solid #eef2f7;cursor:pointer;font-size:12px;line-height:1.35}.address-option:last-child{border-bottom:0}.address-option:hover{background:#f4f7fb}.drop-location-list{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.map-help{font-size:11px;color:var(--muted);line-height:1.45;margin-top:7px}.distance-matrix-note{background:#eef5ff;border:1px solid #cddcef;border-radius:10px;padding:12px 14px;margin-bottom:14px;font-size:12px;line-height:1.5}.distance-test{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:10px;align-items:end}.distance-test select,.distance-test input{width:100%;padding:10px;border:1px solid #cfd6e2;border-radius:8px;background:#fff}.distance-test-result{padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:#f8fafc}.distance-test-result span{display:block;font-size:9px;text-transform:uppercase;color:var(--muted);letter-spacing:.5px}.distance-test-result strong{display:block;margin-top:3px;font-size:15px}.route-pricing-card{margin-top:18px;padding:16px;border:1px solid #cddcef;border-radius:12px;background:#f8fbff}.route-pricing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.route-pricing-grid>div{background:#fff;border:1px solid var(--line);border-radius:9px;padding:10px}.route-pricing-grid span{display:block;font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.route-pricing-grid strong{display:block;margin-top:4px;font-size:13px}.status-active{background:#dcfce7;color:#166534}.status-inactive{background:#e5e7eb;color:#475569}
@media(max-width:980px){.quote-map-layout{grid-template-columns:1fr}.quote-map-panel{position:static}.quote-map{height:350px}.distance-test{grid-template-columns:1fr 1fr}.route-pricing-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.drop-location-list,.distance-test,.route-summary-grid,.route-pricing-grid{grid-template-columns:1fr}.quote-map{height:300px}}

/* V7.5 · Google Maps/Places option + map/address UX + live progressive quotation pricing */
.address-suggestions.open:empty{display:none}.address-option{transition:background .12s ease}.map-help{min-height:16px}.leaflet-marker-icon{cursor:grab}.leaflet-marker-dragging{cursor:grabbing}.matrix-pricing-panel{border:1px solid #cddcef;background:#fff;border-radius:11px;padding:12px;margin-bottom:14px}.matrix-breakdown{margin-top:10px;border-top:1px solid var(--line);padding-top:9px}.matrix-breakdown summary{cursor:pointer;font-weight:700;color:#0f1f38;font-size:12px}.compact-table{width:100%;border-collapse:collapse;min-width:520px}.compact-table th,.compact-table td{padding:7px 8px;border-bottom:1px solid var(--line);font-size:11px;text-align:left}.compact-table th{background:#f8fafc;font-size:10px;text-transform:uppercase;color:var(--muted)}.matrix-total-row{display:flex;gap:18px;justify-content:flex-end;flex-wrap:wrap;margin:10px 0 7px;font-size:11px;color:var(--muted)}.matrix-total-row strong{color:#0f1f38;margin-left:4px}.suggested-money{border:1px solid #bfd0e8;border-radius:8px;background:#eef5ff;padding:10px 12px;font-weight:800;font-size:17px;color:#0f1f38}.quotation-summary-card{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.quotation-summary-card>div{border:1px solid var(--line);border-radius:9px;background:#fff;padding:10px}.quotation-summary-card span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.quotation-summary-card strong{display:block;margin-top:4px;font-size:13px}.quotation-summary-card .summary-total{background:#eef5ff;border-color:#bfd0e8}.quotation-summary-card .summary-total strong{font-size:16px}.map-status{line-height:1.45}
@media(max-width:980px){.quotation-summary-card{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){.quotation-summary-card{grid-template-columns:1fr 1fr}.matrix-total-row{justify-content:flex-start;gap:10px}.compact-table{min-width:470px}}
/* V7.5 map/billing refinements */
.route-summary-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.route-pricing-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:980px){.route-pricing-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.route-summary-grid-2,.route-pricing-grid-3{grid-template-columns:1fr}}

/* V7.5 Google Maps business/POI picking */
.map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;padding:10px 11px;border:1px solid var(--line);border-radius:10px;background:#fff}.map-toolbar>div{min-width:0}.map-toolbar-kicker{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.55px;color:var(--muted)}.map-toolbar strong{display:block;margin-top:2px;font-size:12px;color:#0f1f38}.map-toolbar small{display:block;margin-top:2px;font-size:10px;color:var(--muted);line-height:1.35}.map-search-btn{white-space:nowrap;padding:8px 10px;font-size:11px}.poi-picker{min-width:230px;max-width:310px;font-family:Arial,sans-serif;color:#111827}.poi-picker>strong{display:block;font-size:13px;margin-bottom:3px}.poi-address{font-size:11px;line-height:1.35;color:#667085;margin-bottom:8px}.poi-actions{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0}.poi-use-btn{border:1px solid #b8c8df;background:#edf4ff;color:#124ea5;border-radius:6px;padding:6px 8px;font-size:10px;font-weight:700;cursor:pointer}.poi-use-btn:hover{background:#dceaff}.poi-map-link{display:inline-block;margin-top:4px;font-size:10px;font-weight:700;color:#1558b0;text-decoration:none}.poi-map-link:hover{text-decoration:underline}.address-option-place strong{display:block;font-size:11px}.address-option-place span{display:block;margin-top:2px;font-size:10px;color:var(--muted)}
@media(max-width:650px){.map-toolbar{align-items:flex-start;flex-direction:column}.map-search-btn{width:100%}}

/* V7.5 · Exact Google-embed-style map presentation + separate exact-pin editor */
.quote-map-panel{position:sticky;top:16px}
.map-visual-card{position:relative;background:#fff;border:1px solid #dfe5ec;border-radius:18px;overflow:hidden;box-shadow:0 6px 20px rgba(15,31,56,.08)}
.map-canvas-wrap{position:relative;height:310px;background:#eef2f7;overflow:hidden}
.google-map-embed,.map-visual-card .quote-map-editor{position:absolute;inset:0;width:100%;height:100%;border:0}
.google-map-embed{z-index:2;display:block;background:#eef2f7;transition:opacity .18s ease}
.map-visual-card .quote-map-editor{z-index:1;opacity:0;pointer-events:none;border:0!important;border-radius:0!important;background:#eef2f7;transition:opacity .18s ease}
.map-visual-card.editor-active .google-map-embed{opacity:0;pointer-events:none}
.map-visual-card.editor-active .quote-map-editor{z-index:3;opacity:1;pointer-events:auto}
.map-open-link{position:absolute;z-index:4;top:14px;left:14px;display:none;align-items:center;gap:6px;padding:8px 11px;background:rgba(255,255,255,.96);border:1px solid #dbe2ea;border-radius:7px;box-shadow:0 2px 8px rgba(15,31,56,.14);font-size:11px;font-weight:700;color:#1558b0;text-decoration:none;backdrop-filter:blur(6px)}
.map-visual-card.editor-active .map-editor-only{display:inline-flex}
.map-underbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:9px}
.map-adjust-btn{appearance:none;border:1px solid #cfd7e2;background:#fff;color:#10233f;border-radius:8px;padding:8px 11px;font-size:11px;font-weight:700;cursor:pointer;box-shadow:0 1px 2px rgba(15,31,56,.04)}
.map-adjust-btn:hover{background:#f6f8fb;border-color:#b8c4d2}
.map-underbar .map-status{flex:1 1 220px;margin:0;padding:0;border:0;background:transparent;font-size:10.5px;line-height:1.45;color:var(--muted)}
.map-visual-card .leaflet-control-zoom{border:0!important;box-shadow:0 2px 8px rgba(15,31,56,.16)!important}
.map-visual-card .leaflet-control-zoom a{border:0!important;color:#0f1f38!important;background:#fff!important}
.map-visual-card .leaflet-control-zoom a:first-child{border-radius:8px 8px 0 0!important}.map-visual-card .leaflet-control-zoom a:last-child{border-radius:0 0 8px 8px!important}
.map-visual-card .leaflet-control-attribution{background:rgba(255,255,255,.86)!important;font-size:9px!important;padding:2px 5px!important}
@media(max-width:980px){.quote-map-panel{position:static}.map-canvas-wrap{height:300px}}
@media(max-width:650px){.map-visual-card{border-radius:15px}.map-canvas-wrap{height:280px}.map-open-link{top:10px;left:10px;padding:7px 9px}.map-underbar{align-items:flex-start}.map-underbar .map-status{flex-basis:100%}}


/* V7.6 · Single larger interactive quotation map */
.quote-map-layout{grid-template-columns:minmax(0,1fr) minmax(500px,540px);gap:22px}
.single-map-card .map-canvas-wrap{height:520px}
.single-map-card .quote-map-editor{position:absolute;inset:0;width:100%;height:100%;z-index:2;opacity:1;pointer-events:auto;border:0!important;border-radius:0!important;background:#eef2f7}
.single-map-card .map-open-link{display:inline-flex;z-index:500}
.single-map-card .google-map-embed{display:none!important}
.map-underbar{margin-top:10px}
.map-underbar .map-status{font-size:11px;line-height:1.5}
@media(max-width:1080px){.quote-map-layout{grid-template-columns:1fr}.quote-map-panel{position:static}.single-map-card .map-canvas-wrap{height:480px}}
@media(max-width:650px){.single-map-card .map-canvas-wrap{height:390px}}


/* V7.7 · Google Maps-style preview restored, with one-card exact-pin editor */
.quote-map-layout{grid-template-columns:minmax(0,1fr) minmax(500px,540px);gap:22px}
.map-visual-card .map-canvas-wrap{height:460px}
.map-visual-card .google-map-embed{display:block!important;z-index:2;opacity:1;pointer-events:auto}
.map-visual-card .quote-map-editor{z-index:1!important;opacity:0!important;pointer-events:none!important}
.map-visual-card.editor-active .google-map-embed{opacity:0!important;pointer-events:none!important}
.map-visual-card.editor-active .quote-map-editor{z-index:3!important;opacity:1!important;pointer-events:auto!important}
.map-visual-card .map-open-link{display:inline-flex!important;z-index:500}
@media(max-width:1080px){.quote-map-layout{grid-template-columns:1fr}.quote-map-panel{position:static}.map-visual-card .map-canvas-wrap{height:420px}}
@media(max-width:650px){.map-visual-card .map-canvas-wrap{height:340px}}


/* V7.8 · draggable Google pin in primary map + Open in Maps moved right */
.map-open-link{left:auto!important;right:14px!important}
.map-visual-card.google-api-active .google-map-embed{display:none!important;opacity:0!important;pointer-events:none!important}
.map-visual-card.google-api-active .quote-map-editor{display:block!important;z-index:3!important;opacity:1!important;pointer-events:auto!important}
.map-visual-card.google-api-active.editor-active .quote-map-editor{z-index:3!important;opacity:1!important;pointer-events:auto!important}
.map-visual-card.google-api-active.editor-active .google-map-embed{display:none!important}
@media(max-width:650px){.map-open-link{left:auto!important;right:10px!important}}

/* V7.8 · no-key Google-preview draggable overlay pin */
.preview-drag-pin{display:none;position:absolute;z-index:620;left:50%;top:50%;width:34px;height:44px;transform:translate(-50%,-100%);cursor:grab;touch-action:none;user-select:none;filter:drop-shadow(0 3px 3px rgba(15,31,56,.28))}
.preview-drag-pin.visible{display:block}.preview-drag-pin.dragging{cursor:grabbing}
.preview-pin-shape{position:absolute;left:4px;top:4px;width:26px;height:26px;border-radius:50% 50% 50% 0;background:#d93025;transform:rotate(-45deg);border:2px solid #fff;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.preview-pin-shape i{position:absolute;width:7px;height:7px;border-radius:50%;background:#fff;left:7.5px;top:7.5px}
.map-visual-card.preview-pin-active .google-map-embed{display:block!important;z-index:2!important;opacity:1!important;pointer-events:none!important}
.map-visual-card.preview-pin-active .quote-map-editor{z-index:1!important;opacity:0!important;pointer-events:none!important}
.map-visual-card.google-api-active .preview-drag-pin{display:none!important}


/* V7.9 · Precision pin for narrow streets / exact gate placement */
.preview-drag-pin{width:28px!important;height:38px!important;filter:drop-shadow(0 3px 3px rgba(15,31,56,.25))!important}
.preview-drag-pin .preview-pin-shape{display:none!important}
.precision-pin-head{position:absolute;left:4px;top:2px;width:20px;height:20px;border-radius:50%;background:#d93025;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.28);box-sizing:border-box}
.precision-pin-head i{position:absolute;left:50%;top:50%;width:6px;height:6px;border-radius:50%;background:#fff;transform:translate(-50%,-50%)}
.precision-pin-stem{position:absolute;left:13px;top:21px;width:2px;height:11px;border-radius:2px;background:#d93025;box-shadow:0 0 0 1px rgba(255,255,255,.75)}
.precision-pin-tip{position:absolute;left:11px;bottom:0;width:6px;height:6px;border-radius:50%;background:#d93025;border:1.5px solid #fff;box-sizing:border-box}
.precision-pin-crosshair{position:absolute;left:5px;bottom:-8px;width:18px;height:18px;border:1px solid rgba(217,48,37,.58);border-radius:50%;pointer-events:none;box-sizing:border-box;opacity:.85}
.precision-pin-crosshair:before,.precision-pin-crosshair:after{content:"";position:absolute;background:rgba(217,48,37,.7);left:50%;top:50%;transform:translate(-50%,-50%)}
.precision-pin-crosshair:before{width:24px;height:1px}.precision-pin-crosshair:after{width:1px;height:24px}
.preview-drag-pin.dragging .precision-pin-head,.precision-google-marker.dragging .precision-pin-head{transform:scale(1.08)}
.preview-drag-pin.dragging .precision-pin-crosshair,.precision-google-marker.dragging .precision-pin-crosshair{opacity:1}
.precision-google-marker{position:relative;width:28px;height:38px;cursor:grab;user-select:none;filter:drop-shadow(0 3px 3px rgba(15,31,56,.25));transform:translateY(0)}
.precision-google-marker.dragging{cursor:grabbing}
.precision-google-marker .precision-pin-crosshair{opacity:.65}
.precision-google-marker.precision-active .precision-pin-crosshair{opacity:1;border-color:rgba(217,48,37,.9)}
.precision-leaflet-icon{background:transparent!important;border:0!important}
.precision-leaflet-marker{position:relative;width:28px;height:38px;cursor:grab;filter:drop-shadow(0 3px 3px rgba(15,31,56,.25))}
.precision-leaflet-marker.dragging{cursor:grabbing}
.map-visual-card.preview-pin-active .preview-drag-pin.visible{z-index:650}
@media(max-width:650px){.precision-pin-crosshair{width:16px;height:16px;left:6px}.precision-pin-crosshair:before{width:22px}.precision-pin-crosshair:after{height:22px}}


/* V8.0 · selected address pin is visible immediately; dragging stays gated by Adjust Exact Pin */
.preview-drag-pin.locked{cursor:default!important;pointer-events:none!important;opacity:.96}
.preview-drag-pin.visible:not(.locked){pointer-events:auto}
.map-visual-card:not(.preview-pin-active) .preview-drag-pin.visible{z-index:650}

/* V9.0 · V9.0 precision mode: guide-only pin; click exact map point to update active address field */
.map-visual-card.preview-pin-active .map-canvas-wrap{cursor:crosshair}
.map-visual-card.preview-pin-active .preview-drag-pin.visible{cursor:grab}
.map-visual-card.preview-pin-active .preview-drag-pin.visible.dragging{cursor:grabbing}

/* V9.0 · guide-only location pin + click-to-set point */
.preview-drag-pin.visible,
.map-visual-card.preview-pin-active .preview-drag-pin.visible{
  cursor:default!important;
  pointer-events:none!important;
}
.precision-google-marker,
.precision-leaflet-marker{
  cursor:default!important;
}

/* V9.1 Open Map Test Edition */
.open-map-test .map-canvas-wrap{height:460px}
.open-map-test .google-map-embed,.open-map-test .preview-drag-pin{display:none!important}
.open-map-test .quote-map-editor{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:3!important;opacity:1!important;pointer-events:auto!important;border:0!important;border-radius:0!important;background:#eef2f7!important}
.open-map-test .map-open-link{display:inline-flex!important;left:14px!important;right:auto!important;z-index:600!important}
.open-map-test .leaflet-control-zoom{margin-top:14px!important;margin-right:14px!important}
.open-map-test .leaflet-control-zoom a{width:34px!important;height:34px!important;line-height:34px!important;font-size:20px!important}
.open-map-test .precision-leaflet-marker{cursor:default!important;pointer-events:none!important}
@media(max-width:650px){.open-map-test .map-canvas-wrap{height:340px}.open-map-test .map-open-link{left:10px!important;right:auto!important}.open-map-test .leaflet-control-zoom{margin-top:10px!important;margin-right:10px!important}}


/* V9.7 enterprise address capture */
.address-detail-card{margin-top:16px;padding:16px;border:1px solid #dfe6ef;border-radius:14px;background:#fbfcfe;transition:.18s ease}
.address-detail-card.address-active{border-color:#93a7bd;box-shadow:0 0 0 3px rgba(69,92,119,.08)}
.address-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}
.address-detail-head strong{font-size:16px;color:#172b43}.address-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.address-source-badge,.address-confidence-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:700;background:#eef2f6;color:#425466;border:1px solid #dce4ec}
.address-confidence-badge[data-level="high-accuracy"]{background:#edf8f1;color:#267244;border-color:#cbe7d5}.address-confidence-badge[data-level="street-level"]{background:#fff8e6;color:#8a6514;border-color:#f1dfac}.address-confidence-badge[data-level="needs-manual-completion"]{background:#fff0f0;color:#9b3d3d;border-color:#efcccc}
.address-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:10px}.address-detail-card>.field.full{margin:0}.drop-location-list .address-detail-card{margin-top:14px}
@media(max-width:760px){.address-detail-grid{grid-template-columns:1fr}.address-detail-head{flex-direction:column}.address-badges{justify-content:flex-start}}


/* V9.8 · compact floating-label quotation fields */
#publicQuoteForm{padding:20px}
#publicQuoteForm .form-grid{column-gap:14px;row-gap:16px}
#publicQuoteForm .quote-float-field{position:relative;margin-top:7px}
#publicQuoteForm .quote-float-field>label{
  position:absolute;left:13px;top:-8px;z-index:4;margin:0;padding:0 7px;
  font-size:11.5px;line-height:16px;font-weight:800;color:var(--primary);background:#fff;
}
#publicQuoteForm .address-detail-card .quote-float-field>label{background:#fbfcfe}
#publicQuoteForm .quote-float-field input,
#publicQuoteForm .quote-float-field select,
#publicQuoteForm .quote-float-field textarea{
  width:100%;border:1.4px solid #c9d5e6;border-radius:14px;background:#fff;color:var(--text);
  min-height:44px;padding:10px 42px 10px 13px;font-size:13px;outline:none;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
#publicQuoteForm .quote-float-field textarea{min-height:76px;padding-top:14px;resize:vertical}
#publicQuoteForm .quote-float-field select{padding-right:38px}
#publicQuoteForm .quote-float-field input:focus,
#publicQuoteForm .quote-float-field select:focus,
#publicQuoteForm .quote-float-field textarea:focus{
  border-color:var(--primary);box-shadow:0 0 0 3px rgba(23,78,166,.08);background:#fff;
}
#publicQuoteForm .quote-float-field input::placeholder,
#publicQuoteForm .quote-float-field textarea::placeholder{color:#94a0b3;font-size:12px}
#publicQuoteForm .input-with-action{gap:7px}
#publicQuoteForm .input-with-action .mini-action{min-height:44px;border-radius:12px;padding:0 12px}
#publicQuoteForm .address-detail-card{padding:15px;border-radius:15px}
#publicQuoteForm .address-detail-grid{gap:13px 12px;margin-top:14px}
#publicQuoteForm .address-detail-head{margin-bottom:14px}
#publicQuoteForm .route-summary-grid{margin-top:15px}
#publicQuoteForm .actions{margin-top:16px}

/* lightweight line icons, same LogiTrack blue theme */
#publicQuoteForm .quote-float-field[class*="quote-icon-"]:not(.location-field)::after{
  content:"";position:absolute;right:13px;top:50%;width:18px;height:18px;transform:translateY(-50%);
  background:var(--primary);opacity:.95;pointer-events:none;z-index:3;
  -webkit-mask:var(--quote-icon) center/18px 18px no-repeat;mask:var(--quote-icon) center/18px 18px no-repeat;
}
#publicQuoteForm .quote-float-field:has(textarea)::after{top:22px;transform:none}
#publicQuoteForm .quote-float-field:has(select)::after{right:34px}
#publicQuoteForm .quote-icon-company{--quote-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21h18'/%3E%3Cpath d='M6 21V7l6-4v18'/%3E%3Cpath d='M12 21V9l6 3v9'/%3E%3Cpath d='M8.5 9h1M8.5 12h1M8.5 15h1M15 14h1M15 17h1'/%3E%3C/svg%3E")}
#publicQuoteForm .quote-icon-user{--quote-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4.5 21c.7-4.4 3.2-6.5 7.5-6.5s6.8 2.1 7.5 6.5'/%3E%3C/svg%3E")}
#publicQuoteForm .quote-icon-mail{--quote-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='3'/%3E%3Cpath d='m4 7 8 6 8-6'/%3E%3C/svg%3E")}
#publicQuoteForm .quote-icon-phone{--quote-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6.6 3.5 9.2 7l-2 2.2c1.4 3 3.7 5.3 6.7 6.7l2.2-2 3.4 2.6c.4.3.6.8.4 1.3-.5 1.7-2 2.7-3.8 2.7C9 20.5 3.5 15 3.5 7.9c0-1.8 1-3.3 2.7-3.8.5-.2 1 0 1.3.4Z'/%3E%3C/svg%3E")}
#publicQuoteForm .quote-icon-home{--quote-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 11 9-7 9 7'/%3E%3Cpath d='M5 10v10h14V10M9 20v-6h6v6'/%3E%3C/svg%3E")}
#publicQuoteForm .quote-icon-building,#publicQuoteForm .quote-icon-city{--quote-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M5 21V4h10v17M15 9h4v12M8 8h1M11 8h1M8 12h1M11 12h1M8 16h1M11 16h1M3 21h18'/%3E%3C/svg%3E")}
#publicQuoteForm .quote-icon-road{--quote-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M8 3 5 21M16 3l3 18M12 4v3M12 10v4M12 17v3'/%3E%3C/svg%3E")}
#publicQuoteForm .quote-icon-pin,#publicQuoteForm .quote-icon-landmark{--quote-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 5-8 11-8 11S4 15 4 10a8 8 0 1 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E")}
#publicQuoteForm .quote-icon-map{--quote-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 6 5-3 8 3 5-3v15l-5 3-8-3-5 3Z'/%3E%3Cpath d='M8 3v15M16 6v15'/%3E%3C/svg%3E")}
#publicQuoteForm .quote-icon-hash{--quote-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M10 3 8 21M16 3l-2 18M4 9h16M3 15h16'/%3E%3C/svg%3E")}
#publicQuoteForm .quote-icon-box{--quote-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='m4 7 8-4 8 4-8 4Z'/%3E%3Cpath d='M4 7v10l8 4 8-4V7M12 11v10'/%3E%3C/svg%3E")}
#publicQuoteForm .quote-icon-truck{--quote-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h11v10H3zM14 9h4l3 4v3h-7z'/%3E%3Ccircle cx='7' cy='18' r='2'/%3E%3Ccircle cx='18' cy='18' r='2'/%3E%3C/svg%3E")}
#publicQuoteForm .quote-icon-weight{--quote-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 8h10l3 13H4L7 8Z'/%3E%3Ccircle cx='12' cy='6' r='3'/%3E%3Cpath d='m12 6 1.5-1.5'/%3E%3C/svg%3E")}
#publicQuoteForm .quote-icon-calendar{--quote-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M8 3v4M16 3v4M3 10h18'/%3E%3C/svg%3E")}
#publicQuoteForm .quote-icon-note{--quote-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h14v16H5zM8 8h8M8 12h8M8 16h5'/%3E%3C/svg%3E")}
#publicQuoteForm .location-field.quote-icon-location .input-with-action input{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23174ea6' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 5-8 11-8 11S4 15 4 10a8 8 0 1 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-size:18px;background-position:right 13px center;padding-right:42px;
}
@media(max-width:760px){
  #publicQuoteForm{padding:16px}
  #publicQuoteForm .form-grid{row-gap:14px}
  #publicQuoteForm .quote-float-field input,#publicQuoteForm .quote-float-field select{min-height:43px}
  #publicQuoteForm .input-with-action{flex-direction:column}
  #publicQuoteForm .input-with-action .mini-action{min-height:40px}
}
/* V9.9 · Additional Drop cards aligned with Pickup / Final Delivery */
#publicQuoteForm .drop-location-list{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;width:100%;}
#publicQuoteForm .drop-location-list .address-detail-card{width:100%;margin-top:14px;}
#publicQuoteForm .drop-location-list .address-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;}
#publicQuoteForm .drop-location-list .address-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
@media(max-width:760px){#publicQuoteForm .drop-location-list .address-detail-grid{grid-template-columns:1fr;}}


/* V10.1 · Management-wide quotation-style form fields */
.admin-ui-v10 .content form:not(.report-filter) .field{
  position:relative;
  margin-top:7px;
}
.admin-ui-v10 .content form:not(.report-filter) .form-grid{
  column-gap:14px;
  row-gap:16px;
}
.admin-ui-v10 .content form:not(.report-filter) .field>label{
  position:absolute;
  left:13px;
  top:-8px;
  z-index:3;
  margin:0;
  padding:0 7px;
  font-size:11.5px;
  line-height:16px;
  font-weight:700;
  color:var(--primary);
  background:#fff;
  pointer-events:none;
}
.admin-ui-v10 .content form:not(.report-filter) .card .field>label,
.admin-ui-v10 .content form:not(.report-filter) .form-card .field>label{
  background:#fff;
}
.admin-ui-v10 .content form:not(.report-filter) .field input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
.admin-ui-v10 .content form:not(.report-filter) .field select,
.admin-ui-v10 .content form:not(.report-filter) .field textarea{
  width:100%;
  min-height:44px;
  padding:10px 42px 10px 13px;
  border:1.4px solid #c9d5e6;
  border-radius:14px;
  background:#fff;
  color:var(--text);
  font-size:13px;
  outline:none;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.admin-ui-v10 .content form:not(.report-filter) .field textarea{
  min-height:76px;
  padding-top:14px;
  resize:vertical;
}
.admin-ui-v10 .content form:not(.report-filter) .field select{padding-right:54px}
.admin-ui-v10 .content form:not(.report-filter) .field input[type="file"]{
  padding:7px 10px;
  font-size:12px;
}
.admin-ui-v10 .content form:not(.report-filter) .field input[type="file"]::file-selector-button{
  min-height:28px;
  margin-right:9px;
  border:1px solid #c6d4e7;
  border-radius:9px;
  padding:5px 10px;
  background:#eef5ff;
  color:var(--primary);
  font-weight:700;
  cursor:pointer;
}
.admin-ui-v10 .content form:not(.report-filter) .field input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):focus,
.admin-ui-v10 .content form:not(.report-filter) .field select:focus,
.admin-ui-v10 .content form:not(.report-filter) .field textarea:focus{
  border-color:var(--primary);
  box-shadow:0 0 0 3px rgba(23,78,166,.08);
  background:#fff;
}
.admin-ui-v10 .content form:not(.report-filter) .field input[readonly],
.admin-ui-v10 .content form:not(.report-filter) .field input:disabled,
.admin-ui-v10 .content form:not(.report-filter) .field select:disabled,
.admin-ui-v10 .content form:not(.report-filter) .field textarea:disabled{
  background:#f7f9fc;
  color:#69758a;
  border-color:#d7dfeb;
}
.admin-ui-v10 .content form:not(.report-filter) .field input::placeholder,
.admin-ui-v10 .content form:not(.report-filter) .field textarea::placeholder{
  color:#94a0b3;
  font-size:12px;
}
.admin-ui-v10 .content form:not(.report-filter) .field>.small{
  margin-top:6px;
  line-height:1.45;
}
.admin-ui-v10 .content form:not(.report-filter) .input-with-action{gap:7px}
.admin-ui-v10 .content form:not(.report-filter) .input-with-action .mini-action{
  min-height:44px;
  border-radius:12px;
  padding:0 12px;
}

/* V10.1 · Management fields intentionally use no decorative field icons.
   Keep the floating-label/rounded-box design while leaving native controls
   (such as select arrows and date pickers) unobstructed. */
.admin-ui-v10 .content form:not(.report-filter) .field::after{display:none!important}
.admin-ui-v10 .content form:not(.report-filter) .field input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
.admin-ui-v10 .content form:not(.report-filter) .field textarea{padding-right:13px}
.admin-ui-v10 .content form:not(.report-filter) .field select{padding-right:36px}

/* Keep public-quotation address card conventions when the same cards appear on management screens. */
.admin-ui-v10 .content .address-detail-card{
  border-radius:15px;
}
.admin-ui-v10 .content .address-detail-card .field>label{background:#fbfcfe!important}

@media(max-width:760px){
  .admin-ui-v10 .content form:not(.report-filter) .form-grid{row-gap:14px}
  .admin-ui-v10 .content form:not(.report-filter) .field input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
  .admin-ui-v10 .content form:not(.report-filter) .field select{min-height:43px}
  .admin-ui-v10 .content form:not(.report-filter) .input-with-action{flex-direction:column}
  .admin-ui-v10 .content form:not(.report-filter) .input-with-action .mini-action{min-height:40px}
  .admin-ui-v10 .content form:not(.report-filter) .field:has(.input-with-action)::after{right:13px}
}


/* V10.4 · Workflow table refinement: 400px route cap + clean two-line vehicle */
.admin-ui-v10 .job-order-list-table .route-col-head,
.admin-ui-v10 .job-order-list-table .route-summary-cell,
.admin-ui-v10 .trip-records-table .route-col-head,
.admin-ui-v10 .trip-records-table .route-summary-cell,
.admin-ui-v10 .pod-list-table .route-col-head,
.admin-ui-v10 .pod-list-table .route-summary-cell,
.admin-ui-v10 .ready-dispatch-table .route-col-head,
.admin-ui-v10 .ready-dispatch-table .route-summary-cell{
  width:400px;
  max-width:400px;
}
.admin-ui-v10 .job-order-list-table .route-summary-cell,
.admin-ui-v10 .trip-records-table .route-summary-cell,
.admin-ui-v10 .pod-list-table .route-summary-cell,
.admin-ui-v10 .ready-dispatch-table .route-summary-cell{
  white-space:normal;
  overflow-wrap:break-word;
  word-break:normal;
  line-height:1.4;
  vertical-align:middle;
}
.admin-ui-v10 .job-order-list-table .job-route-cell{
  max-width:400px;
}
.admin-ui-v10 .trip-records-table .trip-tracking-head,
.admin-ui-v10 .trip-records-table .trip-tracking-cell,
.admin-ui-v10 .pod-list-table .trip-tracking-head,
.admin-ui-v10 .pod-list-table .trip-tracking-cell{
  width:150px;
  min-width:150px;
  white-space:nowrap;
}
.admin-ui-v10 .trip-tracking-cell strong,
.admin-ui-v10 .trip-tracking-cell .small{
  display:block;
  white-space:nowrap;
  overflow-wrap:normal;
  word-break:normal;
}
.admin-ui-v10 .compact-route{
  display:grid;
  gap:5px;
  width:100%;
  max-width:400px;
}
.admin-ui-v10 .compact-route-origin,
.admin-ui-v10 .compact-route-destination{
  display:flex;
  align-items:flex-start;
  gap:7px;
  min-width:0;
}
.admin-ui-v10 .compact-route-origin::before{
  content:"";
  width:7px;
  height:7px;
  flex:0 0 7px;
  margin-top:.46em;
  border-radius:50%;
  background:var(--primary);
  opacity:.9;
}
.admin-ui-v10 .compact-route-destination span{
  flex:0 0 7px;
  width:7px;
  color:var(--primary);
  font-weight:800;
  line-height:1.35;
}
.admin-ui-v10 .trip-records-table .vehicle-two-line{
  min-width:125px;
  width:125px;
}
.admin-ui-v10 .trip-records-table .vehicle-plate,
.admin-ui-v10 .trip-records-table .vehicle-type{
  display:block;
  white-space:nowrap;
  overflow-wrap:normal;
  word-break:normal;
}
.admin-ui-v10 .trip-records-table .vehicle-type{
  margin-top:3px;
  color:#68728a;
}
/* Give the POD receiver/billing/action columns breathing room after capping Route. */
.admin-ui-v10 .pod-list-table th:nth-child(6),
.admin-ui-v10 .pod-list-table td:nth-child(6){min-width:125px}
.admin-ui-v10 .pod-list-table th:nth-child(7),
.admin-ui-v10 .pod-list-table td:nth-child(7){min-width:165px}
.admin-ui-v10 .pod-list-table th:nth-child(8),
.admin-ui-v10 .pod-list-table td:nth-child(8){min-width:78px}
.admin-ui-v10 .pod-list-table td,
.admin-ui-v10 .trip-records-table td,
.admin-ui-v10 .job-order-list-table td{
  vertical-align:middle;
}
@media(max-width:1100px){
  .admin-ui-v10 .job-order-list-table .route-col-head,
  .admin-ui-v10 .job-order-list-table .route-summary-cell,
  .admin-ui-v10 .trip-records-table .route-col-head,
  .admin-ui-v10 .trip-records-table .route-summary-cell,
  .admin-ui-v10 .pod-list-table .route-col-head,
  .admin-ui-v10 .pod-list-table .route-summary-cell,
  .admin-ui-v10 .ready-dispatch-table .route-col-head,
  .admin-ui-v10 .ready-dispatch-table .route-summary-cell{
    width:400px;
    max-width:400px;
    min-width:300px;
  }
}

/* V10.5 · Quotation list polish: 400px Route + compact single-line completion labels */
.admin-ui-v10 .quotation-list-table .route-col-head,
.admin-ui-v10 .quotation-list-table .route-summary-cell{
  width:400px;
  max-width:400px;
}
.admin-ui-v10 .quotation-list-table .route-summary-cell{
  white-space:normal;
  overflow-wrap:break-word;
  word-break:normal;
  line-height:1.4;
  vertical-align:middle;
}
.admin-ui-v10 .quotation-list-table .quotation-number-cell{
  min-width:165px;
}
.admin-ui-v10 .quotation-list-table .quotation-number-cell>strong{
  white-space:nowrap;
}
.admin-ui-v10 .quotation-list-table .quotation-completed-note{
  margin-top:2px;
  font-size:10.5px;
  line-height:1.2;
  white-space:nowrap;
}
.admin-ui-v10 .quotation-list-table .quotation-status-cell{
  min-width:150px;
}
.admin-ui-v10 .quotation-list-table .quotation-status-badge{
  font-size:10px;
  line-height:1.15;
  padding:5px 8px;
  white-space:nowrap;
}
.admin-ui-v10 .quotation-list-table th:nth-child(4),
.admin-ui-v10 .quotation-list-table td:nth-child(4){min-width:90px}
.admin-ui-v10 .quotation-list-table th:nth-child(6),
.admin-ui-v10 .quotation-list-table td:nth-child(6){min-width:92px}
.admin-ui-v10 .quotation-list-table th:nth-child(7),
.admin-ui-v10 .quotation-list-table td:nth-child(7){min-width:120px}
@media(max-width:1100px){
  .admin-ui-v10 .quotation-list-table .route-col-head,
  .admin-ui-v10 .quotation-list-table .route-summary-cell{
    width:400px;
    max-width:400px;
    min-width:300px;
  }
}



/* V10.6 · S2 Translogistics Inc company branding */
.company-sidebar-brand{display:flex;align-items:center;gap:10px;padding:0 8px 20px;font-size:14px;line-height:1.15}.company-sidebar-brand img{width:42px;height:42px;object-fit:contain;background:#fff;border-radius:8px;padding:4px;flex:0 0 42px}.company-sidebar-brand strong{display:block;font-size:14px;line-height:1.25}.company-sidebar-brand small{font-size:9px;letter-spacing:.55px;margin-top:4px}.company-profile-title{display:flex;align-items:center;gap:12px}.company-profile-title img{width:56px;height:56px;object-fit:contain;border:1px solid var(--line);border-radius:10px;padding:5px;background:#fff}.public-brand{display:flex;align-items:center;gap:10px}.public-brand img{width:46px;height:46px;object-fit:contain}.public-brand strong{display:block;font-size:20px;line-height:1.15}.login-company-brand{text-align:center;margin-bottom:18px}.login-company-brand img{width:82px;height:82px;object-fit:contain}.login-company-brand h2{margin:8px 0 2px}.document-company-brand{display:flex;align-items:flex-start;gap:9px}.document-company-brand img{width:42px;height:42px;object-fit:contain}.document-company-brand .company-name{font-size:16px;font-weight:900;line-height:1.1;color:#0f1f38}.document-company-brand .company-meta{font-size:8px;line-height:1.35;color:#64748b;margin-top:3px;max-width:340px}.print-company-logo{width:44px;height:44px;object-fit:contain}.company-profile-card .field input{max-width:100%}@media(max-width:900px){.company-sidebar-brand{justify-content:flex-start}.company-profile-heading{align-items:flex-start}.company-profile-title{align-items:flex-start}.public-brand strong{font-size:17px}}


/* V10.9 · View Quotation professional polish */
.quotation-view-page{--qv-soft:#f8fafc;--qv-line:#e1e7ef;--qv-muted:#64748b}
.quotation-view-page>.toolbar{margin-bottom:12px;align-items:center}
.quotation-view-page>.toolbar h2{font-size:26px;line-height:1.1;letter-spacing:-.35px}
.quotation-view-page>.toolbar .small{font-size:11px;margin-top:4px}
.quotation-view-page>.toolbar .row-actions{gap:8px}
.quotation-view-page>.toolbar .btn{padding:9px 13px;font-size:12px;border-radius:9px}
.quotation-view-page>.completed-banner,
.quotation-view-page>.locked-banner{padding:11px 14px;margin-bottom:14px;border-radius:11px;box-shadow:none}
.quotation-view-page>.completed-banner strong,
.quotation-view-page>.locked-banner strong{font-size:15px;line-height:1.2}
.quotation-view-page>.completed-banner .small,
.quotation-view-page>.locked-banner .small{font-size:10.5px;line-height:1.45;margin-top:3px}
.quotation-view-page>.completed-banner .badge,
.quotation-view-page>.locked-banner .badge{font-size:10px;padding:5px 9px}
.quotation-view-page>.card{padding:16px;border-color:var(--qv-line);border-radius:13px;box-shadow:0 2px 8px rgba(15,31,56,.035)}
.quotation-view-page>.card[style*="margin-top:20px"]{margin-top:16px!important}
.quotation-view-page .view-grid{gap:10px}
.quotation-view-page .view-field{padding:10px 13px;border-color:var(--qv-line);border-radius:10px;background:var(--qv-soft);min-height:66px;display:flex;flex-direction:column;justify-content:center}
.quotation-view-page .view-field>span{font-size:9px;letter-spacing:.65px;margin-bottom:4px;color:var(--qv-muted)}
.quotation-view-page .view-field>strong{font-size:14px;line-height:1.32;letter-spacing:-.08px;font-weight:700}
.quotation-view-page .view-field>small{display:block;margin-top:3px;font-size:9.5px;line-height:1.3;color:var(--qv-muted)}
.quotation-view-page>.card>h3,
.quotation-view-page>.card .toolbar h3{font-size:18px;line-height:1.2;letter-spacing:-.2px}
.quotation-view-page>.card>.toolbar{margin-bottom:12px}
.quotation-view-page>.card>.toolbar .small{font-size:10.5px;margin-top:3px}
.quotation-view-page .route-pricing-grid{gap:9px}
.quotation-view-page .route-pricing-grid>div{padding:9px 11px;border-color:var(--qv-line);border-radius:9px;background:var(--qv-soft)}
.quotation-view-page .route-pricing-grid span{font-size:8.5px;letter-spacing:.55px}
.quotation-view-page .route-pricing-grid strong{font-size:12.5px;margin-top:3px;line-height:1.25}
.quotation-view-page .quote-total span{font-size:9.5px;letter-spacing:.55px}
.quotation-view-page .quote-total strong{display:block;font-size:27px;line-height:1.05;margin-top:3px;letter-spacing:-.45px}
.quotation-view-page .rate-breakdown-grid{gap:10px}
.quotation-view-page .rate-breakdown-grid>div{padding:11px 12px;border-color:var(--qv-line);border-radius:10px;background:var(--qv-soft);min-height:104px}
.quotation-view-page .rate-breakdown-grid span{font-size:8.5px;letter-spacing:.55px}
.quotation-view-page .rate-breakdown-grid strong{font-size:15px;margin-top:4px;line-height:1.2}
.quotation-view-page .rate-breakdown-grid small{font-size:9px;margin-top:4px;line-height:1.35}
.quotation-view-page .doe-reference-grid{gap:9px}
.quotation-view-page .doe-reference-grid>div{padding:9px 11px;border-color:var(--qv-line);border-radius:9px;background:var(--qv-soft);min-height:62px}
.quotation-view-page .doe-reference-grid span{font-size:8.5px;letter-spacing:.55px;margin-bottom:3px}
.quotation-view-page .doe-reference-grid strong{font-size:12.5px;line-height:1.25}
.quotation-view-page .lock-note{font-size:11px}
@media(max-width:1100px){
  .quotation-view-page .rate-breakdown-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .quotation-view-page>.toolbar{align-items:flex-start;gap:12px;flex-direction:column}
  .quotation-view-page>.toolbar .row-actions{flex-wrap:wrap;white-space:normal}
  .quotation-view-page .quote-total{text-align:left}
  .quotation-view-page>.card>.toolbar{align-items:flex-start}
  .quotation-view-page .route-pricing-grid-3{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .quotation-view-page>.toolbar h2{font-size:23px}
  .quotation-view-page>.card{padding:13px}
  .quotation-view-page .view-field{min-height:60px}
  .quotation-view-page .rate-breakdown-grid,
  .quotation-view-page .route-pricing-grid-3,
  .quotation-view-page .doe-reference-grid{grid-template-columns:1fr}
  .quotation-view-page .quote-total strong{font-size:24px}
}

/* V12.25 · accounting master shortcuts */
.master-link-card{display:block;color:var(--text);transition:transform .12s ease,box-shadow .12s ease}.master-link-card:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(16,32,56,.08)}.master-link-card h3{margin:5px 0 7px}.master-link-card p{margin:0;line-height:1.45}

/* V12.36 · Cash Disbursement validation keeps entered values and points to the exact field. */
.admin-ui-v10 .content form:not(.report-filter) .field.has-error input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
.admin-ui-v10 .content form:not(.report-filter) .field.has-error select,
.admin-ui-v10 .content form:not(.report-filter) .field.has-error textarea{
  border-color:#dc2626!important;
  box-shadow:0 0 0 3px rgba(220,38,38,.09)!important;
  background:#fffafa;
}
.admin-ui-v10 .content form:not(.report-filter) .field.has-error>label{color:#b91c1c!important}
.admin-ui-v10 .content form:not(.report-filter) .field-error{margin:6px 4px 0;color:#b91c1c;font-size:11px;font-weight:700;line-height:1.35}

/* Website Management V1 */
.wm-hero{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:26px 28px;margin-bottom:20px;border-radius:16px;background:linear-gradient(120deg,#111318,#2a171a);color:#fff}
.wm-hero h2{font-size:30px;margin:3px 0 7px}.wm-hero p{max-width:720px;margin:0;color:#c9ccd2}.wm-kicker{font-size:10px;text-transform:uppercase;letter-spacing:1.6px;color:#ff6d76;font-weight:900}
.wm-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px}
.wm-stat{display:flex;flex-direction:column;min-height:125px;padding:18px;border:1px solid #e1e3e7;border-radius:14px;background:#fff;color:#15181d;text-decoration:none;transition:.2s}
.wm-stat:hover{transform:translateY(-2px);border-color:#d6a4a8;box-shadow:0 8px 22px rgba(17,19,24,.07)}
.wm-stat span{font-size:11px;color:#6d727b;font-weight:800}.wm-stat strong{font-size:32px;margin:7px 0 2px;color:#b70e18}.wm-stat small{color:#858a92}
.wm-two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}.wm-editor-layout{grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr)}
.wm-cover-preview{display:block;width:100%;max-width:460px;aspect-ratio:16/7;object-fit:cover;border-radius:12px;margin-top:10px;border:1px solid #e0e2e6}
.wm-help-list{display:grid;gap:0}.wm-help-list>div{display:flex;flex-direction:column;padding:14px 0;border-bottom:1px solid #eceef1}.wm-help-list>div:last-child{border:0}.wm-help-list span{color:#747982;font-size:12px;margin-top:3px}
.wm-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.wm-media-card{overflow:hidden;border:1px solid #e1e3e7;border-radius:15px;background:#fff}.wm-media-card>img{width:100%;aspect-ratio:4/3;object-fit:cover}.wm-media-card form{padding:16px}.wm-inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.wm-detail-card{margin-bottom:18px}.wm-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.wm-detail-grid>div{padding:13px;border-radius:10px;background:#f6f7f8}.wm-detail-grid span{display:block;font-size:10px;color:#7c8189;text-transform:uppercase;font-weight:800}.wm-detail-grid strong{display:block;margin-top:3px}
.wm-message-box{padding:17px;border:1px solid #e1e3e7;border-radius:12px;background:#fff}.wm-message-box p{margin:7px 0 0;color:#555b63}.wm-inline-status{display:flex;gap:8px;align-items:center}
@media(max-width:1180px){.wm-stat-grid{grid-template-columns:repeat(3,1fr)}.wm-media-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.wm-two-col,.wm-editor-layout{grid-template-columns:1fr}.wm-stat-grid{grid-template-columns:repeat(2,1fr)}.wm-detail-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.wm-stat-grid,.wm-media-grid,.wm-detail-grid{grid-template-columns:1fr}.wm-hero{align-items:flex-start;flex-direction:column}.wm-inline-status{flex-direction:column;align-items:stretch}}

.wm-service-preview{
    display:block;
    width:100%;
    max-width:560px;
    aspect-ratio:10/7;
    object-fit:cover;
    margin-top:10px;
    border:1px solid #e0e2e6;
    border-radius:12px;
}
.wm-service-thumb{
    width:82px;
    height:54px;
    display:block;
    object-fit:cover;
    border-radius:8px;
    border:1px solid #e0e2e6;
}

/* Website Clients / Partners */
.wm-client-logo-preview{margin-top:12px;width:100%;max-width:360px;height:150px;display:grid;place-items:center;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff}.wm-client-logo-preview img{display:block;max-width:100%;max-height:110px;object-fit:contain}.wm-client-logo-thumb{width:110px;height:58px;display:grid;place-items:center;padding:8px;border:1px solid var(--line);border-radius:10px;background:#fff}.wm-client-logo-thumb img{display:block;max-width:100%;max-height:42px;object-fit:contain}

/* V12.80 · premium dashboard and sidebar refresh */
.admin-ui-premium{--bg:#f4f7fb;--card:#ffffff;--text:#10233f;--muted:#64748b;--line:#dbe5f0;--primary:#173c7a;--dark:#082246}
.admin-ui-premium .sidebar{width:250px;background:linear-gradient(180deg,#082246 0%,#071a37 100%);padding:18px 16px 20px;border-right:1px solid rgba(255,255,255,.06)}
.admin-ui-premium .main{margin-left:250px;width:calc(100% - 250px)}
.admin-ui-premium .company-sidebar-brand{display:flex;align-items:center;gap:10px;padding:10px 8px 18px;margin-bottom:10px;border-bottom:1px solid rgba(219,231,251,.08)}
.admin-ui-premium .company-sidebar-brand img{width:40px;height:40px;object-fit:contain;background:#fff;border-radius:10px;padding:4px;box-shadow:0 10px 22px rgba(0,0,0,.15)}
.admin-ui-premium .company-sidebar-brand strong{display:block;font-size:16px;line-height:1.05;color:#fff;white-space:nowrap;letter-spacing:-.2px}
.admin-ui-premium .company-sidebar-brand small{display:block;margin-top:5px;color:#8faad1;font-size:10px;letter-spacing:.15px;opacity:1;white-space:nowrap}
.admin-ui-premium .nav-dashboard,.admin-ui-premium .nav-group-toggle,.admin-ui-premium .nav-submenu .nav-sub-link{border-radius:12px}
.admin-ui-premium .nav-dashboard{font-size:15px;padding:12px 14px;background:rgba(255,255,255,.03);color:#e9f0ff}
.admin-ui-premium .sidebar nav a.active,.admin-ui-premium .nav-submenu .nav-sub-link.active,.admin-ui-premium .nav-dashboard.active{background:linear-gradient(90deg,rgba(42,104,214,.42),rgba(25,58,114,.55));box-shadow:inset 3px 0 0 #ff4d5d;color:#fff}
.admin-ui-premium .nav-group+.nav-group{margin-top:5px}
.admin-ui-premium .nav-group-toggle{padding:10px 12px;font-size:12px;letter-spacing:.12em;color:#d7e6ff;background:transparent}
.admin-ui-premium .nav-group-toggle:hover,.admin-ui-premium .nav-group.open>.nav-group-toggle{background:rgba(255,255,255,.055)}
.admin-ui-premium .nav-submenu .nav-sub-link{margin:4px 0 0 8px;padding:10px 12px 10px 16px;border-left:1px solid rgba(194,213,240,.18);color:#bcd0ec}
.admin-ui-premium .nav-submenu .nav-sub-link:hover{background:rgba(255,255,255,.06);border-left-color:#90b3ea;color:#fff}
.admin-ui-premium .topbar{height:auto;min-height:74px;padding:16px 26px;border-bottom:1px solid #dfe8f3;box-shadow:0 6px 22px rgba(11,31,59,.04)}
.admin-ui-premium .topbar-title-block{display:flex;flex-direction:column;gap:4px}
.admin-ui-premium .topbar-title-block strong{font-size:17px;line-height:1.1}
.admin-ui-premium .topbar-title-block span{font-size:13px;color:#64748b}
.admin-ui-premium .topbar-actions{gap:12px}
.admin-ui-premium .user-chip{display:flex;align-items:center;gap:10px;padding:7px 10px 7px 8px;border:1px solid #d9e4f1;border-radius:999px;background:#fff}
.admin-ui-premium .user-avatar{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#173c7a;color:#fff;font-weight:800}
.admin-ui-premium .user-chip strong,.admin-ui-premium .user-chip small{display:block;line-height:1.1}
.admin-ui-premium .user-chip small{color:#6a7a92;font-size:11px;margin-top:3px}
.admin-ui-premium .topbar-logout{display:inline-flex;align-items:center;justify-content:center;padding:11px 14px;border-radius:10px;border:1px solid #d9e4f1;background:#fff;color:#173c7a;font-weight:700}
.admin-ui-premium .content{padding:20px 24px 28px}
.admin-ui-premium .card{border-radius:18px;border:1px solid #dee7f2;box-shadow:0 12px 28px rgba(10,30,55,.05)}
.admin-ui-premium .dashboard-hero-card{display:grid;grid-template-columns:1.35fr .9fr;gap:18px;align-items:stretch;padding:26px 26px 20px;background:linear-gradient(135deg,#ffffff 0%,#f5f9ff 52%,#eef4fb 100%);margin-bottom:18px;overflow:hidden}
.admin-ui-premium .dashboard-eyebrow{font-size:18px;color:#66758a;margin-bottom:8px}
.admin-ui-premium .dashboard-hero-card h1{margin:0;font-size:26px;line-height:1.1;color:#0f2550}
.admin-ui-premium .dashboard-hero-card p{max-width:720px;margin:10px 0 0;color:#64748b;font-size:14px;line-height:1.6}
.admin-ui-premium .dashboard-hero-visual{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-end;padding:12px 4px;background:linear-gradient(120deg,rgba(17,54,108,.02),rgba(17,54,108,.08));border-radius:16px;position:relative;overflow:hidden}
.admin-ui-premium .dashboard-hero-visual::before{content:"";position:absolute;right:-40px;top:-30px;width:240px;height:120px;background:radial-gradient(circle at center,rgba(23,60,122,.16),transparent 70%)}
.admin-ui-premium .dashboard-hero-visual::after{content:"";position:absolute;right:12px;bottom:12px;width:210px;height:70px;border-radius:14px;background:linear-gradient(120deg,rgba(255,255,255,.05),rgba(23,60,122,.13));mask:linear-gradient(180deg,#000,#000)}
.admin-ui-premium .dashboard-hero-copy{font-size:12px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:#193a72;text-align:right;position:relative;z-index:1}
.admin-ui-premium .dashboard-hero-sub{margin-top:8px;font-size:12px;color:#7b8799;text-align:right;position:relative;z-index:1}
.admin-ui-premium .dashboard-metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}
.admin-ui-premium .metric-card-modern{background:#fff;border:1px solid #dee7f2;border-radius:18px;padding:18px 18px 16px;min-height:146px;position:relative;overflow:hidden}
.admin-ui-premium .metric-card-modern::after{content:"";position:absolute;right:-18px;bottom:-18px;width:78px;height:78px;border-radius:50%;background:rgba(15,35,63,.04)}
.admin-ui-premium .metric-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.admin-ui-premium .metric-card-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:14px;font-size:12px;font-weight:800;letter-spacing:.06em}
.admin-ui-premium .metric-card-ghost{width:18px;height:18px;border-radius:6px;background:rgba(17,54,108,.08)}
.admin-ui-premium .metric-card-label{font-size:13px;color:#5d6d84;font-weight:700}
.admin-ui-premium .metric-card-value{margin-top:7px;font-size:34px;line-height:1.05;font-weight:800;color:#0f2550;word-break:break-word}
.admin-ui-premium .metric-card-value.money{font-size:28px}
.admin-ui-premium .metric-card-value.negative{color:#b91c1c}
.admin-ui-premium .metric-card-note{margin-top:8px;font-size:12px;color:#7b8799;line-height:1.45;position:relative;z-index:1}
.admin-ui-premium .tone-blue .metric-card-icon{background:#e7f0ff;color:#2563eb}.admin-ui-premium .tone-red .metric-card-icon{background:#ffe9ec;color:#dc2626}.admin-ui-premium .tone-green .metric-card-icon{background:#e9f8ee;color:#16a34a}.admin-ui-premium .tone-amber .metric-card-icon{background:#fff4dd;color:#d97706}.admin-ui-premium .tone-violet .metric-card-icon{background:#f1ebff;color:#7c3aed}
.admin-ui-premium .dashboard-main-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}.admin-ui-premium .operations-panel{grid-column:span 3}.admin-ui-premium .recent-trips-panel{grid-column:span 2}
.admin-ui-premium .operations-panel,.admin-ui-premium .recent-trips-panel{padding:20px}
.admin-ui-premium .section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}
.admin-ui-premium .section-head p{margin:4px 0 0;font-size:13px;color:#718198}
.admin-ui-premium .section-title{font-size:16px;font-weight:800;color:#0f2550}
.admin-ui-premium .section-pill{display:inline-flex;align-items:center;padding:9px 12px;border-radius:999px;background:#fff2f4;color:#cf2338;font-size:11px;font-weight:800;white-space:nowrap}
.admin-ui-premium .analytics-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:16px}
.admin-ui-premium .chart-panel{background:#f8fbff;border:1px solid #e0e8f3;border-radius:16px;padding:16px}
.admin-ui-premium .chart-title{font-size:14px;font-weight:800;color:#12315d}
.admin-ui-premium .chart-subtitle{margin-top:3px;font-size:12px;color:#7b8799}
.admin-ui-premium .ops-horizontal-bars{display:flex;flex-direction:column;gap:14px;margin-top:18px}
.admin-ui-premium .ops-bar-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px;font-size:13px;color:#334155}
.admin-ui-premium .ops-bar-meta strong{font-size:15px;color:#0f2550}
.admin-ui-premium .ops-bar-track{height:10px;border-radius:999px;background:#eaf0f7;overflow:hidden}
.admin-ui-premium .ops-bar-fill{height:100%;border-radius:999px}
.admin-ui-premium .ops-bar-row.tone-blue .ops-bar-fill{background:linear-gradient(90deg,#3b82f6,#60a5fa)}
.admin-ui-premium .ops-bar-row.tone-red .ops-bar-fill{background:linear-gradient(90deg,#ef4444,#fb7185)}
.admin-ui-premium .ops-bar-row.tone-green .ops-bar-fill{background:linear-gradient(90deg,#16a34a,#4ade80)}
.admin-ui-premium .ops-bar-row.tone-amber .ops-bar-fill{background:linear-gradient(90deg,#f59e0b,#fbbf24)}
.admin-ui-premium .ops-bar-row.tone-violet .ops-bar-fill{background:linear-gradient(90deg,#7c3aed,#a78bfa)}
.admin-ui-premium .ops-vertical-chart{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;height:238px;margin-top:18px}
.admin-ui-premium .ops-vbar-item{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;min-width:0}
.admin-ui-premium .ops-vbar-value{font-size:13px;font-weight:800;color:#0f2550}
.admin-ui-premium .ops-vbar-track{display:flex;align-items:flex-end;justify-content:center;height:170px;width:100%;padding:0 6px;border-radius:14px;background:linear-gradient(180deg,#f7faff,#eef4fb)}
.admin-ui-premium .ops-vbar-fill{width:min(46px,100%);border-radius:14px 14px 8px 8px;background:linear-gradient(180deg,#1f5aa6,#14376f)}
.admin-ui-premium .ops-vbar-label{font-size:12px;color:#6b7a90;font-weight:700}
.admin-ui-premium .quick-stats-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:16px}
.admin-ui-premium .quick-stat-box{padding:14px 12px;border:1px solid #e2eaf4;border-radius:14px;background:#fff}
.admin-ui-premium .quick-stat-box span{display:block;font-size:11px;color:#7a889b;text-transform:uppercase;letter-spacing:.04em}
.admin-ui-premium .quick-stat-box strong{display:block;margin-top:7px;font-size:26px;color:#0f2550}
.admin-ui-premium .dashboard-actions{margin-top:16px}
.admin-ui-premium .recent-trips-list{display:flex;flex-direction:column;gap:10px}
.admin-ui-premium .recent-trip-item{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px 14px;border:1px solid #e1e8f2;border-radius:14px;background:#fbfdff;color:#10233f}
.admin-ui-premium .recent-trip-item:hover{background:#f5f9ff;border-color:#cddced}
.admin-ui-premium .recent-trip-no{font-size:14px;font-weight:800;color:#12315d}
.admin-ui-premium .recent-trip-client{margin-top:3px;font-size:13px;font-weight:700;color:#334155}
.admin-ui-premium .recent-trip-route{margin-top:5px;font-size:12px;color:#718198;line-height:1.45}
.admin-ui-premium .recent-trip-side{text-align:right;display:flex;flex-direction:column;gap:8px;align-items:flex-end}
.admin-ui-premium .recent-trip-side small{font-size:11px;color:#7b8799}
.admin-ui-premium .dashboard-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:38px 22px;border:1px dashed #d5dfeb;border-radius:16px;background:linear-gradient(180deg,#fcfdff,#f5f9ff)}
.admin-ui-premium .empty-illustration{font-size:44px;line-height:1}
.admin-ui-premium .dashboard-empty-state h3{margin:12px 0 6px;font-size:24px;color:#0f2550}
.admin-ui-premium .dashboard-empty-state p{max-width:340px;margin:0 0 18px;font-size:13px;line-height:1.6;color:#718198}
.admin-ui-premium .dashboard-note-box{display:flex;flex-direction:column;gap:6px;margin-top:16px;padding:14px 15px;border-radius:14px;background:#fff3f5;border:1px solid #ffd7de;color:#8f2030}
.admin-ui-premium .dashboard-note-box strong{font-size:13px}.admin-ui-premium .dashboard-note-box span{font-size:12px;line-height:1.5}
.admin-ui-premium .btn{border-radius:12px;padding:11px 15px;font-weight:800;box-shadow:0 8px 18px rgba(23,60,122,.14)}
.admin-ui-premium .btn.secondary{box-shadow:none;background:#fff;color:#10233f;border:1px solid #dce5f0}
.admin-ui-premium .small-btn{padding:9px 13px;font-size:12px}
@media(max-width:1200px){
  .admin-ui-premium .dashboard-metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .admin-ui-premium .dashboard-main-grid,.admin-ui-premium .dashboard-hero-card,.admin-ui-premium .analytics-grid{grid-template-columns:1fr}
  .admin-ui-premium .operations-panel,.admin-ui-premium .recent-trips-panel{grid-column:auto}
  .admin-ui-premium .quick-stats-row{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .admin-ui-premium .sidebar{width:100%;position:static}
  .admin-ui-premium .main{margin-left:0;width:100%}
  .admin-ui-premium .topbar{padding:14px 16px;flex-direction:column;align-items:flex-start}
  .admin-ui-premium .topbar-actions{width:100%;justify-content:space-between;flex-wrap:wrap}
  .admin-ui-premium .dashboard-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-ui-premium .quick-stats-row{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .admin-ui-premium .content{padding:16px}
  .admin-ui-premium .dashboard-hero-card h1{font-size:22px}
  .admin-ui-premium .dashboard-metrics-grid,.admin-ui-premium .quick-stats-row{grid-template-columns:1fr}
  .admin-ui-premium .metric-card-value{font-size:30px}
  .admin-ui-premium .metric-card-value.money{font-size:24px}
  .admin-ui-premium .recent-trip-item{flex-direction:column}
  .admin-ui-premium .recent-trip-side{align-items:flex-start;text-align:left}
}

/* V12.81 · dashboard compact card layout and sidebar icon polish */
.admin-ui-premium .compact-hero-card{
  grid-template-columns:1fr !important;
  padding:24px 26px 22px;
}
.admin-ui-premium .compact-hero-card p{
  max-width:760px;
}
.admin-ui-premium .dashboard-metrics-grid-five{
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:16px;
}
.admin-ui-premium .metric-card-compact{
  min-height:124px;
  padding:16px 16px 14px;
  border-radius:18px;
}
.admin-ui-premium .metric-card-head.compact{
  margin-bottom:10px;
}
.admin-ui-premium .metric-card-compact .metric-card-label{
  font-size:13px;
  line-height:1.35;
  margin-bottom:6px;
}
.admin-ui-premium .metric-card-compact .metric-card-value{
  font-size:24px;
  line-height:1.05;
  margin-bottom:8px;
}
.admin-ui-premium .metric-card-compact .metric-card-value.money{
  font-size:23px;
}
.admin-ui-premium .metric-card-compact .metric-card-note{
  font-size:12px;
  line-height:1.45;
}
.admin-ui-premium .metric-card-icon.icon-svg{
  width:42px;
  height:42px;
  border-radius:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.admin-ui-premium .metric-card-icon.icon-svg svg,
.admin-ui-premium .nav-link-icon svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.admin-ui-premium .metric-card-modern.tone-blue .metric-card-icon.icon-svg{color:#2563eb;background:#e7efff}
.admin-ui-premium .metric-card-modern.tone-red .metric-card-icon.icon-svg{color:#dc2626;background:#fdeced}
.admin-ui-premium .metric-card-modern.tone-amber .metric-card-icon.icon-svg{color:#d97706;background:#fff3dc}
.admin-ui-premium .metric-card-modern.tone-green .metric-card-icon.icon-svg{color:#16a34a;background:#e9f8ef}
.admin-ui-premium .metric-card-modern.tone-violet .metric-card-icon.icon-svg{color:#7c3aed;background:#f1e9ff}

.admin-ui-premium .nav-dashboard,
.admin-ui-premium .nav-group-toggle,
.admin-ui-premium .nav-submenu .nav-sub-link{
  display:flex;
  align-items:center;
}
.admin-ui-premium .nav-dashboard{
  gap:10px;
}
.admin-ui-premium .nav-group-toggle{
  justify-content:space-between;
}
.admin-ui-premium .nav-group-label{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.admin-ui-premium .nav-link-icon{
  width:18px;
  height:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 18px;
  color:#9fb9e4;
}
.admin-ui-premium .nav-dashboard.active .nav-link-icon,
.admin-ui-premium .nav-group.open > .nav-group-toggle .nav-link-icon,
.admin-ui-premium .nav-group-toggle:hover .nav-link-icon,
.admin-ui-premium .nav-submenu .nav-sub-link.active .nav-item-dot{
  color:#ffffff;
}
.admin-ui-premium .nav-submenu .nav-sub-link{
  gap:10px;
  align-items:center;
}
.admin-ui-premium .nav-item-dot{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#87a9d9;
  box-shadow:0 0 0 3px rgba(135,169,217,.12);
  flex:0 0 7px;
}
.admin-ui-premium .nav-submenu .nav-sub-link:hover .nav-item-dot{
  background:#dbeafe;
}
.admin-ui-premium .nav-submenu .nav-sub-link.active .nav-item-dot{
  background:#ff737f;
  box-shadow:0 0 0 3px rgba(255,115,127,.18);
}

@media (max-width: 1500px){
  .admin-ui-premium .dashboard-metrics-grid-five{
    grid-template-columns:repeat(5,minmax(0,1fr));
  }
}
@media (max-width: 1280px){
  .admin-ui-premium .dashboard-metrics-grid-five{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}
@media (max-width: 1024px){
  .admin-ui-premium .dashboard-metrics-grid-five{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media (max-width: 700px){
  .admin-ui-premium .dashboard-metrics-grid-five{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 520px){
  .admin-ui-premium .dashboard-metrics-grid-five{
    grid-template-columns:1fr;
  }
}


/* V12.83 · sidebar brand cleanup and optional topbar title hide */
.admin-ui-premium .company-sidebar-brand small{
  max-width: 150px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.admin-ui-premium .topbar{
  min-height: 72px;
}

/* Public form security · Google reCAPTCHA v2 */
.quote-recaptcha-wrap{margin:18px 0 4px;padding:14px 16px;border:1px solid rgba(20,26,38,.08);border-radius:14px;background:#fafbfc;overflow-x:auto}
.quote-recaptcha-error{margin-top:8px;color:#9b1018;font-size:12px;font-weight:700}
.quote-public-alert{margin:0 0 18px;padding:13px 16px;border:1px solid rgba(201,16,27,.18);border-left:4px solid #c9101b;border-radius:12px;background:#fff5f6;color:#7e1118;font-size:13px;font-weight:700;line-height:1.5}
@media(max-width:430px){.quote-recaptcha-wrap{padding:10px 8px;transform-origin:left top}.quote-recaptcha-wrap .g-recaptcha{transform:scale(.88);transform-origin:left top;margin-bottom:-8px}}

/* reCAPTCHA legal notice shown directly after public quotation submit actions */
.quote-recaptcha-legal-note{margin-top:12px;font-size:11px;line-height:1.6;color:#7b818a}
.quote-recaptcha-legal-note a{color:#5d6570;text-decoration:underline;text-underline-offset:2px}


/* ================================================================
   My Workspace / Employee Portal V1
   ================================================================ */
.user-chip-link{text-decoration:none;color:inherit}.user-chip-link:hover{background:rgba(255,255,255,.78);transform:translateY(-1px)}
.workspace-shell{display:grid;gap:18px}.workspace-hero{position:relative;min-height:205px;border:1px solid #e1e6ed;border-radius:24px;overflow:hidden;background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(246,249,252,.94) 42%,rgba(18,35,55,.24) 100%),url('../images/management-login-bg-clean.png') center right/cover no-repeat;box-shadow:0 16px 40px rgba(18,28,45,.07);display:flex;align-items:center;padding:30px 34px}.workspace-hero-copy{position:relative;z-index:2;max-width:58%}.workspace-eyebrow{display:block;color:#d71920;font-size:11px;font-weight:900;letter-spacing:1.4px;margin-bottom:8px}.workspace-hero h1{margin:0;font-size:clamp(32px,4vw,48px);letter-spacing:-1.5px;color:#101927}.workspace-hero-copy p{margin:9px 0 15px;color:#596675;font-size:14px;line-height:1.55}.workspace-hero-meta{display:flex;gap:9px;flex-wrap:wrap}.workspace-hero-meta span{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.82);border:1px solid rgba(30,45,64,.08);font-size:10px;font-weight:800;color:#3f4c5c}.workspace-hero-art{position:absolute;right:34px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:flex-start;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.38)}.workspace-hero-verse{width:min(520px,40%);text-align:left;padding:16px 18px;border-radius:16px;background:rgba(10,24,40,.13);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.workspace-hero-verse p{margin:0 0 10px;color:#fff;font-size:14px;font-weight:700;line-height:1.55;letter-spacing:.05px}.workspace-hero-verse strong{display:block;margin-top:auto;margin-left:auto;text-align:right;font-size:13px;letter-spacing:.8px;text-transform:uppercase;color:#fff;opacity:.95}
.workspace-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.workspace-stat-card{display:flex;align-items:center;gap:14px;min-height:110px;padding:18px;border:1px solid #e3e8ee;border-radius:18px;background:#fff;box-shadow:0 10px 26px rgba(18,28,45,.045);text-decoration:none;color:inherit;transition:.2s}.workspace-stat-card:hover{transform:translateY(-2px);box-shadow:0 15px 34px rgba(18,28,45,.08)}.workspace-stat-icon{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;font-size:22px;font-weight:900;flex:0 0 auto}.workspace-stat-icon.red{background:#ffe7e9;color:#d71920}.workspace-stat-icon.blue{background:#e7f2ff;color:#1972d4}.workspace-stat-icon.green{background:#e7f8ec;color:#159447}.workspace-stat-icon.purple{background:#eeeaff;color:#634bd2}.workspace-stat-card div{display:flex;flex-direction:column;min-width:0}.workspace-stat-card small{font-size:11px;color:#596575}.workspace-stat-card strong{font-size:28px;line-height:1.05;color:#122033}.workspace-stat-card em{font-style:normal;font-size:10px;color:#748091;margin-top:4px}
.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}.workspace-main-column,.workspace-middle-column,.workspace-side-column{display:grid;gap:16px}.workspace-card{background:#fff;border:1px solid #e2e7ed;border-radius:20px;padding:18px;box-shadow:0 10px 28px rgba(18,28,45,.045);min-width:0}.workspace-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.workspace-card-head>div{display:flex;align-items:center;gap:8px}.workspace-card-head h2{margin:0;font-size:17px;color:#142033}.workspace-card-head a{font-size:10px;font-weight:800;text-decoration:none;color:#174ea6}.workspace-card-icon{color:#d71920;font-weight:900}
.workspace-empty{padding:18px;border-radius:14px;background:#f7f9fb;border:1px dashed #dbe2e9;display:flex;flex-direction:column;gap:4px;color:#6b7786}.workspace-empty strong{font-size:12px;color:#334154}.workspace-empty span{font-size:10px;line-height:1.5}.workspace-empty.compact{padding:14px}.workspace-announcement-list{display:grid;gap:10px}.workspace-announcement-list>a,.workspace-announcement-item{display:grid;grid-template-columns:58px 1fr;gap:14px;align-items:center;padding:14px;border-radius:13px;background:#fafbfc;border:1px solid #edf0f3;text-decoration:none;color:inherit}.workspace-announcement-list>a>span,.workspace-announcement-item>span{display:grid;place-items:center;min-height:46px;border-radius:10px;background:#fff0f1;color:#d71920;font-size:11px;font-weight:900}.workspace-announcement-list strong{display:block;font-size:16px;line-height:1.35;color:#142033}.workspace-announcement-list p{margin:5px 0 0;font-size:12px;line-height:1.55;color:#697585}
.workspace-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.workspace-quick-action{min-height:115px;border-radius:15px;padding:13px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;text-decoration:none;color:#223044;background:#f7f9fb;border:1px solid #edf0f3;transition:.2s}.workspace-quick-action:hover{transform:translateY(-2px);border-color:#cfd8e3;box-shadow:0 10px 20px rgba(23,43,70,.06)}.workspace-quick-action:nth-child(3n+1){background:#fff1f2}.workspace-quick-action:nth-child(3n+2){background:#eef9f1}.workspace-quick-action:nth-child(3n){background:#eef6ff}.workspace-quick-action .qa-icon{font-size:22px;color:#d71920;margin-bottom:5px}.workspace-quick-action strong{font-size:11px}.workspace-quick-action small{font-size:9px;color:#788391;margin-top:3px}
.workspace-todo-list{display:grid}.workspace-todo-list>div:not(.workspace-empty){display:grid;grid-template-columns:16px 1fr auto;gap:8px;align-items:center;padding:11px 3px;border-bottom:1px solid #edf0f3}.workspace-todo-list>div:last-child{border-bottom:0}.todo-dot{width:10px;height:10px;border:2px solid #d71920;border-radius:50%}.todo-dot.amber{border-color:#e7a900}.todo-dot.blue{border-color:#2774d0}.workspace-todo-list strong{font-size:11px}.workspace-todo-list em{font-style:normal;font-size:10px;color:#727e8d}
.workspace-announcements-card,.workspace-profile-card{min-height:225px}.workspace-announcements-card{display:flex;flex-direction:column}.workspace-announcements-card .workspace-empty,.workspace-announcements-card .workspace-announcement-list{flex:1}.workspace-profile-card{text-align:center;display:flex;flex-direction:column}.workspace-profile-card .workspace-outline-btn{margin-top:auto}.workspace-profile-avatar{width:76px;height:76px;margin:3px auto 10px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#e9eef5,#cfd8e4);border:4px solid #fff;box-shadow:0 7px 20px rgba(24,39,60,.13);font-size:28px;font-weight:900;color:#1c2b40}.workspace-profile-copy h2{margin:0;font-size:18px}.workspace-profile-copy span{display:block;color:#7c8795;font-size:10px;margin:3px 0 7px}.workspace-profile-copy p{margin:2px 0;color:#4e5b6c;font-size:10px}.workspace-outline-btn{display:flex;justify-content:center;margin-top:14px;padding:10px;border:1px solid #d5dde7;border-radius:10px;text-decoration:none;font-size:10px;font-weight:800;color:#24446d;background:#fff}
.workspace-leave-list{display:grid;gap:13px}.workspace-leave-list>div>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:10px}.workspace-leave-list>div>div:first-child strong{font-size:10px}.workspace-leave-list>div>div:first-child span{color:#39744d}.leave-progress{height:8px;margin-top:7px;border-radius:999px;background:#e7ebef;overflow:hidden}.leave-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#159447,#45b76a)}
.workspace-schedule-list{display:grid}.workspace-schedule-list a{display:grid;grid-template-columns:74px 1fr;gap:9px;padding:10px 0;border-bottom:1px solid #edf0f3;text-decoration:none;color:inherit}.workspace-schedule-list a:last-child{border-bottom:0}.workspace-schedule-list time{font-size:10px;font-weight:900;color:#1f2d40}.workspace-schedule-list strong{display:block;font-size:10px}.workspace-schedule-list span{font-size:9px;color:#758192}.workspace-activity-list{display:grid;gap:10px}.workspace-activity-list>div{display:grid;grid-template-columns:8px 1fr auto;gap:8px;align-items:start}.workspace-activity-list>div>span{width:7px;height:7px;margin-top:4px;border-radius:50%;background:#d71920}.workspace-activity-list strong{display:block;font-size:10px}.workspace-activity-list small{display:block;font-size:9px;color:#788492;margin-top:2px}.workspace-activity-list time{font-size:8.5px;color:#7d8896;white-space:nowrap}
@media(max-width:1250px){.workspace-hero-copy{max-width:56%}.workspace-hero-verse{width:42%}.workspace-hero-verse p{font-size:12px}.workspace-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.workspace-stat-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.workspace-hero-copy{max-width:100%}.workspace-hero-art{display:none}.workspace-grid{grid-template-columns:1fr}.workspace-quick-grid{grid-template-columns:repeat(2,1fr)}.workspace-announcements-card,.workspace-profile-card{min-height:auto}}
@media(max-width:600px){.workspace-hero{padding:24px 20px;min-height:180px}.workspace-stat-grid{grid-template-columns:1fr}.workspace-quick-grid{grid-template-columns:1fr 1fr}.workspace-card{padding:15px}.workspace-stat-card{min-height:96px}}

/* ================================================================
   MY WORKSPACE V3 · Employee Self-Service / My Account Portal
   ================================================================ */
.employee-account-shell{display:grid;gap:20px;min-width:0}
.employee-account-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:4px 2px 0}
.employee-account-heading h2{margin:5px 0 6px;font-size:30px;line-height:1.05}
.employee-account-heading p{margin:0;color:var(--muted,#667085);max-width:820px}
.portal-type-badge{display:inline-flex;align-items:center;min-height:34px;padding:7px 12px;border-radius:999px;background:#f2f4f7;border:1px solid #e2e7ee;color:#344054;font-size:11px;font-weight:800;white-space:nowrap}
.employee-account-tabs{padding:4px 2px 10px}.employee-account-dropdown{display:block}.employee-account-select-wrap{position:relative;max-width:360px}.employee-account-select-label{position:absolute;left:16px;top:-7px;padding:0 6px;background:#f8fafc;color:#475467;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;z-index:2}.employee-account-select{appearance:none;-webkit-appearance:none;width:100%;height:48px;border-radius:16px;border:1px solid #d9e0e8;background:#fff;padding:18px 48px 10px 16px;color:#101828;font-size:13px;font-weight:700;box-shadow:0 6px 18px rgba(15,23,42,.04);cursor:pointer}.employee-account-select:hover{border-color:#c7d0db}.employee-account-select:focus{outline:none;border-color:#174ea6;box-shadow:0 0 0 3px rgba(23,78,166,.12)}.employee-account-select-arrow{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:13px;color:#475467;pointer-events:none}
.employee-account-summary-grid{display:grid;grid-template-columns:1.5fr repeat(3,minmax(0,.72fr));gap:14px}
.employee-account-summary-grid .card{min-width:0}
.employee-profile-summary{display:flex;align-items:center;gap:14px}
.employee-profile-summary>div:nth-child(2){min-width:0;flex:1}
.employee-profile-summary h3{margin:0 0 2px}.employee-profile-summary p{margin:2px 0;color:#667085;font-size:12px}
.portal-overview-grid{align-items:start}
.portal-shortcut-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.portal-shortcut-grid a{display:flex;flex-direction:column;gap:3px;padding:13px 14px;border:1px solid #e4e8ef;border-radius:14px;background:#fbfcfd;color:#1d2939;text-decoration:none;transition:.2s}
.portal-shortcut-grid a:hover{transform:translateY(-1px);background:#fff;border-color:#cfd6e2;box-shadow:0 7px 20px rgba(16,24,40,.06)}
.portal-shortcut-grid a strong{font-size:12px}.portal-shortcut-grid a span{font-size:10px;color:#7b8492}
.portal-link-warning{border-left:4px solid #d62828}
.portal-info-list{display:grid;gap:12px;margin-top:16px}.portal-info-list>div{display:flex;flex-direction:column;gap:3px;padding:12px;border-radius:12px;background:#f8fafc;border:1px solid #e7ebf1}.portal-info-list strong{font-size:12px}.portal-info-list span{font-size:11px;color:#667085}
.portal-liq-line{display:grid;grid-template-columns:120px minmax(180px,1.2fr) minmax(140px,.9fr) minmax(120px,.7fr) minmax(160px,1fr) 120px auto;gap:8px;align-items:center;margin-bottom:8px}
.portal-liq-line input,.portal-liq-line select{min-width:0;height:42px;padding:8px 10px}
.portal-liq-total{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin:14px 0 2px;padding-top:12px;border-top:1px solid #e6eaf0}.portal-liq-total span{font-size:11px;color:#667085}.portal-liq-total strong{font-size:18px}
@media(max-width:1180px){.employee-account-summary-grid{grid-template-columns:1fr 1fr}.employee-profile-summary{grid-column:1/-1}.portal-liq-line{grid-template-columns:1fr 1fr}.portal-liq-line .remove-portal-liq{justify-self:start}}
@media(max-width:720px){.employee-account-heading{align-items:flex-start;flex-direction:column}.employee-account-heading h2{font-size:26px}.employee-account-summary-grid{grid-template-columns:1fr}.employee-profile-summary{grid-column:auto;align-items:flex-start;flex-wrap:wrap}.portal-shortcut-grid{grid-template-columns:1fr}.portal-liq-line{grid-template-columns:1fr}.employee-account-tabs{margin-left:-4px;margin-right:-4px}}

/* V20 · My Documents / Change Password real form gaps */
.admin-ui-v10 .content .account-doc-form,
.admin-ui-v10 .content .account-security-form{
  display:flex;
  flex-direction:column;
  gap:20px;
}
.admin-ui-v10 .content .account-doc-form>h3,
.admin-ui-v10 .content .account-security-form>h3{
  margin:0 0 2px;
}
.admin-ui-v10 .content .account-doc-form .field,
.admin-ui-v10 .content .account-security-form .field{
  margin-top:0!important;
  margin-bottom:0!important;
}
.admin-ui-v10 .content .account-doc-form .field>label,
.admin-ui-v10 .content .account-security-form .field>label{
  top:-9px;
  left:15px;
  padding:0 8px;
  line-height:17px;
  background:#fff;
}
.admin-ui-v10 .content .account-doc-form .field .small,
.admin-ui-v10 .content .account-security-form .field .small{
  display:block;
  margin-top:8px;
  line-height:1.5;
}
.admin-ui-v10 .content .account-doc-form .actions,
.admin-ui-v10 .content .account-security-form .actions{
  margin-top:0;
}


/* V24 · Register Employee single-row name fields */
.employee-name-row{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:end;width:100%}
.employee-name-row .field{min-width:0}
@media(max-width:900px){.employee-name-row{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.employee-name-row{grid-template-columns:1fr}}


/* ================================================================
   V29 · Mobile portal responsive polish
   All rules below are phone-only; desktop/tablet desktop styles stay intact.
   ================================================================ */
.mobile-nav-toggle{display:none}
@media(max-width:760px){
  html,body{max-width:100%;overflow-x:hidden}
  .admin-ui-premium .layout{display:block;min-height:100vh}
  .admin-ui-premium .sidebar{
    position:relative;inset:auto;width:100%;max-height:none;overflow:visible;
    padding:10px 12px 12px;border-right:0;border-bottom:1px solid rgba(255,255,255,.08);
  }
  .admin-ui-premium .company-sidebar-brand{
    min-height:54px;margin:0;padding:5px 58px 7px 4px;border-bottom:0;gap:9px;
  }
  .admin-ui-premium .company-sidebar-brand img{width:36px;height:36px;flex:0 0 36px;border-radius:9px}
  .admin-ui-premium .company-sidebar-brand strong{font-size:14px;white-space:normal;line-height:1.15}
  .admin-ui-premium .company-sidebar-brand small{font-size:8.5px;margin-top:3px;white-space:normal}
  .mobile-nav-toggle{
    display:inline-flex;align-items:center;justify-content:center;gap:6px;position:absolute;right:12px;top:17px;
    min-width:48px;height:36px;padding:0 9px;border:1px solid rgba(255,255,255,.16);border-radius:10px;
    background:rgba(255,255,255,.08);color:#fff;font:800 11px/1 inherit;cursor:pointer;z-index:2;
  }
  .mobile-nav-toggle-icon{font-size:17px;line-height:1}
  .admin-ui-premium .sidebar-nav{display:none;padding-top:10px;border-top:1px solid rgba(219,231,251,.09);max-height:68vh;overflow:auto}
  .admin-ui-premium .sidebar.mobile-nav-open .sidebar-nav{display:flex}
  .admin-ui-premium .nav-dashboard{margin-bottom:4px}
  .admin-ui-premium .nav-group-toggle{min-height:42px}

  .admin-ui-premium .main{margin-left:0;width:100%;min-width:0}
  .admin-ui-premium .topbar{
    position:sticky;top:0;z-index:40;min-height:58px;height:auto;padding:8px 10px;
    flex-direction:row;align-items:center;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);
  }
  .admin-ui-premium .topbar-title-block{display:none}
  .admin-ui-premium .topbar-actions{
    width:100%;display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:8px;align-items:center;flex-wrap:nowrap;
  }
  .admin-ui-premium .notification-bell{width:38px;height:38px;border-radius:10px}
  .admin-ui-premium .notification-dropdown{position:fixed;left:10px;right:10px;top:62px;width:auto;max-width:none}
  .admin-ui-premium .user-chip{width:100%;min-width:0;height:42px;padding:5px 8px;gap:8px;overflow:hidden}
  .admin-ui-premium .user-avatar{width:31px;height:31px;flex:0 0 31px;font-size:12px}
  .admin-ui-premium .user-chip>span:last-child{min-width:0;overflow:hidden}
  .admin-ui-premium .user-chip strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .admin-ui-premium .user-chip small{font-size:8.5px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .admin-ui-premium .topbar-logout{height:40px;padding:0 11px;border-radius:10px;font-size:11px;white-space:nowrap}
  .admin-ui-premium .content{width:100%;max-width:100%;padding:12px 10px 22px;overflow:hidden}
  .admin-ui-premium .content>*{min-width:0;max-width:100%}

  .workspace-shell{gap:12px;width:100%;min-width:0}
  .workspace-hero{
    min-height:178px;padding:18px 16px;border-radius:18px;background-position:center center;
    background-image:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.82) 58%,rgba(18,35,55,.18) 100%),url('../images/management-login-bg-clean.png');
  }
  .workspace-hero-copy{max-width:100%;width:100%}
  .workspace-eyebrow{font-size:9px;letter-spacing:1.2px;margin-bottom:7px}
  .workspace-hero h1{font-size:30px;line-height:1.05;letter-spacing:-.8px;max-width:280px}
  .workspace-hero-copy p{font-size:11.5px;line-height:1.5;margin:9px 0 12px;max-width:285px}
  .workspace-hero-meta{gap:6px}
  .workspace-hero-meta span{padding:6px 8px;font-size:8px}
  .workspace-hero-art{display:none!important}

  .workspace-stat-grid{grid-template-columns:1fr;gap:10px}
  .workspace-stat-card{min-height:84px;padding:13px 14px;border-radius:16px;gap:12px}
  .workspace-stat-icon{width:40px;height:40px;flex-basis:40px;font-size:18px;border-radius:11px}
  .workspace-stat-card small{font-size:9px}
  .workspace-stat-card strong{font-size:24px}
  .workspace-stat-card em{font-size:8.5px;margin-top:2px}

  .workspace-grid{grid-template-columns:1fr;gap:12px}
  .workspace-main-column,.workspace-middle-column,.workspace-side-column{gap:12px;min-width:0}
  .workspace-card{padding:14px;border-radius:16px;min-width:0;overflow:hidden}
  .workspace-card-head{margin-bottom:12px}
  .workspace-card-head h2{font-size:15px}
  .workspace-card-head a{font-size:9px}
  .workspace-announcements-card,.workspace-profile-card{min-height:auto}
  .workspace-announcement-list>a,.workspace-announcement-item{grid-template-columns:48px minmax(0,1fr);gap:10px;padding:11px;align-items:start}
  .workspace-announcement-list>a>span,.workspace-announcement-item>span{min-height:40px;font-size:9px}
  .workspace-announcement-list strong{font-size:13px;line-height:1.35;overflow-wrap:anywhere}
  .workspace-announcement-list p{font-size:10px;line-height:1.55;overflow-wrap:anywhere}

  .workspace-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .workspace-quick-action{min-height:92px;padding:10px 8px;border-radius:13px}
  .workspace-quick-action .qa-icon{font-size:18px;margin-bottom:4px}
  .workspace-quick-action strong{font-size:9.5px}
  .workspace-quick-action small{font-size:8px}

  .workspace-todo-list>div:not(.workspace-empty){grid-template-columns:13px minmax(0,1fr) auto;gap:6px;padding:10px 2px}
  .workspace-todo-list strong{font-size:9.5px;min-width:0}
  .workspace-todo-list em{font-size:8px;text-align:right;white-space:nowrap}
  .workspace-profile-avatar{width:66px;height:66px;font-size:24px;margin-bottom:8px}
  .workspace-profile-copy h2{font-size:14px;line-height:1.25;overflow-wrap:anywhere}
  .workspace-profile-copy span,.workspace-profile-copy p{font-size:8.5px}
  .workspace-outline-btn{padding:9px;font-size:9px;margin-top:11px}

  .workspace-leave-list>div>div:first-child{font-size:9px;gap:7px}
  .workspace-leave-list>div>div:first-child strong{font-size:9px;min-width:0;overflow-wrap:anywhere}
  .workspace-activity-list{gap:9px}
  .workspace-activity-list>div{grid-template-columns:7px minmax(0,1fr);gap:7px}
  .workspace-activity-list>div>span{width:6px;height:6px}
  .workspace-activity-list strong{font-size:9.5px}
  .workspace-activity-list small{font-size:8px;overflow-wrap:anywhere}
  .workspace-activity-list time{grid-column:2;font-size:7.5px;white-space:normal;margin-top:-3px}

  .employee-account-heading{gap:10px}
  .employee-account-heading h2{font-size:24px}
  .employee-account-heading p{font-size:11px;line-height:1.5}
  .employee-account-select-wrap{max-width:none;width:100%}
  .employee-account-summary-grid{grid-template-columns:1fr;gap:10px}

  .card,.form-card,.table-wrap{max-width:100%;min-width:0}
  .form-card{padding:14px}
  .form-grid{grid-template-columns:1fr;gap:14px}
  .field.full{grid-column:auto}
  .actions{flex-wrap:wrap}
}

@media(max-width:390px){
  .admin-ui-premium .content{padding-left:8px;padding-right:8px}
  .admin-ui-premium .topbar{padding-left:8px;padding-right:8px}
  .admin-ui-premium .topbar-actions{grid-template-columns:38px minmax(0,1fr) auto;gap:6px}
  .admin-ui-premium .topbar-logout{padding:0 9px}
  .workspace-hero h1{font-size:28px}
  .workspace-quick-grid{gap:7px}
}


/* V34 · Employee Driver toggle fix */
.admin-ui-v10 .content form:not(.report-filter) .driver-toggle{align-self:start!important;margin-top:7px!important;padding:0!important}
.admin-ui-v10 .content form:not(.report-filter) .driver-toggle-control{display:flex;align-items:center;gap:9px;width:100%;height:44px;min-height:44px;padding:0 13px;border:1.4px solid #c9d5e6;border-radius:14px;background:#fff}
.admin-ui-v10 .content form:not(.report-filter) .driver-toggle-control input[type="checkbox"]{width:16px;height:16px;min-height:auto;padding:0;margin:0;accent-color:var(--primary);cursor:pointer;pointer-events:auto}
.admin-ui-v10 .content form:not(.report-filter) .driver-toggle-control label{position:static!important;display:inline!important;margin:0!important;padding:0!important;background:transparent!important;color:var(--text)!important;font-size:12px!important;line-height:1.35!important;font-weight:800!important;pointer-events:auto!important;cursor:pointer}
.admin-ui-v10 .content form:not(.report-filter) .driver-toggle>.small{margin-top:7px}

.status-draft{background:#fef3c7;color:#92400e}.status-reversal-pending{background:#ffedd5;color:#9a3412}.status-reversed{background:#e5e7eb;color:#475569}


/* V68 · Searchable Chart of Accounts combobox */
.account-search-control{position:relative;width:100%;min-width:0}
.account-search-native{position:absolute!important;left:0!important;bottom:0!important;width:1px!important;height:1px!important;min-width:1px!important;min-height:1px!important;padding:0!important;margin:0!important;border:0!important;opacity:0!important;pointer-events:none!important}
.account-search-input{width:100%;box-sizing:border-box;background:#fff;padding-right:34px!important}
.account-search-control:after{content:'⌄';position:absolute;right:12px;top:50%;transform:translateY(-54%);font-size:14px;color:#667085;pointer-events:none}
.account-search-menu{position:fixed;z-index:100000;overflow:auto;padding:5px;background:#fff;border:1px solid #cfd8e6;border-radius:10px;box-shadow:0 14px 36px rgba(15,23,42,.16)}
.account-search-option{display:block;width:100%;border:0;background:#fff;text-align:left;padding:9px 10px;border-radius:7px;color:#1d2939;font:inherit;font-size:12px;line-height:1.35;cursor:pointer;white-space:normal}
.account-search-option:hover,.account-search-option.active{background:#eef4ff;color:#173f7a}
.account-search-empty{padding:10px;color:#667085;font-size:12px}
.jv-lines-table .account-search-control{height:40px}
.jv-lines-table .account-search-input{height:40px!important;min-height:40px!important;border:0!important;border-radius:0!important;background:transparent!important;padding:6px 30px 6px 10px!important;line-height:28px!important}
.jv-lines-table .account-search-input:focus{outline:2px solid #2563eb!important;outline-offset:-2px;background:#fff!important}
.status-for-inspection{background:#fef3c7;color:#92400e}.status-in-progress{background:#ede9fe;color:#6d28d9}.status-maintenance{background:#fee2e2;color:#991b1b}
.span-2{grid-column:span 2}@media(max-width:900px){.span-2{grid-column:auto}}

/* Internal quotation route planner */
.quotation-form-with-map{max-width:1280px}
.quotation-route-section{margin-top:20px;padding:18px;border:1px solid #d7e2f2;border-radius:14px;background:#f8fbff}
.quotation-route-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:4px}
.quotation-route-heading h3{margin:0;font-size:18px}.quotation-route-heading p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.5}
.quotation-address-card{background:#fff;margin-top:14px}.quotation-address-card .address-detail-head{margin-bottom:14px}
.quotation-address-card .location-field{margin-top:0}.quotation-address-card .address-suggestions{top:calc(100% + 3px)}
.quotation-address-card .address-option{display:block;width:100%;border:0;background:#fff;text-align:left;font-family:inherit;color:var(--text)}
.quotation-address-details{margin-top:13px;border-top:1px solid #e3e9f1;padding-top:11px}
.quotation-address-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;cursor:pointer;color:#24456f;font-size:12px;font-weight:800;user-select:none}
.quotation-address-details>summary::-webkit-details-marker{display:none}.quotation-address-details>summary small{margin-left:6px;color:var(--muted);font-size:10px;font-weight:600}
.quotation-address-chevron{font-size:17px;line-height:1;transition:transform .16s ease}.quotation-address-details[open] .quotation-address-chevron{transform:rotate(180deg)}
.quotation-address-details .address-detail-grid{padding-top:12px;margin-top:0}
.quotation-map-workspace{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:14px;align-items:stretch;margin-top:16px}
.quotation-admin-map{min-width:0}.quotation-admin-map .map-canvas-wrap{height:390px!important}
.quotation-route-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-content:start;padding:14px;border:1px solid #dce5f0;border-radius:14px;background:#fff}
.quotation-route-summary>div:not(.map-status){min-width:0;padding:11px;border:1px solid var(--line);border-radius:10px;background:#f8fafc}
.quotation-route-summary span{display:block;font-size:9px;line-height:1.25;text-transform:uppercase;letter-spacing:.55px;color:var(--muted)}
.quotation-route-summary strong{display:block;margin-top:5px;font-size:13px;line-height:1.35;word-break:break-word}.quotation-route-summary .btn{grid-column:1/-1;width:100%}
.quotation-route-summary .map-status{grid-column:1/-1;margin:2px 0 0;padding:11px;border-radius:10px;min-height:58px}
.admin-route-marker-icon{background:transparent!important;border:0!important}.admin-route-marker{position:relative;display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:3px solid #fff;border-radius:50% 50% 50% 0;background:#d93025;color:#fff;font-size:11px;font-weight:900;box-shadow:0 3px 8px rgba(15,31,56,.28);transform:rotate(-45deg)}
.admin-route-marker span{transform:rotate(45deg)}.admin-route-marker.active{background:#174ea6;box-shadow:0 0 0 4px rgba(23,78,166,.17),0 3px 8px rgba(15,31,56,.28)}
.quotation-cargo-grid{margin-top:18px}
.quotation-rate-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start;margin-top:14px}
.quotation-rate-column{display:flex;flex-direction:column;gap:12px;min-width:0}
.admin-ui-v10 .content #quotationForm .quotation-rate-column>.field{width:100%;min-width:0;margin:0!important}
.admin-ui-v10 .content #quotationForm .quotation-rate-item{padding:10px;border:1px solid var(--line);border-radius:10px;background:#fff;box-sizing:border-box}
.admin-ui-v10 .content #quotationForm .quotation-rate-item>label{background:#fff!important}
.admin-ui-v10 .content #quotationForm .quotation-rate-item input:not([type="hidden"]){min-height:40px}
.admin-ui-v10 .content #quotationForm .quotation-rate-item .mini-action{min-height:40px!important;padding:0 11px}
.quotation-rate-columns .suggested-money{display:flex;align-items:center;min-height:40px;padding:8px 11px;box-sizing:border-box;font-size:16px}
.quotation-rate-columns .calc-hint,.quotation-rate-columns .field>.small{margin-top:6px!important;font-size:11px;line-height:1.35}
.admin-ui-v10 .content #quotationForm .quotation-rate-override{border-color:#fed7aa;background:#fff7ed}
.admin-ui-v10 .content #quotationForm .quotation-rate-override>label{background:#fff7ed!important}
@media(max-width:980px){.quotation-map-workspace{grid-template-columns:1fr}.quotation-admin-map .map-canvas-wrap{height:360px!important}.quotation-route-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.quotation-route-summary .btn{grid-column:span 2}.quotation-route-summary .map-status{grid-column:1/-1}}
@media(max-width:760px){.quotation-rate-columns{grid-template-columns:1fr}}
@media(max-width:650px){.quotation-route-section{padding:13px}.quotation-route-heading{flex-direction:column}.quotation-admin-map .map-canvas-wrap{height:320px!important}.quotation-route-summary{grid-template-columns:1fr 1fr}.quotation-route-summary .btn{grid-column:1/-1}}

/* V85 · Website Inquiry actions and global temporary update feedback */
.wm-inquiry-actions{align-items:center;flex-wrap:wrap;gap:10px}
.wm-inquiry-actions>.btn,.wm-inline-status>.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 16px}
.wm-inline-status{gap:10px;flex-wrap:wrap}
.wm-inline-status select{width:auto;min-width:180px;min-height:46px;padding:0 40px 0 14px;border:1px solid #cfd6e2;border-radius:9px;background:#fff;color:var(--text);font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.wm-inline-status select:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 3px rgba(23,78,166,.10)}
.flash-alert{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;overflow:hidden;opacity:1;transform:translateY(0);transition:opacity .32s ease,transform .32s ease}
.flash-alert-message{flex:1;min-width:0;line-height:1.45}
.flash-alert-close{flex:0 0 auto;width:24px;height:24px;margin:-5px -6px -5px 0;padding:0;border:0;border-radius:7px;background:transparent;color:currentColor;font:700 20px/1 Arial,sans-serif;cursor:pointer;opacity:.7}
.flash-alert-close:hover,.flash-alert-close:focus-visible{background:rgba(15,31,56,.08);opacity:1;outline:0}
.flash-alert.is-hiding{opacity:0;transform:translateY(-7px);pointer-events:none}
.form-is-submitting [type="submit"],.form-is-submitting button:not([type]),.is-processing{cursor:wait!important;pointer-events:none!important;opacity:.76}
.is-processing{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important}
.is-processing:after{content:"";width:13px;height:13px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:s2-submit-spin .7s linear infinite}
@keyframes s2-submit-spin{to{transform:rotate(360deg)}}
@media(max-width:560px){.wm-inquiry-actions{flex-direction:column;align-items:stretch}.wm-inquiry-actions>.btn,.wm-inline-status,.wm-inline-status select,.wm-inline-status>.btn{width:100%}}
@media(prefers-reduced-motion:reduce){.flash-alert{transition:none}.is-processing:after{animation:none}}

/* V99: compact Asset Register summary, six cards on desktop. */
.admin-ui-v10 .asset-summary-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.admin-ui-v10 .asset-summary-grid>.metric{min-width:0;padding:14px;border-radius:14px;container-type:inline-size}
.admin-ui-v10 .asset-summary-grid .label{min-height:28px;font-size:10.5px;line-height:1.35}
.admin-ui-v10 .asset-summary-grid .value{font-size:18px;font-size:min(18px,8.5cqi);line-height:1.25;white-space:nowrap;font-variant-numeric:tabular-nums}
.admin-ui-v10 input[data-money-format="1"]{text-align:right;font-variant-numeric:tabular-nums}
@media(max-width:1400px){.admin-ui-v10 .asset-summary-grid>.metric{padding:12px 10px}}
@media(max-width:1050px){.admin-ui-v10 .asset-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.admin-ui-v10 .asset-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V102 payment workflow statuses */
.status-released{background:#dbeafe;color:#1e40af}.status-voided{background:#fee2e2;color:#991b1b}
