/* ─────────────────────────────────────────────────────────────────────────
 * design-systems/warp/tokens.css
 *
 * Structured token bindings for "Design System Inspired by Warp".
 * Warm dark canvas, near-black like charred wood. Almost monochromatic
 * warm grays. Matter Regular (weight 400) carries every tier — even
 * the 80px hero. Restraint through warmth.
 *
 * Key brand decisions encoded here:
 *   - Warm near-black canvas (#161412) — never cold/blue dark
 *   - Warm Parchment (#faf9f6) text — barely-cream, never pure white
 *   - Earth Gray (#353534) as the brand "accent" — the dark pill CTA
 *     IS the brand signal; no chromatic accent (DESIGN.md §2 forbids)
 *   - Four-tier text system: parchment → ash → stone → muted-purple
 *   - Mist Border (rgba(226, 226, 226, 0.35)) for ghostly containment
 *   - Pill radius reserved for primary CTA; cards stay at 12–14px
 *   - Almost-flat elevation — depth via borders + opacity, not shadow
 *   - Focus ring uses the FG (parchment), not a colored glow — DESIGN.md
 *     "Border brightness increase, no colored rings"
 * ─────────────────────────────────────────────────────────────────── */

:root {
  /* ─── Surface ─────────────────────────────────────────────────────
   * Deep warm void. Pure black would feel cold; the reddish-earthen
   * undertone (R>G>B, all near 20) makes the canvas feel like charred
   * wood. Surface is bg + a perceptual ~4% lift, matching the
   * "Frosted Veil" rgba(255,255,255,0.04) overlay DESIGN.md describes. */
  --bg: #161412;             /* Deep Void — warm near-black, earth-toned */
  --surface: #1f1d1b;        /* Frosted Veil resolved over bg */
  --surface-warm: var(--surface); /* alias — already warm; no separate tier */

  /* ─── Foreground ──────────────────────────────────────────────────
   * Four warm tiers, no cool grays. Parchment is the headline tone —
   * its barely-cream undertone is what makes the dark canvas feel
   * inviting rather than austere. Meta carries Purple-Tint Gray, the
   * underlined-link tone DESIGN.md §2 calls out. */
  --fg: #faf9f6;             /* Warm Parchment — primary headlines */
  --fg-2: #afaeac;           /* Ash Gray — body paragraphs, button text */
  --muted: #868584;          /* Stone Gray — secondary descriptions */
  --meta: #666469;           /* Purple-Tint Gray — links, tertiary content */

  /* ─── Border ──────────────────────────────────────────────────────
   * Semi-transparent borders create the "ghostly containment" Warp
   * uses instead of shadows. 35% opacity is the canonical value;
   * inner separators alias to the same line — the brand never uses
   * a stronger or weaker tier (monochromatic restraint). */
  --border: rgba(226, 226, 226, 0.35); /* Mist Border */
  --border-soft: var(--border);        /* alias — single border tier */

  /* ─── Accent ──────────────────────────────────────────────────────
   * Warp's "accent" is restrained: Earth Gray, the dark pill CTA bg.
   * DESIGN.md §2 explicitly forbids bold accent colors — interactive
   * states are communicated through opacity and underline, never hue.
   * accent-on is Ash Gray (#afaeac), the muted button-text color
   * DESIGN.md §4 specifies for the dark pill. */
  --accent: #353534;
  --accent-on: #afaeac;
  --accent-hover: #454545;   /* Dark Charcoal — slightly lighter pill */
  --accent-active: color-mix(in oklab, var(--accent), black 14%);

  /* ─── Semantic ────────────────────────────────────────────────────
   * Warp's marketing site has no surfaced semantic colors — these
   * exist only for component-level state messaging. Schema defaults
   * are accepted as-is to keep the warm palette unburdened. */
  --success: #16a34a;
  --warn: #eab308;
  --danger: #dc2626;

  /* ─── Typography ──────────────────────────────────────────────────
   * Matter is the entire system: geometric sans with soft character,
   * approachable in a way most developer-tool fonts are not. Inter
   * appears in DESIGN.md §3 as the "UI supplement" fallback before
   * generic system sans. Geist Mono is the code/terminal display
   * face; Matter Mono is the prose-aligned mono companion. */
  --font-display: "Matter Regular", "Matter", "Inter", ui-sans-serif, system-ui, sans-serif;
  --font-body: "Matter Regular", "Matter", "Inter", ui-sans-serif, system-ui, sans-serif;
  --font-mono: "Geist Mono", "Matter Mono Regular", ui-monospace, "SF Mono", Menlo, Monaco, Consolas, monospace;

  /* Type scale — DESIGN.md §3 hierarchy. Body baseline is 18px (not
   * the more conventional 16); Warp's editorial pacing wants more
   * breathing room per line. Display hero at 80px with -0.03em
   * tracking (≈ -2.4px) is the billboard moment. */
  --text-xs: 12px;           /* Small Label — uppercase 2.4px tracking */
  --text-sm: 14px;           /* Caption — uppercase 1.4px tracking */
  --text-base: 18px;         /* Body — DESIGN.md body baseline */
  --text-lg: 24px;           /* Body Heading */
  --text-xl: 32px;           /* Sub-heading */
  --text-2xl: 48px;          /* Section Heading */
  --text-3xl: 56px;          /* Section Display */
  --text-4xl: 80px;          /* Display Hero — billboard scale */

  --leading-body: 1.4;       /* Body Large lh — relaxed editorial */
  --leading-tight: 1.0;      /* Display Hero lh — maximum compression */
  --tracking-display: -0.03em; /* ≈ -2.4px at 80px — hero compression */

  /* ─── Spacing ─────────────────────────────────────────────────────
   * 8px base unit (DESIGN.md §5). Schema defaults match Warp's scale
   * exactly — no override needed. */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;

  /* ─── Section rhythm ──────────────────────────────────────────────
   * Generous, contemplative pacing. DESIGN.md §5: "80px–120px vertical
   * between major sections." Desktop uses the upper bound — Warp's
   * marketing site reads like a magazine, each section a page-turn. */
  --section-y-desktop: 120px;
  --section-y-tablet: 80px;
  --section-y-phone: 56px;

  /* ─── Radius ──────────────────────────────────────────────────────
   * Warp's radius scale (DESIGN.md §5) ranges 4–14px for content,
   * 50px+ for pills. Standard components live in the soft 6–14px tier;
   * the primary CTA reaches for --radius-pill. */
  --radius-sm: 6px;          /* Inputs, tags, small containers */
  --radius-md: 12px;         /* Feature cards */
  --radius-lg: 14px;         /* Large prominent containers */
  --radius-pill: 9999px;     /* Dark pill button — primary CTA */

  /* ─── Elevation ───────────────────────────────────────────────────
   * Almost-flat. DESIGN.md §6: "remarkably flat — almost zero shadow
   * usage." Depth comes from semi-transparent borders (the ring tier)
   * and the rare ambient shadow lifted directly from DESIGN.md's
   * inferred Level 3 treatment. */
  --elev-flat: none;
  --elev-ring: 0 0 0 1px var(--border);
  --elev-raised: 0 5px 15px rgba(0, 0, 0, 0.2);

  /* ─── Focus ring ──────────────────────────────────────────────────
   * NO colored ring. DESIGN.md §4: "Border brightness increase, no
   * colored rings (consistent with the monochromatic palette)." A
   * 50%-opacity warm parchment glow is the brightest legal indicator. */
  --focus-ring: 0 0 0 2px rgba(250, 249, 246, 0.5);

  /* ─── Motion ──────────────────────────────────────────────────────
   * Standard cadence — DESIGN.md doesn't specify timing, and the
   * brand's calm character is carried by typography and color rather
   * than animation choreography. Schema defaults preserved. */
  --motion-fast: 150ms;
  --motion-base: 200ms;
  --ease-standard: cubic-bezier(0.2, 0, 0, 1);

  /* ─── Layout ──────────────────────────────────────────────────────
   * 1500px container — DESIGN.md §5 calls out the breakpoint exactly.
   * Wide cinematic compositions let nature photography breathe; phone
   * gutter steps down through the responsive scale (32 → 24 → 16). */
  --container-max: 1500px;
  --container-gutter-desktop: 32px;
  --container-gutter-tablet: 24px;
  --container-gutter-phone: 16px;
}
