item => item === el ? item.show = !item.show : item // возвращает либо boolean, либо item. В результате если бы всё отработало, у вас бы все элементы превратились в true или false
Ошибки валидатора не редко имеют каскадный эффект.
11 - ругается на скрипт Яндекс Метрики)
Ответ есть в вопросе.
Можно задать dsiplay: flex, например, тогда не будет отступов. Или код в одну строку написать.