:root {
	color-scheme: light;
	--frontmark-color-scheme: light;
	--frontmark-theme-name: old;
	--frontmark-font-text: "Lucida Grande", Geneva, Verdana, Arial, Helvetica, sans-serif;
	--frontmark-font-mono: "Roboto Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
	--frontmark-font-menu: "Limousines", "Champagne & Limousines", "Trebuchet MS", Tahoma, Arial, sans-serif;
	--frontmark-font-heading: "Limousines", "Champagne & Limousines", "Trebuchet MS", Tahoma, Arial, sans-serif;
	--frontmark-theme-ink: #f6f4f1;
	--frontmark-theme-night: #ffffff;
	--frontmark-theme-deep: #e8e6e8;
	--frontmark-theme-panel: #ffffff;
	--frontmark-theme-panel-soft: #f5f5f5;
	--frontmark-theme-accent: #bb3333;
	--frontmark-theme-accent-bright: #d04747;
	--frontmark-theme-accent-soft: #7e1b26;
	--frontmark-theme-steel: #2c3e50;
	--frontmark-theme-text: #333333;
	--frontmark-theme-muted: #666666;
	--frontmark-theme-header: #1a252f;
	--frontmark-theme-warning: #c89302;
	--frontmark-theme-danger: #bb3333;
	--frontmark-ink: var(--frontmark-theme-ink);
	--frontmark-night: var(--frontmark-theme-night);
	--frontmark-deep: var(--frontmark-theme-deep);
	--frontmark-panel: var(--frontmark-theme-panel);
	--frontmark-panel-soft: var(--frontmark-theme-panel-soft);
	--frontmark-cyan: var(--frontmark-theme-accent);
	--frontmark-cyan-bright: var(--frontmark-theme-accent-bright);
	--frontmark-cyan-soft: var(--frontmark-theme-accent-soft);
	--frontmark-steel: var(--frontmark-theme-steel);
	--frontmark-text: var(--frontmark-theme-text);
	--frontmark-muted: var(--frontmark-theme-muted);
	--frontmark-header: var(--frontmark-theme-header);
	--frontmark-yellow: var(--frontmark-theme-warning);
	--frontmark-danger: var(--frontmark-theme-danger);
	--frontmark-readable-link: var(--frontmark-theme-accent);
	--frontmark-admonition-background-base: var(--frontmark-panel-soft);
	--frontmark-admonition-background-tint: 12%;
	--frontmark-body-background:
		linear-gradient(180deg, #e9e7e9 0 18rem, #ffffff 18rem 100%);
	--frontmark-header-background:
		linear-gradient(180deg, #ffffff 0 62%, #eef1ed 62% 100%);
	--frontmark-header-text: #1a252f;
	--frontmark-header-border: rgba(44, 62, 80, 0.18);
	--frontmark-theme-nav-height: 82px;
	--frontmark-theme-nav-height-minimized: 54px;
	--frontmark-menu-title-size: 35px;
	--frontmark-menu-title-size-minimized: 24px;
	--frontmark-logo-size: 60px;
	--frontmark-logo-size-minimized: 38px;
	--frontmark-brand-align: flex-start;
	--frontmark-brand-text-align: left;
	--frontmark-header-radius: 0;
	--frontmark-header-shadow: 0 0.25rem 1rem rgba(26, 37, 47, 0.18);
	--frontmark-theme-toolbar-background: rgba(255, 255, 255, 0.96);
	--frontmark-theme-toolbar-border: rgba(44, 62, 80, 0.18);
	--frontmark-theme-toolbar-group-background: #f7f7f7;
	--frontmark-theme-toolbar-group-border: rgba(44, 62, 80, 0.16);
	--frontmark-theme-toolbar-group-text: #2c3e50;
	--frontmark-theme-toolbar-button-background: #ffffff;
	--frontmark-theme-toolbar-button-text: #1a252f;
	--frontmark-theme-toolbar-button-border: rgba(44, 62, 80, 0.18);
	--frontmark-theme-toolbar-button-hover-background: #f4e5e5;
	--frontmark-theme-toolbar-active-background: #bb3333;
	--frontmark-theme-toolbar-active-border: #7e1b26;
	--frontmark-header-icon-background: #1a252f;
	--frontmark-header-icon-hover-background: #bb3333;
	--frontmark-header-icon-text: #ffffff;
	--frontmark-header-icon-hover-text: #ffffff;
	--frontmark-mobile-menu-button-background: #1a252f;
	--frontmark-mobile-menu-button-hover-background: #bb3333;
	--frontmark-mobile-menu-button-text: #ffffff;
	--frontmark-page-tools-background: #ffffff;
	--frontmark-page-tools-border: rgba(44, 62, 80, 0.18);
	--frontmark-page-tools-text: #666666;
	--frontmark-page-tools-qr-background: #ffffff;
	--frontmark-page-tools-qr-foreground: #1a252f;
	--frontmark-page-tools-action-background: #f7f7f7;
	--frontmark-page-tools-action-border: rgba(44, 62, 80, 0.18);
	--frontmark-page-tools-action-text: #1a252f;
	--frontmark-page-tools-action-hover-background: #bb3333;
	--frontmark-page-tools-action-hover-text: #ffffff;
	--frontmark-footer-background: #1a252f;
	--frontmark-footer-fixed-background: #1a252f;
	--frontmark-footer-icon-gap: 0.28rem;
	--frontmark-footer-social-size: 2.15rem;
	--frontmark-footer-social-icon-size: 1.08rem;
	--frontmark-footer-social-border-width: 0;
	--frontmark-footer-border: rgba(255, 255, 255, 0.12);
	--frontmark-footer-text: #d9dde1;
	--frontmark-footer-strong-text: #ffffff;
	--frontmark-footer-muted-text: #a9b2bb;
	--frontmark-footer-link: #ffffff;
	--frontmark-footer-link-hover: #f18b8b;
	--frontmark-footer-social-background: rgba(255, 255, 255, 0.1);
	--frontmark-footer-social-border: rgba(255, 255, 255, 0.16);
	--frontmark-footer-social-text: #ffffff;
	--frontmark-footer-social-hover-background: #bb3333;
	--frontmark-footer-social-hover-border: #d04747;
	--frontmark-footer-social-hover-text: #ffffff;
	--frontmark-footer-inline-icon-border: 0;
	--frontmark-footer-inline-icon-background: var(--frontmark-footer-social-background);
	--frontmark-footer-inline-icon-hover-border: transparent;
	--frontmark-footer-inline-icon-hover-background: var(--frontmark-footer-social-hover-background);
	--frontmark-tag-text: #bb3333;
	--frontmark-tag-background: #fff5f5;
	--frontmark-tag-border: rgba(187, 51, 51, 0.26);
	--frontmark-tag-hover-text: #ffffff;
	--frontmark-tag-hover-background: #bb3333;
	--frontmark-tag-hover-border: #7e1b26;
	--frontmark-container-shadow-long-drop: 0.85rem 0.85rem 0 rgba(187, 51, 51, 0.16);
	--frontmark-container-shadow-hard: 0.45rem 0.45rem 0 rgba(26, 37, 47, 0.34);
	--frontmark-container-shadow-halo: 0 0 2rem rgba(187, 51, 51, 0.22);
	--frontmark-container-shadow-light: 0 0.65rem 1.65rem rgba(26, 37, 47, 0.14);
	--frontmark-starlight-header-font: var(--frontmark-font-text);
	--frontmark-starlight-nav-font: var(--frontmark-font-text);
	--sl-color-accent-low: #f1d6d6;
	--sl-color-accent: #bb3333;
	--sl-color-accent-high: #7e1b26;
}

:root body {
	background: var(--frontmark-body-background);
	color: var(--frontmark-theme-muted);
	font-family: var(--frontmark-font-text);
}

:root :where(header.header, .frontmark-header-shell) .site-title {
	font-family: var(--frontmark-font-heading);
	font-size: 24px;
	line-height: 42px;
}

:root :where(header.header, .frontmark-header-shell) .brand-title {
	font-size: 24px;
	line-height: 26.4px;
}

:root :where(header.header, .frontmark-header-shell) .brand-title strong {
	color: #bb3333;
	font-family: var(--frontmark-font-heading);
	font-weight: 700;
	letter-spacing: 0;
	line-height: 0.95;
	text-transform: none;
	text-shadow: 0 1px 0 #ffffff, 0 0.05rem 0.14rem rgba(26, 37, 47, 0.18);
}

:root :where(header.header, .frontmark-header-shell) .brand-title strong::after {
	content: "";
	position: absolute;
	inset-inline: 0;
	inset-block-end: -0.32rem;
	height: 1px;
	background: #bb3333;
	opacity: 0.5;
	pointer-events: none;
}

:root :where(header.header, .frontmark-header-shell) .brand-title small {
	color: #2c3e50;
	font-family: var(--frontmark-font-text);
	font-weight: 700;
}

:root :where(header.header, .frontmark-header-shell) .brand-version {
	border-color: rgba(187, 51, 51, 0.28);
	background: #fff5f5;
	color: #bb3333;
}

:root :where(header.header, .frontmark-header-shell) .frontmark-header-nav {
	font-family: var(--frontmark-font-text);
	line-height: 28px;
}

:root :where(header.header, .frontmark-header-shell) .frontmark-header-nav a {
	border-radius: 8px;
	color: #2c3e50;
	font-family: inherit;
	font-weight: 700;
}

:root .frontmark-header-nav a:hover,
:root .frontmark-header-nav a:focus-visible,
:root .frontmark-header-nav a[aria-current="page"] {
	border-color: #bb3333;
	background: #bb3333;
	color: #ffffff;
	box-shadow: none;
}

:root .frontmark-header-shell .brand-title strong,
:root .frontmark-header-shell .brand-name-long,
:root .frontmark-header-shell .brand-name-short {
	color: #bb3333 !important;
}

:root .frontmark-header-shell .brand-title strong::after {
	background: #bb3333;
	opacity: 0.68;
}

:root .frontmark-header-shell .frontmark-header-nav a {
	color: #bb3333 !important;
}

:root .frontmark-header-shell .frontmark-header-nav a:hover,
:root .frontmark-header-shell .frontmark-header-nav a:focus-visible,
:root .frontmark-header-shell .frontmark-header-nav a[aria-current="page"] {
	border-color: #bb3333;
	background: #bb3333;
	color: #ffffff !important;
}

:root .frontmark-header-search site-search button,
:root .frontmark-social-link,
:root .frontmark-header-menu summary,
:root .frontmark-header-menu-search-button,
:root .frontmark-theme-toggle-button {
	border-color: #1a252f;
	background: #1a252f;
	color: #ffffff;
}

:root .frontmark-header-search site-search button span {
	color: rgba(255, 255, 255, 0.76);
}

:root .frontmark-header-search site-search button kbd {
	border-color: rgba(255, 255, 255, 0.5);
	background: #ffffff;
	color: #1a252f;
}

:root .frontmark-header-search site-search button:hover,
:root .frontmark-social-link:hover,
:root .frontmark-social-link:focus-visible,
:root .frontmark-header-menu summary:hover,
:root .frontmark-header-menu summary:focus-visible,
:root .frontmark-header-menu-search-button:hover,
:root .frontmark-header-menu-search-button:focus-visible,
:root .frontmark-theme-toggle-button:hover,
:root .frontmark-theme-toggle-button:focus-visible {
	border-color: #bb3333;
	background: #bb3333;
	color: #ffffff;
}

:root .frontmark-header-menu-panel {
	border-color: rgba(26, 37, 47, 0.2);
	background: #ffffff;
	color: #333333;
	box-shadow: 0 1.1rem 2.6rem rgba(26, 37, 47, 0.24);
}

:root .frontmark-header-menu-panel a {
	color: #2c3e50;
}

:root .frontmark-header-menu-panel .frontmark-header-menu-actions {
	border-bottom-color: rgba(26, 37, 47, 0.12);
}

:root .frontmark-header-menu-panel a:hover,
:root .frontmark-header-menu-panel a:focus-visible,
:root .frontmark-header-menu-panel a[aria-current="page"] {
	background: #bb3333;
	color: #ffffff;
}

:root .site-main,
:root .content-main,
:root .main-pane {
	background: #ffffff;
}

:root .content-main {
	border-inline: 1px solid rgba(26, 37, 47, 0.08);
	box-shadow: 0 0 1.15rem rgba(26, 37, 47, 0.12);
}

:root :is(.prose, .sl-markdown-content, .main-pane) {
	margin: 20px;
	color: #666666;
	font-family: var(--frontmark-font-text);
	line-height: 1.65;
}

:root :is(.prose, .sl-markdown-content, .main-pane) :is(h1, h2, h3, h4) {
	color: #111111;
	font-family: var(--frontmark-font-heading);
	font-weight: 700;
	letter-spacing: 0;
	line-height: 0.98;
}

:root :is(.prose, .sl-markdown-content, .main-pane) h1 {
	color: #bb3333;
	font-size: clamp(2.15rem, 4.4vw, 3.3rem);
	text-shadow: 0 1px 0 #ffffff;
}

:root :is(.prose, .sl-markdown-content, .main-pane) h2 {
	color: #111111;
	font-size: clamp(1.7rem, 3vw, 2.25rem);
}

:root :is(.prose, .sl-markdown-content, .main-pane) h2::first-letter {
	color: #bb3333;
}

:root :is(.prose, .sl-markdown-content, .main-pane) h3 {
	color: #2c3e50;
	font-size: clamp(1.3rem, 2.3vw, 1.72rem);
}

:root .sl-markdown-content :is(.sl-heading-wrapper > h2, h2):not(:where(.not-content *)) {
	color: #111111 !important;
	font-family: var(--frontmark-font-heading) !important;
	font-weight: 700;
	letter-spacing: 0;
}

:root .sl-markdown-content .sl-heading-wrapper.level-h2 > h2:not(:where(.not-content *)) {
	display: inline-block !important;
}

:root .sl-markdown-content :is(.sl-heading-wrapper.level-h2 > h2, h2):not(:where(.not-content *))::first-letter {
	color: #bb3333 !important;
}

:root :is(.prose, .sl-markdown-content) a {
	color: #bb3333;
}

:root :is(.prose, .sl-markdown-content) a:hover,
:root :is(.prose, .sl-markdown-content) a:focus-visible {
	color: #000000;
}

:root .sl-markdown-content .mkdocs-tag,
:root .prose .mkdocs-tag {
	border-color: var(--frontmark-tag-border);
	background: var(--frontmark-tag-background);
	color: var(--frontmark-tag-text);
}

:root .sl-markdown-content .mkdocs-tag:hover,
:root .sl-markdown-content .mkdocs-tag:focus-visible,
:root .prose .mkdocs-tag:hover,
:root .prose .mkdocs-tag:focus-visible {
	border-color: var(--frontmark-tag-hover-border);
	background: var(--frontmark-tag-hover-background);
	color: var(--frontmark-tag-hover-text);
}

:root :is(.prose, .sl-markdown-content) :is(blockquote, .mkdocs-admonition) {
	border-color: rgba(44, 62, 80, 0.18);
	border-left-color: #bb3333;
	background: #f7f7f7;
	color: #555555;
}

:root :is(.prose, .sl-markdown-content) :is(table, .rtable) th {
	background: #eeeeee;
	color: #1a252f;
}

:root :is(.prose, .sl-markdown-content) code:not(pre code) {
	border-color: rgba(187, 51, 51, 0.18);
	background: #fff5f5;
	color: #7e1b26;
}

:root :is(.prose, .sl-markdown-content) pre {
	border-color: rgba(44, 62, 80, 0.22);
	background: #1a252f;
	color: #ffffff;
}

:root .sidebar-pane,
:root .right-sidebar-panel {
	border-color: rgba(44, 62, 80, 0.14);
	background: #ffffff;
	color: #666666;
}

:root .sidebar-pane a,
:root .right-sidebar-panel a {
	color: #666666;
}

:root .sidebar-pane a:hover,
:root .sidebar-pane a:focus-visible,
:root .right-sidebar-panel a:hover,
:root .right-sidebar-panel a:focus-visible {
	color: #bb3333;
}

:root .sidebar-pane a[aria-current="page"],
:root .sidebar-pane a[aria-current="page"]:hover,
:root .sidebar-pane a[aria-current="page"]:focus-visible {
	color: #ffffff;
}

@media (max-width: 48rem) {
	:root[data-has-sidebar] header.header .site-title {
		width: max-content;
		max-inline-size: none;
		flex: 0 0 auto;
		gap: 0.65rem;
	}
}

@media (max-width: 22rem) {
	:root[data-has-sidebar] header.header .site-title {
		gap: 0.65rem;
		max-inline-size: none;
	}

	:root[data-has-sidebar] header.header .site-title img {
		width: 52px !important;
		height: 52px !important;
	}

	:root[data-has-sidebar] header.header .brand-title strong {
		font-size: 17px;
		letter-spacing: 0;
	}

	:root[data-has-sidebar] header.header .brand-heading {
		gap: 0.45rem;
	}
}

@layer starlight.core {
	@media (max-width: 22rem) {
		:root[data-has-sidebar] header.header .site-title img {
			width: 52px !important;
			height: 52px !important;
		}
	}
}
