/* ASP Consulting — typography
   Single family: Suisse Screen (Swiss Typefaces). Monitor is the low-res optical cut,
   used for small technical/annotation text.
   Licence confirmed 04/07/2026 (Karan) as covering this web/app deployment. */

@font-face { font-family: 'Suisse Screen'; src: url('../assets/fonts/SuisseScreen-Thin.woff2') format('woff2'); font-weight: 100; font-style: normal; font-display: swap; }
@font-face { font-family: 'Suisse Screen'; src: url('../assets/fonts/SuisseScreen-Light.woff2') format('woff2'); font-weight: 300; font-style: normal; font-display: swap; }
@font-face { font-family: 'Suisse Screen'; src: url('../assets/fonts/SuisseScreen-LightItalic.woff2') format('woff2'); font-weight: 300; font-style: italic; font-display: swap; }
@font-face { font-family: 'Suisse Screen'; src: url('../assets/fonts/SuisseScreen-Regular.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'Suisse Screen'; src: url('../assets/fonts/SuisseScreen-RegularItalic.woff2') format('woff2'); font-weight: 400; font-style: italic; font-display: swap; }
@font-face { font-family: 'Suisse Screen'; src: url('../assets/fonts/SuisseScreen-Medium.woff2') format('woff2'); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: 'Suisse Screen'; src: url('../assets/fonts/SuisseScreen-MediumItalic.woff2') format('woff2'); font-weight: 500; font-style: italic; font-display: swap; }
@font-face { font-family: 'Suisse Screen'; src: url('../assets/fonts/SuisseScreen-Bold.woff2') format('woff2'); font-weight: 700; font-style: normal; font-display: swap; }
@font-face { font-family: 'Suisse Screen'; src: url('../assets/fonts/SuisseScreen-BoldItalic.woff2') format('woff2'); font-weight: 700; font-style: italic; font-display: swap; }
@font-face { font-family: 'Suisse Screen Monitor'; src: url('../assets/fonts/SuisseScreen-Monitor.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'Suisse Screen Monitor'; src: url('../assets/fonts/SuisseScreen-MonitorItalic.woff2') format('woff2'); font-weight: 400; font-style: italic; font-display: swap; }

:root {
  --font-sans: 'Suisse Screen', 'Helvetica Neue', Arial, sans-serif;
  --font-technical: 'Suisse Screen Monitor', 'Suisse Screen', 'Helvetica Neue', sans-serif;

  /* Scale */
  --text-display-xl: 96px;
  --text-display: 64px;
  --text-h1: 40px;
  --text-h1-phone: 28px; /* the same heading on a 390px screen (§13) */
  --text-h2: 28px;
  --text-h3: 20px;
  --text-body: 15px;
  --text-small: 13px;
  --text-eyebrow: 11px;

  --leading-display: 0.98;
  --leading-heading: 1.1;
  --leading-body: 1.55;

  --tracking-display: -0.03em;
  --tracking-eyebrow: 0.14em;

  --weight-light: 300;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-wordmark: 700; /* the Track. logotype ONLY (design_handoff_track_logo) */

  /* Benchmark scale (front-end redesign, 04/08/2026 — HANDOFF §1.7).
     Anchors and card figures are Suisse Screen Medium (500) whatever they
     contain. Monitor (--font-technical) is reserved for technical text at 15px
     and below. Weights 400 and 500 only. Display tracking −0.03em. */
  --anchor-lg: 88px;   /* left anchor figure, orange caps label + grey line */
  --anchor-md: 68px;   /* right anchor where a title + period control exist */
  --anchor-sm: 52px;   /* the anchor inside a sheet (§6 need-you) */
  --anchor-sm: 52px;   /* mobile anchor */
  --figure: 38px;      /* the four figures inside a card */
  --figure-sm: 34px;   /* the tighter card figure */
  --figure-xs: 32px;   /* the card figure on a phone (mobile design, 1a) */
  --figure-site: 44px; /* a short headline value in the site-constraints detail panel ("Class 3", "Zone 1") */
  --text-editorial: 17px;  /* the brief, 1.55 leading, max 90ch */
  --text-body-bm: 13.5px;  /* body */
  --text-meta: 12px;       /* meta (11.5–12) */
  --text-meta-sm: 11.5px;
  --text-caps: 10px;       /* caps eyebrow */
  --text-table-head: 9.5px; /* table header caps (§1.6) */

  --tracking-caps: 0.14em;  /* eyebrow */
  --tracking-caps-wide: 0.16em; /* sign-in display caps only */
  --tracking-table: 0.12em; /* table header caps */

  /* Tasks module type steps (design_handoff_tasks_module, 28/08/2026).
     Extracted from the canvas: 21 distinct sizes, 9px to 30px. Only these
     four had no token — 20px is --text-h3 and 28px is --text-h2 already.
     design-lint rejects a px literal above 17px, so each of these is the
     only legal way to set that size. All at weight 500, tracking -0.02em
     (-0.03em at screen-title sizes), per HANDOFF "Type". */
  --text-card-title: 18px;       /* "Today" panel heading */
  --text-overlay-title: 24px;    /* "Plan your day", Daily Plan sheet (1d) */
  --text-screen-title: 26px;     /* mobile screen title (1f) */
  --text-screen-title-lg: 30px;  /* "Plan your day", Daily Plan full page (1e) */

  /* Turn 3. Today becomes three named commitments and Focus becomes one task at
     display size, so the module gains a scale it did not have: a commitment is
     bigger than a list row because it is a promise, and the running clock is the
     largest thing on the screen because it is the only thing on the screen. */
  --text-panel-title: 21px;      /* the task's title in the detail panel (8a) */
  --text-page-title: 22px;       /* the Tasks page header (7a-7d) */

  /* Turn 7/8. The personal-focus type is gone with turns 1-6; these three are
     what replaces it — a running clock a person reads at arm's length on a
     gantry, and the two figures the standup is run off. */
  --text-clock-site: 46px;       /* the running timer on the phone (8e) */
  --text-figure-lg: 56px;        /* the headline figure on a rationale board */
  --text-site-title: 19px;       /* the running task's title on the phone (8e) */
}
