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 var(--itrac-light-blue);
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.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;
}

/* Full-width strip: neutral when not connected; prod = red, dev = blue when logged in */
.app-header-strip {
  background-color: var(--itrac-menu-bg) !important;
  width: 100%;
}

.app-header-strip.app-header-strip--connected-prod {
  background-color: var(--itrac-red) !important;
}

.app-header-strip.app-header-strip--connected-dev {
  background-color: var(--itrac-light-blue) !important;
}

/* Title row sits on same background as menu */
.title-bar {
  background-color: transparent;
}

.title-bar .dashboard-title {
  color: var(--itrac-blue) !important;
}

.app-header-strip--connected-prod .dashboard-title,
.app-header-strip--connected-dev .dashboard-title {
  color: #fff !important;
}

/* Navbar inside the strip — no second background */
.app-header-strip header .navbar {
  background-color: transparent !important;
  box-shadow: none !important;
}

.app-header-strip .navbar .nav-link {
  color: var(--itrac-grey) !important;
}

.app-header-strip .navbar .nav-link:hover {
  color: var(--itrac-blue) !important;
}

.app-header-strip--connected-prod .navbar .nav-link,
.app-header-strip--connected-dev .navbar .nav-link {
  color: rgba(255, 255, 255, 0.92) !important;
}

.app-header-strip--connected-prod .navbar .nav-link:hover,
.app-header-strip--connected-dev .navbar .nav-link:hover {
  color: #fff !important;
}

/* Enrollment dropdown (opens over strip; items use default light menu) */
.app-header-strip .navbar .dropdown-toggle::after {
  margin-inline-start: 0.35em;
}

/* Indybox list — Detail action (light blue) */
.btn-indybox-detail {
  background-color: var(--itrac-light-blue) !important;
}

.btn-indybox-detail:hover {
  background-color: #0066d6 !important;
}

/* Buttons - green for success/OK, red for danger */
.btn-success, .btn.btn-success {
  background-color: var(--itrac-green) !important;
  border-color: var(--itrac-green) !important;
}
.btn-success:hover {
  background-color: #26a862 !important;
  border-color: #26a862 !important;
}
.btn-danger, .btn.btn-danger {
  background-color: var(--itrac-red) !important;
  border-color: var(--itrac-red) !important;
}
.btn-danger:hover {
  background-color: #e94d58 !important;
  border-color: #e94d58 !important;
}