.md-banner {
	background-color: #be2e2e;
}

.md-grid {
    max-width: initial;
}

@media screen and (min-width: 76.25em) {
	.md-sidebar--primary .md-nav--primary > .md-nav__title {
		display: none;
	}
	.md-sidebar--primary .md-nav--primary > .md-nav__list {
		position: relative;
		top: -0.8em;
	}
}

[data-md-color-scheme="default"] .md-header {
	background: linear-gradient(90deg, rgba(151, 58, 58, 0.75) 0%, rgba(157, 157, 71, 0.75) 16.666%, rgba(56, 144, 56, 0.75) 33.333%, rgba(68, 155, 155, 0.75) 50%, rgba(62, 62, 162, 0.75) 66.666%, rgba(129, 61, 129, 0.75) 83.333%);

}
[data-md-color-scheme="slate"] .md-header {
	background: linear-gradient(90deg, rgba(100,70,70,0.85) 0%, rgba(100,100,70,0.85) 16.666%, rgba(70,100,70,0.85) 33.333%, rgba(70,100,100,0.85) 50%, rgba(70,70,100,0.85) 66.666%, rgba(100,70,100,0.85) 83.333%);
}
[data-md-color-scheme="default"] .md-tabs {
	background: linear-gradient(90deg, rgb(71, 10, 10) 0%, rgb(77, 77, 25) 16.666%, rgb(38, 71, 38) 33.333%, rgb(37, 81, 81) 50%, rgb(46, 46, 73) 66.666%, rgb(64, 35, 64) 83.333%);
}
[data-md-color-scheme="slate"] .md-tabs {
	background: linear-gradient(90deg, rgba(100,70,70,0.3) 0%, rgba(100,100,70,0.3) 16.666%, rgba(70,100,70,0.3) 33.333%, rgba(70,100,100,0.3) 50%, rgba(70,70,100,0.3) 66.666%, rgba(100,70,100,0.3) 83.333%);
}

[data-md-color-scheme="default"] {
	--md-primary-fg-color:        #1b6593;
	--md-accent-fg-color:        #008ce9;
	--md-footer-bg-color:		#454545;
	--md-typeset-color: hsla(0.0, 0.0%, 25.0%, 1.0);
}
[data-md-color-scheme="slate"] {
	--md-primary-fg-color:        #cd99b7;
	--md-accent-fg-color:        #a56c8d;
	--md-default-bg-color:	#15161b;
	--md-footer-bg-color:		#2a2c33;
	--md-code-bg-color:		hsl(222.9, 9.6%, 14.3%);
	--md-typeset-color: hsla(222.9, 18.9%, 75.7%, 1);
}

[data-md-color-scheme="slate"] .md-typeset h1, [data-md-color-scheme="slate"] .md-typeset h2, [data-md-color-scheme="slate"] .md-typeset h3, [data-md-color-scheme="slate"] .md-typeset h4 {
	color: #dcd8e6;
}
[data-md-color-scheme="default"] .md-typeset h1, [data-md-color-scheme="default"] .md-typeset h2, [data-md-color-scheme="default"] .md-typeset h3, [data-md-color-scheme="default"] .md-typeset h4 {
	color: #000000;
}

.def-icon {
	position:relative;
	top:1px;
	color:var(--md-code-fg-color);
	font-size: .9em;
}

[data-md-color-scheme="default"] .md-typeset dd {
	border-left-color: var(--md-code-bg-color);
  	border-left-style: solid;
  	padding-left: 1em;
	margin-left: 0.5em;
	position: relative;
	top: -0.3em;
}
[data-md-color-scheme="slate"] .md-typeset dd {
	border-left-color: var(--md-code-bg-color);
  	border-left-style: solid;
  	padding-left: 1em;
	margin-left: 0.5em;
	position: relative;
	top: -0.3em;
}

[data-md-color-scheme="default"] .md-typeset pre > code {
	font-size: .85em;
}
[data-md-color-scheme="slate"] .md-typeset pre > code {
	font-size: .85em;
}

.md-typeset details {
	font-size: .8rem;
}
.md-typeset .admonition {
	font-size: .8rem;
}
.md-typeset h1 {
	font-size: 3em;
	font-variant: small-caps;
}
[data-md-color-scheme="default"] .tffr-affirmative {
	color: #538153;
}
[data-md-color-scheme="slate"] .tffr-affirmative {
	color: #538153;
}
[data-md-color-scheme="default"] .tffr-negative {
	color: #815d53;
}
[data-md-color-scheme="slate"] .tffr-negative {
	color: #815d53;
}

[data-md-color-scheme="default"] .md-annotation__index::after {
	background-color: #008ce9;
}
[data-md-color-scheme="default"] .md-annotation__index:hover::after {
	background-color: #005eff;
}
[data-md-color-scheme="default"] .md-tooltip--active + .md-annotation__index::after {
    transform: scale(1.15);
	background-color: #005eff
}

[data-md-color-scheme="slate"] .md-annotation__index::after {
	background-color: rgb(226, 98, 147);
}
[data-md-color-scheme="slate"] .md-annotation__index:hover::after {
	background-color: rgb(220, 70, 127);
}
[data-md-color-scheme="slate"] .md-tooltip--active + .md-annotation__index::after {
    transform: scale(1.15);
	background-color: rgb(220, 70, 127);
}

.md-typeset .grid.cards > ol > li,
.md-typeset .grid.cards > ul > li,
.md-typeset .grid > .card {
	border-color: transparent;
	box-shadow: var(--md-shadow-z2);
	margin-bottom: 0.6em;
	position: relative;
	top: -0.9em;
}
[data-md-color-scheme="slate"] .md-typeset .grid.cards > ol > li,
[data-md-color-scheme="slate"] .md-typeset .grid.cards > ul > li,
[data-md-color-scheme="slate"] .md-typeset .grid > .card {
	box-shadow: 0 0 0.5rem #ffffff1a, 0 0 0.05rem #ffffff1a;
	color: hsla(222.9, 18.9%, 85.7%, 1);
}

[data-md-color-scheme="default"] .md-header__topic {
	color: #ffffffDD;
	font-size: 1.15em;
}
[data-md-color-scheme="slate"] .md-header__topic {
	color: #ffffff99;
	font-size: 1.15em;
}
.md-header__title--active div > span::before {
	content: 'TinyFFR || ';
}

.tffr-splash {
	position: relative;
	overflow: hidden;
}
.tffr-splash__video {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1282 / 720;
	object-fit: cover;
}
.tffr-splash__title {
	position: absolute;
	inset: 0;
	margin: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
}
.tffr-splash__title img {
	width: clamp(14rem, 50%, 48rem);
	height: auto;
	filter: drop-shadow(0 0 0.6rem rgba(0, 0, 0, 0.6));
}

.md-container:has(.tffr-splash) .md-typeset abbr {
	border-bottom: none;
	cursor: inherit;
}

.md-typeset .tffr-showcase {
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	gap: 6rem;
	margin-bottom: 1.6rem;
	padding: 2rem;
	border-radius: 0.4rem;
}
.md-typeset .tffr-showcase::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(160deg, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0) 45%, rgba(0, 0, 0, 0.6) 100%);
}
.md-typeset .tffr-showcase p {
	margin: 0;
}
.md-typeset .tffr-showcase > p:has(> .tffr-showcase__backdrop) {
	display: contents;
}
.md-typeset .tffr-showcase .tffr-showcase__backdrop {
	position: absolute;
	inset: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}
.md-typeset .tffr-showcase__category {
	position: relative;
	z-index: 2;
	align-self: flex-start;
	color: #ffffff;
}
.md-typeset .tffr-showcase .tffr-showcase__icon {
	--md-icon-size: 2.6em;
	display: inline-block;
	height: 2.6em;
	margin-bottom: 0.3em;
}
.md-typeset .tffr-showcase .tffr-showcase__icon svg {
	width: 2.6em;
	height: 2.6em;
	max-height: none;
	overflow: visible;
	fill: #ffffff;
	stroke: #000000;
	stroke-width: 1.6px;
	stroke-linejoin: round;
	paint-order: stroke fill;
	filter: drop-shadow(0 0 0.3em rgba(0, 0, 0, 0.5));
}
.md-typeset .tffr-showcase .tffr-showcase__title {
	font-size: 2em;
	font-weight: 700;
	font-variant: small-caps;
	line-height: 1.2;
	color: #ffffff;
	-webkit-text-stroke: 0.14em #000000;
	paint-order: stroke fill;
	text-shadow: 0 0 0.4em rgba(0, 0, 0, 0.5);
}
.md-typeset .tffr-showcase .tffr-showcase__tagline {
	font-size: 1.1em;
	font-weight: 500;
	color: #ffffff;
	-webkit-text-stroke: 0.22em #000000;
	paint-order: stroke fill;
	text-shadow: 0 0 0.4em rgba(0, 0, 0, 0.5);
}
.md-typeset .tffr-showcase__cards {
	position: relative;
	z-index: 2;
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem;
}
.md-typeset .tffr-showcase__card {
	flex: 1 1 max(12rem, calc((100% - 2.4rem) / 4 - 1px));
	container-type: inline-size;
	padding: 0.6rem;
	border-radius: 0.4rem;
	border: 1px solid #ffffff2a;
	background: rgba(20, 20, 30, 0.45);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	color: #ffffffcc;
	font-size: 0.85em;
	transition: transform 0.2s;
}
.md-typeset .tffr-showcase__card:hover {
	transform: translateY(-0.2rem);
}
.md-typeset .tffr-showcase__card img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	border-radius: 0.25rem;
	margin-bottom: 0.5em;
}
.md-typeset .tffr-showcase .tffr-showcase__card-title {
	font-weight: 700;
	font-size: 1.2em;
	color: #ffffff;
}
.md-typeset .tffr-showcase__card code {
	background: #ffffff26;
	color: #ffffff;
}
@container (min-width: 26rem) {
	.md-typeset .tffr-showcase__card-inner {
		display: flex;
		align-items: center;
		gap: 1rem;
	}
	.md-typeset .tffr-showcase__card img {
		width: min(45%, 18rem);
		flex-shrink: 0;
		margin-bottom: 0;
	}
}

@media screen and (max-width: 44.984375em) {
	.md-typeset .tffr-showcase {
		padding: 1rem;
		gap: 3rem;
	}
}
