/* ============================================================
   EVrace — primitives (сырьё). Всегда первым.
   Источник значений: _local/accent-preview.html + ARCHITECTURE §2.1
   + бренды из audit-02 (tesla/registry — один hex на оператора).
   ============================================================ */

:root {
  /* нейтральная шкала (холодные, Radix-подход) */
  --c-n0: #ffffff;
  --c-n50: #fcfcfd;
  --c-n75: #f0f1f4;
  --c-n100: #f6f6f8;
  --c-n120: #e9eaee;
  --c-n140: #e7e8ec;
  --c-n150: #f0f0f3;
  --c-n170: #e2e3e8;
  --c-n200: #e8e8ec;
  --c-n300: #d9d9e0;
  --c-n400: #b9bbc6;
  --c-n500: #8b8d98;
  --c-n600: #60646c;
  --c-n700: #3e4149;
  --c-n750: #282c35;
  --c-n800: #21232c;
  --c-n820: #20232b;
  --c-n840: #2c313b;
  --c-n850: #181a20;
  --c-n900: #12131a;
  --c-n950: #0b0c11;
  --c-n980: #0b0c10;

  /* статусы — не акцент */
  --c-ok: #30a46c;
  --c-ok-400: #3dd68c;
  --c-err: #e5484d;
  --c-err-400: #ff6369;
  --c-warn: #d9730d;
  --c-warn-400: #ffb224;

  /* токи */
  --c-dc: #e8990c;
  --c-dc-400: #ffce5c;
  --c-ac: #00a7c4;
  --c-ac-400: #3bd0e8;

  /* бренды операторов — ОДИН истинный hex (tesla/registry) */
  --brand-bf: #005eeb;
  --brand-fo: #b44fff;
  --brand-za: #00cfff;
  --brand-uc: #f5821f;
  --brand-cs: #ff6b6b;
  --brand-ma: #00aa55;
  --brand-ev: #7c3aed;
  --brand-or: #ff8c00;
  --brand-pr: #ec4899;
  --brand-gt: #4a7cc7;
  --brand-eo: #2ec7d5; /* EVON */
  --brand-on: #0cffce; /* onepro */
  --brand-sk: #00c7fe; /* SKAT / Белсельэлектросетьстрой */

  /* акцент light/dark — TEAL (финальные значения; метка снимается на Финале) */
  /* ACCENT-PLACEHOLDER — заменяется после выбора пользователя */
  --acc: #0d9488;
  --acc-600: #0f766e;
  --acc-300: #2dd4bf;

  /* типографика — 8 живых ступеней + display clamps */
  --fs-1: 11px;
  --fs-2: 12px;
  --fs-3: 13px;
  --fs-4: 14px;
  --fs-5: 16px;
  --fs-6: 18px;
  --fs-7: 22px;
  --fs-8: 28px;
  --fs-micro: 9px;
  --fs-nano: 10px;

  /* текстовые роли (mobile-first; компоненты читают --t-*, не --fs-*) */
  --t-body-lg: 19px;
  --t-body: 17px;
  --t-label: 15px;
  --t-caption: 14px;
  --lh-body: 1.55;
  --lh-tight: 1.3;
  --lh-data: 1.2;

  /* дисплей (clamp; только заголовки/hero) */
  --d-h3: clamp(18px, 4.5vw, 22px);
  --d-h2: clamp(22px, 6vw, 32px);
  --d-h1: clamp(36px, 7vw, 60px);
  --d-hero: clamp(52px, 9vw, 80px);
  /* legacy-алиасы → к вымыванию */
  --fs-display-s: var(--d-h2);
  --fs-display-m: var(--d-h1);
  --fs-display-l: var(--d-hero);

  /* отступы — 4px-grid */
  --s-1: 4px;
  --s-2: 8px;
  --s-3: 12px;
  --s-4: 16px;
  --s-5: 20px;
  --s-6: 24px;
  --s-7: 32px;
  --s-8: 40px;

  /* радиусы — 7 живых ступеней + pill/circle */
  --radius-0: 0;
  --radius-1: 2px;
  --radius-2: 4px;
  --radius-3: 6px;
  --radius-4: 10px;
  --radius-5: 14px;
  --radius-6: 18px;
  --radius-pill: 999px;
  --radius-circle: 50%;

  /* тени — нейтральные (primitive) */
  --shadow-1: 0 1px 2px rgba(0, 0, 0, 0.06);
  --shadow-2: 0 4px 12px rgba(0, 0, 0, 0.08);
  --shadow-pop: 0 12px 32px rgba(0, 0, 0, 0.16);

  /* arcade anim flags (используются arcade-fx) */
  --anim-flicker: 1;
  --anim-blink: 1;
  --anim-shine: 1;
}

/* desktop: уплотнение текстовой шкалы (STYLE-SKELETON §10 — bp-md) */
@media (min-width: 900px) {
  :root {
    --t-body-lg: 17px;
    --t-body: 16px;
    --t-label: 14px;
    --t-caption: 13px;
  }
}
