body.admin {
  margin-top: 87px !important;
}
abbr {
  color: red;
  font-weight: bold;
}

.form-signin {
  max-width: 330px;
  padding: 1rem;
}

.form-lost-password {
  max-width: 400px;
  padding: 1rem;
}

.form-signin .form-floating:focus-within {
  z-index: 2;
}

/* Admin navbar */
body.admin .navbar .navbar-brand {
  color: #fff !important;
  font-weight: 700;
  letter-spacing: 0.08em;
  font-size: 0.85rem;
  opacity: 0.9;
}
body.admin .navbar .nav-link,
body.admin .navbar .dropdown-toggle {
  color: #fff !important;
}
body.admin .navbar .nav-link:hover,
body.admin .navbar .dropdown-toggle:hover {
  color: rgba(255, 255, 255, 0.8) !important;
}

/* Admin collection cards: remove default shadow, use subtle bottom border */
body.admin #collection > .shadow-sm {
  box-shadow: none !important;
  border-bottom: 1px solid #e9ecef;
  border-radius: 0;
}

/* Admin action buttons: softer filled style */
body.admin .btn-primary.btn-sm {
  background: #4a7cff;
  color: #fff !important;
  border: none;
  font-size: 0.8rem;
  padding: 0.35rem 0.85rem;
  border-radius: 0.375rem;
}
body.admin .btn-primary.btn-sm:hover {
  background: #3a66e0;
}
body.admin .btn-danger.btn-sm,
body.admin .btn-danger.text-white.btn-sm {
  background: #e8e8e8;
  color: #6c757d !important;
  border: none;
  font-size: 0.8rem;
  padding: 0.35rem 0.85rem;
  border-radius: 0.375rem;
}
body.admin .btn-danger.btn-sm:hover,
body.admin .btn-danger.text-white.btn-sm:hover {
  background: #dc3545;
  color: #fff !important;
}

/* Admin New button: match primary style */
body.admin .btn-info.btn-sm,
body.admin .btn-info.text-white.btn-sm {
  background: #198754;
  color: #fff !important;
  border: none;
  font-size: 0.8rem;
  padding: 0.35rem 0.85rem;
  border-radius: 0.375rem;
}
body.admin .btn-info.btn-sm:hover,
body.admin .btn-info.text-white.btn-sm:hover {
  background: #146c43;
}
