.elementor-97713 .elementor-element.elementor-element-2c31415f{--display:flex;}/* Start custom CSS for shortcode, class: .elementor-element-63f0207f *//* =========================================================
   🔐 ULTIMATE MEMBER PASSWORD RESET
   Shortcode: [ultimatemember_password]
   TuBabyShower Premium / Roboto
   Versión sin doble candado
========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;600;700;800;900&display=swap');

/* =========================================================
   BASE GENERAL
========================================================= */

.um-password,
.um-password *,
.um-password *::before,
.um-password *::after,
.um.um-password,
.um.um-password *,
.um.um-password *::before,
.um.um-password *::after,
.um-page-password,
.um-page-password *,
.um-page-password *::before,
.um-page-password *::after {
    box-sizing: border-box !important;
    font-family: "Roboto", Arial, Helvetica, sans-serif !important;
}

/* =========================================================
   CONTENEDOR PRINCIPAL
========================================================= */

.um-password,
.um.um-password,
.um-page-password .um,
body .um-password {
    width: 100% !important;
    max-width: 1080px !important;
    margin: 38px auto !important;
    padding: 42px 48px !important;

    position: relative !important;
    overflow: hidden !important;

    border-radius: 34px !important;
    border: 1px solid rgba(246, 205, 224, .88) !important;

    background:
        radial-gradient(circle at 8% 0%, rgba(255, 219, 237, .76), transparent 34%),
        radial-gradient(circle at 92% 8%, rgba(186, 230, 253, .64), transparent 36%),
        radial-gradient(circle at 50% 100%, rgba(246, 232, 255, .58), transparent 42%),
        linear-gradient(180deg, #ffffff 0%, #fff8fc 100%) !important;

    box-shadow:
        0 24px 64px rgba(190, 112, 152, .14),
        0 10px 24px rgba(95, 159, 202, .07),
        inset 0 1px 0 rgba(255,255,255,.95) !important;

    color: #4a3943 !important;
}

/* Decoración de corazón suave */
.um-password::before,
.um.um-password::before,
.um-page-password .um::before {
    content: "♡" !important;
    position: absolute !important;
    left: 44px !important;
    top: 34px !important;

    color: rgba(200, 95, 143, .10) !important;

    font-size: 78px !important;
    font-weight: 300 !important;
    line-height: 1 !important;

    pointer-events: none !important;
}

/* Decoración estrella suave */
.um-password::after,
.um.um-password::after,
.um-page-password .um::after {
    content: "✦" !important;
    position: absolute !important;
    right: 54px !important;
    bottom: 44px !important;

    color: rgba(167, 216, 255, .58) !important;

    font-size: 54px !important;
    line-height: 1 !important;

    pointer-events: none !important;
}

.um-password > *,
.um.um-password > *,
.um-page-password .um > * {
    position: relative !important;
    z-index: 2 !important;
}

/* =========================================================
   PANEL INTERIOR
========================================================= */

.um-password .um-form,
.um.um-password .um-form,
.um-page-password .um .um-form {
    width: 100% !important;
    max-width: 760px !important;
    margin: 0 auto !important;
    padding: 46px 54px !important;

    position: relative !important;
    overflow: hidden !important;

    border-radius: 30px !important;
    border: 1px solid rgba(246, 205, 224, .76) !important;

    background:
        radial-gradient(circle at 18% 0%, rgba(255,255,255,.88), transparent 34%),
        radial-gradient(circle at 88% 14%, rgba(210,235,255,.56), transparent 34%),
        linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,248,252,.84), rgba(238,248,255,.88)) !important;

    box-shadow:
        0 18px 42px rgba(190,112,152,.10),
        inset 0 1px 0 rgba(255,255,255,.92) !important;

    text-align: center !important;
}

/* =========================================================
   OCULTAR CANDADOS / ICONOS NATIVOS DUPLICADOS
========================================================= */

/* Oculta iconos nativos de Ultimate Member si aparecen junto al input */
.um-password .um-field-icon,
.um-password .um-icon-android-lock,
.um-password .um-icon-ios-locked,
.um-password .um-icon-ios-unlocked,
.um-password .um-icon-locked,
.um-password .um-icon-lock,
.um-password i[class*="lock"],
.um-password span[class*="lock"],
.um.um-password .um-field-icon,
.um.um-password .um-icon-android-lock,
.um.um-password .um-icon-ios-locked,
.um.um-password .um-icon-ios-unlocked,
.um.um-password .um-icon-locked,
.um.um-password .um-icon-lock,
.um.um-password i[class*="lock"],
.um.um-password span[class*="lock"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

/* Si UM deja padding reservado para el icono, lo normalizamos */
.um-password .um-field-area,
.um.um-password .um-field-area {
    position: relative !important;
}

.um-password .um-field-area input,
.um.um-password .um-field-area input {
    padding-left: 20px !important;
}

/* =========================================================
   MENSAJE SUPERIOR
   Aquí queda el único candado
========================================================= */

.um-password .um-field-block,
.um.um-password .um-field-block {
    max-width: 680px !important;
    margin: 0 auto 24px !important;
    padding: 22px 24px !important;

    position: relative !important;

    border-radius: 22px !important;
    border: 1px solid rgba(246, 205, 224, .78) !important;

    background:
        radial-gradient(circle at 18% 0%, rgba(255,255,255,.84), transparent 34%),
        linear-gradient(135deg, #ffffff 0%, #fff7fb 60%, #eef8ff 100%) !important;

    box-shadow:
        0 12px 28px rgba(190,112,152,.08),
        inset 0 1px 0 rgba(255,255,255,.92) !important;

    text-align: center !important;
}

/* ÚNICO CANDADO VISUAL */
.um-password .um-field-block::before,
.um.um-password .um-field-block::before {
    content: "🔐" !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 58px !important;
    height: 58px !important;

    margin: 0 auto 14px !important;

    border-radius: 18px !important;

    background:
        radial-gradient(circle at 25% 18%, rgba(255,255,255,.62), transparent 30%),
        linear-gradient(135deg, #f7c873 0%, #f39abc 100%) !important;

    color: #ffffff !important;

    font-size: 25px !important;
    line-height: 1 !important;

    box-shadow:
        0 16px 34px rgba(199,95,143,.22),
        inset 0 1px 0 rgba(255,255,255,.38) !important;
}

/* Texto del mensaje */
.um-password .um-field-block,
.um-password .um-field-block div,
.um-password .um-field-block p,
.um-password p,
.um.um-password .um-field-block,
.um.um-password .um-field-block div,
.um.um-password .um-field-block p,
.um.um-password p {
    color: #8a6377 !important;

    font-size: 17px !important;
    font-weight: 700 !important;
    line-height: 1.55 !important;
    text-align: center !important;
    letter-spacing: -.01em !important;
}

/* =========================================================
   CAMPOS / LABELS
========================================================= */

.um-password .um-field,
.um.um-password .um-field {
    width: 100% !important;
    max-width: 620px !important;
    margin: 0 auto 22px !important;
    padding: 0 !important;
}

.um-password .um-field-label,
.um.um-password .um-field-label {
    display: block !important;
    margin: 0 0 9px !important;
    text-align: left !important;
}

.um-password .um-field-label label,
.um.um-password .um-field-label label {
    color: #8f2d62 !important;

    font-size: 12px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
}

/* =========================================================
   INPUT
========================================================= */

.um-password input[type="text"],
.um-password input[type="email"],
.um-password input[type="password"],
.um.um-password input[type="text"],
.um.um-password input[type="email"],
.um.um-password input[type="password"],
.um-page-password .um input[type="text"],
.um-page-password .um input[type="email"],
.um-page-password .um input[type="password"] {
    width: 100% !important;
    min-height: 58px !important;

    padding: 16px 20px !important;

    border-radius: 18px !important;
    border: 1px solid rgba(246,205,224,.95) !important;

    background: rgba(255,255,255,.97) !important;
    color: #3f3138 !important;

    font-size: 15px !important;
    font-weight: 750 !important;
    line-height: 1.35 !important;

    outline: none !important;

    box-shadow:
        0 8px 20px rgba(199,118,158,.06),
        inset 0 1px 0 rgba(255,255,255,.92) !important;

    transition:
        border-color .22s ease,
        box-shadow .22s ease,
        background .22s ease,
        transform .22s ease !important;
}

.um-password input::placeholder,
.um.um-password input::placeholder {
    color: rgba(138, 99, 119, .58) !important;
    font-weight: 650 !important;
}

.um-password input:focus,
.um.um-password input:focus,
.um-page-password .um input:focus {
    border-color: #f39abc !important;
    background: #ffffff !important;
    transform: translateY(-1px) !important;

    box-shadow:
        0 0 0 4px rgba(243,154,188,.18),
        0 12px 28px rgba(199,118,158,.10),
        inset 0 1px 0 rgba(255,255,255,.95) !important;
}

/* =========================================================
   BOTÓN RESTABLECER
========================================================= */

.um-password input[type="submit"],
.um-password .um-button,
.um-password a.um-button,
.um.um-password input[type="submit"],
.um.um-password .um-button,
.um.um-password a.um-button,
.um-page-password .um input[type="submit"],
.um-page-password .um .um-button {
    appearance: none !important;
    -webkit-appearance: none !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    max-width: 360px !important;
    min-height: 56px !important;

    margin: 8px auto 0 !important;
    padding: 15px 28px !important;

    border: none !important;
    border-radius: 18px !important;

    background:
        radial-gradient(circle at 25% 18%, rgba(255,255,255,.45), transparent 30%),
        linear-gradient(135deg, #f39abc 0%, #c8a7ff 48%, #69bee2 100%) !important;

    color: #ffffff !important;

    font-size: 15px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    letter-spacing: .01em !important;
    text-decoration: none !important;

    box-shadow:
        0 16px 34px rgba(199,95,143,.26),
        inset 0 1px 0 rgba(255,255,255,.35) !important;

    cursor: pointer !important;

    transition:
        transform .22s ease,
        box-shadow .22s ease,
        filter .22s ease !important;
}

.um-password input[type="submit"]:hover,
.um-password .um-button:hover,
.um-password a.um-button:hover,
.um.um-password input[type="submit"]:hover,
.um.um-password .um-button:hover,
.um.um-password a.um-button:hover,
.um-page-password .um input[type="submit"]:hover,
.um-page-password .um .um-button:hover {
    transform: translateY(-2px) !important;
    filter: saturate(1.08) brightness(1.03) !important;

    box-shadow:
        0 20px 44px rgba(199,95,143,.34),
        inset 0 1px 0 rgba(255,255,255,.42) !important;
}

.um-password input[type="submit"]:active,
.um-password .um-button:active,
.um.um-password input[type="submit"]:active,
.um.um-password .um-button:active {
    transform: scale(.985) !important;
}

/* =========================================================
   MENSAJES / ERRORES / ÉXITO
========================================================= */

.um-password .um-notice,
.um-password .um-field-error,
.um-password .um-error,
.um-password .um-message,
.um.um-password .um-notice,
.um.um-password .um-field-error,
.um.um-password .um-error,
.um.um-password .um-message,
.um-page-password .um .um-notice,
.um-page-password .um .um-field-error,
.um-page-password .um .um-error,
.um-page-password .um .um-message {
    max-width: 620px !important;
    margin: 14px auto !important;
    padding: 14px 16px !important;

    border-radius: 16px !important;

    font-size: 13px !important;
    font-weight: 750 !important;
    line-height: 1.45 !important;
    text-align: center !important;
}

.um-password .um-notice,
.um-password .um-message,
.um.um-password .um-notice,
.um.um-password .um-message {
    background: #fff7fb !important;
    color: #8f2d62 !important;
    border: 1px solid rgba(246,205,224,.85) !important;
}

.um-password .um-field-error,
.um-password .um-error,
.um.um-password .um-field-error,
.um.um-password .um-error {
    background: #fff0f3 !important;
    color: #b44363 !important;
    border: 1px solid rgba(244, 128, 157, .35) !important;
}

/* =========================================================
   LINKS INFERIORES SI EXISTEN
========================================================= */

.um-password a,
.um.um-password a,
.um-page-password .um a {
    color: #69bee2 !important;
    font-weight: 850 !important;
    text-decoration: none !important;
    transition: color .2s ease !important;
}

.um-password a:hover,
.um.um-password a:hover,
.um-page-password .um a:hover {
    color: #8f2d62 !important;
}

/* =========================================================
   LIMPIEZA DE ESTILOS NATIVOS UM
========================================================= */

.um-password .um-clear,
.um.um-password .um-clear {
    clear: both !important;
}

.um-password .um-col-alt,
.um.um-password .um-col-alt {
    margin-top: 8px !important;
    text-align: center !important;
}

.um-password .um-half,
.um.um-password .um-half {
    width: 100% !important;
    float: none !important;
    text-align: center !important;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 900px) {

    .um-password,
    .um.um-password,
    .um-page-password .um,
    body .um-password {
        max-width: 100% !important;
        margin: 28px auto !important;
        padding: 28px 20px !important;
        border-radius: 28px !important;
    }

    .um-password .um-form,
    .um.um-password .um-form,
    .um-page-password .um .um-form {
        max-width: 100% !important;
        padding: 34px 24px !important;
        border-radius: 24px !important;
    }

    .um-password .um-field-block,
    .um.um-password .um-field-block {
        padding: 18px 18px !important;
        border-radius: 20px !important;
    }

    .um-password .um-field-block,
    .um-password .um-field-block div,
    .um-password .um-field-block p,
    .um-password p,
    .um.um-password .um-field-block,
    .um.um-password .um-field-block div,
    .um.um-password .um-field-block p,
    .um.um-password p {
        font-size: 15px !important;
    }
}

@media (max-width: 430px) {

    .um-password,
    .um.um-password,
    .um-page-password .um,
    body .um-password {
        margin: 22px auto !important;
        padding: 20px 12px !important;
        border-radius: 24px !important;
    }

    .um-password::before,
    .um.um-password::before,
    .um-page-password .um::before {
        left: 20px !important;
        top: 20px !important;
        font-size: 52px !important;
    }

    .um-password::after,
    .um.um-password::after,
    .um-page-password .um::after {
        right: 24px !important;
        bottom: 24px !important;
        font-size: 38px !important;
    }

    .um-password .um-form,
    .um.um-password .um-form,
    .um-page-password .um .um-form {
        padding: 28px 16px !important;
        border-radius: 22px !important;
    }

    .um-password .um-field-block::before,
    .um.um-password .um-field-block::before {
        width: 50px !important;
        height: 50px !important;
        border-radius: 16px !important;
        font-size: 22px !important;
    }

    .um-password .um-field-block,
    .um-password .um-field-block div,
    .um-password .um-field-block p,
    .um-password p,
    .um.um-password .um-field-block,
    .um.um-password .um-field-block div,
    .um.um-password .um-field-block p,
    .um.um-password p {
        font-size: 13.5px !important;
    }

    .um-password input[type="text"],
    .um-password input[type="email"],
    .um-password input[type="password"],
    .um.um-password input[type="text"],
    .um.um-password input[type="email"],
    .um.um-password input[type="password"] {
        min-height: 52px !important;
        padding: 14px 15px !important;
        border-radius: 16px !important;
        font-size: 14px !important;
    }

    .um-password input[type="submit"],
    .um-password .um-button,
    .um.um-password input[type="submit"],
    .um.um-password .um-button {
        max-width: 100% !important;
        min-height: 52px !important;
        border-radius: 16px !important;
        font-size: 14px !important;
    }
}


/* =========================================================
   FIX FINAL - ELIMINAR DOBLE CANDADO
   Shortcode: [ultimatemember_password]
   Deja solo 1 candado premium
========================================================= */

/* 1. Elimina pseudo-iconos duplicados en el formulario */
.um-password .um-form::before,
.um-password .um-form::after,
.um.um-password .um-form::before,
.um.um-password .um-form::after,
.um-page-password .um .um-form::before,
.um-page-password .um .um-form::after {
    content: none !important;
    display: none !important;
}

/* 2. Elimina iconos nativos de Ultimate Member */
.um-password .um-field-icon,
.um-password .um-field-area i,
.um-password .um-field-area span[class*="icon"],
.um-password .um-field-area span[class*="lock"],
.um-password .um-icon-android-lock,
.um-password .um-icon-ios-locked,
.um-password .um-icon-ios-unlocked,
.um-password .um-icon-locked,
.um-password .um-icon-lock,
.um-password i[class*="lock"],
.um-password span[class*="lock"],
.um.um-password .um-field-icon,
.um.um-password .um-field-area i,
.um.um-password .um-field-area span[class*="icon"],
.um.um-password .um-field-area span[class*="lock"],
.um.um-password .um-icon-android-lock,
.um.um-password .um-icon-ios-locked,
.um.um-password .um-icon-ios-unlocked,
.um.um-password .um-icon-locked,
.um.um-password .um-icon-lock,
.um.um-password i[class*="lock"],
.um.um-password span[class*="lock"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

/* 3. Elimina cualquier candado que se haya creado antes del input */
.um-password .um-field::before,
.um-password .um-field::after,
.um.um-password .um-field::before,
.um.um-password .um-field::after {
    content: none !important;
    display: none !important;
}

/* 4. El bloque del mensaje sí conserva un único candado */
.um-password .um-field-block,
.um.um-password .um-field-block {
    position: relative !important;
    max-width: 680px !important;
    margin: 0 auto 24px !important;
    padding: 22px 24px !important;
    text-align: center !important;

    border-radius: 22px !important;
    border: 1px solid rgba(246, 205, 224, .78) !important;

    background:
        radial-gradient(circle at 18% 0%, rgba(255,255,255,.84), transparent 34%),
        linear-gradient(135deg, #ffffff 0%, #fff7fb 60%, #eef8ff 100%) !important;

    box-shadow:
        0 12px 28px rgba(190,112,152,.08),
        inset 0 1px 0 rgba(255,255,255,.92) !important;
}

/* 5. ÚNICO CANDADO visible */
.um-password .um-field-block::before,
.um.um-password .um-field-block::before {
    content: "🔐" !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 58px !important;
    height: 58px !important;

    margin: 0 auto 14px !important;

    border-radius: 18px !important;

    background:
        radial-gradient(circle at 25% 18%, rgba(255,255,255,.62), transparent 30%),
        linear-gradient(135deg, #f7c873 0%, #f39abc 100%) !important;

    color: #ffffff !important;

    font-size: 25px !important;
    line-height: 1 !important;

    box-shadow:
        0 16px 34px rgba(199,95,143,.22),
        inset 0 1px 0 rgba(255,255,255,.38) !important;
}

/* 6. Asegura que no haya otro pseudo-icono después */
.um-password .um-field-block::after,
.um.um-password .um-field-block::after {
    content: none !important;
    display: none !important;
}

/* 7. Corrige padding del input cuando se elimina el icono nativo */
.um-password input[type="text"],
.um-password input[type="email"],
.um-password input[type="password"],
.um.um-password input[type="text"],
.um.um-password input[type="email"],
.um.um-password input[type="password"] {
    padding-left: 20px !important;
}


/* =========================================================
   FIX FINAL - QUITAR CANDADO DE LA VENTANA SUPERIOR
   Dejar SOLO 1 candado en la tarjeta interior
========================================================= */

/* 1) APAGA cualquier pseudo-icono del contenedor exterior */
.um-password::before,
.um-password::after,
.um-password .um::before,
.um-password .um::after,
.um-password .um-form::before,
.um-password .um-form::after,
.um-password form::before,
.um-password form::after,
.um.um-password::before,
.um.um-password::after,
.um.um-password .um::before,
.um.um-password .um::after,
.um.um-password .um-form::before,
.um.um-password .um-form::after,
.um.um-password form::before,
.um.um-password form::after {
    content: none !important;
    display: none !important;
    background: none !important;
    box-shadow: none !important;
}

/* 2) APAGA iconos extra en wrappers superiores */
.um-password .um-col-alt::before,
.um-password .um-col-alt::after,
.um-password .um-col-alt-b::before,
.um-password .um-col-alt-b::after,
.um-password .um-left::before,
.um-password .um-left::after,
.um-password .um-right::before,
.um-password .um-right::after,
.um-password .um-account-side::before,
.um-password .um-account-side::after,
.um-password .um-account-main::before,
.um-password .um-account-main::after {
    content: none !important;
    display: none !important;
}

/* 3) MANTENER SOLO el icono de la tarjeta del mensaje */
.um-password .um-field-block,
.um.um-password .um-field-block {
    position: relative !important;
    max-width: 760px !important;
    margin: 0 auto 28px !important;
    padding: 28px 28px 34px !important;
    text-align: center !important;
    border-radius: 24px !important;
    border: 1px solid rgba(246,205,224,.78) !important;
    background:
        radial-gradient(circle at 18% 0%, rgba(255,255,255,.88), transparent 34%),
        linear-gradient(135deg, #fffdfd 0%, #fff8fb 58%, #eef8ff 100%) !important;
    box-shadow:
        0 14px 30px rgba(190,112,152,.08),
        inset 0 1px 0 rgba(255,255,255,.92) !important;
}

/* ESTE ES EL ÚNICO CANDADO QUE DEBE QUEDAR */
.um-password .um-field-block::before,
.um.um-password .um-field-block::before {
    content: "🔐" !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 58px !important;
    height: 58px !important;
    margin: 0 auto 16px !important;
    border-radius: 18px !important;
    background:
        radial-gradient(circle at 25% 18%, rgba(255,255,255,.62), transparent 30%),
        linear-gradient(135deg, #f7c873 0%, #f39abc 100%) !important;
    color: #fff !important;
    font-size: 25px !important;
    line-height: 1 !important;
    box-shadow:
        0 16px 34px rgba(199,95,143,.22),
        inset 0 1px 0 rgba(255,255,255,.38) !important;
}

/* 4) NO permitir otro icono después */
.um-password .um-field-block::after,
.um.um-password .um-field-block::after {
    content: none !important;
    display: none !important;
}/* End custom CSS */