# Plan – Schriftgrößen konsolidieren & über Tokens steuern

## Ziel
Die ~21 verstreuten Inline-Größen auf eine **kanonische Text-Skala (8 Stufen)** reduzieren und zentral in `ADVAType` steuern, statt überall `.system(size:)`. Icons (SF-Symbols) und die großen, dynamisch schrumpfenden Titel bleiben unverändert.

## NEU: Überschriften & Zahlen jeweils EINHEITLICH (keine Unterscheidung)
- **Alle Screen-Überschriften identisch:** **30 · heavy · tracking −0.5**, beim Scrollen einheitlich **30 → 20**.
  Betrifft: Heute/Offen/Freigegeben, Besuchsbericht, Briefing, Besuchsdetail, Gespräch, Profil.
  (Vorher unterschiedlich: 34 / 30 / 26 / 25.)
- **Alle großen Metrik-Zahlen identisch:** **20 · heavy · Tabellenziffern**.
  Betrifft: Kachel-Zähler, Briefing-KPIs, Profil-Statwerte, Donut-Mitte.
  (Vorher unterschiedlich: 22 / 20 / 19 / 17.)
- Kleine **Inline-Zähler** (Zahl direkt neben einem Label, z. B. Donut-Legende, Karten-Anzahl) zählen als Text → Stufe `caption`/`footnote`, **nicht** als Metrik-Zahl.

## Kanonische Skala (final, zentral über Tokens)
| Token | pt | ersetzt bisher | Rolle |
|---|---|---|---|
| `ADVAType.title` | **30 → 20** | 34, 30, 26, 25 | **alle** Screen-Überschriften (heavy, −0.5) |
| `ADVAType.metric` | **20** | 22, 20, 19, 17 | **alle** großen Zahlen (heavy, tabular) |
| `ADVAType.headline` / `.row` | **15** | 17, 16, 15 | Sektionsköpfe, Buttons · Listen-Firma, Kachel-Titel |
| `ADVAType.compact` / `.footnote` | **14** | 14, 13 | Tipps, Kontakte · Fließtext, Anschrift, Inline-Zähler |
| `ADVAType.caption` | **12.5** | 11.5, 12, 12.5 | Sekundärtext, Datum, Untertitel |
| `ADVAType.label` | **11** | 10.5, 11 | Badges, Versal-Labels |

→ Nur noch **4 Text-Stufen (15 / 14 / 12.5 / 11)** + Überschrift (30→20) + Zahl (20). Gewicht/`tracking`/`monospacedDigit` pro Token als Default; Views können überschreiben.

## Bleibt unverändert
- **Icon-Größen** (SF-Symbols): 9, 13, 14, 15, 16, 18, 20 – keine Textschrift.
- **Sonderfälle:** Donut-Sublabel 7, Tab-Label 10.
- Die bestehenden Style-Tokens (`largeTitle/body/callout/caption/mono`) bleiben als Basis.

## Sichtbare Verschiebungen (durch die Vereinheitlichung, gewollt)
- **Überschriften:** Bericht 34→30 (kleiner), Briefing/Detail 26→30 (größer), Gespräch 25→30 (größer).
- **Zahlen:** Kachel 22→20 (kleiner), Statwert 19→20, Donut-Mitte 17→20 (größer).
- **Kleintext:** 11.5→12.5, 12→12.5, 10.5→11, 16(Text)→17.

Das **Zielbild** zeige ich dir vorab als visuelle Vorher/Nachher-Vorschau – Umsetzung erst nach deiner Freigabe.

## Mechanik
- Neue feste Tokens in `ADVAType.swift` (bewusst ohne Dynamic-Type-Skalierung – identisch zum heutigen Inline-Verhalten).
- Text-`.system(size:)` in den Views auf die Tokens umstellen (Gewicht/Tracking bleibt dran).
- **Icons bleiben** `.system(size:)` (klar getrennt von Text).

## Betroffene Dateien
`ADVAType.swift` + Views: VisitListView, RouteEndpointRow, DonutRing, BriefingView, VisitDetailView, InlineDetailPanel, ReportView, CoachingCard, CategoryTile, DisclosureCard, GenerationBanner, ReportDetailSheet, EditRows, ConversationViewC, ProfileView, FloatingTabBar.

## Verifikation
Baut grün + Tests grün. Danach schaust du im Simulator, ob der Look 1:1 passt (die Mini-Shifts oben ausgenommen).
