/* ═══ МОВА А — РОБОЧА ═══════════════════════════════════════════════════════
   Для інструментів, якими користуються ГОДИНАМИ ЩОДНЯ люди з навичкою:
   CRM, воронки, реєстри, пошук (сектори 1, 8, 10 карти секторів §4.1).
   Характер: професійний інструмент — темна основа, скляні панелі, підсвітка.
   Орієнтири виміряні: Linear, Raycast, Vercel (зріз 06.08.2026).

   ТІЛЬКИ ТОКЕНИ. Жодного компонента: компоненти пишуться виключно через ці
   змінні, тому мова міняється підміною ОДНОГО файла, а не переписуванням
   екранів (архітектура доведена на робочому продукті).

   Чим тримається (звірено з таблицею §4.3 «Інтерфейси провідних платформ»):
     · щільність: висота цілі 32–36 px [ВИМІР]
     · рух станів керувань 50–90 мс [ВИМІР] — інструмент відповідає на дотик;
       довше лишається там, де рух НЕСЕ ЗМІСТ (панель, шухляда, лічильник)
     · колір семантичний, фокус усередину в щільних рядах [ВИМІР]

   Гейти палітри (обидві теми, виміряно 06.08.2026):
     темна:  L* тла 12.2 · ΔL* поверхні 7.1 · Lc тіла 93.9 · Lc акценту 68.7
     світла: L* тла 96.2 · ΔL* 3.8 · Lc тіла 97.6 · Lc акценту 67.8
   Нейтралі теплі (hue 80 OKLCH ≈ 40°) з хромою ≤0.014: холодна нейтраль на
   довгій сесії «дзвенить» — а ця мова і є мовою довгих сесій.
   ═══════════════════════════════════════════════════════════════════════════ */

:root{
  --mova:"a-robocha";
  --f-dysplei:Manrope,Inter,system-ui,sans-serif;

  /* Ергономіка робочої сесії */
  --vysota-cili:32px;        /* базове керування: кнопка, поле, пункт */
  --vysota-cili-l:36px;      /* головні керування, рядок таблиці */
  --kegl-bazovyi:14px;       /* тіло щільного інструмента */
  --kegl-dribnyi:12.5px;
  --trekink:-.006em;         /* ледь мінусовий — тільки для екрана зблизька */
  --trekink-zaholovok:-.018em;
  --fokus-tovshchyna:2px;

  /* Радіус: помірний. Це інструмент, не застосунок для дозвілля. */
  --r-xs:4px; --r-sm:7px; --r:10px; --r-lg:14px; --r-full:999px;

  /* Рух: 50–90 мс на станах керувань; зміст — повільніше.
     Пружина через linear() — без JS і без бібліотек. */
  --t-instant:50ms; --t-fast:90ms; --t:180ms; --t-slow:320ms;
  --ease:cubic-bezier(.2,.8,.28,1);
  --pruzhyna:linear(0,.0088 1.2%,.0346 2.5%,.1409 5.2%,.6088 14.6%,.7936 18.4%,
    .9268 22.4%,1.0159 26.6%,1.0625 31.4%,1.0722 36.6%,1.0538 43.4%,1.0006 60%,
    .9997 73.2%,1);

  /* Скло й глибина — ядро характеру мови */
  --sklo-blur:20px;
  --sklo-nasych:1.4;
  --pidsvitka:0 0 0 1px color-mix(in oklch,var(--akcent) 40%,transparent),
              0 0 18px -2px color-mix(in oklch,var(--akcent) 45%,transparent);

  /* Дублювання станів формою тут вимкнене (носій стану — колір+текст);
     токени існують, щоб компоненти писались однаково для всіх мов. */
  --forma-norma:""; --forma-uvaha:""; --forma-krytych:"";
}

/* ── ТЕМНА (основна для цієї мови) ──────────────────────────────────────────
   Тло навмисно не чорне: чорне з білим текстом дає ореоли (halation), а на
   OLED ще й «розмазує» рух. L* 12 — низ дозволеної смуги: виглядає майже
   чорним, але без цієї ціни. */
:root[data-tema=dark]{
  --tlo:oklch(.245 0 0);
  --tlo-2:oklch(.215 0 0);           /* глибші западини: рейка, підвал */
  --poverhnya:oklch(.305 0 0);
  --poverhnya-2:oklch(.350 0 0);     /* піднята: спливне, активне */
  --sklo:oklch(.305 .012 80 / .72);      /* під backdrop-filter */
  --tilo:oklch(.945 0 0);
  --prygl:oklch(.820 0 0);
  --mezha:oklch(.400 0 0);
  --mezha-m:oklch(.350 0 0);
  --mezha-svitla:oklch(1 0 0 / .07);     /* верхнє ребро — «світло згори» */

  --akcent:oklch(.80 .13 182);
  /* Акцент ЯК ТЕКСТ на власній підкладці: у темній темі підкладка темна,
     і світлий акцент дає запас — окремий тон не потрібен. */
  --akcent-tekst:oklch(.80 .13 182);
  --akcent-2:oklch(.81 .13 72);
  --uvaha:oklch(.81 .13 72);
  --dobre:oklch(.82 .15 150);
  --krytych:oklch(.85 .15 25);
  --na-akcenti:oklch(.20 .02 182);
  --akcent-tlo:color-mix(in oklch,var(--akcent) 14%,transparent);

  /* Кіль (`0 0 0 1px`) ПЕРШИМ шаром тіні. Без нього межу малює окремий
     `border`, і між темами вони розʼїжджаються: тінь темніє, рамка лишається,
     картка виглядає наліпленою. Кіль їде разом із тінню. */
  --tin-1:0 0 0 1px oklch(1 0 0 / .05), 0 1px 2px oklch(0 0 0 / .40);
  --tin-2:0 0 0 1px oklch(1 0 0 / .06), 0 2px 6px oklch(0 0 0 / .38), 0 8px 24px -8px oklch(0 0 0 / .55);
  --tin-3:0 0 0 1px oklch(1 0 0 / .07), 0 4px 12px oklch(0 0 0 / .42), 0 20px 48px -12px oklch(0 0 0 / .62);
  color-scheme:dark;
}

/* ── СВІТЛА ─────────────────────────────────────────────────────────────────
   Не «інверсія темної», а власна пара: у світлій глибину дає тінь, а не скло,
   бо розмиття по світлому тлу читається як брудна пляма. */
:root[data-tema=light]{
  --tlo:oklch(.968 0 0);
  --tlo-2:oklch(.945 0 0);
  --poverhnya:oklch(1 0 0);
  --poverhnya-2:oklch(1 0 0);
  --sklo:oklch(1 0 80 / .78);
  --tilo:oklch(.22 0 0);
  --prygl:oklch(.50 0 0);
  --mezha:oklch(.885 0 0);
  --mezha-m:oklch(.925 0 0);
  --mezha-svitla:oklch(0 0 0 / .05);

  --akcent:oklch(.52 .11 182);
  /* Той самий .52 на акцентній підкладці давав APCA Lc 59 при потрібних 60 —
     єдине місце нижче порогу зі 192 перевірених (вимір 06.08.2026). Опускати
     сам `--akcent` не можна: він тримає кнопки, фокус і посилання, де контраст
     уже з запасом. Тому окремий тон САМЕ для тексту на підкладці:
     .46 → Lc 66, тобто 6 пунктів запасу — як тримають Carbon і Stripe. */
  --akcent-tekst:oklch(.46 .11 182);
  --akcent-2:oklch(.55 .13 62);
  --uvaha:oklch(.55 .13 62);
  --dobre:oklch(.52 .14 150);
  --krytych:oklch(.52 .19 25);
  --na-akcenti:oklch(1 0 0);
  --akcent-tlo:color-mix(in oklch,var(--akcent) 8%,transparent);

  --tin-1:0 0 0 1px oklch(.25 .02 80 / .05), 0 1px 2px oklch(.25 .02 80 / .07);
  --tin-2:0 0 0 1px oklch(.25 .02 80 / .06), 0 2px 5px oklch(.25 .02 80 / .07), 0 8px 20px -8px oklch(.25 .02 80 / .13);
  --tin-3:0 0 0 1px oklch(.25 .02 80 / .07), 0 4px 10px oklch(.25 .02 80 / .08), 0 18px 40px -12px oklch(.25 .02 80 / .18);
  color-scheme:light;
}

/* ── ЧАРТОВИЙ ШАР ───────────────────────────────────────────────────────────
   `charts.js` малює через `var(--ch-*)` з власними фолбеками. До 08.08.2026
   цих токенів не визначала ЖОДНА мова — тобто чарти завжди падали на зашиту
   палітру (сталево-синій + помаранчевий) і не мінялись разом із мовою. README
   обіцяв «підміна одного <link> міняє характер продукту», а графіки цієї
   обіцянки не виконували: на екрані мови А стояв чужий набір барв.
   Тепер чарт говорить тією самою мовою, що й решта продукту.
   Визначено в `:root`, а не в темах: значення — посилання на токени теми,
   тож перемикач теми несе їх за собою автоматично. */
:root{
  --ch-ink:var(--tilo);       --ch-muted:var(--prygl);
  --ch-grid:var(--mezha-m);   --ch-axis:var(--mezha);
  --ch-bar:var(--prygl);      --ch-accent:var(--akcent);
  --ch-ok:var(--dobre);       --ch-ok-m:color-mix(in oklab, var(--dobre) 55%, var(--tlo));
  --ch-neg:var(--krytych);    --ch-neg-m:color-mix(in oklab, var(--krytych) 55%, var(--tlo));
  --ch-bench:var(--uvaha);    --ch-paper:var(--na-akcenti);
  --ch-area1:color-mix(in oklab, var(--akcent) 12%, var(--tlo));
  --ch-area2:color-mix(in oklab, var(--akcent) 26%, var(--tlo));
  --ch-area3:color-mix(in oklab, var(--akcent) 45%, var(--tlo));
}
