:root {
  --fsend-primary: #265dce;
  --fsend-ink: #1d2a44;
  --fsend-muted: #63708a;
  --fsend-surface: #ffffff;
}

body {
  min-height: 100vh;
  color: var(--fsend-ink);
  background:
    radial-gradient(circle at 5% 0%, #e0ecff 0, transparent 28rem),
    #f6f8fc;
}

.app-navbar {
  background: linear-gradient(110deg, #16449e, var(--fsend-primary));
  box-shadow: 0 0.25rem 1rem rgb(20 52 117 / 18%);
}

.navbar-brand { font-weight: 700; letter-spacing: -0.03em; }
.nav-link { color: rgb(255 255 255 / 80%) !important; }
.nav-link:hover, .nav-link:focus { color: #fff !important; }

.page-heading { font-weight: 700; letter-spacing: -0.025em; }
.page-intro { color: var(--fsend-muted); }
.app-card { border: 0; border-radius: 1rem; box-shadow: 0 0.5rem 1.5rem rgb(30 53 94 / 10%); }
.app-card .card-body { padding: 1.5rem; }
.btn { border-radius: 0.6rem; font-weight: 600; }
.form-control, .form-select { min-height: 2.8rem; border-radius: 0.6rem; }
.form-control:focus, .form-select:focus { border-color: #7aa4fb; box-shadow: 0 0 0 0.25rem rgb(38 93 206 / 14%); }
.list-group-item { border-color: #e5eaf2; padding: 1.1rem 1.25rem; }
.list-group-item:first-child { border-top-left-radius: 0.9rem; border-top-right-radius: 0.9rem; }
.list-group-item:last-child { border-bottom-right-radius: 0.9rem; border-bottom-left-radius: 0.9rem; }
.empty-state { padding: 3rem 1.5rem; text-align: center; color: var(--fsend-muted); }
.status-badge { font-size: 0.72rem; letter-spacing: 0.02em; }
.min-w-0 { min-width: 0; }

@media (min-width: 768px) {
  .app-card .card-body { padding: 2rem; }
}
