/* ════════════════════════════════════════════════════════════════════
   Earshot · type.css · the self-hosted type layer
   Loads AFTER tokens.css and remaps the type tokens for this room only
   (the Storm Stream precedent: a product-level theme file; tokens.css
   stays byte-synced with the canonical fleet set).

   THE EARSHOT TYPE SYSTEM (design-panel synthesis, 2026-07-17):
   - Display: Space Grotesk. Derived from Space Mono, so it carries the
     instrument DNA that pairs natively with a mono-heavy telephony console;
     a real lowercase and tall x-height hold from the 72px funnel hero down
     to a 15px panel title, where Michroma collapsed. Ships tabular figures.
   - Body: Inter (variable). Fleet canon, the best dense-UI face at 13-15px.
   - Mono: IBM Plex Mono. Timers, phone numbers, key caps, engraved legends.
     THE MONO-GUARANTEE RULE: every figure that changes while you look at it
     (timer, phones, counts) is Plex Mono 500 tabular, because mono metrics
     guarantee zero horizontal jitter even if a subset drops the tnum feature.
   - Michroma: fully retired. Zero survivals; the wordmark is re-set in
     Space Grotesk 700. (Flagged fleet-wide as the display-face succession
     pilot; tokens.css stays canonical, this file carries the change.)

   Faces are vendored woff2 (fontsource builds, assets/fonts/). No
   third-party font CDN at runtime. font-display: swap keeps text visible
   on first paint, never invisible.
   ════════════════════════════════════════════════════════════════════ */

@font-face {
  font-family: "Inter Var";
  src: url("fonts/inter-var.woff2") format("woff2-variations");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Space Grotesk Var";
  src: url("fonts/space-grotesk-var.woff2") format("woff2-variations");
  font-weight: 300 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "IBM Plex Mono";
  src: url("fonts/plex-mono-400.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "IBM Plex Mono";
  src: url("fonts/plex-mono-500.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

/* ── the Earshot type tokens (this room only) ── */
:root {
  --disp: "Space Grotesk Var", "Space Grotesk", "Trebuchet MS", system-ui, sans-serif;
  --body: "Inter Var", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;

  /* the fluid display scale, retuned: Space Grotesk is far narrower than
     Michroma, so the hero can afford real size */
  --fs-d1: clamp(40px, 6.5vw, 72px);
  --fs-d2: clamp(24px, 4.5vw, 36px);
  --fs-d3: clamp(19px, 4vw, 26px);
}
