As you've suggested, the best way to override the 'Login.vue' page is via your own component theme, and not editing core files (which is the answer provided by the OP).
To override a page (E.g): 'core_auth/src/components/pages/login.vue'
use
'theme_mytheme/src/pages/overrides/core_auth/login.vue'
to override a component (E.g): 'core_auth/src/components/login/LoginForm.vue'
use
'theme_mytheme/src/components/overrides/core_auth/login/LoginForm.vue'
Remember to build the files via NPM ('npm tui-build') after creating these paths.