:root{
  --brand-primary:#1a3d6e; --brand-primary-2:#255494; --brand-accent:#00a3a3;
  --brand-sidebar:#0f2340; --brand-sidebar-hover:#1b3a63;
  --brand-danger:#c8302a; --brand-success:#2b8a3e; --brand-warning:#c47f17;
  --body-bg:#f4f6fa; --card-radius:10px; --topbar-h:56px; --sidebar-w:250px;
}
*{scroll-behavior:smooth}
body{font-family:'Segoe UI',system-ui,-apple-system,sans-serif;background:var(--body-bg);color:#1a2536;font-size:.9rem;padding-top:var(--topbar-h)}
.text-muted{color:#7588a1!important}
.topbar{background:var(--brand-primary);height:var(--topbar-h);z-index:1030;box-shadow:0 2px 4px rgba(0,0,0,.08)}
.topbar .navbar-brand{font-size:.95rem;line-height:1}
.brand-mark{width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,var(--brand-accent),#ffffff33);display:inline-flex;align-items:center;justify-content:center;font-size:1rem;color:#fff}
.user-avatar{width:30px;height:30px;border-radius:50%;background:var(--brand-accent);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:.8rem}
.global-search input{border-radius:20px;padding-left:32px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:#fff}
.global-search input::placeholder{color:rgba(255,255,255,.7)}
.global-search input:focus{background:rgba(255,255,255,.2);border-color:var(--brand-accent);color:#fff;box-shadow:none}
.global-search i{position:absolute;left:12px;top:6px;color:rgba(255,255,255,.8);font-size:.8rem}
.search-results{position:absolute;top:38px;left:0;right:0;background:#fff;border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.15);max-height:420px;overflow:auto;z-index:1050;color:#1a2536}
.search-results .sr-group{padding:.5rem 1rem .25rem;font-size:.7rem;text-transform:uppercase;color:#7588a1;font-weight:600}
.search-results a.sr-item{display:flex;align-items:center;gap:.6rem;padding:.5rem 1rem;text-decoration:none;color:inherit;border-bottom:1px solid #eef2f7}
.search-results a.sr-item:hover{background:#f4f8ff}
.search-results a.sr-item i{color:var(--brand-primary);width:20px;text-align:center}
.app-sidebar{position:fixed;top:var(--topbar-h);bottom:0;left:0;width:var(--sidebar-w);background:var(--brand-sidebar);color:#c7d5ea;overflow-y:auto;z-index:1020;transition:transform .2s ease}
.app-sidebar::-webkit-scrollbar{width:5px}
.app-sidebar::-webkit-scrollbar-thumb{background:#2a4d80;border-radius:3px}
.sidebar-nav{padding:.5rem 0 4rem}
.nav-section{color:#6c85aa;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;padding:1rem 1.2rem .4rem;font-weight:700}
.app-sidebar .nav-link{color:#c7d5ea;padding:.5rem 1.2rem;display:flex;align-items:center;gap:.7rem;font-size:.85rem;border-left:3px solid transparent;border-radius:0}
.app-sidebar .nav-link i{font-size:1rem;width:18px;text-align:center;color:#8fa9cd}
.app-sidebar .nav-link:hover{background:var(--brand-sidebar-hover);color:#fff}
.app-sidebar .nav-link.active{background:#122f52;color:#fff;border-left-color:var(--brand-accent)}
.app-sidebar .nav-link.active i{color:var(--brand-accent)}
.sidebar-footer{position:fixed;bottom:0;left:0;width:var(--sidebar-w);padding:.6rem 1.2rem;color:#8fa9cd;background:var(--brand-sidebar);border-top:1px solid #1b3a63}
.app-main{margin-left:var(--sidebar-w);min-height:calc(100vh - var(--topbar-h));transition:margin .2s ease}
@media (max-width:991.98px){
  .app-sidebar{transform:translateX(-100%)}
  .app-sidebar.show{transform:translateX(0)}
  .app-main{margin-left:0}
}
.card{border:none;border-radius:var(--card-radius);box-shadow:0 1px 3px rgba(16,36,72,.06),0 1px 2px rgba(16,36,72,.04)}
.card-header{background:#fff;border-bottom:1px solid #eef2f7;font-weight:600;padding:.75rem 1rem;border-radius:var(--card-radius) var(--card-radius) 0 0}
.kpi-card{position:relative;overflow:hidden}
.kpi-card .kpi-icon{position:absolute;right:.75rem;top:.75rem;width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:#fff}
.kpi-card h3{font-weight:700;margin:0}
.kpi-card .kpi-label{font-size:.72rem;color:#7588a1;text-transform:uppercase;letter-spacing:.04em;font-weight:600}
.kpi-navy{background:linear-gradient(135deg,#1a3d6e,#2b5c9c)}
.kpi-teal{background:linear-gradient(135deg,#007a7a,#00b3b3)}
.kpi-green{background:linear-gradient(135deg,#1e6b31,#37a34d)}
.kpi-amber{background:linear-gradient(135deg,#a06400,#e0a02a)}
.kpi-red{background:linear-gradient(135deg,#8f1f1a,#d3453c)}
.kpi-slate{background:linear-gradient(135deg,#43536b,#6b7c95)}
.table>:not(caption)>*>*{padding:.55rem .75rem;font-size:.85rem}
.table thead th{background:#eef2f7;color:#334155;font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid #d9e1ec}
.table tbody tr:hover{background:#f7faff}
.badge-status{font-size:.68rem;letter-spacing:.03em;font-weight:600;padding:.3em .55em;border-radius:6px;text-transform:uppercase}
.badge-UNUSED{background:#e2e8f0;color:#475569}
.badge-ISSUED{background:#dbeafe;color:#1e40af}
.badge-CLEARED{background:#dcfce7;color:#166534}
.badge-CANCELLED{background:#e5e7eb;color:#374151}
.badge-STOPPED{background:#fee2e2;color:#991b1b}
.badge-BOUNCED{background:#fef3c7;color:#92400e}
.badge-EXPIRED{background:#f1f5f9;color:#64748b}
.badge-LOST{background:#fee2e2;color:#7f1d1d}
.login-bg{background:linear-gradient(135deg,#0f2340 0%,#1a3d6e 60%,#255494 100%)}
.login-logo{font-size:2.4rem;color:var(--brand-primary);width:64px;height:64px;border-radius:16px;background:linear-gradient(135deg,#e8f4ff,#cbe6ff);display:inline-flex;align-items:center;justify-content:center}
.btn-primary{background:var(--brand-primary);border-color:var(--brand-primary)}
.btn-primary:hover{background:var(--brand-primary-2);border-color:var(--brand-primary-2)}
.btn-outline-primary{color:var(--brand-primary);border-color:var(--brand-primary)}
.btn-outline-primary:hover{background:var(--brand-primary);border-color:var(--brand-primary)}
.page-title{font-size:1.15rem;font-weight:700;color:#0f2340;margin:0}
.breadcrumb{font-size:.78rem;margin:0}
.app-footer{color:#7588a1;background:#fff;border-top:1px solid #eef2f7}
.filter-bar{background:#fff;border-radius:var(--card-radius);padding:.75rem 1rem;box-shadow:0 1px 3px rgba(16,36,72,.06);margin-bottom:1rem}
.autocomplete-list{position:absolute;top:100%;left:0;right:0;background:#fff;border-radius:0 0 6px 6px;box-shadow:0 6px 18px rgba(0,0,0,.12);max-height:230px;overflow:auto;z-index:1000}
.autocomplete-list .ac-item{padding:.45rem .75rem;cursor:pointer;font-size:.85rem;border-bottom:1px solid #f1f5f9}
.autocomplete-list .ac-item:hover{background:#f4f8ff}
.timeline{position:relative;padding-left:28px}
.timeline::before{content:'';position:absolute;left:9px;top:6px;bottom:6px;width:2px;background:#e2e8f0}
.timeline .tl-item{position:relative;padding-bottom:1rem}
.timeline .tl-item::before{content:'';position:absolute;left:-24px;top:4px;width:12px;height:12px;border-radius:50%;background:var(--brand-primary);border:2px solid #fff;box-shadow:0 0 0 2px #dbeafe}
.timeline .tl-time{font-size:.72rem;color:#7588a1}