/* ============================================================
   tokens.css — Sytezo skin for the Startup Funding Guide
   Brand: black #000000 / white #ffffff · Geist throughout, the same
   family sytezo.com uses · SYTΞZO wordmark (SVG).
   Layout concept: a black hero carrying the funding signal (one
   bar per scheme, coloured by status) over a quiet monochrome
   docs shell; below the hero, lists and tracks rather than cards.
   Dark-first: bare :root holds the dark palette, light is applied
   by the OS preference or an explicit data-theme="light".
   Category and stage hues are greyscale on purpose; the only
   colour on the page is semantic status (open / waiting / closed).
   ============================================================ */

/* ---- self-hosted font (SIL OFL) ----
   Geist variable, the same family sytezo.com uses. One file carries the
   whole weight axis and already covers U+20B9 (rupee) plus the arrows and
   dashes used throughout the guide, so there is no latin-ext split here. */
@font-face {
  font-family: "Geist";
  src: url("fonts/Geist-Variable.woff2") format("woff2-variations"),
       url("fonts/Geist-Variable.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

/* ============ shared tokens + DARK palette (the default) ============ */
:root {
  color-scheme: dark;

  /* ---- typography ---- */
  --font-display: "Geist", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-body: "Geist", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;

  /* ---- type scale ----
     The guide used to carry 46 different rem sizes, the smallest 8.96px.
     Everything now snaps to these ten steps, so type reads as one system.
     13px is the floor: nothing on the page is set smaller than that. */
  --fs-2xs: 0.8125rem;   /* 13px — captions, table meta, badges */
  --fs-xs:  0.875rem;    /* 14px — labels, secondary UI */
  --fs-sm:  0.9375rem;   /* 15px — dense list rows */
  --fs-base: 1rem;       /* 16px — body copy */
  --fs-md:  1.0625rem;   /* 17px — ledes */
  --fs-lg:  1.1875rem;   /* 19px — h4 */
  --fs-xl:  1.375rem;    /* 22px — h3 */
  --fs-2xl: 1.625rem;    /* 26px — h2 */
  --fs-3xl: 2rem;        /* 32px — h1 */
  --fs-4xl: 2.5rem;      /* 40px — display */

  --lh-tight: 1.2;
  --lh-snug: 1.4;
  --lh-normal: 1.65;     /* body */
  --lh-loose: 1.75;      /* long-form prose */

  /* ---- shape ---- */
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-2xl: 20px;
  --radius-pill: 999px;

  /* ---- motion ---- */
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
  --speed: 180ms;

  /* ---- the hero is black in both themes, so its colours never change ---- */
  --hero-bg: #000000;
  --hero-text: #f6f6f5;
  --hero-muted: #a1a1a6;
  --hero-line: rgb(255 255 255 / 0.14);
  --hero-ok: #6ee7a8;
  --hero-wait: #f5c56b;
  --hero-stop: #ff9a8f;
  --hero-active: rgb(255 255 255 / 0.5);

  /* ---- legacy anchors the engine still references (mapped to mono) ---- */
  --brand-navy: var(--text);
  --brand-saffron: var(--text-muted);
  --brand-green: var(--text-faint);
  --brand-blue: var(--text);

  --bg: #08080a;
  --surface: #101014;
  --surface-alt: #0c0c10;
  --surface-sunken: #08080a;
  --border: rgb(255 255 255 / 0.10);
  --border-strong: rgb(255 255 255 / 0.22);

  --text: #f6f6f5;
  --text-muted: #808080;
  --text-faint: #808080;

  --primary: #ffffff;
  --primary-contrast: #000000;
  --accent: #ffffff;
  --accent-strong: #ffffff;
  --accent-contrast: #000000;
  --accent-tint: rgb(255 255 255 / 0.08);
  --link: #f6f6f5;
  --link-hover: #ffffff;

  /* semantic status — the only colour on the page */
  --ok: #c0c0c0;      --ok-tint: rgb(255 255 255 / 0.08);
  --wait: #8a8a8a;    --wait-tint: rgb(255 255 255 / 0.06);
  --stop: #666666;    --stop-tint: rgb(255 255 255 / 0.04);
  --success: var(--ok); --success-tint: var(--ok-tint);
  --warning: var(--wait); --warning-tint: var(--wait-tint);
  --danger: var(--stop);

  --sidebar-bg: #0a0a0d;
  --topbar-bg: rgb(0 0 0 / 0.72);
  --code-bg: #0c0c10;
  --kbd-bg: #0c0c10;
  --scrim: rgb(0 0 0 / 0.72);
  --glass: rgb(16 16 20 / 0.72);
  --glass-border: rgb(255 255 255 / 0.12);

  --shadow-1: 0 1px 2px rgb(0 0 0 / 0.6);
  --shadow-2: 0 8px 20px -8px rgb(0 0 0 / 0.8);
  --shadow-3: 0 30px 60px -20px rgb(0 0 0 / 0.9);

  /* categories & stages: greyscale steps, told apart by label + glyph */
  --cat-grant: #f6f6f5;       --cat-grant-tint: rgb(255 255 255 / 0.08);
  --cat-equity: #f6f6f5;      --cat-equity-tint: rgb(255 255 255 / 0.08);
  --cat-loan: #f6f6f5;        --cat-loan-tint: rgb(255 255 255 / 0.08);
  --cat-incubation: #f6f6f5;  --cat-incubation-tint: rgb(255 255 255 / 0.08);
  --cat-market: #f6f6f5;      --cat-market-tint: rgb(255 255 255 / 0.08);
  --cat-mixed: #f6f6f5;       --cat-mixed-tint: rgb(255 255 255 / 0.08);
  --cat-other: #b4b4b9;       --cat-other-tint: rgb(255 255 255 / 0.05);
  --stage-ideation: #3a3a3d;
  --stage-prototype: #5a5a5e;
  --stage-early: #85858a;
  --stage-growth: #b4b4b9;
  --stage-market: #f6f6f5;
  --org-academic: #f6f6f5; --org-tbi: #d0d0d4; --org-aic: #b4b4b9;
  --org-government: #96969b; --org-sector: #78787d; --org-private: #5a5a5e;
}




