Skip to content

Restore text-5xl through text-9xl in @theme (currently reset to initial) #32

@MaxGhenis

Description

@MaxGhenis

Issue

@policyengine/ui-kit/theme.css resets --text-*: initial and only redefines text-xs through text-4xl. Every consumer that uses text-5xl, text-6xl, text-7xl, text-8xl, or text-9xl (notably all slide-deck repos) gets a build error:

Cannot apply unknown utility class 'text-6xl'

Why this is real

Found while migrating 9 PolicyEngine slide-deck repos from Next 14 + Tailwind 3 to Next 16 + Tailwind 4 + ui-kit ^0.9.0. Every one of them uses text-5xl-text-9xl for slide titles. Each migration had to add a local @theme override block in app/globals.css:

@theme {
  --text-5xl: 3rem;
  --text-5xl--line-height: 1;
  --text-6xl: 3.75rem;
  --text-6xl--line-height: 1;
  --text-7xl: 4.5rem;
  --text-7xl--line-height: 1;
  --text-8xl: 6rem;
  --text-8xl--line-height: 1;
  --text-9xl: 8rem;
  --text-9xl--line-height: 1;
}

That's nine duplicated copies of the same Tailwind defaults across the org, which defeats the purpose of a centralized design system.

Suggested fix

Ship text-5xl through text-9xl in src/theme/tokens.css @theme block. The default Tailwind v4 values (matching v3 behavior) are listed above. If the design intent was to intentionally drop them, the JSDoc on --text-*: initial in theme.css should say so explicitly.

Affected consumers

All 9 slide-deck repos that just got migrated:

  • mn-house-research-demo-2025
  • nuffield-2026-01-09-slides
  • policyengine-demo
  • ri-ctc-calculator-webinar
  • slides-2026-01-16-arnold
  • talk-georgetown-ppol6362-2026-01-12
  • taxsim-emulator-demo-day-slides
  • team-meeting-2026-slides
  • vanderbilt-state-tax-policy-academy-2025

Once ui-kit ships these tokens, the local @theme overrides can be deleted from each.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions