Every monospace face in the report, on both type scales, as it renders today and as the audit proposes.
“Today” means before 64a2b36a (15 Oct 2026); the “Proposed” columns shipped in it, except the figures. Open it in the Mac app's webview or Safari and in Chrome. Today's columns differ by browser and by whether the Mac has Apple's SF Mono download; the proposed column differs only by browser (system SF Mono in WebKit, Menlo in Chrome).
Reasoning and measurements: docs/design-monospace-roles.md.
Today — the shipped token, on this Mac
drawn in
Today — a Mac without the SF Mono download
drawn in
Proposed — one stack for both scales
drawn in
Today — the shipped token, on this Mac
drawn in
Today — a Mac without the SF Mono download
drawn in
Proposed — one stack for both scales
drawn in
Regular (400) is the resting weight of every monospace role. Monospace marks kind, not importance: the face says "this is a time, a code, a path", and colour, size and the chip carry everything else.
Tags are one weight: 460 in the light appearance, 400 in dark (decided 15 Oct 2026). Today sentiment chips are 370 and codebook tags 420 (490 in dark). 460 gives light tags a little more bite in SF Mono (+9%) and is Regular on every other face, so it never tips into Bold anywhere.
Emphasis is 560, revised from 520 after measuring Windows: 520 is Bold in Menlo but stays Regular in Consolas, which needs 550. At 560: SF Mono +24%, Cascadia Mono SemiBold, Menlo and Consolas Bold. Today it applies only to the Screens path that names the screen. Keycaps stay Regular.
Figures leave monospace for the body face with tabular figures, keeping 490, where the body ladder works.
Proposed stack: ui-monospace, Menlo, "Cascadia Mono", Consolas, "DejaVu Sans Mono", monospace. WebKit draws the system SF Mono on every Mac, download or not; Chromium on a Mac draws Menlo (it has no ui-monospace) instead of today's Courier; Windows Consolas; Linux DejaVu Sans Mono. Menlo and Consolas carry only Regular and Bold.
Light — proposed stack · weight
frustration confusion doubt surprise satisfaction delight confidence
findability basket total checkout price shock saved cards p03Ana
frustration confusion doubt surprise satisfaction delight confidence
findability basket total checkout price shock saved cards p03Ana
frustration confusion doubt surprise satisfaction delight confidence
findability basket total checkout price shock saved cards p03Ana
Light — today, as shipped on this Mac (chips 370, codebook tags 420)
frustration confusion doubt surprise satisfaction delight confidence
findability basket total checkout price shock saved cards p03Ana
frustration confusion doubt surprise satisfaction delight confidence
findability basket total checkout price shock saved cards p03Ana
frustration confusion doubt surprise satisfaction delight confidence
findability basket total checkout price shock saved cards p03Ana
Dark — proposed stack · weight
frustration confusion doubt surprise satisfaction delight confidence
findability basket total checkout price shock saved cards p03Ana
frustration confusion doubt surprise satisfaction delight confidence
findability basket total checkout price shock saved cards p03Ana
frustration confusion doubt surprise satisfaction delight confidence
findability basket total checkout price shock saved cards p03Ana
Dark — today, as shipped on this Mac (chips 370, codebook tags 490)
frustration confusion doubt surprise satisfaction delight confidence
findability basket total checkout price shock saved cards p03Ana
frustration confusion doubt surprise satisfaction delight confidence
findability basket total checkout price shock saved cards p03Ana
frustration confusion doubt surprise satisfaction delight confidence
findability basket total checkout price shock saved cards p03Ana
The same weight can read heavier light-on-dark. Light strokes on a dark ground spread (irradiation), so dark-mode sentiment chips, light text on a dark tint, may look a touch bolder than their light-mode twins. Dark-mode codebook tags are the other case: white on a mid-tone saturated tint has much less contrast, which can make strokes look thinner. That is probably what the shipped 490 bump was compensating for. Each column starts at the proposed weight (light 460, dark 400); change it to judge by eye. In WebKit (the app, Safari) every step shows; in Chrome, Menlo shows only Regular (≤500) or Bold.
Contrast, computed live from the colours this page resolves (the proposed rows, page context). WCAG is symmetric; APCA Lc is not: it scores light-on-dark and dark-on-light differently, which is this effect in numbers. A negative Lc means light text on a dark ground; compare magnitudes.
| tag | light · WCAG | light · APCA Lc | dark · WCAG | dark · APCA Lc |
|---|
“SF Mono” by name exists only on Macs with Apple's developer font package (
com.apple.pkg.SFMonoFonts, installed here). The system's own mono is the hidden.SF NS Mono, reachable from CSS only asui-monospace, and only in WebKit. So the left column is the developer's view, and the middle column is what a researcher's Mac shows.Ink relative to 400, measured 15 Oct 2026 from DOM screenshots at 2×, in a
lang="en"page like the report (the language matters: without it WebKit's genericmonospaceis Courier, with it Menlo). WebKit means Playwright WebKit and a sandboxed WKWebView, which agree to the pixel; each figure holds within ±0.5 points from 9.6 to 15 px.ui-monospacemonospace; Chromium by namemonospace(its own font API says so)Given the same face, WebKit and Chromium draw the same ink at every weight. They differ only in which face they find. At the named instances (400, 500, 600, 700), the download and the system font agree within 2–5% and have identical advances. The off-instance weights (370, 420, 490, 520) are where the developer's Mac and a researcher's Mac part company. 400–490 is the safe band: Regular in Menlo, Courier, Consolas and Cascadia Mono, and varying only in SF Mono. 560 is the cheapest emphasis that turns Bold everywhere: Menlo flips above 500, but Windows matches the nearest weight, so Consolas needs 550. Full ground truth:
docs/design-monospace-roles.md§6.