/* Токены дизайн-системы G3NG (TZ7-DSN-03). Единственное место, где объявлены цвета, шрифты, размеры.
   Подключается в шаблоне страницы раньше всех стилей. Описание и правила выбора — docs/DESIGN_SYSTEM.md.
   Светлая тема — по умолчанию. Тёмная включается атрибутом <html data-theme="dark">.
   Пары «текст на фоне» проверяет test/design-tokens.test.mjs (не меньше 4.5:1; границы полей и обводка фокуса — не меньше 3:1). */
:root {
  /* квиз vDUD (/dud): восьмибитная комната — своя палитра, одна для обеих тем */
  --dud-bg: #10121c; --dud-panel: #1b1f33; --dud-ink: #f4f1e8; --dud-muted: #8b90a8;
  --dud-acc: #ffd23f; --dud-ok: #3ddc97; --dud-no: #ff5c7a; --dud-blue: #4cc9f0;
  --dud-grid: #1a1d2b; --dud-shadow: #000;
  color-scheme: light;

  /* поверхности и текст */
  --bg: #f4f4f0; --paper: #fff; --ink: #141414; --muted: #6b6b6b;
  --line: #d9d9d2;            /* разделитель, только украшение */
  --line-strong: #8a8a82;     /* граница поля и кнопки: не меньше 3:1 к поверхности */
  --accent: #2b2bff; --accent-bg: #eeeeff;

  /* смысл: заливка (--ok, --warn, --bad — для рамок и значков) и цвет текста на светлой подложке */
  --ok: #2f9e44;   --ok-ink: #1d7a34;   --ok-bg: #eef8ef;
  --warn: #e8a400; --warn-ink: #7a5600; --warn-bg: #fff6dd;
  --bad: #d63031;  --bad-ink: #b32323;  --bad-bg: #fdeeee;
  --chip-bg: #f0f0ea;
  --chrome: #141414; --on-chrome: #fff; --on-chrome-muted: #b5b5ad;   /* инверсная заливка: шапка, нажатая кнопка, тёмная панель, и текст на ней */

  /* шрифты и размеры текста: читаемый текст не мельче 12 px; основной — 15 px */
  --pixel: 'Press Start 2P', monospace;
  --font-body: system-ui, -apple-system, 'Segoe UI', sans-serif;
  --fs-xs: 12px; --fs-s: 13px; --fs-m: 15px; --fs-l: 18px; --fs-xl: 24px;

  /* шаг и форма */
  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px; --space-5: 24px; --space-6: 32px;
  --radius: 0;                /* углы острые: 8-битный стиль */
  --border: 2px solid var(--ink);

  /* цель нажатия: минимум WCAG 2.2 — 24 px, на телефоне стремимся к 44 px */
  --target-min: 24px; --target-touch: 44px;

  /* фокус с клавиатуры */
  --focus-ring: 3px solid var(--accent);
  /* нейтральные: схемы и рамки «ещё не начато»; --neutral и --neutral-strong не меньше 3:1 к поверхности, --neutral-soft — украшение (линии связей) */
  --neutral: #95958d; --neutral-strong: #6c6c64; --neutral-soft: #c4c4bc;

  /* насыщенные подложки: «можно брать» и «в работе» на схемах; сплошные заливки под белый текст (не меньше 4.5:1) */
  --accent-bg-strong: #e2e2ff; --warn-bg-strong: #ffe9a6;
  --ok-solid: #238636; --bad-solid: #da3633;

  /* категории (агенты и группы на схемах Плана и ТЗ): 15 различимых цветов, каждый не меньше 3:1 к --paper */
  --cat-0: #7a1fa2; --cat-1: #1565c0; --cat-2: #00838f; --cat-3: #ad1457; --cat-4: #2e7d32;
  --cat-5: #ef6c00; --cat-6: #5d4037; --cat-7: #c62828; --cat-8: #6a1b9a; --cat-9: #0277bd;
  --cat-10: #558b2f; --cat-11: #d18306; --cat-12: #37474f; --cat-13: #d84315; --cat-14: #455a64;

  /* фирменные цвета ИИ-инструментов на Кубе (страницы Куба всегда тёмные: к --paper не меньше 3:1 проверяется в тёмной теме) */
  --ai-claude: #d97757; --ai-codex: #10a37f; --ai-gemini: #4f8cff; --ai-gpt: #74aa9c; --ai-tree: #b083f0; --ai-tag: #d2a8ff;
  /* текст и линии на тёмной инверсной шапке (--chrome) и тёмных панелях */
  --on-chrome-accent: #b9b9ff;
  /* сплошная акцентная заливка под белый текст (кнопка «Отправить»): не меньше 4.5:1 */
  --accent-solid: #2b2bff;
  /* выделение найденного слова; подсветка «исследования» на странице (комментарии) */
  --mark-bg: #fff06b; --hl: #ff3b00; --hl-2: #ffd600;

  /* общие имена для оболочек (значения подменяет оболочка под data-skin, отдельным файлом): заголовочный шрифт, движение, текст на акцентной заливке;
     в G3NG заголовки пиксельные, движение выключено, на акценте белый текст */
  --font-display: var(--pixel); --motion: 0ms; --on-accent: #fff;
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #121214; --paper: #1c1c20; --ink: #f2f2ee; --muted: #a9a9a3;
  --line: #2e2e33; --line-strong: #6b6b66;
  --accent: #9a9aff; --accent-bg: #25254a;
  --ok: #3fb35a;   --ok-ink: #6fd18a;   --ok-bg: #16301c;
  --warn: #e8a400; --warn-ink: #f0c04a; --warn-bg: #33290a;
  --bad: #ff6b6b;  --bad-ink: #ff8a8a;  --bad-bg: #3a1717;
  --chip-bg: #26262b;
  --chrome: #000; --on-chrome: #fff; --on-chrome-muted: #b5b5ad;
  --neutral: #8a8a85; --neutral-strong: #a8a8a2; --neutral-soft: #4a4a50;
  --accent-bg-strong: #30305e; --warn-bg-strong: #4a3a0a;
  --cat-0: #a129d5; --cat-1: #1667c5; --cat-2: #00838f; --cat-3: #c81765; --cat-4: #2e7d32;
  --cat-5: #ef6c00; --cat-6: #875d50; --cat-7: #c62828; --cat-8: #982dda; --cat-9: #0277bd;
  --cat-10: #558b2f; --cat-11: #f9a825; --cat-12: #546d79; --cat-13: #d84315; --cat-14: #5a7582;
  --accent-solid: #5050f0;
  --mark-bg: #6b5d00;
}
