.card-login {
    width: 45rem;
    padding: 3.8rem;
    border-radius: 12px;
    background: white;
}

.entryarea {
    position: relative;
    line-height: 50px;
    height: 50px;
    background-color: #fff;
}

.form .boton-primario {
    width: 100%;
    border-radius: 8px;
    padding: 15px 0;
}

.form .entryarea {
    margin-top: 10px;
}

.form a.boton.boton-ver-detalles span {
    font-family: "SF Pro Text"; font-weight: 400;
}

.mt-14 {
    margin-top: 14px;
    padding-left: 0px;
}

.text-p-login {
    color: #000000a8;
    letter-spacing: normal;
    padding-bottom: 2.1rem;
}

.form .mt-14 a {
    margin: calc(0.5 * 1.4rem);
}
.position-relative {
    position: relative;
}
.form a:hover span {
    text-decoration: underline !important;
    text-underline-offset: .3rem !important;
    text-decoration-thickness: .1rem !important;
    transition: text-decoration-thickness ease .1s !important;
}

.card-login h2 {
    padding-bottom: 0.5rem;
    margin: 0;
    line-height: initial;
}

#login-cx2, #pass-cx2 {
    background-color: var(--gray4);
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 60vh;
    width: 100%;
}

.form-login-2 {
    height: 49px;
    border: 1px solid #dedede;
    border-radius: 8px;
    padding: 13px 11px;
    width: 100%;
    background-color: #fff;
    background-image: none;
    color: #000;
    font-family: "SF Pro Text"; font-weight: 400;
    transition: border-color .25s ease-in-out, box-shadow .25s ease-in-out;
}

    .form-login-2:focus {
        outline-color: var(--bblue);
        box-shadow: none;
        border: 2px solid var(--bblue);
    }
button[disabled].form-login-2, html input[disabled] {
    cursor: default;
    background-color  : #f5f5f5;
    opacity: .6;
}
.text-label {
    position: absolute;
    z-index: -1;
    top: calc((max(calc(1.2rem + calc(1.4rem * 1.5)), calc(1.2rem + 1.4rem + 1.1rem * 2)) - 1.4rem - calc(1.2rem * 1.5)) / 2 - 1px);
    left: calc(1.1rem + 1px);
    color: #000000a8;
    font-size: 1.2rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    opacity: 0;
    display: block;
    -webkit-transform: translateY(0.2142857143em);
    transform: translateY(0.2142857143em);
    -webkit-transition: opacity 200ms ease-in-out, -webkit-transform 200ms ease-in-out;
    transition: opacity 200ms ease-in-out, -webkit-transform 200ms ease-in-out;
    transition: opacity 200ms ease-in-out, transform 200ms ease-in-out;
    transition: opacity 200ms ease-in-out, transform 200ms ease-in-out, -webkit-transform 200ms ease-in-out;
    font-family: "SF Pro Text"; font-weight: 400;
    letter-spacing:-0.02rem;
}

.form-login-2:not(:placeholder-shown):not(.text--label-outside) {
    padding-top: 21px;
    padding-bottom: 6px;
    
}

.form-login-2::placeholder {
    color: #707070;
    font-family: "SF Pro Text"; font-weight: 400;
    font-size: 1.4rem;
}

.form-login-2:not(:placeholder-shown):not(.text--label-outside) + .text-label {
    opacity: 1;
    z-index: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

.form div.position-relative {
    margin-bottom: 1.4rem;
}


p.textfield-error {
    color: var(--rred);
    padding-top: 5px;
    letter-spacing: initial;
}

#msj_error_email, #msj_error_email2, #SelectGenero, #msj_error_rfc, #msj_error_rfcF, #msj_errorF_email, #msj_error_rfcM, #msj_errorMo_email, #msj_error_Lcop, #edit_msj_error_Lcop, #msj_error_LcopFF, #msj_error_LcopFM, #edit_msj_error_LcopFF, #edit_msj_error_LcopFM, #mensajeError, #RFPF, #CFDIpf, #Colonia_CV, #RFPM, #CFDIpm, #edit_RFPF, #edit_CFDIpf, #edit_Colonia_CV, #edit_RFPM, #edit_CFDIpf, #edit_Colonia_CVM {
    color: var(--rred);
    padding-top: 5px;
    letter-spacing: initial;
}


.contrasena-tex {
    color: var(--gray2);
    padding-top: 5px;
    letter-spacing: initial;
    font-size: 12px;
}

.cuentaCX2.card-login {
    width: 80rem;
    margin: 3rem 0;
}

.crearCuenta {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}

    .crearCuenta div.position-relative {
        margin-bottom: 0;
    }

    .crearCuenta .cbsc__cbs {
        width: initial;
    }

    .crearCuenta .radiogeneros {
        justify-content: normal;
        gap: 15px;
    }

    .crearCuenta .cbsrtc__cbsr {
        margin-right: 5px;
    }

input[type=date]:in-range::-webkit-datetime-edit-day-field,
input[type=date]:in-range::-webkit-datetime-edit-month-field,
input[type=date]:in-range::-webkit-datetime-edit-text,
input[type=date]:in-range::-webkit-datetime-edit-year-field {
    color: initial;
}

input::placeholder {
    color: #707070;
}

label.text-label-select {
    position: absolute;
    top: calc((max(calc(1.2rem + calc(1.4rem * 1.5)), calc(1.2rem + 1.4rem + 1.1rem * 2)) - 1.4rem - calc(1.2rem * 1.5)) / 2 - 1px);
    left: calc(1.1rem + 1px);
    color: #000000a8;
    font-size: 1.2rem;
    font-family: "SF Pro Text" !important; font-weight: 400 !important;
}

.row-cuenta {
    position: absolute;
    margin-top : 17px;
    right: 15px;
    pointer-events: none;
}

.form-select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding-right: 40px;
    background-color: #fff;
    color: #000;
    border: 1px solid #dedede;
    transition: none;
}

.a8x1wuo {
    height: calc(1.4rem*1.28571);
    min-height: calc(1.4rem*1.28571);
    min-width: calc(1.4rem*1.28571);
    width: calc(1.4rem*1.28571);
    stroke: #000;
    cursor: pointer;
}

.card-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    justify-content: center;
    margin-top: 10px;
}

.cardCuenta {
    background-color: white;
    padding: 3rem;
    width: 100%;
    text-align: center;
    border-radius: 12px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
}

    .cardCuenta:hover {
        transform: scale(1.05);
        box-shadow: 0 8px 16px rgba(0,0,0,0.2);
    }

.cuenta-btn {
    width: 100%;
    border-radius: 8px;
    padding: 15px 0;
}

.ulcrearcuenta li {
    letter-spacing: -0.02rem !important;
    font-family: "SF Pro Text"; font-weight: 500;
}
.textarea-label {
    background: white;
    width: 90%;
    top: calc(-1px + (0.5 * (-4.3rem + max(3.3rem, 4.8rem))));
    padding-top:5px;
}
.radiogeneros {
    display: inline-flex;
    justify-content: space-between;
    width: 100%;
}
.textfield--error,
.textfield--error:focus {
    border: 2px solid var(--rred) !important;
    outline: none !important;
    box-shadow: none !important;
}

    .textfield--error.labelcuenta {
        padding: 10px 10px 5px 0 !important;
    }

p#errorG {
    line-height: initial;
}

.lista-crearcuenta li {
    font-family: "SF Pro Text"; font-weight: 400;
    font-size: 14px;
    font-weight: inherit;
    color: var(--rred) !important;
    padding-top: 5px;
    letter-spacing: initial;
}

ul.lista-crearcuenta {
    list-style: none;
    padding-left: 0;
}


@media (max-width:675px) {
    .cuentaCX2.card-login {
        padding: 2rem;
        width: 100%;
        margin: 3.5rem 0px;
    }

    .crearCuenta {
        grid-template-columns: repeat(1, 1fr);
        gap: 14px;
    }

    .cuentaCX2.card-login {
        padding: 1.8rem;
    }

    .cardCuenta {
        padding: 1rem;
    }

    ul.ulcrearcuenta li svg {
        width: 14px;
        height: auto;
    }

    .ulcrearcuenta li {
        font-size: 12px !important;
    }
}

@media (max-width:540px) {
    .card-container {
        grid-template-columns: repeat(1, 1fr);
    }

    .ulcrearcuenta li {
        font-size: 14px !important;
    }

    .cardCuenta {
        padding: 3rem;
    }

    .cuentaCX2.card-login {
        padding: 3rem;
    }

    ul.ulcrearcuenta li svg {
        width: 20px;
        height: auto;
    }
}
