La style guide del tema
Gli aspetti grafici RICORRENTI (ombra, raggio, superficie, bordo, tipografia) non si scrivono come classi nel className di ogni viewMode: si definiscono UNA volta come stili nominati nel global Theme (tab Stili) e si richiamano per nome dal campo Styles del viewMode/slot.
Vantaggio: modifichi lo stile in un punto e la modifica si propaga a TUTTI i viewMode che lo includono. Lo stile è la fonte di verità dell’aspetto, non la classe copiata.
Categorie (raggruppamento deterministico)
Ogni stile appartiene a una categoria: Tipografia, Elevazione, Contorno, Superfici, oppure Generico per i compositi e i casi speciali. Essendo UIMS un engine su elementi determinati, sapere che TIPI di aspetto esistono è un valore, non un vincolo.
I colori restano nella palette, i font nei settings, le variabili dei componenti nel loro tab: qui vivono solo gli aspetti. Nessun doppione, nessuna doppia verità.
Due modi: CSS grezzo o classi Tailwind
Uno stile può portare CSS grezzo (genera .uims-style-nome, safelist-free, usa var(--color-*) per seguire la palette) — ideale per ombre e superfici. Oppure classi Tailwind (es. shadow-sm, rounded-md) se preferisci ragionare nel vocabolario della tua style guide Tailwind.
Le classi Tailwind di uno stile finiscono in safelist in produzione (vengono lette dal global), così restano renderizzate anche nel bundle minimale. Il CSS grezzo non ne ha bisogno: è una regola generata a runtime.