

:root {
  
  --page: #eff1f6;
  --panel: #ffffff;
  --panel-soft: #f7f9fd;
  --panel-mute: #f1f4f9;
  --panel-hover: #e9edf2;

  
  --ink: #1d1d1f;
  --ink-soft: #424247;
  --ink-faint: #6e6e73;
  --ink-quiet: #707074;
  --ink-subtle: #98a2b3;
  --on-navy: #ffffff;
  --on-navy-faint: #8fa6c2;

  
  --line-soft: #f0f0f3;
  --line: #e4e5e9;
  --line-strong: #d0d5dd;

  
  --accent: #0b67d0;
  --accent-strong: #0757b8;
  --accent-ink: #0a4a96;
  --accent-wash: #ebf4fd;
  --accent-line: #d6e8fb;
  --accent-quiet: #67a2e4;
  --accent-lift: #7eb4f1;

  
  --navy: #0a1a30;
  --navy-deep: #04101f;

  
  --good: #146c43;
  --good-wash: #e9f4ee;
  --good-line: #dce8e1;

  
  --publish: var(--navy);
  --publish-hover: var(--navy-deep);
  --publish-ready: var(--good);
  --publish-ready-hover: #0f5434;

  
  --spinner-size-lg: 112px;
  --spinner-size-sm: 24px;
  --warn: #b54708;
  --warn-ink: #7a2e0e;
  --warn-wash: #fdf4e3;
  --warn-line: #e8d4a8;
  --danger: #b42318;
  --danger-wash: #fbeded;
  --danger-line: #e6b8b8;

  
  --focus: #0b67d0;
  --focus-width: 3px;
  --focus-offset: 2px;

  --font-body: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;

  
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-7: 28px;
  --space-8: 32px;
  --space-10: 40px;

  --radius-1: 6px;
  --radius-2: 10px;
  --radius-3: 14px;
  --radius-4: 20px;

  --shadow-1: 0 1px 2px rgba(16, 22, 35, .04);
  --shadow-2: 0 1px 2px rgba(16, 22, 35, .04), 0 22px 44px -32px rgba(16, 22, 35, .22);
  --shadow-3: 0 1px 2px rgba(16, 22, 35, .04), 0 40px 82px -44px rgba(16, 22, 35, .32);

  
  --min-target: 44px;

  --motion-fast: 120ms;
  --motion-base: 200ms;
  --motion-ease: cubic-bezier(.16, 1, .3, 1);
}


:root {
  --cobalt: var(--accent);
  --cobalt-dark: var(--accent-strong);
  --cobalt-ink: var(--accent-ink);
  --cobalt-soft: var(--accent-wash);
  --cobalt-050: var(--accent-wash);
  --cobalt-100: var(--accent-line);
  --cobalt-line: var(--accent-line);
  --cobalt-wash: var(--accent-line);
  --cobalt-quiet: var(--accent-quiet);
  --cobalt-lift: var(--accent-lift);
  --action: var(--accent);
  --action-strong: var(--accent-strong);

  --text: var(--ink);
  --text-muted: var(--ink-faint);
  --muted: var(--ink-faint);
  --subtle: var(--ink-subtle);
  --ink-on-dark: var(--on-navy-faint);

  --bg: var(--page);
  --ground: var(--page);
  --paper: var(--panel);
  --surface: var(--panel-soft);
  --surface-2: var(--panel-mute);
  --surface-muted: var(--panel-mute);
  --wash: var(--panel-mute);
  --wash-2: var(--panel-mute);
  --wash-3: var(--panel-mute);
  --field: var(--panel-mute);
  --wash-hover: var(--panel-hover);

  --rule: var(--line-soft);
  --rule-mid: var(--line);
  --hair: var(--line);
  --line-field: var(--line);

  --green: var(--good);
  --green-soft: var(--good-wash);
  --green-line: var(--good-line);
  --good-050: var(--good-wash);

  --amber: var(--warn);
  --amber-ink: var(--warn-ink);
  --amber-soft: var(--warn-wash);
  --partial: var(--warn);
  --partial-050: var(--warn-wash);
  --partial-line: var(--warn-line);
  --conflict-soft: var(--warn-wash);
  --conflict-ink: var(--warn-ink);

  --red: var(--danger);
  --red-soft: var(--danger-wash);
  --disputed: var(--danger);
  --disputed-050: var(--danger-wash);
  --disputed-line: var(--danger-line);

  --sans: var(--font-body);
  --font-brand: var(--font-body);
  --font-ui: var(--font-body);
  --mono: var(--font-mono);

  --shadow: var(--shadow-2);
  --lift: var(--shadow-2);
  --radius-sm: var(--radius-2);
  --radius-md: var(--radius-3);
  --radius-lg: var(--radius-4);
  --motion: var(--motion-fast) ease;
}
