/* Article-only layout. Both navigation systems remain native without scripts. */
.single-documentation .site-header + .global-page-wrapper { padding-top: 2.5rem; }
.docs-single { --docs-offset: 8rem; padding-bottom: 5rem; color: #202c28; overflow-wrap: anywhere; }
.admin-bar .docs-single { --docs-offset: 10rem; }
.docs-single-layout {
	display: grid;
	grid-template-columns: 250px minmax(0, 760px) 220px;
	grid-template-rows: min-content min-content 1fr;
	grid-template-areas: "hierarchy context toc" "hierarchy heading toc" "hierarchy article toc";
	column-gap: 2rem;
	row-gap: 1.75rem;
	max-width: 1384px;
	justify-content: center;
}
.docs-single .docs-single-layout { padding-inline: 24px; }
.docs-single-hierarchy { grid-area: hierarchy; }
.docs-single-context { grid-area: context; min-width: 0; margin-bottom: -0.5rem; }
.docs-single-header { grid-area: heading; min-width: 0; }
.docs-single-toc { grid-area: toc; }
.docs-single-article { grid-area: article; min-width: 0; }
.docs-single-rail {
	position: sticky;
	top: var(--docs-offset);
	max-height: calc(100vh - var(--docs-offset) - 1rem);
	overflow-y: auto;
	scrollbar-gutter: stable;
	padding: 0.35rem 0.65rem 0.75rem 0.35rem;
	font-size: 0.875rem;
}
.docs-single-rail ul, .docs-single-related ul { list-style: none; padding: 0; margin: 0; }
.docs-single a { color: #014734; text-underline-offset: 0.2em; }
.docs-single a:focus-visible, .docs-single summary:focus-visible, .docs-single nav:focus-visible {
	outline: 2px solid #23624b;
	outline-offset: 3px;
	border-radius: 2px;
}
.docs-single-nav-title { font-size: 0.8125rem; font-weight: 700; margin: 0 0 1rem; color: #53625a; }
.docs-single-nav-link { display: block; padding: 0.5rem 0.65rem; text-decoration: none; line-height: 1.5; border-left: 2px solid transparent; }
.docs-single-nav-link:hover { text-decoration: underline; background: #f4f7f3; }
.docs-single-nav-link[aria-current] { background: #f0f5dd; border-left-color: #014734; font-weight: 600; }
.docs-single-current-section { border-block: 1px solid #dce2df; margin: 1rem 0; padding: 1rem 0; }
.docs-single-section-title { font-size: 0.9375rem; margin: 0 0 0.75rem; }
.docs-single-section-title a { text-decoration: none; }
.docs-single-topic summary { padding: 0.6rem 0.25rem; cursor: pointer; color: #53625a; }
.docs-single-topic.is-current > summary { color: #014734; font-weight: 700; }
.docs-single-topic ul { margin-left: 0.5rem; }
.docs-single-topic-all { display: inline-block; font-size: 0.75rem; padding: 0.5rem 0.75rem 1rem; }
.docs-single-skip { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.docs-single-skip:focus { position: static; display: block; width: auto; height: auto; clip-path: none; margin: 0.5rem; }
.docs-single .docs-breadcrumb { font-size: 0.8125rem; color: #53625a; margin-bottom: 0; }
.docs-single h1 { font-size: clamp(2rem, 3vw, 2.75rem); line-height: 1.2; margin: 0 0 1rem; }
.docs-single-description { color: #53625a; font-size: 1.125rem; line-height: 1.65; margin: 0 0 1rem; }
.docs-single-meta { display: flex; flex-wrap: wrap; gap: 0.5rem 1.5rem; font-size: 0.8125rem; color: #53625a; }
.docs-single-toc-level-3 { padding-left: 0.9rem; font-size: 0.8125rem; }
.docs-single .docs-content { line-height: 1.75; overflow-x: auto; }
.docs-single .docs-content table { display: block; max-width: 100%; overflow-x: auto; }
.docs-single .docs-content th, .docs-single .docs-content td { min-width: 10rem; }
.docs-single .docs-content pre { max-width: 100%; }
.docs-single .docs-content img, .docs-single .docs-content video, .docs-single .docs-content iframe { max-width: 100%; }
.docs-single .docs-content img, .docs-single .docs-content video { height: auto; }
.docs-single .docs-content [id], .docs-single h1 { scroll-margin-top: var(--docs-offset); }
.docs-single-related { border-top: 1px solid #dce2df; margin-top: 3rem; padding-top: 1.5rem; }
.docs-single-related h2 { font-size: 1.25rem; margin-bottom: 1rem; }
.docs-single-related li + li { margin-top: 0.75rem; }
.docs-single-pagination { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 3rem; }
.docs-single-pagination a { display: block; padding: 1rem; border: 1px solid #dce2df; border-radius: 8px; text-decoration: none; }
.docs-single-pagination a:hover { background: #f4f7f3; }
.docs-single-pagination span { display: block; margin-bottom: 0.35rem; color: #53625a; font-size: 0.8125rem; }
.docs-single-pagination strong { font-weight: 600; }
.docs-single-pagination a:hover strong { text-decoration: underline; }
.docs-single-next { grid-column: 2; text-align: right; }
@media (max-width: 575.98px) {
	.docs-single-pagination { grid-template-columns: minmax(0, 1fr); }
	.docs-single-next { grid-column: 1; text-align: left; }
}
/* One server-rendered hierarchy and TOC; CSS establishes the initial layout before JS. */
.docs-single-search { display: none; }
@media (min-width: 1200px) {
	.docs-single-panel, .docs-single-panel::details-content { display: contents; }
	.docs-single-panel::details-content { content-visibility: visible; }
	.docs-single-panel > summary { display: none; }
	.docs-single-panel > .docs-single-rail { display: block; }
}
/* Older engines retain usable native toggles if scripts are also unavailable. */
@supports not selector(::details-content) {
	@media (min-width: 1200px) {
		.docs-single-panel:not([open]) > summary { display: list-item; cursor: pointer; }
	}
}
@media (max-width: 1199.98px) {
	.docs-single-layout {
		grid-template-columns: minmax(0, 760px);
		grid-template-rows: auto auto auto auto 1fr;
		grid-template-areas: "context" "hierarchy" "toc" "heading" "article";
		gap: 0.75rem;
		max-width: 808px;
	}
	.docs-single-context { margin-bottom: 0; }
	.docs-single .docs-breadcrumb { margin-bottom: 1.25rem; }
	.docs-single-search .docs-search { margin-bottom: 0.5rem !important; }
	.docs-single-header { margin-top: 1rem; }
	.docs-single-search { display: block; }
	.docs-single-article { margin-top: 0.5rem; }
	.docs-single-hierarchy, .docs-single-toc { min-width: 0; }
	.docs-single-panel { border: 1px solid #dce2df; border-radius: 8px; }
	.docs-single-panel > summary { padding: 0.85rem 1rem; cursor: pointer; color: #014734; font-weight: 600; }
	.docs-single-panel > summary:focus-visible { outline-offset: -3px; }
	.docs-single-panel[open] > summary { border-bottom: 1px solid #dce2df; }
	.docs-single-panel .docs-single-rail {
		position: static;
		max-height: min(60vh, 32rem);
		max-height: min(60dvh, 32rem);
		overflow-y: auto;
		overscroll-behavior-y: contain;
		padding: 0.75rem;
	}
	.docs-single-panel .docs-single-nav-title { display: none; }
	.docs-single-panel .docs-single-nav-link { min-height: 44px; }
}
@media (min-width: 1200px) and (max-height: 500px) {
	.docs-single-rail { position: static; max-height: none; overflow: visible; }
}
