Почему во Vue нельзя просто менять DOM через document.querySelector в обычном сценарии?
Ответ:
Потому что DOM должен быть следствием состояния. Если напрямую менять DOM, Vue может перерисовать компонент и стереть ручные изменения. Исключения бывают для интеграции сторонних библиотек, focus management и измерений, но они должны жить в lifecycle hooks и иметь cleanup.