/* Hermes — дизайн-токены (основа: Nocturne). Тёмная тема по умолчанию, светлая — [data-theme="light"].
   Светлая тема получена инверсией тональных шкал Nocturne: шаг 100 ↔ 900 и т. д.,
   поэтому «тёмные шаги для заливок» в тёмной теме автоматически становятся светлыми в светлой. */
:root {
  /* Основа */
  --color-bg: #161826;
  --color-surface: #232532;
  --color-text: #e9e9ed;
  --color-accent: #9184d9;
  --color-divider: color-mix(in srgb, #e9e9ed 16%, transparent);

  /* Нейтральная шкала */
  --color-neutral-100: #f3f5fe; --color-neutral-200: #e4e7f5; --color-neutral-300: #cfd3e5;
  --color-neutral-400: #b2b6ca; --color-neutral-500: #9397ab; --color-neutral-600: #75798c;
  --color-neutral-700: #595d6c; --color-neutral-800: #3f424d; --color-neutral-900: #292b31;

  /* Акцентная шкала */
  --color-accent-100: #f5f4ff; --color-accent-200: #e7e5fe; --color-accent-300: #d2cefd;
  --color-accent-400: #b5abfc; --color-accent-500: #968ae0; --color-accent-600: #796cbf;
  --color-accent-700: #5d5294; --color-accent-800: #423a6a; --color-accent-900: #2b2741;

  /* Hermes: поверхности */
  --h-raised: #2a2c3a;   /* приподнятая поверхность внутри surface */
  --h-sunken: #1b1d2b;   /* фон холста, код, YAML */
  --h-grid: color-mix(in srgb, #e9e9ed 9%, transparent); /* точки сетки холста, шаг 20px */
  --h-paper: #e4e7f5;    /* миниатюра PDF */
  --h-ink: #595d6c;      /* строки текста на миниатюре */
  --h-seal: oklch(0.66 0.14 255); /* синяя печать ИП */

  /* Hermes: статусы (добавлены сверх Nocturne — у системы один акцент) */
  --h-danger: oklch(0.74 0.13 25);  --h-danger-bg: oklch(0.30 0.06 25);  /* инцидент, удаление, блокировка */
  --h-warn:   oklch(0.83 0.11 80);  --h-warn-bg:   oklch(0.31 0.05 80);  /* «извне», устарело, тест */
  --h-ok:     oklch(0.80 0.09 160); --h-ok-bg:     oklch(0.29 0.04 160); /* выполнено, исправно, «призрак: новый» */

  /* Типографика */
  --font-heading: "Inter", system-ui, sans-serif;
  --font-body: "Inter", system-ui, sans-serif;
  --font-mono: ui-monospace, "SF Mono", Menlo, monospace; /* YAML, CEL, данные извне */
  --font-heading-weight: 500;

  /* Отступы (плотность 0.7×) */
  --space-1: 2.8px; --space-2: 5.6px; --space-3: 8.4px; --space-4: 11.2px; --space-6: 16.8px; --space-8: 22.4px;

  /* Радиусы */
  --radius-sm: 4px; --radius-md: 8px; --radius-lg: 14px;
  /* В прототипе также: 5–6px (чипы, теги), 10px (узел-задача, панели), 12px (карточки экранов) */

  /* Тени */
  --shadow-sm: 0 0 0 1px #3f424d;
  --shadow-md: 0 0 0 1px #595d6c, 0 6px 18px rgba(0,0,0,0.55);
  --shadow-lg: 0 0 0 1px #9397ab, 0 16px 40px rgba(0,0,0,0.65);
}

[data-theme="light"] {
  --color-bg: #eceef8; --color-surface: #f8f9fe; --color-text: #292b31;
  --color-accent: #5d5294; --color-divider: color-mix(in srgb, #292b31 16%, transparent);
  --color-neutral-100: #292b31; --color-neutral-200: #3f424d; --color-neutral-300: #595d6c;
  --color-neutral-400: #75798c; --color-neutral-500: #9397ab; --color-neutral-600: #b2b6ca;
  --color-neutral-700: #cfd3e5; --color-neutral-800: #e4e7f5; --color-neutral-900: #eef0f9;
  --color-accent-100: #2b2741; --color-accent-200: #423a6a; --color-accent-300: #5d5294;
  --color-accent-400: #796cbf; --color-accent-500: #968ae0; --color-accent-600: #b5abfc;
  --color-accent-700: #d2cefd; --color-accent-800: #e7e5fe; --color-accent-900: #f1f0ff;
  --shadow-sm: 0 0 0 1px #cfd3e5;
  --shadow-md: 0 0 0 1px #cfd3e5, 0 6px 18px rgba(41,43,49,0.10);
  --shadow-lg: 0 0 0 1px #b2b6ca, 0 16px 40px rgba(41,43,49,0.16);
  --h-raised: #f3f5fe; --h-sunken: #e4e7f5; --h-grid: color-mix(in srgb, #292b31 10%, transparent);
  --h-paper: #f8f9fe; --h-ink: #b2b6ca; --h-seal: oklch(0.50 0.16 255);
  --h-danger: oklch(0.50 0.16 25); --h-danger-bg: oklch(0.93 0.04 25);
  --h-warn: oklch(0.50 0.11 70);   --h-warn-bg: oklch(0.94 0.05 85);
  --h-ok: oklch(0.48 0.10 160);    --h-ok-bg: oklch(0.93 0.04 160);
}

/* Типографическая шкала (px): h1 42 · h2 32 · h3 25 · h4 20 · h5 16 · h6 13 uppercase 0.08em
   body 15/1.55 · интерфейс 13–14 · мета 11–12 · кикер 10 uppercase 0.1em. Заголовки — 500, не жирнее. */
