/* ==========================================================================
   tg-theme.css — Telegram Mini App overrides for Bot5ka

   Применяется когда body имеет класс "tma" (выставляется tg-bridge.js).

   ВАЖНО: мы НЕ подменяем цветовую палитру Telegram'а через --tg-theme-*.
   Хочется фирменный «Пятёрочка-light» лук независимо от dark/light темы
   пользовательского клиента — так делают все крупные ритейлеры в TMA
   (Wildberries, Ozon, Сбер). Это:
     - даёт стабильный визуальный бренд;
     - убирает риск нечитаемого текста при экзотических темах;
     - удобнее для маркетинга (скриншоты совпадают со store-карточкой).

   Здесь — только адаптация Telegram chrome:
     1. наш .hdr и .nav теперь ВИДНЫ внутри TMA (свой back + bottom-nav);
     2. .tma-search прячем (поиск всегда в .hdr-search);
     3. respekt'им safe-area insets (iPhone notch / home-indicator);
     4. сдвигаем toast вниз от safe-area-top;
     5. оставляем зарезервированный padding-bottom для видимого .nav.
   ========================================================================== */

body.tma {
  /* iOS safe-area insets — чтобы контент не уходил под notch / home-indicator.
     padding-bottom оставляем дефолтный (84px из base) — наш bottom-nav теперь
     виден и в TMA, поэтому контенту нужен зазор под фиксированную навбар. */
  padding-top:   env(safe-area-inset-top, 0);
  padding-left:  env(safe-area-inset-left, 0);
  padding-right: env(safe-area-inset-right, 0);
  overscroll-behavior: none;
}

/* ===== Прячем только legacy-chrome — наш собственный .hdr и .nav остаются =====
   .back-btn (text-кнопка в /products, /checkout) дублирует .hb-back в шапке —
   прячем чтоб не было двух «Назад». .adm-nav вообще не нужен в TMA.
   На admin-страницах в TMA продолжаем прятать юзерскую шапку — у админки
   своя .adm-header и две stickyheader'а в одном вьюпорте конфликтуют. */
body.tma .back-btn,
body.tma .adm-nav,
body.tma.admin-page .hdr {
  display: none;
}

/* Дублирующий поиск в content скрываем — header теперь виден в TMA, поиск там. */
.tma-search { display: none !important; }

/* В TMA admin-header теряет sticky-смысл (TG даёт BackButton) — оставляем
   плоским inline-блоком чтобы не дублировать chrome. */
body.tma .adm-header {
  position: static;
  border-bottom: 1px solid var(--border);
}

/* Toast уважает safe-area-top (внутри TMA отступ от notch) */
body.tma .toast-container {
  top: max(12px, env(safe-area-inset-top, 12px));
}

/* В TMA модалки snap'ятся к нижнему safe-area; bottom sheet не должен
   уходить под home-indicator. */
body.tma .modal {
  padding-bottom: max(env(safe-area-inset-bottom, 0px), 16px);
}

/* MainButton всегда виден внизу TMA — добавляем доп. отступ снизу для
   страниц где есть «sticky bottom» CTA (corzina, checkout). Telegram
   обычно резервирует ~64px, мы добавим воздуха. */
body.tma .cart-actions:last-of-type,
body.tma [data-tma-bottom-spacing] {
  padding-bottom: 24px;
}

/* В TMA нативная контекстная подсветка ссылок выглядит нелепо поверх
   нашего brand-красного — отключаем. */
body.tma a {
  -webkit-touch-callout: none;
}
