/**
 * Biotiki Situations — визуальный скин (витрина/страницы ситуаций).
 * По дизайн-референсу test2 (палитра_test2.md + макеты «Главная»/«Все тесты»/«Босс-файт»).
 * Светлая тема, бренд-зелёный #6BCB77 + мягкий #D8F2D7, тёмно-зелёный hero, шрифт Inter.
 */

:root {
  --bsit-bg:      #FFFFFF;   /* фон страницы (белый) */
  --bsit-card:    #FFFFFF;   /* карточки */
  --bsit-ink:     #111111;   /* основной текст */
  --bsit-muted:   #5B6B62;   /* второстепенный текст */
  --bsit-green:   #6BCB77;   /* бренд-зелёный (акценты, кнопки, бейджи) */
  --bsit-green-d: #4FB05B;   /* затемнённый оттенок того же зелёного (ссылки, hover) */
  --bsit-soft:    #D8F2D7;   /* мягкий зелёный (подложки, бейджи) */
  --bsit-dark:    #2E7D4F;   /* тёмно-зелёный hero (осветлённый, в гамме бренда) */
  --bsit-line:    #E4EAE5;   /* границы/линии */
}

/* ---------- База ---------- */
/* Фиксируем размер шрифта при повороте экрана (iOS Safari иначе авто-увеличивает текст). */
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
.biotiki-situations-blank { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
.biotiki-situations-blank { background: var(--bsit-bg); }
.biotiki-situations-blank .bsit-blank-main {
  max-width: 1180px;
  width: 100%;
  padding: 0 28px 28px;
  font-family: Inter, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  color: var(--bsit-ink);
  -webkit-font-smoothing: antialiased;
}
/* border-box для САМОГО контейнера (не только потомков) — иначе padding 28px даёт
   ширину 100%+56px и горизонтальный overflow на любой ширине окна. */
.bsit-page, .bsit-page * { box-sizing: border-box; }

/* ---------- Шапка ---------- */
.bsit-header {
  min-height: 98px;
  display: flex; align-items: center; justify-content: space-between;
}
.bsit-brand { display: flex; gap: 10px; align-items: center; text-decoration: none; color: var(--bsit-ink); }
.bsit-brand-logo-full { height: 74px; width: auto; display: block; flex: 0 0 auto; }
.bsit-nav { display: flex; gap: 30px; font-size: 16px; font-weight: 600; }
.bsit-nav a { color: var(--bsit-muted); text-decoration: none; }
.bsit-nav a:hover { color: var(--bsit-green-d); }
/* Бургер (виден только на мобиле) */
.bsit-burger {
  display: none; width: 44px; height: 44px; border: 1px solid var(--bsit-line);
  border-radius: 10px; background: #fff; cursor: pointer; padding: 0;
  align-items: center; justify-content: center;
}
.bsit-burger span, .bsit-burger span::before, .bsit-burger span::after {
  content: ''; display: block; width: 20px; height: 2px; background: var(--bsit-ink); position: relative;
}
.bsit-burger span::before { position: absolute; top: -6px; }
.bsit-burger span::after { position: absolute; top: 6px; }

/* ---------- Кнопка (единый вид для всех переходов) ---------- */
.bsit-btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 46px; padding: 0 22px;
  border: none; border-radius: 12px;
  background: var(--bsit-dark); color: #fff;
  font: 700 16px/1 Inter, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  text-decoration: none; cursor: pointer;
}
.bsit-btn:hover { background: var(--bsit-dark); filter: brightness(.9); }
.bsit-btn.ghost { background: transparent; color: var(--bsit-dark); border: 1px solid var(--bsit-line); filter: none; }
.bsit-btn.ghost:hover { background: var(--bsit-soft); filter: none; }

/* ---------- Hero (тёмно-зелёный #2E7D4F, чипы/кнопки — белые) ---------- */
.bsit-hero { background: var(--bsit-dark); color: #fff; border-radius: 28px; padding: 34px 48px; }
.bsit-hero-tag { display: inline-block; font-size: 13px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: #EAF6EE; opacity: .92; margin-bottom: 12px; }
/* Типографическая шкала (единая, по брейкпоинтам). H1/H2/H3/лид/текст/мелкий — размеры для
   десктопа здесь, планшет (≤900) и телефон (≤600) — в блоке «Адаптив». Иерархия H1>H2>H3>лид>текст. */
.bsit-hero-title { font-size: 30px; line-height: 1.15; letter-spacing: -.02em; margin: 0 0 12px; font-weight: 800; } /* H1 */
.bsit-hero-sub { font-size: 18px; line-height: 1.55; color: #EAF6EE; margin: 0; max-width: 760px; } /* лид */
/* Подзаголовок «Все тесты» — в одну строку на десктопе (на узких экранах переносится) */
.bsit-hero-sub-1line { max-width: none; }
/* nowrap на подзаголовке hero распирал документ на средних окнах — переносим по словам. */
.bsit-hero-sub-1line { white-space: normal; }
/* Кнопки-якоря на разделы (в hero «Все тесты») */
.bsit-hero-anchors-label { margin: 24px 0 10px; font-size: 18px; line-height: 1.55; font-weight: 400; color: #EAF6EE; }
.bsit-hero-anchors { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 0; }
.bsit-hero-anchor {
  display: inline-flex; padding: 10px 16px; border-radius: 999px; background: #fff;
  color: var(--bsit-dark); font-size: 14px; font-weight: 700; text-decoration: none;
}
.bsit-hero-anchor:hover { background: #EAF6EE; }
.bsit-group { scroll-margin-top: 20px; }
/* Чипы hero — без подложки: белый жирный текст, разделённый точкой по центру строки. */
.bsit-hero-chips { display: flex; flex-wrap: wrap; align-items: center; margin-top: 22px; }
.bsit-chip { display: inline-flex; align-items: center; color: #fff; font-size: 16px; font-weight: 700; }
.bsit-chip-br { display: none; } /* перенос строки чипов только на телефоне */
.bsit-chip:not(:last-child)::after { content: '·'; margin: 0 10px; opacity: .7; }
/* Кнопка на тёмном hero — белая с тёмно-зелёным текстом */
.bsit-hero .bsit-btn, .bsit-sit-hero .bsit-btn { background: #fff; color: var(--bsit-dark); }
.bsit-hero .bsit-btn:hover, .bsit-sit-hero .bsit-btn:hover { background: #EAF6EE; }

/* ---------- Почему стоит пройти ---------- */
.bsit-why { margin-top: 40px; }
.bsit-why-h2 { font-size: 26px; font-weight: 800; margin: 0 0 20px; letter-spacing: -.01em; }
/* «Почему стоит пройти»: 4 → 2 → 1 (ступень 3 не нужна). Брейкпоинты в блоке «Адаптив». */
.bsit-why-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
/* Инфо-блоки «Почему стоит пройти» (8.1, вариант A): без фона/рамки, тонкая линия-разделитель
   сверху; иконка в мягком зелёном кружке слева, заголовок справа, серый текст выровнен по уровню
   у всех блоков (за счёт фикс. высоты заголовка). Так «карточка с рамкой» = только кликабельные ситуации. */
.bsit-why-item { display: grid; grid-template-columns: 44px 1fr; gap: 14px; align-items: start;
  background: none; border: none; border-top: 3px solid var(--bsit-green); border-radius: 0; padding: 18px 6px 0; }
.bsit-why-ic { width: 44px; height: 44px; border-radius: 12px; display: grid; place-items: center; background: var(--bsit-soft); color: var(--bsit-dark); }
.bsit-why-ic svg { width: 24px; height: 24px; }
.bsit-why-title { font-size: 16px; font-weight: 600; margin: 0; letter-spacing: -.01em; line-height: 1.25; min-height: 2.5em; display: flex; align-items: center; }
.bsit-why-desc { color: var(--bsit-muted); line-height: 1.45; margin: 4px 0 0; font-size: 14px; }

/* ---------- Каталог ситуаций (2 колонки, горизонтальные карточки) ---------- */
.bsit-cat { margin-top: 46px; scroll-margin-top: 20px; }
.bsit-cat-h2 { font-size: 26px; font-weight: 800; margin: 0 0 8px; letter-spacing: -.01em; } /* H2 */
.bsit-cat-lead { color: var(--bsit-muted); margin: 0 0 24px; font-size: 16px; }
/* «Все тесты»: auto-fit держит максимум 2 колонки (min 420px) и плавно → 1 на узком. */
.bsit-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(420px, 100%), 1fr)); gap: 18px; grid-auto-rows: 1fr; }
/* Каталог ситуаций: auto-fit держит максимум 3 колонки (min 300px) и плавно 3→2→1. */
.bsit-cards-3 { grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr)); gap: 16px; }
.bsit-scard {
  position: relative; display: flex; flex-direction: column; height: 100%;
  background: var(--bsit-card); border: 1px solid var(--bsit-line);
  border-radius: 18px; padding: 20px 22px; text-decoration: none; color: inherit;
  transition: box-shadow .15s ease, border-color .15s ease, transform .15s ease;
}
.bsit-scard:hover { border-color: var(--bsit-green); box-shadow: 0 14px 36px rgba(20,68,43,.10); transform: translateY(-2px); }
.bsit-scard-top { display: flex; align-items: flex-start; gap: 14px; margin-bottom: 12px; }
.bsit-scard-ic { flex: 0 0 auto; width: 52px; height: 52px; border-radius: 14px; background: var(--bsit-soft); display: grid; place-items: center; }
.bsit-scard-ic img { width: 36px; height: 36px; object-fit: contain; }
.bsit-scard-title { align-self: center; font-size: 18px; font-weight: 800; line-height: 1.2; letter-spacing: -.01em; } /* карточки главной — Г3, не трогаем */
.bsit-scard-lead { color: var(--bsit-muted); line-height: 1.45; font-size: 14px; margin: 0 0 10px; }
.bsit-scard-meta { color: var(--bsit-green-d); font-size: 13px; font-weight: 700; margin-top: auto; padding-right: 46px; }
.bsit-scard-cta { position: absolute; right: 18px; bottom: 18px; width: 40px; height: 40px; border-radius: 50%; background: var(--bsit-green); color: #fff; display: grid; place-items: center; font-size: 18px; font-weight: 800; }
.bsit-scard:hover .bsit-scard-cta { background: var(--bsit-green-d); }

/* ---------- Финальный призыв ---------- */
.bsit-final-cta {
  margin-top: 44px; background: var(--bsit-soft); border-radius: 22px; padding: 30px;
  display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap;
}
.bsit-final-cta-txt { margin: 0; font-size: 19px; font-weight: 700; color: var(--bsit-ink); max-width: 640px; }

/* ---------- «Все тесты» (сгруппированный каталог методик) ---------- */
.bsit-group { margin-top: 40px; }
.bsit-group:first-of-type { margin-top: 30px; }
.bsit-group-h2 { font-size: 26px; font-weight: 800; margin: 0 0 18px; letter-spacing: -.01em; } /* H2 */
.bsit-tcard {
  position: relative;
  display: flex; flex-direction: column;
  min-height: 188px; /* единая высота всех карточек: минимум под 2-строчное описание + место под CTA-кружок (описания укорочены) */
  background: var(--bsit-card); border: 1px solid var(--bsit-line);
  border-radius: 20px; padding: 22px 24px 62px; text-decoration: none; color: inherit;
  transition: box-shadow .15s ease, border-color .15s ease, transform .15s ease;
}
.bsit-tcard:hover { border-color: var(--bsit-green); box-shadow: 0 14px 36px rgba(20,68,43,.10); transform: translateY(-2px); }
.bsit-tcard:hover .bsit-scard-cta { background: var(--bsit-green-d); }
.bsit-tcard-time { display: block; color: var(--bsit-green-d); font-size: 13px; font-weight: 700; margin-bottom: 8px; }
.bsit-tcard-title { font-size: 19px; font-weight: 800; line-height: 1.25; margin: 0 0 8px; letter-spacing: -.01em; }
.bsit-tcard-desc { color: var(--bsit-muted); line-height: 1.5; margin: 0; font-size: 15px; }

.bsit-disclaimer {
  margin-top: 44px; background: var(--bsit-soft); border-radius: 20px; padding: 24px 28px;
  display: flex; align-items: center; justify-content: space-between; gap: 20px;
}
.bsit-disclaimer-h3 { margin: 0 0 6px; font-size: 19px; font-weight: 800; letter-spacing: -.01em; } /* H3 */
.bsit-disclaimer-p { margin: 0; color: var(--bsit-muted); line-height: 1.5; font-size: 15px; }
.bsit-disclaimer-ic { flex: 0 0 auto; width: 56px; height: 56px; border-radius: 16px; background: #fff; display: grid; place-items: center; color: var(--bsit-dark); }
.bsit-disclaimer-ic svg { width: 30px; height: 30px; }

/* ================= Экраны тестов под скином (оверрайды движков) =================
   Скин грузится только на брендированных страницах; скоуп .biotiki-situations-blank
   поднимает специфичность, чтобы перебить CSS плагинов quiz/burdon/schulte/core.
   Сами плагины-движки не изменяются. */

/* Шрифт Inter вместо Manrope (тексты тестов) */
.biotiki-situations-blank .bquiz,
.biotiki-situations-blank .bquiz-card,
.biotiki-situations-blank .burdon-wrap,
.biotiki-situations-blank .schulte-wrapper,
.biotiki-situations-blank .bc-modal-overlay { font-family: Inter, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; }
/* НО поля (клетки Бурдона/Шульте) — вернуть исходный шрифт, вид не трогаем */
.biotiki-situations-blank .burdon-grid,
.biotiki-situations-blank .burdon-cell,
.biotiki-situations-blank .schulte-grid,
.biotiki-situations-blank .schulte-cell { font-family: Manrope, Arial, sans-serif; }
/* Поля Бурдона/Шульте — запрет выделения курсором (буквы/числа не выделяются) */
.biotiki-situations-blank .burdon-grid,
.biotiki-situations-blank .burdon-cell,
.biotiki-situations-blank .schulte-grid,
.biotiki-situations-blank .schulte-cell {
  -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;
  -webkit-touch-callout: none;
}

/* Интро тестов — единый шрифт сайта (Inter), крупнее, опрятные отступы абзацев */
.biotiki-situations-blank .bquiz-intro-text,
.biotiki-situations-blank .burdon-intro-text,
.biotiki-situations-blank .schulte-intro-text {
  font-family: Inter, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-size: 16px; line-height: 1.6; color: var(--bsit-ink); max-width: 720px; margin: 0 auto; /* текст интро −2 (И1) */
}
.biotiki-situations-blank .bquiz-intro-text p,
.biotiki-situations-blank .burdon-intro-text p,
.biotiki-situations-blank .schulte-intro-text p { margin: 0 0 12px; }
.biotiki-situations-blank .bquiz-intro-text b,
.biotiki-situations-blank .burdon-intro-text b,
.biotiki-situations-blank .schulte-intro-text b { font-weight: 700; }
/* Заголовок интро — по центру, жирный, единый размер H1 (когнитивные = опросникам, И1) */
.biotiki-situations-blank .bquiz-intro-title,
.biotiki-situations-blank .burdon-intro-title,
.biotiki-situations-blank .schulte-intro-title { text-align: center; font-weight: 800; font-size: 30px; line-height: 1.15; letter-spacing: -.02em; }
/* Экран интро — без обрамляющей карточки (как в Бурдоне) */
.biotiki-situations-blank .bquiz-card.bquiz-intro { border: 0; border-radius: 0; padding: 0; background: transparent; }
.biotiki-situations-blank .schulte-wrapper.schulte-intro-screen { border: 0; border-radius: 0; padding: 0; background: transparent; }
/* Тонкая сплошная линия-разделитель (как над дисклеймером в результатах) */
.biotiki-situations-blank .bsit-hr { border: 0; border-top: 1px solid var(--bsit-line); margin: 16px auto; max-width: 720px; }

/* Инструкция над обучающей таблицей Бурдона — шрифт/размер как интро */
.biotiki-situations-blank .burdon-practice-instr {
  font-family: Inter, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-size: 18px; line-height: 1.6; color: var(--bsit-ink);
}
/* Цветные квадратики в обучении Шульте — цвета как подсветка клеток при прохождении */
.biotiki-situations-blank .schulte-legend { list-style: none; margin: 0 0 12px; padding: 0; }
.biotiki-situations-blank .schulte-legend li { display: flex; align-items: flex-start; gap: 10px; margin: 0 0 8px; line-height: 1.5; }
.biotiki-situations-blank .schulte-legend .sq { flex: 0 0 auto; width: 22px; height: 22px; border-radius: 5px; margin-top: 3px; }
.biotiki-situations-blank .schulte-legend .sq.green { background: #90ee90; }
.biotiki-situations-blank .schulte-legend .sq.red { background: #f88; }
.biotiki-situations-blank .schulte-legend .sq.yellow { background: #ffff00; }

/* Экраны Шульте (таблица/прерывание/подсказка) — шрифт и размер как на сайте */
.biotiki-situations-blank .schulte-trial {
  font-family: Inter, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-size: 24px; font-weight: 700; color: var(--bsit-ink);
}
.biotiki-situations-blank .schulte-instruction,
.biotiki-situations-blank .schulte-abort-txt,
.biotiki-situations-blank .schulte-hint {
  font-family: Inter, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-size: 18px; line-height: 1.6; color: var(--bsit-ink); font-weight: 400;
}
.biotiki-situations-blank .schulte-instruction b { font-weight: 700; }

/* ---------- Результаты тестов (без карточки, шрифт сайта, крупнее) ---------- */
.biotiki-situations-blank .bquiz-result,
.biotiki-situations-blank .burdon-result,
.biotiki-situations-blank .schulte-result {
  font-family: Inter, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-size: 18px; line-height: 1.6; color: var(--bsit-ink); max-width: 720px; margin: 0 auto;
}
.biotiki-situations-blank .bquiz-result-title,
.biotiki-situations-blank .burdon-result-title,
.biotiki-situations-blank .schulte-result-title {
  text-align: center; font-weight: 700; font-size: 24px; margin: 0 0 34px;
}
/* Дополнительный отступ, когда результат начинается с баров */
.biotiki-situations-blank .bquiz-result .bquiz-bar-row:first-child { margin-top: 10px; }
/* Дисклеймер — чуть мельче основного текста */
.biotiki-situations-blank .bquiz-disclaimer {
  font-size: 15px; color: var(--bsit-muted); border-top: 1px solid var(--bsit-line);
  margin-top: 18px; padding-top: 12px;
}
/* Бары результата опросника — крупный текст того же стиля */
.biotiki-situations-blank .bquiz-bar-name { font-size: 15px; font-weight: 600; }
.biotiki-situations-blank .bquiz-bar-val { font-size: 18px; font-weight: 700; }
.biotiki-situations-blank .bquiz-bar-scale { font-size: 13px; }
.biotiki-situations-blank .bquiz-interp { font-size: 17px; }

/* Кнопки навигации под результатом одиночного теста */
.biotiki-situations-blank .biotiki-nav-btns { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin: 26px auto 0; }
.biotiki-situations-blank .biotiki-nav-btn {
  display: inline-block; padding: 12px 22px; border-radius: 12px; border: 0; cursor: pointer;
  font-family: inherit; font-size: 16px; font-weight: 700; text-decoration: none;
  background: var(--bsit-dark); color: #fff;
}
.biotiki-situations-blank .biotiki-nav-btn.secondary { background: #fff; color: var(--bsit-dark); border: 2px solid var(--bsit-dark); padding: 10px 20px; }
.biotiki-situations-blank .biotiki-nav-btn:hover { filter: brightness(.95); }

/* Карточки движков — под скин */
.biotiki-situations-blank .bquiz-card {
  border: 1px solid var(--bsit-line); border-radius: 18px;
}
/* Шульте — без контейнера на всех экранах */
.biotiki-situations-blank .schulte-wrapper {
  border: 0; border-radius: 0; padding: 0; background: transparent;
}

/* ЕДИНЫЙ размер/форма ВСЕХ кнопок-переходов (вкл. Стоп) */
.biotiki-situations-blank .bquiz-btn,
.biotiki-situations-blank .burdon-btn,
.biotiki-situations-blank .burdon-stop-btn,
.biotiki-situations-blank .schulte-start-btn,
.biotiki-situations-blank .schulte-next-start-btn,
.biotiki-situations-blank .schulte-retry-btn,
.biotiki-situations-blank .schulte-continue-btn,
.biotiki-situations-blank .schulte-restart-btn,
.biotiki-situations-blank .schulte-stop-btn,
.biotiki-situations-blank .bc-btn-primary {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 46px; padding: 0 22px;
  border: none; border-radius: 12px;
  font: 700 16px/1 Inter, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  cursor: pointer;
}
/* Основные — зелёные (единый цвет Hero #2E7D4F) */
.biotiki-situations-blank .bquiz-btn,
.biotiki-situations-blank .burdon-btn,
.biotiki-situations-blank .schulte-start-btn,
.biotiki-situations-blank .schulte-next-start-btn,
.biotiki-situations-blank .schulte-retry-btn,
.biotiki-situations-blank .schulte-continue-btn,
.biotiki-situations-blank .bc-btn-primary { background: var(--bsit-dark); color: #fff; }
.biotiki-situations-blank .bquiz-btn:hover,
.biotiki-situations-blank .burdon-btn:hover,
.biotiki-situations-blank .schulte-start-btn:hover,
.biotiki-situations-blank .schulte-next-start-btn:hover,
.biotiki-situations-blank .schulte-retry-btn:hover,
.biotiki-situations-blank .schulte-continue-btn:hover,
.biotiki-situations-blank .bc-btn-primary:not(:disabled):hover { background: var(--bsit-dark); filter: brightness(.9); }
.biotiki-situations-blank .bquiz-btn:disabled,
.biotiki-situations-blank .bc-btn-primary:disabled { background: #cfe9d1; color: #6b806e; filter: none; }
/* Вторичные (ghost): «Назад», «Начать заново» */
.biotiki-situations-blank .bquiz-btn.ghost,
.biotiki-situations-blank .schulte-restart-btn {
  background: transparent; color: var(--bsit-dark); border: 1px solid var(--bsit-line);
}
/* Стоп — тот же размер, красный (семантика) */
.biotiki-situations-blank .burdon-stop-btn,
.biotiki-situations-blank .schulte-stop-btn { background: #c0392b; color: #fff; }
.biotiki-situations-blank .burdon-stop-btn:hover,
.biotiki-situations-blank .schulte-stop-btn:hover { filter: brightness(.95); }
/* Полоса просмотра Бурдона — в цвет Hero */
.biotiki-situations-blank .burdon-progress-fill { background: var(--bsit-dark); }

/* Варианты ответа: скругление/границы + подсветка выбранного */
.biotiki-situations-blank .bquiz-opt { border: 1px solid var(--bsit-line); border-radius: 10px; }
.biotiki-situations-blank .bquiz-opt:hover { background: var(--bsit-soft); }
.biotiki-situations-blank .bquiz-opt:has(input:checked) { border-color: var(--bsit-green); background: var(--bsit-soft); }

/* Поля ввода: фокус в бренд-зелёный */
.biotiki-situations-blank .bquiz-input:focus,
.biotiki-situations-blank .bquiz-textarea:focus { border-color: var(--bsit-green); outline: none; }

/* Модалка соц-дем: скругление + активный выбор в белый текст */
.biotiki-situations-blank .bc-modal { border-radius: 18px; }
.biotiki-situations-blank .bc-choice.is-active { background: var(--bsit-dark); border-color: var(--bsit-dark); color: #fff; }
/* Пол (первое поле) — 2 равные кнопки; Возраст — 6 равных в один ряд.
   (Якорь-поле bc-anchor-field использует свою шкалу .bc-anchor-scale, а не .bc-choices — сюда не попадает.) */
.biotiki-situations-blank .bc-modal .bc-field:first-of-type .bc-choices { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; }
.biotiki-situations-blank .bc-modal .bc-field:not(:first-of-type) .bc-choices { display: grid; grid-template-columns: repeat(7, 1fr); gap: 6px; }
.biotiki-situations-blank .bc-modal .bc-choice { min-width: 0; }
/* Телефон: возраст переносим в сетку 4+3 (flex-обёртка вместо grid из 7 — второй ряд по центру). */
@media (max-width: 600px) {
  .biotiki-situations-blank .bc-modal .bc-field:not(:first-of-type) .bc-choices {
    display: flex; flex-wrap: wrap; justify-content: center; gap: 8px;
  }
  .biotiki-situations-blank .bc-modal .bc-field:not(:first-of-type) .bc-choice {
    flex: 0 0 calc((100% - 24px) / 4);
  }
}

/* Прохождение батареи: общий итог — без контейнеров, единый стиль */
/* Верхний ряд итога: «← ко всем ситуациям» слева, «Скачать результаты» справа. */
.bsit-final-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin: 0 0 16px; }
.bsit-final-top .bc-print-btn { margin: 0; }
/* В ряду «назад/скачать» ссылка назад — слева (переопределяем центрирование bsit-final .bsit-back). */
.bsit-final .bsit-final-top .bsit-back { display: inline-block; margin: 0; text-align: left; }
.bsit-final-top .biotiki-nav-btn { margin: 0; }
/* О8 (телефон): «Скачать результаты» компактнее и в одну строку со ссылкой назад. */
@media (max-width: 600px) {
  .bsit-final-top { flex-wrap: nowrap; gap: 10px; }
  .bsit-final .bsit-final-top .bsit-back { font-size: 15px; white-space: nowrap; }
  .bsit-final-top .biotiki-nav-btn.secondary { padding: 7px 12px; font-size: 13px; border-width: 1.5px; white-space: nowrap; }
}
.bsit-final-sec { background: transparent; border: 0; border-radius: 0; margin: 0 0 28px; }
.bsit-final-sec-title {
  text-align: left; font-weight: 700; font-size: 20px; margin: 0 0 22px;
  color: var(--bsit-ink); padding-top: 18px; border-top: 1px solid var(--bsit-line);
}
.biotiki-situations-blank .bsit-final-sec .bquiz-result,
.biotiki-situations-blank .bsit-final-sec .burdon-result,
.biotiki-situations-blank .bsit-final-sec .schulte-result { max-width: none; margin: 0; }

/* Текст итога — размер и цвет как у интро/результатов тестов (18px), без ограничения ширины. */
.biotiki-situations-blank .bsit-final { font-size: 18px; line-height: 1.6; color: var(--bsit-ink); }
.biotiki-situations-blank .bsit-final p { margin: 0 0 12px; }
.biotiki-situations-blank .bsit-final-title { font-size: 24px; margin: 0 0 12px; }
.biotiki-situations-blank .bsit-final-date { margin: 0 0 26px; padding-bottom: 4px; border-bottom: 1px solid var(--bsit-line); }
.biotiki-situations-blank .bsit-final-sec-title { font-size: 20px; }

/* «Самочувствие сейчас» и «Что может помочь» — бокс в стиле блока «Сохранить результат». */
.bsit-final-sec.bsit-anchor-box {
  background: #EAF6EE; border: 1px solid #cfe9d1; border-left: 5px solid #2E7D4F;
  border-radius: 10px; padding: 18px 22px;
}
/* Заголовок с иконкой в зелёном квадратике (как у .bc-pdf-box-ic). */
.bsit-sec-head { display: flex; align-items: center; gap: 14px; margin: 0 0 6px; }
.bsit-sec-head .bsit-final-sec-title { margin: 0; border-top: 0; padding-top: 0; }
.bsit-sec-ic {
  flex: 0 0 auto; width: 46px; height: 46px; border-radius: 12px;
  background: #D8F2D7; color: #2E7D4F; display: flex; align-items: center; justify-content: center;
}
/* «Общая картина» — мягкий нейтральный акцент (смысловое ядро). */
.bsit-final-sec.bsit-general-box {
  background: #F6FAF7; border: 1px solid var(--bsit-line);
  border-radius: 12px; padding: 18px 22px;
}
.bsit-final-sec.bsit-general-box .bsit-final-sec-title { border-top: 0; padding-top: 0; }

/* «Об использованных методиках» — сильно мельче, серым, без курсива. Номер — реальный текст (ровно в PDF). */
.bsit-references .bsit-refs-list { list-style: none; padding-left: 0; margin: 6px 0 0; }
.bsit-references .bsit-refs-list li { display: flex; gap: 6px; margin: 4px 0; font-size: 13px; color: var(--bsit-muted); }
.bsit-references .bsit-ref-n { flex: 0 0 auto; }

/* Дисклеймер итога — серым, мельче, не жирный, по центру, с тонкой линией сверху. */
.bsit-result-note {
  font-size: 15px; color: var(--bsit-muted); font-weight: 400; text-align: center;
  border-top: 1px solid var(--bsit-line); margin: 22px 0 8px; padding-top: 14px;
}

/* Лоадер сборки итога. */
.bsit-final-loader { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 14px; padding: 60px 0; color: var(--bsit-muted); font-size: 17px; }
.bsit-spinner { width: 34px; height: 34px; border-radius: 50%; border: 3px solid var(--bsit-line); border-top-color: #2E7D4F; animation: bsit-spin .8s linear infinite; }
@keyframes bsit-spin { to { transform: rotate(360deg); } }

/* Плавное появление итога. */
.bsit-final--in { animation: bsit-fade .45s ease both; }
@keyframes bsit-fade { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .bsit-final--in { animation: none; } }

/* ---------- Подвал ---------- */
/* Десктоп/планшет: логотип + фразы слева, © справа (как раньше). */
.bsit-footer {
  margin-top: 30px; padding-top: 14px; border-top: 1px solid var(--bsit-line);
  display: grid; grid-template-columns: auto 1fr auto; grid-template-areas: "logo about side";
  align-items: center; gap: 0 24px; color: var(--bsit-muted); font-size: 13px;
}
.bsit-footer-logo { grid-area: logo; height: 54px; width: auto; object-fit: contain; display: block; }
.bsit-footer-about { grid-area: about; display: flex; flex-direction: column; gap: 6px; line-height: 1.45; }
.bsit-footer-side { grid-area: side; display: flex; flex-direction: column; gap: 6px; align-items: flex-end; text-align: right; line-height: 1.45; }
.bsit-footer-copy { white-space: nowrap; }
.bsit-footer-policy { white-space: nowrap; }
.bsit-footer a { color: var(--bsit-green-d); text-decoration: none; }
.bsit-footer a:hover { text-decoration: underline; }
.bsit-footer a.bsit-footer-policy { color: inherit; text-decoration: underline; }

/* ---------- Страница ситуации (интро оркестратора) ---------- */
.bsit-sit { padding-top: 6px; }
.bsit-back { display: inline-block; margin: 0 0 14px; color: var(--bsit-dark); text-decoration: none; font-size: 17px; font-weight: 700; }
.bsit-back:hover { text-decoration: underline; }

.bsit-sit-hero {
  background: var(--bsit-dark); color: #fff; border-radius: 24px; padding: 34px 36px;
  display: grid; grid-template-columns: 1.25fr .75fr; gap: 30px; align-items: stretch;
}
/* Десктоп/планшет (картинка справа): блок текста вверху (заголовок ~ на уровне верха картинки),
   кнопка прижата к низу (margin-top:auto у кнопки). На телефоне (≤900) — обычный поток. */
.bsit-sit-hero-main { align-self: stretch; display: flex; flex-direction: column; justify-content: flex-start; gap: 18px; }
.bsit-sit-hero-text { display: flex; flex-direction: column; margin-top: 28px; } /* чуть ниже верха */
.bsit-sit-title { font-size: 30px; line-height: 1.15; letter-spacing: -.02em; margin: 0 0 18px; font-weight: 800; } /* H1 */
.bsit-sit-lead { font-size: 18px; line-height: 1.55; color: #EAF6EE; margin: 0 0 22px; } /* лид */
/* Подписи как в hero главной: белый текст через точку-разделитель, без плашек. */
.bsit-sit-pills { display: flex; flex-wrap: wrap; align-items: center; gap: 0; margin-bottom: 0; }
.bsit-pill { display: inline-flex; align-items: center; padding: 0; border-radius: 0; background: none; color: #fff; font-size: 16px; font-weight: 700; }
.bsit-pill:not(:last-child)::after { content: '·'; margin: 0 10px; opacity: .7; }
/* Кнопка в hero — прижата к низу, слева (десктоп/планшет). */
.bsit-sit-hero .bsit-btn { align-self: flex-start; margin-top: auto; }
/* Иллюстрация: заполняет блок со скруглением (исходное оформление). */
.bsit-sit-visual {
  min-height: 210px; border-radius: 20px; overflow: hidden; border: 1px solid #ffffff2e;
  background: linear-gradient(145deg, #3a9463, #256b45);
}
.bsit-sit-visual img { width: 100%; height: 100%; min-height: 210px; object-fit: cover; display: block; border-radius: 20px; }

/* «Что вы пройдёте» — без коробки, отделено одной серой линией снизу (вариант D). */
.bsit-plan { margin-top: 40px; border-bottom: 1px solid var(--bsit-line); padding: 0 0 32px; }
.bsit-plan-h2 { font-size: 26px; font-weight: 800; margin: 0 0 22px; letter-spacing: -.01em; } /* H2 */
/* Горизонтальный таймлайн: номера-кружки на общей линии, контент под ними; равные колонки,
   заголовок/описание/время выровнены по высоте. На телефоне (медиа ниже) — вертикальный стек. */
.bsit-plan-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; position: relative; align-items: stretch; }
.bsit-plan-grid::before { content: ''; position: absolute; top: 26px; left: 16.66%; right: 16.66%; height: 2px; background: var(--bsit-soft); z-index: 0; }
.bsit-method { display: flex; flex-direction: column; text-align: center; background: none; border: none; border-radius: 0; padding: 0; position: relative; z-index: 1; }
.bsit-method-num { flex: 0 0 auto; width: 52px; height: 52px; border-radius: 50%; background: var(--bsit-dark); color: #fff; font-weight: 800; font-size: 20px; display: flex; align-items: center; justify-content: center; margin: 0 auto 14px; }
.bsit-method-title { font-size: 16px; font-weight: 700; line-height: 1.3; margin: 0 0 8px; letter-spacing: -.01em; min-height: 2.6em; display: flex; align-items: center; justify-content: center; }
.bsit-method-desc { color: var(--bsit-muted); line-height: 1.45; margin: 0 0 10px; font-size: 14px; flex: 1 1 auto; }
.bsit-method-time { font-size: 13px; font-weight: 800; color: var(--bsit-green-d); margin-top: auto; }
.bsit-sit-cta { margin-top: 30px; text-align: center; }

.bsit-panels { margin-top: 24px; display: grid; grid-template-columns: 1.1fr .9fr; gap: 20px; }
.bsit-panel { border-radius: 20px; padding: 18px 26px 26px; }
.bsit-panel.soft { background: var(--bsit-soft); }
.bsit-panel.white { background: var(--bsit-card); border: 1px solid var(--bsit-line); }
.bsit-panel-h3 { margin: 0 0 14px; font-size: 19px; font-weight: 800; } /* H3 */
.bsit-checks { display: grid; gap: 14px; }
.bsit-check { display: flex; gap: 12px; align-items: flex-start; min-height: 42px; color: var(--bsit-ink); line-height: 1.45; font-size: 15px; }
.bsit-check b { color: var(--bsit-ink); }
.bsit-tick { flex: 0 0 24px; width: 24px; height: 24px; border-radius: 50%; background: var(--bsit-green); color: #fff; display: grid; place-items: center; font-size: 13px; font-weight: 900; line-height: 1; margin-top: 1px; }

/* Прохождение: экран перехода между тестами */
.bsit-inter { max-width: 560px; margin: 70px auto; text-align: center; animation: bsit-fade .3s ease both; }
.bsit-inter-check {
  width: 72px; height: 72px; margin: 0 auto 16px; border-radius: 50%;
  background: var(--bsit-dark); color: #fff; display: grid; place-items: center;
  font-size: 36px; font-weight: 900; animation: bsit-pop .35s cubic-bezier(.2,.8,.3,1.4) both;
}
.bsit-inter-txt { font-size: 18px; font-weight: 700; color: var(--bsit-ink); margin: 0 0 18px; }
.bsit-prog { display: flex; justify-content: center; align-items: center; gap: 14px; margin: 0 0 18px; }
.bsit-prog-dot {
  width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center;
  font-size: 14px; font-weight: 900; background: #eef2ef; color: #9fb0a5; border: 2px solid transparent;
}
.bsit-prog-dot.done { background: var(--bsit-dark); color: #fff; }
.bsit-prog-dot.next { background: #fff; color: var(--bsit-dark); border-color: var(--bsit-dark); }
.bsit-inter-next { color: var(--bsit-muted); margin: 0 0 22px; font-size: 15px; }
.bsit-inter-next b { color: var(--bsit-ink); }
@keyframes bsit-pop { 0% { transform: scale(.4); opacity: 0; } 100% { transform: scale(1); opacity: 1; } }
@keyframes bsit-fade { 0% { transform: translateY(8px); opacity: 0; } 100% { transform: translateY(0); opacity: 1; } }
.bsit-final { max-width: 720px; margin: 10px auto 0; }
.bsit-final-title { text-align: center; font-weight: 700; }
.bsit-final .bsit-back { display: block; text-align: center; margin: 0 auto 18px; }

/* ---------- Адаптив ---------- */
@media (max-width: 900px) {
  /* Карточные сетки (.bsit-cards / -3) — на auto-fit; «Почему» — 4→2. */
  .bsit-why-grid { grid-template-columns: repeat(2, 1fr); }
  .bsit-panels { grid-template-columns: 1fr; }
  .bsit-final-cta { flex-direction: column; align-items: center; text-align: center; }
  .bsit-hero { padding: 30px; border-radius: 22px; }
  .bsit-sit-hero { grid-template-columns: 1fr; padding: 24px; }
  .bsit-sit-hero-main { justify-content: flex-start; } /* 1 колонка — обычный поток */
  .bsit-sit-hero-text { margin-top: 0; } /* текст не прижимаем вниз (картинка сверху) */
  /* Типографика — планшет. Иерархия H1>H2>H3>лид сохраняется. */
  .bsit-hero-title, .bsit-sit-title,
  .biotiki-situations-blank .bquiz-intro-title,
  .biotiki-situations-blank .burdon-intro-title,
  .biotiki-situations-blank .schulte-intro-title { font-size: 26px; }
  .bsit-cat-h2, .bsit-why-h2, .bsit-group-h2, .bsit-plan-h2 { font-size: 22px; }
  .bsit-scard-title, .bsit-tcard-title, .bsit-panel-h3, .bsit-disclaimer-h3 { font-size: 18px; }
  .bsit-hero-sub, .bsit-sit-lead, .bsit-hero-anchors-label { font-size: 17px; }
  /* Иллюстрация над контентом: целиком (без обрезки), ограничена по размеру и по центру.
     Размер бокса = размеру картинки (width/height:auto) — иначе contain даёт letterbox,
     и border-radius скругляет пустой бокс, а углы самой картинки остаются квадратными. */
  .bsit-sit-visual { order: -1; min-height: 0; background: none; border: none; overflow: visible; text-align: center; }
  .bsit-sit-visual img { width: auto; max-width: min(440px, 100%); height: auto; min-height: 0; max-height: 300px; object-fit: contain; border-radius: 20px; margin: 0 auto; display: block; }
  /* Таймлайн «Что вы пройдёте» на 600–900 — по-прежнему 3 кружка в ряд (влезают). */
  .biotiki-situations-blank .bsit-blank-main { padding: 0 16px 24px; }
  /* Навигация → бургер */
  .bsit-header { position: relative; }
  .bsit-burger { display: inline-flex; }
  .bsit-nav {
    display: none; position: absolute; top: 68px; right: 0; left: auto; min-width: 200px;
    flex-direction: column; gap: 0; background: #fff; border: 1px solid var(--bsit-line);
    border-radius: 14px; padding: 8px; box-shadow: 0 12px 30px rgba(20,68,43,.12); z-index: 60;
  }
  .bsit-nav.open { display: flex; }
  .bsit-nav a { padding: 12px 12px; border-radius: 8px; }
  .bsit-nav a:hover { background: var(--bsit-soft); }

  /* Вариант A: на страницах описаний/списков/результатов сама КНОПКА-бургер плавает в правом
     верхнем углу и всегда доступна при прокрутке (шапка с логотипом прокручивается как обычно,
     без панели и тени). На время прохождения теста класс снимается из JS (Core.setStickyHeader). */
  .bsit-header-sticky .bsit-burger { position: fixed; top: 24px; right: 16px; z-index: 100; }
  /* Выпадающее меню открывается у плавающей кнопки (тоже fixed), а не у уехавшей шапки. */
  .bsit-header-sticky .bsit-nav { position: fixed; top: 76px; right: 16px; left: auto; }
}
@media (max-width: 600px) {
  /* Компактнее поля на телефоне (в т.ч. чтобы пара чипов помещалась в строку). */
  .biotiki-situations-blank .bsit-blank-main { padding: 0 12px 24px; }
  .bsit-hero { padding: 22px 16px; }
  /* «Почему стоит пройти» → 1 колонка. */
  .bsit-why-grid { grid-template-columns: 1fr; }
  /* «Что вы пройдёте» — вертикальный таймлайн: кружки с цифрами на линии слева, подписи справа.
     Линию рисует каждый метод, кроме последнего (::before высотой в метод) — она соединяет
     соседние кружки и заканчивается ровно на последнем «3». Одинаковый нижний отступ = равные
     промежутки между кружками; описание идёт сразу за названием. */
  /* Вертикальный таймлайн. Кружок — в absolute слева (не растягивает строки: иначе у метода
     с коротким названием под ним появлялась пустота). Текст (название→описание→время) идёт
     вплотную с равными малыми отступами. Методы выровнены по высоте (grid-auto-rows:1fr) →
     расстояния между кружками одинаковые; лишняя высота уходит ВНИЗ метода, не в текст.
     Линию рисует каждый метод, кроме последнего (::before высотой в метод → до следующего кружка,
     заканчивается на «3»). */
  .bsit-plan-grid { display: grid; grid-template-columns: 1fr; grid-auto-rows: 1fr; }
  .bsit-plan-grid::before { display: none; }
  .bsit-method { display: block; position: relative; text-align: left; padding: 0 0 22px 68px; }
  .bsit-method:last-child { padding-bottom: 0; }
  .bsit-method:not(:last-child)::before { content: ''; position: absolute; left: 25px; top: 26px; height: 100%; width: 2px; background: var(--bsit-soft); z-index: 0; }
  .bsit-method-num { position: absolute; left: 0; top: 0; margin: 0; z-index: 1; }
  .bsit-method-title { min-height: 0; display: block; text-align: left; margin: 0 0 4px; }
  .bsit-method-desc { margin: 0 0 4px; }
  .bsit-method-time { margin: 0; }
  /* Весь текст hero по центру (главная / «Все тесты» / батареи). */
  .bsit-hero, .bsit-sit-hero { text-align: center; }
  .bsit-sit-hero-main { align-items: center; }
  .bsit-sit-hero .bsit-btn { align-self: center; }
  /* Главная/«Все тесты»: чипы 2+2 слитными парами через точку, компактный интервал строк. */
  .bsit-hero-chips { display: flex; flex-wrap: wrap; justify-content: center; align-items: baseline; column-gap: 0; row-gap: 3px; margin-top: 16px; }
  .bsit-hero-chips .bsit-chip { white-space: nowrap; }
  .bsit-hero-chips .bsit-chip-br { display: block; flex-basis: 100%; height: 0; }
  .bsit-hero-chips .bsit-chip:nth-child(2)::after { content: none; }
  /* Батарея: отступ лид→чипы = отступу заголовок→лид (18px). */
  .bsit-sit-lead { margin-bottom: 0; }
  /* Чипы — капсулы-бейджи строго 2×2 по центру (grid, а не wrap — иначе бывает 3+1). */
  .bsit-sit-pills { display: grid; grid-template-columns: auto auto; justify-content: center; gap: 8px; margin-top: 18px; }
  .bsit-sit-pills .bsit-pill { background: rgba(255,255,255,.16); border-radius: 999px; padding: 5px 12px; font-size: 13px; justify-self: center; }
  .bsit-sit-pills .bsit-pill::after { content: none; }
  .bsit-sit-pills .bsit-chip-br { display: none; }
  /* Типографика — телефон. */
  .bsit-hero-title, .bsit-sit-title,
  .biotiki-situations-blank .bquiz-intro-title,
  .biotiki-situations-blank .burdon-intro-title,
  .biotiki-situations-blank .schulte-intro-title { font-size: 23px; }
  .bsit-cat-h2, .bsit-why-h2, .bsit-group-h2, .bsit-plan-h2 { font-size: 20px; }
  .bsit-scard-title, .bsit-tcard-title, .bsit-panel-h3, .bsit-disclaimer-h3 { font-size: 17px; }
  .bsit-hero-sub, .bsit-sit-lead, .bsit-hero-anchors-label { font-size: 15px; }
  .bsit-cat-lead { font-size: 15px; }
  .bsit-final-cta-txt { font-size: 18px; } /* «Готовы посмотреть» — по макету Г5 */
  .bsit-chip, .bsit-pill { font-size: 14px; } /* чипы на телефоне 14 */
  .bsit-tcard-time { font-size: 13px; }
  /* «Все тесты» — кнопки разделов одинаковой ширины, текст по центру (В1, вариант 1). */
  .bsit-hero-anchors { flex-direction: column; align-items: stretch; }
  .bsit-hero-anchor { justify-content: center; border-radius: 12px; }
  /* Подвал на телефоне: логотип сверху по центру, под ним две фразы по центру; строку «© …» убираем; ссылка на политику внизу по центру с отступом 10px. */
  .bsit-footer { display: block; text-align: center; }
  .bsit-footer-logo { margin: 0 auto 4px; }
  .bsit-footer-copy { display: none; }
  .bsit-footer-about { align-items: center; text-align: center; gap: 10px; }
  .bsit-footer-side { display: block; text-align: center; }
  .bsit-footer-policy { display: inline-block; margin-top: 10px; }
}
