/*
 * Цветовые темы лендинга (specs/landing-builder.md, «Итерация 3»).
 *
 * Тема переопределяет ТОЛЬКО акцентные токены — `--tf-track`, `--tf-track-deep`,
 * `--tf-track-soft`, `--tf-on-accent`, `--tf-focus` — атрибутом `data-landing-theme` на
 * обёртке публичной страницы — `.tf-coach` у тренера, `.tf-club` у клуба (и в предпросмотре). Шапка
 * сайта, подвал и кабинет стоят вне обёртки и остаются в бренде. Нейтральная шкала,
 * типографика и отступы общие: тема не может сломать читаемость основного текста.
 *
 * `classic` — сам бренд, правил у него нет (атрибут не ставится).
 *
 * Значения повторяют `common\services\landing\LandingThemes`; согласованность и контраст
 * проверяет `LandingThemesTest`. Правишь цвет — правь класс и этот файл вместе.
 *
 * Тёмные значения лежат в двух блоках, как у токенов бренда: системная настройка
 * (`prefers-color-scheme`, пока пользователь не выбрал светлую руками) и явный
 * `data-theme="dark"`.
 */

/*
 * Бутстрап-переменные ссылок и `.bg-primary`/`.text-primary` вычислены на :root
 * (`--bs-link-color: var(--tf-track)` в tokens.css) и до обёртки дошли бы уже готовым
 * цветом бренда. Кнопки, бейджи и рамки читают `--tf-track` на своём элементе и
 * перекрашиваются сами, а ссылкам и `--bs-primary` нужно пересчитаться на обёртке.
 */
[data-landing-theme] {
  --bs-link-color: var(--tf-track);
  --bs-link-hover-color: var(--tf-track-deep);
  --bs-primary: var(--tf-track);
}

/* Лес */
[data-landing-theme="forest"] {
  --tf-track: #2F6B3A;
  --tf-track-deep: #24542D;
  --tf-track-soft: #E0EDE2;
  --tf-on-accent: #FDFDFE;
  --tf-focus: 0 0 0 3px rgba(47, 107, 58, .35);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) [data-landing-theme="forest"] {
    --tf-track: #6DBF7E;
    --tf-track-deep: #82CB91;
    --tf-track-soft: #16261A;
    --tf-on-accent: #0F1216;
    --tf-focus: 0 0 0 3px rgba(109, 191, 126, .4);
  }
}
:root[data-theme="dark"] [data-landing-theme="forest"] {
  --tf-track: #6DBF7E;
  --tf-track-deep: #82CB91;
  --tf-track-soft: #16261A;
  --tf-on-accent: #0F1216;
  --tf-focus: 0 0 0 3px rgba(109, 191, 126, .4);
}

/* Море */
[data-landing-theme="sea"] {
  --tf-track: #1C5F8C;
  --tf-track-deep: #154A6E;
  --tf-track-soft: #DFEAF3;
  --tf-on-accent: #FDFDFE;
  --tf-focus: 0 0 0 3px rgba(28, 95, 140, .35);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) [data-landing-theme="sea"] {
    --tf-track: #5AA9DE;
    --tf-track-deep: #73B7E4;
    --tf-track-soft: #14222D;
    --tf-on-accent: #0F1216;
    --tf-focus: 0 0 0 3px rgba(90, 169, 222, .4);
  }
}
:root[data-theme="dark"] [data-landing-theme="sea"] {
  --tf-track: #5AA9DE;
  --tf-track-deep: #73B7E4;
  --tf-track-soft: #14222D;
  --tf-on-accent: #0F1216;
  --tf-focus: 0 0 0 3px rgba(90, 169, 222, .4);
}

/* Закат */
[data-landing-theme="sunset"] {
  --tf-track: #9A5B00;
  --tf-track-deep: #7A4800;
  --tf-track-soft: #F5E8D3;
  --tf-on-accent: #FDFDFE;
  --tf-focus: 0 0 0 3px rgba(154, 91, 0, .35);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) [data-landing-theme="sunset"] {
    --tf-track: #F0A440;
    --tf-track-deep: #F3B259;
    --tf-track-soft: #2C2213;
    --tf-on-accent: #0F1216;
    --tf-focus: 0 0 0 3px rgba(240, 164, 64, .4);
  }
}
:root[data-theme="dark"] [data-landing-theme="sunset"] {
  --tf-track: #F0A440;
  --tf-track-deep: #F3B259;
  --tf-track-soft: #2C2213;
  --tf-on-accent: #0F1216;
  --tf-focus: 0 0 0 3px rgba(240, 164, 64, .4);
}

/* Графит */
[data-landing-theme="graphite"] {
  --tf-track: #3D4652;
  --tf-track-deep: #2C333C;
  --tf-track-soft: #E1E5EA;
  --tf-on-accent: #FDFDFE;
  --tf-focus: 0 0 0 3px rgba(61, 70, 82, .35);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) [data-landing-theme="graphite"] {
    --tf-track: #B7C2CF;
    --tf-track-deep: #C6CFDA;
    --tf-track-soft: #20262E;
    --tf-on-accent: #0F1216;
    --tf-focus: 0 0 0 3px rgba(183, 194, 207, .4);
  }
}
:root[data-theme="dark"] [data-landing-theme="graphite"] {
  --tf-track: #B7C2CF;
  --tf-track-deep: #C6CFDA;
  --tf-track-soft: #20262E;
  --tf-on-accent: #0F1216;
  --tf-focus: 0 0 0 3px rgba(183, 194, 207, .4);
}

/* Ягода */
[data-landing-theme="berry"] {
  --tf-track: #A3245E;
  --tf-track-deep: #821C4B;
  --tf-track-soft: #F4DFE8;
  --tf-on-accent: #FDFDFE;
  --tf-focus: 0 0 0 3px rgba(163, 36, 94, .35);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) [data-landing-theme="berry"] {
    --tf-track: #E46A9E;
    --tf-track-deep: #E982AE;
    --tf-track-soft: #2D1721;
    --tf-on-accent: #0F1216;
    --tf-focus: 0 0 0 3px rgba(228, 106, 158, .4);
  }
}
:root[data-theme="dark"] [data-landing-theme="berry"] {
  --tf-track: #E46A9E;
  --tf-track-deep: #E982AE;
  --tf-track-soft: #2D1721;
  --tf-on-accent: #0F1216;
  --tf-focus: 0 0 0 3px rgba(228, 106, 158, .4);
}
