/* ── Адаптер: ванильный CSS ────────────────────────────────
   Для проектов без Tailwind, где геометрия задана литералами
   (border-radius:8px и подобное). Переводить сотни литералов
   на переменные ради профиля не стоит: разброс значений несёт
   смысл (мелкий чип и крупная карточка скруглены по-разному),
   и массовая замена его стёрла бы.

   Вместо этого профиль перекрывает геометрию у списка ключевых
   элементов. Список правится под проект — он и есть точка
   настройки этого адаптера.

   Подключается ПОСЛЕ основного css проекта. */

/* Шаг 1. Токены проекта, если они есть. Имена под проект. */
:root:root[data-profile] {
  --r: var(--pf-radius);
  --sans: var(--pf-font);
  --mono: var(--pf-font-num);
}

/* Шаг 2. Геометрия ключевых элементов.
   :where() держит специфичность нулевой — точечные правила
   проекта продолжают побеждать там, где скругление осмысленно
   (аватары, переключатели, круглые значки). */
:root:root[data-profile] :where(
  .card, .pcard, .kpic, .modal, .login,
  .btn, .btn-sm, .field input, .field select, .field textarea,
  .col-body, .bchip, .pc-chip, .ptab, .navitem, .switch
) {
  border-radius: var(--pf-radius);
}

/* Плотные профили гасят тени: на острой геометрии они лишние. */
:root:root[data-profile="pult"] :where(.card, .pcard, .modal, .kpic),
:root:root[data-profile="shtab"] :where(.card, .pcard, .modal, .kpic),
:root:root[data-profile="kartoteka"] :where(.card, .pcard, .modal, .kpic),
:root:root[data-profile="bumaga"] :where(.card, .pcard, .modal, .kpic),
:root:root[data-profile="tseh"] :where(.card, .pcard, .modal, .kpic) {
  box-shadow: none;
}

/* Заголовки и числа берут роли из профиля. */
.pf-head { font-family: var(--pf-font-head); font-weight: var(--pf-head-weight); }
.pf-num { font-family: var(--pf-font-num); font-variant-numeric: tabular-nums; }
