/* ==========================================================================
   LegalPrecision.ai — Shared Design Tokens
   Used across all four ventures. Each venture overrides --accent only.
   ========================================================================== */

:root {
  /* ---------- Color: Authoritative neutrals + warm accent ---------- */
  /* Primary surface system — feels like a forensic accounting firm,
     not a tech startup */
  --ink-900: oklch(20% 0.025 250);    /* near-black, slight cool */
  --ink-800: oklch(28% 0.025 250);
  --ink-700: oklch(38% 0.022 250);
  --ink-600: oklch(48% 0.020 250);
  --ink-500: oklch(58% 0.018 250);    /* secondary text */
  --ink-400: oklch(70% 0.015 250);
  --ink-300: oklch(82% 0.012 250);
  --ink-200: oklch(91% 0.008 250);
  --ink-100: oklch(96% 0.005 250);    /* surface tint */
  --ink-50:  oklch(98% 0.003 250);    /* page bg light */

  /* Authoritative navy — primary brand color across the family */
  --navy-900: oklch(22% 0.06 255);
  --navy-800: oklch(28% 0.08 255);
  --navy-700: oklch(35% 0.10 255);    /* primary brand */
  --navy-600: oklch(45% 0.12 255);

  /* Per-venture accent — overridden in each venture's accent.css */
  --accent: oklch(72% 0.13 70);        /* warm gold default (Legal Bill Audit) */
  --accent-soft: oklch(94% 0.05 70);
  --accent-strong: oklch(60% 0.16 70);

  /* Semantic */
  --color-bg: var(--ink-50);
  --color-surface: #ffffff;
  --color-surface-tint: var(--ink-100);
  --color-text: var(--ink-900);
  --color-text-muted: var(--ink-500);
  --color-border: var(--ink-200);
  --color-border-strong: var(--ink-300);
  --color-brand: var(--navy-700);
  --color-brand-strong: var(--navy-900);

  /* Status colors used in audit reports — meaningful, not decorative */
  --status-good: oklch(58% 0.13 150);
  --status-good-bg: oklch(95% 0.04 150);
  --status-warn: oklch(70% 0.14 75);
  --status-warn-bg: oklch(96% 0.05 75);
  --status-bad: oklch(58% 0.18 25);
  --status-bad-bg: oklch(95% 0.04 25);

  /* ---------- Typography ---------- */
  --font-display: 'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono: 'JetBrains Mono', 'Menlo', 'Consolas', monospace;

  --text-xs:   clamp(0.75rem, 0.71rem + 0.18vw, 0.875rem);
  --text-sm:   clamp(0.875rem, 0.84rem + 0.18vw, 1rem);
  --text-base: clamp(1rem, 0.96rem + 0.2vw, 1.125rem);
  --text-lg:   clamp(1.125rem, 1.07rem + 0.27vw, 1.375rem);
  --text-xl:   clamp(1.5rem, 1.36rem + 0.7vw, 2.25rem);
  --text-2xl:  clamp(2rem, 1.66rem + 1.7vw, 3.5rem);
  --text-hero: clamp(2.75rem, 2.05rem + 3.5vw, 5.5rem);

  --leading-tight: 1.1;
  --leading-snug: 1.25;
  --leading-normal: 1.55;
  --leading-relaxed: 1.7;

  --tracking-tight: -0.02em;
  --tracking-snug: -0.01em;
  --tracking-normal: 0;
  --tracking-wide: 0.04em;

  /* ---------- Space scale ---------- */
  --space-1:  0.25rem;
  --space-2:  0.5rem;
  --space-3:  0.75rem;
  --space-4:  1rem;
  --space-5:  1.25rem;
  --space-6:  1.5rem;
  --space-8:  2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  --space-24: 6rem;
  --space-32: 8rem;

  /* ---------- Radius / Shadow ---------- */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 14px;
  --radius-xl: 22px;

  --shadow-sm: 0 1px 2px oklch(20% 0.02 250 / 0.06),
               0 1px 1px oklch(20% 0.02 250 / 0.04);
  --shadow-md: 0 4px 12px oklch(20% 0.02 250 / 0.06),
               0 2px 4px oklch(20% 0.02 250 / 0.04);
  --shadow-lg: 0 16px 36px oklch(20% 0.02 250 / 0.08),
               0 6px 12px oklch(20% 0.02 250 / 0.05);
  --shadow-focus: 0 0 0 3px var(--accent-soft);

  /* Layout */
  --container-narrow: 720px;
  --container-content: 1080px;
  --container-wide: 1280px;

  /* Motion */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --duration-fast: 180ms;
  --duration-base: 280ms;
  --duration-slow: 480ms;
}

/* Per-venture accent overrides (set on <html data-venture="...">) */
html[data-venture="legal-bill-audit"]      { --accent: oklch(72% 0.13 70); --accent-soft: oklch(94% 0.05 70); --accent-strong: oklch(60% 0.16 70); }
html[data-venture="court-order-clarity"]   { --accent: oklch(68% 0.13 220); --accent-soft: oklch(94% 0.04 220); --accent-strong: oklch(54% 0.15 230); }
html[data-venture="attorney-retainer-review"] { --accent: oklch(60% 0.13 145); --accent-soft: oklch(94% 0.04 145); --accent-strong: oklch(48% 0.15 145); }
html[data-venture="pro-se-check"]          { --accent: oklch(64% 0.10 165); --accent-soft: oklch(94% 0.04 165); --accent-strong: oklch(50% 0.10 165); }
