/**
 * @file theme.css — цветовые и размерные токены движка (CSS-переменные).
 *
 * Нейтральная белая тема. Сайт переопределяет значения так: копирует этот файл в корень сайта (рядом с index.php)
 * и меняет нужные строки — очищать кэш Drupal, пересборка CSS не нужна (официальный способ Mercury).
 * Токены --ee-* — наши; остальные (--primary и др.) — из Mercury/shadcn.
 * Цвета подобраны под контраст WCAG AA (текст на фоне >= 4.5:1): проверено скриптом contrast.py (pm/docs).
 */
:root {
  --background: oklch(1 0 0);
  --foreground: oklch(0.2 0.02 265);
  --card: oklch(0.975 0.004 265);
  --card-foreground: oklch(0.2 0.02 265);
  --primary: oklch(0.42 0.14 265);
  --primary-foreground: oklch(1 0 0);
  --secondary: oklch(0.94 0.006 265);
  --secondary-foreground: oklch(0.25 0.03 265);
  --muted: oklch(0.965 0.004 265);
  --muted-foreground: oklch(0.42 0.02 265);
  --accent: oklch(0.94 0.03 265);
  --accent-foreground: var(--foreground);
  --destructive: oklch(0.52 0.2 27);
  --destructive-foreground: oklch(1 0 0);
  --border: oklch(0.9 0.006 265);
  --input: oklch(0.62 0.012 265);
  --font-sans: "Inter", "Inter Fallback", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --font-body: "Inter", "Inter Fallback", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  /* шрифты по роли (дочерняя тема сайта переопределяет только эти токены): заголовки и название сайта */
  --ee-font-heading: var(--font-sans);
  --ee-font-brand: var(--ee-font-heading);
  --ee-brand-transform: none;
  --ee-brand-tracking: normal;
  --ee-brand-weight: inherit;
  --font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
  --font-mono: ui-monospace, "Menlo", "Consolas", "Liberation Mono", monospace;
  --radius: 0.75rem;
  --shadow-2xs: 0 1px 2px 0 hsl(0 0% 0% / 0.04);
  --shadow-xs: 0 1px 2px 0 hsl(0 0% 0% / 0.05);
  --shadow-sm: 0 1px 3px 0 hsl(0 0% 0% / 0.08), 0 1px 2px -1px hsl(0 0% 0% / 0.08);
  --shadow: 0 1px 3px 0 hsl(0 0% 0% / 0.08), 0 1px 2px -1px hsl(0 0% 0% / 0.08);
  --shadow-md: 0 4px 12px -2px hsl(0 0% 0% / 0.1);
  --shadow-lg: 0 10px 24px -6px hsl(0 0% 0% / 0.12);
  --shadow-xl: 0 16px 36px -8px hsl(0 0% 0% / 0.14);
  --shadow-2xl: 0 24px 48px -12px hsl(0 0% 0% / 0.18);
  --tracking-normal: 0em;
  --spacing: 0.25rem;
  --navbar-height: calc(var(--spacing) * 15);

  /* Токены движка */
  --ee-container: 1200px;         /* максимальная ширина содержимого (оператор 28.09: ровно 1200px, было 72rem/1152px) */
  --ee-gutter: 1rem;              /* боковые поля (совпадают с px-4 секций Canvas: край текста один на всех блоках) */
  --ee-radius-card: 1rem;         /* скругление карточек */
  --ee-radius-pill: 999px;        /* кнопки и плашки */
  --ee-card-border: var(--border);
  --ee-card-bg: var(--background);
  --ee-card-shadow: var(--shadow-sm);
  --ee-focus: oklch(0.55 0.2 265); /* кольцо фокуса */
  --ee-overlay: oklch(0.15 0.03 265 / 0.45); /* затемнение под шторкой */
  --ee-shutter-width: 22rem;      /* ширина шторки */
  --ee-header-height: 4rem;
  /* шапка: цвета и шрифт названия (по умолчанию как у остальной темы; сайт задаёт свои, ничего в шаблонах не правя) */
  --ee-header-bg: var(--background);          /* фон шапки и шторок */
  --ee-header-fg: var(--foreground);          /* цвет текста шапки */
  --ee-header-border: transparent;            /* тонкая линия под шапкой */
  --ee-header-accent: var(--primary);         /* заливка главной кнопки, контур второй, линия текущего пункта */
  --ee-header-accent-fg: var(--primary-foreground);
  --ee-header-font: var(--font-sans);         /* шрифт названия сайта */
  --ee-header-field-bg: var(--ee-field-bg);   /* поле поиска в шапке */
  --ee-header-field-border: var(--ee-field-border);
  /* поля форм: рамка контрастнее 3:1 к фону (WCAG 1.4.11), фон поля отличается от фона страницы */
  --ee-field-border: oklch(0.55 0.02 265);
  --ee-field-bg: oklch(1 0 0);
  --ee-field-radius: 0.625rem;
  --ee-field-focus: var(--ee-focus);
  --ee-heading-weight: 700;
  --ee-status-ok: oklch(0.42 0.11 155);      /* «Регистрация открыта» */
  --ee-status-warn: oklch(0.45 0.12 70);     /* «Анонс», «Перенесено» */
  --ee-status-bad: oklch(0.45 0.16 27);      /* «Отменено» */
  --ee-status-done: oklch(0.4 0.02 265);     /* «Завершено», «Идёт» — нейтральный */

  /* Базовая типографика и ритм (css/base.css). Сайт меняет значения здесь, файлы не правит. */
  --ee-text: 1rem;                            /* размер основного текста */
  --ee-leading: 1.6;                          /* интерлиньяж текста */
  --ee-heading-leading: 1.2;                  /* интерлиньяж заголовков */
  --ee-measure: 68ch;                         /* предел длины строки в текстах */
  --ee-h1: clamp(2rem, 1.45rem + 2.4vw, 3rem);
  --ee-h2: clamp(1.5rem, 1.25rem + 1.2vw, 2.125rem);
  --ee-h3: clamp(1.25rem, 1.1rem + 0.7vw, 1.5rem);
  --ee-h4: 1.125rem;
  --ee-h5: 1rem;
  --ee-h6: 0.8125rem;
  --ee-space: 1rem;                           /* базовый шаг отступов */
  --ee-section-gap: clamp(2.5rem, 2rem + 2.5vw, 4.5rem); /* вертикальный ритм секций */
  --ee-card-min: 300px;                       /* минимальная ширина карточки в сетках (оператор 28.09: 300px, было 15rem/240px) */
  --ee-header-control-h: 2.5rem;              /* единая высота элементов управления шапки: поиск, «Спросить», «Записаться», значки (форм это не касается — у полей форм 2.75rem) */
  --ee-logo-h: 2.75rem;                      /* высота значка логотипа в шапке (дочерняя тема может задать свою) */
  --ee-card-pad: 10px;                        /* внутренний отступ текста карточки (оператор 28.09: 10px везде, было 1rem/16px по-разному в .ee-card__body и .views-view-grid) */
  --ee-cta-bg: var(--accent);                 /* фон широкой полосы призыва */
  --ee-ask-bar-bg: var(--background);         /* фон нижней полосы «Записаться / Спросить» */
  /* кнопки (css/buttons.css): три уровня — основная, вторая, третья. По умолчанию берут акцент шапки; сайт может задать свои. */
  --ee-btn-accent: var(--ee-header-accent);    /* заливка основной, контур второй, текст третьей */
  --ee-btn-accent-fg: var(--ee-header-accent-fg);   /* текст на заливке */
  --ee-btn-hover: color-mix(in oklab, var(--ee-btn-accent) 78%, black);   /* заливка при наведении, цвет текста второй и третьей */
  --ee-btn-soft: color-mix(in oklab, var(--ee-btn-accent) 10%, transparent);   /* мягкий фон при наведении на вторую и третью */
  /* основная кнопка (2026-09-29, запрос оператора «видимая рамка у кнопок»): у заливной кнопки рамка того же
     цвета, что и заливка, визуально не читалась как рамка вообще (рамка есть в коде, не видна глазами) — рамка
     чуть темнее заливки, свой оттенок на каждом состоянии (обычное/наведение), не общий с заливкой токен. */
  --ee-btn-border: color-mix(in oklab, var(--ee-btn-accent) 82%, black);      /* рамка основной кнопки — обычное состояние */
  --ee-btn-border-hover: color-mix(in oklab, var(--ee-btn-hover) 82%, black);  /* рамка основной кнопки — наведение */
  --ee-btn-radius: 999px;                      /* скругление, как у кнопок шапки */
  --ee-btn-height: 2.75rem;                    /* высота не меньше 44 px */
  --ee-danger: var(--destructive);
  --ee-success: var(--ee-status-ok);
  --ee-warning: var(--ee-status-warn);
  --ee-dir-1: oklch(0.5 0.12 265);            /* цвета верхней линии плашек направлений (по кругу) */
  --ee-dir-2: oklch(0.5 0.12 30);
  --ee-dir-3: oklch(0.5 0.1 145);
  --ee-dir-4: oklch(0.5 0.09 190);
  --ee-dir-5: oklch(0.5 0.08 60);
  --ee-dir-6: oklch(0.5 0.1 320);
}

.dark {
  --background: oklch(0.16 0.02 265);
  --foreground: oklch(0.96 0.005 265);
  --card: oklch(0.21 0.02 265);
  --card-foreground: var(--foreground);
  --primary: oklch(0.72 0.13 265);
  --primary-foreground: oklch(0.16 0.02 265);
  --secondary: oklch(0.3 0.02 265);
  --secondary-foreground: var(--foreground);
  --muted: oklch(0.26 0.02 265);
  --muted-foreground: oklch(0.8 0.01 265);
  --accent: oklch(0.3 0.03 265);
  --accent-foreground: var(--foreground);
  --border: oklch(0.34 0.02 265);
  --input: oklch(0.4 0.02 265);
}
