/**
 * Mobile / WebView: единые токены viewport, нижнего «хрома», z-index.
 * Загружается после foundation.css (использует --ds-vh-stable).
 */

:root {
  /* APK инжектит через WebViewSiteHooks; в браузере остаётся 0 */
  --siteapp-bottom-inset: 0px;
  /* Вертикальные поля вокруг диалога (Bootstrap margin ≈ 1rem + запас) */
  --ds-modal-vertical-margin: 2rem;
  /* Запас под компактную шапку / статус в мобильном браузере */
  --ds-modal-top-reserve: env(safe-area-inset-top, 0px);
}

/* В браузере нижний «хром» — safe-area; в APK зона уже в --siteapp-bottom-inset */
html:not(.siteapp-webview) {
  --ds-layout-bottom-clearance: env(safe-area-inset-bottom, 0px);
}

html.siteapp-webview {
  --ds-layout-bottom-clearance: var(--siteapp-bottom-inset);
}

/**
 * Полезная высота для модалок: динамический viewport минус отступы.
 * JS может ужимать точнее через inline max-height на .modal-dialog.
 */
:root {
  --ds-modal-max-height-fallback: calc(
    var(--ds-vh-stable, 100vh) - var(--ds-modal-vertical-margin) - var(--ds-layout-bottom-clearance, 0px) -
      var(--ds-modal-top-reserve, 0px)
  );
}

/* Единая шкала z-index поверх Bootstrap (1050/1055) для кастомных слоёв */
:root {
  --ds-z-sticky-page: 1010;
  --ds-z-dropdown: 1020;
  --ds-z-fixed-chrome: 1030;
  --ds-z-modal-backdrop: 1050;
  --ds-z-modal: 1055;
  --ds-z-modal-nested: 1060;
  --ds-z-toast: 1080;
}
