Потому что оно так работает.
Следите JS'ом событие input и проверяйте, заполнено ли поле...Если заполнено, добавляете класс со стилями аналогичными focus и active
Поверх картинки накладываются N блоков в ряд, где N = кол-ву изображений.
Соответственно, у каждого N блока в data атрибуте есть путь к своему изображению.
По наведению на этот блок, берем адрес изображения из data и подставляем в основной блок с изображением.