/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */
@layer properties {
	@supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or
		((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
		*,
		:before,
		:after,
		::backdrop {
			--tw-translate-x: 0;
			--tw-translate-y: 0;
			--tw-translate-z: 0;
			--tw-scale-x: 1;
			--tw-scale-y: 1;
			--tw-scale-z: 1;
			--tw-rotate-x: initial;
			--tw-rotate-y: initial;
			--tw-rotate-z: initial;
			--tw-skew-x: initial;
			--tw-skew-y: initial;
			--tw-space-y-reverse: 0;
			--tw-border-style: solid;
			--tw-gradient-position: initial;
			--tw-gradient-from: #0000;
			--tw-gradient-via: #0000;
			--tw-gradient-to: #0000;
			--tw-gradient-stops: initial;
			--tw-gradient-via-stops: initial;
			--tw-gradient-from-position: 0%;
			--tw-gradient-via-position: 50%;
			--tw-gradient-to-position: 100%;
			--tw-leading: initial;
			--tw-font-weight: initial;
			--tw-tracking: initial;
			--tw-shadow: 0 0 #0000;
			--tw-shadow-color: initial;
			--tw-shadow-alpha: 100%;
			--tw-inset-shadow: 0 0 #0000;
			--tw-inset-shadow-color: initial;
			--tw-inset-shadow-alpha: 100%;
			--tw-ring-color: initial;
			--tw-ring-shadow: 0 0 #0000;
			--tw-inset-ring-color: initial;
			--tw-inset-ring-shadow: 0 0 #0000;
			--tw-ring-inset: initial;
			--tw-ring-offset-width: 0px;
			--tw-ring-offset-color: #fff;
			--tw-ring-offset-shadow: 0 0 #0000;
			--tw-outline-style: solid;
			--tw-blur: initial;
			--tw-brightness: initial;
			--tw-contrast: initial;
			--tw-grayscale: initial;
			--tw-hue-rotate: initial;
			--tw-invert: initial;
			--tw-opacity: initial;
			--tw-saturate: initial;
			--tw-sepia: initial;
			--tw-drop-shadow: initial;
			--tw-drop-shadow-color: initial;
			--tw-drop-shadow-alpha: 100%;
			--tw-drop-shadow-size: initial;
			--tw-backdrop-blur: initial;
			--tw-backdrop-brightness: initial;
			--tw-backdrop-contrast: initial;
			--tw-backdrop-grayscale: initial;
			--tw-backdrop-hue-rotate: initial;
			--tw-backdrop-invert: initial;
			--tw-backdrop-opacity: initial;
			--tw-backdrop-saturate: initial;
			--tw-backdrop-sepia: initial;
			--tw-duration: initial;
			--tw-ease: initial;
			--tw-text-shadow-color: initial;
			--tw-text-shadow-alpha: 100%;
			--tw-content: "";
		}
	}
}

@layer theme {
	:root,
	:host {
		--font-sans:
			ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
			"Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
		--font-mono:
			ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
			"Courier New", monospace;
		--color-blue-50: oklch(97% 0.014 254.604);
		--color-blue-700: oklch(48.8% 0.243 264.376);
		--color-blue-800: oklch(42.4% 0.199 265.638);
		--color-blue-900: oklch(37.9% 0.146 265.522);
		--color-slate-50: oklch(98.4% 0.003 247.858);
		--color-slate-200: oklch(92.9% 0.013 255.508);
		--color-slate-400: oklch(70.4% 0.04 256.788);
		--color-slate-500: oklch(55.4% 0.046 257.417);
		--color-slate-600: oklch(44.6% 0.043 257.281);
		--color-slate-700: oklch(37.2% 0.044 257.287);
		--color-slate-900: oklch(20.8% 0.042 265.755);
		--color-gray-100: oklch(96.7% 0.003 264.542);
		--color-gray-500: oklch(55.1% 0.027 264.364);
		--color-black: #000;
		--color-white: #fff;
		--spacing: 0.25rem;
		--breakpoint-xl: 80rem;
		--breakpoint-2xl: 96rem;
		--container-sm: 24rem;
		--container-lg: 32rem;
		--container-xl: 36rem;
		--container-2xl: 42rem;
		--container-3xl: 48rem;
		--container-4xl: 56rem;
		--container-5xl: 64rem;
		--container-6xl: 72rem;
		--container-7xl: 80rem;
		--text-xs: 0.75rem;
		--text-xs--line-height: calc(1 / 0.75);
		--text-sm: 0.875rem;
		--text-sm--line-height: calc(1.25 / 0.875);
		--text-base: 1rem;
		--text-base--line-height: calc(1.5 / 1);
		--text-lg: 1.125rem;
		--text-lg--line-height: calc(1.75 / 1.125);
		--text-xl: 1.25rem;
		--text-xl--line-height: calc(1.75 / 1.25);
		--text-2xl: 1.5rem;
		--text-2xl--line-height: calc(2 / 1.5);
		--text-3xl: 1.875rem;
		--text-3xl--line-height: calc(2.25 / 1.875);
		--text-4xl: 2.25rem;
		--text-4xl--line-height: calc(2.5 / 2.25);
		--text-5xl: 3rem;
		--text-5xl--line-height: 1;
		--text-6xl: 3.75rem;
		--text-6xl--line-height: 1;
		--text-7xl: 4.5rem;
		--text-7xl--line-height: 1;
		--text-9xl: 8rem;
		--text-9xl--line-height: 1;
		--font-weight-normal: 400;
		--font-weight-medium: 500;
		--font-weight-semibold: 600;
		--font-weight-bold: 700;
		--font-weight-black: 900;
		--tracking-tighter: -0.05em;
		--tracking-tight: -0.025em;
		--tracking-wide: 0.025em;
		--tracking-wider: 0.05em;
		--tracking-widest: 0.1em;
		--leading-tight: 1.25;
		--leading-snug: 1.375;
		--leading-relaxed: 1.625;
		--radius-sm: 0.25rem;
		--radius-md: 0.375rem;
		--radius-lg: 0.5rem;
		--radius-xl: 0.75rem;
		--radius-2xl: 1rem;
		--radius-3xl: 1.5rem;
		--ease-out: cubic-bezier(0, 0, 0.2, 1);
		--ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
		--blur-sm: 8px;
		--blur-md: 12px;
		--blur-3xl: 64px;
		--aspect-video: 16 / 9;
		--default-transition-duration: 0.15s;
		--default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
		--default-font-family: var(--font-sans);
		--default-mono-font-family: var(--font-mono);
		--color-primary: #13c9ff;
		--color-primary-fixed: #b8f2ff;
		--color-primary-fixed-dim: #6de0ff;
		--color-primary-container: #d6f6ff;
		--color-on-primary: #001e28;
		--color-on-primary-fixed: #001e28;
		--color-on-primary-fixed-variant: #004b62;
		--color-on-primary-container: #001e28;
		--color-on-primary-container-variant: #16647e;
		--color-inverse-primary: #009dc8;
		--color-secondary: #557fc7;
		--color-brand: #415bd3;
		--color-secondary-dim: #486dad;
		--color-secondary-dim-variant: #006684;
		--color-secondary-fixed: #dce8ff;
		--color-secondary-fixed-dim: #adc4f0;
		--color-secondary-container: #e8f0ff;
		--color-on-secondary: #fff;
		--color-on-secondary-fixed: #001040;
		--color-on-secondary-fixed-variant: #2c5098;
		--color-on-secondary-container: #0e2660;
		--color-tertiary: #fabd46;
		--color-tertiary-fixed: #fff3cc;
		--color-tertiary-fixed-dim: #fcd97a;
		--color-tertiary-container: #fdeea0;
		--color-on-tertiary: #2d1a00;
		--color-on-tertiary-fixed: #2d1a00;
		--color-on-tertiary-fixed-variant: #7a4800;
		--color-on-tertiary-container: #3d2800;
		--color-surface: #fff;
		--color-surface-dim: #dcd9d9;
		--color-surface-bright: #f2f2f2;
		--color-surface-tint: #13c9ff;
		--color-surface-variant: #d8eaf0;
		--color-surface-container-lowest: #fff;
		--color-surface-container-low: #f6f3f2;
		--color-surface-container: #f0eded;
		--color-surface-container-high: #eae8e7;
		--color-surface-container-highest: #e4e2e1;
		--color-on-surface: #1b1c1c;
		--color-on-surface-variant: #3d484f;
		--color-on-surface-bright: #60717b;
		--color-on-surface-container: #4d5960;
		--color-inverse-surface: #111;
		--color-inverse-on-surface: #f3f0f0;
		--color-background: #fafafa;
		--color-on-background: #1b1c1c;
		--color-error: #ba1a1a;
		--color-error-container: #ffdad6;
		--color-on-error: #fff;
		--color-on-error-container: #93000a;
		--color-outline: #5e6b73;
		--color-outline-variant: #bcc8d0;
		--font-headline: "Space Grotesk", "Noto Sans TC", sans-serif;
		--font-body: "Inter", "Noto Sans TC", sans-serif;
		--font-label: "Inter", "Noto Sans TC", sans-serif;
		--radius-full: 9999px;
		--animate-bg-fade-in: bg-fade-in 0.8s ease-in-out;
		--animate-content-fade-in: content-fade-in 0.6s ease-in-out;
	}
}

@layer base {
	*,
	:after,
	:before,
	::backdrop {
		box-sizing: border-box;
		border: 0 solid;
		margin: 0;
		padding: 0;
	}

	::file-selector-button {
		box-sizing: border-box;
		border: 0 solid;
		margin: 0;
		padding: 0;
	}

	html,
	:host {
		-webkit-text-size-adjust: 100%;
		tab-size: 4;
		line-height: 1.5;
		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;
		-webkit-text-decoration: 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 {
		vertical-align: baseline;
		font-size: 75%;
		line-height: 0;
		position: relative;
	}

	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 {
		vertical-align: middle;
		display: block;
	}

	img,
	video {
		max-width: 100%;
		height: auto;
	}

	button,
	input,
	select,
	optgroup,
	textarea {
		font: inherit;
		font-feature-settings: inherit;
		font-variation-settings: inherit;
		letter-spacing: inherit;
		color: inherit;
		opacity: 1;
		background-color: #0000;
		border-radius: 0;
	}

	::file-selector-button {
		font: inherit;
		font-feature-settings: inherit;
		font-variation-settings: inherit;
		letter-spacing: inherit;
		color: inherit;
		opacity: 1;
		background-color: #0000;
		border-radius: 0;
	}

	: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: currentColor;
		}

		@supports (color: color-mix(in lab, red, red)) {
			::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 {
		padding-block: 0;
	}

	::-webkit-datetime-edit-year-field {
		padding-block: 0;
	}

	::-webkit-datetime-edit-month-field {
		padding-block: 0;
	}

	::-webkit-datetime-edit-day-field {
		padding-block: 0;
	}

	::-webkit-datetime-edit-hour-field {
		padding-block: 0;
	}

	::-webkit-datetime-edit-minute-field {
		padding-block: 0;
	}

	::-webkit-datetime-edit-second-field {
		padding-block: 0;
	}

	::-webkit-datetime-edit-millisecond-field {
		padding-block: 0;
	}

	::-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"]) {
		appearance: button;
	}

	::file-selector-button {
		appearance: button;
	}

	::-webkit-inner-spin-button {
		height: auto;
	}

	::-webkit-outer-spin-button {
		height: auto;
	}

	[hidden]:where(:not([hidden="until-found"])) {
		display: none !important;
	}
}

@layer components;

@layer utilities {
	.pointer-events-auto {
		pointer-events: auto;
	}

	.pointer-events-none {
		pointer-events: none;
	}

	.invisible {
		visibility: hidden;
	}

	.visible {
		visibility: visible;
	}

	.sr-only {
		clip-path: inset(50%);
		white-space: nowrap;
		border-width: 0;
		width: 1px;
		height: 1px;
		margin: -1px;
		padding: 0;
		position: absolute;
		overflow: hidden;
	}

	.absolute {
		position: absolute;
	}

	.fixed {
		position: fixed;
	}

	.relative {
		position: relative;
	}

	.static {
		position: static;
	}

	.sticky {
		position: sticky;
	}

	.inset-0 {
		inset: calc(var(--spacing) * 0);
	}

	.inset-x-0 {
		inset-inline: calc(var(--spacing) * 0);
	}

	.start {
		inset-inline-start: var(--spacing);
	}

	.end {
		inset-inline-end: var(--spacing);
	}

	.-top-1 {
		top: calc(var(--spacing) * -1);
	}

	.-top-1\.5 {
		top: calc(var(--spacing) * -1.5);
	}

	.-top-4 {
		top: calc(var(--spacing) * -4);
	}

	.-top-\[20\%\] {
		top: -20%;
	}

	.-top-\[20px\] {
		top: -20px;
	}

	.top-0 {
		top: calc(var(--spacing) * 0);
	}

	.top-1 {
		top: calc(var(--spacing) * 1);
	}

	.top-1\/4 {
		top: 25%;
	}

	.top-4 {
		top: calc(var(--spacing) * 4);
	}

	.top-7 {
		top: calc(var(--spacing) * 7);
	}

	.top-16 {
		top: calc(var(--spacing) * 16);
	}

	.top-24 {
		top: calc(var(--spacing) * 24);
	}

	.top-32 {
		top: calc(var(--spacing) * 32);
	}

	.top-\[10\%\] {
		top: 10%;
	}

	.top-\[15\%\] {
		top: 15%;
	}

	.top-full {
		top: 100%;
	}

	.-right-1 {
		right: calc(var(--spacing) * -1);
	}

	.-right-1\.5 {
		right: calc(var(--spacing) * -1.5);
	}

	.-right-2 {
		right: calc(var(--spacing) * -2);
	}

	.-right-4 {
		right: calc(var(--spacing) * -4);
	}

	.right-0 {
		right: calc(var(--spacing) * 0);
	}

	.right-1 {
		right: calc(var(--spacing) * 1);
	}

	.right-1\/4 {
		right: 25%;
	}

	.right-3 {
		right: calc(var(--spacing) * 3);
	}

	.right-3\.5 {
		right: calc(var(--spacing) * 3.5);
	}

	.right-6 {
		right: calc(var(--spacing) * 6);
	}

	.right-16 {
		right: calc(var(--spacing) * 16);
	}

	.right-18 {
		right: calc(var(--spacing) * 18);
	}

	.right-\[4\.5rem\] {
		right: 4.5rem;
	}

	.-bottom-2 {
		bottom: calc(var(--spacing) * -2);
	}

	.-bottom-\[20\%\] {
		bottom: -20%;
	}

	.bottom-0 {
		bottom: calc(var(--spacing) * 0);
	}

	.bottom-1 {
		bottom: calc(var(--spacing) * 1);
	}

	.bottom-1\/4 {
		bottom: 25%;
	}

	.bottom-6 {
		bottom: calc(var(--spacing) * 6);
	}

	.bottom-8 {
		bottom: calc(var(--spacing) * 8);
	}

	.bottom-12 {
		bottom: calc(var(--spacing) * 12);
	}

	.left-0 {
		left: calc(var(--spacing) * 0);
	}

	.left-1 {
		left: calc(var(--spacing) * 1);
	}

	.left-1\/3 {
		left: 33.3333%;
	}

	.left-4 {
		left: calc(var(--spacing) * 4);
	}

	.left-6 {
		left: calc(var(--spacing) * 6);
	}

	.left-16 {
		left: calc(var(--spacing) * 16);
	}

	.z-0 {
		z-index: 0;
	}

	.z-10 {
		z-index: 10;
	}

	.z-20 {
		z-index: 20;
	}

	.z-30 {
		z-index: 30;
	}

	.z-40 {
		z-index: 40;
	}

	.z-50 {
		z-index: 50;
	}

	.z-9999,
	.z-\[9999\] {
		z-index: 9999;
	}

	.order-1 {
		order: 1;
	}

	.order-2 {
		order: 2;
	}

	.container {
		width: 100%;
	}

	@media (min-width: 40rem) {
		.container {
			max-width: 40rem;
		}
	}

	@media (min-width: 48rem) {
		.container {
			max-width: 48rem;
		}
	}

	@media (min-width: 64rem) {
		.container {
			max-width: 64rem;
		}
	}

	@media (min-width: 80rem) {
		.container {
			max-width: 80rem;
		}
	}

	@media (min-width: 96rem) {
		.container {
			max-width: 96rem;
		}
	}

	.m-0 {
		margin: calc(var(--spacing) * 0);
	}

	.-mx-3 {
		margin-inline: calc(var(--spacing) * -3);
	}

	.mx-4 {
		margin-inline: calc(var(--spacing) * 4);
	}

	.mx-6 {
		margin-inline: calc(var(--spacing) * 6);
	}

	.mx-auto {
		margin-inline: auto;
	}

	.my-1 {
		margin-block: calc(var(--spacing) * 1);
	}

	.my-1\.5 {
		margin-block: calc(var(--spacing) * 1.5);
	}

	.my-2 {
		margin-block: calc(var(--spacing) * 2);
	}

	.my-3 {
		margin-block: calc(var(--spacing) * 3);
	}

	.my-6 {
		margin-block: calc(var(--spacing) * 6);
	}

	.my-8 {
		margin-block: calc(var(--spacing) * 8);
	}

	.my-auto {
		margin-block: auto;
	}

	.-mt-3 {
		margin-top: calc(var(--spacing) * -3);
	}

	.-mt-9 {
		margin-top: calc(var(--spacing) * -9);
	}

	.mt-0 {
		margin-top: calc(var(--spacing) * 0);
	}

	.mt-0\.5 {
		margin-top: calc(var(--spacing) * 0.5);
	}

	.mt-1 {
		margin-top: calc(var(--spacing) * 1);
	}

	.mt-1\.5 {
		margin-top: calc(var(--spacing) * 1.5);
	}

	.mt-2 {
		margin-top: calc(var(--spacing) * 2);
	}

	.mt-3 {
		margin-top: calc(var(--spacing) * 3);
	}

	.mt-4 {
		margin-top: calc(var(--spacing) * 4);
	}

	.mt-8 {
		margin-top: calc(var(--spacing) * 8);
	}

	.mt-10 {
		margin-top: calc(var(--spacing) * 10);
	}

	.mt-14 {
		margin-top: calc(var(--spacing) * 14);
	}

	.mt-24 {
		margin-top: calc(var(--spacing) * 24);
	}

	.mt-auto {
		margin-top: auto;
	}

	.mr-2 {
		margin-right: calc(var(--spacing) * 2);
	}

	.mb-1 {
		margin-bottom: calc(var(--spacing) * 1);
	}

	.mb-2 {
		margin-bottom: calc(var(--spacing) * 2);
	}

	.mb-3 {
		margin-bottom: calc(var(--spacing) * 3);
	}

	.mb-4 {
		margin-bottom: calc(var(--spacing) * 4);
	}

	.mb-5 {
		margin-bottom: calc(var(--spacing) * 5);
	}

	.mb-6 {
		margin-bottom: calc(var(--spacing) * 6);
	}

	.mb-8 {
		margin-bottom: calc(var(--spacing) * 8);
	}

	.mb-10 {
		margin-bottom: calc(var(--spacing) * 10);
	}

	.mb-12 {
		margin-bottom: calc(var(--spacing) * 12);
	}

	.mb-16 {
		margin-bottom: calc(var(--spacing) * 16);
	}

	.-ml-3 {
		margin-left: calc(var(--spacing) * -3);
	}

	.ml-1 {
		margin-left: calc(var(--spacing) * 1);
	}

	.ml-2 {
		margin-left: calc(var(--spacing) * 2);
	}

	.ml-4 {
		margin-left: calc(var(--spacing) * 4);
	}

	.ml-auto {
		margin-left: auto;
	}

	.line-clamp-2 {
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		display: -webkit-box;
		overflow: hidden;
	}

	.line-clamp-3 {
		-webkit-line-clamp: 3;
		-webkit-box-orient: vertical;
		display: -webkit-box;
		overflow: hidden;
	}

	.block {
		display: block;
	}

	.contents {
		display: contents;
	}

	.flex {
		display: flex;
	}

	.grid {
		display: grid;
	}

	.hidden {
		display: none;
	}

	.inline {
		display: inline;
	}

	.inline-block {
		display: inline-block;
	}

	.inline-flex {
		display: inline-flex;
	}

	.table {
		display: table;
	}

	.aspect-4\/3 {
		aspect-ratio: 4 / 3;
	}

	.aspect-16\/10 {
		aspect-ratio: 16 / 10;
	}

	.aspect-\[4\/3\] {
		aspect-ratio: 4 / 3;
	}

	.aspect-\[16\/10\] {
		aspect-ratio: 16 / 10;
	}

	.aspect-square {
		aspect-ratio: 1;
	}

	.aspect-video {
		aspect-ratio: var(--aspect-video);
	}

	.h-0 {
		height: calc(var(--spacing) * 0);
	}

	.h-0\.5 {
		height: calc(var(--spacing) * 0.5);
	}

	.h-1 {
		height: calc(var(--spacing) * 1);
	}

	.h-1\/2 {
		height: 50%;
	}

	.h-2 {
		height: calc(var(--spacing) * 2);
	}

	.h-2\/3 {
		height: 66.6667%;
	}

	.h-3 {
		height: calc(var(--spacing) * 3);
	}

	.h-3\.5 {
		height: calc(var(--spacing) * 3.5);
	}

	.h-3\.75 {
		height: calc(var(--spacing) * 3.75);
	}

	.h-4 {
		height: calc(var(--spacing) * 4);
	}

	.h-4\.5 {
		height: calc(var(--spacing) * 4.5);
	}

	.h-5 {
		height: calc(var(--spacing) * 5);
	}

	.h-5\.5 {
		height: calc(var(--spacing) * 5.5);
	}

	.h-6 {
		height: calc(var(--spacing) * 6);
	}

	.h-7 {
		height: calc(var(--spacing) * 7);
	}

	.h-8 {
		height: calc(var(--spacing) * 8);
	}

	.h-9 {
		height: calc(var(--spacing) * 9);
	}

	.h-10 {
		height: calc(var(--spacing) * 10);
	}

	.h-11 {
		height: calc(var(--spacing) * 11);
	}

	.h-12 {
		height: calc(var(--spacing) * 12);
	}

	.h-13 {
		height: calc(var(--spacing) * 13);
	}

	.h-15 {
		height: calc(var(--spacing) * 15);
	}

	.h-16 {
		height: calc(var(--spacing) * 16);
	}

	.h-20 {
		height: calc(var(--spacing) * 20);
	}

	.h-22 {
		height: calc(var(--spacing) * 22);
	}

	.h-30 {
		height: calc(var(--spacing) * 30);
	}

	.h-36 {
		height: calc(var(--spacing) * 36);
	}

	.h-48 {
		height: calc(var(--spacing) * 48);
	}

	.h-56 {
		height: calc(var(--spacing) * 56);
	}

	.h-64 {
		height: calc(var(--spacing) * 64);
	}

	.h-96 {
		height: calc(var(--spacing) * 96);
	}

	.h-\[13px\] {
		height: 13px;
	}

	.h-\[15px\] {
		height: 15px;
	}

	.h-\[36px\] {
		height: 36px;
	}

	.h-\[400px\] {
		height: 400px;
	}

	.h-\[calc\(100\%\+40px\)\] {
		height: calc(100% + 40px);
	}

	.h-\[calc\(100dvh-4rem\)\] {
		height: calc(100dvh - 4rem);
	}

	.h-auto {
		height: auto;
	}

	.h-full {
		height: 100%;
	}

	.h-px {
		height: 1px;
	}

	.max-h-12 {
		max-height: calc(var(--spacing) * 12);
	}

	.max-h-75 {
		max-height: calc(var(--spacing) * 75);
	}

	.max-h-\[28vh\] {
		max-height: 28vh;
	}

	.max-h-\[85vh\] {
		max-height: 85vh;
	}

	.min-h-16 {
		min-height: calc(var(--spacing) * 16);
	}

	.min-h-50 {
		min-height: calc(var(--spacing) * 50);
	}

	.min-h-\[80vh\] {
		min-height: 80vh;
	}

	.min-h-\[calc\(100dvh-4rem\)\] {
		min-height: calc(100dvh - 4rem);
	}

	.min-h-screen {
		min-height: 100vh;
	}

	.w-0 {
		width: calc(var(--spacing) * 0);
	}

	.w-1 {
		width: calc(var(--spacing) * 1);
	}

	.w-1\.5 {
		width: calc(var(--spacing) * 1.5);
	}

	.w-3 {
		width: calc(var(--spacing) * 3);
	}

	.w-3\.5 {
		width: calc(var(--spacing) * 3.5);
	}

	.w-3\.75 {
		width: calc(var(--spacing) * 3.75);
	}

	.w-4 {
		width: calc(var(--spacing) * 4);
	}

	.w-4\.5 {
		width: calc(var(--spacing) * 4.5);
	}

	.w-4\/5 {
		width: 80%;
	}

	.w-5 {
		width: calc(var(--spacing) * 5);
	}

	.w-5\.5 {
		width: calc(var(--spacing) * 5.5);
	}

	.w-6 {
		width: calc(var(--spacing) * 6);
	}

	.w-7 {
		width: calc(var(--spacing) * 7);
	}

	.w-8 {
		width: calc(var(--spacing) * 8);
	}

	.w-9 {
		width: calc(var(--spacing) * 9);
	}

	.w-10 {
		width: calc(var(--spacing) * 10);
	}

	.w-11 {
		width: calc(var(--spacing) * 11);
	}

	.w-12 {
		width: calc(var(--spacing) * 12);
	}

	.w-13 {
		width: calc(var(--spacing) * 13);
	}

	.w-16 {
		width: calc(var(--spacing) * 16);
	}

	.w-20 {
		width: calc(var(--spacing) * 20);
	}

	.w-24 {
		width: calc(var(--spacing) * 24);
	}

	.w-30 {
		width: calc(var(--spacing) * 30);
	}

	.w-32 {
		width: calc(var(--spacing) * 32);
	}

	.w-36 {
		width: calc(var(--spacing) * 36);
	}

	.w-48 {
		width: calc(var(--spacing) * 48);
	}

	.w-64 {
		width: calc(var(--spacing) * 64);
	}

	.w-80 {
		width: calc(var(--spacing) * 80);
	}

	.w-96 {
		width: calc(var(--spacing) * 96);
	}

	.w-\[12px\] {
		width: 12px;
	}

	.w-\[13px\] {
		width: 13px;
	}

	.w-\[15px\] {
		width: 15px;
	}

	.w-\[18px\] {
		width: 18px;
	}

	.w-\[36px\] {
		width: 36px;
	}

	.w-auto {
		width: auto;
	}

	.w-fit {
		width: fit-content;
	}

	.w-full {
		width: 100%;
	}

	.max-w-2xl {
		max-width: var(--container-2xl);
	}

	.max-w-3xl {
		max-width: var(--container-3xl);
	}

	.max-w-4xl {
		max-width: var(--container-4xl);
	}

	.max-w-5xl {
		max-width: var(--container-5xl);
	}

	.max-w-6xl {
		max-width: var(--container-6xl);
	}

	.max-w-7xl {
		max-width: var(--container-7xl);
	}

	.max-w-40 {
		max-width: calc(var(--spacing) * 40);
		max-width: calc(var(--spacing) * 40);
	}

	.max-w-75 {
		max-width: calc(var(--spacing) * 75);
	}

	.max-w-\[16rem\] {
		max-width: 16rem;
	}

	.max-w-\[85vw\] {
		max-width: 85vw;
	}

	.max-w-\[160px\] {
		max-width: 160px;
	}

	.max-w-\[min\(56rem\,90vw\)\] {
		max-width: min(56rem, 90vw);
	}

	.max-w-full {
		max-width: 100%;
	}

	.max-w-screen-2xl {
		max-width: var(--breakpoint-2xl);
	}

	.max-w-screen-xl {
		max-width: var(--breakpoint-xl);
	}

	.max-w-sm {
		max-width: var(--container-sm);
	}

	.max-w-xl {
		max-width: var(--container-xl);
	}

	.min-w-0 {
		min-width: calc(var(--spacing) * 0);
	}

	.min-w-9 {
		min-width: calc(var(--spacing) * 9);
	}

	.min-w-52 {
		min-width: calc(var(--spacing) * 52);
	}

	.flex-1 {
		flex: 1;
	}

	.flex-2 {
		flex: 2;
	}

	.flex-3 {
		flex: 3;
	}

	.flex-none {
		flex: none;
	}

	.flex-shrink {
		flex-shrink: 1;
	}

	.shrink-0 {
		flex-shrink: 0;
	}

	.flex-grow,
	.grow {
		flex-grow: 1;
	}

	.border-collapse {
		border-collapse: collapse;
	}

	.origin-top {
		transform-origin: top;
	}

	.translate-x-full {
		--tw-translate-x: 100%;
		translate: var(--tw-translate-x) var(--tw-translate-y);
	}

	.-translate-y-0 {
		--tw-translate-y: calc(var(--spacing) * 0);
		translate: var(--tw-translate-x) var(--tw-translate-y);
	}

	.-translate-y-0\.5 {
		--tw-translate-y: calc(var(--spacing) * -0.5);
		translate: var(--tw-translate-x) var(--tw-translate-y);
	}

	.-translate-y-1 {
		--tw-translate-y: calc(var(--spacing) * -1);
		translate: var(--tw-translate-x) var(--tw-translate-y);
	}

	.-translate-y-full {
		--tw-translate-y: -100%;
		translate: var(--tw-translate-x) var(--tw-translate-y);
	}

	.translate-y-0 {
		--tw-translate-y: calc(var(--spacing) * 0);
		translate: var(--tw-translate-x) var(--tw-translate-y);
	}

	.translate-y-4 {
		--tw-translate-y: calc(var(--spacing) * 4);
		translate: var(--tw-translate-x) var(--tw-translate-y);
	}

	.scale-95 {
		--tw-scale-x: 95%;
		--tw-scale-y: 95%;
		--tw-scale-z: 95%;
		scale: var(--tw-scale-x) var(--tw-scale-y);
	}

	.scale-100 {
		--tw-scale-x: 100%;
		--tw-scale-y: 100%;
		--tw-scale-z: 100%;
		scale: var(--tw-scale-x) var(--tw-scale-y);
	}

	.scale-105 {
		--tw-scale-x: 105%;
		--tw-scale-y: 105%;
		--tw-scale-z: 105%;
		scale: var(--tw-scale-x) var(--tw-scale-y);
	}

	.rotate-30 {
		rotate: 30deg;
	}

	.rotate-90 {
		rotate: 90deg;
	}

	.rotate-180 {
		rotate: 180deg;
	}

	.\[transform\:skew\(-12deg\)_translateX\(-100\%\)\] {
		transform: skew(-12deg) translateX(-100%);
	}

	.transform {
		transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,)
			var(--tw-skew-x,) var(--tw-skew-y,);
	}

	.animate-bg-fade-in {
		animation: var(--animate-bg-fade-in);
	}

	.animate-content-fade-in {
		animation: var(--animate-content-fade-in);
	}

	.cursor-not-allowed {
		cursor: not-allowed;
	}

	.cursor-pointer {
		cursor: pointer;
	}

	.resize {
		resize: both;
	}

	.list-decimal {
		list-style-type: decimal;
	}

	.list-none {
		list-style-type: none;
	}

	.grid-cols-1 {
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}

	.grid-cols-2 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.grid-cols-12 {
		grid-template-columns: repeat(12, minmax(0, 1fr));
	}

	.grid-cols-subgrid {
		grid-template-columns: subgrid;
	}

	.col-span-full {
		grid-column: 1 / -1;
	}

	.grid-rows-\[0fr\] {
		grid-template-rows: 0fr;
	}

	.grid-rows-\[1fr\] {
		grid-template-rows: 1fr;
	}

	.flex-col {
		flex-direction: column;
	}

	.flex-col-reverse {
		flex-direction: column-reverse;
	}

	.flex-row {
		flex-direction: row;
	}

	.flex-row-reverse {
		flex-direction: row-reverse;
	}

	.flex-wrap {
		flex-wrap: wrap;
	}

	.items-center {
		align-items: center;
	}

	.items-end {
		align-items: flex-end;
	}

	.items-start {
		align-items: flex-start;
	}

	.items-stretch {
		align-items: stretch;
	}

	.justify-between {
		justify-content: space-between;
	}

	.justify-center {
		justify-content: center;
	}

	.justify-end {
		justify-content: flex-end;
	}

	.justify-start {
		justify-content: flex-start;
	}

	.gap-0 {
		gap: calc(var(--spacing) * 0);
	}

	.gap-0\.5 {
		gap: calc(var(--spacing) * 0.5);
	}

	.gap-1 {
		gap: calc(var(--spacing) * 1);
	}

	.gap-1\.5 {
		gap: calc(var(--spacing) * 1.5);
	}

	.gap-2 {
		gap: calc(var(--spacing) * 2);
	}

	.gap-3 {
		gap: calc(var(--spacing) * 3);
	}

	.gap-4 {
		gap: calc(var(--spacing) * 4);
	}

	.gap-5 {
		gap: calc(var(--spacing) * 5);
	}

	.gap-6 {
		gap: calc(var(--spacing) * 6);
	}

	.gap-8 {
		gap: calc(var(--spacing) * 8);
	}

	.gap-10 {
		gap: calc(var(--spacing) * 10);
	}

	.gap-12 {
		gap: calc(var(--spacing) * 12);
	}

	.gap-16 {
		gap: calc(var(--spacing) * 16);
	}

	:where(.space-y-1 > :not(:last-child)) {
		--tw-space-y-reverse: 0;
		margin-block-start: calc(
			calc(var(--spacing) * 1) * var(--tw-space-y-reverse)
		);
		margin-block-end: calc(
			calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse))
		);
	}

	:where(.space-y-1\.5 > :not(:last-child)) {
		--tw-space-y-reverse: 0;
		margin-block-start: calc(
			calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse)
		);
		margin-block-end: calc(
			calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse))
		);
	}

	:where(.space-y-2 > :not(:last-child)) {
		--tw-space-y-reverse: 0;
		margin-block-start: calc(
			calc(var(--spacing) * 2) * var(--tw-space-y-reverse)
		);
		margin-block-end: calc(
			calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse))
		);
	}

	:where(.space-y-2\.5 > :not(:last-child)) {
		--tw-space-y-reverse: 0;
		margin-block-start: calc(
			calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse)
		);
		margin-block-end: calc(
			calc(var(--spacing) * 2.5) * calc(1 - var(--tw-space-y-reverse))
		);
	}

	:where(.space-y-3 > :not(:last-child)) {
		--tw-space-y-reverse: 0;
		margin-block-start: calc(
			calc(var(--spacing) * 3) * var(--tw-space-y-reverse)
		);
		margin-block-end: calc(
			calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse))
		);
	}

	:where(.space-y-4 > :not(:last-child)) {
		--tw-space-y-reverse: 0;
		margin-block-start: calc(
			calc(var(--spacing) * 4) * var(--tw-space-y-reverse)
		);
		margin-block-end: calc(
			calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse))
		);
	}

	:where(.space-y-6 > :not(:last-child)) {
		--tw-space-y-reverse: 0;
		margin-block-start: calc(
			calc(var(--spacing) * 6) * var(--tw-space-y-reverse)
		);
		margin-block-end: calc(
			calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse))
		);
	}

	:where(.space-y-8 > :not(:last-child)) {
		--tw-space-y-reverse: 0;
		margin-block-start: calc(
			calc(var(--spacing) * 8) * var(--tw-space-y-reverse)
		);
		margin-block-end: calc(
			calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse))
		);
	}

	:where(.space-y-10 > :not(:last-child)) {
		--tw-space-y-reverse: 0;
		margin-block-start: calc(
			calc(var(--spacing) * 10) * var(--tw-space-y-reverse)
		);
		margin-block-end: calc(
			calc(var(--spacing) * 10) * calc(1 - var(--tw-space-y-reverse))
		);
	}

	:where(.space-y-12 > :not(:last-child)) {
		--tw-space-y-reverse: 0;
		margin-block-start: calc(
			calc(var(--spacing) * 12) * var(--tw-space-y-reverse)
		);
		margin-block-end: calc(
			calc(var(--spacing) * 12) * calc(1 - var(--tw-space-y-reverse))
		);
	}

	:where(.space-y-20 > :not(:last-child)) {
		--tw-space-y-reverse: 0;
		margin-block-start: calc(
			calc(var(--spacing) * 20) * var(--tw-space-y-reverse)
		);
		margin-block-end: calc(
			calc(var(--spacing) * 20) * calc(1 - var(--tw-space-y-reverse))
		);
	}

	.gap-x-1 {
		column-gap: calc(var(--spacing) * 1);
	}

	.self-center {
		align-self: center;
	}

	.self-start {
		align-self: flex-start;
	}

	.self-stretch {
		align-self: stretch;
	}

	.truncate {
		text-overflow: ellipsis;
		white-space: nowrap;
		overflow: hidden;
	}

	.overflow-hidden {
		overflow: hidden;
	}

	.overflow-y-auto {
		overflow-y: auto;
	}

	.rounded {
		border-radius: 0.25rem;
	}

	.rounded-2xl {
		border-radius: var(--radius-2xl);
	}

	.rounded-3xl {
		border-radius: var(--radius-3xl);
	}

	.rounded-full {
		border-radius: var(--radius-full);
	}

	.rounded-lg {
		border-radius: var(--radius-lg);
	}

	.rounded-md {
		border-radius: var(--radius-md);
	}

	.rounded-sm {
		border-radius: var(--radius-sm);
	}

	.rounded-xl {
		border-radius: var(--radius-xl);
	}

	.rounded-r-full {
		border-top-right-radius: var(--radius-full);
		border-bottom-right-radius: var(--radius-full);
	}

	.rounded-r-lg {
		border-top-right-radius: var(--radius-lg);
		border-bottom-right-radius: var(--radius-lg);
	}

	.rounded-b-2xl {
		border-bottom-right-radius: var(--radius-2xl);
		border-bottom-left-radius: var(--radius-2xl);
	}

	.rounded-b-md {
		border-bottom-right-radius: var(--radius-md);
		border-bottom-left-radius: var(--radius-md);
	}

	.border {
		border-style: var(--tw-border-style);
		border-width: 1px;
	}

	.border-0 {
		border-style: var(--tw-border-style);
		border-width: 0;
	}

	.border-2 {
		border-style: var(--tw-border-style);
		border-width: 2px;
	}

	.border-y {
		border-block-style: var(--tw-border-style);
		border-block-width: 1px;
	}

	.border-t {
		border-top-style: var(--tw-border-style);
		border-top-width: 1px;
	}

	.border-t-12 {
		border-top-style: var(--tw-border-style);
		border-top-width: 12px;
	}

	.border-b {
		border-bottom-style: var(--tw-border-style);
		border-bottom-width: 1px;
	}

	.border-b-2 {
		border-bottom-style: var(--tw-border-style);
		border-bottom-width: 2px;
	}

	.border-l {
		border-left-style: var(--tw-border-style);
		border-left-width: 1px;
	}

	.border-l-2 {
		border-left-style: var(--tw-border-style);
		border-left-width: 2px;
	}

	.border-l-4 {
		border-left-style: var(--tw-border-style);
		border-left-width: 4px;
	}

	.border-brand {
		border-color: var(--color-brand);
	}

	.border-gray-100 {
		border-color: var(--color-gray-100);
	}

	.border-on-surface {
		border-color: var(--color-on-surface);
	}

	.border-on-surface\/5 {
		border-color: #1b1c1c0d;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.border-on-surface\/5 {
			border-color: color-mix(
				in oklab,
				var(--color-on-surface) 5%,
				transparent
			);
		}
	}

	.border-on-surface\/10 {
		border-color: #1b1c1c1a;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.border-on-surface\/10 {
			border-color: color-mix(
				in oklab,
				var(--color-on-surface) 10%,
				transparent
			);
		}
	}

	.border-outline {
		border-color: var(--color-outline);
	}

	.border-outline-variant {
		border-color: var(--color-outline-variant);
	}

	.border-outline-variant\/10 {
		border-color: #bcc8d01a;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.border-outline-variant\/10 {
			border-color: color-mix(
				in oklab,
				var(--color-outline-variant) 10%,
				transparent
			);
		}
	}

	.border-outline-variant\/30 {
		border-color: #bcc8d04d;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.border-outline-variant\/30 {
			border-color: color-mix(
				in oklab,
				var(--color-outline-variant) 30%,
				transparent
			);
		}
	}

	.border-outline-variant\/40 {
		border-color: #bcc8d066;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.border-outline-variant\/40 {
			border-color: color-mix(
				in oklab,
				var(--color-outline-variant) 40%,
				transparent
			);
		}
	}

	.border-outline-variant\/75 {
		border-color: #bcc8d0bf;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.border-outline-variant\/75 {
			border-color: color-mix(
				in oklab,
				var(--color-outline-variant) 75%,
				transparent
			);
		}
	}

	.border-primary {
		border-color: var(--color-primary);
	}

	.border-primary-container {
		border-color: var(--color-primary-container);
	}

	.border-primary-fixed {
		border-color: var(--color-primary-fixed);
	}

	.border-primary-fixed\/30 {
		border-color: #b8f2ff4d;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.border-primary-fixed\/30 {
			border-color: color-mix(
				in oklab,
				var(--color-primary-fixed) 30%,
				transparent
			);
		}
	}

	.border-secondary {
		border-color: var(--color-secondary);
	}

	.border-secondary-container {
		border-color: var(--color-secondary-container);
	}

	.border-slate-200 {
		border-color: var(--color-slate-200);
	}

	.border-surface-container-high {
		border-color: var(--color-surface-container-high);
	}

	.border-surface-dim {
		border-color: var(--color-surface-dim);
	}

	.border-tertiary-fixed-dim {
		border-color: var(--color-tertiary-fixed-dim);
	}

	.border-white {
		border-color: var(--color-white);
	}

	.border-white\/20 {
		border-color: #fff3;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.border-white\/20 {
			border-color: color-mix(in oklab, var(--color-white) 20%, transparent);
		}
	}

	.border-white\/30 {
		border-color: #ffffff4d;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.border-white\/30 {
			border-color: color-mix(in oklab, var(--color-white) 30%, transparent);
		}
	}

	.border-t-primary-fixed {
		border-top-color: var(--color-primary-fixed);
	}

	.bg-geometric-dense {
		background-color: var(--color-surface);
		background-image: radial-gradient(
			circle,
			var(--color-outline-variant) 1px,
			transparent 1px
		);
		background-size: 6px 6px;
	}

	.bg-background {
		background-color: var(--color-background);
	}

	.bg-black {
		background-color: var(--color-black);
	}

	.bg-black\/20 {
		background-color: #0003;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-black\/20 {
			background-color: color-mix(
				in oklab,
				var(--color-black) 20%,
				transparent
			);
		}
	}

	.bg-black\/40 {
		background-color: #0006;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-black\/40 {
			background-color: color-mix(
				in oklab,
				var(--color-black) 40%,
				transparent
			);
		}
	}

	.bg-black\/75 {
		background-color: #000000bf;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-black\/75 {
			background-color: color-mix(
				in oklab,
				var(--color-black) 75%,
				transparent
			);
		}
	}

	.bg-brand {
		background-color: var(--color-brand);
	}

	.bg-current {
		background-color: currentColor;
	}

	.bg-error-container {
		background-color: var(--color-error-container);
	}

	.bg-gray-100 {
		background-color: var(--color-gray-100);
	}

	.bg-inverse-surface {
		background-color: var(--color-inverse-surface);
	}

	.bg-inverse-surface\/30 {
		background-color: #1111114d;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-inverse-surface\/30 {
			background-color: color-mix(
				in oklab,
				var(--color-inverse-surface) 30%,
				transparent
			);
		}
	}

	.bg-on-primary {
		background-color: var(--color-on-primary);
	}

	.bg-on-primary-fixed-variant {
		background-color: var(--color-on-primary-fixed-variant);
	}

	.bg-on-primary\/20 {
		background-color: #001e2833;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-on-primary\/20 {
			background-color: color-mix(
				in oklab,
				var(--color-on-primary) 20%,
				transparent
			);
		}
	}

	.bg-on-primary\/30 {
		background-color: #001e284d;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-on-primary\/30 {
			background-color: color-mix(
				in oklab,
				var(--color-on-primary) 30%,
				transparent
			);
		}
	}

	.bg-on-secondary-container {
		background-color: var(--color-on-secondary-container);
	}

	.bg-on-secondary-fixed-variant {
		background-color: var(--color-on-secondary-fixed-variant);
	}

	.bg-on-tertiary-container {
		background-color: var(--color-on-tertiary-container);
	}

	.bg-outline {
		background-color: var(--color-outline);
	}

	.bg-outline-variant {
		background-color: var(--color-outline-variant);
	}

	.bg-primary {
		background-color: var(--color-primary);
	}

	.bg-primary-container {
		background-color: var(--color-primary-container);
	}

	.bg-primary-container\/30 {
		background-color: #d6f6ff4d;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-primary-container\/30 {
			background-color: color-mix(
				in oklab,
				var(--color-primary-container) 30%,
				transparent
			);
		}
	}

	.bg-primary-container\/40 {
		background-color: #d6f6ff66;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-primary-container\/40 {
			background-color: color-mix(
				in oklab,
				var(--color-primary-container) 40%,
				transparent
			);
		}
	}

	.bg-primary-fixed {
		background-color: var(--color-primary-fixed);
	}

	.bg-primary-fixed-dim {
		background-color: var(--color-primary-fixed-dim);
	}

	.bg-primary-fixed\/20 {
		background-color: #b8f2ff33;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-primary-fixed\/20 {
			background-color: color-mix(
				in oklab,
				var(--color-primary-fixed) 20%,
				transparent
			);
		}
	}

	.bg-primary\/70 {
		background-color: #13c9ffb3;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-primary\/70 {
			background-color: color-mix(
				in oklab,
				var(--color-primary) 70%,
				transparent
			);
		}
	}

	.bg-primary\/85 {
		background-color: #13c9ffd9;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-primary\/85 {
			background-color: color-mix(
				in oklab,
				var(--color-primary) 85%,
				transparent
			);
		}
	}

	.bg-secondary {
		background-color: var(--color-secondary);
	}

	.bg-secondary-container {
		background-color: var(--color-secondary-container);
	}

	.bg-secondary-dim {
		background-color: var(--color-secondary-dim);
	}

	.bg-secondary-fixed {
		background-color: var(--color-secondary-fixed);
	}

	.bg-secondary-fixed-dim {
		background-color: var(--color-secondary-fixed-dim);
	}

	.bg-slate-50 {
		background-color: var(--color-slate-50);
	}

	.bg-slate-200 {
		background-color: var(--color-slate-200);
	}

	.bg-slate-900 {
		background-color: var(--color-slate-900);
	}

	.bg-surface {
		background-color: var(--color-surface);
	}

	.bg-surface-bright {
		background-color: var(--color-surface-bright);
	}

	.bg-surface-container {
		background-color: var(--color-surface-container);
	}

	.bg-surface-container-high {
		background-color: var(--color-surface-container-high);
	}

	.bg-surface-container-highest {
		background-color: var(--color-surface-container-highest);
	}

	.bg-surface-container-low {
		background-color: var(--color-surface-container-low);
	}

	.bg-surface-container-lowest {
		background-color: var(--color-surface-container-lowest);
	}

	.bg-surface-container-lowest\/10 {
		background-color: #ffffff1a;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-surface-container-lowest\/10 {
			background-color: color-mix(
				in oklab,
				var(--color-surface-container-lowest) 10%,
				transparent
			);
		}
	}

	.bg-surface-container-lowest\/80 {
		background-color: #fffc;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-surface-container-lowest\/80 {
			background-color: color-mix(
				in oklab,
				var(--color-surface-container-lowest) 80%,
				transparent
			);
		}
	}

	.bg-surface-dim {
		background-color: var(--color-surface-dim);
	}

	.bg-tertiary {
		background-color: var(--color-tertiary);
	}

	.bg-tertiary-container {
		background-color: var(--color-tertiary-container);
	}

	.bg-tertiary-fixed {
		background-color: var(--color-tertiary-fixed);
	}

	.bg-tertiary-fixed-dim {
		background-color: var(--color-tertiary-fixed-dim);
	}

	.bg-tertiary-fixed\/20 {
		background-color: #fff3cc33;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-tertiary-fixed\/20 {
			background-color: color-mix(
				in oklab,
				var(--color-tertiary-fixed) 20%,
				transparent
			);
		}
	}

	.bg-tertiary-fixed\/50 {
		background-color: #fff3cc80;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-tertiary-fixed\/50 {
			background-color: color-mix(
				in oklab,
				var(--color-tertiary-fixed) 50%,
				transparent
			);
		}
	}

	.bg-transparent {
		background-color: #0000;
	}

	.bg-white {
		background-color: var(--color-white);
	}

	.bg-white\/20 {
		background-color: #fff3;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-white\/20 {
			background-color: color-mix(
				in oklab,
				var(--color-white) 20%,
				transparent
			);
		}
	}

	.bg-white\/30 {
		background-color: #ffffff4d;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-white\/30 {
			background-color: color-mix(
				in oklab,
				var(--color-white) 30%,
				transparent
			);
		}
	}

	.bg-linear-to-br {
		--tw-gradient-position: to bottom right;
	}

	@supports (background-image: linear-gradient(in lab, red, red)) {
		.bg-linear-to-br {
			--tw-gradient-position: to bottom right in oklab;
		}
	}

	.bg-linear-to-br {
		background-image: linear-gradient(var(--tw-gradient-stops));
	}

	.bg-linear-to-l {
		--tw-gradient-position: to left;
	}

	@supports (background-image: linear-gradient(in lab, red, red)) {
		.bg-linear-to-l {
			--tw-gradient-position: to left in oklab;
		}
	}

	.bg-linear-to-l {
		background-image: linear-gradient(var(--tw-gradient-stops));
	}

	.bg-linear-to-r {
		--tw-gradient-position: to right;
	}

	@supports (background-image: linear-gradient(in lab, red, red)) {
		.bg-linear-to-r {
			--tw-gradient-position: to right in oklab;
		}
	}

	.bg-linear-to-r {
		background-image: linear-gradient(var(--tw-gradient-stops));
	}

	.bg-linear-to-t {
		--tw-gradient-position: to top;
	}

	@supports (background-image: linear-gradient(in lab, red, red)) {
		.bg-linear-to-t {
			--tw-gradient-position: to top in oklab;
		}
	}

	.bg-linear-to-t {
		background-image: linear-gradient(var(--tw-gradient-stops));
	}

	.bg-gradient-to-br {
		--tw-gradient-position: to bottom right in oklab;
		background-image: linear-gradient(var(--tw-gradient-stops));
	}

	.bg-gradient-to-r {
		--tw-gradient-position: to right in oklab;
		background-image: linear-gradient(var(--tw-gradient-stops));
	}

	.bg-geometric {
		background-image: radial-gradient(
			circle at 2px 2px,
			#bcc8d059 1px,
			#0000 0
		);
	}

	@supports (color: color-mix(in lab, red, red)) {
		.bg-geometric {
			background-image: radial-gradient(
				circle at 2px 2px,
				color-mix(in srgb, var(--color-outline-variant) 35%, transparent) 1px,
				transparent 0
			);
		}
	}

	.bg-geometric {
		background-size: 32px 32px;
	}

	.from-black {
		--tw-gradient-from: var(--color-black);
		--tw-gradient-stops: var(
			--tw-gradient-via-stops,
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position)
		);
	}

	.from-black\/20 {
		--tw-gradient-from: #0003;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.from-black\/20 {
			--tw-gradient-from: color-mix(
				in oklab,
				var(--color-black) 20%,
				transparent
			);
		}
	}

	.from-black\/20 {
		--tw-gradient-stops: var(
			--tw-gradient-via-stops,
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position)
		);
	}

	.from-black\/40 {
		--tw-gradient-from: #0006;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.from-black\/40 {
			--tw-gradient-from: color-mix(
				in oklab,
				var(--color-black) 40%,
				transparent
			);
		}
	}

	.from-black\/40 {
		--tw-gradient-stops: var(
			--tw-gradient-via-stops,
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position)
		);
	}

	.from-black\/75 {
		--tw-gradient-from: #000000bf;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.from-black\/75 {
			--tw-gradient-from: color-mix(
				in oklab,
				var(--color-black) 75%,
				transparent
			);
		}
	}

	.from-black\/75 {
		--tw-gradient-stops: var(
			--tw-gradient-via-stops,
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position)
		);
	}

	.from-primary {
		--tw-gradient-from: var(--color-primary);
		--tw-gradient-stops: var(
			--tw-gradient-via-stops,
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position)
		);
	}

	.from-primary-container {
		--tw-gradient-from: var(--color-primary-container);
		--tw-gradient-stops: var(
			--tw-gradient-via-stops,
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position)
		);
	}

	.from-primary\/70 {
		--tw-gradient-from: #13c9ffb3;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.from-primary\/70 {
			--tw-gradient-from: color-mix(
				in oklab,
				var(--color-primary) 70%,
				transparent
			);
		}
	}

	.from-primary\/70 {
		--tw-gradient-stops: var(
			--tw-gradient-via-stops,
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position)
		);
	}

	.from-primary\/90 {
		--tw-gradient-from: #13c9ffe6;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.from-primary\/90 {
			--tw-gradient-from: color-mix(
				in oklab,
				var(--color-primary) 90%,
				transparent
			);
		}
	}

	.from-primary\/90 {
		--tw-gradient-stops: var(
			--tw-gradient-via-stops,
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position)
		);
	}

	.from-transparent {
		--tw-gradient-from: transparent;
		--tw-gradient-stops: var(
			--tw-gradient-via-stops,
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position)
		);
	}

	.via-black {
		--tw-gradient-via: var(--color-black);
		--tw-gradient-via-stops:
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-via) var(--tw-gradient-via-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position);
		--tw-gradient-stops: var(--tw-gradient-via-stops);
	}

	.via-black\/15 {
		--tw-gradient-via: #00000026;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.via-black\/15 {
			--tw-gradient-via: color-mix(
				in oklab,
				var(--color-black) 15%,
				transparent
			);
		}
	}

	.via-black\/15 {
		--tw-gradient-via-stops:
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-via) var(--tw-gradient-via-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position);
		--tw-gradient-stops: var(--tw-gradient-via-stops);
	}

	.via-primary {
		--tw-gradient-via: var(--color-primary);
		--tw-gradient-via-stops:
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-via) var(--tw-gradient-via-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position);
		--tw-gradient-stops: var(--tw-gradient-via-stops);
	}

	.via-primary\/20 {
		--tw-gradient-via: #13c9ff33;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.via-primary\/20 {
			--tw-gradient-via: color-mix(
				in oklab,
				var(--color-primary) 20%,
				transparent
			);
		}
	}

	.via-primary\/20 {
		--tw-gradient-via-stops:
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-via) var(--tw-gradient-via-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position);
		--tw-gradient-stops: var(--tw-gradient-via-stops);
	}

	.via-primary\/40 {
		--tw-gradient-via: #13c9ff66;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.via-primary\/40 {
			--tw-gradient-via: color-mix(
				in oklab,
				var(--color-primary) 40%,
				transparent
			);
		}
	}

	.via-primary\/40 {
		--tw-gradient-via-stops:
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-via) var(--tw-gradient-via-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position);
		--tw-gradient-stops: var(--tw-gradient-via-stops);
	}

	.to-primary {
		--tw-gradient-to: var(--color-primary);
		--tw-gradient-stops: var(
			--tw-gradient-via-stops,
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position)
		);
	}

	.to-primary-container {
		--tw-gradient-to: var(--color-primary-container);
		--tw-gradient-stops: var(
			--tw-gradient-via-stops,
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position)
		);
	}

	.to-primary\/20 {
		--tw-gradient-to: #13c9ff33;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.to-primary\/20 {
			--tw-gradient-to: color-mix(
				in oklab,
				var(--color-primary) 20%,
				transparent
			);
		}
	}

	.to-primary\/20 {
		--tw-gradient-stops: var(
			--tw-gradient-via-stops,
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position)
		);
	}

	.to-secondary {
		--tw-gradient-to: var(--color-secondary);
		--tw-gradient-stops: var(
			--tw-gradient-via-stops,
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position)
		);
	}

	.to-surface-container-low {
		--tw-gradient-to: var(--color-surface-container-low);
		--tw-gradient-stops: var(
			--tw-gradient-via-stops,
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position)
		);
	}

	.to-surface-container-low\/20 {
		--tw-gradient-to: #f6f3f233;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.to-surface-container-low\/20 {
			--tw-gradient-to: color-mix(
				in oklab,
				var(--color-surface-container-low) 20%,
				transparent
			);
		}
	}

	.to-surface-container-low\/20 {
		--tw-gradient-stops: var(
			--tw-gradient-via-stops,
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position)
		);
	}

	.to-transparent {
		--tw-gradient-to: transparent;
		--tw-gradient-stops: var(
			--tw-gradient-via-stops,
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position)
		);
	}

	.mask-repeat {
		-webkit-mask-repeat: repeat;
		mask-repeat: repeat;
	}

	.object-contain {
		object-fit: contain;
	}

	.object-cover {
		object-fit: cover;
	}

	.object-top {
		object-position: top;
	}

	.p-0 {
		padding: calc(var(--spacing) * 0);
	}

	.p-0\.75 {
		padding: calc(var(--spacing) * 0.75);
	}

	.p-1 {
		padding: calc(var(--spacing) * 1);
	}

	.p-1\.5 {
		padding: calc(var(--spacing) * 1.5);
	}

	.p-2 {
		padding: calc(var(--spacing) * 2);
	}

	.p-3 {
		padding: calc(var(--spacing) * 3);
	}

	.p-4 {
		padding: calc(var(--spacing) * 4);
	}

	.p-5 {
		padding: calc(var(--spacing) * 5);
	}

	.p-6 {
		padding: calc(var(--spacing) * 6);
	}

	.p-8 {
		padding: calc(var(--spacing) * 8);
	}

	.p-10 {
		padding: calc(var(--spacing) * 10);
	}

	.p-12 {
		padding: calc(var(--spacing) * 12);
	}

	.px-0 {
		padding-inline: calc(var(--spacing) * 0);
	}

	.px-2 {
		padding-inline: calc(var(--spacing) * 2);
	}

	.px-2\.5 {
		padding-inline: calc(var(--spacing) * 2.5);
	}

	.px-3 {
		padding-inline: calc(var(--spacing) * 3);
	}

	.px-4 {
		padding-inline: calc(var(--spacing) * 4);
	}

	.px-5 {
		padding-inline: calc(var(--spacing) * 5);
	}

	.px-6 {
		padding-inline: calc(var(--spacing) * 6);
	}

	.px-7 {
		padding-inline: calc(var(--spacing) * 7);
	}

	.px-8 {
		padding-inline: calc(var(--spacing) * 8);
	}

	.px-10 {
		padding-inline: calc(var(--spacing) * 10);
	}

	.px-12 {
		padding-inline: calc(var(--spacing) * 12);
	}

	.py-0 {
		padding-block: calc(var(--spacing) * 0);
	}

	.py-0\.5 {
		padding-block: calc(var(--spacing) * 0.5);
	}

	.py-1 {
		padding-block: calc(var(--spacing) * 1);
	}

	.py-1\.5 {
		padding-block: calc(var(--spacing) * 1.5);
	}

	.py-2 {
		padding-block: calc(var(--spacing) * 2);
	}

	.py-2\.5 {
		padding-block: calc(var(--spacing) * 2.5);
	}

	.py-3 {
		padding-block: calc(var(--spacing) * 3);
	}

	.py-4 {
		padding-block: calc(var(--spacing) * 4);
	}

	.py-5 {
		padding-block: calc(var(--spacing) * 5);
	}

	.py-6 {
		padding-block: calc(var(--spacing) * 6);
	}

	.py-8 {
		padding-block: calc(var(--spacing) * 8);
	}

	.py-10 {
		padding-block: calc(var(--spacing) * 10);
	}

	.py-12 {
		padding-block: calc(var(--spacing) * 12);
	}

	.py-14 {
		padding-block: calc(var(--spacing) * 14);
	}

	.py-16 {
		padding-block: calc(var(--spacing) * 16);
	}

	.py-20 {
		padding-block: calc(var(--spacing) * 20);
	}

	.py-24 {
		padding-block: calc(var(--spacing) * 24);
	}

	.py-32 {
		padding-block: calc(var(--spacing) * 32);
	}

	.ps-2 {
		padding-inline-start: calc(var(--spacing) * 2);
	}

	.pt-0 {
		padding-top: calc(var(--spacing) * 0);
	}

	.pt-0\.5 {
		padding-top: calc(var(--spacing) * 0.5);
	}

	.pt-1 {
		padding-top: calc(var(--spacing) * 1);
	}

	.pt-2 {
		padding-top: calc(var(--spacing) * 2);
	}

	.pt-4 {
		padding-top: calc(var(--spacing) * 4);
	}

	.pt-5 {
		padding-top: calc(var(--spacing) * 5);
	}

	.pr-2 {
		padding-right: calc(var(--spacing) * 2);
	}

	.pr-10 {
		padding-right: calc(var(--spacing) * 10);
	}

	.pb-1 {
		padding-bottom: calc(var(--spacing) * 1);
	}

	.pb-2 {
		padding-bottom: calc(var(--spacing) * 2);
	}

	.pb-3 {
		padding-bottom: calc(var(--spacing) * 3);
	}

	.pb-4 {
		padding-bottom: calc(var(--spacing) * 4);
	}

	.pb-5 {
		padding-bottom: calc(var(--spacing) * 5);
	}

	.pb-6 {
		padding-bottom: calc(var(--spacing) * 6);
	}

	.pb-8 {
		padding-bottom: calc(var(--spacing) * 8);
	}

	.pb-10 {
		padding-bottom: calc(var(--spacing) * 10);
	}

	.pb-16 {
		padding-bottom: calc(var(--spacing) * 16);
	}

	.pb-20 {
		padding-bottom: calc(var(--spacing) * 20);
	}

	.pl-0 {
		padding-left: calc(var(--spacing) * 0);
	}

	.pl-3 {
		padding-left: calc(var(--spacing) * 3);
	}

	.pl-4 {
		padding-left: calc(var(--spacing) * 4);
	}

	.pl-5 {
		padding-left: calc(var(--spacing) * 5);
	}

	.pl-6 {
		padding-left: calc(var(--spacing) * 6);
	}

	.text-center {
		text-align: center;
	}

	.text-left {
		text-align: left;
	}

	.text-right {
		text-align: right;
	}

	.font-body {
		font-family: var(--font-body);
	}

	.font-headline {
		font-family: var(--font-headline);
	}

	.font-label {
		font-family: var(--font-label);
	}

	.text-2xl {
		font-size: var(--text-2xl);
		line-height: var(--tw-leading, var(--text-2xl--line-height));
	}

	.text-3xl {
		font-size: var(--text-3xl);
		line-height: var(--tw-leading, var(--text-3xl--line-height));
	}

	.text-4xl {
		font-size: var(--text-4xl);
		line-height: var(--tw-leading, var(--text-4xl--line-height));
	}

	.text-5xl {
		font-size: var(--text-5xl);
		line-height: var(--tw-leading, var(--text-5xl--line-height));
	}

	.text-6xl {
		font-size: var(--text-6xl);
		line-height: var(--tw-leading, var(--text-6xl--line-height));
	}

	.text-9xl {
		font-size: var(--text-9xl);
		line-height: var(--tw-leading, var(--text-9xl--line-height));
	}

	.text-base {
		font-size: var(--text-base);
		line-height: var(--tw-leading, var(--text-base--line-height));
	}

	.text-lg {
		font-size: var(--text-lg);
		line-height: var(--tw-leading, var(--text-lg--line-height));
	}

	.text-sm {
		font-size: var(--text-sm);
		line-height: var(--tw-leading, var(--text-sm--line-height));
	}

	.text-xl {
		font-size: var(--text-xl);
		line-height: var(--tw-leading, var(--text-xl--line-height));
	}

	.text-xs {
		font-size: var(--text-xs);
		line-height: var(--tw-leading, var(--text-xs--line-height));
	}

	.text-\[10px\] {
		font-size: 10px;
	}

	.text-\[12px\] {
		font-size: 12px;
	}

	.leading-\[1\.1\] {
		--tw-leading: 1.1;
		line-height: 1.1;
	}

	.leading-none {
		--tw-leading: 1;
		line-height: 1;
	}

	.leading-relaxed {
		--tw-leading: var(--leading-relaxed);
		line-height: var(--leading-relaxed);
	}

	.leading-snug {
		--tw-leading: var(--leading-snug);
		line-height: var(--leading-snug);
	}

	.leading-tight {
		--tw-leading: var(--leading-tight);
		line-height: var(--leading-tight);
	}

	.font-black {
		--tw-font-weight: var(--font-weight-black);
		font-weight: var(--font-weight-black);
	}

	.font-bold {
		--tw-font-weight: var(--font-weight-bold);
		font-weight: var(--font-weight-bold);
	}

	.font-medium {
		--tw-font-weight: var(--font-weight-medium);
		font-weight: var(--font-weight-medium);
	}

	.font-normal {
		--tw-font-weight: var(--font-weight-normal);
		font-weight: var(--font-weight-normal);
	}

	.font-semibold {
		--tw-font-weight: var(--font-weight-semibold);
		font-weight: var(--font-weight-semibold);
	}

	.tracking-\[0\.2em\] {
		--tw-tracking: 0.2em;
		letter-spacing: 0.2em;
	}

	.tracking-tight {
		--tw-tracking: var(--tracking-tight);
		letter-spacing: var(--tracking-tight);
	}

	.tracking-tighter {
		--tw-tracking: var(--tracking-tighter);
		letter-spacing: var(--tracking-tighter);
	}

	.tracking-wide {
		--tw-tracking: var(--tracking-wide);
		letter-spacing: var(--tracking-wide);
	}

	.tracking-wider {
		--tw-tracking: var(--tracking-wider);
		letter-spacing: var(--tracking-wider);
	}

	.tracking-widest {
		--tw-tracking: var(--tracking-widest);
		letter-spacing: var(--tracking-widest);
	}

	.break-all {
		word-break: break-all;
	}

	.whitespace-nowrap {
		white-space: nowrap;
	}

	.text-blue-700 {
		color: var(--color-blue-700);
	}

	.text-blue-800 {
		color: var(--color-blue-800);
	}

	.text-blue-900 {
		color: var(--color-blue-900);
	}

	.text-brand {
		color: var(--color-brand);
	}

	.text-gray-500 {
		color: var(--color-gray-500);
	}

	.text-inverse-primary {
		color: var(--color-inverse-primary);
	}

	.text-on-background {
		color: var(--color-on-background);
	}

	.text-on-error-container {
		color: var(--color-on-error-container);
	}

	.text-on-primary {
		color: var(--color-on-primary);
	}

	.text-on-primary-container {
		color: var(--color-on-primary-container);
	}

	.text-on-primary-container-variant {
		color: var(--color-on-primary-container-variant);
	}

	.text-on-primary-fixed {
		color: var(--color-on-primary-fixed);
	}

	.text-on-primary-fixed-variant {
		color: var(--color-on-primary-fixed-variant);
	}

	.text-on-primary\/80 {
		color: #001e28cc;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.text-on-primary\/80 {
			color: color-mix(in oklab, var(--color-on-primary) 80%, transparent);
		}
	}

	.text-on-secondary {
		color: var(--color-on-secondary);
	}

	.text-on-secondary-container {
		color: var(--color-on-secondary-container);
	}

	.text-on-secondary-fixed-variant {
		color: var(--color-on-secondary-fixed-variant);
	}

	.text-on-secondary\/70 {
		color: #ffffffb3;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.text-on-secondary\/70 {
			color: color-mix(in oklab, var(--color-on-secondary) 70%, transparent);
		}
	}

	.text-on-secondary\/80 {
		color: #fffc;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.text-on-secondary\/80 {
			color: color-mix(in oklab, var(--color-on-secondary) 80%, transparent);
		}
	}

	.text-on-surface {
		color: var(--color-on-surface);
	}

	.text-on-surface-bright {
		color: var(--color-on-surface-bright);
	}

	.text-on-surface-container {
		color: var(--color-on-surface-container);
	}

	.text-on-surface-variant {
		color: var(--color-on-surface-variant);
	}

	.text-on-surface-variant\/50 {
		color: #3d484f80;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.text-on-surface-variant\/50 {
			color: color-mix(
				in oklab,
				var(--color-on-surface-variant) 50%,
				transparent
			);
		}
	}

	.text-on-surface-variant\/60 {
		color: #3d484f99;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.text-on-surface-variant\/60 {
			color: color-mix(
				in oklab,
				var(--color-on-surface-variant) 60%,
				transparent
			);
		}
	}

	.text-on-surface-variant\/70 {
		color: #3d484fb3;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.text-on-surface-variant\/70 {
			color: color-mix(
				in oklab,
				var(--color-on-surface-variant) 70%,
				transparent
			);
		}
	}

	.text-on-surface\/40 {
		color: #1b1c1c66;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.text-on-surface\/40 {
			color: color-mix(in oklab, var(--color-on-surface) 40%, transparent);
		}
	}

	.text-on-surface\/60 {
		color: #1b1c1c99;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.text-on-surface\/60 {
			color: color-mix(in oklab, var(--color-on-surface) 60%, transparent);
		}
	}

	.text-on-tertiary {
		color: var(--color-on-tertiary);
	}

	.text-on-tertiary-container {
		color: var(--color-on-tertiary-container);
	}

	.text-on-tertiary-fixed {
		color: var(--color-on-tertiary-fixed);
	}

	.text-on-tertiary-fixed-variant {
		color: var(--color-on-tertiary-fixed-variant);
	}

	.text-outline {
		color: var(--color-outline);
	}

	.text-primary {
		color: var(--color-primary);
	}

	.text-primary-container {
		color: var(--color-primary-container);
	}

	.text-primary-fixed {
		color: var(--color-primary-fixed);
	}

	.text-primary\/20 {
		color: #13c9ff33;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.text-primary\/20 {
			color: color-mix(in oklab, var(--color-primary) 20%, transparent);
		}
	}

	.text-primary\/50 {
		color: #13c9ff80;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.text-primary\/50 {
			color: color-mix(in oklab, var(--color-primary) 50%, transparent);
		}
	}

	.text-secondary {
		color: var(--color-secondary);
	}

	.text-secondary-container {
		color: var(--color-secondary-container);
	}

	.text-secondary-dim {
		color: var(--color-secondary-dim);
	}

	.text-secondary-fixed {
		color: var(--color-secondary-fixed);
	}

	.text-secondary-fixed-dim {
		color: var(--color-secondary-fixed-dim);
	}

	.text-slate-400 {
		color: var(--color-slate-400);
	}

	.text-slate-500 {
		color: var(--color-slate-500);
	}

	.text-slate-600 {
		color: var(--color-slate-600);
	}

	.text-slate-700 {
		color: var(--color-slate-700);
	}

	.text-surface {
		color: var(--color-surface);
	}

	.text-surface-container-high {
		color: var(--color-surface-container-high);
	}

	.text-tertiary {
		color: var(--color-tertiary);
	}

	.text-white {
		color: var(--color-white);
	}

	.text-white\/80 {
		color: #fffc;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.text-white\/80 {
			color: color-mix(in oklab, var(--color-white) 80%, transparent);
		}
	}

	.text-white\/90 {
		color: #ffffffe6;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.text-white\/90 {
			color: color-mix(in oklab, var(--color-white) 90%, transparent);
		}
	}

	.uppercase {
		text-transform: uppercase;
	}

	.italic {
		font-style: italic;
	}

	.underline {
		text-decoration-line: underline;
	}

	.underline-offset-2 {
		text-underline-offset: 2px;
	}

	.opacity-0 {
		opacity: 0;
	}

	.opacity-10 {
		opacity: 0.1;
	}

	.opacity-15 {
		opacity: 0.15;
	}

	.opacity-20 {
		opacity: 0.2;
	}

	.opacity-30 {
		opacity: 0.3;
	}

	.opacity-50 {
		opacity: 0.5;
	}

	.opacity-60 {
		opacity: 0.6;
	}

	.opacity-80 {
		opacity: 0.8;
	}

	.opacity-90 {
		opacity: 0.9;
	}

	.opacity-100 {
		opacity: 1;
	}

	.mix-blend-overlay {
		mix-blend-mode: overlay;
	}

	.shadow {
		--tw-shadow:
			0 1px 3px 0 var(--tw-shadow-color, #0000001a),
			0 1px 2px -1px var(--tw-shadow-color, #0000001a);
		box-shadow:
			var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
			var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
	}

	.shadow-2xl {
		--tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, #00000040);
		box-shadow:
			var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
			var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
	}

	.shadow-lg {
		--tw-shadow:
			0 10px 15px -3px var(--tw-shadow-color, #0000001a),
			0 4px 6px -4px var(--tw-shadow-color, #0000001a);
		box-shadow:
			var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
			var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
	}

	.shadow-md {
		--tw-shadow:
			0 4px 6px -1px var(--tw-shadow-color, #0000001a),
			0 2px 4px -2px var(--tw-shadow-color, #0000001a);
		box-shadow:
			var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
			var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
	}

	.shadow-sm {
		--tw-shadow:
			0 1px 3px 0 var(--tw-shadow-color, #0000001a),
			0 1px 2px -1px var(--tw-shadow-color, #0000001a);
		box-shadow:
			var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
			var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
	}

	.shadow-xl {
		--tw-shadow:
			0 20px 25px -5px var(--tw-shadow-color, #0000001a),
			0 8px 10px -6px var(--tw-shadow-color, #0000001a);
		box-shadow:
			var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
			var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
	}

	.ring,
	.ring-1 {
		--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
			calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
		box-shadow:
			var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
			var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
	}

	.ring-4 {
		--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
			calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
		box-shadow:
			var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
			var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
	}

	.ring-8 {
		--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
			calc(8px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
		box-shadow:
			var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
			var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
	}

	.shadow-on-primary {
		--tw-shadow-color: #001e28;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.shadow-on-primary {
			--tw-shadow-color: color-mix(
				in oklab,
				var(--color-on-primary) var(--tw-shadow-alpha),
				transparent
			);
		}
	}

	.shadow-on-primary\/30 {
		--tw-shadow-color: #001e284d;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.shadow-on-primary\/30 {
			--tw-shadow-color: color-mix(
				in oklab,
				color-mix(in oklab, var(--color-on-primary) 30%, transparent)
					var(--tw-shadow-alpha),
				transparent
			);
		}
	}

	.shadow-outline-variant {
		--tw-shadow-color: #bcc8d0;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.shadow-outline-variant {
			--tw-shadow-color: color-mix(
				in oklab,
				var(--color-outline-variant) var(--tw-shadow-alpha),
				transparent
			);
		}
	}

	.ring-outline-variant {
		--tw-ring-color: var(--color-outline-variant);
	}

	.ring-secondary {
		--tw-ring-color: var(--color-secondary);
	}

	.ring-secondary\/50 {
		--tw-ring-color: #557fc780;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.ring-secondary\/50 {
			--tw-ring-color: color-mix(
				in oklab,
				var(--color-secondary) 50%,
				transparent
			);
		}
	}

	.ring-surface {
		--tw-ring-color: var(--color-surface);
	}

	.ring-offset-2 {
		--tw-ring-offset-width: 2px;
		--tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0
			var(--tw-ring-offset-width) var(--tw-ring-offset-color);
	}

	.outline {
		outline-style: var(--tw-outline-style);
		outline-width: 1px;
	}

	.blur {
		--tw-blur: blur(8px);
		filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,)
			var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,)
			var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
	}

	.blur-3xl {
		--tw-blur: blur(var(--blur-3xl));
		filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,)
			var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,)
			var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
	}

	.blur-\[12px\] {
		--tw-blur: blur(12px);
		filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,)
			var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,)
			var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
	}

	.brightness-75 {
		--tw-brightness: brightness(75%);
		filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,)
			var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,)
			var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
	}

	.contrast-125 {
		--tw-contrast: contrast(125%);
		filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,)
			var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,)
			var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
	}

	.grayscale {
		--tw-grayscale: grayscale(100%);
		filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,)
			var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,)
			var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
	}

	.grayscale-25 {
		--tw-grayscale: grayscale(25%);
		filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,)
			var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,)
			var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
	}

	.filter {
		filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,)
			var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,)
			var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
	}

	.backdrop-blur-md {
		--tw-backdrop-blur: blur(var(--blur-md));
		-webkit-backdrop-filter: var(--tw-backdrop-blur,)
			var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,)
			var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,)
			var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,)
			var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
		backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,)
			var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,)
			var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,)
			var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,)
			var(--tw-backdrop-sepia,);
	}

	.backdrop-blur-sm {
		--tw-backdrop-blur: blur(var(--blur-sm));
		-webkit-backdrop-filter: var(--tw-backdrop-blur,)
			var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,)
			var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,)
			var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,)
			var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
		backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,)
			var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,)
			var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,)
			var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,)
			var(--tw-backdrop-sepia,);
	}

	.backdrop-filter {
		-webkit-backdrop-filter: var(--tw-backdrop-blur,)
			var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,)
			var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,)
			var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,)
			var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
		backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,)
			var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,)
			var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,)
			var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,)
			var(--tw-backdrop-sepia,);
	}

	.transition {
		transition-property:
			color,
			background-color,
			border-color,
			outline-color,
			text-decoration-color,
			fill,
			stroke,
			--tw-gradient-from,
			--tw-gradient-via,
			--tw-gradient-to,
			opacity,
			box-shadow,
			transform,
			translate,
			scale,
			rotate,
			filter,
			-webkit-backdrop-filter,
			backdrop-filter,
			display,
			content-visibility,
			overlay,
			pointer-events;
		transition-timing-function: var(
			--tw-ease,
			var(--default-transition-timing-function)
		);
		transition-duration: var(--tw-duration, var(--default-transition-duration));
	}

	.transition-all {
		transition-property: all;
		transition-timing-function: var(
			--tw-ease,
			var(--default-transition-timing-function)
		);
		transition-duration: var(--tw-duration, var(--default-transition-duration));
	}

	.transition-colors {
		transition-property:
			color, background-color, border-color, outline-color,
			text-decoration-color, fill, stroke, --tw-gradient-from,
			--tw-gradient-via, --tw-gradient-to;
		transition-timing-function: var(
			--tw-ease,
			var(--default-transition-timing-function)
		);
		transition-duration: var(--tw-duration, var(--default-transition-duration));
	}

	.transition-opacity {
		transition-property: opacity;
		transition-timing-function: var(
			--tw-ease,
			var(--default-transition-timing-function)
		);
		transition-duration: var(--tw-duration, var(--default-transition-duration));
	}

	.transition-shadow {
		transition-property: box-shadow;
		transition-timing-function: var(
			--tw-ease,
			var(--default-transition-timing-function)
		);
		transition-duration: var(--tw-duration, var(--default-transition-duration));
	}

	.transition-transform {
		transition-property: transform, translate, scale, rotate;
		transition-timing-function: var(
			--tw-ease,
			var(--default-transition-timing-function)
		);
		transition-duration: var(--tw-duration, var(--default-transition-duration));
	}

	.duration-150 {
		--tw-duration: 0.15s;
		transition-duration: 0.15s;
	}

	.duration-200 {
		--tw-duration: 0.2s;
		transition-duration: 0.2s;
	}

	.duration-300 {
		--tw-duration: 0.3s;
		transition-duration: 0.3s;
	}

	.duration-400 {
		--tw-duration: 0.4s;
		transition-duration: 0.4s;
	}

	.duration-500 {
		--tw-duration: 0.5s;
		transition-duration: 0.5s;
	}

	.duration-700 {
		--tw-duration: 0.7s;
		transition-duration: 0.7s;
	}

	.ease-in-out {
		--tw-ease: var(--ease-in-out);
		transition-timing-function: var(--ease-in-out);
	}

	.ease-out {
		--tw-ease: var(--ease-out);
		transition-timing-function: var(--ease-out);
	}

	.will-change-transform {
		will-change: transform;
	}

	.outline-none {
		--tw-outline-style: none;
		outline-style: none;
	}

	.select-none {
		-webkit-user-select: none;
		user-select: none;
	}

	.\[text-shadow\:0_2px_4px_rgba\(0\,0\,0\,0\.9\)\,0_4px_16px_rgba\(0\,0\,0\,0\.7\)\,0_0_40px_rgba\(0\,0\,0\,0\.5\)\] {
		text-shadow:
			0 2px 4px #000000e6,
			0 4px 16px #000000b3,
			0 0 40px #00000080;
	}

	.text-shadow-lg {
		text-shadow:
			0px 1px 2px var(--tw-text-shadow-color, #0000001a),
			0px 3px 2px var(--tw-text-shadow-color, #0000001a),
			0px 4px 8px var(--tw-text-shadow-color, #0000001a);
	}

	:is(.\*\:w-full > *) {
		width: 100%;
	}

	.group-focus-within\:visible:is(:where(.group):focus-within *) {
		visibility: visible;
	}

	.group-focus-within\:translate-y-0:is(:where(.group):focus-within *) {
		--tw-translate-y: calc(var(--spacing) * 0);
		translate: var(--tw-translate-x) var(--tw-translate-y);
	}

	.group-focus-within\:opacity-100:is(:where(.group):focus-within *) {
		opacity: 1;
	}

	.group-focus-within\/search\:w-8:is(:where(.group\/search):focus-within *) {
		width: calc(var(--spacing) * 8);
	}

	.group-focus-within\/search\:opacity-100:is(
		:where(.group\/search):focus-within *
	) {
		opacity: 1;
	}

	@media (hover: hover) {
		.group-hover\:visible:is(:where(.group):hover *) {
			visibility: visible;
		}

		.group-hover\:right-4:is(:where(.group):hover *) {
			right: calc(var(--spacing) * 4);
		}

		.group-hover\:ml-1:is(:where(.group):hover *) {
			margin-left: calc(var(--spacing) * 1);
		}

		.group-hover\:h-56:is(:where(.group):hover *) {
			height: calc(var(--spacing) * 56);
		}

		.group-hover\:w-3\.5:is(:where(.group):hover *) {
			width: calc(var(--spacing) * 3.5);
		}

		.group-hover\:w-32:is(:where(.group):hover *) {
			width: calc(var(--spacing) * 32);
		}

		.group-hover\:w-full:is(:where(.group):hover *) {
			width: 100%;
		}

		.group-hover\:-translate-x-0\.5:is(:where(.group):hover *) {
			--tw-translate-x: calc(var(--spacing) * -0.5);
			translate: var(--tw-translate-x) var(--tw-translate-y);
		}

		.group-hover\:-translate-x-3:is(:where(.group):hover *) {
			--tw-translate-x: calc(var(--spacing) * -3);
			translate: var(--tw-translate-x) var(--tw-translate-y);
		}

		.group-hover\:translate-x-0:is(:where(.group):hover *) {
			--tw-translate-x: calc(var(--spacing) * 0);
			translate: var(--tw-translate-x) var(--tw-translate-y);
		}

		.group-hover\:translate-x-1:is(:where(.group):hover *) {
			--tw-translate-x: calc(var(--spacing) * 1);
			translate: var(--tw-translate-x) var(--tw-translate-y);
		}

		.group-hover\:translate-y-0:is(:where(.group):hover *) {
			--tw-translate-y: calc(var(--spacing) * 0);
			translate: var(--tw-translate-x) var(--tw-translate-y);
		}

		.group-hover\:scale-105:is(:where(.group):hover *) {
			--tw-scale-x: 105%;
			--tw-scale-y: 105%;
			--tw-scale-z: 105%;
			scale: var(--tw-scale-x) var(--tw-scale-y);
		}

		.group-hover\:scale-110:is(:where(.group):hover *) {
			--tw-scale-x: 110%;
			--tw-scale-y: 110%;
			--tw-scale-z: 110%;
			scale: var(--tw-scale-x) var(--tw-scale-y);
		}

		.group-hover\:rotate-45:is(:where(.group):hover *) {
			rotate: 45deg;
		}

		.group-hover\:\[transform\:skew\(-12deg\)_translateX\(100\%\)\]:is(
			:where(.group):hover *
		) {
			transform: skew(-12deg) translateX(100%);
		}

		.group-hover\:gap-4:is(:where(.group):hover *) {
			gap: calc(var(--spacing) * 4);
		}

		.group-hover\:border-transparent:is(:where(.group):hover *) {
			border-color: #0000;
		}

		.group-hover\:bg-primary-container:is(:where(.group):hover *) {
			background-color: var(--color-primary-container);
		}

		.group-hover\:bg-primary\/20:is(:where(.group):hover *) {
			background-color: #13c9ff33;
		}

		@supports (color: color-mix(in lab, red, red)) {
			.group-hover\:bg-primary\/20:is(:where(.group):hover *) {
				background-color: color-mix(
					in oklab,
					var(--color-primary) 20%,
					transparent
				);
			}
		}

		.group-hover\:bg-tertiary-fixed:is(:where(.group):hover *) {
			background-color: var(--color-tertiary-fixed);
		}

		.group-hover\:px-6:is(:where(.group):hover *) {
			padding-inline: calc(var(--spacing) * 6);
		}

		.group-hover\:pl-1:is(:where(.group):hover *) {
			padding-left: calc(var(--spacing) * 1);
		}

		.group-hover\:text-inverse-primary:is(:where(.group):hover *) {
			color: var(--color-inverse-primary);
		}

		.group-hover\:text-on-primary:is(:where(.group):hover *) {
			color: var(--color-on-primary);
		}

		.group-hover\:text-on-primary-container-variant:is(:where(.group):hover *) {
			color: var(--color-on-primary-container-variant);
		}

		.group-hover\:text-on-primary-fixed-variant:is(:where(.group):hover *) {
			color: var(--color-on-primary-fixed-variant);
		}

		.group-hover\:text-primary:is(:where(.group):hover *) {
			color: var(--color-primary);
		}

		.group-hover\:text-secondary:is(:where(.group):hover *) {
			color: var(--color-secondary);
		}

		.group-hover\:text-tertiary:is(:where(.group):hover *) {
			color: var(--color-tertiary);
		}

		.group-hover\:opacity-0:is(:where(.group):hover *) {
			opacity: 0;
		}

		.group-hover\:opacity-100:is(:where(.group):hover *) {
			opacity: 1;
		}

		.group-hover\:duration-1000:is(:where(.group):hover *) {
			--tw-duration: 1s;
			transition-duration: 1s;
		}
	}

	.group-focus\:block:is(:where(.group):focus *) {
		display: block;
	}

	.group-focus\:hidden:is(:where(.group):focus *) {
		display: none;
	}

	.group-focus\:bg-primary\/20:is(:where(.group):focus *) {
		background-color: #13c9ff33;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.group-focus\:bg-primary\/20:is(:where(.group):focus *) {
			background-color: color-mix(
				in oklab,
				var(--color-primary) 20%,
				transparent
			);
		}
	}

	.group-focus\:text-inverse-primary:is(:where(.group):focus *) {
		color: var(--color-inverse-primary);
	}

	.group-focus\:text-on-primary-container-variant:is(:where(.group):focus *) {
		color: var(--color-on-primary-container-variant);
	}

	.group-focus-visible\:opacity-100:is(:where(.group):focus-visible *) {
		opacity: 1;
	}

	.placeholder\:text-outline::placeholder {
		color: var(--color-outline);
	}

	.before\:absolute:before {
		content: var(--tw-content);
		position: absolute;
	}

	.before\:top-1:before {
		content: var(--tw-content);
		top: calc(var(--spacing) * 1);
	}

	.before\:left-0:before {
		content: var(--tw-content);
		left: calc(var(--spacing) * 0);
	}

	.before\:h-6:before {
		content: var(--tw-content);
		height: calc(var(--spacing) * 6);
	}

	.before\:w-1\.5:before {
		content: var(--tw-content);
		width: calc(var(--spacing) * 1.5);
	}

	.before\:bg-\[linear-gradient\(to_bottom\,var\(--color-primary\)_50\%\,var\(--color-primary-fixed\)_50\%\)\]:before {
		content: var(--tw-content);
		background-image: linear-gradient(
			to bottom,
			var(--color-primary) 50%,
			var(--color-primary-fixed) 50%
		);
	}

	.before\:content-\[\'\'\]:before {
		--tw-content: "";
		content: var(--tw-content);
	}

	.after\:absolute:after {
		content: var(--tw-content);
		position: absolute;
	}

	.after\:top-0:after {
		content: var(--tw-content);
		top: calc(var(--spacing) * 0);
	}

	.after\:right-0:after {
		content: var(--tw-content);
		right: calc(var(--spacing) * 0);
	}

	.after\:bottom-0:after {
		content: var(--tw-content);
		bottom: calc(var(--spacing) * 0);
	}

	.after\:left-0:after {
		content: var(--tw-content);
		left: calc(var(--spacing) * 0);
	}

	.after\:-z-10:after {
		content: var(--tw-content);
		z-index: calc(10 * -1);
	}

	.after\:h-\[2px\]:after {
		content: var(--tw-content);
		height: 2px;
	}

	.after\:h-full:after {
		content: var(--tw-content);
		height: 100%;
	}

	.after\:w-full:after {
		content: var(--tw-content);
		width: 100%;
	}

	.after\:origin-bottom:after {
		content: var(--tw-content);
		transform-origin: bottom;
	}

	.after\:scale-x-0:after {
		content: var(--tw-content);
		--tw-scale-x: 0%;
		scale: var(--tw-scale-x) var(--tw-scale-y);
	}

	.after\:rounded-full:after {
		content: var(--tw-content);
		border-radius: var(--radius-full);
	}

	.after\:bg-primary:after {
		content: var(--tw-content);
		background-color: var(--color-primary);
	}

	.after\:transition-transform:after {
		content: var(--tw-content);
		transition-property: transform, translate, scale, rotate;
		transition-timing-function: var(
			--tw-ease,
			var(--default-transition-timing-function)
		);
		transition-duration: var(--tw-duration, var(--default-transition-duration));
	}

	.after\:duration-300:after {
		content: var(--tw-content);
		--tw-duration: 0.3s;
		transition-duration: 0.3s;
	}

	.after\:ease-\[cubic-bezier\(0\.65_0\.05_0\.36_1\)\]:after {
		content: var(--tw-content);
		--tw-ease: cubic-bezier(0.65 0.05 0.36 1);
		transition-timing-function: cubic-bezier(0.65 0.05 0.36 1);
	}

	.last\:border-b-0:last-child {
		border-bottom-style: var(--tw-border-style);
		border-bottom-width: 0;
	}

	.focus-within\:border-secondary-fixed-dim:focus-within {
		border-color: var(--color-secondary-fixed-dim);
	}

	.focus-within\:bg-surface-container-lowest:focus-within {
		background-color: var(--color-surface-container-lowest);
	}

	.focus-within\:shadow-md:focus-within {
		--tw-shadow:
			0 4px 6px -1px var(--tw-shadow-color, #0000001a),
			0 2px 4px -2px var(--tw-shadow-color, #0000001a);
		box-shadow:
			var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
			var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
	}

	.focus-within\:ring-2:focus-within {
		--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
			calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
		box-shadow:
			var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
			var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
	}

	.focus-within\:shadow-secondary-fixed:focus-within {
		--tw-shadow-color: #dce8ff;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.focus-within\:shadow-secondary-fixed:focus-within {
			--tw-shadow-color: color-mix(
				in oklab,
				var(--color-secondary-fixed) var(--tw-shadow-alpha),
				transparent
			);
		}
	}

	.focus-within\:ring-secondary:focus-within {
		--tw-ring-color: var(--color-secondary);
	}

	.focus-within\:ring-offset-2:focus-within {
		--tw-ring-offset-width: 2px;
		--tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0
			var(--tw-ring-offset-width) var(--tw-ring-offset-color);
	}

	@media (hover: hover) {
		.hover\:w-32:hover {
			width: calc(var(--spacing) * 32);
		}

		.hover\:w-40:hover {
			width: calc(var(--spacing) * 40);
		}

		.hover\:translate-x-1:hover {
			--tw-translate-x: calc(var(--spacing) * 1);
			translate: var(--tw-translate-x) var(--tw-translate-y);
		}

		.hover\:-translate-y-0\.5:hover {
			--tw-translate-y: calc(var(--spacing) * -0.5);
			translate: var(--tw-translate-x) var(--tw-translate-y);
		}

		.hover\:-translate-y-1:hover {
			--tw-translate-y: calc(var(--spacing) * -1);
			translate: var(--tw-translate-x) var(--tw-translate-y);
		}

		.hover\:-translate-y-2:hover {
			--tw-translate-y: calc(var(--spacing) * -2);
			translate: var(--tw-translate-x) var(--tw-translate-y);
		}

		.hover\:scale-110:hover {
			--tw-scale-x: 110%;
			--tw-scale-y: 110%;
			--tw-scale-z: 110%;
			scale: var(--tw-scale-x) var(--tw-scale-y);
		}

		.hover\:scale-\[1\.02\]:hover {
			scale: 1.02;
		}

		.hover\:gap-2:hover {
			gap: calc(var(--spacing) * 2);
		}

		.hover\:border-primary:hover {
			border-color: var(--color-primary);
		}

		.hover\:border-secondary:hover {
			border-color: var(--color-secondary);
		}

		.hover\:border-secondary\/30:hover {
			border-color: #557fc74d;
		}

		@supports (color: color-mix(in lab, red, red)) {
			.hover\:border-secondary\/30:hover {
				border-color: color-mix(
					in oklab,
					var(--color-secondary) 30%,
					transparent
				);
			}
		}

		.hover\:bg-background:hover {
			background-color: var(--color-background);
		}

		.hover\:bg-blue-50:hover {
			background-color: var(--color-blue-50);
		}

		.hover\:bg-on-secondary-fixed:hover {
			background-color: var(--color-on-secondary-fixed);
		}

		.hover\:bg-primary:hover {
			background-color: var(--color-primary);
		}

		.hover\:bg-primary-container:hover {
			background-color: var(--color-primary-container);
		}

		.hover\:bg-primary-container\/30:hover {
			background-color: #d6f6ff4d;
		}

		@supports (color: color-mix(in lab, red, red)) {
			.hover\:bg-primary-container\/30:hover {
				background-color: color-mix(
					in oklab,
					var(--color-primary-container) 30%,
					transparent
				);
			}
		}

		.hover\:bg-primary\/80:hover {
			background-color: #13c9ffcc;
		}

		@supports (color: color-mix(in lab, red, red)) {
			.hover\:bg-primary\/80:hover {
				background-color: color-mix(
					in oklab,
					var(--color-primary) 80%,
					transparent
				);
			}
		}

		.hover\:bg-secondary:hover {
			background-color: var(--color-secondary);
		}

		.hover\:bg-secondary-container:hover {
			background-color: var(--color-secondary-container);
		}

		.hover\:bg-secondary-fixed:hover {
			background-color: var(--color-secondary-fixed);
		}

		.hover\:bg-secondary-fixed-dim:hover {
			background-color: var(--color-secondary-fixed-dim);
		}

		.hover\:bg-slate-50:hover {
			background-color: var(--color-slate-50);
		}

		.hover\:bg-surface-container:hover {
			background-color: var(--color-surface-container);
		}

		.hover\:bg-surface-container-high:hover {
			background-color: var(--color-surface-container-high);
		}

		.hover\:bg-surface-container-low:hover {
			background-color: var(--color-surface-container-low);
		}

		.hover\:bg-tertiary-fixed-dim:hover {
			background-color: var(--color-tertiary-fixed-dim);
		}

		.hover\:bg-tertiary-fixed\/20:hover {
			background-color: #fff3cc33;
		}

		@supports (color: color-mix(in lab, red, red)) {
			.hover\:bg-tertiary-fixed\/20:hover {
				background-color: color-mix(
					in oklab,
					var(--color-tertiary-fixed) 20%,
					transparent
				);
			}
		}

		.hover\:bg-white\/10:hover {
			background-color: #ffffff1a;
		}

		@supports (color: color-mix(in lab, red, red)) {
			.hover\:bg-white\/10:hover {
				background-color: color-mix(
					in oklab,
					var(--color-white) 10%,
					transparent
				);
			}
		}

		.hover\:bg-white\/30:hover {
			background-color: #ffffff4d;
		}

		@supports (color: color-mix(in lab, red, red)) {
			.hover\:bg-white\/30:hover {
				background-color: color-mix(
					in oklab,
					var(--color-white) 30%,
					transparent
				);
			}
		}

		.hover\:from-black\/40:hover {
			--tw-gradient-from: #0006;
		}

		@supports (color: color-mix(in lab, red, red)) {
			.hover\:from-black\/40:hover {
				--tw-gradient-from: color-mix(
					in oklab,
					var(--color-black) 40%,
					transparent
				);
			}
		}

		.hover\:from-black\/40:hover {
			--tw-gradient-stops: var(
				--tw-gradient-via-stops,
				var(--tw-gradient-position),
				var(--tw-gradient-from) var(--tw-gradient-from-position),
				var(--tw-gradient-to) var(--tw-gradient-to-position)
			);
		}

		.hover\:text-brand:hover {
			color: var(--color-brand);
		}

		.hover\:text-on-primary:hover {
			color: var(--color-on-primary);
		}

		.hover\:text-on-secondary:hover {
			color: var(--color-on-secondary);
		}

		.hover\:text-on-surface:hover {
			color: var(--color-on-surface);
		}

		.hover\:text-on-surface-variant:hover {
			color: var(--color-on-surface-variant);
		}

		.hover\:text-on-tertiary-fixed-variant:hover {
			color: var(--color-on-tertiary-fixed-variant);
		}

		.hover\:text-primary:hover {
			color: var(--color-primary);
		}

		.hover\:text-secondary:hover {
			color: var(--color-secondary);
		}

		.hover\:underline:hover {
			text-decoration-line: underline;
		}

		.hover\:opacity-90:hover {
			opacity: 0.9;
		}

		.hover\:opacity-100:hover {
			opacity: 1;
		}

		.hover\:shadow-lg:hover {
			--tw-shadow:
				0 10px 15px -3px var(--tw-shadow-color, #0000001a),
				0 4px 6px -4px var(--tw-shadow-color, #0000001a);
			box-shadow:
				var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
				var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
		}

		.hover\:shadow-md:hover {
			--tw-shadow:
				0 4px 6px -1px var(--tw-shadow-color, #0000001a),
				0 2px 4px -2px var(--tw-shadow-color, #0000001a);
			box-shadow:
				var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
				var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
		}

		.hover\:shadow-xl:hover {
			--tw-shadow:
				0 20px 25px -5px var(--tw-shadow-color, #0000001a),
				0 8px 10px -6px var(--tw-shadow-color, #0000001a);
			box-shadow:
				var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
				var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
		}

		.hover\:brightness-90:hover {
			--tw-brightness: brightness(90%);
			filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,)
				var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,)
				var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
		}

		.hover\:brightness-110:hover {
			--tw-brightness: brightness(110%);
			filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,)
				var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,)
				var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
		}

		.hover\:after\:origin-bottom:hover:after {
			content: var(--tw-content);
			transform-origin: bottom;
		}

		.hover\:after\:scale-x-100:hover:after {
			content: var(--tw-content);
			--tw-scale-x: 100%;
			scale: var(--tw-scale-x) var(--tw-scale-y);
		}

		.hover\:after\:scale-x-125:hover:after {
			content: var(--tw-content);
			--tw-scale-x: 125%;
			scale: var(--tw-scale-x) var(--tw-scale-y);
		}

		.hover\:after\:scale-y-150:hover:after {
			content: var(--tw-content);
			--tw-scale-y: 150%;
			scale: var(--tw-scale-x) var(--tw-scale-y);
		}

		.hover\:after\:opacity-0:hover:after {
			content: var(--tw-content);
			opacity: 0;
		}

		.hover\:after\:transition:hover:after {
			content: var(--tw-content);
			transition-property:
				color,
				background-color,
				border-color,
				outline-color,
				text-decoration-color,
				fill,
				stroke,
				--tw-gradient-from,
				--tw-gradient-via,
				--tw-gradient-to,
				opacity,
				box-shadow,
				transform,
				translate,
				scale,
				rotate,
				filter,
				-webkit-backdrop-filter,
				backdrop-filter,
				display,
				content-visibility,
				overlay,
				pointer-events;
			transition-timing-function: var(
				--tw-ease,
				var(--default-transition-timing-function)
			);
			transition-duration: var(
				--tw-duration,
				var(--default-transition-duration)
			);
		}

		.hover\:after\:duration-500:hover:after {
			content: var(--tw-content);
			--tw-duration: 0.5s;
			transition-duration: 0.5s;
		}
	}

	.focus\:not-sr-only:focus {
		clip-path: none;
		white-space: normal;
		width: auto;
		height: auto;
		margin: 0;
		padding: 0;
		position: static;
		overflow: visible;
	}

	.focus\:fixed:focus {
		position: fixed;
	}

	.focus\:top-4:focus {
		top: calc(var(--spacing) * 4);
	}

	.focus\:left-4:focus {
		left: calc(var(--spacing) * 4);
	}

	.focus\:z-100:focus {
		z-index: 100;
	}

	.focus\:w-48:focus {
		width: calc(var(--spacing) * 48);
	}

	.focus\:rounded-md:focus {
		border-radius: var(--radius-md);
	}

	.focus\:bg-primary-fixed:focus {
		background-color: var(--color-primary-fixed);
	}

	.focus\:bg-secondary:focus {
		background-color: var(--color-secondary);
	}

	.focus\:px-4:focus {
		padding-inline: calc(var(--spacing) * 4);
	}

	.focus\:py-2:focus {
		padding-block: calc(var(--spacing) * 2);
	}

	.focus\:text-on-secondary:focus {
		color: var(--color-on-secondary);
	}

	.focus\:ring-2:focus {
		--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
			calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
		box-shadow:
			var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
			var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
	}

	.focus\:ring-primary:focus {
		--tw-ring-color: var(--color-primary);
	}

	.focus\:ring-secondary:focus {
		--tw-ring-color: var(--color-secondary);
	}

	.focus\:outline-none:focus {
		--tw-outline-style: none;
		outline-style: none;
	}

	.focus\:placeholder\:text-on-surface-variant:focus::placeholder {
		color: var(--color-on-surface-variant);
	}

	.focus-visible\:bg-surface-container:focus-visible {
		background-color: var(--color-surface-container);
	}

	.focus-visible\:bg-tertiary-fixed\/20:focus-visible {
		background-color: #fff3cc33;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.focus-visible\:bg-tertiary-fixed\/20:focus-visible {
			background-color: color-mix(
				in oklab,
				var(--color-tertiary-fixed) 20%,
				transparent
			);
		}
	}

	.focus-visible\:from-black\/40:focus-visible {
		--tw-gradient-from: #0006;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.focus-visible\:from-black\/40:focus-visible {
			--tw-gradient-from: color-mix(
				in oklab,
				var(--color-black) 40%,
				transparent
			);
		}
	}

	.focus-visible\:from-black\/40:focus-visible {
		--tw-gradient-stops: var(
			--tw-gradient-via-stops,
			var(--tw-gradient-position),
			var(--tw-gradient-from) var(--tw-gradient-from-position),
			var(--tw-gradient-to) var(--tw-gradient-to-position)
		);
	}

	.focus-visible\:font-medium:focus-visible {
		--tw-font-weight: var(--font-weight-medium);
		font-weight: var(--font-weight-medium);
	}

	.focus-visible\:text-primary:focus-visible {
		color: var(--color-primary);
	}

	.focus-visible\:ring-2:focus-visible {
		--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
			calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
		box-shadow:
			var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
			var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
	}

	.focus-visible\:ring-4:focus-visible {
		--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
			calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
		box-shadow:
			var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
			var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
	}

	.focus-visible\:ring-secondary:focus-visible {
		--tw-ring-color: var(--color-secondary);
	}

	.focus-visible\:ring-white\/80:focus-visible {
		--tw-ring-color: #fffc;
	}

	@supports (color: color-mix(in lab, red, red)) {
		.focus-visible\:ring-white\/80:focus-visible {
			--tw-ring-color: color-mix(in oklab, var(--color-white) 80%, transparent);
		}
	}

	.focus-visible\:ring-offset-2:focus-visible {
		--tw-ring-offset-width: 2px;
		--tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0
			var(--tw-ring-offset-width) var(--tw-ring-offset-color);
	}

	.focus-visible\:outline-none:focus-visible {
		--tw-outline-style: none;
		outline-style: none;
	}

	.focus-visible\:ring-inset:focus-visible {
		--tw-ring-inset: inset;
	}

	.active\:translate-y-0:active {
		--tw-translate-y: calc(var(--spacing) * 0);
		translate: var(--tw-translate-x) var(--tw-translate-y);
	}

	.active\:scale-95:active {
		--tw-scale-x: 95%;
		--tw-scale-y: 95%;
		--tw-scale-z: 95%;
		scale: var(--tw-scale-x) var(--tw-scale-y);
	}

	.active\:opacity-80:active {
		opacity: 0.8;
	}

	.disabled\:cursor-not-allowed:disabled {
		cursor: not-allowed;
	}

	.disabled\:opacity-30:disabled {
		opacity: 0.3;
	}

	.data-disabled\:cursor-not-allowed[data-disabled] {
		cursor: not-allowed;
	}

	.data-disabled\:border-transparent[data-disabled] {
		border-color: #0000;
	}

	.data-disabled\:bg-surface-container-high[data-disabled] {
		background-color: var(--color-surface-container-high);
	}

	.data-disabled\:text-on-surface-variant[data-disabled] {
		color: var(--color-on-surface-variant);
	}

	.data-disabled\:opacity-60[data-disabled] {
		opacity: 0.6;
	}

	@media (min-width: 375px) {
		.min-\[375px\]\:gap-6 {
			gap: calc(var(--spacing) * 6);
		}

		.min-\[375px\]\:px-6 {
			padding-inline: calc(var(--spacing) * 6);
		}
	}

	@media (min-width: 40rem) {
		.sm\:top-\[10\%\] {
			top: 10%;
		}

		.sm\:right-8 {
			right: calc(var(--spacing) * 8);
		}

		.sm\:right-12 {
			right: calc(var(--spacing) * 12);
		}

		.sm\:right-26 {
			right: calc(var(--spacing) * 26);
		}

		.sm\:right-\[6\.5rem\] {
			right: 6.5rem;
		}

		.sm\:bottom-12 {
			bottom: calc(var(--spacing) * 12);
		}

		.sm\:left-8 {
			left: calc(var(--spacing) * 8);
		}

		.sm\:col-span-full {
			grid-column: 1 / -1;
		}

		.sm\:mt-0 {
			margin-top: calc(var(--spacing) * 0);
		}

		.sm\:mb-6 {
			margin-bottom: calc(var(--spacing) * 6);
		}

		.sm\:block {
			display: block;
		}

		.sm\:grid {
			display: grid;
		}

		.sm\:hidden {
			display: none;
		}

		.sm\:h-9 {
			height: calc(var(--spacing) * 9);
		}

		.sm\:h-80 {
			height: calc(var(--spacing) * 80);
		}

		.sm\:w-9 {
			width: calc(var(--spacing) * 9);
		}

		.sm\:w-14 {
			width: calc(var(--spacing) * 14);
		}

		.sm\:grid-cols-2 {
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}

		.sm\:grid-cols-\[2\.5rem_1fr_5\.5rem_2\.5rem\] {
			grid-template-columns: 2.5rem 1fr 5.5rem 2.5rem;
		}

		.sm\:grid-cols-subgrid {
			grid-template-columns: subgrid;
		}

		.sm\:flex-row {
			flex-direction: row;
		}

		.sm\:items-center {
			align-items: center;
		}

		.sm\:gap-4 {
			gap: calc(var(--spacing) * 4);
		}

		.sm\:gap-5 {
			gap: calc(var(--spacing) * 5);
		}

		.sm\:gap-x-3 {
			column-gap: calc(var(--spacing) * 3);
		}

		.sm\:self-auto {
			align-self: auto;
		}

		.sm\:border-b {
			border-bottom-style: var(--tw-border-style);
			border-bottom-width: 1px;
		}

		.sm\:border-outline-variant {
			border-color: var(--color-outline-variant);
		}

		.sm\:p-6 {
			padding: calc(var(--spacing) * 6);
		}

		.sm\:p-8 {
			padding: calc(var(--spacing) * 8);
		}

		.sm\:px-0 {
			padding-inline: calc(var(--spacing) * 0);
		}

		.sm\:px-5 {
			padding-inline: calc(var(--spacing) * 5);
		}

		.sm\:px-6 {
			padding-inline: calc(var(--spacing) * 6);
		}

		.sm\:px-8 {
			padding-inline: calc(var(--spacing) * 8);
		}

		.sm\:py-4 {
			padding-block: calc(var(--spacing) * 4);
		}

		.sm\:text-2xl {
			font-size: var(--text-2xl);
			line-height: var(--tw-leading, var(--text-2xl--line-height));
		}

		.sm\:text-3xl {
			font-size: var(--text-3xl);
			line-height: var(--tw-leading, var(--text-3xl--line-height));
		}

		.sm\:text-5xl {
			font-size: var(--text-5xl);
			line-height: var(--tw-leading, var(--text-5xl--line-height));
		}

		.sm\:text-base {
			font-size: var(--text-base);
			line-height: var(--tw-leading, var(--text-base--line-height));
		}

		.sm\:text-lg {
			font-size: var(--text-lg);
			line-height: var(--tw-leading, var(--text-lg--line-height));
		}

		.sm\:text-sm {
			font-size: var(--text-sm);
			line-height: var(--tw-leading, var(--text-sm--line-height));
		}

		.sm\:text-xl {
			font-size: var(--text-xl);
			line-height: var(--tw-leading, var(--text-xl--line-height));
		}

		:is(.\*\:sm\:w-\[calc\(50\%-12px\)\] > *) {
			width: calc(50% - 12px);
		}
	}

	@media (min-width: 48rem) {
		.md\:right-auto {
			right: auto;
		}

		.md\:bottom-0 {
			bottom: calc(var(--spacing) * 0);
		}

		.md\:col-span-1 {
			grid-column: span 1 / span 1;
		}

		.md\:col-span-2 {
			grid-column: span 2 / span 2;
		}

		.md\:col-span-3 {
			grid-column: span 3 / span 3;
		}

		.md\:col-span-5 {
			grid-column: span 5 / span 5;
		}

		.md\:col-span-7 {
			grid-column: span 7 / span 7;
		}

		.md\:col-span-9 {
			grid-column: span 9 / span 9;
		}

		.md\:ml-auto {
			margin-left: auto;
		}

		.md\:block {
			display: block;
		}

		.md\:flex {
			display: flex;
		}

		.md\:hidden {
			display: none;
		}

		.md\:h-full {
			height: 100%;
		}

		.md\:w-1\/2 {
			width: 50%;
		}

		.md\:w-2\/3 {
			width: 66.6667%;
		}

		.md\:w-40 {
			width: calc(var(--spacing) * 40);
		}

		.md\:w-44 {
			width: calc(var(--spacing) * 44);
		}

		.md\:w-56 {
			width: calc(var(--spacing) * 56);
		}

		.md\:w-64 {
			width: calc(var(--spacing) * 64);
		}

		.md\:grid-cols-2 {
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}

		.md\:grid-cols-3 {
			grid-template-columns: repeat(3, minmax(0, 1fr));
		}

		.md\:grid-cols-4 {
			grid-template-columns: repeat(4, minmax(0, 1fr));
		}

		.md\:grid-cols-12 {
			grid-template-columns: repeat(12, minmax(0, 1fr));
		}

		.md\:flex-col {
			flex-direction: column;
		}

		.md\:flex-row {
			flex-direction: row;
		}

		.md\:flex-row-reverse {
			flex-direction: row-reverse;
		}

		.md\:items-center {
			align-items: center;
		}

		.md\:gap-4 {
			gap: calc(var(--spacing) * 4);
		}

		.md\:border-none {
			--tw-border-style: none;
			border-style: none;
		}

		.md\:px-0 {
			padding-inline: calc(var(--spacing) * 0);
		}

		.md\:px-6 {
			padding-inline: calc(var(--spacing) * 6);
		}

		.md\:px-8 {
			padding-inline: calc(var(--spacing) * 8);
		}

		.md\:px-12 {
			padding-inline: calc(var(--spacing) * 12);
		}

		.md\:py-0 {
			padding-block: calc(var(--spacing) * 0);
		}

		.md\:py-8 {
			padding-block: calc(var(--spacing) * 8);
		}

		.md\:py-12 {
			padding-block: calc(var(--spacing) * 12);
		}

		.md\:py-24 {
			padding-block: calc(var(--spacing) * 24);
		}

		.md\:pb-0 {
			padding-bottom: calc(var(--spacing) * 0);
		}

		.md\:text-2xl {
			font-size: var(--text-2xl);
			line-height: var(--tw-leading, var(--text-2xl--line-height));
		}

		.md\:text-3xl {
			font-size: var(--text-3xl);
			line-height: var(--tw-leading, var(--text-3xl--line-height));
		}

		.md\:text-4xl {
			font-size: var(--text-4xl);
			line-height: var(--tw-leading, var(--text-4xl--line-height));
		}

		.md\:text-lg {
			font-size: var(--text-lg);
			line-height: var(--tw-leading, var(--text-lg--line-height));
		}

		.md\:shadow-none {
			--tw-shadow: 0 0 #0000;
			box-shadow:
				var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
				var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
		}
	}

	@media (min-width: 64rem) {
		.lg\:absolute {
			position: absolute;
		}

		.lg\:relative {
			position: relative;
		}

		.lg\:top-\[10\%\] {
			top: 10%;
		}

		.lg\:right-16 {
			right: calc(var(--spacing) * 16);
		}

		.lg\:bottom-12 {
			bottom: calc(var(--spacing) * 12);
		}

		.lg\:left-16 {
			left: calc(var(--spacing) * 16);
		}

		.lg\:left-auto {
			left: auto;
		}

		.lg\:order-1 {
			order: 1;
		}

		.lg\:col-span-1 {
			grid-column: span 1 / span 1;
		}

		.lg\:col-span-2 {
			grid-column: span 2 / span 2;
		}

		.lg\:container {
			width: 100%;
		}

		@media (min-width: 40rem) {
			.lg\:container {
				max-width: 40rem;
			}
		}

		@media (min-width: 48rem) {
			.lg\:container {
				max-width: 48rem;
			}
		}

		@media (min-width: 64rem) {
			.lg\:container {
				max-width: 64rem;
			}
		}

		@media (min-width: 80rem) {
			.lg\:container {
				max-width: 80rem;
			}
		}

		@media (min-width: 96rem) {
			.lg\:container {
				max-width: 96rem;
			}
		}

		.lg\:-mt-12 {
			margin-top: calc(var(--spacing) * -12);
		}

		.lg\:-mt-48 {
			margin-top: calc(var(--spacing) * -48);
		}

		.lg\:mb-4 {
			margin-bottom: calc(var(--spacing) * 4);
		}

		.lg\:ml-auto {
			margin-left: auto;
		}

		.lg\:block {
			display: block;
		}

		.lg\:flex {
			display: flex;
		}

		.lg\:hidden {
			display: none;
		}

		.lg\:h-12 {
			height: calc(var(--spacing) * 12);
		}

		.lg\:h-auto {
			height: auto;
		}

		.lg\:h-full {
			height: 100%;
		}

		.lg\:max-h-\[80vh\] {
			max-height: 80vh;
		}

		.lg\:w-12 {
			width: calc(var(--spacing) * 12);
		}

		.lg\:w-18 {
			width: calc(var(--spacing) * 18);
		}

		.lg\:w-50 {
			width: calc(var(--spacing) * 50);
		}

		.lg\:w-56 {
			width: calc(var(--spacing) * 56);
		}

		.lg\:w-\[calc\(25\%-1\.125rem\)\] {
			width: calc(25% - 1.125rem);
		}

		.lg\:w-auto {
			width: auto;
		}

		.lg\:w-fit {
			width: fit-content;
		}

		.lg\:max-w-2xl {
			max-width: var(--container-2xl);
		}

		.lg\:max-w-5xl {
			max-width: var(--container-5xl);
		}

		.lg\:max-w-\[1000px\] {
			max-width: 1000px;
		}

		.lg\:max-w-lg {
			max-width: var(--container-lg);
		}

		.lg\:flex-none {
			flex: none;
		}

		.lg\:grid-cols-2 {
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}

		.lg\:grid-cols-3 {
			grid-template-columns: repeat(3, minmax(0, 1fr));
		}

		.lg\:grid-cols-4 {
			grid-template-columns: repeat(4, minmax(0, 1fr));
		}

		.lg\:flex-row {
			flex-direction: row;
		}

		.lg\:flex-wrap {
			flex-wrap: wrap;
		}

		.lg\:justify-center {
			justify-content: center;
		}

		.lg\:gap-4 {
			gap: calc(var(--spacing) * 4);
		}

		.lg\:gap-6 {
			gap: calc(var(--spacing) * 6);
		}

		.lg\:gap-8 {
			gap: calc(var(--spacing) * 8);
		}

		.lg\:gap-12 {
			gap: calc(var(--spacing) * 12);
		}

		.lg\:gap-24 {
			gap: calc(var(--spacing) * 24);
		}

		:where(.lg\:space-y-8 > :not(:last-child)) {
			--tw-space-y-reverse: 0;
			margin-block-start: calc(
				calc(var(--spacing) * 8) * var(--tw-space-y-reverse)
			);
			margin-block-end: calc(
				calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse))
			);
		}

		.lg\:overflow-visible {
			overflow: visible;
		}

		.lg\:p-8 {
			padding: calc(var(--spacing) * 8);
		}

		.lg\:p-12 {
			padding: calc(var(--spacing) * 12);
		}

		.lg\:px-4 {
			padding-inline: calc(var(--spacing) * 4);
		}

		.lg\:px-6 {
			padding-inline: calc(var(--spacing) * 6);
		}

		.lg\:px-8 {
			padding-inline: calc(var(--spacing) * 8);
		}

		.lg\:px-12 {
			padding-inline: calc(var(--spacing) * 12);
		}

		.lg\:px-16 {
			padding-inline: calc(var(--spacing) * 16);
		}

		.lg\:py-1 {
			padding-block: calc(var(--spacing) * 1);
		}

		.lg\:py-1\.5 {
			padding-block: calc(var(--spacing) * 1.5);
		}

		.lg\:py-12 {
			padding-block: calc(var(--spacing) * 12);
		}

		.lg\:pt-0 {
			padding-top: calc(var(--spacing) * 0);
		}

		.lg\:pt-4 {
			padding-top: calc(var(--spacing) * 4);
		}

		.lg\:pr-0 {
			padding-right: calc(var(--spacing) * 0);
		}

		.lg\:pr-10 {
			padding-right: calc(var(--spacing) * 10);
		}

		.lg\:pb-0 {
			padding-bottom: calc(var(--spacing) * 0);
		}

		.lg\:pb-10 {
			padding-bottom: calc(var(--spacing) * 10);
		}

		.lg\:text-4xl {
			font-size: var(--text-4xl);
			line-height: var(--tw-leading, var(--text-4xl--line-height));
		}

		.lg\:text-5xl {
			font-size: var(--text-5xl);
			line-height: var(--tw-leading, var(--text-5xl--line-height));
		}

		.lg\:text-6xl {
			font-size: var(--text-6xl);
			line-height: var(--tw-leading, var(--text-6xl--line-height));
		}

		.lg\:text-7xl {
			font-size: var(--text-7xl);
			line-height: var(--tw-leading, var(--text-7xl--line-height));
		}

		.lg\:text-xl {
			font-size: var(--text-xl);
			line-height: var(--tw-leading, var(--text-xl--line-height));
		}

		.lg\:text-xs {
			font-size: var(--text-xs);
			line-height: var(--tw-leading, var(--text-xs--line-height));
		}

		:is(.\*\:lg\:w-\[calc\(33\.333\%-16px\)\] > *) {
			width: calc(33.333% - 16px);
		}
	}

	@media (min-width: 80rem) {
		.xl\:col-span-1 {
			grid-column: span 1 / span 1;
		}

		.xl\:hidden {
			display: none;
		}

		.xl\:max-w-2xl {
			max-width: var(--container-2xl);
		}

		.xl\:max-w-7xl {
			max-width: var(--container-7xl);
		}

		.xl\:grid-cols-\[4fr_3fr_3fr\] {
			grid-template-columns: 4fr 3fr 3fr;
		}

		.xl\:justify-start {
			justify-content: flex-start;
		}

		.xl\:gap-12 {
			gap: calc(var(--spacing) * 12);
		}

		.xl\:text-7xl {
			font-size: var(--text-7xl);
			line-height: var(--tw-leading, var(--text-7xl--line-height));
		}
	}

	@media (min-width: 96rem) {
		.\32 xl\:flex {
			display: flex;
		}

		.\32 xl\:max-w-7xl {
			max-width: var(--container-7xl);
		}
	}

	@media (orientation: landscape) {
		.landscape\:max-w-2xl {
			max-width: var(--container-2xl);
		}
	}

	.\[\&_a\]\:text-secondary a {
		color: var(--color-secondary);
	}

	.\[\&_a\]\:underline a {
		text-decoration-line: underline;
	}

	@media (hover: hover) {
		.\[\&_a\]\:hover\:text-primary a:hover {
			color: var(--color-primary);
		}
	}

	.\[\&_blockquote\]\:border-l-4 blockquote {
		border-left-style: var(--tw-border-style);
		border-left-width: 4px;
	}

	.\[\&_blockquote\]\:border-secondary blockquote {
		border-color: var(--color-secondary);
	}

	.\[\&_blockquote\]\:pl-4 blockquote {
		padding-left: calc(var(--spacing) * 4);
	}

	.\[\&_blockquote\]\:text-on-surface-variant blockquote {
		color: var(--color-on-surface-variant);
	}

	.\[\&_blockquote\]\:italic blockquote {
		font-style: italic;
	}

	.\[\&_code\]\:rounded code {
		border-radius: 0.25rem;
	}

	.\[\&_code\]\:bg-surface-container code {
		background-color: var(--color-surface-container);
	}

	.\[\&_code\]\:px-1\.5 code {
		padding-inline: calc(var(--spacing) * 1.5);
	}

	.\[\&_code\]\:py-0\.5 code {
		padding-block: calc(var(--spacing) * 0.5);
	}

	.\[\&_code\]\:font-mono code {
		font-family: var(--font-mono);
	}

	.\[\&_code\]\:text-sm code {
		font-size: var(--text-sm);
		line-height: var(--tw-leading, var(--text-sm--line-height));
	}

	.\[\&_h2\]\:relative h2 {
		position: relative;
	}

	.\[\&_h2\]\:mt-8 h2 {
		margin-top: calc(var(--spacing) * 8);
	}

	.\[\&_h2\]\:mb-3 h2 {
		margin-bottom: calc(var(--spacing) * 3);
	}

	.\[\&_h2\]\:pl-4 h2 {
		padding-left: calc(var(--spacing) * 4);
	}

	.\[\&_h2\]\:text-xl h2 {
		font-size: var(--text-xl);
		line-height: var(--tw-leading, var(--text-xl--line-height));
	}

	.\[\&_h2\]\:font-bold h2 {
		--tw-font-weight: var(--font-weight-bold);
		font-weight: var(--font-weight-bold);
	}

	.\[\&_h2\]\:text-inverse-primary h2 {
		color: var(--color-inverse-primary);
	}

	.\[\&_h2\]\:before\:absolute h2:before {
		content: var(--tw-content);
		position: absolute;
	}

	.\[\&_h2\]\:before\:top-0 h2:before {
		content: var(--tw-content);
		top: calc(var(--spacing) * 0);
	}

	.\[\&_h2\]\:before\:left-0 h2:before {
		content: var(--tw-content);
		left: calc(var(--spacing) * 0);
	}

	.\[\&_h2\]\:before\:h-full h2:before {
		content: var(--tw-content);
		height: 100%;
	}

	.\[\&_h2\]\:before\:w-\[3px\] h2:before {
		content: var(--tw-content);
		width: 3px;
	}

	.\[\&_h2\]\:before\:bg-\[linear-gradient\(to_bottom\,var\(--color-primary\)_50\%\,var\(--color-primary-fixed\)_50\%\)\]
		h2:before {
		content: var(--tw-content);
		background-image: linear-gradient(
			to bottom,
			var(--color-primary) 50%,
			var(--color-primary-fixed) 50%
		);
	}

	.\[\&_h2\]\:before\:content-\[\'\'\] h2:before {
		--tw-content: "";
		content: var(--tw-content);
	}

	.\[\&_h3\]\:mt-6 h3 {
		margin-top: calc(var(--spacing) * 6);
	}

	.\[\&_h3\]\:mb-2 h3 {
		margin-bottom: calc(var(--spacing) * 2);
	}

	.\[\&_h3\]\:text-lg h3 {
		font-size: var(--text-lg);
		line-height: var(--tw-leading, var(--text-lg--line-height));
	}

	.\[\&_h3\]\:font-semibold h3 {
		--tw-font-weight: var(--font-weight-semibold);
		font-weight: var(--font-weight-semibold);
	}

	.\[\&_h3\]\:text-secondary h3 {
		color: var(--color-secondary);
	}

	.\[\&_hr\]\:my-8 hr {
		margin-block: calc(var(--spacing) * 8);
	}

	.\[\&_hr\]\:border-outline-variant hr {
		border-color: var(--color-outline-variant);
	}

	.\[\&_li\]\:mb-1 li {
		margin-bottom: calc(var(--spacing) * 1);
	}

	.\[\&_ol\]\:mb-4 ol {
		margin-bottom: calc(var(--spacing) * 4);
	}

	.\[\&_ol\]\:list-decimal ol {
		list-style-type: decimal;
	}

	.\[\&_ol\]\:pl-6 ol {
		padding-left: calc(var(--spacing) * 6);
	}

	.\[\&_ol_li\]\:text-on-surface ol li {
		color: var(--color-on-surface);
	}

	.\[\&_ol_li\]\:marker\:text-on-surface-variant ol li ::marker {
		color: var(--color-on-surface-variant);
	}

	.\[\&_ol_li\]\:marker\:text-on-surface-variant ol li::marker {
		color: var(--color-on-surface-variant);
	}

	.\[\&_ol_li\]\:marker\:text-on-surface-variant
		ol
		li
		::-webkit-details-marker {
		color: var(--color-on-surface-variant);
	}

	.\[\&_ol_li\]\:marker\:text-on-surface-variant ol li::-webkit-details-marker {
		color: var(--color-on-surface-variant);
	}

	.\[\&_p\]\:mb-4 p {
		margin-bottom: calc(var(--spacing) * 4);
	}

	.\[\&_p\]\:leading-relaxed p {
		--tw-leading: var(--leading-relaxed);
		line-height: var(--leading-relaxed);
	}

	.\[\&_p\]\:text-on-surface p {
		color: var(--color-on-surface);
	}

	.\[\&_strong\]\:font-semibold strong {
		--tw-font-weight: var(--font-weight-semibold);
		font-weight: var(--font-weight-semibold);
	}

	.\[\&_strong\]\:text-on-surface strong {
		color: var(--color-on-surface);
	}

	.\[\&_ul\]\:mb-4 ul {
		margin-bottom: calc(var(--spacing) * 4);
	}

	.\[\&_ul\]\:list-disc ul {
		list-style-type: disc;
	}

	.\[\&_ul\]\:pl-6 ul {
		padding-left: calc(var(--spacing) * 6);
	}

	.\[\&_ul\]\:text-on-surface ul {
		color: var(--color-on-surface);
	}
}

@keyframes bg-fade-in {
	from {
		opacity: 0;
	}

	to {
		opacity: 0.6;
	}
}

@keyframes content-fade-in {
	from {
		opacity: 0;
		transform: translateY(8px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.text-primary {
	color: var(--color-primary);
}

.text-secondary {
	color: var(--color-secondary);
}

.text-on-surface {
	color: var(--color-on-surface);
}

.text-on-surface-variant {
	color: var(--color-on-surface-variant);
}

.hover\:text-on-tertiary-fixed-variant:hover {
	color: var(--color-on-tertiary-fixed-variant);
}

.hover\:text-on-primary:hover {
	color: var(--color-on-primary);
}

.group:hover .group-hover\:text-primary {
	color: var(--color-primary);
}

.group:hover .group-hover\:text-secondary {
	color: var(--color-secondary);
}

.group:hover .group-hover\:text-tertiary {
	color: var(--color-tertiary);
}

.group:hover .group-hover\:text-on-surface {
	color: var(--color-on-surface);
}

.group:hover .group-hover\:text-on-surface-variant {
	color: var(--color-on-surface-variant);
}

.group:hover .group-hover\:text-on-secondary-container {
	color: var(--color-on-secondary-container);
}

.group:hover .group-hover\:text-on-primary {
	color: var(--color-on-primary);
}

.text-on-primary-container-variant {
	color: var(--color-on-primary-container-variant);
}

.text-on-secondary-fixed-variant {
	color: var(--color-on-secondary-fixed-variant);
}

.text-brand {
	color: var(--color-brand);
}

.group:hover .group-hover\:text-on-primary-fixed-variant {
	color: var(--color-on-primary-fixed-variant);
}

.pi-panel-transition {
	transition: max-height 0.5s ease-in-out;
}

.dark {
	--color-primary: #60dcff;
	--color-primary-fixed: #001e28;
	--color-primary-fixed-dim: #003044;
	--color-primary-container: #005070;
	--color-on-primary: #003044;
	--color-on-primary-fixed: #b8f2ff;
	--color-on-primary-fixed-variant: #6de0ff;
	--color-on-primary-container: #b8f2ff;
	--color-inverse-primary: #13c9ff;
	--color-secondary: #a0c0f0;
	--color-secondary-dim: #7da8e0;
	--color-secondary-fixed: #001040;
	--color-secondary-fixed-dim: #1c2e58;
	--color-secondary-container: #2c5098;
	--color-on-secondary: #1c3870;
	--color-on-secondary-fixed: #dce8ff;
	--color-on-secondary-fixed-variant: #adc4f0;
	--color-on-secondary-container: #dce8ff;
	--color-tertiary: #fcd97a;
	--color-tertiary-fixed: #2d1a00;
	--color-tertiary-fixed-dim: #4a2c00;
	--color-tertiary-container: #7a4800;
	--color-on-tertiary: #2d1a00;
	--color-on-tertiary-fixed: #fff3cc;
	--color-on-tertiary-fixed-variant: #fcd97a;
	--color-on-tertiary-container: #fff3cc;
	--color-surface: #1a1a1a;
	--color-surface-dim: #121212;
	--color-surface-bright: #252525;
	--color-surface-tint: #60dcff;
	--color-surface-variant: #2a3a3f;
	--color-surface-container-lowest: #0a0a0a;
	--color-surface-container-low: #1a1a1a;
	--color-surface-container: #222;
	--color-surface-container-high: #2c2c2c;
	--color-surface-container-highest: #363636;
	--color-on-surface: #e5e3e3;
	--color-on-surface-variant: #b8c5ca;
	--color-inverse-surface: #f2f2f2;
	--color-inverse-on-surface: #1b1c1c;
	--color-background: #111;
	--color-on-background: #e5e3e3;
	--color-error: #ffb4ab;
	--color-error-container: #93000a;
	--color-on-error: #690005;
	--color-on-error-container: #ffdad6;
	--color-outline: #8a9499;
	--color-outline-variant: #3a4a4f;
}

.hero-gradient-bg {
	background: linear-gradient(
		135deg,
		var(--color-on-primary) 0%,
		var(--color-secondary-dim-variant) 50%,
		var(--color-on-primary-fixed-variant) 100%
	);
}

.hero-grid-pattern {
	background-image:
		linear-gradient(var(--color-primary) 1px, transparent 1px),
		linear-gradient(90deg, var(--color-primary) 1px, transparent 1px);
	background-size: 60px 60px;
}

.hero-sticky-header {
	background: var(--color-on-primary-fixed-variant);
	border-radius: 0 0 50% 50% / 0 0 2.5rem 2.5rem;
}

.avatar-ring-gradient {
	background: linear-gradient(
		150deg,
		var(--color-primary-fixed) 30%,
		var(--color-inverse-primary)
	);
}

.teacher-info-card a:visited,
.teacher-info-card a:link {
	color: var(--color-secondary-dim);
}

.teacher-info-card a:hover {
	color: var(--color-secondary);
}

.teacher-info-card a:active {
	color: var(--color-secondary-fixed-dim);
}

.teacher-info-card ul {
	list-style: initial;
	margin-left: 1rem;
}

.icon-arrow-left-from-line {
	-webkit-mask-image: url("/icons/arrow-left-from-line.svg");
	mask-image: url("/icons/arrow-left-from-line.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-arrow-left {
	-webkit-mask-image: url("/icons/arrow-left.svg");
	mask-image: url("/icons/arrow-left.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-arrow-right {
	-webkit-mask-image: url("/icons/arrow-right.svg");
	mask-image: url("/icons/arrow-right.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-arrow-up-right {
	-webkit-mask-image: url("/icons/arrow-up-right.svg");
	mask-image: url("/icons/arrow-up-right.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-award {
	-webkit-mask-image: url("/icons/award.svg");
	mask-image: url("/icons/award.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-brain {
	-webkit-mask-image: url("/icons/brain.svg");
	mask-image: url("/icons/brain.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-check-circle-2 {
	-webkit-mask-image: url("/icons/check-circle-2.svg");
	mask-image: url("/icons/check-circle-2.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-chevron-down {
	-webkit-mask-image: url("/icons/chevron-down.svg");
	mask-image: url("/icons/chevron-down.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-chevron-first {
	-webkit-mask-image: url("/icons/chevron-first.svg");
	mask-image: url("/icons/chevron-first.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-chevron-last {
	-webkit-mask-image: url("/icons/chevron-last.svg");
	mask-image: url("/icons/chevron-last.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-chevron-left {
	-webkit-mask-image: url("/icons/chevron-left.svg");
	mask-image: url("/icons/chevron-left.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-chevron-right {
	-webkit-mask-image: url("/icons/chevron-right.svg");
	mask-image: url("/icons/chevron-right.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-chevron-up {
	-webkit-mask-image: url("/icons/chevron-up.svg");
	mask-image: url("/icons/chevron-up.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-circuit-board {
	-webkit-mask-image: url("/icons/circuit-board.svg");
	mask-image: url("/icons/circuit-board.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-cpu {
	-webkit-mask-image: url("/icons/cpu.svg");
	mask-image: url("/icons/cpu.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-download {
	-webkit-mask-image: url("/icons/download.svg");
	mask-image: url("/icons/download.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-external-link {
	-webkit-mask-image: url("/icons/external-link.svg");
	mask-image: url("/icons/external-link.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-factory {
	-webkit-mask-image: url("/icons/factory.svg");
	mask-image: url("/icons/factory.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-file-text {
	-webkit-mask-image: url("/icons/file-text.svg");
	mask-image: url("/icons/file-text.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-file-type {
	-webkit-mask-image: url("/icons/file-type.svg");
	mask-image: url("/icons/file-type.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-flask-conical {
	-webkit-mask-image: url("/icons/flask-conical.svg");
	mask-image: url("/icons/flask-conical.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-folder-archive {
	-webkit-mask-image: url("/icons/folder-archive.svg");
	mask-image: url("/icons/folder-archive.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-graduation-cap {
	-webkit-mask-image: url("/icons/graduation-cap.svg");
	mask-image: url("/icons/graduation-cap.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-keyboard {
	-webkit-mask-image: url("/icons/keyboard.svg");
	mask-image: url("/icons/keyboard.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-layers {
	-webkit-mask-image: url("/icons/layers.svg");
	mask-image: url("/icons/layers.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-mail {
	-webkit-mask-image: url("/icons/mail.svg");
	mask-image: url("/icons/mail.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-map-pin {
	-webkit-mask-image: url("/icons/map-pin.svg");
	mask-image: url("/icons/map-pin.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-menu {
	-webkit-mask-image: url("/icons/menu.svg");
	mask-image: url("/icons/menu.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-microscope {
	-webkit-mask-image: url("/icons/microscope.svg");
	mask-image: url("/icons/microscope.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-move-left {
	-webkit-mask-image: url("/icons/move-left.svg");
	mask-image: url("/icons/move-left.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-phone {
	-webkit-mask-image: url("/icons/phone.svg");
	mask-image: url("/icons/phone.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-pin {
	-webkit-mask-image: url("/icons/pin.svg");
	mask-image: url("/icons/pin.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-search-alert {
	-webkit-mask-image: url("/icons/search-alert.svg");
	mask-image: url("/icons/search-alert.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-search {
	-webkit-mask-image: url("/icons/search.svg");
	mask-image: url("/icons/search.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-shield {
	-webkit-mask-image: url("/icons/shield.svg");
	mask-image: url("/icons/shield.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-star {
	-webkit-mask-image: url("/icons/star.svg");
	mask-image: url("/icons/star.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.icon-users {
	-webkit-mask-image: url("/icons/users.svg");
	mask-image: url("/icons/users.svg");
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.slide-pos-0 {
	transform: translateX(0%);
}

.slide-pos-100 {
	transform: translateX(100%);
}

.slide-pos-200 {
	transform: translateX(200%);
}

.slide-pos-300 {
	transform: translateX(300%);
}

.slide-pos-400 {
	transform: translateX(400%);
}

.slide-pos-500 {
	transform: translateX(500%);
}

.slide-pos-600 {
	transform: translateX(600%);
}

.slide-pos-700 {
	transform: translateX(700%);
}

.slide-pos-800 {
	transform: translateX(800%);
}

.slide-pos-900 {
	transform: translateX(900%);
}

.slide-pos-1000 {
	transform: translateX(1000%);
}

@property --tw-translate-x {
	syntax: "*";
	inherits: false;
	initial-value: 0;
}

@property --tw-translate-y {
	syntax: "*";
	inherits: false;
	initial-value: 0;
}

@property --tw-translate-z {
	syntax: "*";
	inherits: false;
	initial-value: 0;
}

@property --tw-scale-x {
	syntax: "*";
	inherits: false;
	initial-value: 1;
}

@property --tw-scale-y {
	syntax: "*";
	inherits: false;
	initial-value: 1;
}

@property --tw-scale-z {
	syntax: "*";
	inherits: false;
	initial-value: 1;
}

@property --tw-rotate-x {
	syntax: "*";
	inherits: false;
}

@property --tw-rotate-y {
	syntax: "*";
	inherits: false;
}

@property --tw-rotate-z {
	syntax: "*";
	inherits: false;
}

@property --tw-skew-x {
	syntax: "*";
	inherits: false;
}

@property --tw-skew-y {
	syntax: "*";
	inherits: false;
}

@property --tw-space-y-reverse {
	syntax: "*";
	inherits: false;
	initial-value: 0;
}

@property --tw-border-style {
	syntax: "*";
	inherits: false;
	initial-value: solid;
}

@property --tw-gradient-position {
	syntax: "*";
	inherits: false;
}

@property --tw-gradient-from {
	syntax: "<color>";
	inherits: false;
	initial-value: #0000;
}

@property --tw-gradient-via {
	syntax: "<color>";
	inherits: false;
	initial-value: #0000;
}

@property --tw-gradient-to {
	syntax: "<color>";
	inherits: false;
	initial-value: #0000;
}

@property --tw-gradient-stops {
	syntax: "*";
	inherits: false;
}

@property --tw-gradient-via-stops {
	syntax: "*";
	inherits: false;
}

@property --tw-gradient-from-position {
	syntax: "<length-percentage>";
	inherits: false;
	initial-value: 0%;
}

@property --tw-gradient-via-position {
	syntax: "<length-percentage>";
	inherits: false;
	initial-value: 50%;
}

@property --tw-gradient-to-position {
	syntax: "<length-percentage>";
	inherits: false;
	initial-value: 100%;
}

@property --tw-leading {
	syntax: "*";
	inherits: false;
}

@property --tw-font-weight {
	syntax: "*";
	inherits: false;
}

@property --tw-tracking {
	syntax: "*";
	inherits: false;
}

@property --tw-shadow {
	syntax: "*";
	inherits: false;
	initial-value: 0 0 #0000;
}

@property --tw-shadow-color {
	syntax: "*";
	inherits: false;
}

@property --tw-shadow-alpha {
	syntax: "<percentage>";
	inherits: false;
	initial-value: 100%;
}

@property --tw-inset-shadow {
	syntax: "*";
	inherits: false;
	initial-value: 0 0 #0000;
}

@property --tw-inset-shadow-color {
	syntax: "*";
	inherits: false;
}

@property --tw-inset-shadow-alpha {
	syntax: "<percentage>";
	inherits: false;
	initial-value: 100%;
}

@property --tw-ring-color {
	syntax: "*";
	inherits: false;
}

@property --tw-ring-shadow {
	syntax: "*";
	inherits: false;
	initial-value: 0 0 #0000;
}

@property --tw-inset-ring-color {
	syntax: "*";
	inherits: false;
}

@property --tw-inset-ring-shadow {
	syntax: "*";
	inherits: false;
	initial-value: 0 0 #0000;
}

@property --tw-ring-inset {
	syntax: "*";
	inherits: false;
}

@property --tw-ring-offset-width {
	syntax: "<length>";
	inherits: false;
	initial-value: 0;
}

@property --tw-ring-offset-color {
	syntax: "*";
	inherits: false;
	initial-value: #fff;
}

@property --tw-ring-offset-shadow {
	syntax: "*";
	inherits: false;
	initial-value: 0 0 #0000;
}

@property --tw-outline-style {
	syntax: "*";
	inherits: false;
	initial-value: solid;
}

@property --tw-blur {
	syntax: "*";
	inherits: false;
}

@property --tw-brightness {
	syntax: "*";
	inherits: false;
}

@property --tw-contrast {
	syntax: "*";
	inherits: false;
}

@property --tw-grayscale {
	syntax: "*";
	inherits: false;
}

@property --tw-hue-rotate {
	syntax: "*";
	inherits: false;
}

@property --tw-invert {
	syntax: "*";
	inherits: false;
}

@property --tw-opacity {
	syntax: "*";
	inherits: false;
}

@property --tw-saturate {
	syntax: "*";
	inherits: false;
}

@property --tw-sepia {
	syntax: "*";
	inherits: false;
}

@property --tw-drop-shadow {
	syntax: "*";
	inherits: false;
}

@property --tw-drop-shadow-color {
	syntax: "*";
	inherits: false;
}

@property --tw-drop-shadow-alpha {
	syntax: "<percentage>";
	inherits: false;
	initial-value: 100%;
}

@property --tw-drop-shadow-size {
	syntax: "*";
	inherits: false;
}

@property --tw-backdrop-blur {
	syntax: "*";
	inherits: false;
}

@property --tw-backdrop-brightness {
	syntax: "*";
	inherits: false;
}

@property --tw-backdrop-contrast {
	syntax: "*";
	inherits: false;
}

@property --tw-backdrop-grayscale {
	syntax: "*";
	inherits: false;
}

@property --tw-backdrop-hue-rotate {
	syntax: "*";
	inherits: false;
}

@property --tw-backdrop-invert {
	syntax: "*";
	inherits: false;
}

@property --tw-backdrop-opacity {
	syntax: "*";
	inherits: false;
}

@property --tw-backdrop-saturate {
	syntax: "*";
	inherits: false;
}

@property --tw-backdrop-sepia {
	syntax: "*";
	inherits: false;
}

@property --tw-duration {
	syntax: "*";
	inherits: false;
}

@property --tw-ease {
	syntax: "*";
	inherits: false;
}

@property --tw-text-shadow-color {
	syntax: "*";
	inherits: false;
}

@property --tw-text-shadow-alpha {
	syntax: "<percentage>";
	inherits: false;
	initial-value: 100%;
}

@property --tw-content {
	syntax: "*";
	inherits: false;
	initial-value: "";
}

/* ============================================================
   輪播圖左右調整鍵 + 播放鍵 + dot
   .carousel-arrow-prev / .carousel-arrow-next / .carousel-controls /
   .carousel-dot-group / .carousel-dot / .carousel-dot-pill / .carousel-play-toggle
   將原本散落在 HTML class 屬性上的 Tailwind utility 收斂進這些 class
   調整鍵部分（patch-260720-01）已上線生效，不用再動
   播放鍵／dot 部分（patch-260721-02）為 wrap 定位＋熱區/pill 分離改版，
   HTML 端對應改動見 patch-260721-02/carousel-fix.md 第 1 節；
   這份 CSS 由 Redi 端維護更新，後端不用修改
   ============================================================ */

.carousel-arrow-prev,
.carousel-arrow-next {
	position: absolute;
	z-index: 20;
	top: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	cursor: pointer;
	width: 3rem;
	transition: background-color 0.2s, color 0.2s;
}

@media (min-width: 40rem) {
	.carousel-arrow-prev,
	.carousel-arrow-next {
		width: 3.5rem;
	}
}

@media (min-width: 64rem) {
	.carousel-arrow-prev,
	.carousel-arrow-next {
		width: 10%;
	}
}

.carousel-arrow-prev {
	left: 0;
	justify-content: flex-start;
	padding-left: 0.5rem;
	background-image: linear-gradient(to right, rgb(0 0 0 / 0.2), transparent);
}

.carousel-arrow-next {
	right: 0;
	justify-content: flex-end;
	padding-right: 0.5rem;
	background-image: linear-gradient(to left, rgb(0 0 0 / 0.2), transparent);
}

@media (min-width: 40rem) {
	.carousel-arrow-prev {
		padding-left: 1rem;
	}
	.carousel-arrow-next {
		padding-right: 1rem;
	}
}

.carousel-arrow-prev:hover {
	background-image: linear-gradient(to right, rgb(0 0 0 / 0.6), transparent);
}

.carousel-arrow-next:hover {
	background-image: linear-gradient(to left, rgb(0 0 0 / 0.6), transparent);
}

.carousel-arrow-prev:focus-visible {
	background-image: linear-gradient(to right, transparent, rgb(255 255 255 / 0.4));
}

.carousel-arrow-next:focus-visible {
	background-image: linear-gradient(to left, transparent, rgb(255 255 255 / 0.4));
}

.carousel-arrow-prev:focus-visible,
.carousel-arrow-next:focus-visible {
	outline: none;
}

/* 圓形底：白色 icon 的背板，平時保留框；focus 時框讓位給 ring，避免疊在一起 */
.carousel-arrow-circle {
	display: flex;
	flex-shrink: 0;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 9999px;
	background-color: var(--color-on-primary-fixed-variant);
	border: 1px solid var(--color-primary-container);
	opacity: 1;
	transition: opacity 0.2s, box-shadow 0.2s, border-color 0.2s;
}

/* < lg 一律顯示；lg 起預設隱藏，滑鼠 hover／鍵盤 focus 到按鈕才顯現 */
@media (min-width: 64rem) {
	.carousel-arrow-circle {
		opacity: 0;
	}
	.carousel-arrow-prev:hover .carousel-arrow-circle,
	.carousel-arrow-prev:focus-visible .carousel-arrow-circle,
	.carousel-arrow-next:hover .carousel-arrow-circle,
	.carousel-arrow-next:focus-visible .carousel-arrow-circle {
		opacity: 1;
	}
}

/* focus 時 button 跟圓形融為一體：框讓位給貼著圓形邊緣的 primary ring */
.carousel-arrow-prev:focus-visible .carousel-arrow-circle,
.carousel-arrow-next:focus-visible .carousel-arrow-circle {
	border-color: transparent;
	box-shadow: inset 0 0 0 4px var(--color-primary);
}

.carousel-arrow-icon {
	width: 1.25rem;
	height: 1.25rem;
	color: #fff;
}

/* ============================================================
   輪播圖播放鍵＋dot 共用 wrapper（patch-260721-02，2026-07-21 版）
   取代原本「播放鍵、dot 容器各自 absolute 定位、手動算 right 偏移量」的做法，
   改成外層一個容器一次定位，內部用 flex 排列，DOM 順序固定「左 dot、右播放鍵」

   z-index:30（高於調整鍵的 20）＋ pointer-events:none：
   避免這個 wrapper 的空白區域（尤其是 dot-group 撐開後）疊住調整鍵的點擊熱區，
   不依賴 HTML 裡 .carousel-controls 跟 .carousel-arrow-prev/-next 誰先誰後；
   .carousel-play-toggle／.carousel-dot 各自補 pointer-events:auto 讓熱區本身仍可點擊
   ============================================================ */

.carousel-controls {
	position: absolute;
	inset-inline: 0;
	bottom: 1.5rem;
	z-index: 30;
	display: flex;
	flex-direction: row-reverse;
	justify-content: flex-start;
	align-items: center;
	gap: 0.5rem;
	padding-inline: 1.5rem;
	pointer-events: none;
}

@media (min-width: 40rem) {
	.carousel-controls {
		bottom: 3rem;
		gap: 1rem;
		padding-inline: 3rem;
	}
}

/* lg+(64rem) 改回 bottom:1.5rem，避免跟右下角文字卡（lg:bottom-12 = 3rem）重疊 */
@media (min-width: 64rem) {
	.carousel-controls {
		bottom: 1.5rem;
	}
}

/* ============================================================
   輪播圖 dot 指示器 — RWD shrink-to-fit ＋ 觸控/focus 熱區分離
   .carousel-dot 是熱區（button，40px 高固定、寬度可 shrink），
   .carousel-dot-pill 是純視覺 pill（span，h-2，顏色跟著 aria-pressed 切換）
   ============================================================ */

.carousel-dot-group {
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: center;
	gap: 0.5rem;
	flex: 1 1 0%;
	max-width: 600px;
	min-width: 0;
	overflow-x: auto;
	pointer-events: none;
}

@media (min-width: 40rem) {
	.carousel-dot-group {
		gap: 1rem;
	}
}

.carousel-dot {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 2.5rem;
	flex: 0 1 4rem;
	min-width: 0.75rem;
	cursor: pointer;
	outline: none;
	border-radius: 9999px;
	background: transparent;
	border: none;
	padding: 0;
	pointer-events: auto;
}

.carousel-dot:focus-visible {
	box-shadow: 0 0 0 4px var(--color-primary);
}

.carousel-dot-pill {
	width: 100%;
	height: 0.5rem;
	border-radius: 9999px;
	background-color: rgb(255 255 255 / 0.3);
	transition: background-color 0.2s;
}

/* 已選取的 dot 全白；未選取的 dot hover 時背景提亮 */
.carousel-dot[aria-pressed="true"] .carousel-dot-pill {
	background-color: #fff;
}

.carousel-dot:hover:not([aria-pressed="true"]) .carousel-dot-pill {
	background-color: rgb(255 255 255 / 0.6);
}

/* ============================================================
   播放／暫停鍵 — .carousel-play-toggle
   現在是 .carousel-controls 內的 flex item，不再自己 absolute 定位；
   focus ring 顏色統一改回 primary，跟調整鍵／dot 一致
   ============================================================ */

.carousel-play-toggle {
	width: 2.5rem;
	height: 2.5rem;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9999px;
	cursor: pointer;
	background-color: rgb(255 255 255 / 0.2);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	border: 1px solid rgb(255 255 255 / 0.3);
	color: #fff;
	transition: background-color 0.2s;
	pointer-events: auto;
}

.carousel-play-toggle:hover {
	background-color: rgb(255 255 255 / 0.3);
}

.carousel-play-toggle:focus-visible {
	outline: none;
	box-shadow: 0 0 0 4px var(--color-primary);
}
