:root {
  --ith-navy: #1B3A6B;
  --ith-navy-dark: #142a4f;
  --ith-gold: #C9A24B;
  --ith-gold-dark: #a88636;
  --ith-bg: #F4F6FA;
  --ith-surface: #FFFFFF;
  --ith-text: #1A2233;
  --ith-muted: #6B7280;
  --ith-border: #E5E7EB;
  --ith-success: #198754;
  --ith-danger:  #dc3545;
  --ith-warning: #f59f00;
}
body { background: var(--ith-bg); color: var(--ith-text); font-family: 'Inter', system-ui, Arial, sans-serif; }
.btn-primary { background: var(--ith-navy); border-color: var(--ith-navy); }
.btn-primary:hover { background: var(--ith-navy-dark); border-color: var(--ith-navy-dark); }
.btn-accent   { background: var(--ith-gold); border-color: var(--ith-gold); color:#fff; }
.btn-accent:hover { background: var(--ith-gold-dark); color:#fff; }

.ithaki-sidebar {
  width: 260px; min-height: 100vh; background: var(--ith-navy); color:#fff; position: fixed; inset: 0 auto 0 0;
  display:flex; flex-direction:column;
}
.ithaki-sidebar .brand { padding: 20px 18px; border-bottom: 1px solid rgba(255,255,255,0.08); display:flex; align-items:center; gap:12px; }
.ithaki-sidebar .brand img { height: 40px; }
.ithaki-sidebar .nav-link { color: rgba(255,255,255,0.82); padding: 10px 18px; border-radius:0; display:flex; align-items:center; }
.ithaki-sidebar .nav-link.active, .ithaki-sidebar .nav-link:hover { background: rgba(255,255,255,0.08); color:#fff; }
.ithaki-sidebar .nav-link i { width: 20px; display:inline-block; text-align:center; margin-right:8px; }

.ithaki-main  { margin-left: 260px; padding: 24px; }
.ithaki-topbar{ background: var(--ith-surface); border-radius: 10px; padding: 12px 18px; margin-bottom: 18px;
                display:flex; justify-content:space-between; align-items:center; box-shadow: 0 1px 2px rgba(0,0,0,0.04); }

.card { border: 1px solid var(--ith-border); border-radius: 10px; }
.card-kpi { padding: 18px; }
.card-kpi .val { font-size: 1.6rem; font-weight: 700; color: var(--ith-navy); }
.card-kpi .lbl { color: var(--ith-muted); font-size: .9rem; }

.table thead th { background: #f8f9fa; color:#1a2233; font-weight:600; }
.badge-status-active  { background: var(--ith-success); color:#fff; }
.badge-status-expired { background: var(--ith-danger);  color:#fff; }
.badge-status-pending { background: var(--ith-warning); color:#fff; }

@media (max-width: 991.98px) {
  .ithaki-sidebar { transform: translateX(-100%); transition: transform .2s; z-index:1040; }
  .ithaki-sidebar.open { transform: translateX(0); }
  .ithaki-main    { margin-left: 0; }
  .ithaki-mobile-toggler { display:inline-block; }
}
