/**
 * Auth pages (login, register) – OAuth buttons, Turnstile overlay handling.
 * BEM: auth-form, auth-form__col, auth-card, auth-card__oauth-section,
 *      auth-card__google-btn, auth-card__divider, auth-card__turnstile-wrapper.
 */

/* ---------- Layout & overflow fixes ---------- */

body:has(.auth-card) .navbar {
  z-index: 100;
}

body:has(.auth-form) .container.mt-4,
.auth-form,
.auth-form__col {
  overflow: visible !important;
}

.auth-card,
.auth-card .card-body {
  overflow: visible !important;
}

.auth-card:hover {
  transform: none !important;
}

/* ---------- Google OAuth button ---------- */

.auth-card__oauth-section {
  margin-bottom: var(--spacing-md, 1rem);
}

.auth-card__google-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
  width: 100%;
  padding: 0.625rem 1rem;
  font-size: 0.9375rem;
  font-weight: 500;
  color: var(--color-text, #3c4043);
  background-color: var(--color-surface, #fff);
  border: 1px solid var(--color-border, #dadce0);
  border-radius: var(--border-radius, 0.375rem);
  cursor: pointer;
  text-decoration: none;
  transition: background-color 0.2s, box-shadow 0.2s;
}

.auth-card__google-btn:hover {
  background-color: var(--color-surface-hover, #f7f8f8);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
  text-decoration: none;
  color: var(--color-text, #3c4043);
}

.auth-card__google-btn:active {
  background-color: var(--color-surface-active, #eef0f2);
}

.auth-card__google-icon {
  flex-shrink: 0;
}

/* ---------- Divider ---------- */

.auth-card__divider {
  display: flex;
  align-items: center;
  margin: 1.25rem 0;
}

.auth-card__divider::before,
.auth-card__divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background-color: var(--color-border, #dadce0);
}

.auth-card__divider-text {
  padding: 0 0.75rem;
  font-size: 0.8125rem;
  color: var(--color-text-secondary, #5f6368);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

/* ---------- Turnstile ---------- */

.auth-card__turnstile-wrapper {
  position: relative;
  z-index: 10;
}

iframe[src*="challenges.cloudflare.com"] {
  z-index: 2147483647 !important;
  position: relative !important;
}
