/**
 * iPhone / iOS Safari — safe-area, theme chrome, tap targets.
 * Подключается последним вместе с z-layers.css.
 */

@media (max-width: 991px) {
	html {
		background-color: #fff;
		max-width: 100%;
	}

	body {
		background-color: #fff;
		padding-top: calc(52px + env(safe-area-inset-top, 0px));
	}

	/*
	 * Desktop sticky и компенсация скроллбара от модалок не должны
	 * попадать на mobile chrome после редиректов / закрытия overlay.
	 */
	body.sticky {
		margin-top: 0 !important;
	}

	body.sticky .hdr-v3,
	body.sticky .hdr-v3__site-head {
		position: static !important;
		top: auto !important;
		left: auto !important;
		right: auto !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	body.sticky header.mobile-header {
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		max-width: 100vw !important;
		z-index: var(--z-mobile-header, 1100) !important;
		background: #fff !important;
	}

	body.sticky header.mobile-header p {
		display: block !important;
	}

	html.compensate-for-scrollbar,
	body.compensate-for-scrollbar,
	body.modal-open,
	body.fancybox-active {
		margin-right: 0 !important;
		padding-right: 0 !important;
	}

	/* Верх: белая зона под статус-бар (notch / Dynamic Island) */
	.mobile-header {
		padding-top: env(safe-area-inset-top, 0px);
		height: calc(52px + env(safe-area-inset-top, 0px));
		background: #fff;
		box-sizing: border-box;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		max-width: 100vw !important;
	}

	/* Низ: белый фон до физического края экрана (Safari toolbar tint) */
	.mobile-bottom-bar {
		position: fixed !important;
		bottom: 0 !important;
		background: #fff;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		max-width: 100vw !important;
		transform: none !important;
		translate: none !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

	.mobile-bottom-bar.is-hidden,
	.mobile-bottom-bar[data-scroll-hidden] {
		transform: none !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

	.mobile-bottom-bar__item,
	.mobile-bottom-bar__cart,
	.mobile-bottom-bar__menu-btn {
		position: relative;
		z-index: 1;
		touch-action: manipulation;
		-webkit-tap-highlight-color: transparent;
	}

	/* Bottom bar поверх drawer при открытом меню */
	body.is-drawer-open .mobile-bottom-bar {
		z-index: var(--z-mobile-bottom-bar, 1200) !important;
	}

	/*
	 * Каталог: закрытый фильтр — fullscreen fixed слой перехватывал тапы
	 * поверх bottom bar (z-index 1250 > 1200). Только на страницах с .filter.
	 */
	.filter:not(.filter_show) {
		pointer-events: none !important;
		z-index: -1 !important;
	}

	.filter.filter_show {
		pointer-events: auto !important;
		z-index: var(--z-page-overlay, 1250) !important;
	}

	/* Grain-текстура каталога — не нужна на мобиле, может мешать Safari */
	body::after {
		display: none !important;
	}
}

@media (max-width: 991px) {
	.hdr-v3__catalog-overlay:not(.is-open) {
		pointer-events: none !important;
	}
}
