Files
carvalho-finances/apps/web/src/App.vue
T
Mlcavalho1andClaude Sonnet 4.6 c327d5c970 feat(#29): Arcade Neon design system — visual overhaul completo
Implementa o sistema visual Arcade Neon do neon-handoff/ em todo o app:

- tokens.css: tokens --fc-*, utilities (fc-pixel/mono/body/glow), form inputs/buttons globais
- AppHud.vue: HUD persistente com LV/XP/META + nav chips por rota
- BottomNav.vue: nav mobile com 5 rotas
- NeonPanel.vue, CharacterSprite.vue, XPBar.vue, HUDStat.vue: componentes base
- MonthSwitcher.vue, LevelUpModal.vue
- HomeView, CharacterView, TransactionsView, ImportView, CategoriesView,
  AccountsView, SettingsView: reescritos com Arcade Neon
- sprites PNG (lv01–lv15) + sprite-data.json: cosméticos com temas de cor
- game.ts: equippedTheme getter para merge de cores do cosmético equipado
- 008_cosmetics.sql: seeds alinhados com sprite-data.json

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
2026-05-26 22:53:41 -03:00

30 lines
695 B
Vue

<script setup lang="ts">
import { onMounted } from 'vue'
import { useGameStore } from '@/stores/game'
import { useDashboardStore } from '@/stores/dashboard'
import AppHud from '@/components/AppHud.vue'
import BottomNav from '@/components/BottomNav.vue'
const gameStore = useGameStore()
const dashStore = useDashboardStore()
onMounted(() => {
gameStore.fetchSummary()
dashStore.fetch(new Date().toISOString().slice(0, 7))
})
</script>
<template>
<div class="fc-app">
<AppHud />
<RouterView />
<BottomNav />
</div>
</template>
<style>
*, *::before, *::after { box-sizing: border-box; }
a { color: inherit; text-decoration: none; }
button { font-family: inherit; }
</style>