.input-error {
    border: 1px solid #FF1313 !important;
}

.input-error:focus {
    outline: none;
    border: 1px solid #FF1313 !important;
    box-shadow: 0 0 5px rgba(255, 19, 19, 0.5);
}

.invalid-feedback {
    display: flex;
    align-items: center;
    color: #FF1313;
    font-size: 0.8rem;
    margin-top: 4px;
    padding-left: 0px;         /* quita el padding extra */
    margin-left: 0.25rem;    /* ajusta para alinearlo con el input */
    font-style: italic;
}


.invalid-feedback i {
    margin-right: 6px;       /* espacio entre ícono y texto */
}


.password-addon {
    position: absolute;         /* necesario para posicionar respecto al contenedor */
    top: 50%;                   /* verticalmente al 50% del contenedor */
    right: 0;                   /* pegado al borde derecho */
    transform: translateY(-50%);/* centra exactamente */
    padding: 0.25rem;           /* tamaño interno del botón */
    height: auto;
    line-height: 1;
    color: #6c757d;             /* gris similar a placeholder */
    background: transparent;     /* sin fondo */
    border: none;               /* sin borde */
    right: 0.5rem;   
}


/* boton inicio */
.boton-inicio-login {
    position: relative;
    width: 100%;
    height: auto;
    border: none;
    background: none;
    cursor: pointer;
    display: block;
}

.boton-fondo-login {
    width: 100%;
    max-height: 50px;
    border-radius: 32px;
    object-fit: cover;
    display: block;
}

.boton-texto-login {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    font-weight: 600;
    font-size: 18px;
    letter-spacing: 0.5px;
    pointer-events: none; /* evita bloquear el clic */
    font-family: 'Open Sans', sans-serif;
}