/* ============================================================
   Deskee — направление 9, слой правок поверх кита

   Направление 9 выбрано владельцем (ПЛАН-ЗАПУСКА.md, раздел 6.3).
   Сам кит подключается отдельно и дословно: kit-components.css.
   Здесь — только то, что мы поверх него меняем.

   ЗАЧЕМ ОТДЕЛЬНЫМ ФАЙЛОМ. До этого правки жили ВНУТРИ страницы
   «Кит — направление 9 (вычищенный).html» — то есть в одном из двух
   набросков, которые лежат рядом ради сравнения «как прислан» и
   «вычищенный». Пара 8 против 9 обязана остаться нетронутой, а всё
   новое — приложение, сайт, кабинет — не может брать стили копированием
   из наброска: копии расходятся молча. Файл наброска не тронут, правки
   отсюда ему повторяют то же самое.

   ВСЕ ЧИСЛА НИЖЕ ИЗМЕРЕНЫ, а не взяты на глаз: contrast-check.py и
   аудит-кита.py из того же каталога.
   ============================================================ */

/* Единственная правка самого кита, и она не про вкус: text-transform:
   capitalize у кнопок. В английском приём нормальный, по-русски даёт
   «Оставить Заявку На Пилот». */
.btn { text-transform: none; }

/* ВТОРИЧНЫЙ ТЕКСТ. Светлая #a8aab4 — 2.31 на белом, 2.16 на фоне
   приложения; тёмная #7b7d95 — 3.05 на карточке. Минимум 4.5.
   Стало: 5.08 / 4.75 и 4.90 / 5.58. */
:root, [data-theme="light"] { --app-text-muted: #6b6e79; }
[data-theme="dark"]         { --app-text-muted: #a0a2ba; }

/* ССЫЛКИ. #666cff как текст — 4.07 на белом и 3.81 на фоне приложения,
   то есть ссылка читается хуже обычного текста. #5257e0: 5.53 и 5.17.
   Тот же цвет, что у сплошной кнопки, — одно значение вместо двух. */
:root, [data-theme="light"] { --app-link: #5257e0; --app-link-hover: #4348c4; }
/* И обязательно вернуть тёмной теме её собственную ссылку: :root
   матчится ВСЕГДА, и без этой строки в тёмной теме ссылки становятся
   тёмно-индиговыми на тёмном фоне — 1.98 вместо китовых 5.57.
   Правило, выведенное на этой ошибке: правишь токен темы — правь обе. */
[data-theme="dark"] { --app-link: #a3a7ff; --app-link-hover: #acb0ff; }

/* Белый текст на сплошном индиго — те же 4.07. */
.nav a.active, .b-solid-primary { background: #5257e0; }
.btn-outline:hover { background: #5257e0; }

/* Герой: белый на градиенте давал 2.79 в середине и 2.20 на светлом
   конце. Сдвигаем градиент в глубину — светлый конец теперь 5.53. */
.hero { background: linear-gradient(135deg, #4348c4 0%, #5257e0 100%); }

/* Аватары: белые инициалы на светлом конце давали 2.79. */
.avatar { background: linear-gradient(135deg, #4348c4, #5257e0); }

/* ГРАНИЦЫ ЭЛЕМЕНТОВ УПРАВЛЕНИЯ — не украшение: по границе человек
   понимает, где поле ввода. Было 1.84 в светлой и 2.36 в тёмной при
   пороге 3:1 (WCAG 1.4.11). Стало 3.23 и 3.05. Границы карточек и
   разделители таблиц НЕ трогаем — правило 3:1 к ним не относится, а
   поднять их значило бы убить мягкость, ради которой кит и выбран. */
:root, [data-theme="light"] { --app-gray-300: #8b8f9c; }
[data-theme="dark"]         { --app-gray-300: #7b7d95; }

/* Подсветка строки таблицы при наведении была 1.04 — то есть её нет. */
.tbl tbody tr:hover { background: var(--app-gray-50); }

/* ФОКУС С КЛАВИАТУРЫ. В ките он объявлен только у кнопки и поля ввода;
   у ссылок и пунктов меню нет вовсе, а у переключателя невозможен —
   сам флажок нулевого размера с opacity: 0, показывать нечего. */
a:focus-visible, .nav a:focus-visible {
  outline: 2px solid var(--app-primary); outline-offset: 2px;
  border-radius: var(--app-radius-sm);
}
.switch input:focus-visible + .slider {
  outline: 2px solid var(--app-primary); outline-offset: 2px;
}

/* Кит объявляет color-scheme: light dark и при этом сам переключает тему
   атрибутом. Из-за этого системные полосы прокрутки и выпадающие списки
   следуют настройке ОС, а не странице. Привязываем к теме. */
:root, [data-theme="light"] { color-scheme: light; }
[data-theme="dark"]         { color-scheme: dark; }

/* ============================================================
   ДОБАВЛЕНО ПОВЕРХ НАПРАВЛЕНИЯ 9 — сплошные кнопки

   В наброске 9 этого нет, и это не придирка: набросок — страница, на
   которой сплошных кнопок почти не встречается. В приложении они несут
   главные действия, и обе не проходят порог.

     белый на .btn-primary  #666cff — 4.07   (нужно 4.5)
     белый на .btn-danger   #ff4d49 — 3.28

   Красная — это «Прервать подключение», та самая, которую человек ищет
   в тревоге. Значения берём из contrast-fixes.css, где они уже были
   выведены для направления 7: 5.53 и 5.67.

   Сам #666cff остаётся для заливок, графиков и теней: там контраст
   текста ни при чём.
   ============================================================ */
:root, [data-theme="light"] {
  /* ОДИН ИНДИГО ВМЕСТО ДВУХ (21.08.2026, решение владельца).
     
     Было так: --app-primary — китовый #666cff, а везде, где на цвете лежит
     текст, стоял затемнённый #5257e0. Разделение выведено правильно и по
     делу — белый на #666cff даёт 4.07 при пороге 4.5. Но у знака Р₂ тон
     ровно #5257e0, и рядом получалось два похожих индиго: марка одного
     тона, а граница кнопки, тень и заливка — другого. На глаз это не
     «оттенок», это ощущение, что цвет не выбран.
     
     Светлая тема сводится к тону знака целиком. Контраст от этого только
     растёт: цвет темнее прежнего везде, где он менялся.
     
     ТЁМНАЯ ТЕМА НЕ ТРОГАЕТСЯ. Там акцент обязан быть СВЕТЛЕЕ фона, и
     #666cff держит эту роль; у знака для тёмного своя выворотка
     (знак-р2-белый.svg), тона #5257e0 она не требует. */
  --app-primary:       #5257e0;
  --app-primary-rgb:   82, 87, 224;
  --app-primary-hover:  #4348c4;
  /* Остаётся ради тёмной темы: там solid и primary по-прежнему разные. */
  --app-primary-solid: #5257e0;
  --app-danger-solid:  #c62622;
  --app-danger-text:   #a4142f;   /* 7.72 на белом, 6.38 на danger-subtle */
}
[data-theme="dark"] {
  /* На тёмном фоне кнопка СВЕТЛЕЕ фона, и затемнять её незачем.
     Здесь же возвращаем сам --app-primary: сведение к тону знака сделано на
     :root, а :root действует и на страницу, которой ЯВНО велели быть тёмной.
     Тот же возврат есть в system-theme.css — для темы по настройке системы. */
  --app-primary: #666cff; --app-primary-rgb: 102, 108, 255;
  --app-primary-hover: #7b80ff;
  --app-primary-solid: #666cff;
  --app-danger-solid:  #c62622;
  --app-danger-text:   #ff9492;
}
.btn-primary { background: var(--app-primary-solid); border-color: var(--app-primary-solid); }
.btn-primary:hover { background: #4348c4; border-color: #4348c4; }
[data-theme="dark"] .btn-primary:hover { background: var(--app-primary-hover); border-color: var(--app-primary-hover); }
.btn-danger  { background: var(--app-danger-solid);  border-color: var(--app-danger-solid); }
.btn-danger:hover { background: #a81f1c; border-color: #a81f1c; }

/* .btn-success и .btn-warning сплошными НЕ ПОЛЬЗУЕМСЯ вовсе: белый на
   китовом зелёном даёт 1.68, на жёлтом — 1.78. Это не чинится
   подкруткой оттенка, это другой цвет. Успех и предупреждение
   показываем мягкими бейджами (.b-success, .b-warning) — там текст
   тёмный и контраст в порядке. */

/* ============================================================
   ДОБАВЛЕНО ПОВЕРХ НАПРАВЛЕНИЯ 9 — надписи кнопок без заливки

   Найдено на макете приложения: .btn-ghost, .btn-outline и .btn-tonal
   красят надпись в --app-primary #666cff, и это ровно тот случай, что
   уже чинили у ссылок, — только там правился токен --app-link, а кнопки
   берут цвет отдельно и правку не увидели.

     #666cff на белом                     — 4.07   (нужно 4.5)
     #666cff на фоне приложения #f7f7f9   — 3.81
     #666cff на тёмной поверхности        — 3.02
     #666cff на тёмном фоне               — 3.44

   Ставим тот же цвет, что у ссылки: одно значение вместо двух.

     #5257e0 на белом 5.53, на фоне 5.17, на tonal-подложке 4.55
     #a3a7ff на тёмной поверхности 5.57, на тёмном фоне 6.35, tonal 4.70

   Заливку .btn-outline и его границу не трогаем: у границы порог 3:1,
   и 4.07 его проходит. */
.btn-ghost, .btn-outline, .btn-tonal { color: var(--app-link); }
.btn-tonal:hover, .btn-outline:hover { color: #fff; }
.btn-ghost:hover { color: var(--app-link-hover); }
