/* Base rem scale — kept at 14px on all breakpoints (see typography.css) */
html {
  font-size: 14px;
}

.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: 0;
}

.vj-topbar .navbar-nav .nav-link,
.vj-topbar .navbar-nav .btn-link {
  color: rgba(255, 255, 255, 0.92) !important;
}

.vj-topbar .navbar-nav .btn-link:hover {
  color: #fff !important;
  text-decoration: underline;
}

/* Country code + mobile number (shared phone input) */
.vj-phone-field .vj-phone-row {
  display: flex;
  gap: 0.5rem;
  align-items: stretch;
  width: 100%;
}

/* Dial code only (e.g. +91) — keep narrow so the number field can show 10 digits */
.vj-phone-field .vj-phone-cc {
  flex: 0 0 5.25rem;
  width: 5.25rem;
  max-width: 5.25rem;
  min-width: 5.25rem;
  padding-left: 0.35rem;
  padding-right: 1.35rem;
}

.vj-phone-field .vj-phone-num {
  flex: 1 1 auto;
  min-width: 12ch;
  width: 100%;
  letter-spacing: 0.03em;
}

.vj-phone-field--compact .vj-phone-cc {
  flex-basis: 5rem;
  width: 5rem;
  max-width: 5rem;
  min-width: 5rem;
}

.vj-phone-field .vj-phone-error:not([hidden]) {
  margin-top: 0.25rem;
}
