:root{
  --app-bg:#f4f7fb;
  --app-card:#ffffff;
  --app-border:#dbe4f0;
  --app-primary:#0d6efd;
  --app-dark:#122033;
}
body{background:var(--app-bg);color:#1c2736}
.app-nav{background:linear-gradient(90deg,#122033,#1f3552)}
.card,.small-stat,.hero-card{background:var(--app-card);border:1px solid var(--app-border);border-radius:18px;box-shadow:0 8px 24px rgba(18,32,51,.06)}
.hero-card{background:linear-gradient(135deg,#1b4f9c,#132b52);color:#fff;border:none}
.metric{min-height:120px}.small-stat{padding:1rem 1.25rem}
.page-title{display:flex;justify-content:space-between;gap:1rem;align-items:end;flex-wrap:wrap}
.table>:not(caption)>*>*{padding:.85rem .75rem}.table-actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}
.muted{color:#64748b}.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#f8fafc;padding:.15rem .35rem;border-radius:.4rem}
.badge-soft{background:#eef4ff;color:#2454cc}.empty-state{text-align:center;padding:2rem!important;color:#64748b}.filters .form-label{font-size:.8rem;color:#64748b;margin-bottom:.35rem}
.kpi{padding:1rem 1.25rem;border-radius:18px;background:#fff;border:1px solid var(--app-border)}
.kpi .value{font-size:1.7rem;font-weight:700}.section-card{padding:1.25rem}.mini-muted{font-size:.875rem;color:#64748b}
.list-unstyled.compact li{padding:.35rem 0;border-bottom:1px dashed var(--app-border)}
.list-unstyled.compact li:last-child{border-bottom:none}
