/* OTP controls for the shared email registration and login entry point. */
[data-email-auth] [hidden],
[data-email-auth] .hidden { display: none !important; }
[data-email-auth] .login-otp-fieldset { min-width: 0; padding: 0; border: 0; margin: .7rem 0 0; }
[data-email-auth] .login-otp-fieldset legend { margin-bottom: .5rem; color: #334155; font-size: .875rem; font-weight: 700; }
[data-email-auth] .login-otp-digits { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: .4rem; }
[data-email-auth] .login-otp-digits input { width: 100%; min-width: 0; min-height: 2.85rem; padding: .65rem 0; text-align: center; font-size: 1.25rem; font-weight: 700; border: 1px solid #dbe4f0; border-radius: .6rem; background: #f8fafc; color: #0f172a; }
[data-email-auth] .login-otp-digits input:focus { border-color: #60a5fa; outline: 2px solid #2563eb; outline-offset: 1px; }
[data-email-auth] .login-otp-resend { text-align: right; margin: .35rem 0 .6rem; }
[data-email-auth] .login-otp-hint { margin-top: .5rem; color: #64748b; font-size: .875rem; }
[data-email-auth] .login-otp-resend button { border: 0; padding: .4rem 0; background: transparent; color: #2563eb; font: inherit; font-size: .875rem; text-decoration: underline; cursor: pointer; }
[data-email-auth] button:disabled { cursor: not-allowed; opacity: .55; }
[data-email-auth] #emailInput { font-size: 1rem; }
[data-email-auth] #userDisplay { overflow-wrap: anywhere; }
[data-email-auth] #btnPembayaranPinjaman { margin-top: 1rem; }
[data-email-auth] #authContinueButton { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 3rem; padding: .8rem 1rem; text-decoration: none; font-size: 1rem; }
.auth-note, .auth-subtitle { font-size: .875rem; }
