/* Афиша в теме Leola («Редизайн-3», вечер 3): перенос CSS-секции 37 поста 97 на токены ТЗ (углы 0, песок и чернила,
 * Literata для заголовков). HTML афиши генерирует VPS (microprojects/engine/src/events/page.js) и ежедневно перезаписывает
 * хабы 538/616 и архивы 617/618 — разметку не меняем, только вид. Подключается на страницах с .kid-afisha (functions.php). */
.kid-afisha__lead { margin: 0 0 20px; font-size: 17px; line-height: 1.55; color: var(--lk-text2); }
.kid-afisha__lead a { color: var(--lk-ink); }
.kid-afisha__tabs { display: flex; gap: 0; margin: 0 0 8px; padding: 0; overflow-x: auto; border-bottom: 1px solid var(--lk-line); scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.kid-afisha__tabs::-webkit-scrollbar { display: none; }
.kid-afisha__tab { flex: none; min-height: 44px; padding: 0 16px; border: 0; border-bottom: 2px solid transparent; border-radius: 0; background: none; color: var(--lk-muted); font: 500 13px/1 var(--lk-sans); letter-spacing: .04em; white-space: nowrap; cursor: pointer; }
.kid-afisha__tab:hover { color: var(--lk-ink); }
.kid-afisha__tab.is-active { border-bottom-color: var(--lk-ink); color: var(--lk-ink); }
.kid-afisha__tab:focus-visible { outline: 2px solid var(--lk-ink); outline-offset: -2px; }
.kid-afisha__empty, .kid-afisha__none { margin: 8px 0 16px; padding: 18px 20px; background: var(--lk-sand); border-radius: 0; color: var(--lk-text2); }
.kid-afisha__card[hidden], .kid-afisha__section[hidden], .kid-afisha__empty[hidden] { display: none; }
.kid-afisha__day { margin-top: 32px; padding-bottom: 8px; border-bottom: 1px solid var(--lk-line); }
.kid-afisha__cards { display: grid; gap: 0; margin: 0; }
.kid-afisha__card { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 16px; padding: 16px 0; border: 0; border-bottom: 1px solid var(--lk-line); border-radius: 0; background: none; }
.kid-afisha__thumb { display: block; width: 96px; height: 120px; overflow: hidden; background: var(--lk-sand); border-radius: 0; }
.kid-afisha__thumb img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.kid-afisha__thumb--tile { display: flex; align-items: center; justify-content: center; color: var(--lk-text2); background: var(--lk-sand); }
.kid-afisha__thumb--tile svg { width: 30px; height: 30px; }
.kid-afisha__body { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.kid-afisha__kind { font: 500 11px/1.3 var(--lk-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--lk-muted); }
.kid-afisha__title { margin: 0; font: 400 19px/1.25 var(--lk-serif); }
.kid-afisha__title a { color: var(--lk-ink); text-decoration: none; }
.kid-afisha__title a:hover { text-decoration: underline; text-underline-offset: 4px; }
.kid-afisha__meta { margin: 0; font-size: 14px; line-height: 1.45; color: var(--lk-text2); }
.kid-afisha__meta strong { color: var(--lk-ink); font-weight: 500; }
.kid-afisha__sep { margin: 0 6px; color: var(--lk-muted); }
.kid-afisha__map { display: inline-flex; margin-left: 4px; vertical-align: -3px; color: var(--lk-text2); }
.kid-afisha__map svg { width: 16px; height: 16px; }
.kid-afisha__chips { display: flex; flex-wrap: wrap; gap: 6px; margin: 2px 0 0; }
.kid-afisha__chip { display: inline-block; padding: 3px 8px; border: 1px solid var(--lk-line); border-radius: 0; background: none; color: var(--lk-ink); font: 500 12px/1.3 var(--lk-sans); }
.kid-afisha__chip--free, .kid-afisha__chip--price { background: var(--lk-sand); border-color: var(--lk-sand); }
.kid-afisha__cta { display: inline-block; align-self: flex-start; margin-top: 8px; text-decoration: none; }
.kid-afisha__cta span { display: inline-flex; align-items: center; min-height: 40px; padding: 0 18px; border: 1px solid var(--lk-ink); border-radius: 0; background: var(--lk-ink); color: var(--lk-surface); font: 500 12px/1 var(--lk-sans); letter-spacing: .12em; text-transform: uppercase; }
.kid-afisha__cta:hover span { background: var(--lk-text2); border-color: var(--lk-text2); }
.kid-afisha__cta--more span { background: none; color: var(--lk-ink); }
.kid-afisha__cta--more:hover span { background: var(--lk-ink); color: var(--lk-surface); }
.kid-afisha__cta--tg span { background: var(--lk-surface); border-color: var(--lk-surface); color: var(--lk-ink); }
.kid-afisha__city { margin: 12px 0 0; padding: 0 16px; border: 1px solid var(--lk-line); border-radius: 0; background: var(--lk-surface); }
.kid-afisha__city[open] { padding-bottom: 14px; }
.kid-afisha__summary { display: flex; align-items: center; gap: 8px; min-height: 52px; color: var(--lk-ink); font: 500 15px/1.3 var(--lk-sans); list-style: none; cursor: pointer; }
.kid-afisha__summary::-webkit-details-marker { display: none; }
.kid-afisha__summary::after { content: "+"; margin-left: auto; font-size: 20px; font-weight: 300; }
.kid-afisha__city[open] > .kid-afisha__summary::after { content: "−"; }
.kid-afisha__count { display: inline-block; min-width: 22px; padding: 2px 6px; background: var(--lk-sand); color: var(--lk-text2); font-size: 12px; text-align: center; }
.kid-afisha__foot { margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--lk-ink); }
.kid-afisha__tg { padding: 28px; background: var(--lk-ink); border-radius: 0; color: var(--lk-surface); }
.kid-afisha__tg-title { margin: 0 0 8px; color: var(--lk-surface); font: 300 26px/1.2 var(--lk-serif); }
.kid-afisha__tg-text { margin: 0 0 16px; color: var(--lk-sand); font-size: 15px; line-height: 1.5; }
.kid-afisha__archive { margin: 20px 0 0; font-size: 14px; line-height: 1.6; color: var(--lk-text2); }
.kid-afisha__archive-label { color: var(--lk-ink); font-weight: 500; }
.kid-afisha__note { margin: 16px 0 0; font-size: 12.5px; line-height: 1.5; color: var(--lk-muted); }
.kid-afisha__weeks { display: grid; gap: 0; margin-top: 16px; border-top: 1px solid var(--lk-line); }
.kid-afisha__week { display: flex; align-items: baseline; gap: 14px; padding: 16px 0; border: 0; border-bottom: 1px solid var(--lk-line); border-radius: 0; text-decoration: none; }
.kid-afisha__week:hover .kid-afisha__week-title { text-decoration: underline; text-underline-offset: 4px; }
.kid-afisha__week-slug { font: 500 11px/1.3 var(--lk-sans); letter-spacing: .14em; color: var(--lk-muted); }
.kid-afisha__week-title { color: var(--lk-ink); font: 400 18px/1.3 var(--lk-serif); }
@media (max-width: 480px) {
	.kid-afisha__card { grid-template-columns: 76px minmax(0, 1fr); gap: 12px; }
	.kid-afisha__thumb { width: 76px; height: 96px; }
	.kid-afisha__title { font-size: 17px; }
	.kid-afisha__tg { padding: 22px; }
}
.kid-afisha__defs { position: absolute; width: 0; height: 0; overflow: hidden; }
