/* ============================================================
   DESIGN TOKENS - single source of truth for every page.
   Load this BEFORE any other stylesheet.

   Rules for future styles:
   - Never hardcode a font-family, font-size, or text color.
     Use these variables.
   - Need a new size or color? Add it here first, then use it.
   ============================================================ */

:root {

  /* ---- Font families (the only two on this site) ---- */
  --font-sans: "Plus Jakarta Sans", system-ui, sans-serif;
  --font-mono: "DM Mono", monospace;

  /* ---- Type scale (smallest to largest) ----
     mono-* sizes are for DM Mono labels/badges/code, which reads
     smaller than the sans at the same rem. */
  --fs-mono-2xs: 0.58rem;   /* micro badges, letterspaced labels   */
  --fs-mono-xs:  0.62rem;   /* nav sublabels, chips                */
  --fs-mono-sm:  0.7rem;    /* code, table meta, timestamps        */
  --fs-mono-md:  0.78rem;   /* mono body, stat labels              */

  --fs-xs:   0.72rem;       /* fine print                          */
  --fs-sm:   0.85rem;       /* secondary text, buttons             */
  --fs-md:   0.95rem;       /* card body text                      */
  --fs-body: 1rem;          /* default paragraph                   */
  --fs-lg:   1.125rem;      /* lead paragraph                      */
  --fs-h3:   clamp(1.05rem, 1.6vw, 1.3rem);
  --fs-h2:   clamp(1.5rem, 3.5vw, 2.8rem);
  --fs-h1:   clamp(2.6rem, 6vw, 4.6rem);

  /* ---- Text colors (dark theme roles) ---- */
  --ink-strong: #FFFFFF;                    /* headings, emphasis      */
  --ink:        #F4F7FB;                    /* primary text            */
  --ink-soft:   rgba(244,247,251,0.72);     /* secondary text          */
  --ink-muted:  rgba(244,247,251,0.55);     /* captions, hints         */
  --ink-faint:  rgba(244,247,251,0.45);     /* disabled, footnotes     */
  --ink-rose:   rgba(229,201,215,0.7);      /* warm body text (bios)   */

  /* ---- Accents ---- */
  --accent:      #83A6CE;                   /* primary accent (blue)   */
  --accent-soft: rgba(131,166,206,0.9);
  --accent-2:    #C48CB3;                   /* secondary accent (pink) */
  --peach:       #F5B8A4;                   /* highlight (paper links) */

  /* ---- Semantic ---- */
  --ok:      #6EE7B7;
  --ok-deep: #10B981;
  --warn:    #FBBF24;
  --info:    #93C5FD;

  /* ---- Backgrounds (for reference; used by page CSS) ---- */
  --bg:      #03122F;
  --bg-2:    #071830;
}
