/* pbn-enhance.css — дополнения к style.css макета anticafe-ps.ru под токен-движок BablO$.
   Статичная часть: сид страниц (bin/pbn/anticafe-ps_2_pages.php) копирует этот файл в
   public/sites/anticafe-ps-ru/assets/css/pbn-enhance.css и дописывает в конец маски иконок
   i.icon[data-ic="<ключ>"]{--ic:url("data:image/svg+xml,%E2%80%A6")}. Только переменные и классы макета; своих классов нет —
   кроме служебных классов движка (.bf-msg, .bf-err, .pdo-*) и атрибутов схемы (data-ic, data-prose). */

/* Иконки в строках MIGX (особенности, тарифы, акции, мероприятия, правила, быстрые переходы): значения MIGX экранируются,
   SVG туда нельзя. В строке — ключ icon() макета в data-ic, форма — маской из того же SVG (маски дописывает сид страниц),
   цвет — currentColor обёртки. Класс icon — тот же, что icon() макета ставит своим <svg>; display:block — как у
   svg{display:block} в style.css (в .intro-card__tag подпись и у макета стоит под иконкой) */
i.icon[data-ic]{display:block;flex:0 0 auto;background-color:currentColor;-webkit-mask:var(--ic) center/contain no-repeat;mask:var(--ic) center/contain no-repeat}
/* в быстрых переходах цвет макет задаёт самому svg (.quick-links__item svg), а не обёртке — то же для маски */
.quick-links__item i.icon{color:var(--color-coral-2)}
.quick-links__item:hover i.icon{color:var(--color-coral-1)}

/* Условные блоки: пустое значение — блока нет (лид под H1, текст плашки героя, примечание акции, подпись гостя,
   «как пройти» под адресом) */
p.lead:empty,.hero__chip p:empty,.promo-card__note:empty,.review-card__meta:empty,.contacts-info__row p:empty{display:none}

/* ucfirst(SITE_HOURS) макета в блоке «Часы работы»: в «Настройках» часы одной строкой со строчной буквы (так их выводят
   подвал и строка под героем главной), заглавную первую букву в блоке контактов даёт CSS, а не второе поле */
.contacts-info__row p.contacts-info__value::first-letter{text-transform:uppercase}

/* Текст страницы (поле «Текст», в т. ч. перенесённый с прежнего сайта). Отдельная секция .container[data-prose] (главная,
   разделы, лента, статья) — пустой текст = секции нет; колонка текстовой страницы (privacy.php) — div[data-prose].
   Сброс макета снимает маркеры и отступы списков и обнуляет поля абзацев — возвращаем; картинки, видео и таблицы
   прежнего сайта — в размер колонки. Размеры заголовков — из макета (h3 .feature-row, .faq-item__q) */
.section:has(> .container[data-prose]:empty){display:none}
.container[data-prose] > :is(p,ul,ol,h2,h3,h4,blockquote,table,figure){max-width:760px}
.container[data-prose] > * + *{margin-top:1em}
[data-prose] h2{font-size:clamp(24px,2.6vw,32px)}
[data-prose] h3,[data-prose] h4{font-size:17px}
[data-prose] :is(h2,h3,h4){color:var(--color-text)}
.container[data-prose] > :is(h2,h3,h4){margin-top:1.4em}
.container[data-prose] > :first-child{margin-top:0}
[data-prose] ul{list-style:disc;padding-left:1.4em}
[data-prose] ol{list-style:decimal;padding-left:1.4em}
[data-prose] li + li{margin-top:.35em}
[data-prose] a{color:var(--color-text);font-weight:600;text-decoration:underline;text-underline-offset:3px}
[data-prose] a:hover{color:var(--color-coral-2)}
[data-prose] blockquote{margin:0;padding:4px 0 4px 20px;border-left:3px solid var(--color-coral-2);color:var(--color-muted)}
[data-prose] img{height:auto;border-radius:var(--radius-card)}
[data-prose] iframe{display:block;width:100%;height:auto;aspect-ratio:16/9;border:0}
[data-prose] table{width:100%;border-collapse:collapse;font-size:14.5px}
[data-prose] td,[data-prose] th{padding:10px 14px;border:1px solid var(--color-border);vertical-align:top;text-align:left}
[data-prose] th{background:var(--color-bg-warm);font-weight:600;color:var(--color-text)}
@media (max-width: 639px){[data-prose] table{display:block;overflow-x:auto}}

/* Лента (tpl_blog): пустой раздел — абзац .lead сразу за сеткой вместо карточек; навигация пагинации движка
   (дописывается внутрь сетки) — на всю ширину сетки */
.events-grid + .lead{display:none}
.events-grid:empty + .lead{display:block}
.events-grid > .pdo-pagenav{grid-column:1 / -1}

/* Пагинация движка (кнопки с инлайн-стилями) — пилюли .calculator__pill макета */
.pdo-pagenav{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:10px!important;margin:8px 0 0!important}
.pdo-pagenav .pdo-pagebtn{display:inline-flex!important;align-items:center;justify-content:center;min-width:44px;padding:10px 18px!important;border:1px solid var(--color-border-strong)!important;border-radius:var(--radius-pill)!important;background:var(--color-bg)!important;color:var(--color-text)!important;font-family:var(--font-body);font-size:14px;font-weight:600;cursor:pointer}
.pdo-pagenav .pdo-pagebtn:hover{background:var(--color-bg-warm-2)!important}
.pdo-pagenav .pdo-pagebtn.active{background:var(--color-black)!important;color:var(--color-white)!important}
.pdo-pagenav .pdo-pagebtn[disabled]{opacity:.4;cursor:default}

/* Ответ формы движка ([[+msg]] на месте .modal__success макета: бронь в окне и на «Контактах») — в тоне .modal__success;
   ошибка — фирменным коралловым */
.bf-msg{display:flex;align-items:center;gap:8px;color:var(--color-tea);font-weight:600;font-size:14px}
.bf-msg.bf-err{color:var(--color-coral-2)}

/* Маски иконок i.icon[data-ic="<ключ>"] по icon() макета — дописывает bin/pbn/anticafe-ps_2_pages.php при каждом
   прогоне. Файл перезаписывается целиком: статичную часть правьте в bin/pbn/data/anticafe-ps/pbn-enhance.css */
i.icon[data-ic="cake"]{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M4%2012.5h16v6a1.5%201.5%200%200%201-1.5%201.5h-13A1.5%201.5%200%200%201%204%2018.5v-6Z%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M4%2015.5c1.2.8%202.3.8%203.5%200s2.3-.8%203.5%200%202.3.8%203.5%200%202.3-.8%203.5%200%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M9%2012.5V9M9%209c-1%200-1-1.4%200-2.2M9%209c1%200%201-1.4%200-2.2%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M15%2012.5V9c1%200%201-1.4%200-2.2%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
i.icon[data-ic="calendar"]{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Crect%20x%3D%224%22%20y%3D%225.5%22%20rx%3D%222%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M4%2010h16M8%203.5v3M16%203.5v3%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
i.icon[data-ic="clock"]{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%228.4%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M12%207.6V12l3%202%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
i.icon[data-ic="coffee"]{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M4%209h13v5a5%205%200%200%201-5%205H9a5%205%200%200%201-5-5V9Z%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M17%2010.5h1.5a2.3%202.3%200%200%201%200%204.6H17%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M7.5%205c0%20.9-1%201-1%202s1%201.1%201%202M11.5%205c0%20.9-1%201-1%202s1%201.1%201%202%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
i.icon[data-ic="dice"]{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Crect%20x%3D%224%22%20y%3D%224%22%20rx%3D%224%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%2F%3E%3Ccircle%20cx%3D%229%22%20cy%3D%229%22%20r%3D%221.1%22%20fill%3D%22%23000%22%2F%3E%3Ccircle%20cx%3D%2215%22%20cy%3D%229%22%20r%3D%221.1%22%20fill%3D%22%23000%22%2F%3E%3Ccircle%20cx%3D%229%22%20cy%3D%2215%22%20r%3D%221.1%22%20fill%3D%22%23000%22%2F%3E%3Ccircle%20cx%3D%2215%22%20cy%3D%2215%22%20r%3D%221.1%22%20fill%3D%22%23000%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%221.1%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E")}
i.icon[data-ic="gamepad"]{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M6.5%209h11a3.5%203.5%200%200%201%203.4%204.3l-.6%202.6a2.4%202.4%200%200%201-4.2%201L15%2015.5H9l-1.1%201.4a2.4%202.4%200%200%201-4.2-1l-.6-2.6A3.5%203.5%200%200%201%206.5%209Z%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M8%2011v3M6.5%2012.5h3%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%2F%3E%3Ccircle%20cx%3D%2216%22%20cy%3D%2211.3%22%20r%3D%22.9%22%20fill%3D%22%23000%22%2F%3E%3Ccircle%20cx%3D%2218%22%20cy%3D%2213.3%22%20r%3D%22.9%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E")}
i.icon[data-ic="map-pin"]{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M12%2021s7-6.3%207-11.5A7%207%200%200%200%205%209.5C5%2014.7%2012%2021%2012%2021Z%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%20stroke-linejoin%3D%22round%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%229.5%22%20r%3D%222.4%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%2F%3E%3C%2Fsvg%3E")}
i.icon[data-ic="message"]{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M4%206.5A2.5%202.5%200%200%201%206.5%204h11A2.5%202.5%200%200%201%2020%206.5v7A2.5%202.5%200%200%201%2017.5%2016H10l-4.5%204v-4H6.5A2.5%202.5%200%200%201%204%2013.5v-7Z%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
i.icon[data-ic="no-smoke"]{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M3%2014h11M16%2014h5%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M14%2010.5c1-1%201-2%20.3-3.3M17%2010.5c1.3-1.2%201.3-2.6.4-4.3%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.3%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22m4%204%2016%2016%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
i.icon[data-ic="shield"]{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M12%203.5%2019%206v5.4c0%204.4-2.9%207.6-7%209-4.1-1.4-7-4.6-7-9V6l7-2.5Z%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22m9%2012%202%202%204-4.2%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
i.icon[data-ic="sofa"]{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M5%2012V8a2%202%200%200%201%202-2h10a2%202%200%200%201%202%202v4%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M4%2012h16a1%201%200%200%201%201%201v3a1.5%201.5%200%200%201-1.5%201.5h-15A1.5%201.5%200%200%201%203%2016v-3a1%201%200%200%201%201-1Z%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M5%2017.5V19M19%2017.5V19%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
i.icon[data-ic="sushi"]{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%2215%22%20rx%3D%228%22%20ry%3D%223%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M6%2015c0-3%202.7-5.5%206-5.5s6%202.5%206%205.5%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%229%22%20r%3D%221.4%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E")}
i.icon[data-ic="tea"]{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M4%209h12v4.5A4.5%204.5%200%200%201%2011.5%2018H8A4.5%204.5%200%200%201%203.5%2013.5V9Z%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M16%2010h1.2a2%202%200%201%201%200%204H16%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M8%204.2c0%20.8-1.2%201-1.2%202s1.2%201%201.2%202%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.3%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M4%2020.5h13%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
i.icon[data-ic="ticket"]{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M4%208.5A1.5%201.5%200%200%201%205.5%207h13A1.5%201.5%200%200%201%2020%208.5v1.7a1.7%201.7%200%200%200%200%203.4v1.9A1.5%201.5%200%200%201%2018.5%2017h-13A1.5%201.5%200%200%201%204%2015.5v-1.9a1.7%201.7%200%200%200%200-3.4V8.5Z%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M14%207v10%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.4%22%20stroke-dasharray%3D%222%202%22%2F%3E%3C%2Fsvg%3E")}
i.icon[data-ic="users"]{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Ccircle%20cx%3D%229%22%20cy%3D%228.3%22%20r%3D%223%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M3.5%2019c.6-3%202.7-4.7%205.5-4.7s4.9%201.7%205.5%204.7%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M15.2%206a3%203%200%200%201%200%205.9M17.8%2019c-.4-2.2-1.4-3.7-3.1-4.4%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
i.icon[data-ic="volume"]{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M4%209.5h3.2L11%206.3v11.4L7.2%2014.5H4v-5Z%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M15%208.8a4.6%204.6%200%200%201%200%206.4M17.3%206.6a8%208%200%200%201%200%2010.8%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")}

/* Логотип 12комнат слева от плашки «Оплата по минутам» */
.hero__chip-row{display:flex;align-items:stretch;gap:14px}
.hero__chip-row > .hero__chip{flex:1 1 auto;min-width:0}
.hero__partner-logo{flex:0 0 92px;display:flex;align-items:center;justify-content:center;padding:10px;background:#fff;border:1px solid var(--color-border);border-radius:18px;box-shadow:0 8px 20px rgba(20,20,20,.06);transition:transform .18s ease,box-shadow .18s ease}
.hero__partner-logo:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(20,20,20,.12)}
.hero__partner-logo img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:600px){.hero__chip-row{gap:10px}.hero__partner-logo{flex-basis:68px;padding:8px;border-radius:14px}}

/* Бургер справа на мобильной версии */
.site-header__actions{margin-left:auto}

/* На мобильной версии иконка билета в промо-полосе не нужна */
@media(max-width:767px){.promo-strip__ticket{display:none!important}}

/* Шапка: пункт «Доставка» должен помещаться целиком на 1280–1400px */
@media(min-width:1024px) and (max-width:1400px){
  .main-nav__link{padding:8px 6px;font-size:12.5px}
  .site-header__actions{gap:8px}
  .site-header__phone{font-size:12.5px}
  .site-header__cta{padding-inline:16px}
}

/* Внутренние отступы мобильного меню */
.mobile-nav{padding-left:20px;padding-right:20px}
@media(max-width:480px){.mobile-nav{padding-left:16px;padding-right:16px}}
