:root {
  --brand: #1F3864;
  --brand-light: #3a5a96;
  --accent: #C00000;
  --good: #0f8a45;
}
body { background: #f4f6fb; font-family: 'Segoe UI', Arial, sans-serif; }
.app-navbar { background: var(--brand) !important; }
.app-navbar .nav-link { color: rgba(255,255,255,0.85) !important; }
.app-navbar .nav-link:hover { color: #fff !important; }
.card { border: none; border-radius: 14px; box-shadow: 0 2px 10px rgba(0,0,0,0.06); }
.card-header { background: var(--brand); color: #fff; border-radius: 14px 14px 0 0 !important; font-weight: 600; }
.kpi-card { border-radius: 14px; padding: 1.25rem; color: #fff; }
.kpi-card h3 { font-size: 1.9rem; font-weight: 700; margin-bottom: 0; }
.kpi-card small { opacity: .85; }
.bg-debt { background: linear-gradient(135deg, #C00000, #7a0000); }
.bg-income { background: linear-gradient(135deg, #0f8a45, #0a5c2e); }
.bg-score { background: linear-gradient(135deg, #1F3864, #0d1b33); }
.bg-surplus { background: linear-gradient(135deg, #9c6f00, #6b4c00); }
.table thead { background: #eef1f8; }
.badge-overdue { background: #C00000; }
.badge-due-soon { background: #d9822b; }
.priority-1 { border-left: 5px solid var(--accent); }
.ai-box { background: #eef4ff; border-left: 4px solid var(--brand); border-radius: 10px; padding: 1rem; }
