/* Optional site customisations. This file is intentionally empty. */

/* RC1 Account Security Hotfix 8.3 — Captive MFA UX */
.bi-captive-mfa {
  width: min(100%, 960px);
  margin: 1.5rem auto 3rem;
  display: grid;
  gap: 1rem;
}
.bi-captive-mfa__hero,
.bi-captive-mfa__notice,
.bi-captive-mfa__form,
.bi-captive-mfa__help,
.bi-captive-mfa__methods,
.bi-captive-mfa__privacy {
  border: 1px solid var(--bi-border, #dbe3ef);
  border-radius: 18px;
  background: var(--bi-surface, #fff);
}
.bi-captive-mfa__hero {
  padding: clamp(1.25rem, 3vw, 2rem);
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  background: linear-gradient(135deg, #173f8f, #2b5ce1);
  color: #fff;
  border-color: transparent;
}
.bi-captive-mfa__hero h1 { margin: .25rem 0 .5rem; font-size: clamp(1.6rem, 4vw, 2.35rem); line-height: 1.15; }
.bi-captive-mfa__hero p { margin: 0; max-width: 62ch; color: rgba(255,255,255,.88); }
.bi-captive-mfa__eyebrow { font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.bi-captive-mfa__shield { font-size: 2rem; opacity: .9; flex: 0 0 auto; }
.bi-captive-mfa__notice,
.bi-captive-mfa__help,
.bi-captive-mfa__privacy { padding: 1rem 1.1rem; }
.bi-captive-mfa__notice { background: #f7faff; }
.bi-captive-mfa__notice p,
.bi-captive-mfa__help p,
.bi-captive-mfa__privacy { margin: .35rem 0 0; }
.bi-captive-mfa__muted { color: #64748b; }
.bi-captive-mfa__form { padding: clamp(1rem, 3vw, 1.5rem); }
.bi-captive-mfa__field { display: grid; gap: .5rem; margin-bottom: 1rem; }
.bi-captive-mfa__field label { font-weight: 700; }
.bi-captive-mfa__actions { display: flex; flex-wrap: wrap; gap: .65rem; align-items: center; }
.bi-captive-mfa__actions .btn { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: .4rem; }
.bi-captive-mfa__help ul { margin: .65rem 0 0; padding-left: 1.25rem; }
.bi-captive-mfa__help li + li { margin-top: .4rem; }
.bi-captive-mfa__methods { overflow: hidden; }
.bi-captive-mfa__method { display: flex; align-items: center; gap: 1rem; padding: 1rem 1.1rem; color: inherit; text-decoration: none; border-bottom: 1px solid var(--bi-border, #dbe3ef); }
.bi-captive-mfa__method:last-child { border-bottom: 0; }
.bi-captive-mfa__method:hover { background: #f8fafc; }
.bi-captive-mfa__method:focus-visible { outline: 3px solid #2563eb; outline-offset: -3px; }
.bi-captive-mfa__method-icon { width: 42px; height: 42px; display: grid; place-items: center; flex: 0 0 42px; }
.bi-captive-mfa__method-icon img { max-width: 100%; max-height: 100%; }
.bi-captive-mfa__method-copy { min-width: 0; flex: 1 1 auto; display: grid; gap: .2rem; }
.bi-captive-mfa__method-copy strong { font-size: 1.05rem; }
.bi-captive-mfa__method-copy span { color: #64748b; overflow-wrap: anywhere; }
.bi-captive-mfa #multifactorauth-webauthn-missing { margin-bottom: 1rem; }
@media (max-width: 640px) {
  .bi-captive-mfa { margin-top: .75rem; }
  .bi-captive-mfa__hero { border-radius: 14px; }
  .bi-captive-mfa__actions { display: grid; grid-template-columns: 1fr; }
  .bi-captive-mfa__actions .btn { width: 100%; }
  .bi-captive-mfa__shield { display: none; }
}
@media (forced-colors: active) {
  .bi-captive-mfa__hero { border: 1px solid CanvasText; }
}
