/* OTP form container */
.eotp-container {
    max-width: 420px;
    padding: 20px;
    margin: 24px auto;
    border: 1px solid #eee;
    border-radius: 8px;
    background: #fff;
    box-sizing: border-box;
}
.eotp-title { text-align:center; margin-top:0; margin-bottom:12px; font-size:1.2rem; }

/* email input */
.eotp-form label { display:block; margin-bottom:6px; font-weight:600; }
.eotp-form input[type="email"] {
    width:100%;
    padding:10px;
    margin-bottom:12px;
    box-sizing:border-box;
    border:1px solid #ddd;
    border-radius:4px;
}

/* Actions wrapper centers the button */
.eotp-actions { text-align:center; margin-top:8px; }
.eotp-btn {
    padding:10px 20px;
    border-radius:6px;
    cursor:pointer;
    display:inline-block;
}

/* Use theme's .button but provide minimal fallback */
.eotp-btn.button {
    border: 1px solid transparent;
    width:100%;
}
button.eotp-btn.button {
    width: 100% !important;
}

/* Disabled state style (if theme doesn't style it well) */
.eotp-btn.eotp-disabled,
.eotp-btn[disabled] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* OTP layout */
.eotp-otp-wrap {
    display:flex;
    justify-content:space-between;
    gap:8px;
    margin: 10px 0 6px;
    width:100%;
    box-sizing:border-box;
}

/* Responsive digit boxes — flex lets them shrink on small screens */
.eotp-digit {
    flex: 1 1 0;
    min-width: 40px;
    max-width: 56px;
    height:48px;
    text-align:center;
    font-size:20px;
    border:1px solid #ccc;
    border-radius:8px;
    box-sizing:border-box;
    padding:6px;
    outline:none;
    -webkit-appearance: none;
    appearance: none;
    background:#fff;
    color:inherit;
    font-weight:600;
}

/* Focus state */
.eotp-digit:focus {
    border-color: #0073aa;
    box-shadow: 0 0 0 2px rgba(0,115,170,0.08);
}

/* Message area & resend */
.eotp-msg { margin-top:12px; font-size:0.95rem; min-height:1.2em; text-align:center; }
.eotp-resend { text-align:center; margin-top:8px; }
.eotp-resend a { color:inherit; text-decoration:underline; }

/* Smaller screens adjustments */
@media (max-width:420px) {
    .eotp-container { padding:12px; margin:12px; }
    .eotp-otp-wrap { gap:6px; }
    .eotp-digit { min-width:34px; height:44px; font-size:18px; padding:5px; }
}
/* Very small screens */
@media (max-width:360px) {
    .eotp-digit { min-width:32px; height:42px; font-size:17px; }
}

div#eotp-otp-wrap {
    display: flex !important;
    gap: 10px !important;
}
input.eotp-digit {
    padding: 0 !important;
}