:root{
  --au-primary:#0d6efd;
  --au-primary-dark:#0a58ca;
  --au-primary-light:#e9f2ff;
  --au-accent:#ffb020;
  --au-text:#0a2540;
  --au-muted:#5a6b85;
  --au-bg:#f4f7fb;
  --au-card:#ffffff;
  --au-border:#dbe4f0;
}
[data-bs-theme="dark"]{
  --au-primary:#4d9dff;
  --au-primary-dark:#0d6efd;
  --au-primary-light:#132b4c;
  --au-text:#e6eefc;
  --au-muted:#9fb2cf;
  --au-bg:#0b1524;
  --au-card:#132133;
  --au-border:#22304a;
}
html,body{background:var(--au-bg);color:var(--au-text);}
body.app-body{font-family:'Segoe UI',Roboto,'Helvetica Neue',sans-serif;}
.app-navbar{background:linear-gradient(90deg,var(--au-primary-dark),var(--au-primary));box-shadow:0 2px 10px rgba(13,110,253,.18);}
.app-navbar .navbar-brand,.app-navbar .nav-link{color:#fff !important;}
.app-navbar .nav-link:hover{color:#ffe08a !important;}
.brand-title{font-weight:700;letter-spacing:.3px;}
.app-footer{color:var(--au-muted);border-top:1px solid var(--au-border);margin-top:24px;}
.card{background:var(--au-card);border:1px solid var(--au-border);border-radius:10px;}
.stat-card{padding:18px;border-left:4px solid var(--au-primary);}
.stat-card .stat-title{color:var(--au-muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;}
.stat-card .stat-value{font-size:1.9rem;font-weight:700;color:var(--au-text);}
.stat-card .stat-icon{font-size:2rem;color:var(--au-primary);opacity:.7;}

/* Login */
.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#0d6efd 0%,#0a58ca 50%,#0a2540 100%);}
.auth-card{width:100%;max-width:440px;background:#fff;border-radius:14px;padding:34px;box-shadow:0 20px 60px rgba(0,0,0,.25);}
.auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:6px;}
.auth-brand img{width:44px;height:44px;}
.auth-title{font-weight:700;color:#0a2540;margin:0;}
.auth-sub{color:#5a6b85;margin-bottom:22px;font-size:.9rem;}

/* Form */
.form-section-title{background:var(--au-primary-light);color:var(--au-primary-dark);
  padding:8px 14px;border-radius:6px;font-weight:600;margin-bottom:14px;
  display:flex;align-items:center;gap:8px;border-left:4px solid var(--au-primary);}
.material-table{font-size:.9rem;}
.material-table thead{background:var(--au-primary);color:#fff;}
.material-table thead th{padding:8px;text-align:center;}
.material-table td{padding:4px 6px;vertical-align:middle;border-color:var(--au-border) !important;}
.material-table input{border:1px solid var(--au-border);background:transparent;color:var(--au-text);
  width:100%;padding:4px 6px;border-radius:4px;font-size:.9rem;}
.material-table input:focus{outline:2px solid var(--au-primary);border-color:transparent;}
.sticky-actions{position:sticky;bottom:0;background:var(--au-card);padding:12px;border-top:1px solid var(--au-border);
  display:flex;gap:8px;flex-wrap:wrap;z-index:10;}

/* Dispatch form container */
.dispatch-form-card{background:var(--au-card);border:1px solid var(--au-border);border-radius:10px;padding:22px;}
.dispatch-form-card h4{color:var(--au-primary-dark);font-weight:700;}

/* Table hover */
.table-hover tbody tr:hover{background:var(--au-primary-light);}
