/* Midbench "Ledger" kit — tokens.v1.css
   The one source of truth for the brand: palette (light + dark, all pairs AA),
   type, spacing, radius, focus ring, and the self-hosted IBM Plex Sans subsets
   (OFL — see plex/OFL.txt). Consumed by the marketing site and vendored into
   the product surfaces (see kit/README.md). Zero JS, zero third-party requests. */

@font-face {
  font-family: "IBM Plex Sans";
  src: url("plex/plex-sans-400.v1.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "IBM Plex Sans";
  src: url("plex/plex-sans-600.v1.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

:root {
  color-scheme: light dark;

  /* palette — warm paper / ink / forest green */
  --bg: #FAF9F7;
  --surface: #F2F0EB;
  --text: #1C1B19;
  --muted: #55524B;
  --accent: #1E6B4F;
  --on-accent: #FFFFFF;
  --border: #DDD9D0;

  /* type */
  --font: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
  --mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
  --fs-0: 0.875rem;
  --fs-1: 1.0625rem;
  --fs-2: 1.1875rem;
  --fs-3: 1.625rem;
  --fs-4: clamp(2.2rem, 6.5vw, 3.05rem);

  /* spacing */
  --sp-1: 0.45rem;
  --sp-2: 0.7rem;
  --sp-3: 1.2rem;
  --sp-4: 2rem;
  --sp-5: clamp(2.8rem, 6vw, 4.2rem);

  /* shape + measure */
  --r: 8px;
  --r-lg: 12px;
  --measure: 44rem;
  --page: 66rem;
}

@media (prefers-color-scheme: dark) {
  :root {
    --bg: #131211;
    --surface: #1C1A17;
    --text: #ECE9E3;
    --muted: #A5A096;
    --accent: #5BBF97;
    --on-accent: #10201A;
    --border: #2C2A26;
  }
}

:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; border-radius: 2px; }
