/* СГЕНЕРИРОВАНО wp-theme/sync.mjs — не редактировать руками.
   Источник: assets/css/app.css */

:root {
  /* нейтрали — slate 1…12 */
  --bg: #f0f0f3;          /* slate 3 */
  --card: #ffffff;
  --card-2: #f9f9fb;      /* slate 2 */
  --ink: #1c2024;         /* slate 12 */
  --ink2: #60646c;        /* slate 11 */
  --muted: #686c75;       /* между slate 10 и 11: slate 10 даёт на белом 3.8:1 — ниже AA */
  --line: #e0e1e6;        /* slate 5 */
  --line-soft: #e8e8ec;   /* slate 4 */

  /* бренд — teal */
  --brand: #007c6b;       /* teal 11, на полтона темнее: teal 11 как есть даёт на --bg 4.0:1 */
  --brand-2: #12a594;     /* teal 9 — акцент в графиках и прогресс-барах */
  --brand-ink: #0d3d38;   /* teal 12 */
  --brand-bg: #e0f8f3;    /* teal 3 */
  --focus: #007c6b;       /* = --brand: teal 7 давал 1.83:1 на фоне, кольцо фокуса требует 3:1 */
  --brand-hover: #0d3d38; /* teal 12 — заливка кнопки на hover (в тёмной, наоборот, светлеет) */
  --brand-solid: var(--brand);  /* заливка primary-кнопки: в светлой теме = --brand */
  --on-solid: #ffffff;    /* текст поверх насыщенных заливок (.btn, .btn.danger, аватар) */

  /* монеты — внешние бренд-цвета, вне шкал Radix */
  --btc: #DD7A00;
  --btc-soft: #F7931A;
  --eth: #5A68D6;
  --eth-soft: #6472E0;

  /* статусы — jade / red / amber, ступени 11 (текст) и 3 (фон).
     У jade и amber ступень 11 не дотягивает до 4.5:1 на своей же ступени 3 — притемнены. */
  --up: #1d7a61;
  --up-bg: #e6f7ed;
  --down: #ce2c31;
  --down-bg: #feebec;
  --warn: #9c5c00;
  --warn-bg: #fff7c2;
  --neutral-bg: #f0f0f3;  /* slate 3 */

  /* Термометр Hodlometer Index: 1 Deep Freeze → 5 Overheated. Расходящаяся порядковая
     шкала: холод → нейтраль → тепло. Ступени пере-шагнуты в D3a по измерениям, а не на глаз
     (OKLCH-светлота, контраст к обеим поверхностям, симуляция протан/дейтан):
       z3 8b8d98 → 80838d  ΔL к z2 0.015→0.049, к белой карточке 3.30→3.78:1, CVD 7.3→8.5
       z4 ffc53d → ef5f00  L .854→.662: янтарь давал 1.58:1 к белой карточке («Warm» пропадал
                           в светлой теме) и 11.15:1 к тёмной — кричал громче белого числа
       z5 e54d2e → d13415  L .627→.566, держит разрыв светлоты от нового z4
     `-ink` — текст чипа на своём `-bg`, все пять пар ≥4.8:1 в обеих темах; z4 переехал
     с янтарной пары Radix на оранжевую. */
  --therm-1: #3e63dd; --therm-1-bg: #edf2fe; --therm-1-ink: #3a5bc7;  /* indigo */
  --therm-2: #00a2c7; --therm-2-bg: #def7f9; --therm-2-ink: #0f748d;  /* cyan   */
  --therm-3: #80838d; --therm-3-bg: #f0f0f3; --therm-3-ink: #60646c;  /* slate  */
  --therm-4: #ef5f00; --therm-4-bg: #ffefd6; --therm-4-ink: #b04300;  /* orange */
  --therm-5: #d13415; --therm-5-bg: #feebe7; --therm-5-ink: #c53013;  /* tomato */

  /* Палитра серий графиков. Серия — это ЛИБО актив (носит токен актива), ЛИБО метрика
     (носит --data-line): смысл в этом случае несут зоны. Третьего не дано.
     --brand/--brand-2 в графиках запрещены: бренд-цвет означает «интерактивное». */
  --data-btc: var(--btc);
  --data-eth: var(--eth);
  --data-line: var(--ink2);      /* сама метрика: Mayer, F&G */
  --data-line-2: var(--ink);     /* вторая серия того же типа */
  --data-ref: var(--muted);      /* опорные линии, всегда пунктир 4 4 */
  --data-grid: var(--line-soft);
  --data-axis: var(--line);

  /* Тон чипа AI-источника. Имя токена — ключ источника в БД (`gemini`), а не подпись:
     публично он называется «AI» (карта — SRC_NAMES в app.js). */
  --gemini-bg: #edf2fe; --gemini-ink: #3a5bc7;   /* indigo 3 / 11 */

  --tip-bg: #1c2024; --tip-ink: #ffffff; --tip-muted: #b0b4ba;

  /* Радиусы — четыре, больше быть не должно: карточка / контрол / инлайн / пилюля.
     Мобильного оверрайда 14px нет: карточка одного радиуса на всех ширинах. */
  --radius: 16px;      /* карточка */
  --radius-s: 10px;    /* кнопка, поле, поповер, вложенная поверхность */
  --radius-xs: 6px;    /* инлайн-код, свотч, конец полосы */
  --radius-pill: 999px;

  /* Высоты кликабельных элементов — ровно три */
  --control-h: 40px;
  --control-h-sm: 32px;
  --control-h-xs: 24px;

  /* Тени: покой, наведение на карточку, поповер, активный сегмент. Пятой нет. */
  --shadow: 0 1px 2px rgba(28, 32, 36, .05), 0 10px 28px -16px rgba(28, 32, 36, .14);
  --shadow-hover: var(--shadow), 0 0 0 1px var(--line);
  --shadow-pop: 0 2px 6px -2px rgba(28, 32, 36, .10), 0 14px 34px -10px rgba(28, 32, 36, .26);
  --shadow-inset-sm: 0 1px 3px rgba(28, 32, 36, .14);

  /* Движение: две длительности на всё интерактивное. Было четыре почти неразличимых
     (.15/.16/.18/.2). Третья, --dur-slow, нужна ровно одному сценарию — затуханию
     подсветки :target в глоссарии: её задача не «отреагировать», а дать глазу время
     найти термин среди 47 и уйти, не оставив цветного пятна на странице. */
  --dur-fast: 120ms;
  --dur: 200ms;
  --dur-slow: 1200ms;
  --ease: cubic-bezier(.2, .8, .3, 1);
  --font: "Inter Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
  /* Space Grotesk без кириллицы: русские заголовки автоматически падают на Inter */
  --font-display: "Space Grotesk", "Inter Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;

  /* Типографическая шкала — одна на оба движка, девять ступеней и ни одного значения вне
     таблицы. До D3a рядом с шестью токенами жили 25 захардкоженных кеглей, из них 13 ступеней
     с шагом 0.5px между 11 и 17 — иерархии это не давало, разнобой давало.
     Полоса 13.5–16.5 схлопнута в --fs-sm 13 / --fs-base 15 / --fs-h3 17.
     Значения на узких экранах переопределяются в components.css (переопределяем токены,
     а не правила); ступени применяются там же, здесь — только источник правды. */
  --fs-4xl: 60px;       --lh-4xl: 1;       /* только .err-code */
  --fs-3xl: 44px;       --lh-3xl: 1.05;    /* hero-число, ровно одно на экран */
  --fs-2xl: 34px;       --lh-2xl: 1.1;     /* значение показания (.read-val) */
  --fs-xl: 26px;        --lh-xl: 1.15;     /* значение KPI (.stat-value), .hv-clock .num */
  --fs-h1: 40px;        --lh-h1: 1.1;
  --fs-h1-hero: 46px;   /* единственное исключение: герой главной */
  --fs-h2: 24px;        --lh-h2: 1.25;
  --fs-lg: 20px;        --lh-lg: 1.35;     /* h3 лонгрида, .gloss-term, название зоны гейджа */
  --fs-h3: 17px;        --lh-h3: 1.35;     /* заголовок карточки */
  --fs-prose: 17px;     --lh-prose: 1.7;   /* лонгрид */
  --fs-base: 15px;      --lh-base: 1.5;    /* интерфейс: сюда 14 / 14.5 / 15.5 / 16 */
  --fs-sm: 13px;        --lh-sm: 1.5;      /* мета, подписи: сюда 13.5 */
  --fs-xs: 12px;        --lh-xs: 1.3;      /* чипы, надзаголовки, th: сюда 11.5 / 12.5 */
  --fs-2xs: 11px;       --lh-2xs: 1.2;     /* только засечки осей SVG */

  /* Отступы: шкала 4px. Значений вне неё быть не должно — до D3a в трёх файлах жили
     57 различных padding и ~24 значения gap. Вёрстка использует семантические алиасы
     ниже, а не числа; на узких экранах переопределяются сами алиасы (components.css). */
  --space-1: 4px;   --space-2: 8px;   --space-3: 12px;  --space-4: 16px;
  --space-5: 20px;  --space-6: 24px;  --space-7: 32px;  --space-8: 40px;
  --space-9: 48px;  --space-10: 56px; --space-11: 64px; --space-12: 80px;

  --gap-grid: var(--space-4);        /* шаг между карточками, оба движка */
  --pad-card: var(--space-5);        /* внутренние поля карточки */
  --space-section: var(--space-10);  /* между секциями: было 26px при gap 16 — макро-ритма
                                        не возникало, страница читалась одной текстурой.
                                        Отношение к внутрисеточному шагу должно быть ≥3× */
  --space-block: var(--space-3);     /* надзаголовок → содержимое */
  --space-cta: var(--space-7);       /* содержимое секции → хвостовое действие. Строго между
                                        --gap-grid (16) и --space-section (56): при 16 CTA
                                        читается третьей карточкой ряда, при 56 — новой
                                        секцией. 16 : 32 : 56 = 1 : 2 : 3.5 */
  --space-page-top: var(--space-8);  /* шапка → h1, одинаково в обоих движках */

  /* Две ширины на весь сайт, третьей быть не должно */
  --measure-prose: 720px;   /* колонка чтения */
  --measure-full: 1140px;   /* содержимое .wrap за вычетом паддингов */
  /* Боковик с оглавлением: 720 + 48 (gap --space-9) + 260 = 1028 ≤ 1140. Третьей
     колонкой чтения не является — это служебная полоса, а не текст. */
  --side: 260px;

  color-scheme: light;
}

:root[data-theme="dark"] {
  --bg: #111113;          /* slate dark 1 */
  --card: #18191b;        /* slate dark 2 */
  --card-2: #212225;      /* slate dark 3 */
  --ink: #edeef0;         /* slate dark 12 */
  --ink2: #b0b4ba;        /* slate dark 11 */
  --muted: #8b8f98;       /* между slate dark 10 и 11: 10 даёт на --card-2 3.8:1 */
  --line: #2e3135;        /* slate dark 5 */
  --line-soft: #272a2d;   /* slate dark 4 */

  --brand: #0eb39e;       /* teal dark 10 */
  --brand-2: #0bd8b6;     /* teal dark 11 */
  --brand-ink: #adf0dd;   /* teal dark 12 */
  --brand-bg: #0d2d2a;    /* teal dark 3 */
  --focus: #0eb39e;       /* = --brand: teal dark 7 давал 2.91:1 */
  --brand-hover: #0bd8b6; /* teal dark 11 */
  /* Заливка primary-кнопки на ступень темнее ссылки: teal dark 10 делал кнопку
     вторым по яркости пятном тёмного экрана. Ступень 9 держит 5.55:1 к --on-solid
     (порог 4.5) и перестаёт спорить с содержимым. Ссылки и кольцо фокуса при этом
     остаются на ступени 10 — им яркость нужна. */
  --brand-solid: #12a594; /* teal dark 9 */
  --on-solid: #06201d;    /* тёмный текст поверх ярких заливок */

  --btc: #F7931A;
  --btc-soft: #FFB04D;
  --eth: #8E9BF5;
  --eth-soft: #A3ADF8;

  --up: #1fd8a4;
  --up-bg: #0f2e22;
  --down: #ff9592;
  --down-bg: #3b1219;
  --warn: #ffca16;
  --warn-bg: #302008;
  --neutral-bg: #212225;

  /* Термометр: ступень 9 у Radix одинакова в обеих темах, поэтому четыре из пяти зон
     совпадают со светлыми. Своя ступень нужна только нейтрали (#7c8087 — 4.44:1
     к тёмной карточке против 3.43:1 у прежнего #696e77). */
  --therm-1: #3e63dd; --therm-1-bg: #182449; --therm-1-ink: #9eb1ff;
  --therm-2: #00a2c7; --therm-2-bg: #082c36; --therm-2-ink: #4ccce6;
  --therm-3: #7c8087; --therm-3-bg: #212225; --therm-3-ink: #b0b4ba;
  --therm-4: #ef5f00; --therm-4-bg: #331e0b; --therm-4-ink: #ffa057;
  --therm-5: #d13415; --therm-5-bg: #391714; --therm-5-ink: #ff977d;

  --gemini-bg: #182449; --gemini-ink: #9eb1ff;

  --tip-bg: #2e3135; --tip-ink: #edeef0; --tip-muted: #b0b4ba;

  --shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 10px 28px -16px rgba(0, 0, 0, .7);
  --shadow-pop: 0 2px 6px -2px rgba(0, 0, 0, .5), 0 14px 34px -10px rgba(0, 0, 0, .75);
  --shadow-inset-sm: 0 1px 3px rgba(0, 0, 0, .5);
  color-scheme: dark;
}
