Foundations

Typography

Two typefaces with clearly separated jobs, one product scale built for reading at clinical distance, and a hard floor below which text is not permitted to go.

Stable · v1.0 Inter · Fraunces WCAG 2.2 AA

Overview

Typography in clinical software is a legibility problem before it is an aesthetic one. The reader is interrupted, often standing, sometimes gloved, frequently more than a metre from the screen, and occasionally reading a number that determines what happens to a patient in the next ten minutes.

So the system splits typefaces by job. Fraunces — the brand's serif — carries identity in documentation, marketing and page titles. Inter carries everything inside a product interface, because it was drawn for screen UI and because its tall x-height and open apertures hold up at distance and at small sizes.

Legible first

Every size, weight and spacing decision is judged at the worst realistic viewing condition, not the best. Elegance is what is left after legibility is satisfied.

Hierarchical

Size, weight and colour work together so a clinician can find the one number they came for without reading the screen. Three levels of emphasis, never five.

Unmistakable

Clinical values are set so that characters that could be confused — 1 and l, 0 and O, 5 and S — cannot be. Ambiguity in a dose or a lead name is a hazard.

The two typefaces

Fraunces · 500
Documentation only
Acute coronary syndrome
Inter · 400
Product body
ST elevation 3.1 mm in anterior leads V2–V4
Mono · 400
Identifiers & values
MRN 44812907 · 14:26:38 · hs-cTnI 47 ng/L
FaceLicenceWhereWhere not
FrauncesSIL OFL Documentation headings, marketing, product splash and About screens Anywhere inside a working clinical interface
InterSIL OFL All product UI — headings, body, labels, controls Tabular numeric data (use the mono stack)
Mono stackSystem MRNs, timestamps, measured values, model versions, code Prose of any kind
Why no serif in-product

Fraunces is a display serif with high stroke contrast and an optical size axis. It is excellent at 32 px on a marketing page and progressively worse as it gets smaller, further away, or rendered on a low-PPI bedside display. The brand is carried in-product by colour, surface and geometry instead.

Product type scale

Deliberately small. Nine styles cover every screen in AcuteLine; a tenth would be a hierarchy problem, not a typography one.

Product scale · Inter
Display · 28/34 semibold
Heading 1 · 22/28 semibold
Heading 2 · 18/24 semibold
Heading 3 · 16/24 semibold
Body · 16/24 regular — the default for everything a clinician reads as prose.
Body compact · 16/20 regular — dense contexts only, never paragraphs.
Body small · 14/20 regular — supporting text, helper text, table cells.
Label · 14/20 semibold — form labels, column headers, control text.
Metadata · 12/16 mono — MRN, timestamp, model version. Floor of the scale.
StyleSize / lineWeightUse
Display28 / 34600 One per screen at most. Patient name in a header, primary finding.
Heading 122 / 28600Region title
Heading 218 / 24600Panel title
Heading 316 / 24600Group label within a panel
Body16 / 24400Default. All prose.
Body compact16 / 20400 Worklist rows, toolbars, stacked key–value pairs. Never paragraphs.
Body small14 / 20400Helper and supporting text
Label14 / 20600Form labels, column headers
Metadata12 / 16400 mono Identifiers, timestamps, versions. Absolute floor.
Governed — 12 px floor

No text in a product interface may render below 12 px, and 12 px is reserved for metadata that is never the sole carrier of clinical meaning. Anything a clinician must read to make a decision is 14 px or larger. This is a governed token, not a preference.

Clinical values and numerals

Numbers in a clinical interface are read differently from prose. They are scanned, compared across rows, and transcribed. Three rules follow.

Tabular alignment
TABULAR · CORRECT
14 ng/L
47 ng/L
108 ng/L
1 240 ng/L
PROPORTIONAL · WRONG
14 ng/L
47 ng/L
108 ng/L
1 240 ng/L
Character disambiguation

Clinical identifiers and measured values are set in the mono stack specifically because 1 l I, 0 O and 5 S are drawn distinctly there. Inter's default l is a plain vertical stroke; in an MRN read aloud over a phone that is a transcription error waiting to happen.

Reading at distance

The type scale above assumes a desktop or workstation at roughly 60 cm. Two other conditions occur constantly in a hospital and need explicit handling.

ContextTypical distanceApproach
Workstation / reporting50–70 cm Scale as published. Default.
Bedside or cart display70–120 cm Apply the 1.35× scale factor. Do not hand-pick larger sizes.
Wall display / handover board2–4 m Apply the 1.75× scale factor and reduce content — legibility comes from showing less, not only from bigger type.

Scale factors multiply the whole interface — type, spacing and touch targets together — so proportions and hit areas stay correct. Scaling type alone breaks touch targets and is not permitted. See Scaling & displays.

Language and localisation

Do's and don'ts

Do
Peak hs-cTnI
1 240 ng/L
drawn 15:10 · ref < 34 ng/L

Label, value with unit, provenance. Three levels, tabular numerals, nothing below 12 px.

Don't
PEAK HS-CTNI
1,240
drawn 15:10

Below the 12 px floor, serif italic for a clinical value, no unit, and a comma that reads as a decimal point in half of Europe.

More do's and don'ts

Do
ST elevation 3.1 mm at J+60 ms
model v4.2 · 14:26:38

14 px for anything decision-relevant; 12 px reserved for metadata that never carries clinical meaning on its own.

Don't
ST elevation 3.1 mm at J+60 ms

A measurement at 11 px. Below the floor, and unreadable at arm's length on a cart for much of the rota.

Do
14 ng/L
47 ng/L
1 240 ng/L

Tabular numerals and a thin space. The jump to four digits registers as a shape change before it is read.

Don't
14 ng/L
47 ng/L
1,240 ng/L

Proportional digits and a comma. Nothing aligns, and the comma is a decimal separator in half of Europe.

Clinical safety notes

Risk controls carried by this foundation

Trace these in your risk file (ISO 14971).

NotJustAnyMed.Tech Design System · Typography · v1.0 · draft for review