/* ═════════ Sign-in / sign-up: one calm look with the rest of the site (deep navy + gold), a serif wordmark, nothing hidden behind the bottom bar ═════════ */
.auth-brand {
  background:
    radial-gradient(60% 50% at 18% 12%, rgba(212,175,55,.16), transparent 70%),
    radial-gradient(50% 45% at 85% 90%, rgba(55,138,221,.14), transparent 70%),
    linear-gradient(165deg, #050b1c 0%, #0a1530 55%, #040815 100%);
}
.auth-brand::before { background: none; }
/* a quiet chessboard grain behind the wordmark */
.auth-brand::after {
  content: ''; position: absolute; inset: 0; pointer-events: none; opacity: .5;
  background-image: conic-gradient(rgba(255,255,255,.035) 25%, transparent 0 50%, rgba(255,255,255,.035) 0 75%, transparent 0);
  background-size: 64px 64px;
  -webkit-mask-image: radial-gradient(70% 60% at 50% 45%, #000 20%, transparent 75%);
  mask-image: radial-gradient(70% 60% at 50% 45%, #000 20%, transparent 75%);
}
.ab-logo, .auth-brand .ab-tagline, .ab-features, .ab-bonus, .auth-swap-cta { z-index: 1; }
.ab-logo { font-family: 'Bodoni Moda', Georgia, 'Times New Roman', serif; font-size: 40px; font-weight: 800; letter-spacing: -.01em; }
.ab-tagline { letter-spacing: .12em; text-transform: uppercase; font-size: 12px; color: rgba(255,255,255,.55); }
.ab-features li { border-bottom-color: rgba(212,175,55,.14); font-size: 13.5px; color: rgba(255,255,255,.8); }
.ab-pieces { filter: drop-shadow(0 8px 32px rgba(212,175,55,.45)); }

.auth-inner h2 { font-family: 'Bodoni Moda', Georgia, 'Times New Roman', serif; font-size: 30px; font-weight: 800; letter-spacing: -.01em; line-height: 1.1; text-wrap: balance; }
.auth-form-side { background: #050a18; border-left: 1px solid rgba(255,255,255,.06); }
.auth-inner .sub { color: var(--text-dim, #94a3b8); }
/* the form always clears the fixed bottom bar, even on a short screen */
.auth-form-side { padding-bottom: calc(104px + env(safe-area-inset-bottom, 0px)); }
.auth-inner .input:focus { border-color: #d4af37; box-shadow: 0 0 0 3px rgba(212,175,55,.18); outline: none; }
.btn-knight, .auth-inner .btn-primary { min-height: 48px; border-radius: 12px; }
.gsi-slot > div, .gsi-slot iframe { max-width: 100%; }
.auth-footer a, .auth-forgot a { text-underline-offset: 3px; }
.mob-auth-brand .mob-ab-logo { font-family: 'Bodoni Moda', Georgia, serif; font-size: 26px; font-weight: 800; }

@media (max-width: 700px) {
  .auth-form-side { border-left: none; padding-bottom: calc(96px + env(safe-area-inset-bottom, 0px)); }
  .auth-inner h2 { font-size: 26px; }
}
@media (prefers-reduced-motion: reduce) { .auth-track { transition: none !important; } }
