/* ==========================================================================
   Kimbo Portal UI — design system v2 (Oct 2026)
   Built from "Kimbo Portal Redesign". Loads after main.min.css and
   kimbo-portal.css, so it is the final word on look and layout.
   ========================================================================== */

@font-face{font-family:Figtree;src:url('../fonts/figtree.woff2') format('woff2');font-weight:300 900;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('../fonts/ibm-plex-mono-500.woff2') format('woff2');font-weight:400 600;font-display:swap}

:root{
  --k-navy:#00263E;--k-navy-2:#0B3A5C;--k-navy-3:#123E5C;--k-navy-line:#1E4A68;
  --k-blue:#004AAD;--k-blue-dark:#00306F;--k-blue-tint:#E6EEFA;--k-blue-soft:#F1F5FC;
  --k-gold:#FFB900;--k-gold-dark:#EBAA00;--k-gold-tint:#FFF1CC;
  --k-ink:#0E2233;--k-ink-2:#3F4E62;--k-muted:#5A6A80;--k-faint:#8D9BAD;
  --k-line:#D5DFEB;--k-line-2:#E8EEF5;--k-input:#C3D0DF;
  --k-canvas:#F5F7FA;--k-surface:#FFFFFF;--k-subtle:#F8FAFC;
  --k-green:#1D6F44;--k-green-2:#2E9D5B;--k-green-tint:#E3F3E9;
  --k-yellow:#E8A800;--k-red:#D2402F;--k-red-ink:#982818;--k-red-tint:#FCE5E1;
  --k-teal-tint:#DFF0F3;--k-teal-ink:#0D5866;
  --k-radius:12px;--k-radius-sm:8px;
  --k-sidebar:248px;--k-topbar:76px;
  --k-font:Figtree,system-ui,-apple-system,'Segoe UI',sans-serif;
  --k-mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --bs-body-font-family:var(--k-font);--bs-body-color:var(--k-ink);--bs-body-bg:var(--k-canvas);
  --bs-border-color:var(--k-line);--bs-primary:#004AAD;--bs-primary-rgb:0,74,173;--bs-link-color:#004AAD;--bs-link-hover-color:#00306F;
}

/* ---------- Base ---------- */
html{scroll-padding-top:90px}
body.k-ui{font-family:var(--k-font);font-size:14px;line-height:1.5;color:var(--k-ink);background:var(--k-canvas)!important;-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}
.k-ui a{color:var(--k-blue);text-decoration:none}.k-ui a:hover{color:var(--k-blue-dark)}
.k-ui h1,.k-ui h2,.k-ui h3,.k-ui h4,.k-ui h5,.k-ui h6{font-family:var(--k-font);color:var(--k-navy);letter-spacing:-.015em}
.k-ui :focus-visible{outline:2px solid var(--k-gold)!important;outline-offset:2px!important;box-shadow:none!important}
.k-ui .mono,.k-ui .k-mono{font-family:var(--k-mono);font-weight:500;letter-spacing:0}
.k-ui .sr-only,.k-ui .k-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.k-ui ::selection{background:#FFE08A;color:var(--k-navy)}

/* ---------- App shell ---------- */
.k-ui .k-app{min-height:100vh;display:block}
.k-ui .k-main{margin-left:var(--k-sidebar);min-width:0;min-height:100vh;display:flex;flex-direction:column}

/* Sidebar */
.k-ui .k-sidebar{position:fixed;inset:0 auto 0 0;width:var(--k-sidebar);background:var(--k-navy);color:#fff;display:flex;flex-direction:column;z-index:1040;padding:22px 14px 18px;box-sizing:border-box;overflow:hidden}
.k-ui .k-brand{display:flex;align-items:center;gap:10px;padding:0 10px;color:#fff!important;text-decoration:none;font-weight:700;font-size:16px;line-height:1.05;letter-spacing:-.01em}
.k-ui .k-brand img{width:38px;height:38px;flex:none}
.k-ui .k-sidebar-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:18px}
.k-ui .k-sidebar-close{display:none;width:40px;height:40px;border-radius:8px;border:1px solid var(--k-navy-line);background:transparent;color:#fff;align-items:center;justify-content:center;font-size:18px}
.k-ui .k-nav{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;margin:0 -4px;padding:0 4px;scrollbar-width:thin;scrollbar-color:#2B5876 transparent}
.k-ui .k-nav ul{list-style:none;margin:0;padding:0}
.k-ui .k-nav-head{padding:14px 12px 6px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#8FA6BD}
.k-ui .k-nav-head:first-child{padding-top:0}
.k-ui .k-nav-link{display:flex;align-items:center;gap:12px;height:42px;padding:0 12px;border-radius:8px;color:#C9D6E3!important;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s}
.k-ui .k-nav-link i{font-size:17px;width:20px;text-align:center;flex:none;line-height:1}
.k-ui .k-nav-link:hover{background:rgba(255,255,255,.06);color:#fff!important}
.k-ui .k-nav-link[aria-current="page"]{background:var(--k-navy-2);color:#fff!important;font-weight:600}
.k-ui .k-nav-link[aria-current="page"] i{color:var(--k-gold)}
.k-ui .k-nav-link .k-nav-text{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.k-ui .k-nav-count{min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--k-gold);color:var(--k-navy);font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}
.k-ui .k-nav-ext{font-size:12px!important;width:auto!important;opacity:.8}
.k-ui .k-ai{margin-top:16px;background:var(--k-navy-2);border:1px solid var(--k-navy-line);border-radius:12px;padding:16px;flex:none}
.k-ui .k-ai-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.k-ui .k-ai-head strong{font-size:15px;font-weight:700;color:#fff}
.k-ui .k-beta{background:var(--k-gold);color:var(--k-navy);font-size:10px;font-weight:800;letter-spacing:.12em;padding:3px 7px;border-radius:4px}
.k-ui .k-ai p{color:#C9D6E3;font-size:13px;line-height:1.45;margin:0 0 12px}
.k-ui .k-ai-btn{width:100%;height:40px;border-radius:8px;border:1px solid #8FA6BD;background:transparent;color:#fff;font-weight:700;font-size:14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}
.k-ui .k-ai-btn:hover{background:rgba(255,255,255,.08)}
.k-ui .k-ai-more{display:block;width:100%;margin-top:8px;background:none;border:0;color:#9FC2E8;font-size:12px;font-weight:600;cursor:pointer;padding:4px}
.k-ui .k-ai-more:hover{color:#fff}

/* Top bar */
.k-ui .k-topbar{position:sticky;top:0;z-index:1030;height:var(--k-topbar);background:#fff;border-bottom:1px solid var(--k-line);display:flex;align-items:center;gap:20px;padding:0 32px}
.k-ui .k-mbrand,.k-ui .k-mbell{display:none}
.k-ui .k-search{flex:0 1 640px;min-width:0;display:flex;height:46px;border:1px solid var(--k-input);border-radius:10px;background:#fff;overflow:hidden}
.k-ui .k-search:focus-within{border-color:var(--k-blue);box-shadow:0 0 0 3px rgba(0,74,173,.12)}
.k-ui .k-search select{flex:0 0 auto;width:auto;max-width:170px;border:0;border-right:1px solid var(--k-line);background:var(--k-subtle) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%230E2233' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 12px center;padding:0 32px 0 14px;font-weight:600;font-size:14px;color:var(--k-ink);appearance:none;-webkit-appearance:none;cursor:pointer}
.k-ui .k-search input{flex:1 1 auto;min-width:0;border:0;padding:0 14px;font-size:14px;color:var(--k-ink);background:#fff;outline:none}
.k-ui .k-search input::placeholder{color:#6B7B8F}
.k-ui .k-search button{flex:none;width:48px;border:0;background:var(--k-blue);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:17px;cursor:pointer}
.k-ui .k-search button:hover{background:var(--k-blue-dark)}
.k-ui .k-topbar-actions{margin-left:auto;display:flex;align-items:center;gap:14px}
.k-ui .k-iconbtn{position:relative;width:44px;height:44px;border-radius:10px;border:1px solid var(--k-line);background:#fff;color:var(--k-navy)!important;display:inline-flex;align-items:center;justify-content:center;font-size:19px;cursor:pointer;flex:none}
.k-ui .k-iconbtn:hover{background:var(--k-subtle);border-color:var(--k-input)}
.k-ui .k-dot{position:absolute;top:9px;right:10px;width:9px;height:9px;border-radius:50%;background:var(--k-red);box-shadow:0 0 0 2px #fff}
.k-ui .k-user{display:flex;align-items:center;gap:10px;padding:4px;border-radius:12px;border:0;background:transparent;color:var(--k-ink);cursor:pointer;text-align:left}
.k-ui .k-user:hover{background:var(--k-subtle)}
.k-ui .k-avatar{width:42px;height:42px;border-radius:50%;background:var(--k-navy);color:var(--k-gold);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;letter-spacing:.02em;flex:none;overflow:hidden}
.k-ui .k-avatar img{width:100%;height:100%;object-fit:cover}
.k-ui .k-avatar.sm{width:32px;height:32px;font-size:12px}
.k-ui .k-avatar.soft{background:var(--k-blue-tint);color:var(--k-navy)}
.k-ui .k-user-meta{display:flex;flex-direction:column;line-height:1.2}
.k-ui .k-user-meta strong{font-size:14px;font-weight:700;color:var(--k-navy);white-space:nowrap}
.k-ui .k-user-meta small{font-size:12px;color:var(--k-muted)}
.k-ui .k-menu{min-width:230px;padding:6px;border-radius:12px;border:1px solid var(--k-line);box-shadow:0 12px 32px rgba(0,38,62,.12);background:#fff}
.k-ui .k-menu .dropdown-item{display:flex;align-items:center;gap:10px;border-radius:8px;padding:9px 12px;font-weight:600;color:var(--k-ink);font-size:14px}
.k-ui .k-menu .dropdown-item i{font-size:16px;color:var(--k-muted)}
.k-ui .k-menu .dropdown-item:hover{background:var(--k-blue-soft);color:var(--k-blue)}
.k-ui .k-menu-head{padding:10px 12px 8px;border-bottom:1px solid var(--k-line-2);margin-bottom:4px}
.k-ui .k-menu-head strong{display:block;color:var(--k-navy)}.k-ui .k-menu-head small{color:var(--k-muted)}

/* Hotel switcher bar (client multi-hotel logins) */
.k-ui .portal-hotel-bar{padding:10px 32px;background:var(--k-blue-soft);border-bottom:1px solid var(--k-line)}

/* Content */
.k-ui .app-body.k-content{height:auto!important;overflow:visible!important;padding:28px 32px 48px!important;background:var(--k-canvas)!important;flex:1 1 auto;max-width:100%;line-height:1.5}
.k-ui .k-content>.container-fluid,.k-ui .k-content .container-fluid{padding-left:0;padding-right:0}

/* Page heading */
.k-ui .k-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px 24px;flex-wrap:wrap;margin:0 0 24px}
.k-ui .k-page-head-main{min-width:0}
.k-ui .k-eyebrow{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--k-blue);margin:0 0 8px}
.k-ui .k-eyebrow:before{content:'';width:28px;height:2px;background:var(--k-gold);flex:none}
.k-ui .k-eyebrow a{color:inherit}
.k-ui .k-page-head h1,.k-ui .k-h1{font-size:32px;line-height:1.15;font-weight:600;color:var(--k-navy);margin:0;letter-spacing:-.02em}
.k-ui .k-page-head p,.k-ui .k-sub{color:var(--k-muted);margin:6px 0 0;font-size:14px}
.k-ui .k-page-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.k-ui .k-crumbs{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--k-muted);margin-bottom:10px}
.k-ui .k-crumbs a{font-weight:600}

/* Mobile tab bar */
.k-ui .k-tabbar{display:none}

/* ---------- Buttons ---------- */
.k-ui .btn{--bs-btn-font-weight:700;min-height:42px;padding:0 16px;border-radius:8px;font-size:14px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:none!important;line-height:1.2;transition:background .15s,border-color .15s,color .15s}
.k-ui .btn i{font-size:15px;line-height:1}
.k-ui .btn-sm{min-height:34px;padding:0 12px;font-size:13px;border-radius:7px}
.k-ui .btn-lg{min-height:52px;padding:0 22px;font-size:15px}
.k-ui .btn-gold,.k-ui .k-page-actions .btn-primary,.k-ui .btn-primary.btn-cta{background:var(--k-gold)!important;border:1px solid var(--k-gold)!important;color:var(--k-navy)!important}
.k-ui .btn-gold:hover,.k-ui .k-page-actions .btn-primary:hover,.k-ui .btn-primary.btn-cta:hover{background:var(--k-gold-dark)!important;border-color:var(--k-gold-dark)!important}
.k-ui .btn-primary{background:var(--k-blue)!important;border:1px solid var(--k-blue)!important;color:#fff!important}
.k-ui .btn-primary:hover{background:var(--k-blue-dark)!important;border-color:var(--k-blue-dark)!important}
.k-ui .btn-line,.k-ui .btn-outline-primary,.k-ui .btn-outline-secondary,.k-ui .btn-outline-info,.k-ui .btn-outline-light,.k-ui .btn-outline-dark,.k-ui .btn-light,.k-ui .btn-secondary,.k-ui .btn-primary-glass{background:#fff!important;color:var(--k-blue)!important;border:1px solid var(--k-input)!important}
.k-ui .btn-line:hover,.k-ui .btn-outline-primary:hover,.k-ui .btn-outline-secondary:hover,.k-ui .btn-outline-info:hover,.k-ui .btn-outline-light:hover,.k-ui .btn-outline-dark:hover,.k-ui .btn-light:hover,.k-ui .btn-secondary:hover,.k-ui .btn-primary-glass:hover{background:var(--k-blue-soft)!important;border-color:var(--k-blue)!important;color:var(--k-blue-dark)!important}
.k-ui .btn-success{background:var(--k-green)!important;border:1px solid var(--k-green)!important;color:#fff!important}
.k-ui .btn-danger{background:#B33229!important;border:1px solid #B33229!important;color:#fff!important}
.k-ui .btn-outline-danger,.k-ui .btn-danger-line{background:#fff!important;color:#A62823!important;border:1px solid #E9B9B6!important}
.k-ui .btn-outline-danger:hover,.k-ui .btn-danger-line:hover{background:var(--k-red-tint)!important}
.k-ui .btn-outline-success{background:#fff!important;color:var(--k-green)!important;border:1px solid #B8DDC7!important}
.k-ui .btn-warning{background:var(--k-gold)!important;border-color:var(--k-gold)!important;color:var(--k-navy)!important}
.k-ui .btn-link{min-height:auto;padding:0;color:var(--k-blue)!important;font-weight:700;background:none!important;border:0!important;text-decoration:none}
.k-ui .btn-icon,.k-ui .table .btn-sm:not(:has(span)):has(> i:only-child){width:36px;min-width:36px;padding:0}
.k-ui .btn:disabled,.k-ui .btn.disabled{opacity:.55}
.k-ui .btn-ai,.k-ui .btn-ai-launch{border-radius:999px}

/* ---------- Cards & surfaces ---------- */
.k-ui .card,.k-ui .k-card{background:#fff!important;border:1px solid var(--k-line)!important;border-radius:var(--k-radius)!important;box-shadow:none!important;color:var(--k-ink)!important}
.k-ui .card>.card-header,.k-ui .k-card-head{background:transparent!important;border-bottom:1px solid var(--k-line-2)!important;padding:18px 22px!important;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.k-ui .card-header h5,.k-ui .card-header h4,.k-ui .card-header h6,.k-ui .card-title,.k-ui .k-card-title{font-size:18px!important;font-weight:600!important;color:var(--k-navy)!important;margin:0;letter-spacing:-.01em}
.k-ui .k-card-sub{font-size:13px;color:var(--k-muted);margin:3px 0 0}
.k-ui .card-body,.k-ui .k-card-body{padding:22px}
.k-ui .card-footer{background:transparent!important;border-top:1px solid var(--k-line-2)!important;padding:14px 22px}
.k-ui .k-card-link{font-weight:700;font-size:14px}
.k-ui .k-section{margin-bottom:24px}
.k-ui .k-grid{display:grid;gap:24px}
.k-ui .k-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.k-ui .k-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.k-ui .k-grid-side{grid-template-columns:minmax(0,1fr) 380px}

/* KPI strip */
.k-ui .k-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));background:#fff;border:1px solid var(--k-line);border-radius:var(--k-radius);overflow:hidden;margin-bottom:24px}
.k-ui .k-kpi{padding:20px 22px;border-right:1px solid var(--k-line);min-width:0;color:inherit!important;text-decoration:none;display:block}
.k-ui .k-kpi:last-child{border-right:0}
.k-ui a.k-kpi:hover{background:var(--k-subtle)}
.k-ui .k-kpi-label{font-size:13px;font-weight:500;color:var(--k-ink-2)}
.k-ui .k-kpi-value{font-size:34px;line-height:1.15;font-weight:600;color:var(--k-navy);margin:4px 0 2px;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.k-ui .k-kpi-value.warn{color:#7A5200}
.k-ui .k-kpi-value.good{color:var(--k-green)}
.k-ui .k-kpi-note{font-size:13px;color:var(--k-muted)}
.k-ui .k-kpi-note a{font-weight:700}
.k-ui .k-up{color:var(--k-green)!important}.k-ui .k-down{color:var(--k-red-ink)!important}

/* Old stat cards inherit the KPI look */
.k-ui .stat-card{display:flex!important;flex-direction:column;align-items:flex-start!important;gap:4px!important;min-height:0!important;padding:20px 22px!important;background:#fff!important;border:1px solid var(--k-line)!important;border-radius:var(--k-radius)!important;box-shadow:none!important}
.k-ui .stat-card .iconss{display:none!important}
.k-ui .stat-card h3,.k-ui .stat-card .h3{font-size:30px!important;font-weight:600!important;color:var(--k-navy)!important;margin:2px 0!important;order:2}
.k-ui .stat-card p,.k-ui .stat-card .text-secondary{order:1;margin:0!important;font-size:13px;color:var(--k-ink-2)!important;font-weight:500}
.k-ui .stat-card>div{display:contents}
.k-ui .stat-card small,.k-ui .stat-card span.small{order:3;font-size:13px}

/* ---------- Chips, lanes, badges ---------- */
.k-ui .k-chip,.k-ui .status-chip{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap;line-height:1;border:0}
.k-ui .st-pending,.k-ui .status-chip.pending,.k-ui .status-chip.neutral{background:#EEF2F6!important;color:#3F4E62!important}
.k-ui .st-transit,.k-ui .status-chip.transit,.k-ui .status-chip.primary{background:#E6EEFA!important;color:#0B3D91!important}
.k-ui .st-arriving,.k-ui .status-chip.arriving{background:var(--k-teal-tint)!important;color:var(--k-teal-ink)!important}
.k-ui .st-arrived,.k-ui .status-chip.arrived{background:#E3E9F0!important;color:var(--k-navy)!important}
.k-ui .st-clearance,.k-ui .status-chip.clearance,.k-ui .status-chip.success{background:var(--k-green-tint)!important;color:#1B6B40!important}
.k-ui .st-doccheck,.k-ui .status-chip.warning,.k-ui .status-chip.processing{background:var(--k-gold-tint)!important;color:#6B4900!important}
.k-ui .st-inspect,.k-ui .status-chip.alert{background:var(--k-red-tint)!important;color:var(--k-red-ink)!important}
.k-ui .st-ready{background:var(--k-green)!important;color:#fff!important}
.k-ui .st-out{background:var(--k-blue)!important;color:#fff!important}
.k-ui .st-delivered{background:#E3E9F0!important;color:var(--k-ink-2)!important}
.k-ui .st-active{background:var(--k-green-tint)!important;color:#1B6B40!important}
.k-ui .st-inactive{background:#EEF2F6!important;color:#3F4E62!important}
.k-ui .k-lane{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--k-ink-2);white-space:nowrap}
.k-ui .k-lane i{width:10px;height:10px;border-radius:2px;display:inline-block;flex:none}
.k-ui .lane-green i{background:var(--k-green-2)}.k-ui .lane-yellow i{background:var(--k-yellow)}.k-ui .lane-red i{background:var(--k-red)}.k-ui .lane-physical_inspection i{background:#8E3BB8}
.k-ui .lane-none{color:var(--k-muted);font-weight:500}.k-ui .lane-none i{border:1.5px dashed var(--k-faint);box-sizing:border-box}
.k-ui .k-doc-ok{color:var(--k-green);font-weight:700}.k-ui .k-doc-pending{color:#7A5200;font-weight:700}.k-ui .k-doc-missing{color:var(--k-red-ink);font-weight:700}
.k-ui .badge{border-radius:999px;padding:5px 10px;font-weight:700;font-size:12px;letter-spacing:0}
.k-ui .badge.bg-success{background:var(--k-green-tint)!important;color:#1B6B40!important}
.k-ui .badge.bg-danger{background:var(--k-red-tint)!important;color:var(--k-red-ink)!important}
.k-ui .badge.bg-warning,.k-ui .badge.bg-orange{background:var(--k-gold-tint)!important;color:#6B4900!important}
.k-ui .badge.bg-primary,.k-ui .badge.bg-info{background:var(--k-blue-tint)!important;color:#0B3D91!important}
.k-ui .badge.bg-secondary,.k-ui .badge.bg-dark,.k-ui .badge.bg-light{background:#EEF2F6!important;color:#3F4E62!important}
.k-ui .k-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;padding:0 7px;border-radius:999px;background:#E3E9F0;color:var(--k-ink-2);font-size:12px;font-weight:700}

/* ---------- Segmented tabs ---------- */
.k-ui .k-seg{display:inline-flex;gap:4px;padding:4px;background:#E8EEF5;border-radius:10px;flex-wrap:wrap}
.k-ui .k-seg a,.k-ui .k-seg button{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px;border-radius:7px;font-weight:600;font-size:14px;color:var(--k-ink-2)!important;border:0;background:transparent;text-decoration:none;white-space:nowrap}
.k-ui .k-seg a:hover,.k-ui .k-seg button:hover{color:var(--k-navy)!important}
.k-ui .k-seg .active,.k-ui .k-seg [aria-current="page"],.k-ui .k-seg [aria-selected="true"]{background:#fff;color:var(--k-navy)!important;box-shadow:0 1px 2px rgba(0,38,62,.12)}
.k-ui .k-seg .k-count{background:#E3E9F0;height:20px;min-width:22px;font-size:11px}
.k-ui .nav-tabs{border-bottom:1px solid var(--k-line);gap:4px}
.k-ui .nav-tabs .nav-link{border:0;border-bottom:2px solid transparent;color:var(--k-muted);font-weight:600;padding:10px 14px;border-radius:0}
.k-ui .nav-tabs .nav-link.active{color:var(--k-navy);border-bottom-color:var(--k-gold);background:transparent}
.k-ui .nav-pills{display:inline-flex;gap:4px;padding:4px;background:#E8EEF5;border-radius:10px;flex-wrap:wrap}
.k-ui .nav-pills .nav-link{min-height:36px!important;padding:0 14px;border-radius:7px;font-weight:600;color:var(--k-ink-2)!important;background:transparent!important;border:0!important;display:inline-flex;align-items:center;gap:8px}
.k-ui .nav-pills .nav-link.active{background:#fff!important;color:var(--k-navy)!important;box-shadow:0 1px 2px rgba(0,38,62,.12)}

/* ---------- Forms ---------- */
.k-ui .form-label,.k-ui .k-label{font-size:13px;font-weight:700;color:var(--k-ink)!important;margin-bottom:6px}
.k-ui .k-filters .form-label,.k-ui .k-label-caps{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--k-ink-2)!important}
.k-ui .form-control,.k-ui .form-select,.k-ui .input-group-text{min-height:44px;border:1px solid var(--k-input)!important;border-radius:8px!important;background-color:#fff!important;color:var(--k-ink)!important;font-size:14px;box-shadow:none!important}
.k-ui .form-control:focus,.k-ui .form-select:focus{border-color:var(--k-blue)!important;box-shadow:0 0 0 3px rgba(0,74,173,.12)!important}
.k-ui .form-control::placeholder{color:#6B7B8F}
.k-ui .form-control:disabled,.k-ui .form-select:disabled,.k-ui .form-control[readonly]{background-color:#EEF2F6!important;color:var(--k-muted)!important}
.k-ui .input-group-text{background:var(--k-subtle)!important;color:var(--k-muted)!important}
.k-ui .input-group>.form-control:not(:first-child),.k-ui .input-group>.form-select:not(:first-child){border-top-left-radius:0!important;border-bottom-left-radius:0!important}
.k-ui .input-group>:not(:last-child){border-top-right-radius:0!important;border-bottom-right-radius:0!important}
.k-ui textarea.form-control{min-height:96px;padding-top:10px}
.k-ui .form-check-input{width:18px;height:18px;border:1.5px solid var(--k-input);border-radius:4px}
.k-ui .form-check-input:checked{background-color:var(--k-blue);border-color:var(--k-blue)}
.k-ui .form-switch .form-check-input{width:40px;height:22px;border-radius:999px}
.k-ui .form-text,.k-ui .k-hint{color:var(--k-muted)!important;font-size:12px}
.k-ui .invalid-feedback{color:var(--k-red-ink)}
.k-ui .is-invalid{border-color:var(--k-red)!important}
.k-ui .k-filters{background:#fff;border:1px solid var(--k-line);border-radius:var(--k-radius);padding:16px 18px;margin-bottom:24px}
.k-ui .k-filters-row{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}
.k-ui .k-filters-row>.k-field{flex:1 1 160px;min-width:140px}
.k-ui .k-filters-row>.k-field.grow{flex:2 1 260px}
.k-ui .k-filters-row>.k-field-actions{flex:0 0 auto;display:flex;gap:8px}
.k-ui .k-applied{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px;font-size:13px;color:var(--k-muted)}
.k-ui .k-token{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 6px 0 12px;border-radius:999px;background:var(--k-blue-tint);color:var(--k-navy);font-weight:600;font-size:13px}
.k-ui .k-token a{color:var(--k-navy);display:inline-flex;width:20px;height:20px;align-items:center;justify-content:center;border-radius:50%}
.k-ui .k-token a:hover{background:rgba(0,38,62,.08)}

/* ---------- Tables ---------- */
.k-ui .table,.k-ui .k-table{--bs-table-bg:#fff;--bs-table-color:var(--k-ink);--bs-table-border-color:var(--k-line-2);--bs-table-striped-bg:#fff;--bs-table-hover-bg:var(--k-blue-soft);width:100%;margin:0;color:var(--k-ink)!important;font-size:14px;border-collapse:collapse}
.k-ui .table>thead>tr>th,.k-ui .k-table th{background:#fff!important;color:var(--k-muted)!important;font-size:12px!important;font-weight:700!important;letter-spacing:.06em!important;text-transform:uppercase;padding:12px 16px!important;border-bottom:1px solid var(--k-line)!important;border-top:0!important;white-space:nowrap;vertical-align:middle}
.k-ui .table>tbody>tr>td,.k-ui .k-table td{padding:14px 16px!important;border-bottom:1px solid var(--k-line-2)!important;vertical-align:middle;background:#fff!important;color:var(--k-ink)!important}
.k-ui .table>tbody>tr:last-child>td,.k-ui .k-table tr:last-child td{border-bottom:0!important}
.k-ui .table>tbody>tr:hover>td,.k-ui .k-table tbody tr:hover td{background:var(--k-blue-soft)!important}
.k-ui .table-bordered>:not(caption)>*>*{border-left:0!important;border-right:0!important}
.k-ui .table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-accent-bg:transparent}
.k-ui .table-view table tbody tr:nth-child(odd),.k-ui .table-view table tbody tr:nth-child(even){background:#fff!important}
.k-ui .table-responsive{border-radius:0;overflow-x:auto}
.k-ui .card>.table-responsive:last-child,.k-ui .card>.card-body>.table-responsive:only-child{margin-bottom:0}
.k-ui .card>.card-body:has(>.table-responsive:only-child){padding:0}
.k-ui .card>.card-body:has(>.table-responsive:only-child) .table-responsive{border-radius:0 0 var(--k-radius) var(--k-radius)}
.k-ui .k-id{font-family:var(--k-mono);font-weight:500;color:var(--k-blue);font-size:13.5px;white-space:nowrap}
.k-ui .k-cell-main{font-weight:600;color:var(--k-navy)}
.k-ui .k-cell-sub{display:block;font-size:12.5px;color:var(--k-muted);margin-top:2px;font-weight:400}
.k-ui .k-row-actions{display:inline-flex;gap:6px;align-items:center;justify-content:flex-end}
.k-ui .table-action-group .btn,.k-ui .k-row-actions .btn{min-height:34px;height:34px;padding:0 10px;font-size:13px;border-radius:7px;background:#fff!important;border:1px solid var(--k-input)!important;color:var(--k-blue)!important}
.k-ui .table-action-group .btn:hover,.k-ui .k-row-actions .btn:hover{background:var(--k-blue-soft)!important;border-color:var(--k-blue)!important}
.k-ui .table-action-group .btn-danger,.k-ui .table-action-group .btn-outline-danger,.k-ui .k-row-actions .btn-danger{color:#A62823!important;border-color:#E9B9B6!important}
.k-ui .k-table-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-top:1px solid var(--k-line);flex-wrap:wrap;color:var(--k-muted);font-size:13px}

/* Pagination */
.k-ui .pagination{gap:6px;margin:0;flex-wrap:wrap}
.k-ui .page-link{min-width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px!important;border:1px solid var(--k-input)!important;color:var(--k-ink)!important;background:#fff!important;font-weight:600;font-size:13px;padding:0 10px}
.k-ui .page-item.active .page-link{background:var(--k-navy)!important;border-color:var(--k-navy)!important;color:#fff!important}
.k-ui .page-item.disabled .page-link{color:var(--k-faint)!important;background:var(--k-subtle)!important}
.k-ui nav[role="navigation"] p.small{color:var(--k-muted)}

/* ---------- Alerts, modals, dropdowns ---------- */
.k-ui .alert,.k-ui .alert-box{border-radius:10px!important;border:1px solid transparent;font-weight:600;padding:12px 16px}
.k-ui .app-body .alert-success{background:var(--k-green-tint)!important;color:#15583B!important;border-color:#B7DFC9!important}
.k-ui .app-body .alert-danger,.k-ui .app-body .alert-error{background:#FFF0EF!important;color:#922B27!important;border-color:#ECC6C3!important}
.k-ui .app-body .alert-info{background:var(--k-blue-soft)!important;color:#174477!important;border-color:#C6D8ED!important}
.k-ui .app-body .alert-warning{background:#FFF6DD!important;color:#6B4900!important;border-color:#ECD9A1!important}
.k-ui .k-callout{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:10px;background:#FFF6DD;border:1px solid #F2DFA3;color:#4A3500}
.k-ui .k-callout i{font-size:20px;color:#8A6100}
.k-ui .k-callout .btn{margin-left:auto}
.k-ui .modal-content{border-radius:14px!important;border:1px solid var(--k-line)!important;background:#fff!important;color:var(--k-ink)!important}
.k-ui .modal-header,.k-ui .modal-footer{border-color:var(--k-line-2)!important;padding:16px 22px}
.k-ui .modal-title{font-size:18px;font-weight:600;color:var(--k-navy)}
.k-ui .modal-body{padding:22px}
.k-ui .dropdown-menu{border-radius:12px;border:1px solid var(--k-line);box-shadow:0 12px 32px rgba(0,38,62,.12);padding:6px;background:#fff}
.k-ui .dropdown-item{border-radius:8px;padding:8px 12px;color:var(--k-ink);font-weight:500}
.k-ui .dropdown-item:hover{background:var(--k-blue-soft);color:var(--k-blue)}

/* Empty states */
.k-ui .k-empty{text-align:center;padding:40px 20px;color:var(--k-muted)}
.k-ui .k-empty i{font-size:30px;color:var(--k-faint);display:block;margin-bottom:10px}
.k-ui .k-empty strong{display:block;color:var(--k-navy);font-size:16px;margin-bottom:4px}

/* Lists inside cards */
.k-ui .k-list{list-style:none;margin:0;padding:0}
.k-ui .k-list>li{display:flex;align-items:center;gap:14px;padding:14px 0;border-top:1px solid var(--k-line-2)}
.k-ui .k-list>li:first-child{border-top:0}
.k-ui .k-list .k-list-main{flex:1 1 auto;min-width:0}
.k-ui .k-kv{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid var(--k-line-2);font-size:14px}
.k-ui .k-kv:first-child{border-top:0}
.k-ui .k-kv span{color:var(--k-ink-2)}.k-ui .k-kv strong{color:var(--k-navy);font-weight:700;text-align:right}
.k-ui .k-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 24px}
.k-ui .k-field-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--k-muted);margin-bottom:4px}
.k-ui .k-field-value{color:var(--k-navy);font-size:15px;font-weight:500;word-break:break-word}

/* Progress bar (today's deliveries etc.) */
.k-ui .k-bar{display:flex;height:10px;border-radius:999px;overflow:hidden;background:#E8EEF5;gap:3px}
.k-ui .k-bar span{display:block;height:100%;border-radius:999px}
.k-ui .k-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--k-ink-2);margin-top:12px}
.k-ui .k-legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px}
.k-ui .k-meter{height:8px;border-radius:999px;background:#E8EEF5;overflow:hidden;flex:1 1 auto}
.k-ui .k-meter span{display:block;height:100%;background:var(--k-blue);border-radius:999px}

/* Stage pipeline (dashboard) */
.k-ui .k-stages{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px;margin-top:20px}
.k-ui .k-stage{display:block;color:inherit!important;text-decoration:none;padding-top:12px;border-top:4px solid #E3E9F0;min-width:0}
.k-ui .k-stage:hover .k-stage-label{color:var(--k-blue)}
.k-ui .k-stage-value{font-size:26px;font-weight:600;color:var(--k-navy);line-height:1.2;font-variant-numeric:tabular-nums}
.k-ui .k-stage-label{font-size:13px;color:var(--k-ink-2);line-height:1.3}
.k-ui .k-stage.s-pending{border-color:#E3E9F0}.k-ui .k-stage.s-transit{border-color:#D6E3F6}.k-ui .k-stage.s-arriving{border-color:#CDE8ED}.k-ui .k-stage.s-arrived{border-color:#D3DCE7}.k-ui .k-stage.s-clearance{border-color:#CFEBDB}.k-ui .k-stage.s-check{border-color:#FCE6A8}.k-ui .k-stage.s-ready{border-color:var(--k-green)}.k-ui .k-stage.s-out{border-color:var(--k-blue)}
.k-ui .k-lanes{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:20px;padding-top:16px;border-top:1px solid var(--k-line-2);font-size:13px;color:var(--k-ink-2)}
.k-ui .k-lanes strong{font-weight:600;color:var(--k-ink)}

/* Attention list */
.k-ui .k-attn{display:flex;align-items:center;gap:16px;padding:14px 0;border-top:1px solid var(--k-line-2)}
.k-ui .k-attn:first-child{border-top:0}
.k-ui .k-attn-n{min-width:64px;height:28px;padding:0 10px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;flex:none}
.k-ui .k-attn-text{flex:1 1 auto;color:var(--k-ink)}
.k-ui .k-attn a{font-weight:700;white-space:nowrap}

/* Activity */
.k-ui .k-activity{list-style:none;margin:0;padding:0}
.k-ui .k-activity li{display:grid;grid-template-columns:86px minmax(0,1fr);gap:14px;padding:11px 0;border-top:1px solid var(--k-line-2);font-size:14px}
.k-ui .k-activity li:first-child{border-top:0}
.k-ui .k-activity time{color:var(--k-muted);font-size:13px}
.k-ui .k-activity strong{color:var(--k-navy);font-weight:700;margin-right:8px}

/* Stepper (shipment detail) */
.k-ui .k-steps{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;list-style:none;margin:0;padding:0}
.k-ui .k-step{position:relative;padding-top:34px;font-size:13px;min-width:0}
.k-ui .k-step:before{content:'';position:absolute;top:0;left:0;width:24px;height:24px;border-radius:50%;border:2px solid #C3D0DF;background:#fff;box-sizing:border-box}
.k-ui .k-step.done:before{background:var(--k-navy) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='10'%3E%3Cpath d='M1 5l3.5 3.5L11 1.5' fill='none' stroke='white' stroke-width='2'/%3E%3C/svg%3E") no-repeat center;border-color:var(--k-navy)}
.k-ui .k-step.now:before{border-color:var(--k-gold);border-width:3px}
.k-ui .k-step strong{display:block;color:var(--k-navy);font-weight:600}
.k-ui .k-step small{color:var(--k-muted);font-size:12px}

/* ---------- Kimbo AI launcher (floating) ---------- */
.k-ui .btn-ai-launch{background:var(--k-navy)!important;color:#fff!important;border:0!important;box-shadow:0 10px 24px rgba(0,38,62,.22)!important}

/* ---------- Auth pages ---------- */
body.k-auth{margin:0;min-height:100vh;background:#F5F7FA;font-family:var(--k-font);color:var(--k-ink);-webkit-font-smoothing:antialiased}
.k-auth a{color:var(--k-blue)}
.k-auth-grid{display:grid;grid-template-columns:minmax(0,760fr) minmax(0,680fr);min-height:100vh}
.k-auth-art{position:relative;overflow:hidden;background:var(--k-navy);color:#fff;padding:44px 56px 40px;display:flex;flex-direction:column}
.k-auth-art .k-brand{padding:0;font-size:19px;gap:12px;color:#fff}
.k-auth-art .k-brand img{width:46px;height:46px}
.k-auth-art-body{margin:auto 0;padding:48px 0 32px;max-width:560px;position:relative;z-index:1}
.k-auth-eyebrow{display:flex;align-items:center;gap:14px;font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--k-gold);margin-bottom:28px}
.k-auth-eyebrow:before{content:'';width:36px;height:2px;background:var(--k-gold)}
.k-auth-title{font-size:clamp(40px,4.4vw,64px);line-height:1.06;font-weight:500;color:#fff;margin:0 0 28px;letter-spacing:-.025em}
.k-auth-title em{font-style:normal;color:var(--k-gold)}
.k-auth-copy{font-size:18px;line-height:1.55;color:#C9D6E3;max-width:30em;margin:0 0 32px}
.k-sample{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);border-radius:12px;padding:18px 22px;max-width:516px}
.k-sample-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.k-sample-label{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#C9D6E3}
.k-sample-id{font-family:var(--k-mono);font-size:15px;color:#fff;margin-top:4px}
.k-sample-route{display:flex;align-items:center;gap:10px;margin:14px 0 18px;font-size:14px;color:#E1E9F2}
.k-sample-route .k-dash{width:36px;border-top:2px dashed var(--k-gold)}
.k-sample-stages{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;font-size:11px;color:#9FB2C6}
.k-sample-stages span{border-top:3px solid rgba(255,255,255,.2);padding-top:6px}
.k-sample-stages .on{border-color:var(--k-gold);color:#E1E9F2}.k-sample-stages .now{border-color:var(--k-gold);color:#fff;font-weight:700}
.k-auth-points{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:auto;padding-top:28px;position:relative;z-index:1}
.k-auth-points div{display:flex;gap:10px;font-size:14px;line-height:1.45;color:#DCE6F0}
.k-auth-points i{color:var(--k-gold);font-size:16px;line-height:1.3}
.k-auth-foot{display:flex;justify-content:space-between;align-items:center;margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#9FB2C6;position:relative;z-index:1}
.k-auth-foot a{color:#fff;letter-spacing:0;text-transform:none;font-size:14px;font-weight:700}
.k-auth-rings{position:absolute;right:-140px;bottom:-160px;width:560px;height:560px;opacity:.16;pointer-events:none}
.k-auth-side{display:flex;flex-direction:column;padding:28px 48px 28px;min-width:0}
.k-auth-lang{align-self:flex-end;display:inline-flex;padding:4px;border:1px solid var(--k-line);border-radius:999px;background:#fff;gap:2px}
.k-auth-lang a{padding:6px 14px;border-radius:999px;font-size:13px;font-weight:600;color:var(--k-ink-2)!important}
.k-auth-lang a.active{background:var(--k-navy);color:#fff!important}
.k-auth-form{width:100%;max-width:420px;margin:auto;padding:32px 0}
.k-auth-form h1{font-size:32px;font-weight:600;color:var(--k-navy);margin:0 0 6px;letter-spacing:-.02em}
.k-auth-form .k-lead{color:var(--k-ink-2);font-size:15px;margin:0 0 28px}
.k-auth-form .form-label{font-size:14px;font-weight:600;color:var(--k-ink)}
.k-auth-form .form-control{height:48px;min-height:48px;border-radius:8px;border:1px solid var(--k-input);font-size:15px;padding:0 14px;background:#fff;color:var(--k-ink);width:100%;box-sizing:border-box}
.k-auth-form .form-control:focus{border-color:var(--k-blue);box-shadow:0 0 0 3px rgba(0,74,173,.12);outline:none}
.k-auth-form .k-field{margin-bottom:20px}
.k-auth-form .k-field-row{display:flex;justify-content:space-between;align-items:baseline}
.k-auth-form .k-field-row a{font-size:14px;font-weight:700}
.k-pass{position:relative}
.k-pass .form-control{padding-right:48px}
.k-pass button{position:absolute;right:4px;top:4px;width:40px;height:40px;border:0;background:none;color:var(--k-muted);font-size:18px;border-radius:6px;cursor:pointer}
.k-role{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;background:#E8EEF5;border-radius:10px;border:0;margin:0 0 22px;min-width:0}
.k-role legend{float:none;width:auto;font-size:14px;font-weight:600;color:var(--k-ink);margin-bottom:8px;padding:0}
.k-role-wrap{margin-bottom:22px}.k-role-wrap .k-role{margin:0}
.k-role label{position:relative;margin:0;cursor:pointer}
.k-role input{position:absolute;opacity:0;pointer-events:none}
.k-role span{display:flex;align-items:center;justify-content:center;height:40px;border-radius:7px;font-size:14px;font-weight:600;color:var(--k-ink-2);text-align:center;padding:0 8px}
.k-role input:checked+span{background:#fff;color:var(--k-navy);box-shadow:0 1px 2px rgba(0,38,62,.14)}
.k-role input:focus-visible+span{outline:2px solid var(--k-gold);outline-offset:2px}
.k-check{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--k-ink);margin:2px 0 24px}
.k-check input{width:18px;height:18px;accent-color:var(--k-blue);margin:0}
.k-btn-signin{width:100%;height:52px;border:0;border-radius:8px;background:var(--k-gold);color:var(--k-navy);font-weight:700;font-size:16px;display:inline-flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;font-family:inherit}
.k-btn-signin:hover{background:var(--k-gold-dark)}
.k-auth-help{border-top:1px solid var(--k-line);margin-top:24px;padding-top:20px;font-size:14px;color:var(--k-ink-2);line-height:1.55}
.k-auth-legal{display:flex;justify-content:center;gap:20px;font-size:13px;color:var(--k-muted);flex-wrap:wrap}
.k-auth-legal a{color:var(--k-muted)!important}
.k-auth-alert{border-radius:10px;padding:12px 14px;font-size:14px;font-weight:600;margin-bottom:18px;background:#FFF0EF;color:#922B27;border:1px solid #ECC6C3}
.k-auth-alert.ok{background:var(--k-green-tint);color:#15583B;border-color:#B7DFC9}
.k-auth-back{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:14px;margin-bottom:24px}
.k-otp{display:flex;gap:10px;justify-content:space-between;margin-bottom:22px}
.k-otp input{width:52px;height:58px;text-align:center;font-size:22px;font-family:var(--k-mono);border:1px solid var(--k-input);border-radius:10px}
.k-otp input:focus{border-color:var(--k-blue);outline:none;box-shadow:0 0 0 3px rgba(0,74,173,.12)}

/* ---------- Error pages ---------- */
body.k-error{margin:0;min-height:100vh;background:var(--k-canvas);font-family:var(--k-font);color:var(--k-ink);display:flex;flex-direction:column}
.k-error-top{height:68px;background:var(--k-navy);display:flex;align-items:center;padding:0 28px}
.k-error-main{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 20px;text-align:center}
.k-error-code{font-family:var(--k-mono);font-size:14px;letter-spacing:.2em;color:var(--k-blue);font-weight:600}
.k-error-main h1{font-size:34px;font-weight:600;color:var(--k-navy);margin:10px 0 10px;letter-spacing:-.02em}
.k-error-main p{color:var(--k-ink-2);max-width:460px;margin:0 auto 26px;font-size:15px}
.k-error-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.k-error-actions a{height:44px;padding:0 18px;border-radius:8px;font-weight:700;display:inline-flex;align-items:center;gap:8px}
.k-error-actions .gold{background:var(--k-gold);color:var(--k-navy)}.k-error-actions .line{border:1px solid var(--k-input);color:var(--k-blue);background:#fff}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width:1280px){
  .k-ui .k-stages{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:20px}
  .k-ui .k-grid-side{grid-template-columns:minmax(0,1fr) 340px}
  .k-ui .k-user-meta{display:none}
}
@media (max-width:1100px){
  .k-ui .k-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .k-ui .k-grid-side{grid-template-columns:minmax(0,1fr)}
  .k-ui .k-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
  .k-auth-grid{grid-template-columns:1fr 1fr}
  .k-auth-art{padding:36px 36px 32px}
  .k-auth-points{grid-template-columns:1fr}
}
@media (max-width:1023px){
  .k-ui .k-main{margin-left:0}
  .k-ui .k-sidebar{transform:translateX(-100%);transition:transform .22s ease;box-shadow:none;width:min(300px,calc(100vw - 56px));z-index:1065}
  .k-ui .page-wrapper.toggled .k-sidebar{transform:none;box-shadow:0 0 0 100vmax rgba(0,22,38,.45)}
  .k-ui .k-sidebar-close{display:inline-flex}
  .k-ui .k-backdrop{display:none}
  .k-ui .page-wrapper.toggled .k-backdrop{display:block;position:fixed;inset:0;z-index:1060;background:transparent}
  .k-ui .k-topbar{padding:0 20px;gap:12px}
  .k-ui .k-topbar .k-menu-btn{display:inline-flex}
  .k-ui .app-body.k-content{padding:24px 20px 40px!important}
  .k-ui .k-grid-2{grid-template-columns:minmax(0,1fr)}
}
.k-ui .k-menu-btn{display:none}
@media (max-width:767px){
  :root{--k-topbar:auto}
  .k-ui .k-topbar{position:sticky;top:0;flex-wrap:wrap;height:auto;background:var(--k-navy);border-bottom:0;padding:8px 10px 14px;gap:8px 4px}
  .k-ui .k-topbar .k-menu-btn{order:1;display:inline-flex;width:44px;height:44px;border:0;background:transparent;color:#fff!important;font-size:24px}
  .k-ui .k-topbar .k-menu-btn:hover{background:rgba(255,255,255,.08)}
  .k-ui .k-mbrand{order:2;display:flex;flex:1 1 auto;justify-content:center;font-size:15px;padding:0}
  .k-ui .k-mbrand img{width:34px;height:34px}
  .k-ui .k-mbell{order:3;display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;color:#fff!important;font-size:21px;position:relative;border-radius:8px}
  .k-ui .k-mbell .k-dot{top:9px;right:9px;background:var(--k-gold);box-shadow:0 0 0 2px var(--k-navy)}
  .k-ui .k-topbar-actions{display:none!important}
  .k-ui .k-search{order:4}
  .k-ui .k-search{flex:1 1 100%;height:48px;border:0;border-radius:10px;margin:0 4px}
  .k-ui .k-search select{display:none}
  .k-ui .k-search input{font-size:16px;padding-left:44px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%235A6A80' stroke-width='2'%3E%3Ccircle cx='8' cy='8' r='6'/%3E%3Cpath d='M12.5 12.5L17 17'/%3E%3C/svg%3E") no-repeat 16px center}
  .k-ui .k-search button{display:none}
  .k-ui .portal-hotel-bar{padding:10px 14px}
  .k-ui .app-body.k-content{padding:20px 16px calc(96px + env(safe-area-inset-bottom,0px))!important}
  .k-ui .k-page-head{margin-bottom:18px;align-items:flex-start}
  .k-ui .k-page-head h1,.k-ui .k-h1{font-size:26px}
  .k-ui .k-page-actions{width:100%}
  .k-ui .k-page-actions .btn{flex:1 1 auto}
  .k-ui .k-kpis{grid-template-columns:1fr 1fr;background:transparent;border:0;gap:10px;overflow:visible}
  .k-ui .k-kpi{background:#fff;border:1px solid var(--k-line)!important;border-radius:12px;padding:14px 16px}
  .k-ui .k-kpi-value{font-size:28px}
  .k-ui .k-kpi-note{display:none}
  .k-ui .k-grid-3{grid-template-columns:minmax(0,1fr)}
  .k-ui .k-fields{grid-template-columns:minmax(0,1fr)}
  .k-ui .k-stages{grid-template-columns:repeat(2,minmax(0,1fr))}
  .k-ui .k-steps{grid-template-columns:minmax(0,1fr);gap:0}
  .k-ui .k-step{padding:2px 0 14px 36px}
  .k-ui .k-step:before{top:0}
  .k-ui .card-body,.k-ui .k-card-body{padding:16px}
  .k-ui .card>.card-header,.k-ui .k-card-head{padding:14px 16px!important}
  .k-ui .k-filters{padding:14px}
  .k-ui .k-filters-row>.k-field{flex:1 1 100%}
  .k-ui .form-control,.k-ui .form-select{font-size:16px}
  .k-ui .k-activity li{grid-template-columns:1fr;gap:2px}
  .k-ui .k-tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:1050;background:#fff;border-top:1px solid var(--k-line);padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px))}
  .k-ui .k-tabbar a,.k-ui .k-tabbar button{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;font-size:11px;font-weight:600;color:var(--k-ink-2)!important;background:none;border:0;text-decoration:none;min-width:0}
  .k-ui .k-tabbar i{font-size:21px;line-height:1}
  .k-ui .k-tabbar [aria-current="page"]{color:var(--k-navy)!important;font-weight:700}
  .k-ui .k-tabbar [aria-current="page"] i{color:var(--k-blue)}
  .k-ui .btn-ai-launch{bottom:calc(84px + env(safe-area-inset-bottom,0px))!important}
  .k-auth-grid{grid-template-columns:1fr}
  .k-auth-art{padding:22px 20px 24px}
  .k-auth-art-body{padding:22px 0 0}
  .k-auth-eyebrow{margin-bottom:14px;font-size:11px}
  .k-auth-title{font-size:34px;margin-bottom:12px}
  .k-auth-copy{font-size:15px;margin:0}
  .k-auth-art .k-sample,.k-auth-points,.k-auth-foot,.k-auth-rings{display:none}
  .k-auth-side{padding:18px 20px 24px}
  .k-auth-lang{align-self:flex-end}
  .k-auth-form{padding:20px 0 24px}
  .k-auth-form h1{font-size:28px}
  .k-otp input{width:44px;height:52px}
}
@media (prefers-reduced-motion:reduce){.k-ui *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{
  .k-ui .k-sidebar,.k-ui .k-topbar,.k-ui .k-tabbar,.k-ui [data-chatbot-open],.k-ui .btn-ai-launch{display:none!important}
  .k-ui .k-main{margin-left:0}.k-ui .app-body.k-content{padding:0!important}
  .k-ui .card{break-inside:avoid}
}

/* Kimbo AI suggestions dialog + chatbot trigger, light theme */
.k-ui .ai-suggestion-backdrop{background:rgba(0,22,38,.5)!important;backdrop-filter:none!important}
.k-ui .ai-suggestion-dialog{background:#fff!important;border:1px solid var(--k-line)!important;border-radius:16px!important;box-shadow:0 24px 64px rgba(0,38,62,.22)!important;text-align:left!important;padding:24px!important}
.k-ui .ai-suggestion-dialog__eyebrow{color:var(--k-blue)!important;letter-spacing:.16em!important;font-size:12px!important}
.k-ui .ai-suggestion-dialog__title{color:var(--k-navy)!important;text-align:left!important;font-size:22px!important;font-weight:600}
.k-ui .ai-suggestion-close{background:#fff!important;border:1px solid var(--k-line)!important;color:var(--k-navy)!important;width:40px!important;height:40px!important}
.k-ui .ai-suggestion-chip{background:var(--k-subtle)!important;border:1px solid var(--k-line)!important;color:var(--k-ink)!important;border-radius:10px!important;font-weight:600}
.k-ui .ai-suggestion-chip:hover{background:var(--k-blue-soft)!important;border-color:var(--k-blue)!important;transform:none!important}
.k-ui .ai-suggestion-nav{background:#fff!important;border:1px solid var(--k-input)!important;color:var(--k-blue)!important;border-radius:8px!important;font-weight:700;padding:8px 14px!important}
.k-ui .ai-suggestion-footer{justify-content:flex-end!important}
@media (min-width:1024px){.k-ui .chatbot-trigger{display:none!important}}
@media (max-width:1023px){.k-ui .chatbot-trigger{background:var(--k-navy)!important;color:#fff!important;border:0!important;box-shadow:0 10px 24px rgba(0,38,62,.25)!important}}
@media (max-width:767px){.k-ui .chatbot-trigger{bottom:calc(84px + env(safe-area-inset-bottom,0px))!important;right:14px!important}.k-ui .chatbot-trigger__label{display:none!important}}
.k-ui .k-page-head .k-eyebrow{color:var(--k-blue)!important}
@media (min-width:1024px) and (max-height:960px){.k-ui .k-nav-link{height:39px}.k-ui .k-ai p,.k-ui .k-ai-more{display:none}.k-ui .k-ai{padding:12px 14px}.k-ui .k-ai-head{margin-bottom:10px}.k-ui .k-sidebar{padding-top:18px}}
@media (min-width:1024px) and (max-height:780px){.k-ui .k-ai-head{display:none}.k-ui .k-ai{padding:0;border:0;background:transparent}.k-ui .k-nav-head{padding-top:10px}}
.k-role-wrap{border:0;padding:0;margin:0 0 22px;min-width:0}
.k-role-wrap legend{float:none;width:auto;font-size:14px;font-weight:600;color:var(--k-ink);margin-bottom:8px;padding:0}
.k-auth .k-hint{font-size:12px;color:var(--k-muted);margin-top:6px}
.k-auth-form .k-icon-tile{width:56px;height:56px;border-radius:12px;background:var(--k-gold-tint);color:#8A6100;display:inline-flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:20px}
.k-auth-form .k-otp-input{height:60px;min-height:60px;text-align:center;font-family:var(--k-mono);font-size:26px;letter-spacing:.5em;padding-left:.5em}
.k-auth-form .k-row-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;flex-wrap:wrap}
.k-auth-form .k-row-actions button{background:none;border:0;color:var(--k-blue);font-weight:700;font-size:14px;cursor:pointer;padding:6px 0;font-family:inherit}
.k-auth-form .k-target{font-weight:700;color:var(--k-navy)}
.k-auth-form .k-btn-signin+.k-center{margin-top:20px}
.k-auth-form .k-center{text-align:center}
.k-auth-form .k-center a{font-weight:700}
.k-auth-mtop{display:none}
@media (max-width:767px){
  .k-recovery .k-auth-art{display:none}
  .k-recovery .k-auth-side{padding:0;background:var(--k-navy)}
  .k-recovery .k-auth-mtop{display:flex;justify-content:space-between;align-items:center;padding:22px 20px 0;color:#fff}
  .k-recovery .k-auth-mtop a{color:#fff!important;font-weight:600;display:inline-flex;align-items:center;gap:10px;font-size:15px}
  .k-recovery .k-auth-mtop img{width:34px;height:34px}
  .k-recovery .k-auth-form{background:#fff;border-radius:20px 20px 0 0;margin:106px 0 0;padding:28px 20px 24px;max-width:none;flex:1 1 auto;display:flex;flex-direction:column}
  .k-recovery .k-auth-form .k-icon-tile{margin:-112px 0 56px;background:rgba(255,185,0,.14);color:var(--k-gold)}
  .k-recovery .k-auth-help{margin-top:auto;text-align:center;font-size:13px}
  .k-recovery .k-auth-legal{background:#fff;padding:0 20px 20px}
  .k-recovery .k-auth-form .k-auth-back{display:none}
}

/* Auth pages have no Bootstrap reboot: base resets + shared pieces */
.k-auth *,.k-auth *::before,.k-auth *::after{box-sizing:border-box}
.k-auth a{text-decoration:none}
.k-auth .k-auth-help a{text-decoration:underline;text-underline-offset:2px}
.k-auth h1,.k-auth h2,.k-auth p{margin-top:0}
.k-auth .k-brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font-weight:700;font-size:19px;line-height:1.05;letter-spacing:-.01em}
.k-auth .k-chip{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}
.k-auth .st-ready{background:var(--k-green);color:#fff}
.k-auth .form-label{display:inline-block;margin-bottom:8px}
.k-auth button,.k-auth input{font-family:inherit}
.k-auth .k-auth-form .k-center{margin:20px 0 0}
@media (max-width:767px){
  .k-auth-grid{position:relative}
  .k-auth:not(.k-recovery) .k-auth-lang{position:absolute;top:18px;right:16px;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18)}
  .k-auth:not(.k-recovery) .k-auth-lang a{color:#C9D6E3!important;padding:5px 11px}
  .k-auth:not(.k-recovery) .k-auth-lang a.active{background:#fff;color:var(--k-navy)!important}
}
/* Error pages */
body.k-error-page{margin:0;font-family:var(--k-font);color:var(--k-ink);background:var(--k-canvas);-webkit-font-smoothing:antialiased}
.k-error-page *{box-sizing:border-box}
.k-err{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
.k-err-copy{padding:44px 48px;display:flex;flex-direction:column}
.k-err-brand{display:flex;align-items:center;gap:10px;color:var(--k-navy);text-decoration:none;font-weight:700;font-size:16px;line-height:1.05}
.k-err-body{margin:auto 0;max-width:460px;padding:40px 0}
.k-err-eyebrow{display:flex;align-items:center;gap:14px;font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--k-blue);margin:0 0 18px}
.k-err-eyebrow:before{content:'';width:32px;height:2px;background:var(--k-gold)}
.k-err h1{font-size:clamp(32px,3.6vw,44px);line-height:1.12;font-weight:500;color:var(--k-navy);margin:0 0 18px;letter-spacing:-.02em}
.k-err-text{font-size:17px;line-height:1.6;color:var(--k-ink-2);margin:0 0 28px}
.k-err-actions{display:flex;gap:12px;flex-wrap:wrap}
.k-err-actions a{height:48px;padding:0 22px;border-radius:8px;font-weight:700;display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-size:15px}
.k-err-gold{background:var(--k-gold);color:var(--k-navy)}.k-err-gold:hover{background:var(--k-gold-dark)}
.k-err-line{background:#fff;border:1px solid var(--k-input);color:var(--k-blue)}
.k-err-help{font-size:14px;color:var(--k-muted);margin:0}.k-err-help a{color:var(--k-blue)}
.k-err-art{position:relative;background:var(--k-navy);display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}
.k-err-path{position:absolute;inset:0;width:100%;height:100%}
.k-err-num{position:relative;font-size:clamp(90px,11vw,150px);font-weight:600;color:#fff;letter-spacing:-.02em;line-height:1}
.k-err-caption{position:relative;font-family:var(--k-mono);font-size:14px;letter-spacing:.2em;text-transform:uppercase;color:#C9D6E3;margin-top:18px}
@media (max-width:767px){.k-err{grid-template-columns:1fr}.k-err-art{order:-1;min-height:220px}.k-err-copy{padding:28px 20px}.k-err-body{padding:28px 0}.k-err-num{font-size:84px}}
.k-err-num span{color:var(--k-gold)}
/* Dashboard specifics */
.k-ui .k-today{display:flex;align-items:baseline;gap:10px;margin:16px 0 14px;color:var(--k-ink-2);font-size:15px}
.k-ui .k-today-n{font-size:40px;font-weight:600;color:var(--k-navy);line-height:1}
.k-ui .k-today-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid var(--k-line-2)}
.k-ui .k-today-stats span{display:block;font-size:12px;color:var(--k-muted)}
.k-ui .k-today-stats strong{font-size:20px;font-weight:600;color:var(--k-navy)}
.k-ui .k-chart{position:relative;height:200px;margin-top:14px}
.k-ui .k-health li{gap:12px;padding:11px 0}
.k-ui .k-health .k-health-label{flex:0 0 92px;font-size:14px;color:var(--k-ink-2)}
.k-ui .k-health strong{flex:0 0 40px;text-align:right;color:var(--k-navy);font-weight:700}
.k-ui .k-mlist{display:none;list-style:none;margin:0;padding:0 14px 14px}
.k-ui .k-mlist li a{display:block;padding:14px 16px;border:1px solid var(--k-line);border-radius:12px;margin-top:10px;color:inherit!important;background:#fff}
.k-ui .k-mlist-top,.k-ui .k-mlist-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px}
.k-ui .k-mlist-bottom{margin-top:6px}.k-ui .k-mlist-bottom strong{color:var(--k-navy);font-weight:600}.k-ui .k-mlist-bottom span{color:var(--k-ink-2);font-size:14px}
.k-ui a.k-lane:hover{color:var(--k-blue)}
@media (max-width:767px){
  .k-ui .k-dash .k-kpis .k-kpi:nth-child(5){display:none}
  .k-ui .k-dash .table-responsive{display:none}
  .k-ui .k-dash .k-mlist{display:block}
  .k-ui .k-today-stats{grid-template-columns:1fr 1fr 1fr;gap:8px}
  .k-ui .k-today-stats strong{font-size:17px}
  .k-ui .k-attn{flex-wrap:wrap;gap:8px 12px}
  .k-ui .k-attn-n{min-width:48px}
}
.k-ui canvas{filter:none!important}
@media (max-width:767px){.k-ui .k-attn{display:grid;grid-template-columns:auto minmax(0,1fr) auto;flex-wrap:nowrap}.k-ui .k-attn a{grid-column:3}}
/* Shipments list */
.k-ui .k-listbar{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;flex-wrap:wrap;margin-bottom:16px}
.k-ui .k-show{display:flex;align-items:center;gap:10px;margin:0}
.k-ui .k-show label{font-size:14px;font-weight:600;color:var(--k-ink-2)}
.k-ui .k-show .form-select{width:auto;min-width:200px}
.k-ui .k-filters-more{margin-top:14px;padding-top:14px;border-top:1px solid var(--k-line-2)}
.k-ui .k-filters .form-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--k-ink-2)!important}
.k-ui .k-clear{font-weight:700;font-size:13px}
.k-ui .k-bulk{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--k-line);flex-wrap:wrap}
.k-ui .k-bulk .form-select{width:auto;min-width:160px;min-height:34px;height:34px;padding-top:0;padding-bottom:0;font-size:13px}
.k-ui .k-check-inline{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--k-ink);margin:0 6px 0 0;cursor:pointer}
.k-ui .k-bulk-count{margin-left:auto;color:var(--k-muted);font-size:13px}
.k-ui .k-bulk.has-selection .k-bulk-count{color:var(--k-navy);font-weight:700}
.k-ui .k-shipments .k-table td{white-space:nowrap}
.k-ui .k-shipments .k-col-client{white-space:normal!important;min-width:200px}
.k-ui .k-col-check{width:44px;padding-right:0!important}
.k-ui .k-col-actions{width:1%}
.k-ui .k-why{border:0;background:none;padding:0 0 0 4px;color:var(--k-muted);cursor:pointer;vertical-align:-1px}
.k-ui .k-why:hover{color:var(--k-blue)}
.k-ui .k-danger-item,.k-ui .k-danger-item i{color:#A62823!important}
.k-ui .k-table .dropdown-menu{min-width:200px}
.k-ui .k-cards{display:none;list-style:none;margin:0;padding:12px}
.k-ui .k-cards>li+li{margin-top:10px}
.k-ui .k-card-row{display:block;padding:14px 16px;border:1px solid var(--k-line);border-radius:12px;color:inherit!important;background:#fff}
.k-ui .k-card-row-top,.k-ui .k-card-row-mid,.k-ui .k-card-row-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px}
.k-ui .k-card-row-mid{margin-top:8px}.k-ui .k-card-row-mid strong{color:var(--k-navy);font-weight:600}.k-ui .k-card-row-mid span{color:var(--k-ink-2);font-size:13px;white-space:nowrap}.k-ui .k-card-row-mid>strong,.k-ui .k-card-row-mid>span{min-width:0}.k-ui .k-card-row-mid>span{white-space:normal;text-align:right;overflow-wrap:anywhere}/* KIMBO-CARD-WRAP */
.k-ui .k-card-row-bottom{margin-top:6px;font-size:13px;color:var(--k-muted)}
.k-ui .k-card-row-action{margin-top:8px}
.k-ui .k-guide{padding:0}
.k-ui .k-guide summary{list-style:none;cursor:pointer;padding:18px 22px;font-size:18px;font-weight:600;color:var(--k-navy);display:flex;align-items:center;gap:10px}
.k-ui .k-guide summary::-webkit-details-marker{display:none}
.k-ui .k-guide summary i{font-size:14px;transition:transform .15s}
.k-ui .k-guide[open] summary i{transform:rotate(90deg)}
.k-ui .k-guide-body{padding:0 22px 22px}
.k-ui .k-guide-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px 20px}
.k-ui .k-guide-grid div{display:flex;flex-direction:column;align-items:flex-start;gap:6px;font-size:13px;color:var(--k-ink-2)}
.k-ui .k-guide-grid .k-chip{white-space:normal;height:auto;min-height:24px;padding:4px 10px;line-height:1.25}
.k-ui .k-guide-h{font-size:15px;font-weight:700;color:var(--k-navy);margin:24px 0 10px}
.k-ui .k-guide-rules{display:grid;grid-template-columns:220px 1fr;gap:8px 20px;margin:0;font-size:14px}
.k-ui .k-guide-rules dt{font-weight:600;color:var(--k-ink)}.k-ui .k-guide-rules dd{margin:0;color:var(--k-ink-2)}
.k-ui .k-table-foot nav{margin:0}
.k-ui .k-table-foot .pagination{margin:0}
.k-ui .k-table-foot nav .d-sm-flex>div:first-child{display:none}
@media (max-width:991px){
  .k-ui .k-shipments-table{display:none}
  .k-ui .k-cards{display:block}
  .k-ui .k-bulk{display:none}
}
@media (max-width:767px){
  .k-ui .k-show{width:100%}.k-ui .k-show .form-select{flex:1}
  .k-ui .k-seg{width:100%}.k-ui .k-seg a{flex:1;justify-content:center}
  .k-ui .k-filters-row>.k-field-actions{width:100%}.k-ui .k-filters-row>.k-field-actions .btn:first-child{flex:1}
  .k-ui .k-guide-rules{grid-template-columns:1fr}
  .k-ui .k-guide-rules dd{margin-bottom:8px}
}
.k-ui .k-main>*,.k-ui .k-content>*{min-width:0}
.k-ui .k-content{min-width:0;width:100%}
.k-ui .k-shipments .k-chip{white-space:normal;height:auto;min-height:24px;padding:4px 10px;line-height:1.2;max-width:190px}
.k-ui .k-shipments .k-table th,.k-ui .k-shipments .k-table td{padding-left:12px!important;padding-right:12px!important}
.k-ui .k-filters-row>.k-field{flex:1 1 140px}
/* Shipment detail */
.k-ui .k-ship-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.k-ui .k-ship-title h1{font-family:var(--k-mono);font-size:30px;font-weight:500;letter-spacing:0}
.k-ui .k-chip-line{background:#fff;border:1px solid var(--k-line);color:var(--k-ink)}
.k-ui .k-chip-line .k-lane{font-size:12px;font-weight:700;color:var(--k-ink)}
.k-ui .k-stack{display:flex;flex-direction:column;gap:24px;min-width:0}
.k-ui .k-span-all{grid-column:1/-1}
.k-ui .k-muted{color:var(--k-muted)}
.k-ui .k-map{margin-top:18px;min-height:280px;border:1px dashed var(--k-input);border-radius:10px;background:var(--k-subtle);display:flex;align-items:center;justify-content:center;overflow:hidden}
.k-ui .k-map p{margin:0;padding:20px;text-align:center;color:var(--k-muted);max-width:360px}
.k-ui .k-map:has(> div){border-style:solid}
.k-ui .k-docs{list-style:none;margin:0;padding:0}
.k-ui .k-docs li{display:flex;align-items:center;gap:10px;padding:11px 0;border-top:1px solid var(--k-line-2);font-size:14px}
.k-ui .k-docs li:first-child{border-top:0}
.k-ui .k-docs-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--k-ink)}
.k-ui .k-docs a{font-weight:700;white-space:nowrap}
.k-ui .k-filetag{flex:none;font-family:var(--k-mono);font-size:10.5px;font-weight:600;padding:2px 6px;border-radius:4px;background:var(--k-red-tint);color:var(--k-red-ink)}
.k-ui .k-note{background:var(--k-gold-tint);border-radius:10px;padding:12px 14px;font-size:13.5px;color:#4A3500}
.k-ui .k-note strong{display:block;margin-bottom:2px}
.k-ui .k-danger-link{color:#A62823!important;font-weight:700}
.k-ui .k-callout div{flex:1 1 auto}
.k-ui .k-step.now small{color:#7A5200}
@media (max-width:767px){.k-ui .k-ship-title h1{font-size:22px}.k-ui .k-callout{flex-wrap:wrap}.k-ui .k-callout .btn{margin-left:0;width:100%}}
/* ---------- Legacy components mapped onto the new system ---------- */
/* Rows of stat cards become one KPI strip */
.k-ui .row:has(> [class*="col"] > .stat-card){--bs-gutter-x:0;--bs-gutter-y:0;margin:0 0 24px!important;background:#fff;border:1px solid var(--k-line);border-radius:12px;overflow:hidden;display:flex;flex-wrap:wrap}
.k-ui .row:has(> [class*="col"] > .stat-card)>[class*="col"]{flex:1 1 0;min-width:170px;max-width:none;width:auto;padding:0!important;border-right:1px solid var(--k-line);margin:0!important}
.k-ui .row:has(> [class*="col"] > .stat-card)>[class*="col"]:last-child{border-right:0}
.k-ui .row:has(> [class*="col"] > .stat-card) .stat-card{border:0!important;border-radius:0!important;height:100%;background:#fff!important}
.k-ui .stat-card .text-success,.k-ui .stat-card .text-info,.k-ui .stat-card .text-danger,.k-ui .stat-card .text-warning,.k-ui .stat-card .text-primary{color:var(--k-muted)!important}
.k-ui .stat-card i.bi-arrow-up,.k-ui .stat-card i.bi-arrow-down,.k-ui .stat-card i.bi-arrow-repeat{display:none}
@media (max-width:767px){
  .k-ui .row:has(> [class*="col"] > .stat-card){display:grid;grid-template-columns:1fr 1fr;gap:10px;background:transparent;border:0;overflow:visible}
  .k-ui .row:has(> [class*="col"] > .stat-card)>[class*="col"]{min-width:0;border:0}
  .k-ui .row:has(> [class*="col"] > .stat-card) .stat-card{border:1px solid var(--k-line)!important;border-radius:12px!important;padding:14px 16px!important}
  .k-ui .stat-card h3,.k-ui .stat-card .h3{font-size:24px!important}
}
/* Custom filter buttons from older pages */
.k-ui .btn-filter,.k-ui .btn-apply-filters{background:var(--k-blue)!important;border:1px solid var(--k-blue)!important;color:#fff!important}
.k-ui .btn-clear,.k-ui .btn-clear-filters{background:transparent!important;border:0!important;color:var(--k-blue)!important;padding:0 8px}
.k-ui .btn-cancel{background:#fff!important;border:1px solid var(--k-input)!important;color:var(--k-blue)!important}
.k-ui .btn-filter i,.k-ui .btn-clear i{color:inherit!important}
/* Generic dark panels left over from the old theme */
.k-ui .app-body [style*="background: rgba(255, 255, 255, 0.03)"],.k-ui .app-body [style*="background: rgba(255,255,255,0.03)"]{background:var(--k-subtle)!important;color:var(--k-ink)!important;border-color:var(--k-line)!important}
.k-ui .app-body [style*="color: rgba(255"],.k-ui .app-body [style*="color:rgba(255"],.k-ui .app-body [style*="color: #fff"],.k-ui .app-body [style*="color:#fff"]{color:var(--k-ink-2)!important}
.k-ui .app-body .bg-dark:not(.badge),.k-ui .app-body .bg-black{background:var(--k-subtle)!important;color:var(--k-ink)!important}
.k-ui .app-body .text-white:not(.btn):not(.badge):not(.k-chip){color:var(--k-ink)!important}
.k-ui .app-body .border-secondary{border-color:var(--k-line)!important}
.k-ui .app-body .bg-light{background:var(--k-subtle)!important}
.k-ui .app-body .rounded-4{border-radius:12px!important}
.k-ui .app-body .shadow,.k-ui .app-body .shadow-sm,.k-ui .app-body .shadow-lg{box-shadow:none!important}
.k-ui .app-body .text-muted,.k-ui .app-body .text-secondary{color:var(--k-muted)!important}
.k-ui .app-body .page-title{font-size:24px;font-weight:600;color:var(--k-navy)}
/* Avatar circles in people tables */
.k-ui .app-body .avatar{background:var(--k-blue-tint)!important;color:var(--k-navy)!important;font-weight:700}
/* Status badges used by people tables */
.k-ui .badge-status,.k-ui .status-badge{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:700;background:var(--k-green-tint)!important;color:#1B6B40!important;border:0!important}
.k-ui .badge-status.inactive,.k-ui .status-badge.inactive,.k-ui .badge-status.bg-danger{background:#EEF2F6!important;color:#3F4E62!important}
.k-ui .app-body .badge.bg-success{background:var(--k-green-tint)!important;color:#1B6B40!important}
.k-ui .app-body .badge.bg-danger{background:var(--k-red-tint)!important;color:var(--k-red-ink)!important}
.k-ui .app-body .badge.bg-primary,.k-ui .app-body .badge.bg-info{background:var(--k-blue-tint)!important;color:#0B3D91!important}
.k-ui .app-body .badge.bg-transparent{background:transparent!important;color:var(--k-muted)!important;border:1px solid var(--k-line)!important;font-weight:600}
.k-ui .stat-card,.k-ui .stat-card *{text-align:left!important}
.k-ui .stat-card{justify-content:flex-start!important}
.k-ui .app-body .client-logo{width:36px;height:36px;border-radius:8px;object-fit:contain;background:var(--k-subtle);border:1px solid var(--k-line)}
.k-ui .k-bullets{margin:0;padding:0 22px 20px 42px;color:var(--k-ink-2);font-size:14px;line-height:1.6}
.k-ui .k-bullets li+li{margin-top:4px}
.k-ui .deliveries-tracking-badge{background:transparent!important;border:0!important;padding:0!important;font-family:var(--k-mono);color:var(--k-blue)!important;font-weight:500!important;letter-spacing:0!important;font-size:13.5px!important}
.k-ui .app-body .stat-card{flex-wrap:nowrap!important;gap:2px!important;height:auto}
.k-ui .app-body .table-view table thead th,.k-ui .app-body .table thead th{background:#fff!important;color:var(--k-muted)!important}
.k-ui .app-body .table-view table tbody tr:hover,.k-ui .app-body .table-view table tbody tr:hover>td{background:var(--k-blue-soft)!important}
/* Settings two-column layout */
.k-ui .k-settings{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:start}
.k-ui .k-subnav{display:flex;flex-direction:column;gap:2px;padding:6px;background:#E8EEF5;border-radius:12px;position:sticky;top:96px}
.k-ui .k-subnav a{display:block;padding:10px 12px;border-radius:8px;font-weight:600;font-size:14px;color:var(--k-ink-2)!important}
.k-ui .k-subnav a:hover{color:var(--k-navy)!important;background:rgba(255,255,255,.5)}
.k-ui .k-subnav a[aria-current="page"]{background:#fff;color:var(--k-navy)!important;box-shadow:0 1px 2px rgba(0,38,62,.12)}
.k-ui .k-settings-main{min-width:0}
.k-ui .glass-card,.k-ui .app-body .prompt-stat-card,.k-ui .app-body .prompt-filter-card,.k-ui .app-body [class*="prompt-"][class*="-card"]{background:#fff!important;border:1px solid var(--k-line)!important;border-radius:12px!important;box-shadow:none!important;color:var(--k-ink)!important}
.k-ui .app-body .prompt-stat-label{color:var(--k-muted)!important}
.k-ui .icon-box-shipment{display:none}
@media (max-width:991px){.k-ui .k-settings{grid-template-columns:1fr}.k-ui .k-subnav{position:static;flex-direction:row;overflow-x:auto;flex-wrap:nowrap}.k-ui .k-subnav a{white-space:nowrap}}

/* Generic inputs from pages with their own dark styles (profile, settings, forms) */
.k-ui .app-body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):not([type=hidden]):not([type=submit]):not([type=button]):not(.form-control):not(.k-otp-input),
.k-ui .app-body select:not(.form-select),
.k-ui .app-body textarea:not(.form-control){background:#fff!important;color:var(--k-ink)!important;border:1px solid var(--k-input)!important;border-radius:8px!important;min-height:44px;padding:10px 12px;font:inherit;font-size:14px;width:100%;box-shadow:none}
.k-ui .app-body input[readonly]:not(.form-control){background:#EEF2F6!important;color:var(--k-muted)!important}
.k-ui .app-body select:not(.form-select){appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%230E2233' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 12px center!important;padding-right:32px}
.k-ui .app-body select option{background:#fff;color:var(--k-ink)}
.k-ui .app-body .form-field label{color:var(--k-ink)!important;font-size:13px;font-weight:700;text-transform:none;letter-spacing:0}
/* Profile */
.k-ui .profile-shell>.page-header{display:none}
.k-ui .profile-card{background:#fff!important;border:1px solid var(--k-line)!important;border-radius:12px!important;color:var(--k-ink)!important;box-shadow:none!important}
.k-ui .profile-banner{background:var(--k-navy)!important;height:88px!important}
.k-ui .profile-avatar{background:var(--k-navy)!important;color:var(--k-gold)!important;border:4px solid #fff!important}
.k-ui .mfa-switch-slider{background:#C3D0DF!important;border-color:#C3D0DF!important}
.k-ui .mfa-switch input:checked+.mfa-switch-slider{background:var(--k-blue)!important;border-color:var(--k-blue)!important}
.k-ui .app-body [class*="mfa"] p,.k-ui .app-body [class*="mfa"] small,.k-ui .app-body .security-copy{color:var(--k-ink-2)!important;text-transform:none!important;letter-spacing:0!important}
/* Upload zones on forms */
.k-ui .app-body .upload-zone,.k-ui .app-body .shipment-documents-zone,.k-ui .app-body .shipment-show-documents-zone{background:var(--k-subtle)!important;border:1.5px dashed var(--k-input)!important;border-radius:12px!important;color:var(--k-ink)!important;box-shadow:none!important}
.k-ui .app-body .upload-zone *{color:inherit}
.k-ui .app-body .upload-zone .text-muted,.k-ui .app-body .upload-zone .text-secondary,.k-ui .app-body .upload-zone small,.k-ui .app-body .upload-zone p.text-muted{color:var(--k-muted)!important}
.k-ui .app-body [class*="upload-chip"],.k-ui .app-body .shipment-upload-chip{background:#fff!important;border:1px solid var(--k-line)!important;color:var(--k-ink-2)!important}
.k-ui .app-body [class*="upload-icon"],.k-ui .app-body [class*="icon-ring"]{background:var(--k-blue-tint)!important;color:var(--k-blue)!important;border:0!important;box-shadow:none!important}
.k-ui .app-body [class*="document-card"]{background:#fff!important;border:1px solid var(--k-line)!important;color:var(--k-ink)!important}
/* Card headers with an icon tile (driver/client forms) */
.k-ui .card-header [class^="icon-box"],.k-ui .card-header [class*=" icon-box"]{display:none!important}
.k-ui .card-header.d-flex{justify-content:flex-start!important}
.k-ui .card-header h5+small,.k-ui .card-header small.text-secondary{display:block;font-size:13px;color:var(--k-muted)!important;text-align:left}
.k-ui .card-header>div{text-align:left!important}
.k-ui input[type=file].form-control{padding:0;line-height:42px;overflow:hidden}
.k-ui input[type=file]::file-selector-button{height:42px;margin:0 12px 0 0;padding:0 14px;border:0;border-right:1px solid var(--k-input);background:var(--k-blue-tint);color:var(--k-blue);font-weight:700;font-family:inherit;cursor:pointer}
.k-ui input[type=file]:hover::file-selector-button{background:#D6E3F6}
/* Analytics delayed list */
.k-ui .app-body [class*="delayed"] .card,.k-ui .app-body .delayed-item,.k-ui .app-body .delayed-shipment-card{border:1px solid var(--k-line)!important;border-left:3px solid var(--k-red)!important;border-radius:10px!important;box-shadow:none!important}
.k-ui .card-header-clean.bg-danger{background:#fff!important;color:var(--k-navy)!important;border-bottom:1px solid var(--k-line-2)!important}
.k-ui .card-header-clean.bg-danger h6{color:var(--k-navy)!important;font-size:18px;font-weight:600}
.k-ui .k-late{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--k-line-2)}
.k-ui .k-late:first-child{border-top:0;padding-top:0}
.k-ui .k-late small{color:var(--k-muted)}
.k-ui .k-late .text-danger{color:var(--k-red-ink)!important}
.k-ui .k-late-count{color:var(--k-red-ink);font-weight:700;font-size:13px}
.k-ui .card-header-clean{display:flex;justify-content:space-between;align-items:center;padding:18px 22px}

/* ---------- Automatic email rules (Settings → Email) ---------- */
.k-ui .k-rules{border:1px solid var(--k-line);border-radius:var(--k-radius);background:var(--k-surface);overflow:hidden}
.k-ui .k-rule{padding:14px 16px;border-top:1px solid var(--k-line-2)}
.k-ui .k-rule:first-child{border-top:0}
.k-ui .k-rule .form-check{display:flex;align-items:flex-start;gap:12px;padding-left:0}
.k-ui .k-rule .form-check-input{flex:0 0 auto;margin:2px 0 0 0;float:none}
.k-ui .k-rule .form-check-label strong{display:block;color:var(--k-navy);font-weight:600}
.k-ui .k-rule .form-check-label small{display:block;color:var(--k-muted);font-size:13px;margin-top:2px}

/* ---------- Live tracking (portal + public link) ---------- */
.k-ui .k-steps-6{grid-template-columns:repeat(6,minmax(0,1fr))}
.k-ui .k-track-hero .card-body{padding:24px}
.k-ui .k-track-status{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;margin-bottom:26px}
.k-ui .k-track-status-text{flex:1 1 auto;min-width:0}
.k-ui .k-track-status h2{font-size:24px;font-weight:700;margin:0 0 4px;color:var(--k-navy)}
.k-ui .k-track-status p{margin:0;color:var(--k-ink-2);font-size:15px}
.k-ui .k-pulse{position:relative;flex:none;width:56px;height:56px;border-radius:50%;background:var(--k-blue-tint);color:var(--k-navy);display:inline-flex;align-items:center;justify-content:center;font-size:24px}
.k-ui .k-pulse.is-live{background:var(--k-navy);color:var(--k-gold)}
.k-ui .k-pulse.is-live:after{content:'';position:absolute;inset:-6px;border-radius:50%;border:3px solid var(--k-gold);opacity:.0;animation:k-ping 2s ease-out infinite}
.k-ui .k-pulse.is-done{background:var(--k-green-tint);color:var(--k-green)}
@keyframes k-ping{0%{transform:scale(.85);opacity:.7}100%{transform:scale(1.35);opacity:0}}
.k-ui .k-track-when{display:flex;gap:28px;margin:0;flex:none}
.k-ui .k-track-when div{text-align:right}
.k-ui .k-track-when dt{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--k-muted);margin-bottom:2px}
.k-ui .k-track-when dd{margin:0;font-size:15px;font-weight:600;color:var(--k-navy);white-space:nowrap}
.k-ui .k-track-mapcard{overflow:hidden;display:flex;flex-direction:column}
.k-ui .k-track-maphead{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.k-ui .k-track-maphead h2{font-size:18px;font-weight:600;margin:0;color:var(--k-navy)}
.k-ui .k-live-state{display:inline-flex;align-items:center;gap:8px;height:28px;padding:0 12px;border-radius:999px;background:var(--k-subtle);border:1px solid var(--k-line);font-size:13px;font-weight:600;color:var(--k-ink-2)}
.k-ui .k-live-state i{width:8px;height:8px;border-radius:50%;background:var(--k-faint)}
.k-ui .k-live-state[data-state=live]{background:var(--k-green-tint);border-color:#BFE3CC;color:var(--k-green)}
.k-ui .k-live-state[data-state=live] i{background:var(--k-green-2);box-shadow:0 0 0 0 rgba(46,157,91,.6);animation:k-dot 1.6s ease-out infinite}
.k-ui .k-live-state[data-state=stale]{background:var(--k-gold-tint);border-color:#F2DFA3;color:#7A5200}
.k-ui .k-live-state[data-state=stale] i{background:var(--k-yellow)}
.k-ui .k-live-state[data-state=off]{background:var(--k-red-tint);border-color:#F3C3BB;color:var(--k-red-ink)}
.k-ui .k-live-state[data-state=off] i{background:var(--k-red)}
@keyframes k-dot{0%{box-shadow:0 0 0 0 rgba(46,157,91,.55)}100%{box-shadow:0 0 0 8px rgba(46,157,91,0)}}
.k-ui .k-track-map{position:relative;flex:1 1 auto;min-height:460px;background:var(--k-subtle);z-index:0}
.k-ui .k-track-map-empty{position:absolute;inset:0;z-index:500;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;text-align:center;color:var(--k-muted);background:rgba(248,250,252,.92)}
.k-ui .k-track-map-empty[hidden]{display:none}
.k-ui .k-track-map-empty i{font-size:28px;color:var(--k-blue)}
.k-ui .k-track-map-empty p{margin:0;max-width:340px;font-size:14.5px}
.k-ui .k-track-mapfoot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 20px;border-top:1px solid var(--k-line-2);font-size:14px;color:var(--k-ink-2)}
.k-ui .k-track-distance i{color:var(--k-blue);margin-right:4px}
.k-ui .k-track-mapbtns{display:inline-flex;gap:8px}
.k-ui .k-track-mapbtns [hidden]{display:none!important}
.k-ui .k-track-driver{display:flex;align-items:center;gap:12px;padding:4px 0 16px}
.k-ui .k-track-driver strong{display:block;color:var(--k-navy);font-weight:600}
.k-ui .k-track-driver small{display:block;color:var(--k-muted);font-size:13px}
.k-ui .k-track .k-card-title{margin-bottom:12px}
.k-ui .k-track .k-kv strong{max-width:62%;word-break:break-word}
.k-ui .k-track-link{display:block;padding:10px 12px;border-radius:8px;background:var(--k-subtle);border:1px solid var(--k-line-2);font-family:var(--k-mono);font-size:12px;color:var(--k-ink-2);word-break:break-all}
.k-ui .k-track [hidden]{display:none!important}
.k-pin-driver{background:none;border:0}
.k-pin-driver svg{position:relative;filter:drop-shadow(0 3px 6px rgba(0,38,62,.35))}
.k-pin-driver .k-pin-ring{position:absolute;inset:-8px;border-radius:50%;border:3px solid #FFB900;animation:k-ping 2s ease-out infinite}
.k-ui .leaflet-container{font-family:var(--k-font)}
/* Public tracking shell */
.k-public{min-height:100vh;display:flex;flex-direction:column}
.k-public .k-pub-top{background:var(--k-navy);border-bottom:4px solid var(--k-gold)}
.k-public .k-pub-inner{max-width:1240px;margin:0 auto;padding:0 24px}
.k-public .k-pub-top .k-pub-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;height:72px}
.k-public .k-pub-top .k-brand{padding:0}
.k-public .k-pub-tag{color:#C9D6E3;font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:6px}
.k-public .k-pub-main{flex:1 0 auto;width:100%;max-width:1240px;margin:0 auto;padding:28px 24px 40px}
.k-public .k-pub-foot{border-top:1px solid var(--k-line);background:var(--k-surface);color:var(--k-muted);font-size:12.5px;padding:18px 0}
@media (max-width:991px){
  .k-ui .k-track-status{grid-template-columns:auto minmax(0,1fr)}
  .k-ui .k-track-when{grid-column:1/-1;justify-content:flex-start}
  .k-ui .k-track-when:not(:has(div:not([hidden]))){display:none}
  .k-ui .k-track-when div{text-align:left}
}
@media (max-width:767px){
  .k-ui .k-track-hero .card-body{padding:18px}
  .k-ui .k-track-status{gap:14px;margin-bottom:18px}
  .k-ui .k-track-status h2{font-size:20px}
  .k-ui .k-pulse{width:46px;height:46px;font-size:20px}
  .k-ui .k-steps-6{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}
  .k-ui .k-track-steps .k-step{padding:30px 0 0;font-size:11px;text-align:center}
  .k-ui .k-track-steps .k-step:before{left:50%;margin-left:-11px;width:22px;height:22px}
  .k-ui .k-track-steps .k-step strong{font-weight:600;line-height:1.2}
  .k-ui .k-track-map{min-height:340px}
  .k-ui .k-track-mapfoot{padding:12px 16px}
  .k-public .k-pub-inner{padding:0 16px}
  .k-public .k-pub-top .k-pub-inner{height:64px}
  .k-public .k-pub-tag{font-size:12px}
  .k-public .k-pub-main{padding:20px 16px 32px}
}
.k-ui .k-track-mapcard.is-empty{align-self:start}
.k-ui .k-track-mapcard.is-empty .k-track-map{min-height:280px}

/* ---------- Kimbo AI: fill from documents ---------- */
.k-ui .k-ai-reader{border:1px solid #F2DFA3;background:linear-gradient(180deg,#FFFBEF 0,#FFFFFF 120px)}
.k-ui .k-ai-reader-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:16px}
.k-ui .k-ai-reader-head h2{font-size:18px;font-weight:600;margin:0 0 2px;color:var(--k-navy)}
.k-ui .k-ai-reader-head p{margin:0;color:var(--k-ink-2)}
.k-ui .k-ai-reader-icon{flex:none;width:40px;height:40px;border-radius:10px;background:var(--k-navy);color:var(--k-gold);display:inline-flex;align-items:center;justify-content:center;font-size:19px}
.k-ui .k-drop{display:flex;flex-direction:column;align-items:center;gap:4px;padding:22px 16px;border:2px dashed var(--k-input);border-radius:var(--k-radius);background:var(--k-surface);text-align:center;cursor:pointer;transition:border-color .15s,background .15s;margin:0}
.k-ui .k-drop:hover,.k-ui .k-drop.is-over{border-color:var(--k-blue);background:var(--k-blue-soft)}
.k-ui .k-drop:focus-within{outline:2px solid var(--k-gold);outline-offset:2px}
.k-ui .k-drop>i{font-size:26px;color:var(--k-blue)}
.k-ui .k-drop strong{color:var(--k-navy);font-weight:600}
.k-ui .k-drop u{color:var(--k-blue);text-underline-offset:2px}
.k-ui .k-drop small{color:var(--k-muted);font-size:13px}
.k-ui .k-ai-files{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:6px}
.k-ui .k-ai-files li{display:flex;align-items:center;gap:10px;padding:8px 8px 8px 12px;border:1px solid var(--k-line);border-radius:8px;background:var(--k-surface);font-size:14px}
.k-ui .k-ai-files li>i{color:var(--k-blue);font-size:17px}
.k-ui .k-ai-files li span{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--k-ink)}
.k-ui .k-ai-files li small{color:var(--k-muted)}
.k-ui .k-ai-files .k-iconbtn{width:30px;height:30px}
.k-ui .k-ai-reader-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px}
.k-ui .k-ai-reader-actions .form-check{display:flex;align-items:center;gap:8px;padding-left:0}
.k-ui .k-ai-reader-actions .form-check-input{float:none;margin:0}
.k-ui .k-ai-result{margin-top:16px;display:grid;gap:10px}
.k-ui .k-ai-result[hidden]{display:none}
.k-ui .k-ai-ok,.k-ui .k-ai-alert,.k-ui .k-ai-wait{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:10px;font-size:14px}
.k-ui .k-ai-ok{background:var(--k-green-tint);color:#14472C}.k-ui .k-ai-ok i{color:var(--k-green);font-size:18px}
.k-ui .k-ai-alert{background:#FFF6DD;border:1px solid #F2DFA3;color:#4A3500}.k-ui .k-ai-alert>i{color:#8A6100;font-size:18px}
.k-ui .k-ai-alert>div{flex:1 1 auto}.k-ui .k-ai-alert .btn{flex:none;align-self:center}
.k-ui .k-ai-wait{background:var(--k-blue-soft);color:var(--k-navy);align-items:center}
.k-ui .k-ai-line{margin:0;color:var(--k-ink-2);font-size:14px}.k-ui .k-ai-line i{color:var(--k-blue);margin-right:4px}
.k-ui .k-ai-docs{display:flex;flex-wrap:wrap;gap:6px}
.k-ui .k-ai-docs .k-chip{height:auto;min-height:26px;padding:4px 10px;font-weight:600;white-space:normal}
.k-ui .k-ai-done{font-size:13px;font-weight:600;color:var(--k-green);align-self:center;white-space:nowrap}
.k-ui .k-ai-filled{border-color:var(--k-gold)!important;background-color:#FFFBEF!important;box-shadow:0 0 0 3px rgba(255,185,0,.2)!important}
@media (max-width:767px){.k-ui .k-ai-reader-actions .btn{width:100%}.k-ui .k-ai-alert{flex-wrap:wrap}.k-ui .k-ai-alert .btn{width:100%}}

/* ---------- Shipment history timeline ---------- */
.k-ui .k-history .k-card-title{margin-bottom:14px}
.k-ui .k-timeline{list-style:none;margin:0;padding:0;position:relative}
.k-ui .k-timeline:before{content:'';position:absolute;left:15px;top:6px;bottom:6px;width:2px;background:var(--k-line-2)}
.k-ui .k-timeline-item{position:relative;display:flex;gap:14px;padding:0 0 16px}
.k-ui .k-timeline-item:last-child{padding-bottom:0}
.k-ui .k-timeline-icon{position:relative;z-index:1;flex:none;width:32px;height:32px;border-radius:50%;background:var(--k-surface);border:2px solid var(--k-line);color:var(--k-blue);display:inline-flex;align-items:center;justify-content:center;font-size:14px}
.k-ui .is-status .k-timeline-icon{border-color:var(--k-blue);background:var(--k-blue-tint)}
.k-ui .is-email .k-timeline-icon{border-color:#BFE3CC;background:var(--k-green-tint);color:var(--k-green)}
.k-ui .is-driver .k-timeline-icon{border-color:var(--k-navy);background:var(--k-navy);color:var(--k-gold)}
.k-ui .is-ai .k-timeline-icon,.k-ui .is-alert .k-timeline-icon{border-color:#F2DFA3;background:var(--k-gold-tint);color:#8A6100}
.k-ui .k-timeline-body{flex:1 1 auto;min-width:0;padding-top:4px}
.k-ui .k-timeline-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.k-ui .k-timeline-head strong{color:var(--k-navy);font-weight:600}
.k-ui .k-timeline-head time{color:var(--k-muted);font-size:13px;white-space:nowrap}
.k-ui .k-timeline-body p{margin:3px 0 0;color:var(--k-ink-2);font-size:13.5px;white-space:normal}
.k-ui .k-timeline-body small{color:var(--k-faint);font-size:12px}
.k-ui .k-audit-row{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--k-line-2)}
.k-ui .k-audit-row:first-of-type{border-top:0}
.k-ui .k-audit-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}
.k-ui .k-audit-main strong{color:var(--k-navy);font-weight:600}
.k-ui .k-audit-main a{font-size:13px}
.k-ui .k-audit-main small{color:var(--k-ink-2);font-size:13px}
.k-ui .k-audit-meta{flex:none;text-align:right;display:flex;flex-direction:column;font-size:12.5px;color:var(--k-muted)}
@media (max-width:640px){.k-ui .k-audit-row{flex-wrap:wrap}.k-ui .k-audit-meta{width:100%;flex-direction:row;gap:8px;text-align:left;padding-left:44px}}

/* ---------- Stuck shipments (dashboard) ---------- */
.k-ui .k-stuck{display:grid;border:1px solid var(--k-line-2);border-radius:10px;overflow:hidden;margin-top:10px}
.k-ui .k-stuck-row{display:grid;grid-template-columns:44px minmax(140px,200px) minmax(0,1fr) 16px;align-items:center;gap:12px;padding:10px 14px;border-top:1px solid var(--k-line-2);color:var(--k-ink)!important;text-decoration:none}
.k-ui .k-stuck-row:first-child{border-top:0}
.k-ui .k-stuck-row:hover{background:var(--k-blue-soft)}
.k-ui .k-stuck-days{display:inline-flex;align-items:center;justify-content:center;height:28px;border-radius:999px;background:var(--k-red-tint);color:var(--k-red-ink);font-weight:700;font-size:12.5px}
.k-ui .k-stuck-main strong{display:block;color:var(--k-navy);font-size:13.5px}
.k-ui .k-stuck-main small{display:block;color:var(--k-muted);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.k-ui .k-stuck-why{color:var(--k-ink-2);font-size:13.5px}
.k-ui .k-stuck-row>i{color:var(--k-faint)}
@media (max-width:767px){.k-ui .k-stuck-row{grid-template-columns:40px minmax(0,1fr) 14px}.k-ui .k-stuck-why{grid-column:2/3;font-size:12.5px;margin-top:-6px}.k-ui .k-stuck-row>i{grid-row:1;grid-column:3}}

/* ---------- Shipment page: documents received + bill of entry ---------- */
.k-ui .k-received{border:1px solid #BFE3CC;background:linear-gradient(180deg,#F1FAF4 0,#fff 90px)}
.k-ui .k-received-head{display:flex;gap:14px;align-items:flex-start}
.k-ui .k-received-icon{flex:none;width:40px;height:40px;border-radius:10px;background:var(--k-green-tint);color:var(--k-green);display:inline-flex;align-items:center;justify-content:center;font-size:19px}
.k-ui .k-received-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px;align-items:center}
.k-ui .k-received-actions form{margin:0}
.k-ui .k-received-missing{display:flex;gap:8px;flex:1 1 320px}
.k-ui .k-received-missing .form-control{min-width:0}
.k-ui .k-boe-head{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.k-ui .k-boe-head .flex-grow-1{min-width:220px}
.k-ui .k-boe-result{margin-top:16px;display:grid;gap:10px}
.k-ui .k-boe-result[hidden]{display:none}
.k-ui .k-boe-table{width:100%;border-collapse:collapse;font-size:14px}
.k-ui .k-boe-table th{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--k-muted);font-weight:700;text-align:left;padding:6px 8px;border-bottom:1px solid var(--k-line)}
.k-ui .k-boe-table td{padding:9px 8px;border-bottom:1px solid var(--k-line-2)}
.k-ui .k-boe-table .form-check{display:flex;gap:8px;align-items:center;padding-left:0}
.k-ui .k-boe-table .form-check-input{float:none;margin:0}
.k-ui .k-boe-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.k-ui .k-boe-actions .form-check{display:flex;gap:8px;align-items:center;padding-left:0}
.k-ui .k-boe-actions .form-check-input{float:none;margin:0}
@media (max-width:767px){.k-ui .k-boe-head label.btn{width:100%}.k-ui .k-received-actions .btn-gold{width:100%}.k-ui .k-received-missing{flex-wrap:wrap}.k-ui .k-received-missing .btn{width:100%}}
.k-ui .k-received-missing .btn{white-space:nowrap}

/* Finance (Zoho Billing) */
.k-ui .k-fin-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:20px}
.k-ui .k-fin-sync{display:flex;align-items:center;gap:10px;margin:0}
.k-ui .k-num{font-variant-numeric:tabular-nums;white-space:nowrap}
.k-ui .k-amt-late{color:var(--k-red-ink)!important}
.k-ui .k-amt-good{color:var(--k-green)!important}
.k-ui .k-fin-kpis .k-kpi-value{white-space:nowrap;font-size:clamp(22px,2.2vw,30px)}
.k-ui .k-fin-cur{font-size:.55em;font-weight:700;color:var(--k-muted);margin-right:6px;letter-spacing:.04em}
.k-ui .k-fin-aging{display:flex;gap:3px;height:14px;border-radius:7px;overflow:hidden;background:var(--k-line-2);margin:4px 0 16px}
.k-ui .k-fin-aging-seg{display:block;min-width:6px}
.k-ui .seg-current{background:var(--k-blue)}
.k-ui .seg-1-15{background:var(--k-gold)}
.k-ui .seg-16-30{background:#E07B24}
.k-ui .seg-31-45{background:var(--k-red)}
.k-ui .seg-45plus{background:var(--k-red-ink)}
.k-ui .k-fin-aging-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px 16px;margin:0}
.k-ui .k-fin-aging-legend div{display:flex;flex-direction:column;gap:2px}
.k-ui .k-fin-aging-legend dt{font-size:12px;font-weight:600;color:var(--k-muted);display:flex;align-items:center;gap:6px}
.k-ui .k-fin-aging-legend dt i{width:10px;height:10px;border-radius:3px;display:inline-block}
.k-ui .k-fin-aging-legend dd{margin:0;font-weight:700;color:var(--k-navy);font-variant-numeric:tabular-nums}
.k-ui .k-fin-list{list-style:none;margin:0;padding:0}
.k-ui .k-fin-list li{border-top:1px solid var(--k-line-2)}
.k-ui .k-fin-list li:first-child{border-top:0}
.k-ui .k-fin-list li>a,.k-ui .k-fin-list li>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 22px;color:inherit;text-decoration:none}
.k-ui .k-fin-list li>a:hover{background:var(--k-blue-soft)}
.k-ui .k-fin-list-main{display:flex;flex-direction:column;min-width:0;font-weight:600;color:var(--k-navy)}
.k-ui .k-fin-list-main small{font-weight:400;color:var(--k-muted);font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.k-ui .k-fin-amount{font-weight:700;color:var(--k-navy);font-variant-numeric:tabular-nums;white-space:nowrap}
.k-ui .k-fin-inv-head{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:flex-start}
.k-ui .k-fin-inv-customer{font-size:20px;font-weight:700;color:var(--k-navy);margin:10px 0 2px}
.k-ui .k-fin-inv-balance{font-size:26px;font-weight:800;color:var(--k-navy);font-variant-numeric:tabular-nums;line-height:1.2}
.k-ui .k-fin-panel>summary{list-style:none;cursor:pointer;padding:16px 20px;font-weight:700;color:var(--k-navy);display:flex;align-items:center;gap:8px}
.k-ui .k-fin-panel>summary::-webkit-details-marker{display:none}
.k-ui .k-fin-panel>summary::after{content:'\F282';font-family:bootstrap-icons;margin-left:auto;transition:transform .15s;color:var(--k-muted)}
.k-ui .k-fin-panel[open]>summary::after{transform:rotate(180deg)}
.k-ui .k-fin-panel>summary small{font-weight:400}
.k-ui .k-fin-lines td{vertical-align:top}
.k-ui .k-fin-lines .form-control{min-width:70px}
.k-ui .k-fin-lines td[data-amount]{padding-top:22px}
.k-ui .k-fin-lines td:last-child{padding-top:14px}
.k-ui .k-fin-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.k-ui .k-fin-summary>div{border:1px solid var(--k-line-2);background:var(--k-subtle);border-radius:var(--k-radius-sm);padding:10px 14px;display:flex;flex-direction:column;gap:2px}
.k-ui .k-fin-summary span{font-size:12px;color:var(--k-muted);font-weight:600}
.k-ui .k-fin-summary strong{font-size:17px;color:var(--k-navy);font-variant-numeric:tabular-nums}
.k-ui .k-fin-summary strong.big{color:var(--k-blue);font-size:20px}
.k-ui .k-fin-row-strong td{background:var(--k-subtle);font-weight:700}
.k-ui .k-fin-step{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--k-navy);color:#fff;font-size:12px;margin-right:6px;vertical-align:2px}
.k-ui .k-fin-steps{padding-left:20px;margin:6px 0 18px;color:var(--k-ink-2)}
.k-ui .k-fin-steps li{margin-bottom:8px}
.k-ui .k-fin-copy{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:6px}
.k-ui .k-fin-copy code{background:var(--k-blue-soft);border:1px solid var(--k-line);border-radius:6px;padding:6px 10px;color:var(--k-navy);word-break:break-all}
.k-ui .k-fin-dl{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;font-size:14px}
.k-ui .k-fin-dl dt{color:var(--k-muted);font-weight:600}
.k-ui .k-fin-dl dd{margin:0;color:var(--k-navy)}
.k-ui .k-money small{color:var(--k-muted);font-weight:600}
@media (max-width:767px){.k-ui .k-fin-list li>a,.k-ui .k-fin-list li>div{padding:12px 16px}.k-ui .k-fin-sync{width:100%;justify-content:space-between}.k-ui .k-fin-inv-head .text-end{text-align:left!important}}

/* Manifest import */
.k-ui .k-imp-drop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:34px 16px;border:2px dashed var(--k-input);border-radius:var(--k-radius);background:var(--k-subtle);text-align:center;cursor:pointer;color:var(--k-ink-2)}
.k-ui .k-imp-drop:hover,.k-ui .k-imp-drop.is-over,.k-ui .k-imp-drop:focus-within{border-color:var(--k-blue);background:var(--k-blue-soft)}
.k-ui .k-imp-drop i{font-size:34px;color:var(--k-blue)}
.k-ui .k-imp-drop strong{color:var(--k-navy);font-size:16px;word-break:break-all}
.k-ui .k-imp-drop span{font-size:13px;color:var(--k-muted)}
.k-ui .k-imp-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.k-ui .k-imp-fields{list-style:none;padding:0;margin:0;display:grid;gap:6px}
.k-ui .k-imp-fields li{display:flex;justify-content:space-between;gap:10px;font-size:13px;border-bottom:1px solid var(--k-line-2);padding-bottom:6px}
.k-ui .k-imp-fields li span{color:var(--k-muted);text-align:right}
.k-ui .k-imp-map{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px 18px}
.k-ui .k-imp-map-row{display:grid;grid-template-columns:150px 1fr;gap:4px 10px;align-items:center;padding:8px 10px;border:1px solid var(--k-line-2);border-radius:var(--k-radius-sm)}
.k-ui .k-imp-map-row.is-set{border-color:#BFD3F2;background:var(--k-blue-soft)}
.k-ui .k-imp-map-row label{font-size:13px;font-weight:600;color:var(--k-navy);margin:0}
.k-ui .k-imp-map-row small{grid-column:2;font-size:11.5px;color:var(--k-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-height:14px}
.k-ui .k-imp-table{max-height:640px;overflow:auto}
.k-ui .k-imp-table thead th{position:sticky;top:0;background:#fff;z-index:1}
.k-ui .k-imp-bad td{background:#FFF8F6}
.k-ui .k-imp-problem{font-size:12.5px;color:var(--k-red-ink);font-weight:600;white-space:normal}
.k-ui .k-imp-table td:last-child{white-space:normal;min-width:220px}
@media (max-width:767px){.k-ui .k-imp-map-row{grid-template-columns:1fr}.k-ui .k-imp-map-row small{grid-column:1}}

/* Dispatch board */
.k-ui .k-board-date{display:flex;gap:6px;align-items:center}
.k-ui .k-board-date input{width:auto}
.k-ui .k-board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(272px,300px);gap:14px;overflow-x:auto;padding-bottom:12px;align-items:start;scroll-snap-type:x proximity}
.k-ui .k-board-col{background:#EEF2F7;border:1px solid var(--k-line-2);border-radius:var(--k-radius);display:flex;flex-direction:column;max-height:calc(100vh - 220px);min-height:240px;scroll-snap-align:start}
.k-ui .k-board-col-todo{background:#FFF8E6;border-color:#F2DFA3}
.k-ui .k-board-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;padding:12px 14px 8px}
.k-ui .k-board-head h2{font-size:15px;font-weight:700;color:var(--k-navy);margin:0}
.k-ui .k-board-head p{font-size:12px;color:var(--k-muted);margin:2px 0 0}
.k-ui .k-board-driver{display:flex;gap:10px;align-items:center;min-width:0}
.k-ui .k-board-avatar{width:34px;height:34px;border-radius:50%;background:#C9D4E2;color:var(--k-navy);font-weight:700;font-size:12px;display:inline-flex;align-items:center;justify-content:center;flex:none}
.k-ui .k-board-avatar.is-online{background:var(--k-navy);color:var(--k-gold)}
.k-ui .k-board-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#A9B6C6;margin-right:2px}
.k-ui .k-board-dot.on{background:var(--k-green-2)}
.k-ui .k-board-meta{font-size:12px;color:var(--k-ink-2);padding:0 14px 8px}
.k-ui .k-board-list{flex:1;overflow-y:auto;padding:4px 10px 10px;display:flex;flex-direction:column;gap:8px;min-height:80px}
.k-ui .k-board-card{background:#fff;border:1px solid var(--k-line);border-radius:10px;padding:10px 12px;box-shadow:0 1px 2px rgba(0,38,62,.06);cursor:grab;touch-action:manipulation}
.k-ui .k-board-card.is-locked{cursor:default;border-left:3px solid var(--k-blue)}
.k-ui .k-board-card.is-ghost{opacity:.35}
.k-ui .k-board-card.is-chosen{box-shadow:0 6px 18px rgba(0,38,62,.18)}
.k-ui .k-board-card-top{display:flex;justify-content:space-between;align-items:center;gap:6px}
.k-ui .k-board-stop{font-size:11px;font-weight:700;color:var(--k-navy);background:var(--k-gold-tint);border-radius:999px;padding:2px 8px;white-space:nowrap}
.k-ui .k-board-client{font-weight:600;color:var(--k-navy);font-size:14px;margin-top:4px}
.k-ui .k-board-place{font-size:12.5px;color:var(--k-ink-2);margin-top:2px}
.k-ui .k-board-tags{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:8px}
.k-ui .k-board-tags .k-chip{font-size:11px}
.k-ui .k-board-size{font-size:12px;color:var(--k-muted)}
.k-ui .k-board-move{display:flex;align-items:center;gap:6px;margin:8px 0 0;font-size:11.5px;color:var(--k-muted)}
.k-ui .k-board-move select{font-size:12px;padding-top:2px;padding-bottom:2px;height:auto}
.k-ui .k-board-foot{padding:8px 12px 12px;display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--k-line-2)}
.k-ui .k-board-foot:empty{display:none}
.k-ui .k-board-why{font-size:11.5px;color:var(--k-muted);margin:0}
.k-ui .k-board-empty{font-size:13px;color:var(--k-muted);padding:0 14px 14px;margin:0}
.k-ui .k-board-toast{position:fixed;left:50%;bottom:90px;transform:translate(-50%,20px);background:var(--k-navy);color:#fff;padding:10px 16px;border-radius:999px;font-size:14px;font-weight:600;opacity:0;pointer-events:none;transition:.2s;z-index:1060}
.k-ui .k-board-toast.show{opacity:1;transform:translate(-50%,0)}
.k-ui .k-board-toast.bad{background:var(--k-red-ink)}
@media (hover:hover) and (pointer:fine){.k-ui .k-board-move{display:none}.k-ui .k-board-card:focus-within .k-board-move{display:flex}}
@media (max-width:767px){.k-ui .k-board{grid-auto-columns:86%}.k-ui .k-board-col{max-height:none}.k-ui .k-board-date{flex-wrap:wrap}}

/* Performance report */
.k-ui .k-kpi-unit{font-size:.45em;font-weight:600;color:var(--k-muted);margin-left:2px}
.k-ui .k-perf-bars{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:10px}
.k-ui .k-perf-bars li{display:grid;grid-template-columns:84px 1fr 40px;gap:10px;align-items:center;font-size:13.5px}
.k-ui .k-perf-bar-label{color:var(--k-ink-2);font-weight:600}
.k-ui .k-perf-bar{display:block;height:14px;background:var(--k-line-2);border-radius:7px;overflow:hidden}
.k-ui .k-perf-bar i{display:block;height:100%;background:var(--k-blue);border-radius:7px;min-width:2px}
.k-ui .k-perf-bar-n{text-align:right;font-weight:700;color:var(--k-navy);font-variant-numeric:tabular-nums}
.k-ui .k-perf-scroll{max-height:420px;overflow:auto}

/* Client choices (delivery day, rating) */
.k-ui .k-choice{max-width:560px;margin:0 auto;padding:8px 0 24px}
.k-ui .k-choice-title{font-size:28px;font-weight:800;color:var(--k-navy);margin:4px 0 6px}
.k-ui .k-choice-lead{color:var(--k-ink-2);margin-bottom:18px}
.k-ui .k-choice-legend{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--k-ink-2);margin-bottom:8px}
.k-ui .k-choice-current{background:var(--k-green-tint);color:var(--k-green);border-radius:var(--k-radius-sm);padding:10px 12px;font-size:14px}
.k-ui .k-choice-days{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.k-ui .k-choice-day input,.k-ui .k-choice-window input{position:absolute;opacity:0;pointer-events:none}
.k-ui .k-choice-day span{display:flex;flex-direction:column;align-items:center;padding:10px 6px;border:1.5px solid var(--k-line);border-radius:10px;cursor:pointer;background:#fff;line-height:1.2}
.k-ui .k-choice-day small{font-size:12px;color:var(--k-muted)}
.k-ui .k-choice-day strong{font-size:22px;color:var(--k-navy)}
.k-ui .k-choice-day input:checked+span,.k-ui .k-choice-window input:checked+span{border-color:var(--k-blue);background:var(--k-blue-tint);box-shadow:0 0 0 2px rgba(0,74,173,.18)}
.k-ui .k-choice-day input:focus-visible+span,.k-ui .k-choice-window input:focus-visible+span{outline:3px solid var(--k-gold);outline-offset:2px}
.k-ui .k-choice-windows{display:grid;gap:8px}
.k-ui .k-choice-window span{display:block;padding:12px 14px;border:1.5px solid var(--k-line);border-radius:10px;cursor:pointer;font-weight:600;color:var(--k-navy);background:#fff}
.k-ui .k-stars{display:flex;flex-direction:row-reverse;justify-content:center;gap:6px}
.k-ui .k-stars input{position:absolute;opacity:0}
.k-ui .k-stars label,.k-ui .k-stars.is-static span{font-size:44px;line-height:1;color:#D5DFEB;cursor:pointer;transition:transform .1s}
.k-ui .k-stars input:checked~label,.k-ui .k-stars label:hover,.k-ui .k-stars label:hover~label,.k-ui .k-stars.is-static span.on{color:var(--k-gold)}
.k-ui .k-stars input:focus-visible+label{outline:3px solid var(--k-blue);outline-offset:2px;border-radius:6px}
.k-ui .k-stars.is-static{flex-direction:row}
.k-ui .k-stars-sm label{font-size:30px}
.k-ui .k-board-want{font-size:12px;font-weight:600;color:var(--k-ink-2);margin-top:4px}
.k-ui .k-board-want.is-today{color:var(--k-green)}

/* Pre-alerts */
.k-ui .k-pa-list{list-style:none;margin:0;padding:0}
.k-ui .k-pa{padding:16px 22px;border-top:1px solid var(--k-line-2)}
.k-ui .k-pa:first-child{border-top:0}
.k-ui .k-pa-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.k-ui .k-pa-ref{font-size:16px;font-weight:700;color:var(--k-navy)}
.k-ui .k-pa-meta{font-size:13.5px;color:var(--k-ink-2);margin-top:2px}
.k-ui .k-pa-line{margin:8px 0 0;font-size:14px;color:var(--k-ink)}
.k-ui .k-pa-note{color:var(--k-ink-2);font-style:italic}
.k-ui .k-pa-docs{margin:8px 0 0;font-size:13.5px;display:flex;flex-wrap:wrap;gap:4px 6px;align-items:center}
.k-ui .k-pa-docs i{color:var(--k-muted)}
.k-ui .k-pa-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap}
.k-ui .k-pa-actions{display:flex;gap:8px;align-items:flex-start;flex-wrap:wrap}
.k-ui .k-pa-close{position:relative}
.k-ui .k-pa-close summary{list-style:none}
.k-ui .k-pa-close summary::-webkit-details-marker{display:none}
.k-ui .k-pa-close form{position:absolute;right:0;top:calc(100% + 6px);z-index:5;width:260px;background:#fff;border:1px solid var(--k-line);border-radius:10px;padding:12px;box-shadow:0 10px 30px rgba(10,31,68,.12)}
.k-ui .k-prealert-banner{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:10px;background:var(--k-blue-tint);border:1px solid #C9DAF3;color:var(--k-navy);font-size:14px}
.k-ui .k-prealert-banner>i{font-size:20px;color:var(--k-blue)}
.k-ui .k-prealert-banner p{color:var(--k-ink-2)}
@media (max-width:767px){.k-ui .k-pa{padding:14px 16px}.k-ui .k-pa-actions{width:100%}.k-ui .k-pa-actions>form,.k-ui .k-pa-actions>a{flex:1 1 auto}.k-ui .k-pa-actions .btn{width:100%}.k-ui .k-pa-close form{left:0;right:auto}}

/* Driver tools: vehicle checks, expenses */
.k-ui .k-drivers-nav .k-count-alert{background:var(--k-red-ink,#B42318);color:#fff}
.k-ui .k-vc-names{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:14px}
.k-ui .k-vc-names .k-chip{font-size:11px;margin-left:4px}
.k-ui .k-vc-problems{list-style:none;margin:10px 0 0;padding:10px 12px;background:#FFF4F2;border:1px solid #F6D3CC;border-radius:8px;display:grid;gap:4px;font-size:14px}
.k-ui .k-vc-problems i{color:#B42318}
.k-ui .k-pa-actions input.form-control-sm{min-width:200px}
@media (max-width:767px){.k-ui .k-drivers-nav{display:flex;flex-wrap:nowrap;overflow-x:auto;max-width:100%}.k-ui .k-pa-actions input.form-control-sm{min-width:0;flex:1 1 100%}}
.k-ui form.k-pa-actions{flex-wrap:nowrap;align-items:center}
@media (max-width:767px){.k-ui form.k-pa-actions{flex-wrap:wrap}}

/* System health */
.k-ui .k-health-list{list-style:none;margin:0;padding:0}
.k-ui .k-health-list li{display:flex;gap:12px;align-items:flex-start;padding:12px 22px;border-top:1px solid var(--k-line-2)}
.k-ui .k-health-list li:first-child{border-top:0}
.k-ui .k-health-list i{font-size:18px;margin-top:1px}
.k-ui .k-health-list strong{display:block;color:var(--k-navy);font-size:14.5px}
.k-ui .k-health-list span{font-size:13.5px;color:var(--k-ink-2)}
.k-ui .k-health-list .is-ok i{color:var(--k-green)}
.k-ui .k-health-list .is-warn i{color:#B7791F}
.k-ui .k-health-list .is-fail i{color:var(--k-red-ink,#B42318)}
.k-ui .k-health-list .is-fail{background:#FFF7F6}
/* k-hide-old-dropdown-arrow: main.min.css draws a black pointer above every dropdown; the white menus don't use it */
.k-ui .dropdown-menu::after,.k-ui .dropdown-menu::before{display:none!important;content:none!important}
/* client page */
.k-ui .k-client-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.k-ui .k-client-title h1{margin:0}
.k-ui .k-client-logo{width:52px;height:52px;border-radius:14px;font-size:18px}
.k-ui .k-client-logo img{object-fit:contain;background:#fff}
.k-ui .k-person{display:flex;align-items:center;gap:10px;min-width:0}
.k-ui .k-staff-actions{display:inline-flex;gap:6px;justify-content:flex-end;align-items:center}
.k-ui .k-staff-actions form{display:inline-flex;margin:0}
.k-ui .k-filetag-none{background:#EEF2F6;color:var(--k-muted)}
.k-ui .k-removed summary{cursor:pointer;font-weight:700;color:var(--k-ink-2);font-size:14px}
.k-ui .k-removed .k-docs li:first-child{border-top:0}
@media (max-width:767.98px){.k-ui .k-client-title h1{font-size:22px}}

/* Finance: twelve sections scroll sideways instead of wrapping */
.k-ui .k-fin-bar .k-seg-scroll{display:flex;flex-wrap:nowrap;overflow-x:auto;min-width:0;flex:1 1 auto;max-width:100%;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.k-ui .k-fin-bar .k-seg-scroll a{flex:0 0 auto}
.k-ui .k-fin-bar .k-seg-scroll::-webkit-scrollbar{height:4px}
.k-ui .k-fin-bar .k-seg-scroll::-webkit-scrollbar-thumb{background:#C9D6E3;border-radius:2px}
@media (max-width:767.98px){.k-ui .k-seg.k-seg-scroll{width:100%}.k-ui .k-seg.k-seg-scroll a{flex:0 0 auto}}
/* Finance: a client's answer to a quote */
.k-ui .k-fin-answer{border:1px solid var(--k-line-2);border-left:4px solid var(--k-gold,#FFB900);border-radius:var(--k-radius-sm);background:var(--k-subtle);padding:16px 18px}
.k-ui .k-fin-answer .k-fin-answer-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
/* Finance: activity timeline */
.k-ui .k-fin-feed{list-style:none;margin:0;padding:0}
.k-ui .k-fin-feed li{display:flex;gap:14px;padding:14px 22px;border-top:1px solid var(--k-line-2);align-items:flex-start}
.k-ui .k-fin-feed li:first-child{border-top:0}
.k-ui .k-fin-feed-icon{flex:0 0 34px;height:34px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;background:var(--k-blue-soft);color:var(--k-blue,#004AAD);font-size:16px}
.k-ui .k-fin-feed-icon.warn{background:#FDECEA;color:#B42318}
.k-ui .k-fin-feed-body{min-width:0;flex:1}
.k-ui .k-fin-feed-body strong{display:block;color:var(--k-navy)}
.k-ui .k-fin-feed-body span{display:block;color:var(--k-ink-2);font-size:14px;overflow-wrap:anywhere}
.k-ui .k-fin-feed-time{flex:0 0 auto;color:var(--k-muted);font-size:12.5px;white-space:nowrap}
/* Finance: one client's things to invoice */
.k-ui .k-fin-group+.k-fin-group{margin-top:16px}
.k-ui .k-fin-check td:first-child,.k-ui .k-fin-check th:first-child{width:36px}
.k-ui .k-fin-kv{display:grid;grid-template-columns:minmax(120px,max-content) 1fr;gap:6px 16px;margin:0}
.k-ui .k-fin-kv dt{color:var(--k-muted);font-weight:600;font-size:13px}
.k-ui .k-fin-kv dd{margin:0;color:var(--k-navy);overflow-wrap:anywhere}
.k-ui .k-fin-tagrow{display:flex;flex-wrap:wrap;gap:6px}
.k-ui .k-fin-tagrow .k-chip{font-weight:600}

/* kimbo-fix: readable popovers (white card, navy text) - 15 Oct 2026 */
.k-ui .popover{--bs-popover-bg:#FFFFFF;--bs-popover-border-color:var(--k-line,#D5DFEB);--bs-popover-header-bg:#F3F6FA;--bs-popover-header-color:var(--k-navy,#00263E);--bs-popover-body-color:var(--k-navy,#00263E);--bs-popover-font-size:13px;--bs-popover-header-font-size:13px;box-shadow:0 10px 28px rgba(0,38,62,.16);border-radius:10px}
.k-ui .popover-header{font-weight:700;border-bottom-color:var(--k-line,#D5DFEB)}
.k-ui .popover-body{line-height:1.45}
