Everything below renders from
EventasaurusWeb.DesignTokens
— the same source that generates the Tailwind config and CSS variables. If a value
drifts here, the build drifts with it.
bg-brandtext-brand-strong
Focus ring is the one web convention:
focus-visible:ring-2 ring-brand ring-offset-2 ring-offset-oat-50.
darkMode: 'class' +
the oat-theme localStorage key +
a pre-paint init (no flash) +
forced_color_mode for "theme wins" surfaces.
Reduced-motion policy: the universal theme cross-fade is neutralized under
@media (prefers-reduced-motion: reduce).
Set your OS to "reduce motion" and the toggle above switches instantly.
<.icon name="hero-*">
<.wombie_mark> · the brand mark
<.brand_icon> · third-party (mind usage rules)
Color, gradients, and semantic statuses cross platforms; typography does not (SF Pro on iOS, Inter/Instrument/Familjen on web).
| Web token | iOS DS.* |
|---|---|
| brand | DS.Colors.brand / AccentColor |
| oat 50…950 | DS.Colors surface / label |
| --surface / --text | DS.Colors.background / .text |
| wombie-sunrise/ember/nightfall | gradient stop arrays (Phase 4) |
| radius / motion | DS.Radius / DS.Animation |