[hidden] {
	display: none !important;
}

.site-regions {
	display: flex;
	gap: 10px;
	font-size: 12px;
	white-space: nowrap;
}
.site-regions [aria-current] {
	color: var(--accent-text);
	text-decoration: underline;
	text-underline-offset: 5px;
}
.site-version {
	color: var(--muted);
	font-size: 11px;
	white-space: nowrap;
}
@media (width < 768px) {
	.nav-actions > .site-version {
		display: none;
	}
	.nav-actions {
		gap: 8px;
	}
	.site-regions {
		gap: 6px;
		font-size: 11px;
	}
}

.brand-mark,
.footer-brand-mark {
	display: block;
	flex: none;
	width: 40px;
	height: 40px;
	transform: none;
	overflow: visible;
}

.footer-brand {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.footer-brand-mark {
	width: 32px;
	height: 32px;
}

.brand-image {
	display: block;
	max-width: 100%;
	object-fit: contain;
}

.brand-mark .brand-image,
.footer-brand-mark .brand-image {
	width: 100%;
	height: 100%;
}

.brand-image-dark,
[data-theme='dark'] .brand-image-light {
	display: none !important;
}

[data-theme='dark'] .brand-image-dark {
	display: block !important;
}

@media (width <= 767px) {
	.brand-mark {
		width: 36px;
		height: 36px;
	}
}

.cd-language-switch {
	display: inline-flex;
}

.cd-language-switch button {
	border-radius: 0;
	background: var(--page);
	border-color: var(--border);
	color: var(--text);
}

.cd-language-switch button + button {
	margin-left: -1px;
}

.cd-language-switch button:first-child {
	border-radius: var(--asam-radius-action) 0 0 var(--asam-radius-action);
}

.cd-language-switch button:last-child {
	border-radius: 0 var(--asam-radius-action) var(--asam-radius-action) 0;
}

.cd-language-switch button[aria-checked='true'] {
	position: relative;
	border-color: var(--accent);
	background: var(--accent);
	color: #fff;
}

.cd-source-control {
	position: relative;
	display: inline-flex;
}

.cd-demo-toolbar .cd-source-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--muted);
}

.cd-source-toggle:hover {
	color: var(--accent-text);
}

.cd-source-tooltip {
	position: absolute;
	bottom: calc(100% + 8px);
	right: 0;
	z-index: 10;
	padding: 5px 10px;
	border-radius: var(--asam-radius-action);
	background: var(--ink);
	color: var(--page);
	font-size: 12px;
	white-space: nowrap;
	visibility: hidden;
	pointer-events: none;
}

.cd-source-control:hover .cd-source-tooltip,
.cd-source-control:focus-within .cd-source-tooltip {
	visibility: visible;
}

.website-wide-toggle .wide-contract,
.website-wide-toggle[aria-pressed='true'] .wide-expand {
	display: none;
}

.website-wide-toggle[aria-pressed='true'] .wide-contract {
	display: block;
}

.site-doc-layout {
	grid-template-columns: 220px minmax(0, 1fr) 180px;
	gap: 32px;
	align-items: start;
}

.site-doc-layout > .docs-sidebar {
	max-height: calc(100dvh - 112px);
	overflow-y: auto;
}

.site-doc-layout > .cd-main {
	padding: 43px 0 72px;
}

.site-doc-layout > .ai-content {
	max-width: none;
}

.site-doc-layout > .docs-content {
	min-width: 0;
	overflow-wrap: anywhere;
}

.site-doc-layout > .cd-catalog {
	max-width: none;
	margin: 0;
}

.site-doc-layout > .page-toc {
	max-height: calc(100dvh - 112px);
	overflow-y: auto;
	min-width: 0;
}

.site-doc-layout > .page-toc a {
	overflow-wrap: anywhere;
}

.site-doc-layout h2:not(.cd-demo-preview *),
.site-doc-layout h3:not(.cd-demo-preview *) {
	scroll-margin-top: 110px;
}

.docs-menu-search {
	display: block;
	margin: 0 12px 16px;
}

.docs-menu-search input {
	width: 100%;
	padding: 8px 10px;
	border: 1px solid var(--border);
	border-radius: var(--asam-radius-action);
	background: var(--page);
	color: var(--text);
}

.docs-menu-group summary {
	padding: 8px 12px;
	color: var(--muted);
	cursor: pointer;
}

.docs-menu-group summary small {
	float: right;
}

.docs-menu-group a {
	margin-left: 12px;
}

.docs-menu-family {
	margin-left: 12px;
}

.docs-menu-family > summary {
	font-weight: 500;
}

.docs-menu-group a small {
	margin-left: auto;
	font: 10px var(--mono);
	color: var(--muted);
	min-width: 0;
	overflow-wrap: anywhere;
}

html[data-wide='true'] .docs-menu-group a > span {
	white-space: nowrap;
	flex-shrink: 0;
}

.page-toc .toc-sub {
	padding-left: 12px;
}

.mobile-section-nav {
	padding-block: 12px;
}

.mobile-section-nav > summary {
	color: var(--muted);
	cursor: pointer;
}

.mobile-nav .mobile-sidebar-content {
	display: block;
	position: static;
	padding: 16px 0;
}

.mobile-page-toc > span {
	display: none;
}

.mobile-page-toc nav {
	display: flex;
	flex-direction: column;
}

.mobile-nav {
	max-height: calc(100dvh - 76px);
	overflow: auto;
}

.site-doc-layout .shiki {
	color: var(--shiki-light);
	background-color: var(--shiki-light-bg);
}

.site-doc-layout .shiki span {
	color: var(--shiki-light);
}

html[data-theme='dark'] .site-doc-layout .shiki {
	color: var(--shiki-dark);
	background-color: var(--shiki-dark-bg);
}

html[data-theme='dark'] .site-doc-layout .shiki span {
	color: var(--shiki-dark);
}

.site-doc-layout [class*='language-'] {
	position: relative;
}

.site-doc-layout [class*='language-'] > .lang {
	display: none;
}

.site-doc-layout .ai-content code {
	font-family: var(--mono);
}

@media (width >= 1024px) {
	html[data-wide='true'] .site-footer.wrap {
		width: 100%;
		max-width: none;
		margin-inline: 0;
		padding-inline: 32px;
	}

	html[data-wide='true'] .nav-shell {
		max-width: none;
		padding-inline: 32px;
	}

	html[data-wide='true'] .site-doc-layout {
		width: 100%;
		max-width: none;
		margin-inline: 0;
		padding-inline: 24px;
		grid-template-columns: 320px minmax(0, 1fr) 260px;
	}

	html[data-wide='true'] .site-doc-layout > .page-toc {
		display: block;
	}
}

html[data-theme-animating]::view-transition-old(root),
html[data-theme-animating]::view-transition-new(root) {
	animation-duration: 650ms;
	animation-timing-function: ease-in-out;
}

/* Only used while switching themes in browsers without View Transitions. */
html[data-theme-changing],
html[data-theme-changing] *,
html[data-theme-changing] *::before,
html[data-theme-changing] *::after {
	transition:
		background-color 650ms ease-in-out,
		color 650ms ease-in-out,
		border-color 650ms ease-in-out !important;
}

@media (prefers-reduced-motion: reduce) {
	html[data-theme-animating]::view-transition-old(root),
	html[data-theme-animating]::view-transition-new(root) {
		animation-duration: 0s;
	}

	html[data-theme-changing],
	html[data-theme-changing] *,
	html[data-theme-changing] *::before,
	html[data-theme-changing] *::after {
		transition: none !important;
	}
}

@media (width < 1150px) and (width >= 768px) {
	html[data-wide] .site-doc-layout {
		grid-template-columns: 260px minmax(0, 1fr);
	}

	html[data-wide] .site-doc-layout > .page-toc {
		display: none;
	}
}

@media (width < 1024px) {
	.website-wide-toggle {
		display: none;
	}
}

@media (width < 768px) {
	.site-doc-layout {
		display: block;
	}

	.site-doc-layout > .docs-sidebar,
	.site-doc-layout > .page-toc {
		display: none;
	}

	.site-doc-layout > .cd-main {
		padding: 26px 0 50px;
	}

	.mobile-nav .mobile-sidebar-content a {
		font-size: 12px;
	}
}
