DESIGN REFERENCE

Type that stays
out of the way.

Original font files, measured line boxes, complete role guidance, and clear rules for wrapping, fallback, and content extremes.

Public evidence18 Sep 2026Observed sources. Explicit local contracts.

The type families

Inter

authored CSS + browser font set + binary metadata

Aa 0123
Weight
100 900
Style
normal
Loading
Self-hosted WOFF2, font-display:swap; page preloads include faces that may remain unused in visible text.
License
SIL Open Font License 1.1

Inter is the primary text face. GeistMono is visibly used in metadata. Loaded or declared extra faces do not prove use by every component.

JetBrains Mono

authored CSS + browser font set + binary metadata

Aa 0123
Weight
100 800
Style
normal
Loading
Self-hosted WOFF2, font-display:swap; page preloads include faces that may remain unused in visible text.
License
SIL Open Font License 1.1

Inter is the primary text face. GeistMono is visibly used in metadata. Loaded or declared extra faces do not prove use by every component.

GeistMono

authored CSS + browser font set + binary metadata

Aa 0123
Weight
100 900
Style
normal
Loading
Self-hosted WOFF2, font-display:swap; page preloads include faces that may remain unused in visible text.
License
SIL Open Font License 1.1

Inter is the primary text face. GeistMono is visibly used in metadata. Loaded or declared extra faces do not prove use by every component.

Instrument Serif

authored CSS + browser font set + binary metadata

Aa 0123
Weight
400
Style
normal
Loading
Self-hosted WOFF2, font-display:swap; page preloads include faces that may remain unused in visible text.
License
SIL Open Font License 1.1

Inter is the primary text face. GeistMono is visibly used in metadata. Loaded or declared extra faces do not prove use by every component.

VT323

authored CSS + browser font set + binary metadata

Aa 0123
Weight
400
Style
normal
Loading
Self-hosted WOFF2, font-display:swap; page preloads include faces that may remain unused in visible text.
License
SIL Open Font License 1.1

Inter is the primary text face. GeistMono is visibly used in metadata. Loaded or declared extra faces do not prove use by every component.

A complete text hierarchy

Display / home64px / 70.4pxWeight 600 · tracking 0h1

Your shortcut to everything.

36px below 480;48px to 719;64px from 720 · ss08, ss02, liga off

Display / feature48px / 58pxWeight 600 · tracking 0h1

One place for your next idea.

27px base,48px desktop on shared feature hero · ss08, ss02, liga off

Section display40px / 44pxWeight 600 · tracking −1pxh2

Small details. Faster work.

32px on narrow screens; source marketing family exceptions retained · local reference role

Feature title22px / 26.4pxWeight 500 · tracking 0h3

Keep your tools close.

Fixed, wraps naturally · source-derived shared visual style

Body / hero18px / 21.6pxWeight 400 · tracking .2pxp

Build with the details that make Raycast feel like Raycast.

14px below 720 · Inter ss03

Body / prose16px / 28.8pxWeight 400 · tracking 0p

Give every state a clear next step.

15px on phone · local reading role

Control14px / 16pxWeight 500 · tracking .2pxbutton

Open reference

Fixed; wraps only when explicitly allowed · Inter ss03

Navigation14px / 17pxWeight 500 · tracking .2pxa

Components

Original fixed 14; reference compact 12px880–1199 · Inter ss03

Supporting text14px / 22.4pxWeight 400 · tracking 0p

Labels stay readable when the content grows.

Fixed; no hard line breaks · local reference role

Metadata12px / 18pxWeight 400 · tracking 0small

Captured 18 Sep 2026

Never below 11px for essential text · Geist Mono for technical metadata

Code12px / 21.6pxWeight 400 · tracking 0code

--container-width: 1204px;

Wrap prose snippets; scroll exact code only when needed · Geist Mono

Shortcut11px / 16pxWeight 400 · tracking 0kbd

⌘ K

Visible pointer path also required · Geist Mono + system glyph fallback

Price40px / 48pxWeight 500 · tracking −1pxspan

$8

Tabular figures; amount+unit remain together · Inter tabular-nums

Caption12px / 19.2pxWeight 400 · tracking 0figcaption

Public marketing illustration.

Always wraps; never elides provenance · local reference role

Exact local role rules

Every rendered role has an explicit numeric line-height, weight, tracking, foreground, background, case and decoration policy. The original feature display, hero copy and navigation use normal in their captured source contexts; the local numeric replacements below are reconstructed authoring decisions.

Local type-role implementation contracts
RoleRendered sampleConsumer color / caseFallback and boundary
Display / home64px / 70.4px · 600 · tracking 0 · #e6e6e6 on #07080aHeading: #ffffff on #07080a or #111214. Sentence case in authored labels; preserve product names, identifiers and user text. Transform: none; decoration: none.Guide Noto Sans JP, Guide Noto Sans Devanagari, ui-sans-serif, system-ui, sans-serif Local role specification; captured route-specific exceptions remain in the geometry evidence.
Display / feature48px / 58px · 600 · tracking 0 · #e6e6e6 on #07080aHeading: #ffffff on #07080a or #111214. Sentence case in authored labels; preserve product names, identifiers and user text. Transform: none; decoration: none.Guide Noto Sans JP, Guide Noto Sans Devanagari, ui-sans-serif, system-ui, sans-serif Original CSS uses normal line-height in the captured context. This numeric local reconstruction removes browser-dependent authoring ambiguity; it is not an original source declaration.
Section display40px / 44px · 600 · tracking -1px · #e6e6e6 on #07080aHeading: #ffffff on #07080a or #111214. Sentence case in authored labels; preserve product names, identifiers and user text. Transform: none; decoration: none.Guide Noto Sans JP, Guide Noto Sans Devanagari, ui-sans-serif, system-ui, sans-serif Local role specification; captured route-specific exceptions remain in the geometry evidence.
Feature title22px / 26.4px · 500 · tracking 0 · #e6e6e6 on #07080aHeading: #ffffff on #07080a or #111214. Sentence case in authored labels; preserve product names, identifiers and user text. Transform: none; decoration: none.Guide Noto Sans JP, Guide Noto Sans Devanagari, ui-sans-serif, system-ui, sans-serif Local role specification; captured route-specific exceptions remain in the geometry evidence.
Body / hero18px / 21.6px · 400 · tracking .2px · #e6e6e6 on #07080aBody/code/price: #e6e6e6 on #07080a or #111214. Sentence case in authored labels; preserve product names, identifiers and user text. Transform: none; decoration: none.Guide Noto Sans JP, Guide Noto Sans Devanagari, ui-sans-serif, system-ui, sans-serif Original CSS uses normal line-height in the captured context. This numeric local reconstruction removes browser-dependent authoring ambiguity; it is not an original source declaration.
Body / prose16px / 28.8px · 400 · tracking 0 · #e6e6e6 on #07080aBody/code/price: #e6e6e6 on #07080a or #111214. Sentence case in authored labels; preserve product names, identifiers and user text. Transform: none; decoration: none.Guide Noto Sans JP, Guide Noto Sans Devanagari, ui-sans-serif, system-ui, sans-serif Local role specification; captured route-specific exceptions remain in the geometry evidence.
Control14px / 16px · 500 · tracking .2px · #e6e6e6 on #07080aPrimary button: #2f3031 on #e6e6e6; secondary: #e6e6e6 on #28292b. Sentence case in authored labels; preserve product names, identifiers and user text. Transform: none; decoration: none.Guide Noto Sans JP, Guide Noto Sans Devanagari, ui-sans-serif, system-ui, sans-serif Local role specification; captured route-specific exceptions remain in the geometry evidence.
Navigation14px / 17px · 500 · tracking .2px · #e6e6e6 on #07080aNavigation: #9c9c9d at rest, #ffffff on hover/current. Sentence case in authored labels; preserve product names, identifiers and user text. Transform: none; decoration: none.Guide Noto Sans JP, Guide Noto Sans Devanagari, ui-sans-serif, system-ui, sans-serif Original CSS uses normal line-height in the captured context. This numeric local reconstruction removes browser-dependent authoring ambiguity; it is not an original source declaration.
Supporting text14px / 22.4px · 400 · tracking 0 · #e6e6e6 on #07080aSupporting: #9c9c9d on #07080a or #111214. Sentence case in authored labels; preserve product names, identifiers and user text. Transform: none; decoration: none.Guide Noto Sans JP, Guide Noto Sans Devanagari, ui-sans-serif, system-ui, sans-serif Local role specification; captured route-specific exceptions remain in the geometry evidence.
Metadata12px / 18px · 400 · tracking 0 · #e6e6e6 on #07080aSupporting: #9c9c9d on #07080a or #111214. Sentence case in authored labels; preserve product names, identifiers and user text. Transform: none; decoration: none.Guide Noto Sans JP, Guide Noto Sans Devanagari, ui-monospace, SFMono-Regular, Consolas, monospace Local role specification; captured route-specific exceptions remain in the geometry evidence.
Code12px / 21.6px · 400 · tracking 0 · #e6e6e6 on #07080aBody/code/price: #e6e6e6 on #07080a or #111214. Sentence case in authored labels; preserve product names, identifiers and user text. Transform: none; decoration: none.Guide Noto Sans JP, Guide Noto Sans Devanagari, ui-monospace, SFMono-Regular, Consolas, monospace Local role specification; captured route-specific exceptions remain in the geometry evidence.
Shortcut11px / 16px · 400 · tracking 0 · #e6e6e6 on #07080aBody/code/price: #e6e6e6 on #07080a or #111214. Sentence case in authored labels; preserve product names, identifiers and user text. Transform: none; decoration: none.Guide Noto Sans JP, Guide Noto Sans Devanagari, ui-monospace, SFMono-Regular, Consolas, monospace Local role specification; captured route-specific exceptions remain in the geometry evidence.
Price40px / 48px · 500 · tracking -1px · #e6e6e6 on #07080aBody/code/price: #e6e6e6 on #07080a or #111214. Sentence case in authored labels; preserve product names, identifiers and user text. Transform: none; decoration: none.Guide Noto Sans JP, Guide Noto Sans Devanagari, ui-sans-serif, system-ui, sans-serif Local role specification; captured route-specific exceptions remain in the geometry evidence.
Caption12px / 19.2px · 400 · tracking 0 · #e6e6e6 on #07080aSupporting: #9c9c9d on #07080a or #111214. Sentence case in authored labels; preserve product names, identifiers and user text. Transform: none; decoration: none.Guide Noto Sans JP, Guide Noto Sans Devanagari, ui-sans-serif, system-ui, sans-serif Local role specification; captured route-specific exceptions remain in the geometry evidence.

Exact source metrics

Observed source typography measurements
RoleMeasured geometryFont behavior
Homepage display64px/70.4px at 1440;600weight; two lines; h140.8125pxInter 4.001 variable; ss08,ss02; liga off; letter spacing0.
Primary button14px/16px;500weight; letter spacing.2pxInter; label line box16px; icon16px;8px flex gap.
Navigation14px normal (~17px);500weight; letter spacing.2pxLabel metrics independent from 36px/44px control target.
Supporting hero18px normal;400weight; letter spacing.2pxMax490px locally; text-wrap:balance is explicit.
Mono metadata12px; public Geist Mono variable resourceTechnical values use tabular figures; fallback metrics can change wrapping.
reference.css · CSS
@font-face {
  font-family: Inter;
  src: url("inter-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}
.hero h1 {
  font-size: 64px; line-height: 110%; font-weight: 600;
  letter-spacing: 0;
  font-feature-settings: "ss08", "ss02", "liga" 0;
  max-width: 540px;
}

Content changes the geometry

Long text

AveryLongExtensionNameThatStillNeedsToRemainReadableWithoutHorizontalScrolling

Titles wrap; essential instructions never depend on a tooltip. Preview descriptions may clamp only when a full detail destination exists.

Missing data

Not provided

Missing is different from zero, an empty string, an unavailable record, and a permission boundary.

Language direction

ابحث عن الأدوات التي تحتاجها

Local resilience example. Public product localization was not established. Set language and direction at the content boundary.

Loading and licensing

Inter and Geist Mono are self-hosted in this publication with their SIL Open Font License. The source also declares JetBrains Mono, Instrument Serif and VT323 for selected feature demonstrations. A declared font does not mean every page uses it. Latin subsets cannot establish Arabic glyph metrics; those examples use a system fallback and have their own local comparison boundary.

Font and asset attribution

About this specimen

This is a local reconstruction of a public Raycast pattern. It demonstrates the interface contract; real accounts, installs and payments remain on the official product.

Icon contract