:root{ --cl-primary:#3b82f6; --cl-primary-600:#2563eb; --cl-primary-700:#1d4ed8; --cl-accent:#10b981; --cl-bg:#f8fafc; --cl-card:#ffffff; --cl-muted:#6b7280; --cl-border:#e5e7eb; --cl-danger:#ef4444; --cl-warning:#f59e0b; --cl-success:#22c55e;}
body{background:var(--cl-bg);}
.navbar{box-shadow:0 4px 16px rgba(0,0,0,.06);background:linear-gradient(180deg,#fff 0%,#fdfdfd 100%)!important}
.navbar-brand{font-weight:800;letter-spacing:.3px}
.navbar .nav-link{font-weight:500;color:#334155}
.navbar .nav-link:hover,.navbar .nav-link:focus{color:var(--cl-primary)}
.card.card-soft{border:0;border-radius:14px;background:var(--cl-card);box-shadow:0 10px 24px rgba(2,6,23,.06)}
.card .card-header{border-bottom:1px solid var(--cl-border);background:transparent;font-weight:600}
.kpi .label{color:var(--cl-muted);font-size:.9rem}.kpi .value{font-size:2rem;font-weight:700}
.btn-primary{--bs-btn-bg:var(--cl-primary);--bs-btn-border-color:var(--cl-primary);--bs-btn-hover-bg:var(--cl-primary-600);--bs-btn-hover-border-color:var(--cl-primary-600);--bs-btn-active-bg:var(--cl-primary-700);--bs-btn-active-border-color:var(--cl-primary-700);box-shadow:0 8px 20px rgba(59,130,246,.25)}
.btn-outline-primary{--bs-btn-color:var(--cl-primary);--bs-btn-border-color:var(--cl-primary);--bs-btn-hover-bg:var(--cl-primary);--bs-btn-hover-border-color:var(--cl-primary)}
.btn-success{background-image:linear-gradient(180deg,var(--cl-accent),#0ea37a);border:none;box-shadow:0 8px 18px rgba(16,185,129,.25)}
.btn,.form-control,.form-select,.badge{border-radius:12px}
.form-label{font-weight:600;color:#0f172a}
.form-control,.form-select{border:1px solid var(--cl-border);transition:all .15s ease}
.form-control:focus,.form-select:focus{border-color:var(--cl-primary);box-shadow:0 0 0 .2rem rgba(59,130,246,.15)}
.input-group-text{border-radius:12px}
.table{--bs-table-bg:transparent}
.table thead th{text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;color:var(--cl-muted);border-bottom:1px solid var(--cl-border)}
.table tbody tr{transition:background .12s ease}
.table tbody tr:hover{background:#f3f7ff}
.badge.text-bg-light{background:#eef2ff!important;color:#3730a3!important;border:1px solid #e0e7ff}
.alert{border:0;border-radius:14px;box-shadow:0 10px 20px rgba(2,6,23,.06)}
.alert-success{background:#ecfdf5;color:#065f46}.alert-danger{background:#fef2f2;color:#991b1b}
.typeahead-wrap{position:relative}
.typeahead-list{position:absolute;left:0;right:0;top:100%;z-index:1000;background:#fff;border:1px solid var(--cl-border);border-top:none;border-radius:0 0 12px 12px;box-shadow:0 12px 24px rgba(2,6,23,.08);max-height:320px;overflow:auto}
.typeahead-item{padding:.6rem .85rem;cursor:pointer;border-top:1px solid #f3f4f6}
.typeahead-item .small{color:var(--cl-muted)}
.typeahead-item:hover,.typeahead-item.active{background:#eef6ff}
.container-main{max-width:1180px}.shadow-soft{box-shadow:0 10px 24px rgba(2,6,23,.06)}.text-muted-500{color:var(--cl-muted)!important}
canvas{background:#fff;border-radius:12px;padding:12px}
.footer{color:var(--cl-muted);font-size:.9rem}.footer a{color:var(--cl-primary);text-decoration:none}.footer a:hover{text-decoration:underline}


.navbar-nav .nav-link { font-size: 15px; display: inline-flex; align-items: center; gap: 4px; line-height: 1.2; }
.navbar-nav .nav-link i { font-size: 13.5px; line-height: 1; position: relative; top: -0.5px; }
.navbar .btn-sm, .navbar .dropdown-item { font-size: 12px; }
.navbar .dropdown-item i { font-size: 13.5px; position: relative; top: -0.5px; }

/* Tighten dropdown */
.dropdown-menu { min-width: 200px; }
.dropdown-header { font-size: 11px; color: #6c757d; }

