/* ПАРТНЕРЫ — 77prs.ru · tokens.css
 * Единственное место, где живут значения цветов, отступов и размеров.
 * Тема переключается атрибутом [data-theme="dark"] на <html>.
 *
 * БРЕЙКПОИНТЫ (легенда — CSS-переменные не работают внутри @media,
 * поэтому в медиа-запросах стоят числа, и их ровно два):
 *   768px  — планшет / раскрытие мобильного меню
 *   1024px — десктоп
 *
 * ПРАВИЛА ПРИМЕНЕНИЯ (не на усмотрение):
 *   1. Цвет никогда не различает роль или состояние. В оттенках серого
 *      ссылка / кнопка / фокус / ошибка / featured / disabled обязаны
 *      остаться различимыми.
 *   2. Фон диктует подпись: на цветном фоне подпись только var(--clr-on-*).
 *   3. Фокус — оливковый --clr-primary через outline + outline-offset,
 *      и outline существует ровно в одном правиле — правиле фокуса.
 *      --clr-brand под outline не подставляется никогда.
 *   4. Брендовое выделение — только заливка или текст, никогда обводка.
 *   5. Границы по ролям: --clr-border — декор и неинтерактивные блоки;
 *      --clr-control-border — поле ввода, залипающая колонка, интерактивная
 *      область; --clr-danger — ошибка; --clr-primary — фокус;
 *      --clr-on-disabled — штриховая граница disabled.
 *      Порог 3:1 мерится к фактическому фону секции.
 *   6. Hover не носитель смысла: при наведении меняется не только оттенок.
 *   7. Две брендовые линии: --clr-brand (синий) — брендинг (логотип,
 *      заголовки), --clr-primary (оливковый) — действия.
 */

:root {
  /* --- Фоны и поверхности --- */
  --clr-bg: #f9f8f5;
  --clr-bg-2: #f1ede4;
  --clr-bg-3: #e7e1d3;
  --clr-surface: #ffffff;

  /* --- Текст --- */
  --clr-text: #1a1a18;
  --clr-text-2: #4a4a42;   /* 8.42 на surface */
  --clr-text-3: #5f5f57;   /* 6.06 / 5.51 / 4.94 на bg / bg-2 / bg-3 */

  /* --- Действия (оливковая линия) --- */
  --clr-primary: #3d6a4b;
  --clr-on-primary: #ffffff;        /* 6.25 на --clr-primary */
  /* hover уводит ТЕМНЕЕ: осветление до #4e8560 давало белую подпись 4.33 —
     провал, поэтому светлого варианта в файле нет вовсе. */
  --clr-primary-hover: #2b4f37;     /* белая подпись 9.23 */
  --clr-primary-a10: rgba(61, 106, 75, 0.10);
  --clr-primary-a20: rgba(61, 106, 75, 0.20);

  /* --- Брендинг (синяя линия, ведущая) --- */
  --clr-brand: #103758;             /* 12.28 / 11.57 / 10.51 / 9.42 */
  --clr-on-brand: #ffffff;          /* 12.28 на --clr-brand */
  --clr-brand-hover: #0b2740;       /* белая подпись 15.23 */

  /* --- Видео-фон (нейтральные, тема-агностичные: scrim не флипается по теме,
         палитра ролика сохраняется, синевы нет) --- */
  --clr-on-video: #ffffff;                     /* текст/кнопка над видео, обе темы */
  --clr-video-scrim-detail: rgba(0, 0, 0, .42);/* .section__shade: полные −30%; читаемость держит подложка --clr-video-panel */
  --clr-video-scrim-pricing: rgba(0, 0, 0, .14);/* .media-overview__shade: −30% ок (текст на своих непрозрачных подложках) */
  --clr-video-heading-bg: rgba(0, 0, 0, .78);  /* плашка заголовка media-overview: белый CR 12.2 */
  --clr-video-panel: #141414;                  /* НЕПРОЗРАЧНАЯ подложка под section-текст/кнопку над видео: белый CR 14.7, независим от кадра/scrim */
  --clr-video-fallback: #1a1a1a;               /* сплошной фон при reduced-motion / без видео */
  /* --clr-brand-on-video / --clr-primary-on-video удалены: калибровались на
     непрозрачной плашке v2 (#141414), которой в v3 нет. Над блендой давали
     2.32/1.90 — ниже порога 3:1, поэтому SVG подвала берут --clr-on-video. */
  /* Локальная защита глифов/SVG над видеофоном подвала (task #19): тень, а не плашка.
     Тройная тень без смещения = плотное ядро у края буквы при мягком силуэте:
     замер даёт CR 6.18 против 4.57 без неё при той же бленде .40. */
  --footer-glyph-shadow: 0 0 3px rgba(0, 0, 0, 1), 0 0 3px rgba(0, 0, 0, 1), 0 1px 2px rgba(0, 0, 0, 1);
  --footer-svg-shadow: drop-shadow(0 0 3px rgba(0, 0, 0, .9)) drop-shadow(0 1px 2px rgba(0, 0, 0, .9));

  /* --- Акцент (декор) --- */
  --clr-accent: #c8a96e;
  --clr-on-accent: #1a1a18;         /* 7.77 на --clr-accent, в обеих темах */
  --clr-accent-dk: #a8873f;         /* только обводка и декор, не color: */

  /* --- Статусы --- */
  --clr-success: #146c33;           /* 6.14 / 5.58 / 5.00 */
  --clr-on-success: #ffffff;        /* 6.52 на --clr-success */
  --clr-danger: #a81d1d;            /* 6.92 / 6.29 / 5.64 */
  --clr-on-danger: #ffffff;         /* 7.35 на --clr-danger */

  /* --- Границы --- */
  --clr-border: #d8d0be;            /* только декор, порог 3:1 не применяется */
  --clr-control-border: #7f7a6a;    /* 4.29 / 4.04 / 3.67 / 3.29 */

  /* --- Disabled --- */
  --clr-disabled-bg: #e7e1d3;
  --clr-on-disabled: #35352f;       /* 9.47 на --clr-disabled-bg; разведён с --clr-text-2 */

  /* --- Шкалы: имена и значения задаёт вёрстка (спецификация Designer, шаг 3).
         h3 и h4 всегда --fw-bold: в светлой теме все уровни текста в пределах
         1.42 в градациях серого, светлота иерархию не держит. --- */

  /* Шрифты */
  --ff-head: "PRS Serif", "Charter", "Georgia", "Times New Roman", serif;
  --ff-body: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

  /* Кегли (--fs-xl не нужен, не заводить) */
  --fs-xs: .75rem;
  --fs-sm: .875rem;
  --fs-base: 1rem;
  --fs-lg: 1.125rem;
  --fs-2xl: 1.5rem;
  --fs-3xl: 2rem;
  --fs-4xl: 2.5rem;
  --fs-5xl: 3.25rem;

  /* Насыщенность (--fw-regular не нужен: 400 — значение по умолчанию) */
  --fw-medium: 500;
  --fw-semi: 600;
  --fw-bold: 700;

  /* Отступы, шкала 4/8 (--sp-16 и --sp-20 не нужны) */
  --sp-1: .25rem;
  --sp-2: .5rem;
  --sp-3: .75rem;
  --sp-4: 1rem;
  --sp-5: 1.25rem;
  --sp-6: 1.5rem;
  --sp-8: 2rem;
  --sp-10: 2.5rem;
  --sp-12: 3rem;

  /* Радиусы */
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-full: 9999px;

  /* Тени */
  --shadow-sm: 0 1px 3px rgba(0,0,0,.06);
  --shadow-md: 0 4px 16px rgba(0,0,0,.08);
  --shadow-lg: 0 12px 36px rgba(0,0,0,.10);

  /* Размеры элементов управления */
  --bw-1: 1.5px;      /* толщина рамки: 1px визуально теряется на 1.5x-экранах */
  --btn-py: .78rem;
  --btn-px: 1.4rem;
  --control-py: .72rem;
  --icon-box: 52px;
  /* Тонкая ровная галка (stroke, round) — иконка-маска для маркеров списков. */
  --icon-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5 9.5 18 20 6'/%3E%3C/svg%3E");

  /* Движение */
  --ease-out: cubic-bezier(.16, 1, .3, 1);
  --dur-fast: 150ms;
  --dur-base: 250ms;

  /* Слои (--z-overlay не нужен: оверлеев в проекте нет) */
  --z-sticky: 100;

  /* Раскладка */
  --container: 1200px;
  /* Уменьшен единообразно по всем страницам (Freony 4034914, стрелки на
     стыках секций): было clamp(3.5rem, 8vw, 6rem) = 96px на 1440 — стык
     двух секций давал 192px, hero→контент 128px. Теперь 64px на 1440 /
     40px на 375: стык секций 128px, hero→контент 88px. Токен один —
     ритм единообразен везде, включая видео-секции (берут его же). */
  --section-py: clamp(2.5rem, 6vw, 4rem);
  --header-h: 72px;   /* используется в scroll-margin-top секций групп тарифов */
}

[data-theme="dark"] {
  --clr-bg: #10130f;
  --clr-bg-2: #181d16;
  --clr-bg-3: #202820;
  --clr-surface: #1a201a;

  --clr-text: #f2f1ec;
  --clr-text-2: #c9ccc2;           /* 11.50 / 10.52 / 10.19 / 9.31 */
  --clr-text-3: #8b9a83;            /* 6.28 / 5.75 / 5.57 / 5.09 */

  --clr-primary: #7fb890;           /* 8.16 / 7.47 / 7.24 / 6.61 */
  --clr-on-primary: #10130f;        /* 8.16 — белая подпись здесь 2.29, запрещена */
  --clr-primary-hover: #a3cfb0;     /* тёмная подпись 10.79 */
  --clr-primary-a10: rgba(127, 184, 144, 0.10);
  --clr-primary-a20: rgba(127, 184, 144, 0.20);

  --clr-brand: #8fb6d6;             /* 8.76 / 8.02 / 7.77 / 7.09 */
  --clr-on-brand: #10130f;          /* 8.76 */
  --clr-brand-hover: #adcbe3;       /* тёмная подпись 11.08 */


  --clr-success: #4ade80;           /* 10.74 / 9.83 / 9.52 / 8.70 */
  --clr-on-success: #10130f;        /* 10.74 — белая 1.74, запрещена */
  --clr-danger: #f87171;            /* 6.77 / 6.19 / 6.00 / 5.48 */
  --clr-on-danger: #10130f;         /* 6.77 — белая 2.77, запрещена */

  --clr-border: #2e3a2e;
  --clr-control-border: #7a8a72;    /* 4.51 / 5.09 / 4.65 / 4.12 */

  --clr-disabled-bg: #28322a;
  --clr-on-disabled: #a8b8a0;       /* 6.35 на --clr-disabled-bg */
}
