/*!
 * Loc pe Loc — assets/css/main.css
 *
 * GENERAT AUTOMAT de bin/build-css.mjs. Nu edita manual.
 *
 * Acesta este build-ul de rezerva, fara Tailwind. Calea suportata de
 * regenerare este `npm install && npm run build` (vezi assets/css/README.md),
 * care produce acelasi fisier cu Tailwind CSS 4 pornind de la
 * assets/css/tailwind.css.
 */

/* --------------------------------------------------------------------------
 * Preflight — resetul de baza al Tailwind CSS.
 * ----------------------------------------------------------------------- */

*,
::after,
::before,
::backdrop,
::file-selector-button {
	box-sizing: border-box;
	border: 0 solid;
	margin: 0;
	padding: 0;
	--tw-border-style: solid;
	--tw-ring-inset: ;
	--tw-ring-offset-width: 0px;
	--tw-ring-offset-color: #fff;
	--tw-ring-color: color-mix(in oklab, currentColor 50%, transparent);
	--tw-ring-shadow: 0 0 #0000;
	--tw-ring-offset-shadow: 0 0 #0000;
	--tw-shadow: 0 0 #0000;
	--tw-translate-x: 0;
	--tw-translate-y: 0;
	--tw-space-x-reverse: 0;
	--tw-space-y-reverse: 0;
	--tw-gradient-from: transparent;
	--tw-gradient-to: transparent;
	--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

html,
:host {
	line-height: 1.5;
	-webkit-text-size-adjust: 100%;
	tab-size: 4;
	font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	-webkit-tap-highlight-color: transparent;
}

body {
	line-height: inherit;
}

hr {
	height: 0;
	color: inherit;
	border-top-width: 1px;
}

abbr:where([title]) {
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted;
}

h1, h2, h3, h4, h5, h6 {
	font-size: inherit;
	font-weight: inherit;
}

a {
	color: inherit;
	-webkit-text-decoration: inherit;
	text-decoration: inherit;
}

b, strong {
	font-weight: bolder;
}

code, kbd, samp, pre {
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	font-size: 1em;
}

small {
	font-size: 80%;
}

sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub { bottom: -0.25em; }
sup { top: -0.5em; }

table {
	text-indent: 0;
	border-color: inherit;
	border-collapse: collapse;
}

:-moz-focusring {
	outline: auto;
}

progress {
	vertical-align: baseline;
}

summary {
	display: list-item;
}

ol, ul, menu {
	list-style: none;
}

img, svg, video, canvas, audio, iframe, embed, object {
	display: block;
	vertical-align: middle;
}

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

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

:where(select:is([multiple], [size])) optgroup {
	font-weight: bolder;
}

::placeholder {
	opacity: 1;
	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-inner-spin-button,
::-webkit-outer-spin-button {
	height: auto;
}

::file-selector-button {
	margin-inline-end: 4px;
}

button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
	appearance: button;
}

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

/* --------------------------------------------------------- Jetoane */

:root {
  --radius: 1rem;
  --background: oklch(0.995 0.005 100);
  --foreground: oklch(0.22 0.02 150);
  --card: oklch(1 0 0);
  --card-foreground: oklch(0.22 0.02 150);
  --popover: oklch(1 0 0);
  --popover-foreground: oklch(0.22 0.02 150);
  --primary: oklch(0.44 0.09 155);
  --primary-foreground: oklch(0.985 0.01 120);
  --primary-soft: oklch(0.94 0.03 155);
  --primary-deep: oklch(0.3 0.07 155);
  --secondary: oklch(0.96 0.012 110);
  --secondary-foreground: oklch(0.3 0.03 155);
  --muted: oklch(0.965 0.008 110);
  --muted-foreground: oklch(0.52 0.02 150);
  --accent: oklch(0.85 0.12 78);
  --accent-foreground: oklch(0.26 0.05 70);
  --destructive: oklch(0.55 0.2 27);
  --destructive-foreground: oklch(0.985 0.003 0);
  --success: oklch(0.58 0.13 155);
  --success-foreground: oklch(0.985 0.01 120);
  --warning: oklch(0.75 0.15 70);
  --warning-foreground: oklch(0.26 0.05 70);
  --border: oklch(0.91 0.01 120);
  --input: oklch(0.91 0.01 120);
  --ring: oklch(0.44 0.09 155);
  --chart-1: oklch(0.44 0.09 155);
  --chart-2: oklch(0.68 0.12 90);
  --chart-3: oklch(0.75 0.15 70);
  --chart-4: oklch(0.58 0.09 200);
  --chart-5: oklch(0.62 0.13 30);
  --sidebar: oklch(0.99 0.005 120);
  --sidebar-foreground: oklch(0.24 0.02 150);
  --sidebar-primary: oklch(0.44 0.09 155);
  --sidebar-primary-foreground: oklch(0.985 0.01 120);
  --sidebar-accent: oklch(0.95 0.02 150);
  --sidebar-accent-foreground: oklch(0.3 0.05 155);
  --sidebar-border: oklch(0.92 0.01 120);
  --sidebar-ring: oklch(0.44 0.09 155);
}

.dark {
  --background: oklch(0.18 0.02 155);
  --foreground: oklch(0.96 0.01 120);
  --card: oklch(0.23 0.025 155);
  --card-foreground: oklch(0.96 0.01 120);
  --popover: oklch(0.23 0.025 155);
  --popover-foreground: oklch(0.96 0.01 120);
  --primary: oklch(0.72 0.13 155);
  --primary-foreground: oklch(0.18 0.03 155);
  --primary-soft: oklch(0.3 0.05 155);
  --primary-deep: oklch(0.85 0.1 155);
  --secondary: oklch(0.28 0.02 155);
  --secondary-foreground: oklch(0.96 0.01 120);
  --muted: oklch(0.28 0.02 155);
  --muted-foreground: oklch(0.72 0.02 130);
  --accent: oklch(0.8 0.12 78);
  --accent-foreground: oklch(0.22 0.05 70);
  --destructive: oklch(0.65 0.19 27);
  --destructive-foreground: oklch(0.98 0.003 0);
  --success: oklch(0.72 0.13 155);
  --success-foreground: oklch(0.18 0.03 155);
  --warning: oklch(0.8 0.14 70);
  --warning-foreground: oklch(0.22 0.05 70);
  --border: oklch(1 0 0 / 12%);
  --input: oklch(1 0 0 / 16%);
  --ring: oklch(0.72 0.13 155);
  --chart-1: oklch(0.72 0.13 155);
  --chart-2: oklch(0.78 0.12 90);
  --chart-3: oklch(0.8 0.14 70);
  --chart-4: oklch(0.68 0.09 200);
  --chart-5: oklch(0.7 0.13 30);
  --sidebar: oklch(0.21 0.025 155);
  --sidebar-foreground: oklch(0.96 0.01 120);
  --sidebar-primary: oklch(0.72 0.13 155);
  --sidebar-primary-foreground: oklch(0.18 0.03 155);
  --sidebar-accent: oklch(0.28 0.03 155);
  --sidebar-accent-foreground: oklch(0.96 0.01 120);
  --sidebar-border: oklch(1 0 0 / 12%);
  --sidebar-ring: oklch(0.72 0.13 155);
}

/* ------------------------------------------------------ Strat de baza */

* {
    border-color: var(--border);
  }

  body {
    background-color: var(--background);
    color: var(--foreground);
    font-family: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif;
    -webkit-font-smoothing: antialiased;
  }

  h1,
  h2,
  h3 {
    font-family: "Fraunces", Georgia, serif;
    font-weight: 600;
    letter-spacing: -0.02em;
  }

/* ------------------------------------------------------- Animatii */

@keyframes spin { to { transform: rotate(360deg); } }
@keyframes ping { 75%, 100% { transform: scale(2); opacity: 0; } }
@keyframes pulse { 50% { opacity: 0.5; } }
@keyframes bounce {
	0%, 100% { transform: translateY(-25%); animation-timing-function: cubic-bezier(0.8, 0, 1, 1); }
	50% { transform: none; animation-timing-function: cubic-bezier(0, 0, 0.2, 1); }
}
@keyframes accordion-down {
	from { height: 0; opacity: 0; }
	to { height: var(--radix-accordion-content-height, auto); opacity: 1; }
}
@keyframes accordion-up {
	from { height: var(--radix-accordion-content-height, auto); opacity: 1; }
	to { height: 0; opacity: 0; }
}
@keyframes caret-blink { 0%, 70%, 100% { opacity: 1; } 20%, 50% { opacity: 0; } }

/* ------------------------------------------------------- Utilitati */

.container {
	width: 100%;
	margin-inline: auto;
	padding-inline: 1rem;
}
@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; }
}

.container {
	width: 100%;
}
.block {
	display: block;
}
.inline {
	display: inline;
}
.flex {
	display: flex;
}
.inline-flex {
	display: inline-flex;
}
.grid {
	display: grid;
}
.table {
	display: table;
}
.contents {
	display: contents;
}
.hidden {
	display: none;
}
.static {
	position: static;
}
.fixed {
	position: fixed;
}
.absolute {
	position: absolute;
}
.relative {
	position: relative;
}
.sticky {
	position: sticky;
}
.inset-0 {
	inset: calc(0.25rem * 0);
}
.inset-x-0 {
	left: calc(0.25rem * 0);
	right: calc(0.25rem * 0);
}
.inset-y-0 {
	top: calc(0.25rem * 0);
	bottom: calc(0.25rem * 0);
}
.top-0 {
	top: calc(0.25rem * 0);
}
.top-1\/2 {
	top: 50%;
}
.top-3 {
	top: calc(0.25rem * 3);
}
.top-4 {
	top: calc(0.25rem * 4);
}
.top-24 {
	top: calc(0.25rem * 24);
}
.right-0 {
	right: calc(0.25rem * 0);
}
.right-3 {
	right: calc(0.25rem * 3);
}
.right-4 {
	right: calc(0.25rem * 4);
}
.bottom-0 {
	bottom: calc(0.25rem * 0);
}
.bottom-4 {
	bottom: calc(0.25rem * 4);
}
.left-0 {
	left: calc(0.25rem * 0);
}
.left-3 {
	left: calc(0.25rem * 3);
}
.left-4 {
	left: calc(0.25rem * 4);
}
.z-\[60\] {
	z-index: 60;
}
.z-30 {
	z-index: 30;
}
.z-40 {
	z-index: 40;
}
.z-50 {
	z-index: 50;
}
.flex-col {
	flex-direction: column;
}
.flex-wrap {
	flex-wrap: wrap;
}
.flex-1 {
	flex: 1 1 0%;
}
.grow-0 {
	flex-grow: 0;
}
.shrink-0 {
	flex-shrink: 0;
}
.basis-full {
	flex-basis: 100%;
}
.grid-cols-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
.grid-cols-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}
.gap-x-5 {
	column-gap: calc(0.25rem * 5);
}
.gap-y-2 {
	row-gap: calc(0.25rem * 2);
}
.gap-1 {
	gap: calc(0.25rem * 1);
}
.gap-1\.5 {
	gap: calc(0.25rem * 1.5);
}
.gap-2 {
	gap: calc(0.25rem * 2);
}
.gap-2\.5 {
	gap: calc(0.25rem * 2.5);
}
.gap-3 {
	gap: calc(0.25rem * 3);
}
.gap-4 {
	gap: calc(0.25rem * 4);
}
.gap-5 {
	gap: calc(0.25rem * 5);
}
.gap-6 {
	gap: calc(0.25rem * 6);
}
.gap-8 {
	gap: calc(0.25rem * 8);
}
.gap-10 {
	gap: calc(0.25rem * 10);
}
.items-center {
	align-items: center;
}
.items-end {
	align-items: flex-end;
}
.items-start {
	align-items: flex-start;
}
.justify-between {
	justify-content: space-between;
}
.justify-center {
	justify-content: center;
}
.place-content-center {
	place-content: center;
}
.space-y-1 > :not([hidden]) ~ :not([hidden]) {
	--tw-space-y-reverse: 0;
	margin-block-start: calc(calc(0.25rem * 1) * calc(1 - var(--tw-space-y-reverse)));
	margin-block-end: calc(calc(0.25rem * 1) * var(--tw-space-y-reverse));
}
.space-y-2 > :not([hidden]) ~ :not([hidden]) {
	--tw-space-y-reverse: 0;
	margin-block-start: calc(calc(0.25rem * 2) * calc(1 - var(--tw-space-y-reverse)));
	margin-block-end: calc(calc(0.25rem * 2) * var(--tw-space-y-reverse));
}
.space-y-2\.5 > :not([hidden]) ~ :not([hidden]) {
	--tw-space-y-reverse: 0;
	margin-block-start: calc(calc(0.25rem * 2.5) * calc(1 - var(--tw-space-y-reverse)));
	margin-block-end: calc(calc(0.25rem * 2.5) * var(--tw-space-y-reverse));
}
.space-y-3 > :not([hidden]) ~ :not([hidden]) {
	--tw-space-y-reverse: 0;
	margin-block-start: calc(calc(0.25rem * 3) * calc(1 - var(--tw-space-y-reverse)));
	margin-block-end: calc(calc(0.25rem * 3) * var(--tw-space-y-reverse));
}
.space-y-4 > :not([hidden]) ~ :not([hidden]) {
	--tw-space-y-reverse: 0;
	margin-block-start: calc(calc(0.25rem * 4) * calc(1 - var(--tw-space-y-reverse)));
	margin-block-end: calc(calc(0.25rem * 4) * var(--tw-space-y-reverse));
}
.space-y-6 > :not([hidden]) ~ :not([hidden]) {
	--tw-space-y-reverse: 0;
	margin-block-start: calc(calc(0.25rem * 6) * calc(1 - var(--tw-space-y-reverse)));
	margin-block-end: calc(calc(0.25rem * 6) * var(--tw-space-y-reverse));
}
.space-y-7 > :not([hidden]) ~ :not([hidden]) {
	--tw-space-y-reverse: 0;
	margin-block-start: calc(calc(0.25rem * 7) * calc(1 - var(--tw-space-y-reverse)));
	margin-block-end: calc(calc(0.25rem * 7) * var(--tw-space-y-reverse));
}
.w-\[88vw\] {
	width: 88vw;
}
.w-2 {
	width: calc(0.25rem * 2);
}
.w-4 {
	width: calc(0.25rem * 4);
}
.w-6 {
	width: calc(0.25rem * 6);
}
.w-9 {
	width: calc(0.25rem * 9);
}
.w-10 {
	width: calc(0.25rem * 10);
}
.w-56 {
	width: calc(0.25rem * 56);
}
.w-72 {
	width: calc(0.25rem * 72);
}
.w-full {
	width: 100%;
}
.h-\[42vh\] {
	height: 42vh;
}
.h-2 {
	height: calc(0.25rem * 2);
}
.h-4 {
	height: calc(0.25rem * 4);
}
.h-5 {
	height: calc(0.25rem * 5);
}
.h-9 {
	height: calc(0.25rem * 9);
}
.h-10 {
	height: calc(0.25rem * 10);
}
.h-11 {
	height: calc(0.25rem * 11);
}
.\!h-12 {
	height: calc(0.25rem * 12) !important;
}
.h-12 {
	height: calc(0.25rem * 12);
}
.h-16 {
	height: calc(0.25rem * 16);
}
.h-40 {
	height: calc(0.25rem * 40);
}
.h-44 {
	height: calc(0.25rem * 44);
}
.h-48 {
	height: calc(0.25rem * 48);
}
.h-64 {
	height: calc(0.25rem * 64);
}
.h-full {
	height: 100%;
}
.size-3\.5 {
	width: calc(0.25rem * 3.5);
	height: calc(0.25rem * 3.5);
}
.size-4 {
	width: calc(0.25rem * 4);
	height: calc(0.25rem * 4);
}
.size-5 {
	width: calc(0.25rem * 5);
	height: calc(0.25rem * 5);
}
.size-6 {
	width: calc(0.25rem * 6);
	height: calc(0.25rem * 6);
}
.size-8 {
	width: calc(0.25rem * 8);
	height: calc(0.25rem * 8);
}
.size-9 {
	width: calc(0.25rem * 9);
	height: calc(0.25rem * 9);
}
.size-10 {
	width: calc(0.25rem * 10);
	height: calc(0.25rem * 10);
}
.size-11 {
	width: calc(0.25rem * 11);
	height: calc(0.25rem * 11);
}
.size-14 {
	width: calc(0.25rem * 14);
	height: calc(0.25rem * 14);
}
.size-16 {
	width: calc(0.25rem * 16);
	height: calc(0.25rem * 16);
}
.size-full {
	width: 100%;
	height: 100%;
}
.min-w-0 {
	min-width: calc(0.25rem * 0);
}
.min-h-screen {
	min-height: 100vh;
}
.min-h-20 {
	min-height: calc(0.25rem * 20);
}
.max-w-5xl {
	max-width: 64rem;
}
.max-w-6xl {
	max-width: 72rem;
}
.max-w-7xl {
	max-width: 80rem;
}
.max-w-xs {
	max-width: 20rem;
}
.max-w-sm {
	max-width: 24rem;
}
.max-w-md {
	max-width: 28rem;
}
.max-w-xl {
	max-width: 36rem;
}
.max-w-2xl {
	max-width: 42rem;
}
.max-w-3xl {
	max-width: 48rem;
}
.max-w-4xl {
	max-width: 56rem;
}
.aspect-\[16\/10\] {
	aspect-ratio: 16 / 10;
}
.aspect-\[16\/9\] {
	aspect-ratio: 16 / 9;
}
.aspect-\[4\/3\] {
	aspect-ratio: 4 / 3;
}
.aspect-\[4\/5\] {
	aspect-ratio: 4 / 5;
}
.p-1 {
	padding: calc(0.25rem * 1);
}
.p-4 {
	padding: calc(0.25rem * 4);
}
.p-5 {
	padding: calc(0.25rem * 5);
}
.p-6 {
	padding: calc(0.25rem * 6);
}
.p-7 {
	padding: calc(0.25rem * 7);
}
.p-8 {
	padding: calc(0.25rem * 8);
}
.p-10 {
	padding: calc(0.25rem * 10);
}
.p-12 {
	padding: calc(0.25rem * 12);
}
.px-2 {
	padding-left: calc(0.25rem * 2);
	padding-right: calc(0.25rem * 2);
}
.px-2\.5 {
	padding-left: calc(0.25rem * 2.5);
	padding-right: calc(0.25rem * 2.5);
}
.px-3 {
	padding-left: calc(0.25rem * 3);
	padding-right: calc(0.25rem * 3);
}
.px-4 {
	padding-left: calc(0.25rem * 4);
	padding-right: calc(0.25rem * 4);
}
.px-5 {
	padding-left: calc(0.25rem * 5);
	padding-right: calc(0.25rem * 5);
}
.px-6 {
	padding-left: calc(0.25rem * 6);
	padding-right: calc(0.25rem * 6);
}
.px-8 {
	padding-left: calc(0.25rem * 8);
	padding-right: calc(0.25rem * 8);
}
.py-0\.5 {
	padding-top: calc(0.25rem * 0.5);
	padding-bottom: calc(0.25rem * 0.5);
}
.py-1 {
	padding-top: calc(0.25rem * 1);
	padding-bottom: calc(0.25rem * 1);
}
.py-1\.5 {
	padding-top: calc(0.25rem * 1.5);
	padding-bottom: calc(0.25rem * 1.5);
}
.py-2 {
	padding-top: calc(0.25rem * 2);
	padding-bottom: calc(0.25rem * 2);
}
.py-2\.5 {
	padding-top: calc(0.25rem * 2.5);
	padding-bottom: calc(0.25rem * 2.5);
}
.py-3 {
	padding-top: calc(0.25rem * 3);
	padding-bottom: calc(0.25rem * 3);
}
.py-4 {
	padding-top: calc(0.25rem * 4);
	padding-bottom: calc(0.25rem * 4);
}
.py-5 {
	padding-top: calc(0.25rem * 5);
	padding-bottom: calc(0.25rem * 5);
}
.py-6 {
	padding-top: calc(0.25rem * 6);
	padding-bottom: calc(0.25rem * 6);
}
.py-8 {
	padding-top: calc(0.25rem * 8);
	padding-bottom: calc(0.25rem * 8);
}
.py-10 {
	padding-top: calc(0.25rem * 10);
	padding-bottom: calc(0.25rem * 10);
}
.py-12 {
	padding-top: calc(0.25rem * 12);
	padding-bottom: calc(0.25rem * 12);
}
.py-14 {
	padding-top: calc(0.25rem * 14);
	padding-bottom: calc(0.25rem * 14);
}
.py-16 {
	padding-top: calc(0.25rem * 16);
	padding-bottom: calc(0.25rem * 16);
}
.pt-0 {
	padding-top: calc(0.25rem * 0);
}
.pt-1 {
	padding-top: calc(0.25rem * 1);
}
.pt-4 {
	padding-top: calc(0.25rem * 4);
}
.pt-20 {
	padding-top: calc(0.25rem * 20);
}
.pr-4 {
	padding-right: calc(0.25rem * 4);
}
.pb-4 {
	padding-bottom: calc(0.25rem * 4);
}
.pb-8 {
	padding-bottom: calc(0.25rem * 8);
}
.pb-10 {
	padding-bottom: calc(0.25rem * 10);
}
.pb-16 {
	padding-bottom: calc(0.25rem * 16);
}
.pb-20 {
	padding-bottom: calc(0.25rem * 20);
}
.pl-4 {
	padding-left: calc(0.25rem * 4);
}
.mx-auto {
	margin-left: auto;
	margin-right: auto;
}
.mt-auto {
	margin-top: auto;
}
.mt-0\.5 {
	margin-top: calc(0.25rem * 0.5);
}
.mt-1 {
	margin-top: calc(0.25rem * 1);
}
.mt-2 {
	margin-top: calc(0.25rem * 2);
}
.mt-3 {
	margin-top: calc(0.25rem * 3);
}
.mt-4 {
	margin-top: calc(0.25rem * 4);
}
.mt-5 {
	margin-top: calc(0.25rem * 5);
}
.mt-6 {
	margin-top: calc(0.25rem * 6);
}
.mt-7 {
	margin-top: calc(0.25rem * 7);
}
.mt-8 {
	margin-top: calc(0.25rem * 8);
}
.mt-10 {
	margin-top: calc(0.25rem * 10);
}
.mt-12 {
	margin-top: calc(0.25rem * 12);
}
.mt-14 {
	margin-top: calc(0.25rem * 14);
}
.mt-16 {
	margin-top: calc(0.25rem * 16);
}
.mt-24 {
	margin-top: calc(0.25rem * 24);
}
.mb-4 {
	margin-bottom: calc(0.25rem * 4);
}
.mb-6 {
	margin-bottom: calc(0.25rem * 6);
}
.ml-auto {
	margin-left: auto;
}
.-ml-4 {
	margin-left: calc(0.25rem * -4);
}
.ml-1 {
	margin-left: calc(0.25rem * 1);
}
.ml-6 {
	margin-left: calc(0.25rem * 6);
}
.font-bold {
	font-weight: 700;
}
.font-display {
	font-family: "Fraunces", Georgia, serif;
}
.font-medium {
	font-weight: 500;
}
.font-normal {
	font-weight: 400;
}
.font-semibold {
	font-weight: 600;
}
.text-left {
	text-align: left;
}
.text-center {
	text-align: center;
}
.text-balance {
	text-wrap: balance;
}
.text-5xl {
	font-size: 3rem;
	line-height: 1;
}
.text-7xl {
	font-size: 4.5rem;
	line-height: 1;
}
.text-base {
	font-size: 1rem;
	line-height: calc(1.5 / 1);
}
.text-xs {
	font-size: 0.75rem;
	line-height: calc(1 / 0.75);
}
.text-foreground {
	color: var(--foreground);
}
.text-sm {
	font-size: 0.875rem;
	line-height: calc(1.25 / 0.875);
}
.text-card-foreground {
	color: var(--card-foreground);
}
.text-lg {
	font-size: 1.125rem;
	line-height: calc(1.75 / 1.125);
}
.text-xl {
	font-size: 1.25rem;
	line-height: calc(1.75 / 1.25);
}
.text-2xl {
	font-size: 1.5rem;
	line-height: calc(2 / 1.5);
}
.text-3xl {
	font-size: 1.875rem;
	line-height: calc(2.25 / 1.875);
}
.text-primary {
	color: var(--primary);
}
.text-4xl {
	font-size: 2.25rem;
	line-height: calc(2.5 / 2.25);
}
.text-primary-foreground {
	color: var(--primary-foreground);
}
.text-primary-foreground\/80 {
	color: color-mix(in oklab, var(--primary-foreground) 80%, transparent);
}
.text-primary-foreground\/85 {
	color: color-mix(in oklab, var(--primary-foreground) 85%, transparent);
}
.text-primary-deep {
	color: var(--primary-deep);
}
.text-secondary-foreground {
	color: var(--secondary-foreground);
}
.text-muted-foreground {
	color: var(--muted-foreground);
}
.text-accent {
	color: var(--accent);
}
.text-accent-foreground {
	color: var(--accent-foreground);
}
.text-destructive {
	color: var(--destructive);
}
.text-destructive-foreground {
	color: var(--destructive-foreground);
}
.text-success {
	color: var(--success);
}
.text-success-foreground {
	color: var(--success-foreground);
}
.text-warning-foreground {
	color: var(--warning-foreground);
}
.leading-none {
	line-height: 1;
}
.leading-relaxed {
	line-height: 1.625;
}
.leading-tight {
	line-height: 1.25;
}
.tracking-tight {
	letter-spacing: -0.025em;
}
.tracking-wide {
	letter-spacing: 0.025em;
}
.uppercase {
	text-transform: uppercase;
}
.capitalize {
	text-transform: capitalize;
}
.underline {
	text-decoration-line: underline;
}
.line-through {
	text-decoration-line: line-through;
}
.underline-offset-4 {
	text-underline-offset: 4px;
}
.line-clamp-1 {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}
.line-clamp-2 {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.line-clamp-3 {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}
.whitespace-nowrap {
	white-space: nowrap;
}
.bg-gradient-to-b {
	background-image: linear-gradient(to bottom, var(--tw-gradient-stops));
}
.bg-gradient-to-t {
	background-image: linear-gradient(to top, var(--tw-gradient-stops));
}
.bg-\[linear-gradient\(120deg\,var\(--color-primary-soft\)\,var\(--color-secondary\)\)\] {
	background-image: linear-gradient(120deg,var(--primary-soft),var(--secondary));
}
.bg-background {
	background-color: var(--background);
}
.bg-background\/85 {
	background-color: color-mix(in oklab, var(--background) 85%, transparent);
}
.bg-background\/95 {
	background-color: color-mix(in oklab, var(--background) 95%, transparent);
}
.bg-transparent {
	background-color: transparent;
}
.bg-white\/90 {
	background-color: color-mix(in oklab, #fff 90%, transparent);
}
.bg-foreground\/40 {
	background-color: color-mix(in oklab, var(--foreground) 40%, transparent);
}
.bg-card {
	background-color: var(--card);
}
.bg-primary {
	background-color: var(--primary);
}
.bg-primary-foreground\/10 {
	background-color: color-mix(in oklab, var(--primary-foreground) 10%, transparent);
}
.bg-primary-foreground\/15 {
	background-color: color-mix(in oklab, var(--primary-foreground) 15%, transparent);
}
.bg-primary-soft {
	background-color: var(--primary-soft);
}
.bg-primary-deep {
	background-color: var(--primary-deep);
}
.bg-secondary {
	background-color: var(--secondary);
}
.bg-secondary\/30 {
	background-color: color-mix(in oklab, var(--secondary) 30%, transparent);
}
.bg-secondary\/40 {
	background-color: color-mix(in oklab, var(--secondary) 40%, transparent);
}
.bg-secondary\/50 {
	background-color: color-mix(in oklab, var(--secondary) 50%, transparent);
}
.bg-secondary\/60 {
	background-color: color-mix(in oklab, var(--secondary) 60%, transparent);
}
.bg-muted {
	background-color: var(--muted);
}
.bg-muted-foreground\/30 {
	background-color: color-mix(in oklab, var(--muted-foreground) 30%, transparent);
}
.bg-accent {
	background-color: var(--accent);
}
.bg-accent\/10 {
	background-color: color-mix(in oklab, var(--accent) 10%, transparent);
}
.bg-accent\/15 {
	background-color: color-mix(in oklab, var(--accent) 15%, transparent);
}
.bg-accent-foreground\/15 {
	background-color: color-mix(in oklab, var(--accent-foreground) 15%, transparent);
}
.bg-destructive {
	background-color: var(--destructive);
}
.bg-success {
	background-color: var(--success);
}
.bg-warning {
	background-color: var(--warning);
}
.from-primary-deep\/80 {
	--tw-gradient-from: color-mix(in oklab, var(--primary-deep) 80%, transparent);
	--tw-gradient-to: transparent;
	--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-primary-deep\/85 {
	--tw-gradient-from: color-mix(in oklab, var(--primary-deep) 85%, transparent);
	--tw-gradient-to: transparent;
	--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-primary-deep\/90 {
	--tw-gradient-from: color-mix(in oklab, var(--primary-deep) 90%, transparent);
	--tw-gradient-to: transparent;
	--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.via-primary-deep\/20 {
	--tw-gradient-to: transparent;
	--tw-gradient-stops: var(--tw-gradient-from), color-mix(in oklab, var(--primary-deep) 20%, transparent), var(--tw-gradient-to);
}
.via-primary-deep\/60 {
	--tw-gradient-to: transparent;
	--tw-gradient-stops: var(--tw-gradient-from), color-mix(in oklab, var(--primary-deep) 60%, transparent), var(--tw-gradient-to);
}
.to-transparent {
	--tw-gradient-to: transparent;
}
.to-primary-deep\/25 {
	--tw-gradient-to: color-mix(in oklab, var(--primary-deep) 25%, transparent);
}
.to-primary-deep\/85 {
	--tw-gradient-to: color-mix(in oklab, var(--primary-deep) 85%, transparent);
}
.rounded-sm {
	border-top-left-radius: calc(var(--radius) - 4px);
	border-top-right-radius: calc(var(--radius) - 4px);
	border-bottom-right-radius: calc(var(--radius) - 4px);
	border-bottom-left-radius: calc(var(--radius) - 4px);
}
.rounded-md {
	border-top-left-radius: calc(var(--radius) - 2px);
	border-top-right-radius: calc(var(--radius) - 2px);
	border-bottom-right-radius: calc(var(--radius) - 2px);
	border-bottom-left-radius: calc(var(--radius) - 2px);
}
.rounded-lg {
	border-top-left-radius: var(--radius);
	border-top-right-radius: var(--radius);
	border-bottom-right-radius: var(--radius);
	border-bottom-left-radius: var(--radius);
}
.rounded-xl {
	border-top-left-radius: calc(var(--radius) + 4px);
	border-top-right-radius: calc(var(--radius) + 4px);
	border-bottom-right-radius: calc(var(--radius) + 4px);
	border-bottom-left-radius: calc(var(--radius) + 4px);
}
.rounded-2xl {
	border-top-left-radius: calc(var(--radius) + 8px);
	border-top-right-radius: calc(var(--radius) + 8px);
	border-bottom-right-radius: calc(var(--radius) + 8px);
	border-bottom-left-radius: calc(var(--radius) + 8px);
}
.rounded-3xl {
	border-top-left-radius: calc(var(--radius) + 12px);
	border-top-right-radius: calc(var(--radius) + 12px);
	border-bottom-right-radius: calc(var(--radius) + 12px);
	border-bottom-left-radius: calc(var(--radius) + 12px);
}
.rounded-4xl {
	border-top-left-radius: calc(var(--radius) + 16px);
	border-top-right-radius: calc(var(--radius) + 16px);
	border-bottom-right-radius: calc(var(--radius) + 16px);
	border-bottom-left-radius: calc(var(--radius) + 16px);
}
.rounded-full {
	border-top-left-radius: calc(infinity * 1px);
	border-top-right-radius: calc(infinity * 1px);
	border-bottom-right-radius: calc(infinity * 1px);
	border-bottom-left-radius: calc(infinity * 1px);
}
.border {
	border-style: var(--tw-border-style);
	border-width: 1px;
}
.border-0 {
	border-style: var(--tw-border-style);
	border-width: 0px;
}
.border-2 {
	border-style: var(--tw-border-style);
	border-width: 2px;
}
.border-t {
	border-style: var(--tw-border-style);
	border-top-width: 1px;
}
.border-r {
	border-style: var(--tw-border-style);
	border-right-width: 1px;
}
.border-b {
	border-style: var(--tw-border-style);
	border-bottom-width: 1px;
}
.border-l {
	border-style: var(--tw-border-style);
	border-left-width: 1px;
}
.border-dashed {
	--tw-border-style: dashed;
	border-style: dashed;
}
.border-transparent {
	border-color: transparent;
}
.border-primary {
	border-color: var(--primary);
}
.border-primary-foreground\/15 {
	border-color: color-mix(in oklab, var(--primary-foreground) 15%, transparent);
}
.border-primary-foreground\/25 {
	border-color: color-mix(in oklab, var(--primary-foreground) 25%, transparent);
}
.border-accent\/40 {
	border-color: color-mix(in oklab, var(--accent) 40%, transparent);
}
.border-destructive\/40 {
	border-color: color-mix(in oklab, var(--destructive) 40%, transparent);
}
.border-border {
	border-color: var(--border);
}
.border-border\/70 {
	border-color: color-mix(in oklab, var(--border) 70%, transparent);
}
.border-input {
	border-color: var(--input);
}
.outline {
	outline-style: solid;
	outline-width: 1px;
}
.ring-offset-background {
	--tw-ring-offset-color: var(--background);
}
.ring-accent\/30 {
	--tw-ring-color: color-mix(in oklab, var(--accent) 30%, transparent);
}
.ring-0 {
	--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
	--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
	box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.ring-1 {
	--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
	--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
	box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.shadow {
	--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
	box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.shadow-lift {
	--tw-shadow: 0 10px 20px -8px oklch(0.25 0.05 150 / 18%), 0 30px 60px -30px oklch(0.25 0.05 150 / 30%);
	box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.shadow-soft {
	--tw-shadow: 0 1px 2px oklch(0.25 0.05 150 / 6%), 0 8px 24px -12px oklch(0.25 0.05 150 / 18%);
	box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.shadow-sm {
	--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
	box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.shadow-card {
	--tw-shadow: 0 2px 4px oklch(0.25 0.05 150 / 5%), 0 18px 40px -20px oklch(0.25 0.05 150 / 22%);
	box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.shadow-md {
	--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
	box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.shadow-lg {
	--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
	box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.opacity-0 {
	opacity: 0;
}
.opacity-70 {
	opacity: 0.7;
}
.opacity-75 {
	opacity: 0.75;
}
.opacity-90 {
	opacity: 0.9;
}
.opacity-100 {
	opacity: 1;
}
.backdrop-blur {
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}
.backdrop-blur-xl {
	-webkit-backdrop-filter: blur(24px);
	backdrop-filter: blur(24px);
}
.-translate-x-full {
	--tw-translate-x: -100%;
	translate: var(--tw-translate-x) var(--tw-translate-y);
}
.translate-x-0 {
	--tw-translate-x: calc(0.25rem * 0);
	translate: var(--tw-translate-x) var(--tw-translate-y);
}
.translate-x-full {
	--tw-translate-x: 100%;
	translate: var(--tw-translate-x) var(--tw-translate-y);
}
.-translate-y-1\/2 {
	--tw-translate-y: -50%;
	translate: var(--tw-translate-x) var(--tw-translate-y);
}
.translate-y-0 {
	--tw-translate-y: calc(0.25rem * 0);
	translate: var(--tw-translate-x) var(--tw-translate-y);
}
.translate-y-2 {
	--tw-translate-y: calc(0.25rem * 2);
	translate: var(--tw-translate-x) var(--tw-translate-y);
}
.transition-all {
	transition-property: all;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-duration: 150ms;
}
.transition-colors {
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-duration: 150ms;
}
.transition-opacity {
	transition-property: opacity;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-duration: 150ms;
}
.transition-shadow {
	transition-property: box-shadow;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-duration: 150ms;
}
.transition-transform {
	transition-property: transform, translate, scale, rotate;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-duration: 150ms;
}
.duration-200 {
	transition-duration: 200ms;
}
.duration-300 {
	transition-duration: 300ms;
}
.duration-500 {
	transition-duration: 500ms;
}
.duration-700 {
	transition-duration: 700ms;
}
.cursor-pointer {
	cursor: pointer;
}
.pointer-events-none {
	pointer-events: none;
}
.pointer-events-auto {
	pointer-events: auto;
}
.select-none {
	-webkit-user-select: none;
	user-select: none;
}
.accent-primary {
	accent-color: var(--primary);
}
.touch-none {
	touch-action: none;
}
.overflow-x-auto {
	overflow-x: auto;
}
.overflow-y-auto {
	overflow-y: auto;
}
.overflow-hidden {
	overflow: hidden;
}
.object-cover {
	object-fit: cover;
}
.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border-width: 0;
}
.placeholder\:text-muted-foreground::placeholder {
	color: var(--muted-foreground);
}
.focus\:absolute:focus {
	position: absolute;
}
.focus\:top-4:focus {
	top: calc(0.25rem * 4);
}
.focus\:left-4:focus {
	left: calc(0.25rem * 4);
}
.focus\:z-50:focus {
	z-index: 50;
}
.focus\:px-4:focus {
	padding-left: calc(0.25rem * 4);
	padding-right: calc(0.25rem * 4);
}
.focus\:py-2:focus {
	padding-top: calc(0.25rem * 2);
	padding-bottom: calc(0.25rem * 2);
}
.first\:mt-0:first-child {
	margin-top: calc(0.25rem * 0);
}
.hover\:text-foreground:hover {
	color: var(--foreground);
}
.hover\:text-primary:hover {
	color: var(--primary);
}
.focus\:text-primary-foreground:focus {
	color: var(--primary-foreground);
}
.hover\:text-primary-foreground:hover {
	color: var(--primary-foreground);
}
.hover\:underline:hover {
	text-decoration-line: underline;
}
.hover\:bg-white:hover {
	background-color: #fff;
}
.focus\:bg-primary:focus {
	background-color: var(--primary);
}
.hover\:bg-primary\/90:hover {
	background-color: color-mix(in oklab, var(--primary) 90%, transparent);
}
.hover\:bg-secondary:hover {
	background-color: var(--secondary);
}
.hover\:bg-secondary\/80:hover {
	background-color: color-mix(in oklab, var(--secondary) 80%, transparent);
}
.hover\:bg-muted-foreground\/50:hover {
	background-color: color-mix(in oklab, var(--muted-foreground) 50%, transparent);
}
.hover\:bg-accent:hover {
	background-color: var(--accent);
}
.hover\:bg-destructive\/90:hover {
	background-color: color-mix(in oklab, var(--destructive) 90%, transparent);
}
.focus\:rounded-full:focus {
	border-top-left-radius: calc(infinity * 1px);
	border-top-right-radius: calc(infinity * 1px);
	border-bottom-right-radius: calc(infinity * 1px);
	border-bottom-left-radius: calc(infinity * 1px);
}
.hover\:border-primary:hover {
	border-color: var(--primary);
}
.focus-visible\:outline-none:focus-visible {
	outline: 2px solid transparent;
	outline-offset: 2px;
}
.focus\:outline-none:focus {
	outline: 2px solid transparent;
	outline-offset: 2px;
}
.focus-visible\:ring-offset-background:focus-visible {
	--tw-ring-offset-color: var(--background);
}
.focus-visible\:ring-offset-2:focus-visible {
	--tw-ring-offset-width: 2px;
}
.focus-visible\:ring-ring:focus-visible {
	--tw-ring-color: var(--ring);
}
.focus\:ring-ring:focus {
	--tw-ring-color: var(--ring);
}
.focus-visible\:ring-1:focus-visible {
	--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
	--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
	box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.focus\:ring-1:focus {
	--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
	--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
	box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.focus-visible\:ring-2:focus-visible {
	--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
	--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
	box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.hover\:shadow-lift:hover {
	--tw-shadow: 0 10px 20px -8px oklch(0.25 0.05 150 / 18%), 0 30px 60px -30px oklch(0.25 0.05 150 / 30%);
	box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.disabled\:opacity-50:disabled {
	opacity: 0.5;
}
.disabled\:cursor-not-allowed:disabled {
	cursor: not-allowed;
}
.disabled\:pointer-events-none:disabled {
	pointer-events: none;
}
.focus\:not-sr-only:focus {
	position: static;
	width: auto;
	height: auto;
	padding: 0;
	margin: 0;
	overflow: visible;
	clip: auto;
	white-space: normal;
}
.group:hover .group-hover\:text-primary {
	color: var(--primary);
}
.peer:checked ~ .peer-checked\:text-primary-foreground {
	color: var(--primary-foreground);
}
.peer:checked ~ .peer-checked\:bg-primary {
	background-color: var(--primary);
}
.peer:checked ~ .peer-checked\:border-primary {
	border-color: var(--primary);
}
.peer:disabled ~ .peer-disabled\:opacity-70 {
	opacity: 0.7;
}
.group:hover .group-hover\:scale-105 {
	scale: 1.05 1.05;
}
.peer:disabled ~ .peer-disabled\:cursor-not-allowed {
	cursor: not-allowed;
}
.\[\&_svg\]\:shrink-0 svg {
	flex-shrink: 0;
}
.\[\&_ul\]\:space-y-2 > :not([hidden]) ~ :not([hidden]) ul {
	--tw-space-y-reverse: 0;
	margin-block-start: calc(calc(0.25rem * 2) * calc(1 - var(--tw-space-y-reverse)));
	margin-block-end: calc(calc(0.25rem * 2) * var(--tw-space-y-reverse));
}
.\[\&_h2\]\:font-display h2 {
	font-family: "Fraunces", Georgia, serif;
}
.\[\&_a\:hover\]\:text-foreground a:hover {
	color: var(--foreground);
}
.\[\&_a\]\:text-sm a {
	font-size: 0.875rem;
	line-height: calc(1.25 / 0.875);
}
.\[\&_h2\]\:text-foreground h2 {
	color: var(--foreground);
}
.data-\[state\=active\]\:text-foreground[data-state=active] {
	color: var(--foreground);
}
.\[\&_h2\]\:text-xl h2 {
	font-size: 1.25rem;
	line-height: calc(1.75 / 1.25);
}
.\[\&_a\]\:text-muted-foreground a {
	color: var(--muted-foreground);
}
.data-\[state\=active\]\:bg-background[data-state=active] {
	background-color: var(--background);
}
.data-\[state\=checked\]\:bg-primary[data-state=checked] {
	background-color: var(--primary);
}
.data-\[state\=unchecked\]\:bg-input[data-state=unchecked] {
	background-color: var(--input);
}
.data-\[state\=active\]\:shadow[data-state=active] {
	--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
	box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked] {
	--tw-translate-x: calc(0.25rem * 0);
	translate: var(--tw-translate-x) var(--tw-translate-y);
}
.data-\[state\=checked\]\:translate-x-4[data-state=checked] {
	--tw-translate-x: calc(0.25rem * 4);
	translate: var(--tw-translate-x) var(--tw-translate-y);
}
.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg {
	rotate: 180deg;
}
.data-\[state\=closed\]\:animate-accordion-up[data-state=closed] {
	animation: accordion-up 0.2s ease-out;
}
.data-\[state\=open\]\:animate-accordion-down[data-state=open] {
	animation: accordion-down 0.2s ease-out;
}
.\[\&_svg\]\:pointer-events-none svg {
	pointer-events: none;
}

@media (min-width: 40rem) {
	.sm\:inline-flex {
		display: inline-flex;
	}
	.sm\:flex-row {
		flex-direction: row;
	}
	.sm\:flex-wrap {
		flex-wrap: wrap;
	}
	.sm\:flex-1 {
		flex: 1 1 0%;
	}
	.sm\:grid-cols-2 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.sm\:grid-cols-3 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	.sm\:grid-cols-4 {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
	.sm\:col-span-2 {
		grid-column: span 2 / span 2;
	}
	.sm\:gap-3 {
		gap: calc(0.25rem * 3);
	}
	.sm\:gap-4 {
		gap: calc(0.25rem * 4);
	}
	.sm\:items-center {
		align-items: center;
	}
	.sm\:justify-between {
		justify-content: space-between;
	}
	.sm\:w-auto {
		width: auto;
	}
	.sm\:w-52 {
		width: calc(0.25rem * 52);
	}
	.sm\:w-72 {
		width: calc(0.25rem * 72);
	}
	.sm\:h-80 {
		height: calc(0.25rem * 80);
	}
	.sm\:size-28 {
		width: calc(0.25rem * 28);
		height: calc(0.25rem * 28);
	}
	.sm\:max-w-sm {
		max-width: 24rem;
	}
	.sm\:aspect-\[4\/3\] {
		aspect-ratio: 4 / 3;
	}
	.sm\:p-5 {
		padding: calc(0.25rem * 5);
	}
	.sm\:p-6 {
		padding: calc(0.25rem * 6);
	}
	.sm\:p-8 {
		padding: calc(0.25rem * 8);
	}
	.sm\:p-12 {
		padding: calc(0.25rem * 12);
	}
	.sm\:px-6 {
		padding-left: calc(0.25rem * 6);
		padding-right: calc(0.25rem * 6);
	}
	.sm\:py-8 {
		padding-top: calc(0.25rem * 8);
		padding-bottom: calc(0.25rem * 8);
	}
	.sm\:py-20 {
		padding-top: calc(0.25rem * 20);
		padding-bottom: calc(0.25rem * 20);
	}
	.sm\:pt-28 {
		padding-top: calc(0.25rem * 28);
	}
	.sm\:pb-24 {
		padding-bottom: calc(0.25rem * 24);
	}
	.sm\:ml-auto {
		margin-left: auto;
	}
	.sm\:text-5xl {
		font-size: 3rem;
		line-height: 1;
	}
	.sm\:text-lg {
		font-size: 1.125rem;
		line-height: calc(1.75 / 1.125);
	}
	.sm\:text-4xl {
		font-size: 2.25rem;
		line-height: calc(2.5 / 2.25);
	}
}

@media (min-width: 48rem) {
	.md\:block {
		display: block;
	}
	.md\:flex {
		display: flex;
	}
	.md\:grid {
		display: grid;
	}
	.md\:hidden {
		display: none;
	}
	.md\:grid-cols-\[1fr_1fr_0\.8fr_auto\] {
		grid-template-columns: 1fr 1fr 0.8fr auto;
	}
	.md\:grid-cols-\[300px_1fr\] {
		grid-template-columns: 300px 1fr;
	}
	.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\:h-full {
		height: 100%;
	}
	.md\:aspect-auto {
		aspect-ratio: auto;
	}
}

@media (min-width: 64rem) {
	.lg\:block {
		display: block;
	}
	.lg\:hidden {
		display: none;
	}
	.lg\:grid-cols-\[1fr_1fr\] {
		grid-template-columns: 1fr 1fr;
	}
	.lg\:grid-cols-\[1fr_320px\] {
		grid-template-columns: 1fr 320px;
	}
	.lg\:grid-cols-\[1fr_340px\] {
		grid-template-columns: 1fr 340px;
	}
	.lg\:grid-cols-\[1fr_360px\] {
		grid-template-columns: 1fr 360px;
	}
	.lg\:grid-cols-\[280px_1fr\] {
		grid-template-columns: 280px 1fr;
	}
	.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\:grid-cols-5 {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}
	.lg\:px-8 {
		padding-left: calc(0.25rem * 8);
		padding-right: calc(0.25rem * 8);
	}
	.lg\:text-6xl {
		font-size: 3.75rem;
		line-height: 1;
	}
}

@media (min-width: 80rem) {
	.xl\:grid-cols-5 {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}
	.xl\:grid-cols-6 {
		grid-template-columns: repeat(6, minmax(0, 1fr));
	}
}
