/* Reusable component only. The surrounding theme/builder owns width and layout. */
.mm-login,
.mm-login input,
.mm-login button { font-family: inherit; }
.mm-login { min-width: 0; color: #172033; overflow-wrap: anywhere; line-height: 1.5; }
.mm-login.woocommerce form.login { margin: 0; padding: 0; border: 0; border-radius: 0; }
.mm-login.woocommerce .form-row { float: none; width: 100%; margin: 0 0 20px; padding: 0; }
.mm-login .form-row > label:not(.woocommerce-form-login__rememberme) { display: block; margin-bottom: 8px; font-size: 14px; font-weight: 600; }
.mm-login.woocommerce .input-text { box-sizing: border-box; width: 100%; min-width: 0; max-width: 100%; min-height: 48px; padding: 11px 13px; border: 1px solid #d9e1eb; border-radius: 8px; background: #fff; color: #172033; font-size: 16px; line-height: 1.5; box-shadow: none; }
.mm-login .input-text:focus { border-color: #176fda !important; outline: 2px solid #176fda !important; outline-offset: 2px !important; }
.mm-login .password-input { position: relative; display: block; width: 100%; }
.mm-login.woocommerce .password-input .input-text { padding-right: 88px; }
.mm-login.woocommerce button.show-password-input { position: absolute; top: 5px; right: 5px; display: grid; place-items: center; width: auto; min-width: 74px; height: 38px; margin: 0; padding: 0 8px; border: 0; border-radius: 5px; background: #edf4ff; color: #125bb6; font-size: 12px; line-height: 1; cursor: pointer; }
.mm-login.woocommerce button.show-password-input::before { content: "Mostrar"; font-family: inherit; font-weight: 600; }
.mm-login.woocommerce button.show-password-input.display-password::before { content: "Ocultar"; }
.mm-login.woocommerce button.show-password-input::after { display: none; }
.mm-login .woocommerce-form-login__rememberme { display: flex; align-items: center; gap: 8px; margin-bottom: 18px; font-size: 14px; font-weight: 400; }
.mm-login .woocommerce-form-login__rememberme input { flex: 0 0 auto; width: 16px; height: 16px; margin: 0; accent-color: #176fda; }
.mm-login.woocommerce form.login .woocommerce-form-login__submit { box-sizing: border-box; float: none; width: 100%; max-width: 100%; min-height: 48px; margin: 0; padding: 12px 18px; border: 1px solid #176fda; border-radius: 8px; background: #176fda !important; border-color: #176fda !important; color: #fff; font-size: 16px; font-weight: 600; line-height: 1.5; text-align: center; text-transform: none; white-space: normal; box-shadow: none; cursor: pointer; }
.mm-login.woocommerce form.login .woocommerce-form-login__submit:hover { border-color: #125bb6 !important; background: #125bb6 !important; color: #fff; }
.mm-login :is(button,a,input):focus-visible { outline: 2px solid #176fda !important; outline-offset: 2px !important; }
.mm-login .lost_password { margin: 0; text-align: center; font-size: 14px; }
.mm-login .lost_password a { color: #176fda; text-decoration: none; }
.mm-login .lost_password a:hover { color: #125bb6; text-decoration: underline; }
.mm-login.woocommerce :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) { box-sizing: border-box; width: 100%; margin: 0 0 22px; padding: 14px 16px; border: 1px solid #efd0d0; border-radius: 8px; background: #fff5f5; color: #8f2424; font-size: 14px; line-height: 1.5; list-style: none; overflow-wrap: anywhere; box-shadow: none; }
.mm-login.woocommerce :is(.woocommerce-error,.woocommerce-message,.woocommerce-info)::before { display: none; }
.mm-login.woocommerce :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) li { margin: 0; padding: 0; }
.mm-login.woocommerce :is(.woocommerce-message,.woocommerce-info) { border-color: #cadff8; background: #f1f7ff; color: #172033; }
