.login-form-side { --wd-side-hidden-w: min(375px, 90vw) !important; }
.login-form-side:has(.vivo-email-instruction-card) { --wd-side-hidden-w: min(586px, 94vw) !important; }
.login-form-side { box-sizing:border-box; max-height:100vh; overflow-y:auto; overflow-x:hidden; }
.login-form-side .login-form { padding-bottom:24px!important; }
.login-form-side .create-account-question { display:none !important; }
.wd-registration-page .col-register,
.wd-registration-page .col-register-text { display:none !important; }
.wd-registration-page .col-login { flex: 1 1 100% !important; max-width:100% !important; }
.woocommerce-form-login:not(.vivo-otp-active) .vivo-otp-panel { display:none !important; }
.woocommerce-form-login.vivo-otp-active > :not(.vivo-otp-panel):not(.vivo-otp-otp-link):not(.vivo-login-helpdesk) { display:none !important; }
.vivo-otp-otp-link { display:block; width:auto !important; margin:8px auto 12px !important; }
.vivo-otp-password-link,.vivo-otp-otp-link { display:none !important; }
.woocommerce-form-login.vivo-otp-active .vivo-otp-otp-link { display:none; }
.woocommerce-form-login .vivo-otp-panel { margin-bottom:10px; }
.vivo-otp-step > label,.vivo-otp-label { display:block; margin-bottom:8px; font-weight:600; }
.vivo-otp-email { width:100%; margin-bottom:14px; }
.vivo-otp-step button { width:100%; margin-bottom:12px; }
.vivo-otp-switch,.vivo-otp-change,.vivo-otp-resend-button { appearance:none !important; -webkit-appearance:none !important; background:transparent !important; border:0 !important; color:inherit; text-decoration:underline; box-shadow:none !important; padding:4px 0 !important; font-size:13px; font-weight:400; line-height:1.4; text-transform:none !important; cursor:pointer; }
.vivo-otp-help { font-size:13px; line-height:1.55; margin-bottom:16px; }
.vivo-otp-help small { color:#666; font-size:12px; }
.vivo-otp-digits { display:flex; gap:7px; margin:0 0 18px; }
.vivo-otp-digits input { flex:1; min-width:0; height:44px; padding:0; text-align:center; font-size:20px; }
.vivo-otp-resend { font-size:12px; text-align:center; margin:0 0 4px; }
.vivo-otp-resend-button:disabled { opacity:.5; cursor:not-allowed; text-decoration:none; }
.vivo-otp-message { font-size:13px; }
.vivo-otp-message.is-error { color:#b32d2e; }
.vivo-otp-message.is-unregistered { margin:14px 0 8px; padding:12px 14px; border:1px solid #e5a4a4; border-radius:6px; background:#fff1f1; color:#a32121; text-align:center; font-size:13px; line-height:1.5; }
.vivo-create-account-from-login { color:inherit; font-weight:600; text-decoration:underline; }
.vivo-login-helpdesk { display:block !important; margin:17px 0 4px; padding:17px 10px 22px; border:1px solid #e0e5eb; border-radius:12px; background:#fff; box-shadow:0 4px 14px rgba(20,40,70,.05); font-size:12px; line-height:1.4; }
.vivo-helpdesk-heading { display:flex; align-items:center; justify-content:center; gap:8px; margin-bottom:11px; text-align:left; }
.vivo-helpdesk-heading strong,.vivo-helpdesk-heading small { display:block; }
.vivo-helpdesk-heading strong { font-size:13px; }
.vivo-helpdesk-heading small { margin-top:2px; color:#777; font-size:11px; }
.vivo-helpdesk-badge { display:inline-flex; align-items:center; justify-content:center; width:22px; height:22px; border:1px solid #111; border-radius:50%; font-size:13px; font-weight:700; }
.vivo-helpdesk-links { display:flex; width:100%; justify-content:center; align-items:stretch; gap:8px; }
.vivo-helpdesk-links a { display:flex; min-width:0; min-height:48px; align-items:center; justify-content:flex-start; gap:6px; padding:7px 9px; border:1px solid rgba(0,0,0,.12); border-radius:8px; text-decoration:none !important; color:inherit; background:#fff; box-sizing:border-box; }
.vivo-helpdesk-links a:first-child,
.vivo-helpdesk-links a:last-child { flex:1 1 auto; }
.vivo-helpdesk-links a:hover { border-color:#111; }
.vivo-helpdesk-links b { display:block; max-width:100%; overflow-wrap:anywhere; font-size:11px; font-weight:600; }
.vivo-helpdesk-links a > span:last-child { min-width:0; }
.vivo-helpdesk-whatsapp { color:#168b46 !important; }
.vivo-whatsapp-icon { flex:0 0 auto; width:19px; height:19px; fill:#25D366; }
.vivo-email-icon { display:inline-flex; align-items:center; justify-content:center; width:19px; height:19px; border:1px solid #555; border-radius:50%; font-size:12px; font-weight:700; }
.vivo-email-instruction-card { display:block; margin:0 0 12px; padding:19px 18px 17px; border:1px solid #c8dcf4; border-top:4px solid #10269b; border-radius:16px; background:linear-gradient(135deg,#fff 0%,#f1f8ff 100%); box-shadow:0 10px 28px rgba(16,38,155,.12); color:#183b56; font-family:inherit; text-align:center; }
.vivo-email-card-icon { display:flex; align-items:center; justify-content:center; width:38px; height:38px; margin:0 auto 9px; border-radius:11px; background:linear-gradient(145deg,#2547c8,#10269b); box-shadow:0 5px 12px rgba(16,38,155,.22); color:#fff; font-size:18px; }
.vivo-email-card-content { min-width:0; width:100%; }
.vivo-email-card-kicker { display:inline-block; padding:4px 7px; border-radius:12px; background:#e8efff; color:#3157aa; font-size:9px; font-weight:800; letter-spacing:.08em; }
.vivo-email-card-content h3 { margin:15px 0 7px; font-weight: 600; color:#10269b; font-size:17px; text-transform: uppercase; letter-spacing:-.01em; line-height:1.25; }
.vivo-email-card-content p { margin:7px 20px; font-size:13px; line-height:1.48; }
.vivo-email-card-guides { display:grid; grid-template-columns:1fr 1fr; gap:9px; margin:12px 0 13px; }
.vivo-email-card-guides > div { min-height:64px; padding:10px; border:1px solid #f1dfb4; border-radius:10px; background:linear-gradient(135deg,#fffdf7,#fff8e8); color:#614d1f; box-sizing:border-box; text-align:center; }
.vivo-email-card-guides b,.vivo-email-card-guides span { display:block; font-size:12px; line-height:1.4; }
.vivo-email-card-guides span { margin-top:5px; color:#7b6d4e; }
.vivo-email-resend-row { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:6px; }
.vivo-email-resend-row > span { color:#52677e; }
.vivo-email-resend { width:auto!important; margin:0!important; padding:9px 13px!important; border:0!important; border-radius:7px!important; background:linear-gradient(135deg,#1597bd,#087b9f)!important; box-shadow:0 4px 10px rgba(8,123,159,.18)!important; color:#fff!important; font-size:12px!important; font-weight:700!important; letter-spacing:.01em; }
.vivo-email-resend:disabled { opacity:.55; cursor:not-allowed; }
.vivo-email-instruction-card details { margin-top:10px; border:1px solid #dbe5ef; border-radius:8px; background:#fff; font-size:11px; text-align:center; }
.vivo-email-instruction-card summary { padding:9px; color:#203b70; cursor:pointer; font-weight:700; }
.vivo-email-instruction-card details p { padding:0 9px 9px; color:#52677e; }
.vivo-email-card-lock { margin-top:9px; padding:8px 9px; color:#10269b; font-size:13px; font-weight:700; }
.vivo-email-instruction-card + .vivo-otp-change { margin:0 auto; display:block; }
@media (max-width:420px) { .vivo-email-instruction-card { padding:14px 11px; } .vivo-email-card-guides { grid-template-columns:1fr; } .vivo-email-resend-row { display:block; } .vivo-email-resend { display:block; margin-top:6px!important; width:100%!important; } }
@media (max-width:520px) { .login-form-side:has(.vivo-email-instruction-card) { --wd-side-hidden-w: min(94vw, 586px) !important; } }
@media (max-width:420px) { .vivo-helpdesk-links { gap:5px; } .vivo-helpdesk-links a { min-width:0; padding:7px 6px; } .vivo-helpdesk-links b { font-size:9px; } }
@media (max-width:420px) { .vivo-otp-digits { gap:4px; } .vivo-otp-digits input { height:40px; font-size:18px; } }

.wd-registration-page .woocommerce-form-login.hidden-form{ max-width:100%; }