* feat: migrate from unplugin-vue-router to vue-router v5
* chore: update lock
* fix: resolve CI failures for vue-router v5 migration
- Fix ESLint import order in vite.config.ts
- Fix readonly routes type mismatch in src/main.ts by spreading routes array
- Upgrade vite to v7, vite-ssg to v28, beasties to v0.4, and other deps
- Update CI node matrix from [18.x, 20.x] to [20.x, 22.x]
* chore: upgrade vite-plugin-pwa and vitest
* fix: bump Node.js version to 22 for Iterator helpers support
vue-router v5 uses Iterator helpers (e.g. `seen.values().filter()`)
which require Node.js >= 22. Bump NODE_VERSION in netlify.toml from
20 to 22 to fix the Netlify build failure.