html {
  font-size: 14px;
}

/* Bootstrap has no min-width utility; flex children need this for text-truncate
   to shrink instead of pushing siblings out of their container. */
.min-w-0 {
  min-width: 0 !important;
}

@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.2rem rgba(99, 102, 241, .45);
}

/* ═══ SuperHire brand palette — retints Bootstrap's default blue to the
   indigo/violet used by the job-seeker portal, so employer, admin and public
   pages read as one product. Seeker pages override these with their own
   gradient styles (higher specificity via body.seeker-shell). ═══ */
:root {
  --sh-accent: #6366f1;
  --sh-accent-deep: #4f46e5;
  --sh-accent-darker: #4338ca;
  --sh-ink: #312e81;
  --sh-soft: #eef0ff;
  --sh-soft-border: #c7d2fe;

  --bs-primary: #4f46e5;
  --bs-primary-rgb: 79, 70, 229;
  --bs-link-color: #4f46e5;
  --bs-link-color-rgb: 79, 70, 229;
  --bs-link-hover-color: #4338ca;
  --bs-link-hover-color-rgb: 67, 56, 202;
}

.btn-primary {
  --bs-btn-bg: #4f46e5;
  --bs-btn-border-color: #4f46e5;
  --bs-btn-hover-bg: #4338ca;
  --bs-btn-hover-border-color: #4338ca;
  --bs-btn-active-bg: #3d33b8;
  --bs-btn-active-border-color: #3d33b8;
  --bs-btn-disabled-bg: #4f46e5;
  --bs-btn-disabled-border-color: #4f46e5;
}

.btn-outline-primary {
  --bs-btn-color: #4f46e5;
  --bs-btn-border-color: #c7d2fe;
  --bs-btn-hover-bg: #eef0ff;
  --bs-btn-hover-color: #4338ca;
  --bs-btn-hover-border-color: #a5b4fc;
  --bs-btn-active-bg: #eef0ff;
  --bs-btn-active-color: #4338ca;
  --bs-btn-active-border-color: #a5b4fc;
}

.text-primary { color: #4f46e5 !important; }
.bg-primary { background-color: #4f46e5 !important; }
.border-primary { border-color: #4f46e5 !important; }
.badge.bg-primary { background-color: #4f46e5 !important; }
.link-primary { color: #4f46e5 !important; }
.link-primary:hover { color: #4338ca !important; }

.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
  background-color: #4f46e5;
}

.progress-bar { background-color: #4f46e5; }
.form-check-input:checked {
  background-color: #4f46e5;
  border-color: #4f46e5;
}

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;
}