/* Navy dark theme — white background was too bright for a dashboard checked
   frequently, especially at a glance on mobile. */
:root {
  --navy-bg: #0b1a2e;
  --navy-surface: #132a45;
  --navy-surface-alt: #1b3555;
  --navy-border: #274a70;
}

body {
  padding-bottom: 2rem;
  background-color: var(--navy-bg);
  color: #eaf0f7;
}

.navbar {
  background-color: #071120 !important;
  border-bottom: 1px solid var(--navy-border);
}

.card {
  background-color: var(--navy-surface);
  border: 1px solid var(--navy-border);
  color: #eaf0f7;
}

.list-group-item {
  background-color: var(--navy-surface);
  border-color: var(--navy-border);
  color: #eaf0f7;
}

.list-group-item-action:hover,
.list-group-item-action:focus {
  background-color: var(--navy-surface-alt);
  color: #ffffff;
}

.form-control,
.form-select {
  background-color: var(--navy-surface);
  border-color: var(--navy-border);
  color: #eaf0f7;
}

.form-control:focus,
.form-select:focus {
  background-color: var(--navy-surface);
  color: #ffffff;
  border-color: #4a9de0;
  box-shadow: 0 0 0 0.25rem rgba(74, 157, 224, 0.25);
}

.form-control::placeholder {
  color: #9fb3cc;
}

.text-muted {
  color: #9fb3cc !important;
}

.btn-outline-primary {
  color: #7ec4ff;
  border-color: #4a9de0;
}

.btn-outline-primary:hover {
  background-color: #4a9de0;
  color: #071120;
}

.table {
  --bs-table-bg: var(--navy-surface);
  --bs-table-color: #eaf0f7;
  --bs-table-border-color: var(--navy-border);
}

#calendar {
  max-width: 100%;
  overflow-x: auto;
}

.card-img-top {
  object-fit: cover;
  height: 160px;
}
