html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
  transition: background-color 180ms ease, color 180ms ease;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

.dark-theme body {
  background-color: #0f172a;
  color: #e5e7eb;
}

.dark-theme .bg-white {
  background-color: #111827 !important;
}

.dark-theme .bg-gray-50,
.dark-theme .bg-gray-100 {
  background-color: #0f172a !important;
}

.dark-theme .bg-gray-900 {
  background-color: #020617 !important;
}

.dark-theme .text-gray-800,
.dark-theme .text-gray-700 {
  color: #f3f4f6 !important;
}

.dark-theme .text-gray-600,
.dark-theme .text-gray-500,
.dark-theme .text-gray-400 {
  color: #cbd5e1 !important;
}

.dark-theme .text-blue-600 {
  color: #60a5fa !important;
}

.dark-theme .hover\:text-blue-600:hover,
.dark-theme .hover\:text-blue-800:hover {
  color: #93c5fd !important;
}

.dark-theme .border,
.dark-theme .border-t,
.dark-theme .border-b,
.dark-theme .border-gray-200,
.dark-theme .border-gray-700 {
  border-color: #334155 !important;
}

.dark-theme .shadow-md,
.dark-theme .shadow-lg,
.dark-theme .shadow-sm {
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35) !important;
}

.dark-theme .hover\:shadow-2xl:hover {
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45) !important;
}

.dark-theme .hover\:bg-gray-100:hover {
  background-color: #1f2937 !important;
}

.dark-theme .from-orange-50 {
  --tw-gradient-from: #1f2937 var(--tw-gradient-from-position) !important;
  --tw-gradient-to: rgba(31, 41, 55, 0) var(--tw-gradient-to-position) !important;
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
}

.dark-theme .to-red-50 {
  --tw-gradient-to: #172033 var(--tw-gradient-to-position) !important;
}

.dark-theme .theme-toggle {
  background-color: #1e293b;
  border-color: #334155;
  color: #facc15;
}

.dark-theme .theme-toggle:hover {
  border-color: #60a5fa;
  color: #fde68a;
}

.theme-toggle {
  transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease;
}
