/**
 * @file event.css — страница материала (мероприятие, практика, мастер, статья): шапка-сводка, таблица полей, ступени цены, вопросы, ведущие, «Мероприятия с участием».
 * Подписи полей — роль «мета», названия блоков над длинными текстами — H3, названия блоков-витрин — H2. Значения только из токенов.
 */
/* причина найдена фактом, не гадал (2026-09-27): у полной страницы материала (event/practice/master_profile/article/…) нет ни
   одного предка с классом .region-content — селектор css/layout.css «.region-content > :not(section):not(.ee-hero)», который
   должен был давать общий контейнер и боковые поля содержимому региона, оказался мёртвым кодом: на живом стенде такого класса
   нет НИ НА ОДНОЙ странице, ни у одного типа материала; ядро Drupal здесь рисует другие имена — .layout-content/.layout-container.
   Из-за этого .node__content всегда был во всю ширину экрана без контейнера и боковых полей — раньше незаметно (обычный текст
   просто растягивался), впервые бросилось в глаза с героем мероприятия (сплошная картинка до самого края экрана). Тот же
   контейнер, что уже даёт .ee-container заголовку страницы (css/layout.css), — здесь явно, тем же токенам --ee-container/--ee-gutter. */
.node--view-mode-full .node__content { box-sizing: border-box; max-width: var(--ee-container); margin-inline: auto; padding-inline: var(--ee-gutter); display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--ee-s5); }
.node__meta { margin-bottom: var(--ee-s4); font-size: var(--ee-fs-meta); line-height: var(--ee-lh-meta); color: var(--muted-foreground); }

/* строка-сводка: чипы «направление · тип · статус» и «даты · место · от цены» */
.ee-event-meta { margin: 0 0 var(--ee-s5); }
.ee-event-meta__badges { display: flex; flex-wrap: wrap; gap: var(--ee-s2); margin-bottom: var(--ee-s3); }
.ee-event-meta__line { margin: 0; font-weight: var(--ee-fw-strong); color: var(--foreground); }

/* мероприятие на компьютере: слева герой (обложка + миниатюры, ee-event-hero — список вёрстки п.5), справа поля одной колонкой */
@media (min-width: 60rem) {
  .node--type-event.node--view-mode-full .node__content { grid-template-columns: minmax(0, 22rem) minmax(0, 1fr); align-items: start; column-gap: var(--ee-s6); row-gap: 0; grid-auto-rows: min-content; }
  .node--type-event .node__content > * { grid-column: 2; }
  .node--type-event .node__content > .ee-event-hero { grid-column: 1; grid-row: 1 / span 40; min-width: 0; align-self: start; position: sticky; top: calc(var(--ee-header-height) + var(--ee-s4)); margin-bottom: var(--ee-s5); }
  .node--type-event .node__content > :is(details, .ee-tiers, .field--name-field-event-faq, .field--name-field-event-hosts) { margin-block: var(--ee-s3); }
}
.field--name-field-practice-cover img { display: block; width: 100%; border-radius: var(--ee-radius-card); box-shadow: var(--shadow-md); }

/* герой страницы мероприятия: обложка + колонка миниатюр (список вёрстки п.5, 2026-09-27) */
.ee-event-hero { display: flex; flex-direction: column; gap: var(--ee-s2); min-width: 0; max-width: 100%; }
.ee-event-hero__main { display: block; min-width: 0; flex: 1 1 auto; border-radius: var(--ee-radius-card); overflow: hidden; box-shadow: var(--shadow-md); cursor: zoom-in; }
.ee-event-hero__main img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.ee-event-hero__thumbs { display: flex; gap: var(--ee-s2); overflow-x: auto; }
.ee-event-hero__thumb { flex: 0 0 4.5rem; display: block; border-radius: var(--ee-radius-field); overflow: hidden; cursor: zoom-in; }
.ee-event-hero__thumb img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.ee-event-hero__thumb:hover img, .ee-event-hero__thumb:focus-visible img { outline: var(--ee-line-strong) solid var(--ee-btn-accent); outline-offset: -2px; }
@media (min-width: 60rem) {
  /* колонка миниатюр слева от обложки (не под ней) — до 4 видно без прокрутки, дальше сама сетка носителя даёт вертикальную прокрутку */
  .ee-event-hero { flex-direction: row-reverse; }
  .ee-event-hero__thumbs { flex-direction: column; overflow-x: visible; overflow-y: auto; max-height: 26rem; }
  .ee-event-hero__thumb { flex: 0 0 4rem; }
}

/* таблица полей «подпись — значение» */
.node__content .field--label-above, .node__content .field--label-inline { display: grid; grid-template-columns: minmax(0, 11rem) minmax(0, 1fr); gap: var(--ee-s2) var(--ee-s4); padding: var(--ee-s3) 0; border-bottom: var(--ee-line) solid var(--border); }
.node__content .field--label-above > .field__label, .node__content .field--label-inline > .field__label { font-size: var(--ee-fs-meta); line-height: var(--ee-lh-meta); color: var(--muted-foreground); }
.node__content .field--type-text-long, .node__content .field--type-text-with-summary { grid-template-columns: minmax(0, 1fr); }
@media (max-width: 40rem) { .node__content .field--label-above, .node__content .field--label-inline { grid-template-columns: minmax(0, 1fr); gap: var(--ee-s1); } }
.field__items { display: flex; flex-wrap: wrap; gap: var(--ee-s2); }
.field--name-field-price-from .field__item { font-weight: var(--ee-fw-heading); }
.date-recur-occurrences { margin: 0; padding-left: var(--ee-s5); }

/* названия блоков над длинными текстами и списками: одна ступень H3 */
.node__content :is(.field--name-field-event-atmosphere, .field--name-field-program, .field--name-field-what-to-bring, .field--name-field-registration-terms, .field--name-field-event-includes, .field--name-field-event-excludes, .field--name-field-price-tiers, .field--name-field-event-faq) > .field__label,
.ee-hosts__title, .ee-gallery__title { margin: var(--ee-s5) 0 var(--ee-s3); font-size: var(--ee-fs-h3); line-height: var(--ee-lh-h3); font-weight: var(--ee-fw-heading); letter-spacing: var(--ee-tracking-heading); text-transform: none; color: var(--foreground); }
.ee-tiers, .field--name-field-event-faq, .ee-hosts { display: block; border-bottom: 0; }

/* раскрывающиеся блоки страницы («Практическая информация») */
.node__content details { padding: var(--ee-s1) var(--ee-s5) var(--ee-s4); border: var(--ee-line) solid var(--border); border-radius: var(--ee-radius-card); background: var(--background); }
.node__content details > summary { padding: var(--ee-s3) 0; font-size: var(--ee-fs-h4); line-height: var(--ee-lh-h4); font-weight: var(--ee-fw-heading); cursor: pointer; list-style-position: inside; }
.node__content details > summary::marker { color: var(--ee-btn-accent); }
.node__content details > summary.ee-btn { padding: var(--ee-s2) var(--ee-s5); font-size: var(--ee-fs-body); line-height: var(--ee-lh-card); list-style: none; }   /* «Показать всех»: кнопка, а не заголовок блока */

/* ступени цены и вопросы */
.ee-table { border: var(--ee-line) solid var(--border); border-radius: var(--radius); overflow: hidden; }
.ee-table__price { font-weight: var(--ee-fw-heading); white-space: nowrap; }
.ee-table .field, .ee-faq-item .field { display: block; padding: 0; border: 0; }
.ee-faq-item { margin-bottom: var(--ee-s2); padding: var(--ee-s1) var(--ee-s4); border: var(--ee-line) solid var(--border); border-radius: var(--radius); background: var(--background); }
.ee-faq-item > summary { padding: var(--ee-s3) 0; font-weight: var(--ee-fw-strong); cursor: pointer; }
.ee-faq-item__answer { padding-bottom: var(--ee-s2); color: var(--muted-foreground); }

/* ведущие */
.node__content details.ee-hosts__more { margin-top: var(--ee-s4); padding: 0; border: 0; background: none; }
.node__content details.ee-hosts__more > summary { margin: 0 0 var(--ee-s4); list-style: none; }
.node__content details.ee-hosts__more > summary::-webkit-details-marker { display: none; }

/* профиль мастера и «Мероприятия с участием» */
.ee-master-events { margin-top: var(--ee-s6); }
.ee-master-events__heading { margin: 0 0 var(--ee-s4); }
.ee-master-events__title { margin: var(--ee-s5) 0 var(--ee-s3); font-size: var(--ee-fs-h4); line-height: var(--ee-lh-h4); font-weight: var(--ee-fw-heading); color: var(--muted-foreground); }
.node--type-master-profile.node--view-mode-full :is(.field--name-field-image-url, .field--name-field-master-photo) { max-width: 20rem; }
.node--type-master-profile.node--view-mode-full :is(.ee-linked-img, .field--name-field-master-photo img) { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--ee-radius-card); box-shadow: var(--shadow-md); }
/* страница термина (направление, раздел, тема): записи выводятся целиком, поэтому один столбец; картинка направления — полоса */
.view-taxonomy-term .view-content:has(> .views-row) { grid-template-columns: minmax(0, 1fr); max-width: 56rem; }
.view-taxonomy-term .view-header .field--name-field-image-url img { max-height: 16rem; }
