/* Dark mode colors. */
:root {
  --sl-color-accent-low: #4b0c2b;
  --sl-color-accent: #ae1c66;
  --sl-color-accent-high: #f2cbd8;
  --sl-color-white: #fafafa;
  --sl-color-gray-1: #f2cbd8;
  --sl-color-gray-2: #c0c2c7;
  --sl-color-gray-3: #888b96;
  --sl-color-gray-4: #545861;
  --sl-color-gray-5: #353841;
  --sl-color-gray-6: #24272f;
  --sl-color-black: #17181c;
}
/* Light mode colors. */
:root[data-theme="light"] {
  --sl-color-accent-low: #f2cbd8;
  --sl-color-accent: #ae1c66;
  --sl-color-accent-high: #551835;
  --sl-color-white: #4c0519;
  --sl-color-gray-1: #3b0a22;
  --sl-color-gray-2: #4b0c2b;
  --sl-color-gray-3: #545861;
  --sl-color-gray-4: #888b96;
  --sl-color-gray-5: #c0c2c7;
  --sl-color-gray-6: #fcedf5;
  --sl-color-gray-7: #fdf2f8;
  --sl-color-black: #fafafa;
}
@layer starlight.base, starlight.reset, starlight.core, starlight.content, starlight.components, starlight.utils;
@layer starlight.base {
	:root,
	::backdrop {
		/* Colors (dark mode) */
		--sl-color-white: hsl(0, 0%, 100%); /* “white” */
		--sl-color-gray-1: hsl(224, 20%, 94%);
		--sl-color-gray-2: hsl(224, 6%, 77%);
		--sl-color-gray-3: hsl(224, 6%, 56%);
		--sl-color-gray-4: hsl(224, 7%, 36%);
		--sl-color-gray-5: hsl(224, 10%, 23%);
		--sl-color-gray-6: hsl(224, 14%, 16%);
		--sl-color-black: hsl(224, 10%, 10%);

		--sl-hue-orange: 41;
		--sl-color-orange-low: hsl(var(--sl-hue-orange), 39%, 22%);
		--sl-color-orange: hsl(var(--sl-hue-orange), 82%, 63%);
		--sl-color-orange-high: hsl(var(--sl-hue-orange), 82%, 87%);
		--sl-hue-green: 101;
		--sl-color-green-low: hsl(var(--sl-hue-green), 39%, 22%);
		--sl-color-green: hsl(var(--sl-hue-green), 82%, 63%);
		--sl-color-green-high: hsl(var(--sl-hue-green), 82%, 80%);
		--sl-hue-blue: 234;
		--sl-color-blue-low: hsl(var(--sl-hue-blue), 54%, 20%);
		--sl-color-blue: hsl(var(--sl-hue-blue), 100%, 60%);
		--sl-color-blue-high: hsl(var(--sl-hue-blue), 100%, 87%);
		--sl-hue-purple: 281;
		--sl-color-purple-low: hsl(var(--sl-hue-purple), 39%, 22%);
		--sl-color-purple: hsl(var(--sl-hue-purple), 82%, 63%);
		--sl-color-purple-high: hsl(var(--sl-hue-purple), 82%, 89%);
		--sl-hue-red: 339;
		--sl-color-red-low: hsl(var(--sl-hue-red), 39%, 22%);
		--sl-color-red: hsl(var(--sl-hue-red), 82%, 63%);
		--sl-color-red-high: hsl(var(--sl-hue-red), 82%, 87%);

		--sl-color-accent-low: hsl(224, 54%, 20%);
		--sl-color-accent: hsl(224, 100%, 60%);
		--sl-color-accent-high: hsl(224, 100%, 85%);

		--sl-color-text: var(--sl-color-gray-2);
		--sl-color-text-accent: var(--sl-color-accent-high);
		--sl-color-text-invert: var(--sl-color-accent-low);
		--sl-color-bg: var(--sl-color-black);
		--sl-color-bg-nav: var(--sl-color-gray-6);
		--sl-color-bg-sidebar: var(--sl-color-gray-6);
		--sl-color-bg-inline-code: var(--sl-color-gray-5);
		--sl-color-bg-accent: var(--sl-color-accent-high);
		--sl-color-hairline-light: var(--sl-color-gray-5);
		--sl-color-hairline: var(--sl-color-gray-6);
		--sl-color-hairline-shade: var(--sl-color-black);

		--sl-color-backdrop-overlay: hsla(223, 13%, 10%, 0.66);

		/* Shadows (dark mode) */
		--sl-shadow-sm: 0px 1px 1px hsla(0, 0%, 0%, 0.12), 0px 2px 1px hsla(0, 0%, 0%, 0.24);
		--sl-shadow-md: 0px 8px 4px hsla(0, 0%, 0%, 0.08), 0px 5px 2px hsla(0, 0%, 0%, 0.08),
			0px 3px 2px hsla(0, 0%, 0%, 0.12), 0px 1px 1px hsla(0, 0%, 0%, 0.15);
		--sl-shadow-lg: 0px 25px 7px hsla(0, 0%, 0%, 0.03), 0px 16px 6px hsla(0, 0%, 0%, 0.1),
			0px 9px 5px hsla(223, 13%, 10%, 0.33), 0px 4px 4px hsla(0, 0%, 0%, 0.75),
			0px 4px 2px hsla(0, 0%, 0%, 0.25);

		/* Text size and line height */
		--sl-text-2xs: 0.75rem; /* 12px */
		--sl-text-xs: 0.8125rem; /* 13px */
		--sl-text-sm: 0.875rem; /* 14px */
		--sl-text-base: 1rem; /* 16px */
		--sl-text-lg: 1.125rem; /* 18px */
		--sl-text-xl: 1.25rem; /* 20px */
		--sl-text-2xl: 1.5rem; /* 24px */
		--sl-text-3xl: 1.8125rem; /* 29px */
		--sl-text-4xl: 2.1875rem; /* 35px */
		--sl-text-5xl: 2.625rem; /* 42px */
		--sl-text-6xl: 4rem; /* 64px */

		--sl-text-body: var(--sl-text-base);
		--sl-text-body-sm: var(--sl-text-xs);
		--sl-text-code: var(--sl-text-sm);
		--sl-text-code-sm: var(--sl-text-xs);
		--sl-text-h1: var(--sl-text-4xl);
		--sl-text-h2: var(--sl-text-3xl);
		--sl-text-h3: var(--sl-text-2xl);
		--sl-text-h4: var(--sl-text-xl);
		--sl-text-h5: var(--sl-text-lg);

		--sl-line-height: 1.75;
		--sl-line-height-headings: 1.2;

		--sl-font-system: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI',
			Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji',
			'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
		--sl-font-system-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono',
			'Courier New', monospace;
		--__sl-font: var(--sl-font, var(--sl-font-system)), var(--sl-font-system);
		--__sl-font-mono: var(--sl-font-mono, var(--sl-font-system-mono)), var(--sl-font-system-mono);

		/** Key layout values */
		--sl-nav-height: 3.5rem;
		--sl-nav-pad-x: 1rem;
		--sl-nav-pad-y: 0.75rem;
		--sl-mobile-toc-height: 3rem;
		--sl-sidebar-width: 18.75rem;
		--sl-sidebar-pad-x: 1rem;
		--sl-content-width: 45rem;
		--sl-content-pad-x: 1rem;
		--sl-main-pad: 0 0 3vh 0;
		--sl-menu-button-size: 2rem;
		--sl-nav-gap: var(--sl-content-pad-x);
		/* Offset required to show outline inside an element instead of round the outside */
		--sl-outline-offset-inside: -0.1875rem;

		/* Global z-index values */
		--sl-z-index-toc: 4;
		--sl-z-index-menu: 5;
		--sl-z-index-navbar: 10;
		--sl-z-index-skiplink: 20;
	}

	:root[data-theme='light'],
	[data-theme='light'] ::backdrop {
		/* Colours (light mode) */
		--sl-color-white: hsl(224, 10%, 10%);
		--sl-color-gray-1: hsl(224, 14%, 16%);
		--sl-color-gray-2: hsl(224, 10%, 23%);
		--sl-color-gray-3: hsl(224, 7%, 36%);
		--sl-color-gray-4: hsl(224, 6%, 56%);
		--sl-color-gray-5: hsl(224, 6%, 77%);
		--sl-color-gray-6: hsl(224, 20%, 94%);
		--sl-color-gray-7: hsl(224, 19%, 97%);
		--sl-color-black: hsl(0, 0%, 100%);

		--sl-color-orange-high: hsl(var(--sl-hue-orange), 80%, 25%);
		--sl-color-orange: hsl(var(--sl-hue-orange), 90%, 60%);
		--sl-color-orange-low: hsl(var(--sl-hue-orange), 90%, 88%);
		--sl-color-green-high: hsl(var(--sl-hue-green), 80%, 22%);
		--sl-color-green: hsl(var(--sl-hue-green), 90%, 46%);
		--sl-color-green-low: hsl(var(--sl-hue-green), 85%, 90%);
		--sl-color-blue-high: hsl(var(--sl-hue-blue), 80%, 30%);
		--sl-color-blue: hsl(var(--sl-hue-blue), 90%, 60%);
		--sl-color-blue-low: hsl(var(--sl-hue-blue), 88%, 90%);
		--sl-color-purple-high: hsl(var(--sl-hue-purple), 90%, 30%);
		--sl-color-purple: hsl(var(--sl-hue-purple), 90%, 60%);
		--sl-color-purple-low: hsl(var(--sl-hue-purple), 80%, 90%);
		--sl-color-red-high: hsl(var(--sl-hue-red), 80%, 30%);
		--sl-color-red: hsl(var(--sl-hue-red), 90%, 60%);
		--sl-color-red-low: hsl(var(--sl-hue-red), 80%, 90%);

		--sl-color-accent-high: hsl(234, 80%, 30%);
		--sl-color-accent: hsl(234, 90%, 60%);
		--sl-color-accent-low: hsl(234, 88%, 90%);

		--sl-color-text-accent: var(--sl-color-accent);
		--sl-color-text-invert: var(--sl-color-black);
		--sl-color-bg-nav: var(--sl-color-gray-7);
		--sl-color-bg-sidebar: var(--sl-color-bg);
		--sl-color-bg-inline-code: var(--sl-color-gray-6);
		--sl-color-bg-accent: var(--sl-color-accent);
		--sl-color-hairline-light: var(--sl-color-gray-6);
		--sl-color-hairline-shade: var(--sl-color-gray-6);

		--sl-color-backdrop-overlay: hsla(225, 9%, 36%, 0.66);

		/* Shadows (light mode) */
		--sl-shadow-sm: 0px 1px 1px hsla(0, 0%, 0%, 0.06), 0px 2px 1px hsla(0, 0%, 0%, 0.06);
		--sl-shadow-md: 0px 8px 4px hsla(0, 0%, 0%, 0.03), 0px 5px 2px hsla(0, 0%, 0%, 0.03),
			0px 3px 2px hsla(0, 0%, 0%, 0.06), 0px 1px 1px hsla(0, 0%, 0%, 0.06);
		--sl-shadow-lg: 0px 25px 7px rgba(0, 0, 0, 0.01), 0px 16px 6px hsla(0, 0%, 0%, 0.03),
			0px 9px 5px hsla(223, 13%, 10%, 0.08), 0px 4px 4px hsla(0, 0%, 0%, 0.16),
			0px 4px 2px hsla(0, 0%, 0%, 0.04);
	}

	@media (min-width: 50em) {
		:root {
			--sl-nav-height: 4rem;
			--sl-nav-pad-x: 1.5rem;
			--sl-text-h1: var(--sl-text-5xl);
			--sl-text-h2: var(--sl-text-4xl);
			--sl-text-h3: var(--sl-text-3xl);
			--sl-text-h4: var(--sl-text-2xl);
		}
	}

	@media (min-width: 72rem) {
		:root {
			--sl-content-pad-x: 1.5rem;
			--sl-mobile-toc-height: 0rem;
		}
	}
}
@layer starlight.reset {
	*,
	*::before,
	*::after {
		box-sizing: border-box;
	}

	* {
		margin: 0;
	}

	html {
		color-scheme: dark;
		accent-color: var(--sl-color-accent);
	}

	html[data-theme='light'] {
		color-scheme: light;
	}

	body {
		font-family: var(--__sl-font);
		line-height: var(--sl-line-height);
		-webkit-font-smoothing: antialiased;
		color: var(--sl-color-text);
		background-color: var(--sl-color-bg);
	}

	input,
	button,
	textarea,
	select {
		font: inherit;
	}

	p,
	h1,
	h2,
	h3,
	h4,
	h5,
	h6,
	code {
		overflow-wrap: anywhere;
	}

	code {
		font-family: var(--__sl-font-mono);
	}
}
@layer starlight.components {
	.starlight-aside {
		padding: 1rem;
		border-inline-start: 0.25rem solid var(--sl-color-asides-border);
		color: var(--sl-color-white);
	}
	.starlight-aside--note {
		--sl-color-asides-text-accent: var(--sl-color-blue-high);
		--sl-color-asides-border: var(--sl-color-blue);
		background-color: var(--sl-color-blue-low);
	}
	.starlight-aside--tip {
		--sl-color-asides-text-accent: var(--sl-color-purple-high);
		--sl-color-asides-border: var(--sl-color-purple);
		background-color: var(--sl-color-purple-low);
	}
	.starlight-aside--caution {
		--sl-color-asides-text-accent: var(--sl-color-orange-high);
		--sl-color-asides-border: var(--sl-color-orange);
		background-color: var(--sl-color-orange-low);
	}
	.starlight-aside--danger {
		--sl-color-asides-text-accent: var(--sl-color-red-high);
		--sl-color-asides-border: var(--sl-color-red);
		background-color: var(--sl-color-red-low);
	}

	.starlight-aside__title {
		display: flex;
		gap: 0.5rem;
		align-items: center;
		font-size: var(--sl-text-h5);
		font-weight: 600;
		line-height: var(--sl-line-height-headings);
		color: var(--sl-color-asides-text-accent);
	}

	.starlight-aside__icon {
		font-size: 1.333em;
		width: 1em;
		height: 1em;
	}

	.starlight-aside__title + .starlight-aside__content {
		margin-top: 0.5rem;
	}

	.starlight-aside__content a {
		color: var(--sl-color-asides-text-accent);
	}
}
@layer starlight.utils {
	.sr-only {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
		border-width: 0;
	}

	.sl-hidden {
		display: none;
	}
	.sl-flex {
		display: flex;
	}
	.sl-block {
		display: block;
	}
	@media (min-width: 50rem) {
		.md\:sl-hidden {
			display: none;
		}
		.md\:sl-flex {
			display: flex;
		}
		.md\:sl-block {
			display: block;
		}
	}
	@media (min-width: 72rem) {
		.lg\:sl-hidden {
			display: none;
		}
		.lg\:sl-flex {
			display: flex;
		}
		.lg\:sl-block {
			display: block;
		}
	}
	[data-theme='light'] .light\:sl-hidden {
		display: none;
	}
	[data-theme='dark'] .dark\:sl-hidden {
		display: none;
	}

	/**
	 * Flip an element around the y-axis when in an RTL context.
	 * Primarily useful for things where we can’t rely on writing direction like icons.
	 *
	 * <Icon name="right-arrow" class="rtl:flip" />
	 *
	 * In a LTR context: →					In a RTL context: ←
	 */
	[dir='rtl'] .rtl\:flip:not(:where([dir='rtl'] [dir='ltr'] *)) {
		transform: matrix(-1, 0, 0, 1, 0, 0);
	}
}
/* 
How does anchor link placement work?

Because anchor links need to placed inline at the end of a heading, but are not children of the
heading element itself, positioning them to behave in a desirable way is a tiny bit tricky. Here’s
how we do it.

1. We wrap the heading and anchor link in a div and make the heading element inline:
   <div class="sl-heading-wrapper">
     <h2>...</h2><a class="sl-anchor-link">...</a>
   </a>

2. We need to avoid the anchor link wrapping onto a new line by itself like this because it looks
   broken:

   Some heading text
   ⛓

3. To achieve this we add an area of padding to the end of the heading and move the link over this
   padding using negative margin:

                        padding-inline-end creates space at the end of the line
                         ↓
      Some heading text[   ]⛓

                        margin-inline-start then pulls the anchor link into that space
                         ↓
      Some heading text[ ⛓ ]

   This ensures that when the anchor link wraps, the final word in the heading will wrap with it.

*/
@layer starlight.content {
	/* ======================================================
   WRAPPER
   ====================================================== */
	.sl-markdown-content .sl-heading-wrapper {
		/* The size of the SVG icon. */
		--sl-anchor-icon-size: 0.8275em;
		/* The horizontal space between the SVG icon and the end of the heading text. */
		--sl-anchor-icon-gap: 0.25em;
		/* The end of line space required to accommodate the anchor link. */
		--sl-anchor-icon-space: calc(var(--sl-anchor-icon-size) + var(--sl-anchor-icon-gap));

		line-height: var(--sl-line-height-headings);
	}

	/* We need to apply the same rule we use for heading spacing to the parent wrapper. */
	.sl-markdown-content
		:not(h1, h2, h3, h4, h5, h6, .sl-heading-wrapper)
		+ :is(.sl-heading-wrapper) {
		margin-top: 1.5em;
	}

	/* These font sizes are set in `markdown.css` for heading elements, but we need them one level higher on the wrapper. */
	.sl-markdown-content .sl-heading-wrapper.level-h1 {
		font-size: var(--sl-text-h1);
	}
	.sl-markdown-content .sl-heading-wrapper.level-h2 {
		font-size: var(--sl-text-h2);
	}
	.sl-markdown-content .sl-heading-wrapper.level-h3 {
		font-size: var(--sl-text-h3);
	}
	.sl-markdown-content .sl-heading-wrapper.level-h4 {
		font-size: var(--sl-text-h4);
	}
	.sl-markdown-content .sl-heading-wrapper.level-h5 {
		font-size: var(--sl-text-h5);
	}
	.sl-markdown-content .sl-heading-wrapper.level-h6 {
		font-size: var(--sl-text-h6);
	}

	/* ======================================================
   HEADING
   ====================================================== */
	.sl-markdown-content .sl-heading-wrapper > :first-child {
		display: inline;
		/* Apply end-of-line padding to the heading element. */
		padding-inline-end: var(--sl-anchor-icon-space);
	}

	/* ======================================================
   LINK
   ====================================================== */
	.sl-markdown-content .sl-anchor-link {
		position: relative;
		/* Move the anchor link over the heading element’s end-of-line padding. */
		margin-inline-start: calc(-1 * var(--sl-anchor-icon-size));
		/* Prevent double or triple clicks from potentially selecting the anchor link a11y text. */
		-webkit-user-select: none;
		user-select: none;
		/* Prevent double clicks on the last word (or single word) of a heading to include an extra new
     line in Chrome and Safari. */
		display: inline-flex;
	}

	/* Increase clickable area for anchor links with a pseudo element that doesn’t impact layout. */
	.sl-markdown-content .sl-anchor-link::after {
		content: '';
		position: absolute;
		/* While most icon spacing is done with `em` to be relative to the heading font-size, increasing
     the touch area is most important for smaller headings like h5/h6, so we use absolute units,
     which have a diminishing impact at larger font-sizes. */
		inset: -0.25rem -0.5rem;
	}

	/* Size and position the SVG icon inside the link. */
	.sl-markdown-content .sl-anchor-icon > svg {
		display: inline;
		width: var(--sl-anchor-icon-size);
		/* Center the link icon SVG vertically in the line. */
		vertical-align: top;
		transform: translateY(
			calc((var(--sl-line-height-headings) * 1em - var(--sl-anchor-icon-size)) / 2)
		);
	}

	/* On devices with hover capability, hide the anchor link icons and show only show them when focused
   or when the heading is hovered. */
	@media (hover: hover) {
		.sl-markdown-content .sl-anchor-link {
			opacity: 0;
		}
		.sl-markdown-content .sl-anchor-link:focus,
		.sl-markdown-content .sl-heading-wrapper:hover .sl-anchor-link {
			opacity: 1;
		}
	}
}
@layer starlight.core{.sl-banner:where(.astro-se7iqiam){--__sl-banner-text: var(--sl-color-banner-text, var(--sl-color-text-invert));padding:var(--sl-nav-pad-y) var(--sl-nav-pad-x);background-color:var(--sl-color-banner-bg, var(--sl-color-bg-accent));color:var(--__sl-banner-text);line-height:var(--sl-line-height-headings);text-align:center;text-wrap:balance;box-shadow:var(--sl-shadow-sm)}.sl-banner:where(.astro-se7iqiam) a{color:var(--__sl-banner-text)}}@layer starlight.core{.content-panel:where(.astro-f7go7vmr){padding:1.5rem var(--sl-content-pad-x)}.content-panel:where(.astro-f7go7vmr)+.content-panel:where(.astro-f7go7vmr){border-top:1px solid var(--sl-color-hairline)}.sl-container:where(.astro-f7go7vmr){max-width:var(--sl-content-width)}.sl-container:where(.astro-f7go7vmr)>* + *{margin-top:1.5rem}@media (min-width: 72rem){.sl-container:where(.astro-f7go7vmr){margin-inline:var(--sl-content-margin-inline, auto)}}}@layer starlight.core{p:where(.astro-rcjbv4r2){border:1px solid var(--sl-color-orange);padding:0.75em 1em;background-color:var(--sl-color-orange-low);color:var(--sl-color-orange-high);width:max-content;max-width:100%;align-items:center;gap:0.75em;font-size:var(--sl-text-body-sm);line-height:var(--sl-line-height-headings)}}@layer starlight.core{a:where(.astro-n7jou7jv){gap:0.5rem;align-items:center;text-decoration:none;color:var(--sl-color-gray-3)}a:where(.astro-n7jou7jv):hover{color:var(--sl-color-white)}}@layer starlight.core{.pagination-links:where(.astro-qv7jvlza){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr));gap:1rem}a:where(.astro-qv7jvlza){display:flex;align-items:center;justify-content:flex-start;gap:0.5rem;width:100%;flex-basis:calc(50% - 0.5rem);flex-grow:1;border:1px solid var(--sl-color-gray-5);border-radius:0.5rem;padding:1rem;text-decoration:none;color:var(--sl-color-gray-2);box-shadow:var(--sl-shadow-md);overflow-wrap:anywhere}:where(.astro-qv7jvlza)[rel=next]{justify-content:end;text-align:end;flex-direction:row-reverse}a:where(.astro-qv7jvlza):hover{border-color:var(--sl-color-gray-2)}.link-title:where(.astro-qv7jvlza){color:var(--sl-color-white);font-size:var(--sl-text-2xl);line-height:var(--sl-line-height-headings)}svg:where(.astro-qv7jvlza){flex-shrink:0}}@layer starlight.core{footer:where(.astro-o4llkgip){flex-direction:column;gap:1.5rem}.meta:where(.astro-o4llkgip){gap:0.75rem 3rem;justify-content:space-between;flex-wrap:wrap;margin-top:3rem;font-size:var(--sl-text-sm);color:var(--sl-color-gray-3)}.meta:where(.astro-o4llkgip)>p:only-child{margin-inline-start:auto}.kudos:where(.astro-o4llkgip){align-items:center;gap:0.5em;margin:1.5rem auto;font-size:var(--sl-text-xs);text-decoration:none;color:var(--sl-color-gray-3)}.kudos:where(.astro-o4llkgip):hover{color:var(--sl-color-white)}}@layer starlight.components{.kudos:where(.astro-o4llkgip) svg{color:var(--sl-color-orange)}}@layer starlight.core{label:where(.astro-42qlu2ba){--sl-label-icon-size: 0.875rem;--sl-caret-size: 1.25rem;--sl-inline-padding: 0.5rem;position:relative;display:flex;align-items:center;gap:0.25rem;color:var(--sl-color-gray-1)}label:where(.astro-42qlu2ba):hover{color:var(--sl-color-gray-2)}.icon:where(.astro-42qlu2ba){position:absolute;top:50%;transform:translateY(-50%);pointer-events:none}select:where(.astro-42qlu2ba){border:0;padding-block:0.625rem;padding-inline:calc(var(--sl-label-icon-size) + var(--sl-inline-padding) + 0.25rem) calc(var(--sl-caret-size) + var(--sl-inline-padding) + 0.25rem);margin-inline:calc(var(--sl-inline-padding) * -1);width:calc(var(--sl-select-width) + var(--sl-inline-padding) * 2);background-color:transparent;text-overflow:ellipsis;color:inherit;cursor:pointer;appearance:none}option:where(.astro-42qlu2ba){background-color:var(--sl-color-bg-nav);color:var(--sl-color-gray-1)}@media (min-width: 50rem){select:where(.astro-42qlu2ba){font-size:var(--sl-text-sm)}}}@layer starlight.components{.label-icon:where(.astro-42qlu2ba){font-size:var(--sl-label-icon-size);inset-inline-start:0}.caret:where(.astro-42qlu2ba){font-size:var(--sl-caret-size);inset-inline-end:0}}@layer starlight.core {
.pagefind-ui__result.svelte-j9e30.svelte-j9e30 {
  list-style-type: none;
  display: flex;
  align-items: flex-start;
  gap: min(calc(40px * var(--pagefind-ui-scale)), 3%);
  padding: calc(30px * var(--pagefind-ui-scale)) 0 calc(40px * var(--pagefind-ui-scale));
  border-top: solid var(--pagefind-ui-border-width) var(--pagefind-ui-border);
}
.pagefind-ui__result.svelte-j9e30.svelte-j9e30:last-of-type {
  border-bottom: solid var(--pagefind-ui-border-width) var(--pagefind-ui-border);
}
.pagefind-ui__result-thumb.svelte-j9e30.svelte-j9e30 {
  width: min(30%, calc((30% - (100px * var(--pagefind-ui-scale))) * 100000));
  max-width: calc(120px * var(--pagefind-ui-scale));
  margin-top: calc(10px * var(--pagefind-ui-scale));
  aspect-ratio: var(--pagefind-ui-image-box-ratio);
  position: relative;
}
.pagefind-ui__result-image.svelte-j9e30.svelte-j9e30 {
  display: block;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  font-size: 0;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  border-radius: var(--pagefind-ui-image-border-radius);
}
.pagefind-ui__result-inner.svelte-j9e30.svelte-j9e30 {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-top: calc(10px * var(--pagefind-ui-scale));
}
.pagefind-ui__result-title.svelte-j9e30.svelte-j9e30 {
  display: inline-block;
  font-weight: 700;
  font-size: calc(21px * var(--pagefind-ui-scale));
  margin-top: 0;
  margin-bottom: 0;
}
.pagefind-ui__result-title.svelte-j9e30 .pagefind-ui__result-link.svelte-j9e30 {
  color: var(--pagefind-ui-text);
  text-decoration: none;
}
.pagefind-ui__result-title.svelte-j9e30 .pagefind-ui__result-link.svelte-j9e30:hover {
  text-decoration: underline;
}
.pagefind-ui__result-excerpt.svelte-j9e30.svelte-j9e30 {
  display: inline-block;
  font-weight: 400;
  font-size: calc(16px * var(--pagefind-ui-scale));
  margin-top: calc(4px * var(--pagefind-ui-scale));
  margin-bottom: 0;
  min-width: calc(250px * var(--pagefind-ui-scale));
}
.pagefind-ui__loading.svelte-j9e30.svelte-j9e30 {
  color: var(--pagefind-ui-text);
  background-color: var(--pagefind-ui-text);
  border-radius: var(--pagefind-ui-border-radius);
  opacity: 0.1;
  pointer-events: none;
}
.pagefind-ui__result-tags.svelte-j9e30.svelte-j9e30 {
  list-style-type: none;
  padding: 0;
  display: flex;
  gap: calc(20px * var(--pagefind-ui-scale));
  flex-wrap: wrap;
  margin-top: calc(20px * var(--pagefind-ui-scale));
}
.pagefind-ui__result-tag.svelte-j9e30.svelte-j9e30 {
  padding: calc(4px * var(--pagefind-ui-scale)) calc(8px * var(--pagefind-ui-scale));
  font-size: calc(14px * var(--pagefind-ui-scale));
  border-radius: var(--pagefind-ui-border-radius);
  background-color: var(--pagefind-ui-tag);
}


.pagefind-ui__result.svelte-4xnkmf.svelte-4xnkmf {
  list-style-type: none;
  display: flex;
  align-items: flex-start;
  gap: min(calc(40px * var(--pagefind-ui-scale)), 3%);
  padding: calc(30px * var(--pagefind-ui-scale)) 0 calc(40px * var(--pagefind-ui-scale));
  border-top: solid var(--pagefind-ui-border-width) var(--pagefind-ui-border);
}
.pagefind-ui__result.svelte-4xnkmf.svelte-4xnkmf:last-of-type {
  border-bottom: solid var(--pagefind-ui-border-width) var(--pagefind-ui-border);
}
.pagefind-ui__result-nested.svelte-4xnkmf.svelte-4xnkmf {
  display: flex;
  flex-direction: column;
  padding-left: calc(20px * var(--pagefind-ui-scale));
}
.pagefind-ui__result-nested.svelte-4xnkmf.svelte-4xnkmf:first-of-type {
  padding-top: calc(10px * var(--pagefind-ui-scale));
}
.pagefind-ui__result-nested.svelte-4xnkmf .pagefind-ui__result-link.svelte-4xnkmf {
  font-size: 0.9em;
  position: relative;
}
.pagefind-ui__result-nested.svelte-4xnkmf .pagefind-ui__result-link.svelte-4xnkmf::before {
  content: "\2937  ";
  position: absolute;
  top: 0;
  right: calc(100% + 0.1em);
}
.pagefind-ui__result-thumb.svelte-4xnkmf.svelte-4xnkmf {
  width: min(30%, calc((30% - (100px * var(--pagefind-ui-scale))) * 100000));
  max-width: calc(120px * var(--pagefind-ui-scale));
  margin-top: calc(10px * var(--pagefind-ui-scale));
  aspect-ratio: var(--pagefind-ui-image-box-ratio);
  position: relative;
}
.pagefind-ui__result-image.svelte-4xnkmf.svelte-4xnkmf {
  display: block;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  font-size: 0;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  border-radius: var(--pagefind-ui-image-border-radius);
}
.pagefind-ui__result-inner.svelte-4xnkmf.svelte-4xnkmf {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-top: calc(10px * var(--pagefind-ui-scale));
}
.pagefind-ui__result-title.svelte-4xnkmf.svelte-4xnkmf {
  display: inline-block;
  font-weight: 700;
  font-size: calc(21px * var(--pagefind-ui-scale));
  margin-top: 0;
  margin-bottom: 0;
}
.pagefind-ui__result-title.svelte-4xnkmf .pagefind-ui__result-link.svelte-4xnkmf {
  color: var(--pagefind-ui-text);
  text-decoration: none;
}
.pagefind-ui__result-title.svelte-4xnkmf .pagefind-ui__result-link.svelte-4xnkmf:hover {
  text-decoration: underline;
}
.pagefind-ui__result-excerpt.svelte-4xnkmf.svelte-4xnkmf {
  display: inline-block;
  font-weight: 400;
  font-size: calc(16px * var(--pagefind-ui-scale));
  margin-top: calc(4px * var(--pagefind-ui-scale));
  margin-bottom: 0;
  min-width: calc(250px * var(--pagefind-ui-scale));
}
.pagefind-ui__loading.svelte-4xnkmf.svelte-4xnkmf {
  color: var(--pagefind-ui-text);
  background-color: var(--pagefind-ui-text);
  border-radius: var(--pagefind-ui-border-radius);
  opacity: 0.1;
  pointer-events: none;
}
.pagefind-ui__result-tags.svelte-4xnkmf.svelte-4xnkmf {
  list-style-type: none;
  padding: 0;
  display: flex;
  gap: calc(20px * var(--pagefind-ui-scale));
  flex-wrap: wrap;
  margin-top: calc(20px * var(--pagefind-ui-scale));
}
.pagefind-ui__result-tag.svelte-4xnkmf.svelte-4xnkmf {
  padding: calc(4px * var(--pagefind-ui-scale)) calc(8px * var(--pagefind-ui-scale));
  font-size: calc(14px * var(--pagefind-ui-scale));
  border-radius: var(--pagefind-ui-border-radius);
  background-color: var(--pagefind-ui-tag);
}


legend.svelte-1v2r7ls.svelte-1v2r7ls {
  position: absolute;
  clip: rect(0 0 0 0);
}
.pagefind-ui__filter-panel.svelte-1v2r7ls.svelte-1v2r7ls {
  min-width: min(calc(260px * var(--pagefind-ui-scale)), 100%);
  flex: 1;
  display: flex;
  flex-direction: column;
  margin-top: calc(20px * var(--pagefind-ui-scale));
}
.pagefind-ui__filter-group.svelte-1v2r7ls.svelte-1v2r7ls {
  border: 0;
  padding: 0;
}
.pagefind-ui__filter-block.svelte-1v2r7ls.svelte-1v2r7ls {
  padding: 0;
  display: block;
  border-bottom: solid calc(2px * var(--pagefind-ui-scale)) var(--pagefind-ui-border);
  padding: calc(20px * var(--pagefind-ui-scale)) 0;
}
.pagefind-ui__filter-name.svelte-1v2r7ls.svelte-1v2r7ls {
  font-size: calc(16px * var(--pagefind-ui-scale));
  position: relative;
  display: flex;
  align-items: center;
  list-style: none;
  font-weight: 700;
  cursor: pointer;
  height: calc(24px * var(--pagefind-ui-scale));
}
.pagefind-ui__filter-name.svelte-1v2r7ls.svelte-1v2r7ls::-webkit-details-marker {
  display: none;
}
.pagefind-ui__filter-name.svelte-1v2r7ls.svelte-1v2r7ls::after {
  position: absolute;
  content: "";
  right: calc(6px * var(--pagefind-ui-scale));
  top: 50%;
  width: calc(8px * var(--pagefind-ui-scale));
  height: calc(8px * var(--pagefind-ui-scale));
  border: solid calc(2px * var(--pagefind-ui-scale)) currentColor;
  border-right: 0;
  border-top: 0;
  transform: translateY(-70%) rotateZ(-45deg);
}
.pagefind-ui__filter-block[open].svelte-1v2r7ls .pagefind-ui__filter-name.svelte-1v2r7ls::after {
  transform: translateY(-70%) rotateZ(-225deg);
}
.pagefind-ui__filter-group.svelte-1v2r7ls.svelte-1v2r7ls {
  display: flex;
  flex-direction: column;
  gap: calc(20px * var(--pagefind-ui-scale));
  padding-top: calc(30px * var(--pagefind-ui-scale));
}
.pagefind-ui__filter-value.svelte-1v2r7ls.svelte-1v2r7ls {
  position: relative;
  display: flex;
  align-items: center;
  gap: calc(8px * var(--pagefind-ui-scale));
}
.pagefind-ui__filter-value.svelte-1v2r7ls.svelte-1v2r7ls::before {
  position: absolute;
  content: "";
  top: 50%;
  left: calc(8px * var(--pagefind-ui-scale));
  width: 0px;
  height: 0px;
  border: solid 1px #fff;
  opacity: 0;
  transform: translate(calc(4.5px * var(--pagefind-ui-scale) * -1), calc(0.8px * var(--pagefind-ui-scale))) skewX(-5deg) rotateZ(-45deg);
  transform-origin: top left;
  border-top: 0;
  border-right: 0;
  pointer-events: none;
}
.pagefind-ui__filter-value.pagefind-ui__filter-value--checked.svelte-1v2r7ls.svelte-1v2r7ls::before {
  opacity: 1;
  width: calc(9px * var(--pagefind-ui-scale));
  height: calc(4px * var(--pagefind-ui-scale));
  transition: width 0.1s ease-out 0.1s, height 0.1s ease-in;
}
.pagefind-ui__filter-checkbox.svelte-1v2r7ls.svelte-1v2r7ls {
  margin: 0;
  width: calc(16px * var(--pagefind-ui-scale));
  height: calc(16px * var(--pagefind-ui-scale));
  border: solid 1px var(--pagefind-ui-border);
  appearance: none;
  -webkit-appearance: none;
  border-radius: calc(var(--pagefind-ui-border-radius) / 2);
  background-color: var(--pagefind-ui-background);
  cursor: pointer;
}
.pagefind-ui__filter-checkbox.svelte-1v2r7ls.svelte-1v2r7ls:checked {
  background-color: var(--pagefind-ui-primary);
  border: solid 1px var(--pagefind-ui-primary);
}
.pagefind-ui__filter-label.svelte-1v2r7ls.svelte-1v2r7ls {
  cursor: pointer;
  font-size: calc(16px * var(--pagefind-ui-scale));
  font-weight: 400;
}


.pagefind-ui--reset *:where(:not(html, iframe, canvas, img, svg, video):not(svg *, symbol *)) {
  all: unset;
  display: revert;
  outline: revert;
}
.pagefind-ui--reset *,
.pagefind-ui--reset *::before,
.pagefind-ui--reset *::after {
  box-sizing: border-box;
}
.pagefind-ui--reset a,
.pagefind-ui--reset button {
  cursor: revert;
}
.pagefind-ui--reset ol,
.pagefind-ui--reset ul,
.pagefind-ui--reset menu {
  list-style: none;
}
.pagefind-ui--reset img {
  max-width: 100%;
}
.pagefind-ui--reset table {
  border-collapse: collapse;
}
.pagefind-ui--reset input,
.pagefind-ui--reset textarea {
  -webkit-user-select: auto;
}
.pagefind-ui--reset textarea {
  white-space: revert;
}
.pagefind-ui--reset meter {
  -webkit-appearance: revert;
  appearance: revert;
}
.pagefind-ui--reset ::placeholder {
  color: unset;
}
.pagefind-ui--reset :where([hidden]) {
  display: none;
}
.pagefind-ui--reset :where([contenteditable]:not([contenteditable="false"])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto;
}
.pagefind-ui--reset :where([draggable="true"]) {
  -webkit-user-drag: element;
}
.pagefind-ui--reset mark {
  all: revert;
}


:root {
  --pagefind-ui-scale:0.8;
  --pagefind-ui-primary:#393939;
  --pagefind-ui-text:#393939;
  --pagefind-ui-background:#ffffff;
  --pagefind-ui-border:#eeeeee;
  --pagefind-ui-tag:#eeeeee;
  --pagefind-ui-border-width:2px;
  --pagefind-ui-border-radius:8px;
  --pagefind-ui-image-border-radius:8px;
  --pagefind-ui-image-box-ratio:3 / 2;
  --pagefind-ui-font:system,
    -apple-system,
    "BlinkMacSystemFont",
    ".SFNSText-Regular",
    "San Francisco",
    "Roboto",
    "Segoe UI",
    "Helvetica Neue",
    "Lucida Grande",
    "Ubuntu",
    "arial",
    sans-serif;
}
.pagefind-ui.svelte-e9gkc3 {
  width: 100%;
  color: var(--pagefind-ui-text);
  font-family: var(--pagefind-ui-font);
}
.pagefind-ui__hidden.svelte-e9gkc3 {
  display: none !important;
}
.pagefind-ui__suppressed.svelte-e9gkc3 {
  opacity: 0;
  pointer-events: none;
}
.pagefind-ui__form.svelte-e9gkc3 {
  position: relative;
}
.pagefind-ui__form.svelte-e9gkc3::before {
  background-color: var(--pagefind-ui-text);
  width: calc(18px * var(--pagefind-ui-scale));
  height: calc(18px * var(--pagefind-ui-scale));
  top: calc(23px * var(--pagefind-ui-scale));
  left: calc(20px * var(--pagefind-ui-scale));
  content: "";
  position: absolute;
  display: block;
  opacity: 0.7;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.7549 11.255H11.9649L11.6849 10.985C12.6649 9.845 13.2549 8.365 13.2549 6.755C13.2549 3.165 10.3449 0.255005 6.75488 0.255005C3.16488 0.255005 0.254883 3.165 0.254883 6.755C0.254883 10.345 3.16488 13.255 6.75488 13.255C8.36488 13.255 9.84488 12.665 10.9849 11.685L11.2549 11.965V12.755L16.2549 17.745L17.7449 16.255L12.7549 11.255ZM6.75488 11.255C4.26488 11.255 2.25488 9.245 2.25488 6.755C2.25488 4.26501 4.26488 2.255 6.75488 2.255C9.24488 2.255 11.2549 4.26501 11.2549 6.755C11.2549 9.245 9.24488 11.255 6.75488 11.255Z' fill='%23000000'/%3E%3C/svg%3E%0A");
  mask-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.7549 11.255H11.9649L11.6849 10.985C12.6649 9.845 13.2549 8.365 13.2549 6.755C13.2549 3.165 10.3449 0.255005 6.75488 0.255005C3.16488 0.255005 0.254883 3.165 0.254883 6.755C0.254883 10.345 3.16488 13.255 6.75488 13.255C8.36488 13.255 9.84488 12.665 10.9849 11.685L11.2549 11.965V12.755L16.2549 17.745L17.7449 16.255L12.7549 11.255ZM6.75488 11.255C4.26488 11.255 2.25488 9.245 2.25488 6.755C2.25488 4.26501 4.26488 2.255 6.75488 2.255C9.24488 2.255 11.2549 4.26501 11.2549 6.755C11.2549 9.245 9.24488 11.255 6.75488 11.255Z' fill='%23000000'/%3E%3C/svg%3E%0A");
  -webkit-mask-size: 100%;
  mask-size: 100%;
  z-index: 9;
  pointer-events: none;
}
.pagefind-ui__search-input.svelte-e9gkc3 {
  height: calc(64px * var(--pagefind-ui-scale));
  padding: 0 calc(70px * var(--pagefind-ui-scale)) 0 calc(54px * var(--pagefind-ui-scale));
  background-color: var(--pagefind-ui-background);
  border: var(--pagefind-ui-border-width) solid var(--pagefind-ui-border);
  border-radius: var(--pagefind-ui-border-radius);
  font-size: calc(21px * var(--pagefind-ui-scale));
  position: relative;
  appearance: none;
  -webkit-appearance: none;
  display: flex;
  width: 100%;
  box-sizing: border-box;
  font-weight: 700;
}
.pagefind-ui__search-input.svelte-e9gkc3::placeholder {
  opacity: 0.2;
}
.pagefind-ui__search-clear.svelte-e9gkc3 {
  position: absolute;
  top: calc(3px * var(--pagefind-ui-scale));
  right: calc(3px * var(--pagefind-ui-scale));
  height: calc(58px * var(--pagefind-ui-scale));
  padding: 0 calc(15px * var(--pagefind-ui-scale)) 0 calc(2px * var(--pagefind-ui-scale));
  color: var(--pagefind-ui-text);
  font-size: calc(14px * var(--pagefind-ui-scale));
  cursor: pointer;
  background-color: var(--pagefind-ui-background);
  border-radius: var(--pagefind-ui-border-radius);
}
.pagefind-ui__drawer.svelte-e9gkc3 {
  gap: calc(60px * var(--pagefind-ui-scale));
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.pagefind-ui__results-area.svelte-e9gkc3 {
  min-width: min(calc(400px * var(--pagefind-ui-scale)), 100%);
  flex: 1000;
  margin-top: calc(20px * var(--pagefind-ui-scale));
}
.pagefind-ui__results.svelte-e9gkc3 {
  padding: 0;
}
.pagefind-ui__message.svelte-e9gkc3 {
  box-sizing: content-box;
  font-size: calc(16px * var(--pagefind-ui-scale));
  height: calc(24px * var(--pagefind-ui-scale));
  padding: calc(20px * var(--pagefind-ui-scale)) 0;
  display: flex;
  align-items: center;
  font-weight: 700;
  margin-top: 0;
}
.pagefind-ui__button.svelte-e9gkc3 {
  margin-top: calc(40px * var(--pagefind-ui-scale));
  border: var(--pagefind-ui-border-width) solid var(--pagefind-ui-border);
  border-radius: var(--pagefind-ui-border-radius);
  height: calc(48px * var(--pagefind-ui-scale));
  padding: 0 calc(12px * var(--pagefind-ui-scale));
  font-size: calc(16px * var(--pagefind-ui-scale));
  color: var(--pagefind-ui-primary);
  background: var(--pagefind-ui-background);
  width: 100%;
  text-align: center;
  font-weight: 700;
  cursor: pointer;
}
.pagefind-ui__button.svelte-e9gkc3:hover {
  border-color: var(--pagefind-ui-primary);
  color: var(--pagefind-ui-primary);
  background: var(--pagefind-ui-background);
}
}

	@layer starlight.core {
		[data-search-modal-open] {
			overflow: hidden;
		}

		#starlight__search {
			--sl-search-result-spacing: calc(1.25rem * var(--pagefind-ui-scale));
			--sl-search-result-pad-inline-start: calc(3.75rem * var(--pagefind-ui-scale));
			--sl-search-result-pad-inline-end: calc(1.25rem * var(--pagefind-ui-scale));
			--sl-search-result-pad-block: calc(0.9375rem * var(--pagefind-ui-scale));
			--sl-search-result-nested-pad-block: calc(0.625rem * var(--pagefind-ui-scale));
			--sl-search-corners: calc(0.3125rem * var(--pagefind-ui-scale));
			--sl-search-page-icon-size: calc(1.875rem * var(--pagefind-ui-scale));
			--sl-search-page-icon-inline-start: calc(
				(var(--sl-search-result-pad-inline-start) - var(--sl-search-page-icon-size)) / 2
			);
			--sl-search-tree-diagram-size: calc(2.5rem * var(--pagefind-ui-scale));
			--sl-search-tree-diagram-inline-start: calc(
				(var(--sl-search-result-pad-inline-start) - var(--sl-search-tree-diagram-size)) / 2
			);
		}

		#starlight__search .pagefind-ui__form::before {
			--pagefind-ui-text: var(--sl-color-gray-1);
			opacity: 1;
		}

		#starlight__search .pagefind-ui__search-input {
			color: var(--sl-color-white);
			font-weight: 400;
			width: calc(100% - var(--sl-search-cancel-space));
		}

		#starlight__search input:focus {
			--pagefind-ui-border: var(--sl-color-accent);
		}

		#starlight__search .pagefind-ui__search-clear {
			inset-inline-end: var(--sl-search-cancel-space);
			width: calc(60px * var(--pagefind-ui-scale));
			padding: 0;
			background-color: transparent;
			overflow: hidden;
		}
		#starlight__search .pagefind-ui__search-clear:focus {
			outline: 1px solid var(--sl-color-accent);
		}
		#starlight__search .pagefind-ui__search-clear::before {
			content: '';
			-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m13.41 12 6.3-6.29a1 1 0 1 0-1.42-1.42L12 10.59l-6.29-6.3a1 1 0 0 0-1.42 1.42l6.3 6.29-6.3 6.29a1 1 0 0 0 .33 1.64 1 1 0 0 0 1.09-.22l6.29-6.3 6.29 6.3a1 1 0 0 0 1.64-.33 1 1 0 0 0-.22-1.09L13.41 12Z'/%3E%3C/svg%3E")
				center / 50% no-repeat;
			mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m13.41 12 6.3-6.29a1 1 0 1 0-1.42-1.42L12 10.59l-6.29-6.3a1 1 0 0 0-1.42 1.42l6.3 6.29-6.3 6.29a1 1 0 0 0 .33 1.64 1 1 0 0 0 1.09-.22l6.29-6.3 6.29 6.3a1 1 0 0 0 1.64-.33 1 1 0 0 0-.22-1.09L13.41 12Z'/%3E%3C/svg%3E")
				center / 50% no-repeat;
			background-color: var(--sl-color-text-accent);
			display: block;
			width: 100%;
			height: 100%;
		}

		#starlight__search .pagefind-ui__results > * + * {
			margin-top: var(--sl-search-result-spacing);
		}
		#starlight__search .pagefind-ui__result {
			border: 0;
			padding: 0;
		}

		#starlight__search .pagefind-ui__result-nested {
			position: relative;
			padding: var(--sl-search-result-nested-pad-block) var(--sl-search-result-pad-inline-end);
			padding-inline-start: var(--sl-search-result-pad-inline-start);
		}

		#starlight__search .pagefind-ui__result-title:not(:where(.pagefind-ui__result-nested *)),
		#starlight__search .pagefind-ui__result-nested {
			position: relative;
			background-color: var(--sl-color-black);
		}

		#starlight__search .pagefind-ui__result-title:not(:where(.pagefind-ui__result-nested *)):hover,
		#starlight__search
			.pagefind-ui__result-title:not(:where(.pagefind-ui__result-nested *)):focus-within,
		#starlight__search .pagefind-ui__result-nested:hover,
		#starlight__search .pagefind-ui__result-nested:focus-within {
			outline: 1px solid var(--sl-color-accent-high);
		}

		#starlight__search
			.pagefind-ui__result-title:not(:where(.pagefind-ui__result-nested *)):focus-within,
		#starlight__search .pagefind-ui__result-nested:focus-within {
			background-color: var(--sl-color-accent-low);
		}

		#starlight__search .pagefind-ui__result-thumb,
		#starlight__search .pagefind-ui__result-inner {
			margin-top: 0;
		}

		#starlight__search .pagefind-ui__result-inner > :first-child {
			border-radius: var(--sl-search-corners) var(--sl-search-corners) 0 0;
		}
		#starlight__search .pagefind-ui__result-inner > :last-child {
			border-radius: 0 0 var(--sl-search-corners) var(--sl-search-corners);
		}

		#starlight__search .pagefind-ui__result-inner > .pagefind-ui__result-title {
			padding: var(--sl-search-result-pad-block) var(--sl-search-result-pad-inline-end);
			padding-inline-start: var(--sl-search-result-pad-inline-start);
		}
		#starlight__search .pagefind-ui__result-inner > .pagefind-ui__result-title::before {
			content: '';
			position: absolute;
			inset-block: 0;
			inset-inline-start: var(--sl-search-page-icon-inline-start);
			width: var(--sl-search-page-icon-size);
			background: var(--sl-color-gray-3);
			-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' viewBox='0 0 24 24'%3E%3Cpath d='M9 10h1a1 1 0 1 0 0-2H9a1 1 0 0 0 0 2Zm0 2a1 1 0 0 0 0 2h6a1 1 0 0 0 0-2H9Zm11-3V8l-6-6a1 1 0 0 0-1 0H7a3 3 0 0 0-3 3v14a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V9Zm-6-4 3 3h-2a1 1 0 0 1-1-1V5Zm4 14a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h5v3a3 3 0 0 0 3 3h3v9Zm-3-3H9a1 1 0 0 0 0 2h6a1 1 0 0 0 0-2Z'/%3E%3C/svg%3E")
				center no-repeat;
			mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' viewBox='0 0 24 24'%3E%3Cpath d='M9 10h1a1 1 0 1 0 0-2H9a1 1 0 0 0 0 2Zm0 2a1 1 0 0 0 0 2h6a1 1 0 0 0 0-2H9Zm11-3V8l-6-6a1 1 0 0 0-1 0H7a3 3 0 0 0-3 3v14a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V9Zm-6-4 3 3h-2a1 1 0 0 1-1-1V5Zm4 14a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h5v3a3 3 0 0 0 3 3h3v9Zm-3-3H9a1 1 0 0 0 0 2h6a1 1 0 0 0 0-2Z'/%3E%3C/svg%3E")
				center no-repeat;
		}

		#starlight__search .pagefind-ui__result-inner {
			align-items: stretch;
			gap: 1px;
		}

		#starlight__search .pagefind-ui__result-link {
			position: unset;
			--pagefind-ui-text: var(--sl-color-white);
			font-weight: 600;
		}

		#starlight__search .pagefind-ui__result-link:hover {
			text-decoration: none;
		}

		#starlight__search .pagefind-ui__result-nested .pagefind-ui__result-link::before {
			content: unset;
		}

		#starlight__search .pagefind-ui__result-nested::before {
			content: '';
			position: absolute;
			inset-block: 0;
			inset-inline-start: var(--sl-search-tree-diagram-inline-start);
			width: var(--sl-search-tree-diagram-size);
			background: var(--sl-color-gray-4);
			-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' viewBox='0 0 16 1000' preserveAspectRatio='xMinYMin slice'%3E%3Cpath d='M8 0v1000m6-988H8'/%3E%3C/svg%3E")
				0% 0% / 100% no-repeat;
			mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' viewBox='0 0 16 1000' preserveAspectRatio='xMinYMin slice'%3E%3Cpath d='M8 0v1000m6-988H8'/%3E%3C/svg%3E")
				0% 0% / 100% no-repeat;
		}
		#starlight__search .pagefind-ui__result-nested:last-of-type::before {
			-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 16 16'%3E%3Cpath d='M8 0v12m6 0H8'/%3E%3C/svg%3E");
			mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 16 16'%3E%3Cpath d='M8 0v12m6 0H8'/%3E%3C/svg%3E");
		}

		/* Flip page and tree icons around the vertical axis when in an RTL layout. */
		[dir='rtl'] .pagefind-ui__result-title::before,
		[dir='rtl'] .pagefind-ui__result-nested::before {
			transform: matrix(-1, 0, 0, 1, 0, 0);
		}

		#starlight__search .pagefind-ui__result-link::after {
			content: '';
			position: absolute;
			inset: 0;
		}

		#starlight__search .pagefind-ui__result-excerpt {
			font-size: calc(1rem * var(--pagefind-ui-scale));
			overflow-wrap: anywhere;
		}

		#starlight__search mark {
			color: var(--sl-color-gray-2);
			background-color: transparent;
			font-weight: 600;
		}

		#starlight__search .pagefind-ui__filter-value::before {
			border-color: var(--sl-color-text-invert);
		}

		#starlight__search .pagefind-ui__result-tags {
			background-color: var(--sl-color-black);
			margin-top: 0;
			padding: var(--sl-search-result-nested-pad-block) var(--sl-search-result-pad-inline-end);
		}
	}@layer starlight.core{site-search:where(.astro-aru6m2y3){display:contents}button:where(.astro-aru6m2y3)[data-open-modal]{display:flex;align-items:center;gap:0.5rem;border:0;background-color:transparent;color:var(--sl-color-gray-1);cursor:pointer;height:2.5rem;font-size:var(--sl-text-xl)}@media (min-width: 50rem){button:where(.astro-aru6m2y3)[data-open-modal]{border:1px solid var(--sl-color-gray-5);border-radius:0.5rem;padding-inline-start:0.75rem;padding-inline-end:0.5rem;background-color:var(--sl-color-black);color:var(--sl-color-gray-2);font-size:var(--sl-text-sm);width:100%;max-width:22rem}button:where(.astro-aru6m2y3)[data-open-modal]:hover{border-color:var(--sl-color-gray-2);color:var(--sl-color-white)}button:where(.astro-aru6m2y3)[data-open-modal]>:last-child:where(.astro-aru6m2y3){margin-inline-start:auto}}button:where(.astro-aru6m2y3)>kbd:where(.astro-aru6m2y3){border-radius:0.25rem;font-size:var(--sl-text-2xs);gap:0.25em;padding-inline:0.375rem;background-color:var(--sl-color-gray-6)}kbd:where(.astro-aru6m2y3){font-family:var(--__sl-font)}dialog:where(.astro-aru6m2y3){margin:0;background-color:var(--sl-color-gray-6);border:1px solid var(--sl-color-gray-5);width:100%;max-width:100%;height:100%;max-height:100%;box-shadow:var(--sl-shadow-lg)}dialog:where(.astro-aru6m2y3)[open]{display:flex}dialog:where(.astro-aru6m2y3)::backdrop{background-color:var(--sl-color-backdrop-overlay);-webkit-backdrop-filter:blur(0.25rem);backdrop-filter:blur(0.25rem)}.dialog-frame:where(.astro-aru6m2y3){position:relative;overflow:auto;flex-direction:column;flex-grow:1;gap:1rem;padding:1rem}button:where(.astro-aru6m2y3)[data-close-modal]{position:absolute;z-index:1;align-items:center;align-self:flex-end;height:calc(64px * var(--pagefind-ui-scale));padding:0.25rem;border:0;background:transparent;cursor:pointer;color:var(--sl-color-text-accent)}#starlight__search:where(.astro-aru6m2y3){--pagefind-ui-primary: var(--sl-color-text);--pagefind-ui-text: var(--sl-color-gray-2);--pagefind-ui-font: var(--__sl-font);--pagefind-ui-background: var(--sl-color-black);--pagefind-ui-border: var(--sl-color-gray-5);--pagefind-ui-border-width: 1px;--pagefind-ui-tag: var(--sl-color-gray-5);--sl-search-cancel-space: 5rem}:root[data-theme=light] #starlight__search:where(.astro-aru6m2y3){--pagefind-ui-tag: var(--sl-color-gray-6)}@media (min-width: 50rem){#starlight__search:where(.astro-aru6m2y3){--sl-search-cancel-space: 0px}dialog:where(.astro-aru6m2y3){margin:4rem auto auto;border-radius:0.5rem;width:90%;max-width:40rem;height:max-content;min-height:15rem;max-height:calc(100% - 8rem)}.dialog-frame:where(.astro-aru6m2y3){padding:1.5rem}}}@layer starlight.core{.site-title:where(.astro-mggpputs){align-items:center;gap:var(--sl-nav-gap);font-size:var(--sl-text-h4);font-weight:600;color:var(--sl-color-text-accent);text-decoration:none;white-space:nowrap;min-width:0}span:where(.astro-mggpputs){overflow:hidden}img:where(.astro-mggpputs){height:calc(var(--sl-nav-height) - 2 * var(--sl-nav-pad-y));width:auto;max-width:100%;object-fit:contain;object-position:0 50%}}@layer starlight.core{a:where(.astro-koplovkt){color:var(--sl-color-text-accent);padding:0.5em;margin:-0.5em}a:where(.astro-koplovkt):hover{opacity:0.66}}@layer starlight.core{.header:where(.astro-44tgx4lm){display:flex;gap:var(--sl-nav-gap);justify-content:space-between;align-items:center;height:100%}.title-wrapper:where(.astro-44tgx4lm){overflow:clip;padding:0.25rem;margin:-0.25rem;min-width:0}.right-group:where(.astro-44tgx4lm),.social-icons:where(.astro-44tgx4lm){gap:1rem;align-items:center}.social-icons:where(.astro-44tgx4lm)::after{content:"";height:2rem;border-inline-end:1px solid var(--sl-color-gray-5)}@media (min-width: 50rem){:root[data-has-sidebar]{--__sidebar-pad: calc(2 * var(--sl-nav-pad-x))}:root:not([data-has-toc]){--__toc-width: 0rem}.header:where(.astro-44tgx4lm){--__sidebar-width: max(0rem, var(--sl-content-inline-start, 0rem) - var(--sl-nav-pad-x));--__main-column-fr: calc( ( 100% + var(--__sidebar-pad, 0rem) - var(--__toc-width, var(--sl-sidebar-width)) - (2 * var(--__toc-width, var(--sl-nav-pad-x))) - var(--sl-content-inline-start, 0rem) - var(--sl-content-width) ) / 2 );display:grid;grid-template-columns:minmax(calc(var(--__sidebar-width) + max(0rem,var(--__main-column-fr) - var(--sl-nav-gap))),auto) 1fr auto;align-content:center}}}@layer starlight.core{.hero:where(.astro-aroga37w){display:grid;align-items:center;gap:1rem;padding-bottom:1rem}.hero:where(.astro-aroga37w)>img:where(.astro-aroga37w),.hero:where(.astro-aroga37w)>.hero-html:where(.astro-aroga37w){object-fit:contain;width:min(70%,20rem);height:auto;margin-inline:auto}.stack:where(.astro-aroga37w){flex-direction:column;gap:clamp(1.5rem,calc(1.5rem + 1vw),2rem);text-align:center}.copy:where(.astro-aroga37w){flex-direction:column;gap:1rem;align-items:center}.copy:where(.astro-aroga37w)>:where(.astro-aroga37w){max-width:50ch}h1:where(.astro-aroga37w){font-size:clamp(var(--sl-text-3xl),calc(0.25rem + 5vw),var(--sl-text-6xl));line-height:var(--sl-line-height-headings);font-weight:600;color:var(--sl-color-white)}.tagline:where(.astro-aroga37w){font-size:clamp(var(--sl-text-base),calc(0.0625rem + 2vw),var(--sl-text-xl));color:var(--sl-color-gray-2)}.actions:where(.astro-aroga37w){gap:1rem 2rem;flex-wrap:wrap;justify-content:center}@media (min-width: 50rem){.hero:where(.astro-aroga37w){grid-template-columns:7fr 4fr;gap:3%;padding-block:clamp(2.5rem,calc(1rem + 10vmin),10rem)}.hero:where(.astro-aroga37w)>img:where(.astro-aroga37w),.hero:where(.astro-aroga37w)>.hero-html:where(.astro-aroga37w){order:2;width:min(100%,25rem)}.stack:where(.astro-aroga37w){text-align:start}.copy:where(.astro-aroga37w){align-items:flex-start}.actions:where(.astro-aroga37w){justify-content:flex-start}}}@layer starlight.content {
	.sl-markdown-content
		:not(a, strong, em, del, span, input, code, br)
		+ :not(a, strong, em, del, span, input, code, br, :where(.not-content *)) {
		margin-top: 1rem;
	}

	/* Headings after non-headings have more spacing. */
	.sl-markdown-content
		:not(h1, h2, h3, h4, h5, h6)
		+ :is(h1, h2, h3, h4, h5, h6):not(:where(.not-content *)) {
		margin-top: 1.5em;
	}

	.sl-markdown-content li + li:not(:where(.not-content *)),
	.sl-markdown-content dt + dt:not(:where(.not-content *)),
	.sl-markdown-content dt + dd:not(:where(.not-content *)),
	.sl-markdown-content dd + dd:not(:where(.not-content *)) {
		margin-top: 0.25rem;
	}

	.sl-markdown-content li:not(:where(.not-content *)) {
		overflow-wrap: anywhere;
	}

	.sl-markdown-content
	li
	> :is(
		:last-child:not(
				li,
				ul,
				ol,
				a,
				strong,
				em,
				del,
				span,
				input,
				code,
				br,
				script,
				:where(.not-content *)
			),
			/**
			 * For list items ending with 1 or multiple script elements (`:has(~ script:last-child)`), we
			 * need to style the last non-script element (`:not(script)`) that doesn't have a subsequent
			 * sibling that is not a script (`:not(:has(~ :not(script)))`).
			 */
		:not(script):has(~ script:last-child):not(:has(~ :not(script)))
	) {
		margin-bottom: 1.25rem;
	}

	.sl-markdown-content dt:not(:where(.not-content *)) {
		font-weight: 700;
	}
	.sl-markdown-content dd:not(:where(.not-content *)) {
		padding-inline-start: 1rem;
	}

	.sl-markdown-content :is(h1, h2, h3, h4, h5, h6):not(:where(.not-content *)) {
		color: var(--sl-color-white);
		line-height: var(--sl-line-height-headings);
		font-weight: 600;
	}

	.sl-markdown-content :is(img, picture, video, canvas, svg, iframe):not(:where(.not-content *)) {
		display: block;
		max-width: 100%;
		height: auto;
	}

	.sl-markdown-content h1:not(:where(.not-content *)) {
		font-size: var(--sl-text-h1);
	}
	.sl-markdown-content h2:not(:where(.not-content *)) {
		font-size: var(--sl-text-h2);
	}
	.sl-markdown-content h3:not(:where(.not-content *)) {
		font-size: var(--sl-text-h3);
	}
	.sl-markdown-content h4:not(:where(.not-content *)) {
		font-size: var(--sl-text-h4);
	}
	.sl-markdown-content h5:not(:where(.not-content *)) {
		font-size: var(--sl-text-h5);
	}
	.sl-markdown-content h6:not(:where(.not-content *)) {
		font-size: var(--sl-text-h6);
	}

	.sl-markdown-content a:not(:where(.not-content *)) {
		color: var(--sl-color-text-accent);
	}
	.sl-markdown-content a:hover:not(:where(.not-content *)) {
		color: var(--sl-color-white);
	}

	.sl-markdown-content code:not(:where(.not-content *)) {
		background-color: var(--sl-color-bg-inline-code);
		margin-block: -0.125rem;
		padding: 0.125rem 0.375rem;
		font-size: var(--sl-text-code-sm);
	}
	.sl-markdown-content :is(h1, h2, h3, h4, h5, h6) code {
		font-size: inherit;
	}

	.sl-markdown-content pre:not(:where(.not-content *)) {
		border: 1px solid var(--sl-color-gray-5);
		padding: 0.75rem 1rem;
		font-size: var(--sl-text-code);
		tab-size: 2;
	}

	.sl-markdown-content pre code:not(:where(.not-content *)) {
		all: unset;
		font-family: var(--__sl-font-mono);
	}

	.sl-markdown-content blockquote:not(:where(.not-content *)) {
		border-inline-start: 1px solid var(--sl-color-gray-5);
		padding-inline-start: 1rem;
	}

	/* Table styling */
	.sl-markdown-content table:not(:where(.not-content *)) {
		display: block;
		overflow: auto;
		border-spacing: 0;
	}
	.sl-markdown-content :is(th, td):not(:where(.not-content *)) {
		border-bottom: 1px solid var(--sl-color-gray-5);
		padding: 0.5rem 1rem;
		/* Align text to the top of the row in multiline tables. */
		vertical-align: baseline;
	}
	.sl-markdown-content :is(th:first-child, td:first-child):not(:where(.not-content *)) {
		padding-inline-start: 0;
	}
	.sl-markdown-content :is(th:last-child, td:last-child):not(:where(.not-content *)) {
		padding-inline-end: 0;
	}
	.sl-markdown-content th:not(:where(.not-content *)) {
		color: var(--sl-color-white);
		font-weight: 600;
	}
	/* Align headings to the start of the line unless set by the `align` attribute. */
	.sl-markdown-content th:not([align]):not(:where(.not-content *)) {
		text-align: start;
	}
	/* <table>s, <hr>s, and <blockquote>s inside asides */
	.sl-markdown-content .starlight-aside :is(th, td, hr, blockquote):not(:where(.not-content *)) {
		border-color: var(--sl-color-gray-4);
	}
	@supports (
		border-color: color-mix(in srgb, var(--sl-color-asides-text-accent) 30%, transparent)
	) {
		.sl-markdown-content .starlight-aside :is(th, td, hr, blockquote):not(:where(.not-content *)) {
			border-color: color-mix(in srgb, var(--sl-color-asides-text-accent) 30%, transparent);
		}
	}

	/* <code> inside asides */
	@supports (
		border-color: color-mix(in srgb, var(--sl-color-asides-text-accent) 12%, transparent)
	) {
		.sl-markdown-content .starlight-aside code:not(:where(.not-content *)) {
			background-color: color-mix(in srgb, var(--sl-color-asides-text-accent) 12%, transparent);
		}
	}

	.sl-markdown-content hr:not(:where(.not-content *)) {
		border: 0;
		border-bottom: 1px solid var(--sl-color-hairline);
	}

	/* <details> and <summary> styles */
	.sl-markdown-content details:not(:where(.not-content *)) {
		--sl-details-border-color: var(--sl-color-gray-5);
		--sl-details-border-color--hover: var(--sl-color-text-accent);

		border-inline-start: 2px solid var(--sl-details-border-color);
		padding-inline-start: 1rem;
	}
	.sl-markdown-content details:not([open]):hover:not(:where(.not-content *)),
	.sl-markdown-content details:has(> summary:hover):not(:where(.not-content *)) {
		border-color: var(--sl-details-border-color--hover);
	}
	.sl-markdown-content summary:not(:where(.not-content *)) {
		color: var(--sl-color-white);
		cursor: pointer;
		display: block; /* Needed to hide the default marker in some browsers. */
		font-weight: 600;
		/* Expand the outline so that the marker cannot distort it. */
		margin-inline-start: -0.5rem;
		padding-inline-start: 0.5rem;
	}
	.sl-markdown-content details[open] > summary:not(:where(.not-content *)) {
		margin-bottom: 1rem;
	}

	/* <summary> marker styles */
	.sl-markdown-content summary:not(:where(.not-content *))::marker,
	.sl-markdown-content summary:not(:where(.not-content *))::-webkit-details-marker {
		display: none;
	}
	.sl-markdown-content summary:not(:where(.not-content *))::before {
		--sl-details-marker-size: 1.25rem;

		background-color: currentColor;
		content: '';
		display: inline-block;
		height: var(--sl-details-marker-size);
		width: var(--sl-details-marker-size);
		margin-inline: calc((var(--sl-details-marker-size) / 4) * -1) 0.25rem;
		vertical-align: middle;
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14.8 11.3 10.6 7a1 1 0 1 0-1.4 1.5l3.5 3.5-3.5 3.5a1 1 0 0 0 0 1.4 1 1 0 0 0 .7.3 1 1 0 0 0 .7-.3l4.2-4.2a1 1 0 0 0 0-1.4Z'/%3E%3C/svg%3E%0A");
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14.8 11.3 10.6 7a1 1 0 1 0-1.4 1.5l3.5 3.5-3.5 3.5a1 1 0 0 0 0 1.4 1 1 0 0 0 .7.3 1 1 0 0 0 .7-.3l4.2-4.2a1 1 0 0 0 0-1.4Z'/%3E%3C/svg%3E%0A");
		-webkit-mask-repeat: no-repeat;
		mask-repeat: no-repeat;
	}
	@media (prefers-reduced-motion: no-preference) {
		.sl-markdown-content summary:not(:where(.not-content *))::before {
			transition: transform 0.2s ease-in-out;
		}
	}
	.sl-markdown-content details[open] > summary:not(:where(.not-content *))::before {
		transform: rotateZ(90deg);
	}
	[dir='rtl'] .sl-markdown-content summary:not(:where(.not-content *))::before,
	.sl-markdown-content [dir='rtl'] summary:not(:where(.not-content *))::before {
		transform: rotateZ(180deg);
	}
	/* <summary> with only a paragraph automatically added when using MDX */
	.sl-markdown-content summary:not(:where(.not-content *)) p:only-child {
		display: inline;
	}

	/* <details> styles inside asides */
	.sl-markdown-content .starlight-aside details:not(:where(.not-content *)) {
		--sl-details-border-color: var(--sl-color-asides-border);
		--sl-details-border-color--hover: var(--sl-color-asides-text-accent);
	}
}
@layer starlight.core {
		[data-mobile-menu-expanded] {
			overflow: hidden;
		}

		@media (min-width: 50rem) {
			[data-mobile-menu-expanded] {
				overflow: auto;
			}
		}
	}@layer starlight.core{button:where(.astro-akqua2nk){position:fixed;top:calc((var(--sl-nav-height) - var(--sl-menu-button-size)) / 2);inset-inline-end:var(--sl-nav-pad-x);z-index:var(--sl-z-index-navbar);border:0;border-radius:50%;width:var(--sl-menu-button-size);height:var(--sl-menu-button-size);padding:0.5rem;background-color:var(--sl-color-white);color:var(--sl-color-black);box-shadow:var(--sl-shadow-md);cursor:pointer}:where(.astro-akqua2nk)[aria-expanded=true] button:where(.astro-akqua2nk){background-color:var(--sl-color-gray-2);box-shadow:none}:where(.astro-akqua2nk)[aria-expanded=true] button:where(.astro-akqua2nk) .open-menu:where(.astro-akqua2nk){display:none}:not([aria-expanded="true"]):where(.astro-akqua2nk) button:where(.astro-akqua2nk) .close-menu:where(.astro-akqua2nk){display:none}[data-theme="light"] button:where(.astro-akqua2nk){background-color:var(--sl-color-black);color:var(--sl-color-white)}[data-theme="light"] :where(.astro-akqua2nk)[aria-expanded=true] button:where(.astro-akqua2nk){background-color:var(--sl-color-gray-5)}}@layer starlight.core{.page:where(.astro-v52nmii2){flex-direction:column;min-height:100vh}.header:where(.astro-v52nmii2){z-index:var(--sl-z-index-navbar);position:fixed;inset-inline-start:0;inset-block-start:0;width:100%;height:var(--sl-nav-height);border-bottom:1px solid var(--sl-color-hairline-shade);padding:var(--sl-nav-pad-y) var(--sl-nav-pad-x);padding-inline-end:var(--sl-nav-pad-x);background-color:var(--sl-color-bg-nav)}[data-has-sidebar] .header:where(.astro-v52nmii2){padding-inline-end:calc(var(--sl-nav-gap) + var(--sl-nav-pad-x) + var(--sl-menu-button-size))}.sidebar-pane:where(.astro-v52nmii2){visibility:var(--sl-sidebar-visibility, hidden);position:fixed;z-index:var(--sl-z-index-menu);inset-block:var(--sl-nav-height) 0;inset-inline-start:0;width:100%;background-color:var(--sl-color-black);overflow-y:auto}[aria-expanded="true"]~.sidebar-pane:where(.astro-v52nmii2){--sl-sidebar-visibility: visible}.sidebar-content:where(.astro-v52nmii2){height:100%;min-height:max-content;padding:1rem var(--sl-sidebar-pad-x) 0;flex-direction:column;gap:1rem}@media (min-width: 50rem){.sidebar-content:where(.astro-v52nmii2)::after{content:"";padding-bottom:1px}}.main-frame:where(.astro-v52nmii2){padding-top:calc(var(--sl-nav-height) + var(--sl-mobile-toc-height));padding-inline-start:var(--sl-content-inline-start)}@media (min-width: 50rem){[data-has-sidebar] .header:where(.astro-v52nmii2){padding-inline-end:var(--sl-nav-pad-x)}.sidebar-pane:where(.astro-v52nmii2){--sl-sidebar-visibility: visible;width:var(--sl-sidebar-width);background-color:var(--sl-color-bg-sidebar);border-inline-end:1px solid var(--sl-color-hairline-shade)}}}@layer starlight.core{ul:where(.astro-d7vv7q3w){padding:0;list-style:none}a:where(.astro-d7vv7q3w){--pad-inline: 0.5rem;display:block;border-radius:0.25rem;padding-block:0.25rem;padding-inline:calc(1rem * var(--depth) + var(--pad-inline)) var(--pad-inline);line-height:1.25}a:where(.astro-d7vv7q3w)[aria-current=true]{color:var(--sl-color-text-accent)}.isMobile:where(.astro-d7vv7q3w) a:where(.astro-d7vv7q3w){--pad-inline: 1rem;display:flex;justify-content:space-between;gap:var(--pad-inline);border-top:1px solid var(--sl-color-gray-6);border-radius:0;padding-block:0.5rem;color:var(--sl-color-text);font-size:var(--sl-text-sm);text-decoration:none;outline-offset:var(--sl-outline-offset-inside)}.isMobile:where(.astro-d7vv7q3w):first-child>li:where(.astro-d7vv7q3w):first-child>a:where(.astro-d7vv7q3w){border-top:0}.isMobile:where(.astro-d7vv7q3w) a:where(.astro-d7vv7q3w)[aria-current=true],.isMobile:where(.astro-d7vv7q3w) a:where(.astro-d7vv7q3w)[aria-current=true]:hover,.isMobile:where(.astro-d7vv7q3w) a:where(.astro-d7vv7q3w)[aria-current=true]:focus{color:var(--sl-color-white);background-color:unset}.isMobile:where(.astro-d7vv7q3w) a:where(.astro-d7vv7q3w)[aria-current=true]::after{content:"";width:1rem;background-color:var(--sl-color-text-accent);-webkit-mask-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNCAxNCc+PHBhdGggZD0nTTEwLjkxNCA0LjIwNmEuNTgzLjU4MyAwIDAgMC0uODI4IDBMNS43NCA4LjU1NyAzLjkxNCA2LjcyNmEuNTk2LjU5NiAwIDAgMC0uODI4Ljg1N2wyLjI0IDIuMjRhLjU4My41ODMgMCAwIDAgLjgyOCAwbDQuNzYtNC43NmEuNTgzLjU4MyAwIDAgMCAwLS44NTdaJy8+PC9zdmc+Cg==);mask-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNCAxNCc+PHBhdGggZD0nTTEwLjkxNCA0LjIwNmEuNTgzLjU4MyAwIDAgMC0uODI4IDBMNS43NCA4LjU1NyAzLjkxNCA2LjcyNmEuNTk2LjU5NiAwIDAgMC0uODI4Ljg1N2wyLjI0IDIuMjRhLjU4My41ODMgMCAwIDAgLjgyOCAwbDQuNzYtNC43NmEuNTgzLjU4MyAwIDAgMCAwLS44NTdaJy8+PC9zdmc+Cg==);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;flex-shrink:0}}@layer starlight.core{nav:where(.astro-cay476nr){position:fixed;z-index:var(--sl-z-index-toc);top:calc(var(--sl-nav-height) - 1px);inset-inline:0;border-top:1px solid var(--sl-color-gray-5);background-color:var(--sl-color-bg-nav)}@media (min-width: 50rem){nav:where(.astro-cay476nr){inset-inline-start:var(--sl-content-inline-start, 0)}}summary:where(.astro-cay476nr){gap:0.5rem;align-items:center;height:var(--sl-mobile-toc-height);border-bottom:1px solid var(--sl-color-hairline-shade);padding:0.5rem 1rem;font-size:var(--sl-text-xs);outline-offset:var(--sl-outline-offset-inside)}summary:where(.astro-cay476nr)::marker,summary:where(.astro-cay476nr)::-webkit-details-marker{display:none}.toggle:where(.astro-cay476nr){flex-shrink:0;gap:1rem;align-items:center;justify-content:space-between;border:1px solid var(--sl-color-gray-5);border-radius:0.5rem;padding-block:0.5rem;padding-inline-start:0.75rem;padding-inline-end:0.5rem;line-height:1;background-color:var(--sl-color-black);user-select:none;cursor:pointer}details:where(.astro-cay476nr)[open] .toggle:where(.astro-cay476nr){color:var(--sl-color-white);border-color:var(--sl-color-accent)}details:where(.astro-cay476nr) .toggle:where(.astro-cay476nr):hover{color:var(--sl-color-white);border-color:var(--sl-color-gray-2)}[dir="rtl"] .caret:where(.astro-cay476nr){transform:rotateZ(180deg)}details:where(.astro-cay476nr)[open] .caret:where(.astro-cay476nr){transform:rotateZ(90deg)}.display-current:where(.astro-cay476nr){white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:var(--sl-color-white)}.dropdown:where(.astro-cay476nr){--border-top: 1px;margin-top:calc(-1 * var(--border-top));border:var(--border-top) solid var(--sl-color-gray-6);border-top-color:var(--sl-color-hairline-shade);max-height:calc(85vh - var(--sl-nav-height) - var(--sl-mobile-toc-height));overflow-y:auto;background-color:var(--sl-color-black);box-shadow:var(--sl-shadow-md);overscroll-behavior:contain}}@layer starlight.core{.right-sidebar-panel:where(.astro-cjmp4zh6){padding:1rem var(--sl-sidebar-pad-x)}.sl-container:where(.astro-cjmp4zh6){width:calc(var(--sl-sidebar-width) - 2 * var(--sl-sidebar-pad-x))}.right-sidebar-panel:where(.astro-cjmp4zh6) h2{color:var(--sl-color-white);font-size:var(--sl-text-h5);font-weight:600;line-height:var(--sl-line-height-headings);margin-bottom:0.5rem}.right-sidebar-panel:where(.astro-cjmp4zh6) :where(a){display:block;font-size:var(--sl-text-xs);text-decoration:none;color:var(--sl-color-gray-3);overflow-wrap:anywhere}.right-sidebar-panel:where(.astro-cjmp4zh6) :where(a):hover{color:var(--sl-color-white)}@media (min-width: 72rem){.sl-container:where(.astro-cjmp4zh6){max-width:calc(((100vw - var(--sl-sidebar-width) - 2 * var(--sl-content-pad-x) - 2 * var(--sl-sidebar-pad-x)) * 0.25))}}}@layer starlight.core{h1:where(.astro-zrkjgcis){margin-top:1rem;font-size:var(--sl-text-h1);line-height:var(--sl-line-height-headings);font-weight:600;color:var(--sl-color-white)}}p:where(.astro-nabvmdom){display:flex;align-items:center;gap:0.5rem}div:where(.astro-nabvmdom){margin-top:0.5rem!important;display:flex;flex-wrap:wrap;align-items:center;gap:0.5rem 1rem;font-size:var(--sl-text-xs)}a:where(.astro-nabvmdom){color:var(--sl-color-text-accent)}@layer starlight.core{.social-icons:where(.astro-h37ckrmh){display:flex;margin-inline-end:auto;gap:1rem;align-items:center;padding-block:1rem}.social-icons:where(.astro-h37ckrmh):empty{display:none}.mobile-preferences:where(.astro-h37ckrmh){justify-content:space-between;flex-wrap:wrap;border-top:1px solid var(--sl-color-gray-6);column-gap:1rem;padding:0.5rem 0}}@layer starlight.core{sl-sidebar-state-persist:where(.astro-vnrqkwnn){display:contents}}@layer starlight.core{ul:where(.astro-7ev5y3zy){--sl-sidebar-item-padding-inline: 0.5rem;list-style:none;padding:0}li:where(.astro-7ev5y3zy){overflow-wrap:anywhere}ul:where(.astro-7ev5y3zy) ul:where(.astro-7ev5y3zy) li:where(.astro-7ev5y3zy){margin-inline-start:var(--sl-sidebar-item-padding-inline);border-inline-start:1px solid var(--sl-color-hairline-light);padding-inline-start:var(--sl-sidebar-item-padding-inline)}.large:where(.astro-7ev5y3zy){font-size:var(--sl-text-lg);font-weight:600;color:var(--sl-color-white)}.top-level:where(.astro-7ev5y3zy)>li:where(.astro-7ev5y3zy)+li:where(.astro-7ev5y3zy){margin-top:0.75rem}summary:where(.astro-7ev5y3zy){display:flex;align-items:center;justify-content:space-between;padding:0.2em var(--sl-sidebar-item-padding-inline);line-height:1.4;cursor:pointer;user-select:none}summary:where(.astro-7ev5y3zy)::marker,summary:where(.astro-7ev5y3zy)::-webkit-details-marker{display:none}.caret:where(.astro-7ev5y3zy){transition:transform 0.2s ease-in-out;flex-shrink:0}[dir="rtl"] .caret:where(.astro-7ev5y3zy){transform:rotateZ(180deg)}:where(.astro-7ev5y3zy)[open]>summary:where(.astro-7ev5y3zy) .caret:where(.astro-7ev5y3zy){transform:rotateZ(90deg)}a:where(.astro-7ev5y3zy){display:block;border-radius:0.25rem;text-decoration:none;color:var(--sl-color-gray-2);padding:0.3em var(--sl-sidebar-item-padding-inline);line-height:1.4}a:where(.astro-7ev5y3zy):hover,a:where(.astro-7ev5y3zy):focus{color:var(--sl-color-white)}:where(.astro-7ev5y3zy)[aria-current=page],:where(.astro-7ev5y3zy)[aria-current=page]:hover,:where(.astro-7ev5y3zy)[aria-current=page]:focus{font-weight:600;color:var(--sl-color-text-invert);background-color:var(--sl-color-text-accent)}a:where(.astro-7ev5y3zy)>:where(.astro-7ev5y3zy):not(:last-child),.group-label:where(.astro-7ev5y3zy)>:where(.astro-7ev5y3zy):not(:last-child){margin-inline-end:0.25em}@media (min-width: 50rem){.top-level:where(.astro-7ev5y3zy)>li:where(.astro-7ev5y3zy)+li:where(.astro-7ev5y3zy){margin-top:0.5rem}.large:where(.astro-7ev5y3zy){font-size:var(--sl-text-base)}a:where(.astro-7ev5y3zy){font-size:var(--sl-text-sm)}}}@layer starlight.core{a:where(.astro-jpzupcp2){clip:rect(0,0,0,0);position:fixed;top:0.75rem;inset-inline-start:0.75rem}a:where(.astro-jpzupcp2):focus{clip:unset;z-index:var(--sl-z-index-skiplink);display:block;padding:0.5rem 1rem;text-decoration:none;color:var(--sl-color-text-invert);background-color:var(--sl-color-text-accent);box-shadow:var(--sl-shadow-lg)}}@layer starlight.core{.main-pane:where(.astro-5lf2ozjl){isolation:isolate}@media (min-width: 72rem){.right-sidebar-container:where(.astro-5lf2ozjl){order:2;position:relative;width:calc(var(--sl-sidebar-width) + (100% - var(--sl-content-width) - var(--sl-sidebar-width)) / 2)}.right-sidebar:where(.astro-5lf2ozjl){position:fixed;top:0;border-inline-start:1px solid var(--sl-color-hairline);padding-top:var(--sl-nav-height);width:100%;height:100vh;overflow-y:auto;scrollbar-width:none}.main-pane:where(.astro-5lf2ozjl){width:100%}[data-has-sidebar][data-has-toc] .main-pane:where(.astro-5lf2ozjl){--sl-content-margin-inline: auto 0;order:1;width:calc(var(--sl-content-width) + (100% - var(--sl-content-width) - var(--sl-sidebar-width)) / 2)}}}html:not([data-has-toc]){--sl-mobile-toc-height: 0rem}html:not([data-has-sidebar]){--sl-content-width: 67.5rem}html{scroll-padding-top:calc(1.5rem + var(--sl-nav-height) + var(--sl-mobile-toc-height))}main:where(.astro-ld4vaidi){padding:var(--sl-main-pad)}@media (min-width: 50em){:where(.astro-ld4vaidi)[data-has-sidebar]{--sl-content-inline-start: var(--sl-sidebar-width)}}@media (min-width: 72em){html{scroll-padding-top:calc(1.5rem + var(--sl-nav-height))}}