@media (max-width: 860px) {
	.bppm-modal {
		padding: 10px;
	}

	.bppm-modal__dialog,
	.bppm-card--left .bppm-modal__dialog,
	.bppm-card--bottom .bppm-modal__dialog {
		grid-template-columns: 1fr;
		grid-template-rows: minmax(52vh, 1fr) auto;
		width: calc(100vw - 20px);
		max-height: calc(100dvh - 20px);
		border-radius: 10px;
	}

	.bppm-card--left .bppm-modal__viewer-column,
	.bppm-card--left .bppm-product-card {
		order: initial;
	}

	.bppm-card--left .bppm-product-card,
	.bppm-product-card,
	.bppm-card--bottom .bppm-product-card {
		display: block;
		max-height: 38dvh;
		padding: 20px;
		border: 0;
		border-top: 1px solid var(--bppm-border);
	}

	.bppm-product-card__media {
		display: none;
	}

	.bppm-product-card__title {
		font-size: 19px;
	}

	.bppm-slider {
		padding: 12px 46px 42px;
	}

	.bppm-slider__viewport {
		min-height: 280px;
	}

	.bppm-slider__image {
		max-height: 50dvh;
	}

	.bppm-modal__title {
		padding-left: 14px;
		font-size: 16px;
	}
}

@media (max-width: 520px) {
	.bppm-modal--mobile-full {
		padding: 0;
	}

	.bppm-modal--mobile-full .bppm-modal__dialog {
		width: 100vw;
		height: 100dvh;
		max-height: 100dvh;
		border-radius: 0;
		grid-template-rows: minmax(58dvh, 1fr) auto;
	}

	.bppm-modal--mobile-full .bppm-product-card {
		max-height: 34dvh;
		padding-bottom: max(20px, env(safe-area-inset-bottom));
	}

	.bppm-modal__close {
		top: max(7px, env(safe-area-inset-top));
		right: 7px;
	}

	.bppm-slider__arrow {
		width: 40px;
		height: 50px;
	}

	.bppm-slider__arrow--prev { left: 3px; }
	.bppm-slider__arrow--next { right: 3px; }
}

@media (orientation: landscape) and (max-height: 520px) and (max-width: 900px) {
	.bppm-modal__dialog,
	.bppm-modal--mobile-full .bppm-modal__dialog {
		grid-template-columns: minmax(0, 1fr) minmax(230px, 32vw);
		grid-template-rows: 1fr;
	}

	.bppm-product-card,
	.bppm-modal--mobile-full .bppm-product-card {
		max-height: 100dvh;
		border-top: 0;
		border-left: 1px solid var(--bppm-border);
	}

	.bppm-slider__image {
		max-height: calc(100dvh - 100px);
	}
}

@media (max-width: 860px) {
	.bppm-pdf-viewport {
		min-height: 280px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.bppm-pdf-canvas,
	.bppm-pdf-spinner {
		transition: none !important;
		animation: none !important;
	}
}
