.whatsapp-account-card {
    max-width: 36rem;
}
.whatsapp-account-card .validation-summary-valid {
    display: none;
}
.whatsapp-account-card .btn {
    min-height: 44px;
}
.whatsapp-account-card a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
}

.signin-method-label { margin: 0 0 10px; font-weight: 750; color: var(--green-950, #043f31); }
.signin-methods { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; padding: 6px; margin-bottom: 24px; border: 1px solid #cbe3d9; border-radius: 22px; background: #e7f3ed; }
.signin-method { display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 64px; padding: 10px; border-radius: 17px; color: #365e50; font-weight: 800; text-decoration: none; }
.signin-method:hover { color: #043f31; background: #d8ece2; }
.signin-method.is-active { color: #fff; background: linear-gradient(120deg, #075b45, #0a8c6c); box-shadow: 0 5px 12px #075b4520; }
.signin-method-icon { display: grid; place-items: center; width: 36px; height: 36px; flex-shrink: 0; border-radius: 11px; background: #ffffff80; }
.signin-method.is-active .signin-method-icon { background: #ffffff26; }
.signin-method-icon svg { width: 21px; height: 21px; }
.signin-method:focus-visible, .otp-actions :focus-visible { outline: 3px solid #087159; outline-offset: 3px; }
.auth-page .otp-card::before { height: 5px; background: var(--gold, #b79a4b); }
.otp-step-title { margin: 6px 0 14px; font-size: 1.55rem; font-weight: 800; color: var(--green-950, #043f31); }
.otp-step-intro { margin: 0 0 20px; color: var(--muted, #5e746d); line-height: 1.7; }
.otp-destination { margin: -12px 0 24px; font-size: 1.1rem; font-weight: 750; color: var(--green-950, #043f31); }
.otp-help { margin: 12px 0 20px; font-size: .86rem; color: var(--muted, #5e746d); line-height: 1.6; }
.otp-remember { min-height: 44px; margin-bottom: 14px; }
.otp-code-field { margin-bottom: 24px; }
.otp-code-field > label { display: block; margin-bottom: 12px; font-weight: 750; }
.otp-code-control { position: relative; width: 100%; max-width: 440px; }
.otp-code-cells:not([hidden]) { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; }
.otp-code-cell { display: flex; align-items: center; justify-content: center; height: 64px; border: 2px solid #bdd6ca; border-radius: 12px; font-size: 1.6rem; font-weight: 750; color: #043f31; background: #fff; }
.otp-code-cell.is-filled { border-color: #087159; background: #eff9f4; }
.otp-code-cell.is-current { border-color: #087159; outline: 3px solid #a7dec9; outline-offset: 2px; }
.otp-code-control.is-enhanced .otp-code-native { position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; opacity: 0; cursor: text; font-size: 16px; }
.otp-code-native { min-height: 56px; }
.otp-actions { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 12px; margin-top: 14px; }
.otp-actions .text-link { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 44px; padding: 6px 0; font-size: .9rem; }
.otp-back-icon { width: 18px; height: 18px; }
[dir="rtl"] .otp-back-icon { transform: rotate(180deg); }
.otp-resend { border: 0; background: transparent; }
.otp-security { display: flex; align-items: flex-start; gap: 10px; margin: 22px 0 0; padding: 15px; border-radius: 14px; background: #eff7f3; color: #426454; font-size: .86rem; line-height: 1.6; }
.otp-security svg { width: 20px; height: 20px; flex-shrink: 0; margin-top: 1px; }
.otp-notice { margin-bottom: 20px; padding: 12px 14px; background: #eff7f3; color: #426454; font-size: .82rem; font-weight: 400; line-height: 1.6; }
html[data-bs-theme="dark"] .otp-notice { background: #14372b; color: #b9d9cb; }
.auth-page .primary:disabled, [data-otp-submit]:disabled { cursor: not-allowed; transform: none; box-shadow: none; background: #dce8e2; color: #526a5f; opacity: 1; }
.otp-resend:disabled { cursor: not-allowed; color: #657b70; text-decoration: none; }
html[data-bs-theme="dark"] .signin-method-label, html[data-bs-theme="dark"] .otp-step-title, html[data-bs-theme="dark"] .otp-destination { color: #d7f3e7; }
html[data-bs-theme="dark"] .signin-methods { border-color: #365d4f; background: #112f26; }
html[data-bs-theme="dark"] .signin-method:not(.is-active) { color: #b9d9cb; }
html[data-bs-theme="dark"] .signin-method:not(.is-active):hover { background: #1c4435; }
html[data-bs-theme="dark"] .signin-method-icon { background: #ffffff16; }
html[data-bs-theme="dark"] .otp-code-cell { border-color: #527565; background: #102d24; color: #e5f8ee; }
html[data-bs-theme="dark"] .otp-code-cell.is-filled { border-color: #68cba5; background: #174b37; }
html[data-bs-theme="dark"] .otp-code-cell.is-current { border-color: #68cba5; outline-color: #426f5c; }
html[data-bs-theme="dark"] .otp-security { background: #14372b; color: #b9d9cb; }
html[data-bs-theme="dark"] .otp-resend:disabled { color: #a3bbb0; }
html[data-bs-theme="dark"] .auth-page .primary:disabled { background: #29483b; color: #b6cbbf; }
@media (max-width: 400px) {
    .signin-method { gap: 6px; padding: 8px 4px; font-size: .9rem; }
    .signin-method-icon { width: 30px; height: 32px; }
    .otp-code-cells:not([hidden]) { gap: 6px; }
    .otp-code-cell { height: 54px; border-radius: 9px; font-size: 1.3rem; }
    .otp-step-title { font-size: 1.3rem; }
}
@media (prefers-reduced-motion: reduce) { .otp-code-native, .signin-method { transition: none; } }

.auth-page .otp-card { overflow: visible; }
.auth-page .otp-card::before { border-radius: 30px 30px 0 0; }
.otp-phone-wrap { direction: ltr; text-align: left; }
.otp-phone-wrap .iti { width: 100%; }
.otp-phone-wrap .iti input { padding-left: 7.5rem !important; padding-right: 14px !important; }
.otp-phone-wrap input { height: 58px; width: 100%; border: 1px solid #cbe0d6; border-radius: 17px; background: #f9fdfb; color: #18392f; font-size: 1rem; text-align: left; }
.otp-phone-wrap input:focus { border-color: #087159; box-shadow: 0 0 0 4px #0871591a; }
.otp-phone-wrap .iti__selected-country { min-height: 44px; padding-inline: 14px; border-radius: 17px 0 0 17px; background: transparent; }
.otp-phone-wrap .iti__country-container { left: 0; right: auto; }
.otp-phone-wrap .iti__dropdown-content { z-index: 1060; width: min(320px, calc(100vw - 64px)); border-radius: 12px; overflow: hidden; }
.otp-phone-wrap .iti__country { min-height: 44px; }
html[data-bs-theme="dark"] .otp-phone-wrap input { background: #102d24; color: #e5f8ee; border-color: #527565; }
html[data-bs-theme="dark"] .otp-phone-wrap .iti__dropdown-content { background: #102d24; color: #e5f8ee; border-color: #527565; }
html[data-bs-theme="dark"] .otp-phone-wrap .iti__country.iti__highlight { background: #174b37; }
