/**
 * Global document shell and semantic layer contract.
 */

:root {
	--am-shell-desktop-utility-height: 2.25rem;
	--am-shell-desktop-brand-height: 7.25rem;
	--am-shell-desktop-navigation-height: 4rem;
	--am-shell-desktop-header-height: calc(var(--am-shell-desktop-utility-height) + var(--am-shell-desktop-brand-height) + var(--am-shell-desktop-navigation-height));
	--am-shell-mobile-top-height: 5.25rem;
	--am-shell-mobile-navigation-height: 3.375rem;
	--am-shell-floating-gap: var(--am-space-2);
	--am-shell-mobile-bottom-height: calc(var(--am-shell-mobile-navigation-height) + var(--am-shell-floating-gap));
	--am-layer-content: 0;
	--am-layer-header: 30;
	--am-layer-mobile-navigation: 40;
	--am-layer-future-floating: 50;
	--am-layer-overlay: 70;
	--am-layer-future-sheet: 80;
}

body.am-shell {
	display: flex;
	min-height: 100vh;
	min-height: 100svh;
	flex-direction: column;
}

.am-shell-main {
	position: relative;
	z-index: var(--am-layer-content);
	flex: 1 0 auto;
	padding-top: var(--am-shell-mobile-top-height);
}

body.am-shell-menu-open {
	overflow: hidden;
}

[inert] {
	pointer-events: none;
}

@media (max-width: 71.99rem) {
	.am-shell-main,
	.am-site-footer {
		padding-bottom: calc(var(--am-shell-mobile-bottom-height) + env(safe-area-inset-bottom) + var(--am-space-3));
	}
}

@media (min-width: 72rem) {
	.am-shell-main {
		padding-top: var(--am-shell-desktop-header-height);
	}
}

@media print {
	.am-site-header,
	.am-mobile-navigation,
	.am-skip-link {
		display: none !important;
	}

	.am-shell-main,
	.am-site-footer {
		padding: 0;
	}
}

/* DEV-5.2.1: compact brand band, sized around the identity rather than empty space. */
@media (min-width: 72rem) {
	:root {
		--am-shell-desktop-brand-height: var(--am-manager-brand-height, 100px);
	}
}

@media (min-width: 72rem) {
	body.am-shell--utility-disabled {
		--am-shell-desktop-utility-height: 0rem;
	}
}
