@layer theme {
	:root {
		--color-red-50: oklch(97.1% 0.013 17.38);
		--color-red-800: oklch(44.4% 0.177 26.899);
		--color-red-950: oklch(25.8% 0.092 26.042);
		--color-amber-50: oklch(98.7% 0.022 95.277);
		--color-amber-400: oklch(82.8% 0.189 84.429);
		--color-amber-800: oklch(47.3% 0.137 46.201);
		--color-amber-900: oklch(41.4% 0.112 45.904);
		--color-lime-50: oklch(98.6% 0.031 120.757);
		--color-lime-700: oklch(53.2% 0.157 131.589);
		--color-lime-950: oklch(27.4% 0.072 132.109);
		--color-cyan-50: oklch(98.4% 0.019 200.873);
		--color-cyan-800: oklch(45% 0.085 224.283);
		--color-cyan-900: oklch(39.8% 0.07 227.392);
		--color-violet-900: oklch(38% 0.189 293.745);
		--color-neutral-200: oklch(92.2% 0 0);
		--color-neutral-300: oklch(87% 0 0);
		--color-neutral-400: oklch(70.8% 0 0);
		--color-neutral-500: oklch(55.6% 0 0);
		--color-neutral-600: oklch(43.9% 0 0);
		--color-neutral-700: oklch(37.1% 0 0);
		--color-neutral-800: oklch(26.9% 0 0);
		--color-inherit: inherit;
		--color-transparent: transparent;
		--color-black: #000;
		--color-white: #fff;
		--spacing: 0.25rem;
		--container-2xs: 18rem;
		--container-xs: 20rem;
		--container-5xl: 64rem;
		--text-sm: 0.875rem;
		--leading-sm: calc(1.25 / 0.875);
		--text-base: 1rem;
		--leading-base: calc(1.5 / 1);
		--text-lg: 1.125rem;
		--leading-lg: calc(1.75 / 1.125);
		--text-xl: 1.25rem;
		--leading-xl: calc(1.75 / 1.25);
		--text-2xl: 1.5rem;
		--leading-2xl: calc(2 / 1.5);
		--text-3xl: 1.875rem;
		--leading-3xl: calc(2.25 / 1.875);
		--text-4xl: 2.25rem;
		--leading-4xl: calc(2.5 / 2.25);
		--font-weight-bold: 700;
		--radius-sm: 0.25rem;
		--default-font-family: var(--font-sans, initial);
		--default-font-feature-settings: var(--font-sans--font-feature-settings, initial);
		--default-font-variation-settings: var(--font-sans--font-variation-settings, initial);
		--default-mono-font-family: var(--font-mono, initial);
		--default-mono-font-feature-settings: var(--font-mono--font-feature-settings, initial);
		--default-mono-font-variation-settings: var(--font-mono--font-variation-settings, initial);
	}
	@font-face {
		font-family: "Titillium Web";
		font-weight: 400;
		src: url(TitilliumWeb-Regular.woff) format("woff");
	}
	@font-face {
		font-family: "Titillium Web";
		font-weight: 400;
		font-style: italic;
		src: url(TitilliumWeb-Italic.woff) format("woff");
	}
	@font-face {
		font-family: "Titillium Web";
		font-weight: 600;
		src: url(TitilliumWeb-SemiBold.woff) format("woff");
	}
	@font-face {
		font-family: "Titillium Web";
		font-weight: 700;
		src: url(TitilliumWeb-Bold.woff) format("woff");
	}
	@font-face {
		font-family: "Titillium Web";
		font-weight: 700;
		font-style: italic;
		src: url(TitilliumWeb-BoldItalic.woff) format("woff");
	}
	@font-face {
		font-family: "Go Mono";
		font-weight: 400;
		src: url(GoMono-Regular.woff) format("woff");
	}
	@font-face {
		font-family: "Go Mono";
		font-weight: 400;
		font-style: italic;
		src: url(GoMono-Italic.woff) format("woff");
	}
	@font-face {
		font-family: "Go Mono";
		font-weight: 700;
		src: url(GoMono-Bold.woff) format("woff");
	}
	@font-face {
		font-family: "Go Mono";
		font-weight: 700;
		font-style: italic;
		src: url(GoMono-BoldItalic.woff) format("woff");
	}
	:root {
		--font-sans: "Titillium Web", sans-serif;
		--font-mono: "Go Mono", monospace;
	}
}
@layer base {
	*, ::after, ::before, ::backdrop, ::file-selector-button {
		margin: 0;
		padding: 0;
		border: 0 solid;
	}
	html, :host {
		line-height: 1.5;
		-webkit-text-size-adjust: 100%;
		tab-size: 4;
		font-family: var( --default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" );
		font-feature-settings: var(--default-font-feature-settings, normal);
		font-variation-settings: var(--default-font-variation-settings, normal);
		-webkit-tap-highlight-color: transparent;
	}
	hr {
		height: 0;
		color: inherit;
		border-top-width: 1px;
	}
	abbr:where([title]) {
		-webkit-text-decoration: underline dotted;
		text-decoration: underline dotted;
	}
	h1, h2, h3, h4, h5, h6 {
		font-size: inherit;
		font-weight: inherit;
	}
	a {
		color: inherit;
		-webkit-text-decoration: inherit;
		text-decoration: inherit;
	}
	b, strong {
		font-weight: bolder;
	}
	code, kbd, samp, pre {
		font-family: var( --default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace );
		font-feature-settings: var(--default-mono-font-feature-settings, normal);
		font-variation-settings: var(--default-mono-font-variation-settings, normal);
		font-size: 1em;
	}
	small {
		font-size: 80%;
	}
	sub, sup {
		font-size: 75%;
		line-height: 0;
		position: relative;
		vertical-align: baseline;
	}
	sub {
		bottom: -0.25em;
	}
	sup {
		top: -0.5em;
	}
	table {
		text-indent: 0;
		border-color: inherit;
		border-collapse: collapse;
	}
	:-moz-focusring {
		outline: auto;
	}
	progress {
		vertical-align: baseline;
	}
	summary {
		display: list-item;
	}
	ol, ul, menu {
		list-style: none;
	}
	img, svg, video, canvas, audio, iframe, embed, object {
		display: block;
		vertical-align: middle;
	}
	img, video {
		max-width: 100%;
		height: auto;
	}
	button, input, select, optgroup, textarea, ::file-selector-button {
		font: inherit;
		font-feature-settings: inherit;
		font-variation-settings: inherit;
		letter-spacing: inherit;
		color: inherit;
		border-radius: 0;
		background-color: transparent;
		opacity: 1;
	}
	:where(select:is([multiple], [size])) optgroup {
		font-weight: bolder;
	}
	:where(select:is([multiple], [size])) optgroup option {
		padding-inline-start: 20px;
	}
	::file-selector-button {
		margin-inline-end: 4px;
	}
	::placeholder {
		opacity: 1;
	}
	@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {
		::placeholder {
			color: color-mix(in oklab, currentcolor 50%, transparent);
		}
	}
	textarea {
		resize: vertical;
	}
	::-webkit-search-decoration {
		-webkit-appearance: none;
	}
	::-webkit-date-and-time-value {
		min-height: 1lh;
		text-align: inherit;
	}
	::-webkit-datetime-edit {
		display: inline-flex;
	}
	::-webkit-datetime-edit-fields-wrapper {
		padding: 0;
	}
	::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
		padding-block: 0;
	}
	::-webkit-calendar-picker-indicator {
		line-height: 1;
	}
	:-moz-ui-invalid {
		box-shadow: none;
	}
	button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
		appearance: button;
	}
	::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
		height: auto;
	}
	[hidden]:where(:not([hidden="until-found"])) {
		display: none !important;
	}
}
@layer components {
	.prose {
		font-size: var(--text-base);
		line-height: var(--leading-base);
		h1 {
			font-size: var(--text-4xl);
			line-height: var(--leading-4xl);
			margin-bottom: calc(var(--spacing) * 3);
		}
		h2, h3, h4, h5, h6 {
			margin-top: calc(var(--spacing) * 6);
			margin-bottom: calc(var(--spacing) * 2);
		}
		h2 {
			font-size: var(--text-3xl);
			line-height: var(--leading-3xl);
		}
		h3 {
			font-size: var(--text-2xl);
			line-height: var(--leading-2xl);
		}
		h4 {
			font-size: var(--text-xl);
			line-height: var(--leading-xl);
		}
		h5, h6 {
			font-size: var(--text-base);
			line-height: var(--leading-base);
		}
		ul {
			list-style: disc;
		}
		ol {
			list-style: decimal;
		}
		ul, ol {
			margin-block: calc(var(--spacing) * 2);
			margin-inline-start: calc(var(--spacing) * 6);
		}
		:link, :visited {
			border-color: var(--color-cyan-900);
			border-style: dotted;
			border-bottom-width: 1px;
			@media (hover: hover) {
				&:hover {
					color: var(--color-amber-900);
					border-color: var(--color-amber-900);
				}
			}
		}
		:link {
			color: var(--color-cyan-900);
		}
		:visited {
			color: var(--color-violet-900);
		}
		p {
			margin-block: calc(var(--spacing) * 4);
		}
		pre {
			margin-block: calc(var(--spacing) * 4);
			padding: calc(var(--spacing) * 2) calc(var(--spacing) * 6);
			overflow-x: auto;
			overflow-y: hidden;
		}
		blockquote {
			margin-inline-start: calc(var(--spacing) * 8);
		}
		ul.simple p, ol.simple p {
			margin-block: 0;
		}
		code, tt {
			background-color: var(--color-cyan-50);
			color: var(--color-neutral-800);
			&.xref, :link &, :visited & {
				font-weight: var(--font-weight-bold);
			}
		}
		h1 code, h1 tt, h2 code, h2 tt, h3 code, h3 tt, h4 code, h4 tt, h5 code, h5 tt, h6 code, h6 tt {
			background-color: transparent;
			color: unset;
		}
		table {
			border-width: 1px;
			border-color: var(--color-neutral-500);
			margin-block: calc(var(--spacing) * 2);
			border-collapse: collapse;
		}
		th, td {
			border-width: 1px;
			border-color: var(--color-neutral-500);
			padding: calc(var(--spacing) * 1) calc(var(--spacing) * 3);
			&>:first-child {
				margin-top: 0;
			}
			&>:last-child {
				margin-bottom: 0;
			}
		}
		table.indextable {
			border-width: 0;
			th, td {
				border-width: 0;
				&>ul {
					padding-inline-start: 0;
				}
			}
			ul {
				list-style: none;
				margin-block: 0;
			}
		}
		dl {
			margin-bottom: calc(var(--spacing) * 3);
		}
		dd {
			margin-top: calc(var(--spacing) * 1);
			margin-bottom: calc(var(--spacing) * 2);
			margin-inline-start: calc(var(--spacing) * 8);
			&>:first-child {
				margin-top: 0;
			}
			&>:last-child {
				margin-bottom: 0;
			}
		}
		dl.field-list {
			display: grid;
			grid-template-columns: fit-content(30%) auto;
			&>dt {
				font-weight: var(--font-weight-bold);
				word-break: break-word;
				padding-inline-start: calc(var(--spacing) * 2);
				padding-inline-end: calc(var(--spacing) * 1);
			}
			&>dd {
				margin-block: 0;
				margin-inline-start: calc(var(--spacing) * 2);
			}
			ul {
				margin: 0;
				padding-inline-start: calc(var(--spacing) * 4);
			}
		}
		dl.glossary {
			&>dt {
				font-weight: var(--font-weight-bold);
				font-size: var(--text-lg);
				line-height: var(--leading-lg);
			}
		}
		.sig {
			font-family: var(--font-mono);
		}
		.sig-name {
			font-size: var(--text-lg);
			line-height: var(--leading-lg);
			font-weight: var(--font-weight-bold);
		}
		.sig-paren, .optional {
			font-size: var(--text-xl);
			line-height: var(--leading-xl);
		}
		.admonition {
			background-color: var(--color-neutral-200);
			margin-block: calc(var(--spacing) * 4);
			padding-block: calc(var(--spacing) * 2);
			padding-inline: calc(var(--spacing) * 6);
			border-width: 1px;
			border-color: var(--color-neutral-300);
			.admonition-title {
				font-size: var(--text-2xl);
				line-height: var(--leading-2xl);
				margin-bottom: calc(var(--spacing) * 2);
			}
		}
	}
	.headerlink {
		color: var(--color-neutral-300);
		padding-inline: calc(var(--spacing) * 1);
		visibility: hidden;
		@media (hover: hover) {
			&:hover {
				background-color: var(--color-neutral-200);
			}
			h1:hover &, h2:hover &, h3:hover &, h4:hover &, h5:hover &, h6:hover &, dt:hover &, caption:hover &, .caption:hover &, .code-block-caption:hover & {
				visibility: visible;
			}
		}
	}
	.grid-sidebar {
		display: grid;
		grid-template: "document" "sidebar" / minmax(0, 1fr);
		@media (width >= 940px) {
			grid-template: "sidebar document" / var(--container-2xs) minmax(0, 1fr);
		}
	}
	.toctree {
		.toctree-l2 {
			font-size: var(--text-sm);
			line-height: var(--leading-sm);
		}
		ul ul {
			list-style: square;
			margin-inline-start: calc(var(--spacing) * 4);
		}
		:link, :visited {
			color: var(--color-neutral-700);
			border-color: var(--color-neutral-400);
			border-style: dotted;
			border-bottom-width: 1px;
			@media (hover: hover) {
				&:hover {
					border-style: solid;
				}
			}
			code, tt {
				font-weight: var(--font-weight-bold);
			}
		}
		p {
			font-size: var(--text-sm);
			line-height: var(--leading-sm);
			color: var(--color-neutral-600);
			margin-block: calc(var(--spacing) * 2);
		}
	}
	.highlight-link {
		margin-block: calc(var(--spacing) * 2);
		:link, :visited {
			color: var(--color-neutral-700);
			border-color: var(--color-neutral-400);
			border-style: dotted;
			border-bottom-width: 1px;
		}
	}
	.highlighted {
		background-color: var(--color-amber-400);
	}
	#search-results {
		.context {
			color: var(--color-neutral-500);
			margin-top: calc(var(--spacing) * 0.5);
			margin-bottom: calc(var(--spacing) * 6);
		}
		:link, :visited {
			font-weight: var(--font-weight-bold);
		}
	}
}
@layer utilities {
	.p-2 {
		padding: calc(var(--spacing) * 2);
	}
	.px-2 {
		padding-inline: calc(var(--spacing) * 2);
	}
	.px-4 {
		padding-inline: calc(var(--spacing) * 4);
	}
	.py-1 {
		padding-block: calc(var(--spacing) * 1);
	}
	.py-2 {
		padding-block: calc(var(--spacing) * 2);
	}
	.ps-2 {
		padding-inline-start: calc(var(--spacing) * 2);
	}
	.ps-4 {
		padding-inline-start: calc(var(--spacing) * 4);
	}
	.pe-1 {
		padding-inline-end: calc(var(--spacing) * 1);
	}
	.pe-3 {
		padding-inline-end: calc(var(--spacing) * 3);
	}
	.mx-auto {
		margin-inline: auto;
	}
	.my-2 {
		margin-block: calc(var(--spacing) * 2);
	}
	.my-4 {
		margin-block: calc(var(--spacing) * 4);
	}
	.mt-10 {
		margin-top: calc(var(--spacing) * 10);
	}
	.mt-\[20px\] {
		margin-top: 20px;
	}
	.-mt-\[10px\] {
		margin-top: calc(10px * -1);
	}
	.mb-\[20px\] {
		margin-bottom: 20px;
	}
	.mb-\[30px\] {
		margin-bottom: 30px;
	}
	.mb-\[5px\] {
		margin-bottom: 5px;
	}
	.-mb-4 {
		margin-bottom: calc(var(--spacing) * 4 * -1);
	}
	.me-4 {
		margin-inline-end: calc(var(--spacing) * 4);
	}
	.bg-amber-50 {
		background-color: var(--color-amber-50);
	}
	.bg-lime-50 {
		background-color: var(--color-lime-50);
	}
	.bg-neutral-200 {
		background-color: var(--color-neutral-200);
	}
	.bg-red-50 {
		background-color: var(--color-red-50);
	}
	.bg-white {
		background-color: var(--color-white);
	}
	.text-2xl {
		font-size: var(--text-2xl);
		line-height: var(--leading-2xl);
	}
	.text-3xl {
		font-size: var(--text-3xl);
		line-height: var(--leading-3xl);
	}
	.text-\[120\%\] {
		color: 120%;
	}
	.text-amber-800 {
		color: var(--color-amber-800);
	}
	.text-black {
		color: var(--color-black);
	}
	.text-center {
		text-align: center;
	}
	.text-cyan-800 {
		color: var(--color-cyan-800);
	}
	.text-lime-700 {
		color: var(--color-lime-700);
	}
	.text-lime-950 {
		color: var(--color-lime-950);
	}
	.text-neutral-500 {
		color: var(--color-neutral-500);
	}
	.text-neutral-700 {
		color: var(--color-neutral-700);
	}
	.text-red-800 {
		color: var(--color-red-800);
	}
	.text-red-950 {
		color: var(--color-red-950);
	}
	.text-right {
		text-align: right;
	}
	.text-sm {
		font-size: var(--text-sm);
		line-height: var(--leading-sm);
	}
	.leading-\[30px\] {
		line-height: 30px;
	}
	.font-bold {
		font-weight: var(--font-weight-bold);
	}
	.underline {
		text-decoration-line: underline;
	}
	.w-\[940px\] {
		width: 940px;
	}
	.w-auto {
		width: auto;
	}
	.w-full {
		width: 100%;
	}
	.min-w-px {
		min-width: 1px;
	}
	.max-w-5xl {
		max-width: var(--container-5xl);
	}
	.max-w-xs {
		max-width: var(--container-xs);
	}
	.max-w-fit {
		max-width: fit-content;
	}
	.h-8 {
		height: calc(var(--spacing) * 8);
	}
	.h-\[35px\] {
		height: 35px;
	}
	.float-end {
		float: inline-end;
	}
	.border {
		border-width: 1px;
	}
	.border-dotted {
		border-style: dotted;
	}
	.border-neutral-300 {
		border-color: var(--color-neutral-300);
	}
	.border-neutral-400 {
		border-color: var(--color-neutral-400);
	}
	.border-y {
		border-block-width: 1px;
	}
	.border-t {
		border-top-width: 1px;
	}
	.border-b {
		border-bottom-width: 1px;
	}
	.border-s {
		border-inline-start-width: 1px;
	}
	.rounded-sm {
		border-radius: var(--radius-sm);
	}
	.rounded-full {
		border-radius: calc(infinity * 1px);
	}
	.rounded-s-full {
		border-start-start-radius: calc(infinity * 1px);
		border-end-start-radius: calc(infinity * 1px);
	}
	.rounded-e-full {
		border-start-end-radius: calc(infinity * 1px);
		border-end-end-radius: calc(infinity * 1px);
	}
	.hidden {
		display: none;
	}
	.inline {
		display: inline;
	}
	.block {
		display: block;
	}
	.flex {
		display: flex;
	}
	.flex-1 {
		flex: 1;
	}
	.flex-row {
		flex-direction: row;
	}
	.grid-area-\[document\] {
		grid-area: document;
	}
	.grid-area-\[sidebar\] {
		grid-area: sidebar;
	}
	.gap-2 {
		gap: calc(var(--spacing) * 2);
	}
	.gap-4 {
		gap: calc(var(--spacing) * 4);
	}
	.wrap-break-word {
		overflow-wrap: break-word;
	}
	.absolute {
		position: absolute;
	}
	.top-0 {
		top: calc(var(--spacing) * 0);
	}
	.right-0 {
		right: calc(var(--spacing) * 0);
	}
	.items-center {
		align-items: center;
	}
	.items-stretch {
		align-items: stretch;
	}
	.justify-start {
		justify-content: flex-start;
	}
	.lg\:my-0 {
		@media (width >= 940px) {
			margin-block: calc(var(--spacing) * 0);
		}
	}
	.lg\:mt-\[30px\] {
		@media (width >= 940px) {
			margin-top: 30px;
		}
	}
	.lg\:me-0 {
		@media (width >= 940px) {
			margin-inline-end: calc(var(--spacing) * 0);
		}
	}
	.lg\:bg-transparent {
		@media (width >= 940px) {
			background-color: var(--color-transparent);
		}
	}
	.lg\:text-inherit {
		@media (width >= 940px) {
			color: var(--color-inherit);
		}
	}
	.lg\:max-h-full {
		@media (width >= 940px) {
			max-height: 100%;
		}
	}
	.lg\:inline {
		@media (width >= 940px) {
			display: inline;
		}
	}
	.lg\:block {
		@media (width >= 940px) {
			display: block;
		}
	}
	.lg\:overflow-y-auto {
		@media (width >= 940px) {
			overflow-y: auto;
		}
	}
	.noscript\:hidden {
		@media (scripting: none) {
			display: none;
		}
	}
}
