# LCARS — recommended fonts This theme **bundles** two libre families (OFL-1.1) so it renders on-brand with no admin setup: | Slot | Bundled family | Role | |------|----------------|------| | Heading | **Antonio** | Tall condensed grotesque for LCARS labels, headings, buttons, and nav pills. | | Body | **Antonio** | Same family for panel copy; condensed and legible at reading sizes. | | Mono | **Share Tech Mono** | Numeric readouts, stardate stamps, statistics, prices, metadata. Tabular by design. | Bundled files live in `assets/fonts/` (latin subsets); licenses in `assets/fonts/LICENSES.md`. The theme CSS resolves every family through `var(--font-heading | --font-body | --font-mono, )`, and the fallback stacks name the bundled families, so the identity holds even before an admin touches the typography panel. ## Optional upgrade — Roboto Condensed for body (Google Fonts tab) The locked direction pairs Antonio labels with **Roboto Condensed** (Apache-2.0) for longer readout copy. Roboto Condensed is not bundled here (no libre woff2 was available in the workspace at build time), so the body fallback stack degrades to Antonio then a system condensed sans (`"Arial Narrow", system-ui`). To match the locked direction exactly, assign Roboto Condensed to the **Body** slot from the Google Fonts tab: | Slot | Source | Family | Why | |------|--------|--------|-----| | Body | `google:Roboto Condensed` | Roboto Condensed | The locked body face for readout copy. Wider aperture than Antonio at small sizes. | | Mono | `google:Share Tech Mono` | Share Tech Mono | Already bundled; also available in the picker if you prefer the Google source. | ## How to apply an override 1. Open **Admin → Theme → Typography**. 2. Switch to the **Google Fonts** tab. 3. Search and pick the family. 4. Assign it to the matching slot (Heading / Body / Mono). 5. Save. The pick is stored as `google:` and binds the `--font-*` variable, overriding the bundled fallback.