/* LuxaDocs — Single Doc "Paper" theme (theme-compatible / the_content mode).
 *
 * Unlike the archive page (assets/css/archive-doc.css, which still owns its
 * full page via template_include), this stylesheet is designed to live
 * inside whatever `.entry-content` container the active theme provides —
 * there is no outer shell, no fixed-width columns, no full-bleed topbar.
 * Everything here is single-column and scoped under .luxadocs-single so it
 * can't leak into the rest of the theme.
 *
 * The doc's title and breadcrumb are printed as part of the injected
 * content itself (see render_doc_body() in class-luxadocs-frontend.php),
 * not left to wherever the active theme prints its own — see frontend.js
 * for how a theme's own duplicate title gets hidden.
 */

.luxadocs-single--sidebar {
	/* The 3-column shell needs to collapse based on the actual width the
	   theme gives this content area, not the browser viewport — a theme
	   with its own permanent sidebar can have a narrow content column even
	   on a wide screen. A container query (falls back gracefully to the
	   viewport-based @media query below on the rare browser without
	   container query support) is the correct tool for that. */
	container-type: inline-size;
	container-name: luxadocs-doc;
}

.luxadocs-single {
	--luxadocs-paper-alt:   #F2F0E8;
	--luxadocs-ink:         #2B2A26;
	--luxadocs-ink-soft:    #6B6862;
	--luxadocs-ink-faint:   #A19C90;
	--luxadocs-line:        #E3DFD3;
	--luxadocs-line-strong: #D2CDBD;
	--luxadocs-moss:        #5C6E52;
	--luxadocs-moss-deep:   #40503A;
	--luxadocs-moss-tint:   #EDF0E5;
	--luxadocs-code-bg:     #F0ECE0;
	--luxadocs-code-ink:    #4A4636;

	color: var(--luxadocs-ink);
	font-size: 16px;
	line-height: 1.65;
}

.luxadocs-single *,
.luxadocs-single *::before,
.luxadocs-single *::after {
	box-sizing: border-box;
}

.luxadocs-single code {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 0.88em;
	background: var(--luxadocs-code-bg);
	color: var(--luxadocs-code-ink);
	padding: 0.12em 0.4em;
	border-radius: 3px;
	border: 1px solid var(--luxadocs-line);
}

.luxadocs-single .luxadocs-breadcrumb {
	font-size: 13px;
	color: var(--luxadocs-ink-faint);
	margin-bottom: 14px;
}

.luxadocs-single .luxadocs-breadcrumb a {
	color: var(--luxadocs-ink-soft);
	text-decoration: none;
}

.luxadocs-single .luxadocs-breadcrumb a:hover {
	color: var(--luxadocs-moss-deep);
	text-decoration: underline;
}

.luxadocs-single .luxadocs-breadcrumb__sep {
	margin: 0 8px;
	color: var(--luxadocs-line-strong);
}

.luxadocs-single .luxadocs-breadcrumb__current {
	color: var(--luxadocs-ink);
}

.luxadocs-single .luxadocs-doc__title {
	font-family: 'Fraunces', serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-size: clamp(28px, 3.6vw, 40px);
	line-height: 1.15;
	letter-spacing: -0.01em;
	margin: 0 0 4px;
}

.luxadocs-single .luxadocs-doc__meta {
	display: flex;
	align-items: center;
	gap: 10px;
	color: var(--luxadocs-ink-faint);
	font-size: 13.5px;
	margin: 4px 0 26px;
	flex-wrap: wrap;
}

.luxadocs-single .luxadocs-doc__meta .luxadocs-dot {
	opacity: 0.6;
}

.luxadocs-single .luxadocs-doc__print {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-left: auto;
	border: 1px solid var(--luxadocs-line-strong);
	background: none;
	color: var(--luxadocs-ink-soft);
	font-family: inherit;
	font-size: 13px;
	padding: 6px 12px;
	border-radius: 5px;
	cursor: pointer;
	transition: border-color .15s ease, color .15s ease;
}

.luxadocs-single .luxadocs-doc__print:hover {
	border-color: var(--luxadocs-moss);
	color: var(--luxadocs-moss-deep);
}

.luxadocs-single .luxadocs-doc__print svg {
	width: 14px;
	height: 14px;
}

.luxadocs-single .luxadocs-doc__lede {
	font-size: 17px;
	color: var(--luxadocs-ink-soft);
	margin-bottom: 28px;
}

.luxadocs-single .luxadocs-doc__lede strong {
	color: var(--luxadocs-ink);
	font-weight: 600;
}

/* ---------- TOC (single collapsible block at every screen size) ---------- */
.luxadocs-single .luxadocs-toc {
	margin: 0 0 32px;
	border: 1px solid var(--luxadocs-line);
	border-radius: 8px;
	background: var(--luxadocs-paper-alt);
}

/* "In Content" position: the TOC is a normal in-flow block, but still
   sticky — position: sticky works fine without a dedicated column, it just
   pins near the top of the viewport as the (usually much longer) doc body
   scrolls past underneath, instead of forcing a scroll back to the top to
   reach it again. */
.luxadocs-single .luxadocs-toc:not(.is-sidebar) {
	position: sticky;
	top: var(--luxadocs-toc-offset, 20px);
	z-index: 2;
	max-height: calc(100vh - var(--luxadocs-toc-offset, 20px) - 20px);
	overflow-y: auto;
}

.luxadocs-single .luxadocs-toc summary {
	list-style: none;
	cursor: pointer;
	padding: 12px 16px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-family: 'IBM Plex Mono', monospace;
	font-size: 11px;
	font-weight: 400;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--luxadocs-ink-faint);
}

.luxadocs-single .luxadocs-toc summary::-webkit-details-marker {
	display: none;
}

.luxadocs-single .luxadocs-toc summary::after {
	content: "\203A";
	transform: rotate(90deg);
	transition: transform .15s ease;
	font-size: 16px;
	color: var(--luxadocs-ink-faint);
}

.luxadocs-single .luxadocs-toc[open] summary::after {
	transform: rotate(-90deg);
}

.luxadocs-single .luxadocs-toc__list {
	list-style: none;
	margin: 0;
	padding: 0 16px 14px;
	font-size: 13.5px;
}

.luxadocs-single .luxadocs-toc__item {
	margin-bottom: 2px;
}

.luxadocs-single .luxadocs-toc__list a {
	display: block;
	padding: 5px 0;
	color: var(--luxadocs-ink-soft);
	text-decoration: none;
}

.luxadocs-single .luxadocs-toc__list a:hover,
.luxadocs-single .luxadocs-toc__list a.is-active {
	color: var(--luxadocs-moss-deep);
}

.luxadocs-single .luxadocs-toc.is-hierarchical .luxadocs-toc__item.level-3 a {
	padding-left: 14px;
	font-size: 13px;
}

/* Sidebar position: plain <nav>, always fully expanded, no card chrome —
   sticks within the right rail column instead of the whole viewport. */
.luxadocs-single .luxadocs-toc.is-sidebar {
	position: sticky;
	top: var(--luxadocs-toc-offset, 32px);
	border: none;
	background: none;
	border-radius: 0;
	max-height: calc(100vh - var(--luxadocs-toc-offset, 32px) - 20px);
	overflow-y: auto;
}

.luxadocs-single .luxadocs-toc.is-sidebar .luxadocs-toc__title {
	font-family: 'IBM Plex Mono', monospace;
	font-size: 11px;
	font-weight: 400;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--luxadocs-ink-faint);
	margin: 0 0 14px;
}

.luxadocs-single .luxadocs-toc.is-sidebar .luxadocs-toc__list {
	padding: 0;
}

.luxadocs-single .luxadocs-toc.is-sidebar .luxadocs-toc__list a {
	padding: 5px 0 5px 14px;
	border-left: 2px solid var(--luxadocs-line);
}

.luxadocs-single .luxadocs-toc.is-sidebar .luxadocs-toc__list a:hover,
.luxadocs-single .luxadocs-toc.is-sidebar .luxadocs-toc__list a.is-active {
	border-left-color: var(--luxadocs-moss);
}

/* ---------- 3-column "sidebar" shell ----------
   1.5.0–1.5.1 used a viewport-breakout technique (width: 100vw + negative
   margin, the same trick WordPress core uses for alignfull blocks) to
   reclaim width for 3 columns from inside a theme's narrower .entry-content.
   That assumes the content column is horizontally centered on the page —
   true for many themes, but not all: on a theme where it isn't, the shell
   ends up visibly misaligned from/overflowing past the theme's actual
   content area instead of sitting inside it. Dropped in favor of simply
   filling whatever width the theme provides — narrower on a narrow theme,
   but always correctly contained. */
.luxadocs-single--sidebar .luxadocs-doc-shell {
	display: grid;
	grid-template-columns: 200px minmax(0, 1fr) 240px;
	gap: 40px;
	width: 100%;
}

.luxadocs-doc-rail-left {
	min-width: 0;
	/* Search used to scroll away separately from the tree below it (only
	   .luxadocs-doc-tree was sticky) — sticking the whole rail instead
	   keeps search visible the entire time you're reading, not just once
	   you've scrolled past it. */
	position: sticky;
	top: var(--luxadocs-toc-offset, 32px);
	max-height: calc(100vh - var(--luxadocs-toc-offset, 32px) - 32px);
	display: flex;
	flex-direction: column;
}

.luxadocs-doc-rail-left .luxadocs-search {
	margin-bottom: 28px;
	flex: none;
}

.luxadocs-doc-rail-left .luxadocs-search__input {
	width: 100%;
	font-size: 13.5px;
	padding: 9px 12px 9px 34px;
	border: 1px solid var(--luxadocs-line-strong);
	border-radius: 7px;
	background-color: var(--luxadocs-paper-alt, transparent);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A19C90' stroke-width='1.8'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M21 21l-4.3-4.3'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: 11px center;
	background-size: 14px 14px;
	color: var(--luxadocs-ink);
	outline: none;
}

.luxadocs-doc-rail-left .luxadocs-search__button {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.luxadocs-doc-rail-left .luxadocs-search__results:not([hidden]) {
	margin-top: 8px;
	border: 1px solid var(--luxadocs-line);
	border-radius: 7px;
	padding: 6px;
	background: var(--luxadocs-paper-alt);
}

.luxadocs-doc-tree {
	/* Sticky lives on .luxadocs-doc-rail-left itself (search + tree stick
	   together — see that rule above); this only needs its own scroll so a
	   long tree doesn't push the sticky rail taller than the viewport
	   (which would just break the sticky positioning), without clipping
	   the search box/its results dropdown above it. */
	flex: 1;
	min-height: 0;
	overflow-y: auto;
}

.luxadocs-doc-tree__group {
	border: none;
	margin-bottom: 2px;
}

.luxadocs-doc-tree__group summary {
	list-style: none;
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 7px 8px;
	border-radius: 6px;
	font-size: 13.5px;
	font-weight: 500;
	color: var(--luxadocs-ink);
}

.luxadocs-doc-tree__group summary:hover {
	background: var(--luxadocs-paper-alt);
}

.luxadocs-doc-tree__group summary::-webkit-details-marker {
	display: none;
}

.luxadocs-doc-tree__icon {
	flex: none;
	width: 16px;
	height: 16px;
	border-radius: 3px;
	object-fit: cover;
}

.luxadocs-doc-tree__icon--text {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: 'IBM Plex Mono', monospace;
	font-size: 8px;
	font-weight: 500;
	color: var(--luxadocs-moss-deep);
	background: var(--luxadocs-moss-tint);
}

.luxadocs-doc-tree__group ul {
	list-style: none;
	margin: 2px 0 8px;
	padding: 0 0 0 24px;
}

.luxadocs-doc-tree__group li {
	margin-bottom: 1px;
}

.luxadocs-doc-tree__group a {
	display: block;
	padding: 5px 8px;
	margin-left: -8px;
	border-radius: 6px;
	font-size: 13px;
	color: var(--luxadocs-ink-soft);
	text-decoration: none;
}

.luxadocs-doc-tree__group a:hover {
	background: var(--luxadocs-paper-alt);
	color: var(--luxadocs-ink);
}

.luxadocs-doc-tree__group a.is-current {
	font-weight: 600;
	color: var(--luxadocs-moss-deep);
	background: var(--luxadocs-moss-tint);
}

.luxadocs-doc-main {
	min-width: 0;
}

/* Primary rule: reacts to the actual container width. */
@container luxadocs-doc (max-width: 820px) {
	.luxadocs-single--sidebar .luxadocs-doc-shell {
		display: block;
	}

	.luxadocs-doc-rail-left,
	.luxadocs-doc-rail-right {
		display: none;
	}
}

/* Fallback for browsers without container query support (falls back to
   viewport width instead — better than nothing, though it can't detect a
   theme-narrowed content column on an otherwise-wide screen the way the
   @container rule above can). Modern browsers apply the @container rule
   above and simply never reach 980px viewport width without also matching
   it, so this doesn't double-apply/conflict in practice. */
@media (max-width: 980px) {
	.luxadocs-single--sidebar .luxadocs-doc-shell {
		display: block;
	}

	.luxadocs-doc-rail-left,
	.luxadocs-doc-rail-right {
		display: none;
	}
}

/* ---------- postmark section markers (signature element) ---------- */
.luxadocs-single .luxadocs-doc__body .luxadocs-section-head {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 56px 0 20px;
}

.luxadocs-single .luxadocs-doc__body section:first-of-type .luxadocs-section-head {
	margin-top: 0;
}

.luxadocs-single .luxadocs-postmark {
	flex: none;
	width: 42px;
	height: 42px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Fraunces', serif;
	font-weight: 500;
	font-size: 18px;
	color: var(--luxadocs-moss-deep);
	transform: rotate(-4deg);
}

.luxadocs-single .luxadocs-postmark svg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.luxadocs-single .luxadocs-postmark span {
	position: relative;
	z-index: 1;
	margin-top: -1px;
}

.luxadocs-single .luxadocs-doc__body .luxadocs-section-head h2 {
	font-family: 'Fraunces', serif;
	font-weight: 500;
	font-size: clamp(21px, 2.4vw, 25px);
	letter-spacing: -0.005em;
	margin: 0;
}

.luxadocs-single .luxadocs-doc__body h3 {
	font-family: 'Fraunces', serif;
	font-weight: 500;
	font-size: 18px;
	margin: 38px 0 12px;
}

.luxadocs-single .luxadocs-doc__body p {
	margin: 0 0 18px;
}

.luxadocs-single .luxadocs-doc__body ol,
.luxadocs-single .luxadocs-doc__body ul {
	margin: 0 0 22px;
	padding-left: 0;
}

.luxadocs-single .luxadocs-doc__body ol {
	counter-reset: step;
	list-style: none;
}

.luxadocs-single .luxadocs-doc__body ol > li {
	position: relative;
	padding-left: 34px;
	margin-bottom: 14px;
	counter-increment: step;
}

.luxadocs-single .luxadocs-doc__body ol > li::before {
	content: counter(step);
	position: absolute;
	left: 0;
	top: 1px;
	width: 22px;
	height: 22px;
	border: 1px solid var(--luxadocs-line-strong);
	border-radius: 50%;
	font-family: 'IBM Plex Mono', monospace;
	font-size: 11.5px;
	color: var(--luxadocs-ink-soft);
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--luxadocs-paper-alt);
}

.luxadocs-single .luxadocs-doc__body ul {
	list-style: none;
}

.luxadocs-single .luxadocs-doc__body ul > li {
	position: relative;
	padding-left: 20px;
	margin-bottom: 10px;
}

.luxadocs-single .luxadocs-doc__body ul > li::before {
	content: "\2013";
	position: absolute;
	left: 0;
	top: 0;
	color: var(--luxadocs-moss);
}

/* ---------- perforated divider between sections ---------- */
.luxadocs-single .luxadocs-perf {
	border: none;
	height: 1px;
	margin: 48px 0;
	background-image: repeating-linear-gradient(to right, var(--luxadocs-line-strong) 0, var(--luxadocs-line-strong) 5px, transparent 5px, transparent 11px);
}

/* ---------- callout box (add class "luxadocs-callout" to a Group/HTML
   block in the editor to get this look for a note/warning aside) ---------- */
.luxadocs-single .luxadocs-callout {
	background: var(--luxadocs-moss-tint);
	border-left: 2px solid var(--luxadocs-moss);
	border-radius: 0 6px 6px 0;
	padding: 20px 24px;
	margin: 24px 0 30px;
}

.luxadocs-single .luxadocs-callout p:last-child,
.luxadocs-single .luxadocs-callout ol:last-child,
.luxadocs-single .luxadocs-callout ul:last-child {
	margin-bottom: 0;
}

.luxadocs-single .luxadocs-callout-label {
	font-family: 'IBM Plex Mono', monospace;
	font-size: 11px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--luxadocs-moss-deep);
	margin-bottom: 10px;
}

/* ---------- prev/next, feedback, related, footer ---------- */
.luxadocs-single .luxadocs-nav {
	border: none;
	padding-top: 8px;
	margin-top: 8px;
	display: block;
}

.luxadocs-single .luxadocs-nav__prev a,
.luxadocs-single .luxadocs-nav__next a {
	display: inline-block;
	margin-top: 8px;
	font-size: 14.5px;
	text-decoration: none;
	color: var(--luxadocs-ink-soft);
}

.luxadocs-single .luxadocs-nav__prev a:hover,
.luxadocs-single .luxadocs-nav__next a:hover {
	color: var(--luxadocs-moss-deep);
}

.luxadocs-single .luxadocs-doc__feedback {
	margin-top: 40px;
	border: 1px solid var(--luxadocs-line);
	border-radius: 8px;
	padding: 18px 22px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: var(--luxadocs-paper-alt);
	gap: 12px;
	flex-wrap: wrap;
}

.luxadocs-single .luxadocs-doc__feedback p {
	font-size: 14.5px;
	color: var(--luxadocs-ink-soft);
	margin: 0;
}

.luxadocs-single .luxadocs-doc__feedback-actions {
	display: flex;
	gap: 8px;
}

.luxadocs-single .luxadocs-reaction {
	border: 1px solid var(--luxadocs-line-strong);
	background: none;
	border-radius: 6px;
	width: 34px;
	height: 34px;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	color: var(--luxadocs-ink-soft);
}

.luxadocs-single .luxadocs-reaction:hover,
.luxadocs-single .luxadocs-reaction.is-selected {
	border-color: var(--luxadocs-moss);
	color: var(--luxadocs-moss-deep);
}

.luxadocs-single .luxadocs-reaction:disabled {
	cursor: default;
	opacity: 1;
}

.luxadocs-single .luxadocs-reaction:disabled:not(.is-selected) {
	opacity: 0.45;
}

.luxadocs-single .luxadocs-related-docs {
	margin-top: 36px;
}

.luxadocs-single .luxadocs-related-docs__title {
	font-family: 'IBM Plex Mono', monospace;
	font-size: 11px;
	font-weight: 400;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--luxadocs-ink-faint);
	margin-bottom: 10px;
}

.luxadocs-single .luxadocs-related-docs ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.luxadocs-single .luxadocs-related-docs li {
	margin-bottom: 6px;
}

.luxadocs-single .luxadocs-related-docs a {
	display: inline-block;
	font-size: 14.5px;
	text-decoration: none;
	border-bottom: 1px solid var(--luxadocs-line-strong);
	padding-bottom: 1px;
}

.luxadocs-single .luxadocs-doc__tags {
	margin-top: 24px;
}

.luxadocs-single .luxadocs-doc__tag {
	font-family: 'IBM Plex Mono', monospace;
	font-size: 12px;
	background: var(--luxadocs-paper-alt);
	color: var(--luxadocs-ink-soft) !important;
	border: 1px solid var(--luxadocs-line);
}

.luxadocs-single .luxadocs-doc__attachments {
	background: var(--luxadocs-paper-alt);
	border: 1px solid var(--luxadocs-line);
}

.luxadocs-single .luxadocs-doc__categories {
	margin-top: 36px;
}

.luxadocs-single .luxadocs-doc__categories-title {
	font-family: 'IBM Plex Mono', monospace;
	font-size: 11px;
	font-weight: 400;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--luxadocs-ink-faint);
	margin-bottom: 10px;
}

.luxadocs-single .luxadocs-site-nav {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.luxadocs-single .luxadocs-site-nav a {
	display: inline-block;
	font-size: 13px;
	color: var(--luxadocs-ink-soft);
	text-decoration: none;
	border: 1px solid var(--luxadocs-line);
	background: var(--luxadocs-paper-alt);
	padding: 5px 12px;
	border-radius: 20px;
	transition: border-color .15s ease, color .15s ease;
}

.luxadocs-single .luxadocs-site-nav a:hover,
.luxadocs-single .luxadocs-site-nav a.is-active {
	border-color: var(--luxadocs-moss);
	color: var(--luxadocs-moss-deep);
}

.luxadocs-single .luxadocs-powered-by {
	margin-top: 48px;
	padding-top: 20px;
	border-top: 1px solid var(--luxadocs-line);
	font-size: 12.5px;
	color: var(--luxadocs-ink-faint);
}

/* ================= RESPONSIVE ================= */
@media (max-width: 520px) {
	.luxadocs-single .luxadocs-doc__meta {
		flex-wrap: wrap;
	}

	.luxadocs-single .luxadocs-doc__print {
		margin-left: 0;
		order: 3;
		width: 100%;
		justify-content: center;
		margin-top: 8px;
	}

	.luxadocs-single .luxadocs-doc__feedback {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* ================= PRINT ================= */
@media print {
	.luxadocs-single .luxadocs-doc__print,
	.luxadocs-single .luxadocs-toc,
	.luxadocs-single .luxadocs-doc__feedback,
	.luxadocs-single .luxadocs-powered-by,
	.luxadocs-single .luxadocs-callout-label,
	.luxadocs-doc-rail-left,
	.luxadocs-doc-rail-right {
		display: none !important;
	}

	.luxadocs-single--sidebar .luxadocs-doc-shell {
		display: block !important;
		width: auto !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.luxadocs-single {
		color: #1a1a18;
		font-size: 12pt;
	}

	.luxadocs-single .luxadocs-doc__title {
		font-size: 26pt !important;
	}

	.luxadocs-single .luxadocs-doc__meta {
		color: #555;
	}

	.luxadocs-single .luxadocs-doc__lede {
		color: #333;
	}

	.luxadocs-single .luxadocs-doc__body .luxadocs-section-head h2 {
		font-size: 16pt;
	}

	.luxadocs-single .luxadocs-doc__body .luxadocs-section-head {
		margin: 26pt 0 12pt;
		break-after: avoid;
	}

	.luxadocs-single .luxadocs-postmark {
		width: 30px;
		height: 30px;
		font-size: 13px;
	}

	.luxadocs-single .luxadocs-doc__body ol > li,
	.luxadocs-single .luxadocs-doc__body ul > li {
		break-inside: avoid;
	}

	.luxadocs-single .luxadocs-callout {
		background: #fff;
		border-left: 1.5pt solid #40503A;
		border-radius: 0;
		padding: 10pt 14pt;
		break-inside: avoid;
	}

	.luxadocs-single .luxadocs-perf {
		background-image: none;
		border-top: 0.5pt dashed #999;
		height: 0;
		margin: 24pt 0;
	}

	.luxadocs-single code {
		border: 0.5pt solid #ccc;
	}

	.luxadocs-single .luxadocs-related-docs {
		margin-top: 24pt;
		padding-top: 12pt;
		border-top: 0.5pt solid #ccc;
	}
}
