feat(ui): centralized design system — blue/green tokens, gradient hero, SVG tab icons

Replace raw Fluent defaults + inline hex with a semantic design system,
themed for both light/dark (follows system variant).

- Styles/Theme.axaml: semantic brushes (surface/text/border/status) per
  variant via ThemeDictionaries; override Fluent SystemAccentColor to brand
  blue (#2563EB) and ControlCornerRadius=8; blue->indigo balance gradient.
- Styles/Controls.axaml: reusable classes (card, balance-hero, chip, ghost),
  type scale (amount with tabular figures, mono, h1, label), button/input
  polish, tab selected-in-blue, list hover/selected tints, card hover-lift.
- MainView: balance shown as gradient hero card; dashboard tabs use Material
  SVG Path icons (Fill tracks TabItem selection) instead of Unicode glyphs;
  all hardcoded colors (LimeGreen/IndianRed/Orange/Gray/#99000000) and
  generic Fluent surface brushes mapped to semantic tokens; app background,
  stronger modal scrim, status bar top border.

Palette derived from the logo (blue=trust, green=money). Build clean, app
starts with no binding errors.
This commit is contained in:
2026-06-16 10:08:35 +02:00
parent 5ff2075a45
commit 41eb1bb788
4 changed files with 398 additions and 104 deletions
+13 -1
View File
@@ -8,8 +8,20 @@
<Application.DataTemplates>
<local:ViewLocator/>
</Application.DataTemplates>
<!-- Design token semantici (colori, raggi, accento brand): definiti per
entrambe le varianti chiaro/scuro. Vedi Styles/Theme.axaml. -->
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceInclude Source="/Styles/Theme.axaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
<Application.Styles>
<FluentTheme />
<!-- Rifiniture di controllo e classi riutilizzabili (sopra a Fluent) -->
<StyleInclude Source="/Styles/Controls.axaml"/>
</Application.Styles>
</Application>