/* Contenedor del input + icono */
.password-wrapper {
    position: relative;
    width: 100%;
    display: inline-block;
}

    /* Input de contrase�a */
    .password-wrapper .password-input {
        width: 100%;
        padding-right: 2.8rem; /* espacio para el icono */
        box-sizing: border-box;
        border: 1px solid #ccc;
        border-radius: 6px;
        height: 40px;
        line-height: 40px;
        font-size: 1rem;
    }

    /* Bot�n del ojito */
    .password-wrapper .toggle-password-btn {
        position: absolute;
        top: 50%;
        right: 10px;
        transform: translateY(-50%);
        border: none;
        background: transparent;
        cursor: pointer;
        padding: 0;
        margin: 0;
        color: #444;
        font-size: 1.2rem;
        line-height: 1;
    }

        /* Opcional: efecto hover en el ojito */
        .password-wrapper .toggle-password-btn:hover {
            color: #000;
        }
/**/
.input-with-icon {
    position: relative;
}

.input-with-icon .input-container {
    position: relative;
    display: flex;
    align-items: center;
}

.input-with-icon .form-control {
    padding-right: 40px; /* Espacio para el ícono */
    flex: 1;
}

.input-with-icon .icon-eye,
.input-with-icon .icon-eye-slash {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none; /* Para que no interfiera con el input */
    z-index: 1;
}

/* Permitir eventos de clic cuando los iconos están dentro del botón */
.toggle-password-btn .icon-eye,
.toggle-password-btn .icon-eye-slash {
    pointer-events: auto;
    position: static;
    transform: none;
}
.toggle-password-btn {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: auto;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.toggle-password-btn:hover {
    opacity: 0.7;
}

.toggle-password-btn:focus {
    outline: none;
}

/* Asegúrate de que el contenedor sea relativo para el posicionamiento absoluto */
.input-container {
    position: relative;
}