.email-login-form .otp-code{position:relative;max-width:360px;}
.email-login-form .otp-code-slots{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;}
.email-login-form .otp-code-slot{display:grid;place-items:center;aspect-ratio:1;max-height:52px;border:1px solid var(--line);border-radius:12px;background:#fff;color:#25292d;font-size:22px;font-weight:600;transition:border-color .2s,box-shadow .2s,transform .2s;}
.email-login-form .otp-code:focus-within .otp-code-slot.is-current{border-color:#e20b29;box-shadow:0 0 0 3px #e20b291c;}
.email-login-form .otp-code-slot.is-filled{animation:otp-digit-arrive .2s ease-out;}
.email-login-form .otp-code input#email-otp{position:absolute;inset:0;width:100%;height:100%;min-height:0;padding:0;opacity:0;cursor:text;}
.email-login-form .otp-code-success{position:absolute;inset:-6px;display:flex;align-items:center;justify-content:center;gap:10px;border-radius:16px;color:#326b3b;background:radial-gradient(ellipse,#d8edda 0%,#f6faf4 72%);opacity:0;pointer-events:none;transition:opacity .3s ease;}
.email-login-form .otp-code.is-verified .otp-code-slot{animation:otp-digit-accept .55s ease-out both;}
.email-login-form .otp-code.is-verified .otp-code-slot:nth-child(2){animation-delay:.08s}
.email-login-form .otp-code.is-verified .otp-code-slot:nth-child(3){animation-delay:.16s}
.email-login-form .otp-code.is-verified .otp-code-slot:nth-child(4){animation-delay:.24s}
.email-login-form .otp-code.is-verified .otp-code-slot:nth-child(5){animation-delay:.32s}
.email-login-form .otp-code.is-verified .otp-code-slot:nth-child(6){animation-delay:.4s}
.email-login-form .otp-code.is-verified .otp-code-success{opacity:1;transition:opacity .38s ease .9s;}
.email-login-form .otp-code-check{display:grid;place-items:center;width:38px;height:38px;border:1px solid #65aa72;border-radius:12px;background:#fff;box-shadow:0 0 18px #65aa7270;font-size:23px;animation:otp-check-arrive .45s ease-out .95s both;}
@keyframes otp-digit-accept{0%{transform:translateY(0);border-color:var(--line)}45%{transform:translateY(-5px);border-color:#65aa72;box-shadow:0 0 14px #65aa7260}100%{transform:translateY(0);border-color:#65aa72;box-shadow:0 0 7px #65aa7230}}
@keyframes otp-digit-arrive{from{transform:scale(.88);opacity:.5}to{transform:scale(1);opacity:1}}
@keyframes otp-check-arrive{from{transform:scale(.7);opacity:0}to{transform:scale(1);opacity:1}}
:root[data-theme="dark"] .email-login-form .otp-code-slot{background:#242629;color:#f5f5f2;}
:root[data-theme="dark"] .email-login-form .otp-code-success{background:radial-gradient(ellipse,#20492d,#202823 72%);color:#b7e4be;}
:root[data-theme="dark"] .email-login-form .otp-code-check{background:#1b2920;}
@media(prefers-reduced-motion:reduce){.email-login-form .otp-code-slot,.email-login-form .otp-code.is-verified .otp-code-slot,.email-login-form .otp-code-check{animation:none;transition:none}.email-login-form .otp-code-success,.email-login-form .otp-code.is-verified .otp-code-success{transition:none}}
