From 928fdd8f7506005ab2cd4b80ff90eb31d0ba835d Mon Sep 17 00:00:00 2001 From: Mathieu Virbel Date: Thu, 23 Apr 2026 23:05:50 -0600 Subject: [PATCH 1/2] feat: htmx derivation home page 1:1 from react --- README.md | 79 +- dist/greyhaven.htmx.css | 864 +++ htmx-demo/README.md | 35 + htmx-demo/compare-all.sh | 68 + htmx-demo/compare.py | 100 + htmx-demo/input.css | 88 + package-lock.json | 11135 +++++++++++++++++++++++++++++++++ package.json | 5 +- public/htmx.css | 2 + public/htmx.html | 1018 +++ scripts/generate-htmx-css.ts | 424 ++ scripts/generate-skill.ts | 46 + skill/SKILL.md | 43 + skill/install.sh | 53 +- 14 files changed, 13953 insertions(+), 7 deletions(-) create mode 100644 dist/greyhaven.htmx.css create mode 100644 htmx-demo/README.md create mode 100755 htmx-demo/compare-all.sh create mode 100644 htmx-demo/compare.py create mode 100644 htmx-demo/input.css create mode 100644 package-lock.json create mode 100644 public/htmx.css create mode 100644 public/htmx.html create mode 100644 scripts/generate-htmx-css.ts diff --git a/README.md b/README.md index 2bb717f..94445b5 100644 --- a/README.md +++ b/README.md @@ -37,7 +37,10 @@ greyhaven-design-system/ │ ├── utils.ts # cn() utility │ └── catalog.ts # Shared component catalog (used by MCP + SKILL.md) ├── scripts/ -│ └── generate-skill.ts # SKILL.md generator +│ ├── generate-skill.ts # SKILL.md generator +│ └── generate-htmx-css.ts # HTMX / framework-agnostic CSS generator +├── dist/ +│ └── greyhaven.htmx.css # Auto-generated CSS for HTMX/server-rendered projects ├── app/ # Next.js showcase app (demo only) └── style-dictionary.config.mjs ``` @@ -53,6 +56,8 @@ greyhaven-design-system/ > **Framework-agnostic**: Components have zero Next.js imports. They work with Vite, Remix, Astro, CRA, or any React framework. +> **Also works without React**: `dist/greyhaven.htmx.css` exposes every component via `data-slot` / `data-variant` / `data-size` attribute selectors. HTMX, Django, Rails, Go template, Astro SSR — any project that emits HTML can consume the visual layer. See [HTMX / server-rendered usage](#htmx--server-rendered-usage). + --- ## Using the Design System with AI @@ -244,6 +249,77 @@ pnpm build-storybook # Static build --- +## HTMX / server-rendered usage + +The React components assume a React runtime. For HTMX, Django templates, Rails ERB, Go `html/template`, Astro SSR, or any other server-rendered stack, consume the design system via the auto-generated CSS layer. + +### What you get + +`dist/greyhaven.htmx.css` is generated from `components/ui/*.tsx` (AST walk over `cva()` configs + static `className` strings on `data-slot` elements). It contains ~300 `@layer components` rules, one per data-slot, with attribute selectors for variants and sizes. + +```css +[data-slot="card"] { @apply bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm; } +[data-slot="card-header"] { @apply grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6; } +[data-slot="card-title"] { @apply leading-none font-semibold; } + +[data-slot="button"] { @apply inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium …; } +[data-slot="button"]:not([data-variant]), +[data-slot="button"][data-variant="default"] { @apply bg-primary text-primary-foreground hover:bg-primary/90; } +[data-slot="button"][data-variant="outline"] { @apply border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground; } +[data-slot="button"][data-size="sm"] { @apply h-8 rounded-md gap-1.5 px-3; } +``` + +### Install + +```bash +./skill/install.sh /path/to/your/project --htmx-css +``` + +This copies: +- `dist/greyhaven.htmx.css` → `public/css/greyhaven.htmx.css` +- Aspekta fonts → `public/fonts/` + +Add to your Tailwind v4 input CSS: + +```css +@import "tailwindcss"; +@import "./tokens-light.css"; +@import "./tokens-dark.css"; +@import "./greyhaven.htmx.css"; +``` + +### Consume + +```html +
+
+
Requests Over Time
+
Last 24 hours
+
+
+
+ + + +Active +``` + +### Scope + +- **Static visual components** (Card, Button, Badge, Input, Label, Textarea, Table, Separator, Code, Kbd, Progress, Avatar, Skeleton, Alert, Pagination, Breadcrumb, Navbar, etc.) → fully driven by CSS, no JS needed. +- **Interactive components** (Dialog, Dropdown, Popover, Select, Combobox, Accordion, Tabs, Tooltip, etc.) → CSS emits their static styles, but open/close / positioning / focus management is the consumer's responsibility. Alpine.js pairs naturally with HTMX for these. +- **Native HTML alternatives**: `
` covers Accordion/Collapsible, `` covers Dialog. The CSS rules apply to those too. + +### Regenerate + +```bash +pnpm htmx-css:build # Regenerate dist/greyhaven.htmx.css from components/ui/*.tsx +``` + +Re-runs of `./skill/install.sh --htmx-css` in consumer projects refresh their copy. + +--- + ## Adding a New Component 1. Create `components/ui/my-component.tsx` following the CVA pattern (see `button.tsx`) @@ -264,6 +340,7 @@ pnpm build-storybook # Static build | `pnpm build-storybook` | Static Storybook build | | `pnpm tokens:build` | Regenerate CSS/TS/MD from token JSON files | | `pnpm skill:build` | Regenerate skill/SKILL.md and skill/AGENTS.md from tokens + catalog | +| `pnpm htmx-css:build` | Regenerate dist/greyhaven.htmx.css from components/ui/*.tsx | | `pnpm mcp:start` | Start the MCP server (stdio transport) | | `pnpm mcp:build` | Type-check MCP server | | `pnpm lint` | Run ESLint | diff --git a/dist/greyhaven.htmx.css b/dist/greyhaven.htmx.css new file mode 100644 index 0000000..5072d29 --- /dev/null +++ b/dist/greyhaven.htmx.css @@ -0,0 +1,864 @@ +/*! Greyhaven Design System — HTMX / Framework-Agnostic CSS Layer + * Auto-generated from components/ui/*.tsx by scripts/generate-htmx-css.ts — DO NOT EDIT + * + * Usage: + * + * + * Requires: + * - Tokens: import tokens-light.css + tokens-dark.css before this file + * - Tailwind v4: this file uses @apply against Tailwind utility classes. + * It must be processed by Tailwind v4 (e.g., via `tailwindcss -i input.css`). + * Your consumer Tailwind input should `@import "./greyhaven.htmx.css";`. + * + * Consume via data-slot / data-variant / data-size attributes: + *
+ *
Hello
+ *
+ *
+ * + * Active + */ + + +@layer utilities { + + /* ── accordion-content ─────────────────────────────────────────── */ + :where([data-slot="accordion-content"]) { @apply data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm; } + + /* ── accordion-item ─────────────────────────────────────────── */ + :where([data-slot="accordion-item"]) { @apply border-b last:border-b-0; } + + /* ── accordion-trigger ─────────────────────────────────────────── */ + :where([data-slot="accordion-trigger"]) { @apply focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180; } + + /* ── alert ─────────────────────────────────────────── */ + :where([data-slot="alert"]) { @apply relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current; } + :where([data-slot="alert"]):where(:not([data-variant])) { @apply bg-card text-card-foreground; } + :where([data-slot="alert"]):where([data-variant="default"]) { @apply bg-card text-card-foreground; } + :where([data-slot="alert"]):where([data-variant="destructive"]) { @apply text-destructive bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90; } + + /* ── alert-description ─────────────────────────────────────────── */ + :where([data-slot="alert-description"]) { @apply text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed; } + + /* ── alert-dialog-content ─────────────────────────────────────────── */ + :where([data-slot="alert-dialog-content"]) { @apply bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg; } + + /* ── alert-dialog-description ─────────────────────────────────────────── */ + :where([data-slot="alert-dialog-description"]) { @apply text-muted-foreground text-sm; } + + /* ── alert-dialog-footer ─────────────────────────────────────────── */ + :where([data-slot="alert-dialog-footer"]) { @apply flex flex-col-reverse gap-2 sm:flex-row sm:justify-end; } + + /* ── alert-dialog-header ─────────────────────────────────────────── */ + :where([data-slot="alert-dialog-header"]) { @apply flex flex-col gap-2 text-center sm:text-left; } + + /* ── alert-dialog-overlay ─────────────────────────────────────────── */ + :where([data-slot="alert-dialog-overlay"]) { @apply data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50; } + + /* ── alert-dialog-title ─────────────────────────────────────────── */ + :where([data-slot="alert-dialog-title"]) { @apply text-lg font-semibold; } + + /* ── alert-title ─────────────────────────────────────────── */ + :where([data-slot="alert-title"]) { @apply col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight; } + + /* ── avatar ─────────────────────────────────────────── */ + :where([data-slot="avatar"]) { @apply relative flex size-8 shrink-0 overflow-hidden rounded-full; } + + /* ── avatar-fallback ─────────────────────────────────────────── */ + :where([data-slot="avatar-fallback"]) { @apply bg-muted flex size-full items-center justify-center rounded-full; } + + /* ── avatar-image ─────────────────────────────────────────── */ + :where([data-slot="avatar-image"]) { @apply aspect-square size-full; } + + /* ── badge ─────────────────────────────────────────── */ + :where([data-slot="badge"]) { @apply inline-flex items-center justify-center rounded-md border font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden; } + :where([data-slot="badge"]):where(:not([data-variant])) { @apply border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90; } + :where([data-slot="badge"]):where([data-variant="default"]) { @apply border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90; } + :where([data-slot="badge"]):where([data-variant="secondary"]) { @apply border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90; } + :where([data-slot="badge"]):where([data-variant="muted"]) { @apply border-transparent bg-muted text-muted-foreground [a&]:hover:bg-muted/80; } + :where([data-slot="badge"]):where([data-variant="destructive"]) { @apply border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60; } + :where([data-slot="badge"]):where([data-variant="outline"]) { @apply text-foreground [a&]:hover:bg-accent/10 [a&]:hover:text-accent-foreground; } + :where([data-slot="badge"]):where([data-variant="success"]) { @apply border-transparent bg-[#1a7f37] text-white [a&]:hover:bg-[#1a7f37]/90; } + :where([data-slot="badge"]):where([data-variant="warning"]) { @apply border-transparent bg-[#9a6700] text-white [a&]:hover:bg-[#9a6700]/90; } + :where([data-slot="badge"]):where([data-variant="info"]) { @apply border-transparent bg-[#0969da] text-white [a&]:hover:bg-[#0969da]/90; } + :where([data-slot="badge"]):where([data-variant="tag"]) { @apply border-border bg-card text-foreground [a&]:hover:bg-muted; } + :where([data-slot="badge"]):where([data-variant="value"]) { @apply border-transparent bg-muted text-foreground font-mono [a&]:hover:bg-muted/80; } + :where([data-slot="badge"]):where([data-variant="whatsapp"]) { @apply border-transparent bg-[#22c55e] text-white [a&]:hover:bg-[#22c55e]/90; } + :where([data-slot="badge"]):where([data-variant="email"]) { @apply border-transparent bg-[#4b5563] text-white [a&]:hover:bg-[#4b5563]/90; } + :where([data-slot="badge"]):where([data-variant="telegram"]) { @apply border-transparent bg-[#3b82f6] text-white [a&]:hover:bg-[#3b82f6]/90; } + :where([data-slot="badge"]):where([data-variant="zulip"]) { @apply border-transparent bg-[#a855f7] text-white [a&]:hover:bg-[#a855f7]/90; } + :where([data-slot="badge"]):where([data-variant="platform"]) { @apply border-transparent bg-[#f97316] text-white [a&]:hover:bg-[#f97316]/90; } + :where([data-slot="badge"]):where([data-size="sm"]) { @apply text-xs px-1.5 py-0; } + :where([data-slot="badge"]):where(:not([data-size])) { @apply text-xs px-2 py-0.5; } + :where([data-slot="badge"]):where([data-size="default"]) { @apply text-xs px-2 py-0.5; } + :where([data-slot="badge"]):where([data-size="lg"]) { @apply text-sm px-3 py-1 [&>svg]:size-3.5; } + + /* ── breadcrumb-ellipsis ─────────────────────────────────────────── */ + :where([data-slot="breadcrumb-ellipsis"]) { @apply flex size-9 items-center justify-center; } + + /* ── breadcrumb-item ─────────────────────────────────────────── */ + :where([data-slot="breadcrumb-item"]) { @apply inline-flex items-center gap-1.5; } + + /* ── breadcrumb-link ─────────────────────────────────────────── */ + :where([data-slot="breadcrumb-link"]) { @apply hover:text-foreground transition-colors; } + + /* ── breadcrumb-list ─────────────────────────────────────────── */ + :where([data-slot="breadcrumb-list"]) { @apply text-muted-foreground flex flex-wrap items-center gap-1.5 text-sm break-words sm:gap-2.5; } + + /* ── breadcrumb-page ─────────────────────────────────────────── */ + :where([data-slot="breadcrumb-page"]) { @apply text-foreground font-normal; } + + /* ── breadcrumb-separator ─────────────────────────────────────────── */ + :where([data-slot="breadcrumb-separator"]) { @apply [&>svg]:size-3.5; } + + /* ── button ─────────────────────────────────────────── */ + :where([data-slot="button"]) { @apply inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive; } + :where([data-slot="button"]):where(:not([data-variant])) { @apply bg-primary text-primary-foreground hover:bg-primary/90; } + :where([data-slot="button"]):where([data-variant="default"]) { @apply bg-primary text-primary-foreground hover:bg-primary/90; } + :where([data-slot="button"]):where([data-variant="destructive"]) { @apply bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60; } + :where([data-slot="button"]):where([data-variant="outline"]) { @apply border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50; } + :where([data-slot="button"]):where([data-variant="secondary"]) { @apply bg-secondary text-secondary-foreground hover:bg-secondary/80; } + :where([data-slot="button"]):where([data-variant="ghost"]) { @apply hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50; } + :where([data-slot="button"]):where([data-variant="link"]) { @apply text-primary underline-offset-4 hover:underline; } + :where([data-slot="button"]):where(:not([data-size])) { @apply h-9 px-4 py-2 has-[>svg]:px-3; } + :where([data-slot="button"]):where([data-size="default"]) { @apply h-9 px-4 py-2 has-[>svg]:px-3; } + :where([data-slot="button"]):where([data-size="sm"]) { @apply h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5; } + :where([data-slot="button"]):where([data-size="lg"]) { @apply h-10 rounded-md px-6 has-[>svg]:px-4; } + :where([data-slot="button"]):where([data-size="icon"]) { @apply size-9; } + :where([data-slot="button"]):where([data-size="icon-sm"]) { @apply size-8; } + :where([data-slot="button"]):where([data-size="icon-lg"]) { @apply size-10; } + + /* ── button-group ─────────────────────────────────────────── */ + :where([data-slot="button-group"]) { @apply flex w-fit items-stretch [&>*]:focus-visible:z-10 [&>*]:focus-visible:relative [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-md has-[>[data-slot=button-group]]:gap-2; } + :where([data-slot="button-group"]):where(:not([data-orientation])) { @apply [&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none; } + :where([data-slot="button-group"]):where([data-orientation="horizontal"]) { @apply [&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none; } + :where([data-slot="button-group"]):where([data-orientation="vertical"]) { @apply flex-col [&>*:not(:first-child)]:rounded-t-none [&>*:not(:first-child)]:border-t-0 [&>*:not(:last-child)]:rounded-b-none; } + + /* ── button-group-separator ─────────────────────────────────────────── */ + :where([data-slot="button-group-separator"]) { @apply bg-input relative !m-0 self-stretch data-[orientation=vertical]:h-auto; } + + /* ── card ─────────────────────────────────────────── */ + :where([data-slot="card"]) { @apply bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm; } + + /* ── card-action ─────────────────────────────────────────── */ + :where([data-slot="card-action"]) { @apply col-start-2 row-span-2 row-start-1 self-start justify-self-end; } + + /* ── card-content ─────────────────────────────────────────── */ + :where([data-slot="card-content"]) { @apply px-6; } + + /* ── card-description ─────────────────────────────────────────── */ + :where([data-slot="card-description"]) { @apply text-muted-foreground text-sm; } + + /* ── card-footer ─────────────────────────────────────────── */ + :where([data-slot="card-footer"]) { @apply flex items-center px-6 [.border-t]:pt-6; } + + /* ── card-header ─────────────────────────────────────────── */ + :where([data-slot="card-header"]) { @apply @container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6; } + + /* ── card-title ─────────────────────────────────────────── */ + :where([data-slot="card-title"]) { @apply font-semibold; } + + /* ── carousel ─────────────────────────────────────────── */ + :where([data-slot="carousel"]) { @apply relative; } + + /* ── carousel-content ─────────────────────────────────────────── */ + :where([data-slot="carousel-content"]) { @apply overflow-hidden; } + + /* ── carousel-item ─────────────────────────────────────────── */ + :where([data-slot="carousel-item"]) { @apply min-w-0 shrink-0 grow-0 basis-full; } + + /* ── carousel-next ─────────────────────────────────────────── */ + :where([data-slot="carousel-next"]) { @apply absolute size-8 rounded-full; } + + /* ── carousel-previous ─────────────────────────────────────────── */ + :where([data-slot="carousel-previous"]) { @apply absolute size-8 rounded-full; } + + /* ── chart ─────────────────────────────────────────── */ + :where([data-slot="chart"]) { @apply [&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border flex aspect-video justify-center text-xs [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-hidden [&_.recharts-sector]:outline-hidden [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-surface]:outline-hidden; } + + /* ── checkbox ─────────────────────────────────────────── */ + :where([data-slot="checkbox"]) { @apply border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50; } + + /* ── checkbox-indicator ─────────────────────────────────────────── */ + :where([data-slot="checkbox-indicator"]) { @apply flex items-center justify-center text-current transition-none; } + + /* ── code ─────────────────────────────────────────── */ + :where([data-slot="code"]) { @apply bg-muted border border-border font-mono text-foreground; } + :where([data-slot="code"]):where(:not([data-variant])) { @apply rounded text-xs px-1.5 py-0.5; } + :where([data-slot="code"]):where([data-variant="inline"]) { @apply rounded text-xs px-1.5 py-0.5; } + :where([data-slot="code"]):where([data-variant="block"]) { @apply block rounded-md text-sm px-4 py-3 break-all whitespace-pre-wrap; } + + /* ── code-block ─────────────────────────────────────────── */ + + /* ── command ─────────────────────────────────────────── */ + :where([data-slot="command"]) { @apply bg-popover text-popover-foreground flex h-full w-full flex-col overflow-hidden rounded-md; } + + /* ── command-empty ─────────────────────────────────────────── */ + :where([data-slot="command-empty"]) { @apply py-6 text-center text-sm; } + + /* ── command-group ─────────────────────────────────────────── */ + :where([data-slot="command-group"]) { @apply text-foreground [&_[cmdk-group-heading]]:text-muted-foreground overflow-hidden p-1 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium; } + + /* ── command-input ─────────────────────────────────────────── */ + :where([data-slot="command-input"]) { @apply placeholder:text-muted-foreground flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50; } + + /* ── command-input-wrapper ─────────────────────────────────────────── */ + :where([data-slot="command-input-wrapper"]) { @apply flex h-9 items-center gap-2 border-b px-3; } + + /* ── command-item ─────────────────────────────────────────── */ + :where([data-slot="command-item"]) { @apply data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4; } + + /* ── command-list ─────────────────────────────────────────── */ + :where([data-slot="command-list"]) { @apply max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto; } + + /* ── command-separator ─────────────────────────────────────────── */ + :where([data-slot="command-separator"]) { @apply bg-border -mx-1 h-px; } + + /* ── command-shortcut ─────────────────────────────────────────── */ + :where([data-slot="command-shortcut"]) { @apply text-muted-foreground ml-auto text-xs tracking-widest; } + + /* ── context-menu-checkbox-item ─────────────────────────────────────────── */ + :where([data-slot="context-menu-checkbox-item"]) { @apply focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4; } + + /* ── context-menu-content ─────────────────────────────────────────── */ + :where([data-slot="context-menu-content"]) { @apply bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-context-menu-content-available-height) min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md; } + + /* ── context-menu-item ─────────────────────────────────────────── */ + :where([data-slot="context-menu-item"]) { @apply focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4; } + + /* ── context-menu-label ─────────────────────────────────────────── */ + :where([data-slot="context-menu-label"]) { @apply text-foreground px-2 py-1.5 text-sm font-medium data-[inset]:pl-8; } + + /* ── context-menu-radio-item ─────────────────────────────────────────── */ + :where([data-slot="context-menu-radio-item"]) { @apply focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4; } + + /* ── context-menu-separator ─────────────────────────────────────────── */ + :where([data-slot="context-menu-separator"]) { @apply bg-border -mx-1 my-1 h-px; } + + /* ── context-menu-shortcut ─────────────────────────────────────────── */ + :where([data-slot="context-menu-shortcut"]) { @apply text-muted-foreground ml-auto text-xs tracking-widest; } + + /* ── context-menu-sub-content ─────────────────────────────────────────── */ + :where([data-slot="context-menu-sub-content"]) { @apply bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg; } + + /* ── context-menu-sub-trigger ─────────────────────────────────────────── */ + :where([data-slot="context-menu-sub-trigger"]) { @apply focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4; } + + /* ── cta-section ─────────────────────────────────────────── */ + :where([data-slot="cta-section"]) { @apply py-16 px-6; } + :where([data-slot="cta-section"]):where(:not([data-variant])) { @apply text-center; } + :where([data-slot="cta-section"]):where([data-variant="centered"]) { @apply text-center; } + :where([data-slot="cta-section"]):where([data-variant="left-aligned"]) { @apply text-left; } + :where([data-slot="cta-section"]):where([data-background="default"]) { @apply bg-background; } + :where([data-slot="cta-section"]):where(:not([data-background])) { @apply bg-muted; } + :where([data-slot="cta-section"]):where([data-background="muted"]) { @apply bg-muted; } + :where([data-slot="cta-section"]):where([data-background="accent"]) { @apply bg-primary text-primary-foreground; } + :where([data-slot="cta-section"]):where([data-background="subtle"]) { @apply bg-primary/5; } + + /* ── dialog-close ─────────────────────────────────────────── */ + :where([data-slot="dialog-close"]) { @apply ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4; } + + /* ── dialog-content ─────────────────────────────────────────── */ + :where([data-slot="dialog-content"]) { @apply bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg; } + + /* ── dialog-description ─────────────────────────────────────────── */ + :where([data-slot="dialog-description"]) { @apply text-muted-foreground text-sm; } + + /* ── dialog-footer ─────────────────────────────────────────── */ + :where([data-slot="dialog-footer"]) { @apply flex flex-col-reverse gap-2 sm:flex-row sm:justify-end; } + + /* ── dialog-header ─────────────────────────────────────────── */ + :where([data-slot="dialog-header"]) { @apply flex flex-col gap-2 text-center sm:text-left; } + + /* ── dialog-overlay ─────────────────────────────────────────── */ + :where([data-slot="dialog-overlay"]) { @apply data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50; } + + /* ── dialog-title ─────────────────────────────────────────── */ + :where([data-slot="dialog-title"]) { @apply text-lg font-semibold; } + + /* ── drawer-content ─────────────────────────────────────────── */ + :where([data-slot="drawer-content"]) { @apply bg-background fixed z-50 flex h-auto flex-col; } + + /* ── drawer-description ─────────────────────────────────────────── */ + :where([data-slot="drawer-description"]) { @apply text-muted-foreground text-sm; } + + /* ── drawer-footer ─────────────────────────────────────────── */ + :where([data-slot="drawer-footer"]) { @apply mt-auto flex flex-col gap-2 p-4; } + + /* ── drawer-header ─────────────────────────────────────────── */ + :where([data-slot="drawer-header"]) { @apply flex flex-col gap-0.5 p-4 group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center group-data-[vaul-drawer-direction=top]/drawer-content:text-center md:gap-1.5 md:text-left; } + + /* ── drawer-overlay ─────────────────────────────────────────── */ + :where([data-slot="drawer-overlay"]) { @apply data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50; } + + /* ── drawer-title ─────────────────────────────────────────── */ + :where([data-slot="drawer-title"]) { @apply text-foreground font-semibold; } + + /* ── dropdown-menu-checkbox-item ─────────────────────────────────────────── */ + :where([data-slot="dropdown-menu-checkbox-item"]) { @apply focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4; } + + /* ── dropdown-menu-content ─────────────────────────────────────────── */ + :where([data-slot="dropdown-menu-content"]) { @apply bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md; } + + /* ── dropdown-menu-item ─────────────────────────────────────────── */ + :where([data-slot="dropdown-menu-item"]) { @apply focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4; } + + /* ── dropdown-menu-label ─────────────────────────────────────────── */ + :where([data-slot="dropdown-menu-label"]) { @apply px-2 py-1.5 text-sm font-medium data-[inset]:pl-8; } + + /* ── dropdown-menu-radio-item ─────────────────────────────────────────── */ + :where([data-slot="dropdown-menu-radio-item"]) { @apply focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4; } + + /* ── dropdown-menu-separator ─────────────────────────────────────────── */ + :where([data-slot="dropdown-menu-separator"]) { @apply bg-border -mx-1 my-1 h-px; } + + /* ── dropdown-menu-shortcut ─────────────────────────────────────────── */ + :where([data-slot="dropdown-menu-shortcut"]) { @apply text-muted-foreground ml-auto text-xs tracking-widest; } + + /* ── dropdown-menu-sub-content ─────────────────────────────────────────── */ + :where([data-slot="dropdown-menu-sub-content"]) { @apply bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg; } + + /* ── dropdown-menu-sub-trigger ─────────────────────────────────────────── */ + :where([data-slot="dropdown-menu-sub-trigger"]) { @apply focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4; } + + /* ── empty ─────────────────────────────────────────── */ + :where([data-slot="empty"]) { @apply flex min-w-0 flex-1 flex-col items-center justify-center gap-6 rounded-lg border-dashed p-6 text-center text-balance md:p-12; } + + /* ── empty-content ─────────────────────────────────────────── */ + :where([data-slot="empty-content"]) { @apply flex w-full max-w-sm min-w-0 flex-col items-center gap-4 text-sm text-balance; } + + /* ── empty-description ─────────────────────────────────────────── */ + :where([data-slot="empty-description"]) { @apply text-muted-foreground [&>a:hover]:text-primary text-sm/relaxed [&>a]:underline [&>a]:underline-offset-4; } + + /* ── empty-header ─────────────────────────────────────────── */ + :where([data-slot="empty-header"]) { @apply flex max-w-sm flex-col items-center gap-2 text-center; } + + /* ── empty-media ─────────────────────────────────────────── */ + :where([data-slot="empty-media"]) { @apply flex shrink-0 items-center justify-center mb-2 [&_svg]:pointer-events-none [&_svg]:shrink-0; } + :where([data-slot="empty-media"]):where(:not([data-variant])) { @apply bg-transparent; } + :where([data-slot="empty-media"]):where([data-variant="default"]) { @apply bg-transparent; } + :where([data-slot="empty-media"]):where([data-variant="icon"]) { @apply bg-muted text-foreground flex size-10 shrink-0 items-center justify-center rounded-lg [&_svg:not([class*='size-'])]:size-6; } + + /* ── empty-title ─────────────────────────────────────────── */ + :where([data-slot="empty-title"]) { @apply text-lg font-medium tracking-tight; } + + /* ── field ─────────────────────────────────────────── */ + :where([data-slot="field"]) { @apply flex w-full gap-3 data-[invalid=true]:text-destructive; } + + /* ── field-content ─────────────────────────────────────────── */ + :where([data-slot="field-content"]) { @apply flex flex-1 flex-col gap-1.5; } + + /* ── field-description ─────────────────────────────────────────── */ + :where([data-slot="field-description"]) { @apply text-muted-foreground text-sm font-normal group-has-[[data-orientation=horizontal]]/field:text-balance; } + + /* ── field-error ─────────────────────────────────────────── */ + :where([data-slot="field-error"]) { @apply text-destructive text-sm font-normal; } + + /* ── field-group ─────────────────────────────────────────── */ + :where([data-slot="field-group"]) { @apply @container/field-group flex w-full flex-col gap-7 data-[slot=checkbox-group]:gap-3 [&>[data-slot=field-group]]:gap-4; } + + /* ── field-label ─────────────────────────────────────────── */ + :where([data-slot="field-label"]) { @apply flex w-fit gap-2 group-data-[disabled=true]/field:opacity-50 flex w-fit items-center gap-2 text-sm font-medium group-data-[disabled=true]/field:opacity-50; } + + /* ── field-legend ─────────────────────────────────────────── */ + :where([data-slot="field-legend"]) { @apply mb-3 font-medium; } + + /* ── field-separator ─────────────────────────────────────────── */ + :where([data-slot="field-separator"]) { @apply relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2; } + + /* ── field-separator-content ─────────────────────────────────────────── */ + :where([data-slot="field-separator-content"]) { @apply bg-background text-muted-foreground relative mx-auto block w-fit px-2; } + + /* ── field-set ─────────────────────────────────────────── */ + :where([data-slot="field-set"]) { @apply flex flex-col gap-6; } + + /* ── footer ─────────────────────────────────────────── */ + :where([data-slot="footer"]) { @apply border-t border-border bg-background font-sans; } + :where([data-slot="footer"]):where(:not([data-variant])) { @apply py-8; } + :where([data-slot="footer"]):where([data-variant="minimal"]) { @apply py-8; } + :where([data-slot="footer"]):where([data-variant="full"]) { @apply py-12; } + + /* ── form-description ─────────────────────────────────────────── */ + :where([data-slot="form-description"]) { @apply text-muted-foreground text-sm; } + + /* ── form-item ─────────────────────────────────────────── */ + :where([data-slot="form-item"]) { @apply grid gap-2; } + + /* ── form-label ─────────────────────────────────────────── */ + :where([data-slot="form-label"]) { @apply data-[error=true]:text-destructive; } + + /* ── form-message ─────────────────────────────────────────── */ + :where([data-slot="form-message"]) { @apply text-destructive text-sm; } + + /* ── hero ─────────────────────────────────────────── */ + :where([data-slot="hero"]) { @apply py-24 px-6; } + :where([data-slot="hero"]):where(:not([data-variant])) { @apply text-center; } + :where([data-slot="hero"]):where([data-variant="centered"]) { @apply text-center; } + :where([data-slot="hero"]):where([data-variant="left-aligned"]) { @apply text-left; } + :where([data-slot="hero"]):where([data-variant="split"]) { @apply text-left; } + :where([data-slot="hero"]):where(:not([data-background])) { @apply bg-hero-bg; } + :where([data-slot="hero"]):where([data-background="default"]) { @apply bg-hero-bg; } + :where([data-slot="hero"]):where([data-background="muted"]) { @apply bg-muted; } + :where([data-slot="hero"]):where([data-background="accent"]) { @apply bg-primary/5; } + :where([data-slot="hero"]):where([data-background="dark"]) { @apply bg-foreground text-background; } + + /* ── hover-card-content ─────────────────────────────────────────── */ + :where([data-slot="hover-card-content"]) { @apply bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-64 origin-(--radix-hover-card-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden; } + + /* ── input ─────────────────────────────────────────── */ + :where([data-slot="input"]) { @apply file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm; } + + /* ── input-group ─────────────────────────────────────────── */ + :where([data-slot="input-group"]) { @apply border-input dark:bg-input/30 relative flex w-full items-center rounded-md border shadow-xs transition-[color,box-shadow] outline-none; } + + /* ── input-group-addon ─────────────────────────────────────────── */ + :where([data-slot="input-group-addon"]) { @apply text-muted-foreground flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium select-none [&>svg:not([class*='size-'])]:size-4 [&>kbd]:rounded-[calc(var(--radius)-5px)] group-data-[disabled=true]/input-group:opacity-50; } + :where([data-slot="input-group-addon"]):where(:not([data-align])) { @apply order-first pl-3 has-[>button]:ml-[-0.45rem] has-[>kbd]:ml-[-0.35rem]; } + :where([data-slot="input-group-addon"]):where([data-align="inline-start"]) { @apply order-first pl-3 has-[>button]:ml-[-0.45rem] has-[>kbd]:ml-[-0.35rem]; } + :where([data-slot="input-group-addon"]):where([data-align="inline-end"]) { @apply order-last pr-3 has-[>button]:mr-[-0.4rem] has-[>kbd]:mr-[-0.35rem]; } + :where([data-slot="input-group-addon"]):where([data-align="block-start"]) { @apply order-first w-full justify-start px-3 pt-3 [.border-b]:pb-3 group-has-[>input]/input-group:pt-2.5; } + :where([data-slot="input-group-addon"]):where([data-align="block-end"]) { @apply order-last w-full justify-start px-3 pb-3 [.border-t]:pt-3 group-has-[>input]/input-group:pb-2.5; } + + /* ── input-group-button ─────────────────────────────────────────── */ + :where([data-slot="input-group-button"]) { @apply text-sm shadow-none flex gap-2 items-center; } + :where([data-slot="input-group-button"]):where(:not([data-size])) { @apply h-6 gap-1 px-2 rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-3.5 has-[>svg]:px-2; } + :where([data-slot="input-group-button"]):where([data-size="xs"]) { @apply h-6 gap-1 px-2 rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-3.5 has-[>svg]:px-2; } + :where([data-slot="input-group-button"]):where([data-size="sm"]) { @apply h-8 px-2.5 gap-1.5 rounded-md has-[>svg]:px-2.5; } + :where([data-slot="input-group-button"]):where([data-size="icon-xs"]) { @apply size-6 rounded-[calc(var(--radius)-5px)] p-0 has-[>svg]:p-0; } + :where([data-slot="input-group-button"]):where([data-size="icon-sm"]) { @apply size-8 p-0 has-[>svg]:p-0; } + + /* ── input-group-control ─────────────────────────────────────────── */ + :where([data-slot="input-group-control"]) { @apply flex-1 rounded-none border-0 bg-transparent shadow-none focus-visible:ring-0 dark:bg-transparent flex-1 resize-none rounded-none border-0 bg-transparent py-3 shadow-none focus-visible:ring-0 dark:bg-transparent; } + + /* ── input-otp ─────────────────────────────────────────── */ + :where([data-slot="input-otp"]) { @apply disabled:cursor-not-allowed; } + + /* ── input-otp-group ─────────────────────────────────────────── */ + :where([data-slot="input-otp-group"]) { @apply flex items-center; } + + /* ── input-otp-slot ─────────────────────────────────────────── */ + :where([data-slot="input-otp-slot"]) { @apply data-[active=true]:border-ring data-[active=true]:ring-ring/50 data-[active=true]:aria-invalid:ring-destructive/20 dark:data-[active=true]:aria-invalid:ring-destructive/40 aria-invalid:border-destructive data-[active=true]:aria-invalid:border-destructive dark:bg-input/30 border-input relative flex h-9 w-9 items-center justify-center border-y border-r text-sm shadow-xs transition-all outline-none first:rounded-l-md first:border-l last:rounded-r-md data-[active=true]:z-10 data-[active=true]:ring-[3px]; } + + /* ── item ─────────────────────────────────────────── */ + :where([data-slot="item"]) { @apply flex items-center border border-transparent text-sm rounded-md transition-colors [a&]:hover:bg-accent/50 [a&]:transition-colors duration-100 flex-wrap outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]; } + :where([data-slot="item"]):where(:not([data-variant])) { @apply bg-transparent; } + :where([data-slot="item"]):where([data-variant="default"]) { @apply bg-transparent; } + :where([data-slot="item"]):where([data-variant="outline"]) { @apply border-border; } + :where([data-slot="item"]):where([data-variant="muted"]) { @apply bg-muted/50; } + :where([data-slot="item"]):where(:not([data-size])) { @apply p-4 gap-4; } + :where([data-slot="item"]):where([data-size="default"]) { @apply p-4 gap-4; } + :where([data-slot="item"]):where([data-size="sm"]) { @apply py-3 px-4 gap-2.5; } + + /* ── item-actions ─────────────────────────────────────────── */ + :where([data-slot="item-actions"]) { @apply flex items-center gap-2; } + + /* ── item-content ─────────────────────────────────────────── */ + :where([data-slot="item-content"]) { @apply flex flex-1 flex-col gap-1 [&+[data-slot=item-content]]:flex-none; } + + /* ── item-description ─────────────────────────────────────────── */ + :where([data-slot="item-description"]) { @apply text-muted-foreground line-clamp-2 text-sm font-normal text-balance; } + + /* ── item-footer ─────────────────────────────────────────── */ + :where([data-slot="item-footer"]) { @apply flex basis-full items-center justify-between gap-2; } + + /* ── item-group ─────────────────────────────────────────── */ + :where([data-slot="item-group"]) { @apply flex flex-col; } + + /* ── item-header ─────────────────────────────────────────── */ + :where([data-slot="item-header"]) { @apply flex basis-full items-center justify-between gap-2; } + + /* ── item-media ─────────────────────────────────────────── */ + :where([data-slot="item-media"]) { @apply flex shrink-0 items-center justify-center gap-2 group-has-[[data-slot=item-description]]/item:self-start [&_svg]:pointer-events-none group-has-[[data-slot=item-description]]/item:translate-y-0.5; } + :where([data-slot="item-media"]):where(:not([data-variant])) { @apply bg-transparent; } + :where([data-slot="item-media"]):where([data-variant="default"]) { @apply bg-transparent; } + :where([data-slot="item-media"]):where([data-variant="icon"]) { @apply size-8 border rounded-sm bg-muted [&_svg:not([class*='size-'])]:size-4; } + :where([data-slot="item-media"]):where([data-variant="image"]) { @apply size-10 rounded-sm overflow-hidden [&_img]:size-full [&_img]:object-cover; } + + /* ── item-separator ─────────────────────────────────────────── */ + :where([data-slot="item-separator"]) { @apply my-0; } + + /* ── item-title ─────────────────────────────────────────── */ + :where([data-slot="item-title"]) { @apply flex w-fit items-center gap-2 text-sm font-medium; } + + /* ── kbd ─────────────────────────────────────────── */ + :where([data-slot="kbd"]) { @apply bg-muted w-fit text-muted-foreground pointer-events-none inline-flex h-5 min-w-5 items-center justify-center gap-1 rounded-sm px-1 font-sans text-xs font-medium select-none; } + + /* ── kbd-group ─────────────────────────────────────────── */ + :where([data-slot="kbd-group"]) { @apply inline-flex items-center gap-1; } + + /* ── label ─────────────────────────────────────────── */ + :where([data-slot="label"]) { @apply flex items-center gap-2 text-sm font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50; } + + /* ── logo ─────────────────────────────────────────── */ + :where([data-slot="logo"]) { @apply inline-block; } + :where([data-slot="logo"]):where([data-size="sm"]) { @apply h-6 w-auto; } + :where([data-slot="logo"]):where(:not([data-size])) { @apply h-8 w-auto; } + :where([data-slot="logo"]):where([data-size="md"]) { @apply h-8 w-auto; } + :where([data-slot="logo"]):where([data-size="lg"]) { @apply h-10 w-auto; } + :where([data-slot="logo"]):where([data-size="xl"]) { @apply h-14 w-auto; } + + /* ── menubar ─────────────────────────────────────────── */ + :where([data-slot="menubar"]) { @apply bg-background flex h-9 items-center gap-1 rounded-md border p-1 shadow-xs; } + + /* ── menubar-checkbox-item ─────────────────────────────────────────── */ + :where([data-slot="menubar-checkbox-item"]) { @apply focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4; } + + /* ── menubar-content ─────────────────────────────────────────── */ + :where([data-slot="menubar-content"]) { @apply bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[12rem] origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-md; } + + /* ── menubar-item ─────────────────────────────────────────── */ + :where([data-slot="menubar-item"]) { @apply focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4; } + + /* ── menubar-label ─────────────────────────────────────────── */ + :where([data-slot="menubar-label"]) { @apply px-2 py-1.5 text-sm font-medium data-[inset]:pl-8; } + + /* ── menubar-radio-item ─────────────────────────────────────────── */ + :where([data-slot="menubar-radio-item"]) { @apply focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4; } + + /* ── menubar-separator ─────────────────────────────────────────── */ + :where([data-slot="menubar-separator"]) { @apply bg-border -mx-1 my-1 h-px; } + + /* ── menubar-shortcut ─────────────────────────────────────────── */ + :where([data-slot="menubar-shortcut"]) { @apply text-muted-foreground ml-auto text-xs tracking-widest; } + + /* ── menubar-sub-content ─────────────────────────────────────────── */ + :where([data-slot="menubar-sub-content"]) { @apply bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg; } + + /* ── menubar-sub-trigger ─────────────────────────────────────────── */ + :where([data-slot="menubar-sub-trigger"]) { @apply focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-none select-none data-[inset]:pl-8; } + + /* ── menubar-trigger ─────────────────────────────────────────── */ + :where([data-slot="menubar-trigger"]) { @apply focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex items-center rounded-sm px-2 py-1 text-sm font-medium outline-hidden select-none; } + + /* ── navbar ─────────────────────────────────────────── */ + :where([data-slot="navbar"]) { @apply fixed top-0 left-0 right-0 z-50 h-[65px] font-sans; } + :where([data-slot="navbar"]):where(:not([data-variant])) { @apply bg-card dark:bg-background border-b border-border; } + :where([data-slot="navbar"]):where([data-variant="solid"]) { @apply bg-card dark:bg-background border-b border-border; } + :where([data-slot="navbar"]):where([data-variant="transparent"]) { @apply bg-transparent; } + :where([data-slot="navbar"]):where([data-variant="minimal"]) { @apply bg-card/80 dark:bg-background/80 backdrop-blur-sm border-b border-border/50; } + + /* ── navbar-actions ─────────────────────────────────────────── */ + :where([data-slot="navbar-actions"]) { @apply hidden md:flex items-center gap-2; } + + /* ── navbar-link ─────────────────────────────────────────── */ + :where([data-slot="navbar-link"]) { @apply px-3 py-2 text-foreground transition-opacity hover:opacity-70; } + + /* ── navbar-logo ─────────────────────────────────────────── */ + :where([data-slot="navbar-logo"]) { @apply shrink-0; } + + /* ── navbar-mobile ─────────────────────────────────────────── */ + :where([data-slot="navbar-mobile"]) { @apply md:hidden border-b border-border bg-card dark:bg-background; } + + /* ── navbar-nav ─────────────────────────────────────────── */ + :where([data-slot="navbar-nav"]) { @apply hidden md:flex items-center gap-1 text-sm font-semibold; } + + /* ── navigation-menu ─────────────────────────────────────────── */ + :where([data-slot="navigation-menu"]) { @apply relative flex max-w-max flex-1 items-center justify-center; } + + /* ── navigation-menu-content ─────────────────────────────────────────── */ + :where([data-slot="navigation-menu-content"]) { @apply data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 top-0 left-0 w-full p-2 pr-2.5 md:absolute md:w-auto; } + + /* ── navigation-menu-indicator ─────────────────────────────────────────── */ + :where([data-slot="navigation-menu-indicator"]) { @apply data-[state=visible]:animate-in data-[state=hidden]:animate-out data-[state=hidden]:fade-out data-[state=visible]:fade-in top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden; } + + /* ── navigation-menu-item ─────────────────────────────────────────── */ + :where([data-slot="navigation-menu-item"]) { @apply relative; } + + /* ── navigation-menu-link ─────────────────────────────────────────── */ + :where([data-slot="navigation-menu-link"]) { @apply data-[active=true]:focus:bg-accent data-[active=true]:hover:bg-accent data-[active=true]:bg-accent/50 data-[active=true]:text-accent-foreground hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus-visible:ring-ring/50 [&_svg:not([class*='text-'])]:text-muted-foreground flex flex-col gap-1 rounded-sm p-2 text-sm transition-all outline-none focus-visible:ring-[3px] focus-visible:outline-1 [&_svg:not([class*='size-'])]:size-4; } + + /* ── navigation-menu-list ─────────────────────────────────────────── */ + :where([data-slot="navigation-menu-list"]) { @apply flex flex-1 list-none items-center justify-center gap-1; } + + /* ── navigation-menu-trigger ─────────────────────────────────────────── */ + + /* ── navigation-menu-viewport ─────────────────────────────────────────── */ + :where([data-slot="navigation-menu-viewport"]) { @apply bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90 relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full overflow-hidden rounded-md border shadow md:w-[var(--radix-navigation-menu-viewport-width)]; } + + /* ── page-layout ─────────────────────────────────────────── */ + :where([data-slot="page-layout"]) { @apply min-h-screen flex flex-col bg-background text-foreground; } + + /* ── page-layout-main ─────────────────────────────────────────── */ + :where([data-slot="page-layout-main"]) { @apply flex-1 min-w-0; } + + /* ── page-layout-sidebar ─────────────────────────────────────────── */ + :where([data-slot="page-layout-sidebar"]) { @apply hidden lg:block w-64 border-r border-border bg-background flex-shrink-0; } + + /* ── pagination ─────────────────────────────────────────── */ + :where([data-slot="pagination"]) { @apply mx-auto flex w-full justify-center; } + + /* ── pagination-content ─────────────────────────────────────────── */ + :where([data-slot="pagination-content"]) { @apply flex flex-row items-center gap-1; } + + /* ── pagination-ellipsis ─────────────────────────────────────────── */ + :where([data-slot="pagination-ellipsis"]) { @apply flex size-9 items-center justify-center; } + + /* ── popover-content ─────────────────────────────────────────── */ + :where([data-slot="popover-content"]) { @apply bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden; } + + /* ── progress ─────────────────────────────────────────── */ + :where([data-slot="progress"]) { @apply bg-primary/20 relative h-2 w-full overflow-hidden rounded-full; } + + /* ── progress-indicator ─────────────────────────────────────────── */ + :where([data-slot="progress-indicator"]) { @apply bg-primary h-full w-full flex-1 transition-all; } + + /* ── radio-group ─────────────────────────────────────────── */ + :where([data-slot="radio-group"]) { @apply grid gap-3; } + + /* ── radio-group-indicator ─────────────────────────────────────────── */ + :where([data-slot="radio-group-indicator"]) { @apply relative flex items-center justify-center; } + + /* ── radio-group-item ─────────────────────────────────────────── */ + :where([data-slot="radio-group-item"]) { @apply border-input text-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 aspect-square size-4 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50; } + + /* ── resizable-handle ─────────────────────────────────────────── */ + :where([data-slot="resizable-handle"]) { @apply bg-border focus-visible:ring-ring relative flex w-px items-center justify-center after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:ring-1 focus-visible:ring-offset-1 focus-visible:outline-hidden data-[panel-group-direction=vertical]:h-px data-[panel-group-direction=vertical]:w-full data-[panel-group-direction=vertical]:after:left-0 data-[panel-group-direction=vertical]:after:h-1 data-[panel-group-direction=vertical]:after:w-full data-[panel-group-direction=vertical]:after:translate-x-0 data-[panel-group-direction=vertical]:after:-translate-y-1/2 [&[data-panel-group-direction=vertical]>div]:rotate-90; } + + /* ── resizable-panel-group ─────────────────────────────────────────── */ + :where([data-slot="resizable-panel-group"]) { @apply flex h-full w-full data-[panel-group-direction=vertical]:flex-col; } + + /* ── scroll-area ─────────────────────────────────────────── */ + :where([data-slot="scroll-area"]) { @apply relative; } + + /* ── scroll-area-scrollbar ─────────────────────────────────────────── */ + :where([data-slot="scroll-area-scrollbar"]) { @apply flex touch-none p-px transition-colors select-none; } + + /* ── scroll-area-thumb ─────────────────────────────────────────── */ + :where([data-slot="scroll-area-thumb"]) { @apply bg-border relative flex-1 rounded-full; } + + /* ── scroll-area-viewport ─────────────────────────────────────────── */ + :where([data-slot="scroll-area-viewport"]) { @apply focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1; } + + /* ── section ─────────────────────────────────────────── */ + :where([data-slot="section"]) { @apply py-10; } + :where([data-slot="section"]):where([data-variant="highlighted"]) { @apply bg-card my-8; } + :where([data-slot="section"]):where([data-variant="accent"]) { @apply bg-primary/5 my-8; } + :where([data-slot="section"]):where([data-width="narrow"]) { @apply max-w-3xl mx-auto; } + :where([data-slot="section"]):where(:not([data-width])) { @apply max-w-5xl mx-auto; } + :where([data-slot="section"]):where([data-width="default"]) { @apply max-w-5xl mx-auto; } + :where([data-slot="section"]):where([data-width="wide"]) { @apply max-w-7xl mx-auto; } + :where([data-slot="section"]):where([data-width="full"]) { @apply w-full; } + + /* ── select-content ─────────────────────────────────────────── */ + :where([data-slot="select-content"]) { @apply bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md; } + + /* ── select-item ─────────────────────────────────────────── */ + :where([data-slot="select-item"]) { @apply focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2; } + + /* ── select-label ─────────────────────────────────────────── */ + :where([data-slot="select-label"]) { @apply text-muted-foreground px-2 py-1.5 text-xs; } + + /* ── select-scroll-down-button ─────────────────────────────────────────── */ + :where([data-slot="select-scroll-down-button"]) { @apply flex cursor-default items-center justify-center py-1; } + + /* ── select-scroll-up-button ─────────────────────────────────────────── */ + :where([data-slot="select-scroll-up-button"]) { @apply flex cursor-default items-center justify-center py-1; } + + /* ── select-separator ─────────────────────────────────────────── */ + :where([data-slot="select-separator"]) { @apply bg-border pointer-events-none -mx-1 my-1 h-px; } + + /* ── select-trigger ─────────────────────────────────────────── */ + :where([data-slot="select-trigger"]) { @apply border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4; } + + /* ── separator ─────────────────────────────────────────── */ + :where([data-slot="separator"]) { @apply bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px; } + + /* ── sheet-content ─────────────────────────────────────────── */ + :where([data-slot="sheet-content"]) { @apply bg-background data-[state=open]:animate-in data-[state=closed]:animate-out fixed z-50 flex flex-col gap-4 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500; } + + /* ── sheet-description ─────────────────────────────────────────── */ + :where([data-slot="sheet-description"]) { @apply text-muted-foreground text-sm; } + + /* ── sheet-footer ─────────────────────────────────────────── */ + :where([data-slot="sheet-footer"]) { @apply mt-auto flex flex-col gap-2 p-4; } + + /* ── sheet-header ─────────────────────────────────────────── */ + :where([data-slot="sheet-header"]) { @apply flex flex-col gap-1.5 p-4; } + + /* ── sheet-overlay ─────────────────────────────────────────── */ + :where([data-slot="sheet-overlay"]) { @apply data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50; } + + /* ── sheet-title ─────────────────────────────────────────── */ + :where([data-slot="sheet-title"]) { @apply text-foreground font-semibold; } + + /* ── sidebar ─────────────────────────────────────────── */ + :where([data-slot="sidebar"]) { @apply bg-sidebar text-sidebar-foreground flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground w-(--sidebar-width) p-0 [&>button]:hidden text-sidebar-foreground hidden md:block; } + + /* ── sidebar-container ─────────────────────────────────────────── */ + :where([data-slot="sidebar-container"]) { @apply fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex; } + + /* ── sidebar-content ─────────────────────────────────────────── */ + :where([data-slot="sidebar-content"]) { @apply flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden; } + + /* ── sidebar-footer ─────────────────────────────────────────── */ + :where([data-slot="sidebar-footer"]) { @apply flex flex-col gap-2 p-2; } + + /* ── sidebar-gap ─────────────────────────────────────────── */ + :where([data-slot="sidebar-gap"]) { @apply relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear; } + + /* ── sidebar-group ─────────────────────────────────────────── */ + :where([data-slot="sidebar-group"]) { @apply relative flex w-full min-w-0 flex-col p-2; } + + /* ── sidebar-group-action ─────────────────────────────────────────── */ + :where([data-slot="sidebar-group-action"]) { @apply text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0; } + + /* ── sidebar-group-content ─────────────────────────────────────────── */ + :where([data-slot="sidebar-group-content"]) { @apply w-full text-sm; } + + /* ── sidebar-group-label ─────────────────────────────────────────── */ + :where([data-slot="sidebar-group-label"]) { @apply text-sidebar-foreground/70 ring-sidebar-ring flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium outline-hidden transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0; } + + /* ── sidebar-header ─────────────────────────────────────────── */ + :where([data-slot="sidebar-header"]) { @apply flex flex-col gap-2 p-2; } + + /* ── sidebar-inner ─────────────────────────────────────────── */ + :where([data-slot="sidebar-inner"]) { @apply bg-sidebar group-data-[variant=floating]:border-sidebar-border flex h-full w-full flex-col group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:shadow-sm; } + + /* ── sidebar-input ─────────────────────────────────────────── */ + :where([data-slot="sidebar-input"]) { @apply bg-background h-8 w-full shadow-none; } + + /* ── sidebar-inset ─────────────────────────────────────────── */ + :where([data-slot="sidebar-inset"]) { @apply bg-background relative flex w-full flex-1 flex-col; } + + /* ── sidebar-menu ─────────────────────────────────────────── */ + :where([data-slot="sidebar-menu"]) { @apply flex w-full min-w-0 flex-col gap-1; } + + /* ── sidebar-menu-action ─────────────────────────────────────────── */ + :where([data-slot="sidebar-menu-action"]) { @apply text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground peer-hover/menu-button:text-sidebar-accent-foreground absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0; } + + /* ── sidebar-menu-badge ─────────────────────────────────────────── */ + :where([data-slot="sidebar-menu-badge"]) { @apply text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums select-none; } + + /* ── sidebar-menu-button ─────────────────────────────────────────── */ + :where([data-slot="sidebar-menu-button"]) { @apply flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-hidden ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-data-[sidebar=menu-action]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0; } + :where([data-slot="sidebar-menu-button"]):where(:not([data-variant])) { @apply hover:bg-sidebar-accent hover:text-sidebar-accent-foreground; } + :where([data-slot="sidebar-menu-button"]):where([data-variant="default"]) { @apply hover:bg-sidebar-accent hover:text-sidebar-accent-foreground; } + :where([data-slot="sidebar-menu-button"]):where([data-variant="outline"]) { @apply bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]; } + :where([data-slot="sidebar-menu-button"]):where(:not([data-size])) { @apply h-8 text-sm; } + :where([data-slot="sidebar-menu-button"]):where([data-size="default"]) { @apply h-8 text-sm; } + :where([data-slot="sidebar-menu-button"]):where([data-size="sm"]) { @apply h-7 text-xs; } + :where([data-slot="sidebar-menu-button"]):where([data-size="lg"]) { @apply h-12 text-sm group-data-[collapsible=icon]:p-0!; } + + /* ── sidebar-menu-item ─────────────────────────────────────────── */ + :where([data-slot="sidebar-menu-item"]) { @apply relative; } + + /* ── sidebar-menu-skeleton ─────────────────────────────────────────── */ + :where([data-slot="sidebar-menu-skeleton"]) { @apply flex h-8 items-center gap-2 rounded-md px-2; } + + /* ── sidebar-menu-sub ─────────────────────────────────────────── */ + :where([data-slot="sidebar-menu-sub"]) { @apply border-sidebar-border mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l px-2.5 py-0.5; } + + /* ── sidebar-menu-sub-button ─────────────────────────────────────────── */ + :where([data-slot="sidebar-menu-sub-button"]) { @apply text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground [&>svg]:text-sidebar-accent-foreground flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 outline-hidden focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0; } + + /* ── sidebar-menu-sub-item ─────────────────────────────────────────── */ + :where([data-slot="sidebar-menu-sub-item"]) { @apply relative; } + + /* ── sidebar-rail ─────────────────────────────────────────── */ + :where([data-slot="sidebar-rail"]) { @apply hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] sm:flex; } + + /* ── sidebar-separator ─────────────────────────────────────────── */ + :where([data-slot="sidebar-separator"]) { @apply bg-sidebar-border mx-2 w-auto; } + + /* ── sidebar-trigger ─────────────────────────────────────────── */ + :where([data-slot="sidebar-trigger"]) { @apply size-7; } + + /* ── sidebar-wrapper ─────────────────────────────────────────── */ + :where([data-slot="sidebar-wrapper"]) { @apply has-data-[variant=inset]:bg-sidebar flex min-h-svh w-full; } + + /* ── skeleton ─────────────────────────────────────────── */ + :where([data-slot="skeleton"]) { @apply bg-accent animate-pulse rounded-md; } + + /* ── slider ─────────────────────────────────────────── */ + :where([data-slot="slider"]) { @apply relative flex w-full touch-none items-center select-none data-[disabled]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col; } + + /* ── slider-range ─────────────────────────────────────────── */ + :where([data-slot="slider-range"]) { @apply bg-primary absolute data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full; } + + /* ── slider-thumb ─────────────────────────────────────────── */ + :where([data-slot="slider-thumb"]) { @apply border-primary ring-ring/50 block size-4 shrink-0 rounded-full border bg-white shadow-sm transition-[color,box-shadow] hover:ring-4 focus-visible:ring-4 focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50; } + + /* ── slider-track ─────────────────────────────────────────── */ + :where([data-slot="slider-track"]) { @apply bg-muted relative grow overflow-hidden rounded-full data-[orientation=horizontal]:h-1.5 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5; } + + /* ── switch ─────────────────────────────────────────── */ + :where([data-slot="switch"]) { @apply data-[state=checked]:bg-primary data-[state=unchecked]:bg-[#7F7F79] focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50; } + + /* ── switch-thumb ─────────────────────────────────────────── */ + :where([data-slot="switch-thumb"]) { @apply bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0; } + + /* ── table ─────────────────────────────────────────── */ + :where([data-slot="table"]) { @apply w-full caption-bottom text-sm; } + + /* ── table-body ─────────────────────────────────────────── */ + :where([data-slot="table-body"]) { @apply [&_tr:last-child]:border-0; } + + /* ── table-caption ─────────────────────────────────────────── */ + :where([data-slot="table-caption"]) { @apply text-muted-foreground mt-4 text-sm; } + + /* ── table-cell ─────────────────────────────────────────── */ + :where([data-slot="table-cell"]) { @apply p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]; } + + /* ── table-container ─────────────────────────────────────────── */ + :where([data-slot="table-container"]) { @apply relative w-full overflow-x-auto; } + + /* ── table-footer ─────────────────────────────────────────── */ + :where([data-slot="table-footer"]) { @apply bg-muted/50 border-t font-medium [&>tr]:last:border-b-0; } + + /* ── table-head ─────────────────────────────────────────── */ + :where([data-slot="table-head"]) { @apply text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]; } + + /* ── table-header ─────────────────────────────────────────── */ + :where([data-slot="table-header"]) { @apply [&_tr]:border-b; } + + /* ── table-row ─────────────────────────────────────────── */ + :where([data-slot="table-row"]) { @apply hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors; } + + /* ── tabs ─────────────────────────────────────────── */ + :where([data-slot="tabs"]) { @apply flex flex-col gap-2; } + + /* ── tabs-content ─────────────────────────────────────────── */ + :where([data-slot="tabs-content"]) { @apply flex-1 outline-none; } + + /* ── tabs-list ─────────────────────────────────────────── */ + :where([data-slot="tabs-list"]) { @apply bg-[rgb(var(--border))] text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]; } + + /* ── tabs-trigger ─────────────────────────────────────────── */ + :where([data-slot="tabs-trigger"]) { @apply data-[state=active]:bg-card dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4; } + + /* ── textarea ─────────────────────────────────────────── */ + :where([data-slot="textarea"]) { @apply border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm; } + + /* ── toast ─────────────────────────────────────────── */ + :where([data-slot="toast"]) { @apply pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full; } + :where([data-slot="toast"]):where(:not([data-variant])) { @apply border bg-background text-foreground; } + :where([data-slot="toast"]):where([data-variant="default"]) { @apply border bg-background text-foreground; } + :where([data-slot="toast"]):where([data-variant="destructive"]) { @apply border-destructive bg-destructive text-destructive-foreground; } + + /* ── toggle ─────────────────────────────────────────── */ + :where([data-slot="toggle"]) { @apply inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap; } + :where([data-slot="toggle"]):where(:not([data-variant])) { @apply bg-transparent; } + :where([data-slot="toggle"]):where([data-variant="default"]) { @apply bg-transparent; } + :where([data-slot="toggle"]):where([data-variant="outline"]) { @apply border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground; } + :where([data-slot="toggle"]):where(:not([data-size])) { @apply h-9 px-2 min-w-9; } + :where([data-slot="toggle"]):where([data-size="default"]) { @apply h-9 px-2 min-w-9; } + :where([data-slot="toggle"]):where([data-size="sm"]) { @apply h-8 px-1.5 min-w-8; } + :where([data-slot="toggle"]):where([data-size="lg"]) { @apply h-10 px-2.5 min-w-10; } + + /* ── toggle-group ─────────────────────────────────────────── */ + :where([data-slot="toggle-group"]) { @apply flex w-fit items-center rounded-md data-[variant=outline]:shadow-xs; } + + /* ── toggle-group-item ─────────────────────────────────────────── */ + :where([data-slot="toggle-group-item"]) { @apply min-w-0 flex-1 shrink-0 rounded-none shadow-none first:rounded-l-md last:rounded-r-md focus:z-10 focus-visible:z-10 data-[variant=outline]:border-l-0 data-[variant=outline]:first:border-l; } + + /* ── tooltip-content ─────────────────────────────────────────── */ + :where([data-slot="tooltip-content"]) { @apply bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance; } + +} + +/* Extraction warnings: + * [components/ui/field.tsx] cva: fieldVariants.orientation.vertical: non-literal classes, skipping value + * [components/ui/field.tsx] cva: fieldVariants.orientation.horizontal: non-literal classes, skipping value + * [components/ui/field.tsx] cva: fieldVariants.orientation.responsive: non-literal classes, skipping value + * [components/ui/navigation-menu.tsx] cva: navigationMenuTriggerStyle: no config object, skipping + */ diff --git a/htmx-demo/README.md b/htmx-demo/README.md new file mode 100644 index 0000000..9681a94 --- /dev/null +++ b/htmx-demo/README.md @@ -0,0 +1,35 @@ +# HTMX Showcase — Validation Harness + +Parallel to `app/page.tsx` (the React showcase), `public/htmx.html` is a plain HTML page that exercises the generated `dist/greyhaven.htmx.css` across every static component. Load it while running `pnpm dev` at `/htmx.html`. + +## Purpose + +Validate that `greyhaven.htmx.css` produces visually-equivalent output to the React components. The HTMX page only uses: +- `data-slot` / `data-variant` / `data-size` attributes +- Standard HTML tags (` + + + + +
+ + +
+
+

Color Tokens

+

A restrained set of warm greys, off-black, and muted neutrals, with orange as the only accent.

+
+ +
+ +
+

+ Primary Scheme +

+
+
+
+ #F9F9F7 +
+
+

Off-white

+

--card

+
+
+
+
+ #161614 +
+
+

Off-black

+

--foreground

+
+
+
+
+ #D95E2A +
+
+

Orange

+

--primary

+
+
+
+
+ + +
+

+ Grey Scale +

+
+
+
+ #F0F0EC +
+

Grey 1 (5%)

+
+
+
+ #DDDDD7 +
+

Grey 2 (10%)

+
+
+
+ #C4C4BD +
+

Grey 3 (20%)

+
+
+
+ #A6A69F +
+

Grey 4 (50%)

+
+
+
+ #7F7F79 +
+

Grey 5 (60%)

+
+
+
+ #575753 +
+

Grey 7 (70%)

+
+
+
+ #2F2F2C +
+

Grey 8 (80%)

+
+
+
+ + +
+

+ Semantic Tokens +

+
+
+
+ Background +
+

bg-background

+
+
+
+ Foreground +
+

bg-foreground

+
+
+
+ Card +
+

bg-card

+
+
+
+ Muted +
+

bg-muted

+
+
+
+ Secondary +
+

bg-secondary

+
+
+
+ Primary +
+

bg-primary

+
+
+
+ Accent +
+

bg-accent

+
+
+
+ Border +
+

bg-border

+
+
+
+
+
+ + +
+
+

Typography

+

Source Serif Pro for explanation and human-readable detail. Aspekta (displayed as Inter) for structure, navigation, and UI.

+
+ +
+ +
+
+ + Primary + +

+ Source Serif Pro — Reading & Explanation +

+
+ +
+
+

Display / H1

+

+ Local-first AI systems shaped by real work +

+
+ +
+

Heading / H2

+

+ Built where work happens. Contained end to end. +

+
+ +
+

Heading / H3

+

+ Systems run inside the perimeter. Nothing leaks. +

+
+ +
+

Body

+

+ Real work is messy, distributed, and embedded in internal systems. Cloud AI often + cannot operate there. Useful AI runs inside the environment and supports human + decision-making — not abstract it away. We sit with the operators, map the steps, + and build a system that mirrors what actually happens. +

+
+ +
+

Small / Caption

+

+ Powered by Monadical's internal, open-source stack hardened over eight years. +

+
+
+
+ + +
+
+ + Secondary + +

+ Aspekta — UI, Navigation & Labels +

+
+ +
+
+

Navigation

+
+ Overview + Documentation + Support + Contact +
+
+ +
+

Button Text

+
+ Get Started + Learn More + View All +
+
+ +
+

Labels & Form Elements

+
+ Email Address + Optional + Required field +
+
+ +
+

Status & Metadata

+
+ Active + Pending + Last updated: 2 hours ago +
+
+
+
+ + +
+
+

Serif Stack

+

+ 'Source Serif Pro', 'Source Serif 4', Georgia, serif +

+
+
+

Sans Stack

+

+ 'Aspekta', ui-sans-serif, system-ui, sans-serif +

+
+
+
+
+ + +
+
+

Component Library

+

Interactive elements with consistent styling across all states: default, hover, active, disabled.

+
+ +
+ +
+

+ Buttons — Variants +

+
+
+
+

Primary

+ +
+
+

Secondary

+ +
+
+

Outline

+ +
+
+

Ghost

+ +
+
+

Link

+ +
+
+

Destructive

+ +
+
+
+
+ + +
+

+ Buttons — Sizes +

+
+
+
+

Small

+ +
+
+

Default

+ +
+
+

Large

+ +
+
+
+
+ + +
+

+ Buttons — States +

+
+
+
+

Primary

+
+ + + + + +
+
+
+

Outline

+
+ + + + +
+
+
+

Destructive

+
+ + + + +
+
+
+
+
+ + +
+

+ Icon Buttons +

+
+
+
+

Variants

+
+ + + + + +
+
+
+

Sizes

+
+ + + +
+
+
+

Disabled

+
+ + + +
+
+
+
+
+ + +
+

+ Buttons with Icons +

+
+
+
+

Leading Icon

+
+ + + + +
+
+
+

Trailing Icon

+
+ + + +
+
+
+

Sizes with Icons

+
+ + + +
+
+
+
+
+ + +
+

+ Badges — Core Variants +

+
+
+ Default + Secondary + Muted + Outline +
+
+
+ + +
+

+ Badges — Tag & Value +

+
+
+ Tag + Category + 42 + $1,234 + 100% +
+
+
+ + +
+

+ Badges — Semantic +

+
+
+ Success + Warning + Danger + Info +
+
+
+ + +
+

+ Badges — Channel Pills +

+
+
+ WhatsApp + Email + Telegram + Zulip + Platform +
+
+
+ + +
+

+ Badges — On Muted Surface +

+
+
+ Default + Secondary + Outline + Tag + Success + Info +
+
+
+ + +
+

+ Inputs +

+
+
+
+

Default

+ +
+
+

With Value

+ +
+
+

Disabled

+ +
+
+
+

Textarea

+
+ + +
+
+
+
+ + +
+

+ Select +

+
+
+
+

Default

+ +
+
+

With Value

+ +
+
+

Disabled

+ +
+
+
+
+ + +
+

+ Checkboxes & Switches +

+
+
+
+

Checkboxes

+
+
+ + +
+
+ + +
+
+ + +
+
+
+ +
+

Switches

+
+
+ + +
+
+ + +
+
+ + +
+
+
+
+
+
+ + +
+

+ Tabs +

+
+
+
+ + + + +
+
+

+ Overview content. This tab demonstrates the default active state. +

+
+ + +
+
+
+ + +
+

+ Tooltips +

+
+
+ + +
+
+
+
+
+ + +
+
+

Real-World Examples

+

Complete UI patterns demonstrating how components work together in production.

+
+ +
+ +
+

+ Consultation Request Form +

+ +
+
+
Request a Consultation
+
+ Tell us about your operational requirements. We'll assess whether a contained + AI system can help. +
+
+
+
+ +
+ + +
+ + +
+ + +

We'll use this to schedule a call.

+
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +

Be specific about constraints: data sensitivity, existing systems, compliance requirements.

+
+ + +
+ +
+ +
+
+ + +
+ + +
+
+
+
+
+ + +
+

+ System Settings +

+ +
+
+
System Configuration
+
+ Configure your contained AI deployment. All settings remain within your environment. +
+
+
+ +
+
+
+ +
+
+ +

Receive alerts for system events and anomalies

+
+
+ +
+ +
+ + +
+
+
+ +
+
+ +

Record all system actions for compliance

+
+
+ +
+ +
+ + +
+
+
+ +
+
+ +

Keep processed data beyond 30 days

+
+
+ +
+ +
+ + +
+
+
+ +
+
+ +

Isolation and access control level

+
+
+ +
+ +
+ + +
+ + +
+
+
+
+
+
+ +
+ + + + + + + + + diff --git a/scripts/generate-htmx-css.ts b/scripts/generate-htmx-css.ts new file mode 100644 index 0000000..2046ad2 --- /dev/null +++ b/scripts/generate-htmx-css.ts @@ -0,0 +1,424 @@ +#!/usr/bin/env npx tsx +/** + * Generates dist/greyhaven.htmx.css — a framework-agnostic CSS companion + * to the React component library. Exposes every component via `data-slot` + * (+ `data-variant` / `data-size`) attribute selectors so HTMX / server- + * rendered projects can use the design system without React. + * + * Input: + * components/ui/*.tsx + * + * Output: + * dist/greyhaven.htmx.css + * + * Extraction strategy: + * 1. AST-walk each .tsx file + * 2. For `const xVariants = cva("base", { variants, defaultVariants })`, + * capture base + variants + defaults. + * 3. For any JSX element with `data-slot="X"`, capture the static string + * in its `className` (direct string, or first arg of cn(...)). + * 4. Merge the two: a slot with both a cva binding and static cn classes + * (rare) gets both; otherwise one or the other. + * + * Limitations: + * - Dynamic / conditional classes are dropped (logged as warnings). + * - Components relying on runtime state (data-state, Radix Portals) emit + * only their static visual rules. Open/close / focus / positioning JS + * is the consumer's problem. + */ + +import * as ts from 'typescript' +import * as fs from 'fs' +import * as path from 'path' +import { fileURLToPath } from 'url' + +const __filename = fileURLToPath(import.meta.url) +const __dirname = path.dirname(__filename) +const ROOT = path.resolve(__dirname, '..') +const UI_DIR = path.join(ROOT, 'components/ui') +const OUT_FILE = path.join(ROOT, 'dist/greyhaven.htmx.css') + +type CvaExtract = { + sourceFile: string + variableName: string + base: string + variants: Record> + defaultVariants: Record +} + +type SlotExtract = { + sourceFile: string + slot: string + classes: string +} + +type Warning = { sourceFile: string; message: string } + +const cvaExtracts: CvaExtract[] = [] +const slotExtracts: SlotExtract[] = [] +const warnings: Warning[] = [] + +// ─── String extraction helpers ────────────────────────────────────────── + +function getStringLiteral(node: ts.Node): string | null { + if (ts.isStringLiteral(node)) return node.text + if (ts.isNoSubstitutionTemplateLiteral(node)) return node.text + // Template with only literal parts: `${''}foo${''}` — rare, skip + return null +} + +// Object-literal property shortcut: returns first ObjectLiteralExpression named `name`. +function getPropertyInitializer( + obj: ts.ObjectLiteralExpression, + name: string, +): ts.Expression | null { + for (const prop of obj.properties) { + if (ts.isPropertyAssignment(prop) && prop.name && ts.isIdentifier(prop.name) && prop.name.text === name) { + return prop.initializer + } + } + return null +} + +// ─── CVA extractor ────────────────────────────────────────────────────── + +function extractCva( + declList: ts.VariableDeclaration, + call: ts.CallExpression, + sourceFile: string, +): void { + if (!ts.isIdentifier(declList.name)) return + const variableName = declList.name.text + + const baseArg = call.arguments[0] + const configArg = call.arguments[1] + const base = baseArg ? (getStringLiteral(baseArg) ?? '') : '' + if (!base) { + warnings.push({ sourceFile, message: `cva: ${variableName}: non-literal base, skipping` }) + return + } + if (!configArg || !ts.isObjectLiteralExpression(configArg)) { + warnings.push({ sourceFile, message: `cva: ${variableName}: no config object, skipping` }) + return + } + + const variants: Record> = {} + const variantsNode = getPropertyInitializer(configArg, 'variants') + if (variantsNode && ts.isObjectLiteralExpression(variantsNode)) { + for (const prop of variantsNode.properties) { + if (!ts.isPropertyAssignment(prop)) continue + if (!prop.name || !ts.isIdentifier(prop.name)) continue + const axisName = prop.name.text + if (!ts.isObjectLiteralExpression(prop.initializer)) continue + const values: Record = {} + for (const subProp of prop.initializer.properties) { + if (!ts.isPropertyAssignment(subProp)) continue + let key: string | null = null + if (subProp.name) { + if (ts.isIdentifier(subProp.name)) key = subProp.name.text + else if (ts.isStringLiteral(subProp.name)) key = subProp.name.text + } + if (!key) continue + const classes = getStringLiteral(subProp.initializer) + if (classes === null) { + warnings.push({ + sourceFile, + message: `cva: ${variableName}.${axisName}.${key}: non-literal classes, skipping value`, + }) + continue + } + values[key] = classes + } + variants[axisName] = values + } + } + + const defaultVariants: Record = {} + const defaultsNode = getPropertyInitializer(configArg, 'defaultVariants') + if (defaultsNode && ts.isObjectLiteralExpression(defaultsNode)) { + for (const prop of defaultsNode.properties) { + if (!ts.isPropertyAssignment(prop)) continue + if (!prop.name || !ts.isIdentifier(prop.name)) continue + const axisName = prop.name.text + const value = getStringLiteral(prop.initializer) + if (value !== null) defaultVariants[axisName] = value + } + } + + cvaExtracts.push({ sourceFile, variableName, base, variants, defaultVariants }) +} + +// ─── Slot extractor ───────────────────────────────────────────────────── + +function extractSlot( + element: ts.JsxOpeningLikeElement, + sourceFile: string, +): void { + let slot: string | null = null + let classes: string | null = null + + const attrs = element.attributes.properties + for (const attr of attrs) { + if (!ts.isJsxAttribute(attr)) continue + const attrName = attr.name.getText() + if (attrName === 'data-slot') { + if (attr.initializer && ts.isStringLiteral(attr.initializer)) { + slot = attr.initializer.text + } + } else if (attrName === 'className' && attr.initializer) { + if (ts.isStringLiteral(attr.initializer)) { + classes = attr.initializer.text + } else if (ts.isJsxExpression(attr.initializer) && attr.initializer.expression) { + const expr = attr.initializer.expression + if (ts.isStringLiteral(expr) || ts.isNoSubstitutionTemplateLiteral(expr)) { + classes = (expr as ts.StringLiteral).text + } else if (ts.isCallExpression(expr)) { + // cn(...) or xVariants(...) — we extract the first string-literal arg + // Variant calls are already covered by CVA extraction; cn's first literal + // is the static baseline. + const callName = expr.expression.getText() + if (callName === 'cn' || callName.endsWith('Variants')) { + const first = expr.arguments.find((a) => getStringLiteral(a) !== null) + if (first) classes = getStringLiteral(first) + } + } + } + } + } + + if (slot) { + if (classes === null) { + // data-slot is present but no static class extractable (maybe dynamic). + // We still record the slot with empty classes so rule ordering is preserved. + slotExtracts.push({ sourceFile, slot, classes: '' }) + } else { + slotExtracts.push({ sourceFile, slot, classes }) + } + } +} + +// ─── AST walker ───────────────────────────────────────────────────────── + +function walkFile(filePath: string): void { + const relPath = path.relative(ROOT, filePath) + const source = fs.readFileSync(filePath, 'utf-8') + const sf = ts.createSourceFile(filePath, source, ts.ScriptTarget.Latest, true, ts.ScriptKind.TSX) + + function visit(node: ts.Node): void { + // CVA binding: `const xVariants = cva(...)` + if (ts.isVariableDeclaration(node) && node.initializer && ts.isCallExpression(node.initializer)) { + const callee = node.initializer.expression + if (ts.isIdentifier(callee) && callee.text === 'cva') { + extractCva(node, node.initializer, relPath) + } + } + // JSX element with data-slot + if (ts.isJsxOpeningElement(node) || ts.isJsxSelfClosingElement(node)) { + extractSlot(node, relPath) + } + ts.forEachChild(node, visit) + } + + visit(sf) +} + +// ─── CSS emitter ──────────────────────────────────────────────────────── + +// Classes that can't be used with @apply in Tailwind v4. +// peer / group — sibling/parent markers, pure class hooks with no CSS +// peer/ / group/ — named variants of the above +// contents — reserved Tailwind escape +// not-prose — ships with @tailwindcss/typography (optional plugin) +// Consumers who need these can add them directly on the HTML element. +const NON_APPLIABLE_EXACT = new Set([ + 'peer', // sibling marker + 'group', // parent marker + 'contents', // reserved + 'not-prose', // @tailwindcss/typography + 'origin-top-center', // not a stock Tailwind v4 utility (upstream bug) + 'destructive', // toast's own marker class (used with group-[.destructive]: selectors) +]) + +function isNonAppliable(cls: string): boolean { + if (NON_APPLIABLE_EXACT.has(cls)) return true + // Named peer/group markers: e.g., `group/drawer-content`, `peer/email` + if (/^(peer|group)\/[A-Za-z0-9_-]+$/.test(cls)) return true + return false +} + +function uniqueClasses(s: string): string { + // Collapse whitespace; preserve order and arbitrary variants. + // Strip non-appliable marker classes (peer/group); consumers add them directly + // on the HTML element when they need sibling/parent state styling. + let tokens = s + .replace(/\s+/g, ' ') + .trim() + .split(' ') + .filter((c) => !isNonAppliable(c)) + + // Always strip `leading-*` utilities from @apply. Tailwind v4's `text-*` + // size utilities use `--tw-leading` as an override mechanism, but once + // `leading-*` is applied via @apply it sets `--tw-leading` on the element, + // and subsequent user-passed `text-sm`/`text-xl` classes still resolve + // line-height through that inherited variable — defeating the override. + // React + tailwind-merge removes `leading-*` at className-merge time when + // a text-size utility is passed; replicate that behavior by stripping it + // unconditionally so user `class="text-xl"` overrides produce the same + // line-height React ends up with. + const LEADING = /^leading-/ + tokens = tokens.filter((t) => !LEADING.test(t)) + + return tokens.join(' ') +} + +function emitCss(): string { + const lines: string[] = [] + const header = `/*! Greyhaven Design System — HTMX / Framework-Agnostic CSS Layer + * Auto-generated from components/ui/*.tsx by scripts/generate-htmx-css.ts — DO NOT EDIT + * + * Usage: + * + * + * Requires: + * - Tokens: import tokens-light.css + tokens-dark.css before this file + * - Tailwind v4: this file uses @apply against Tailwind utility classes. + * It must be processed by Tailwind v4 (e.g., via \`tailwindcss -i input.css\`). + * Your consumer Tailwind input should \`@import "./greyhaven.htmx.css";\`. + * + * Consume via data-slot / data-variant / data-size attributes: + *
+ *
Hello
+ *
+ *
+ * + * Active + */ + +` + lines.push(header) + // Emit in @layer utilities so individual Tailwind utility classes on child + // elements (e.g. ) don't override our compound selectors + // by layer precedence alone. Within the same layer, specificity decides. + lines.push('@layer utilities {\n') + + // Index slot → classes (dedupe: multiple JSX elements may declare the same slot). + const slotMap = new Map>() + for (const s of slotExtracts) { + if (!s.classes) continue + if (!slotMap.has(s.slot)) slotMap.set(s.slot, new Set()) + slotMap.get(s.slot)!.add(uniqueClasses(s.classes)) + } + + // Index cva by slot-name heuristic: `xVariants` → component slot "x" when JSX + // in the same file uses `data-slot="x"`. If ambiguous, fall back to stripping + // "Variants" and kebab-casing. + const cvaBySlot = new Map() + for (const cva of cvaExtracts) { + const stripped = cva.variableName.replace(/Variants$/, '') + const slot = stripped + .replace(/([a-z])([A-Z])/g, '$1-$2') + .toLowerCase() + cvaBySlot.set(slot, cva) + } + + // Emit slots in sorted order for stable output. + const allSlots = Array.from( + new Set([...slotMap.keys(), ...cvaBySlot.keys()]), + ).sort() + + for (const slot of allSlots) { + const cva = cvaBySlot.get(slot) + const staticSets = slotMap.get(slot) + const staticClasses = staticSets ? Array.from(staticSets).join(' ') : '' + + lines.push(` /* ── ${slot} ─────────────────────────────────────────── */`) + + // Emit selectors wrapped in :where() so the attribute selectors contribute + // zero specificity. This matches how React + tailwind-merge behave: user + // overrides passed as `className` (e.g., `class="bg-primary/90"`) must + // win over the variant defaults. If we used bare [data-slot][data-variant] + // selectors, their specificity (0,2,0) would beat a plain utility class + // (0,1,0) and silently drop user overrides. + const SLOT = `:where([data-slot="${slot}"])` + + // Base rule: cva.base + any static classes found on the slot's JSX + const basePieces: string[] = [] + if (cva?.base) basePieces.push(cva.base) + if (staticClasses) basePieces.push(staticClasses) + const base = uniqueClasses(basePieces.join(' ')) + if (base) { + lines.push(` ${SLOT} { @apply ${base}; }`) + } + + // CVA variants + if (cva) { + for (const [axis, values] of Object.entries(cva.variants)) { + const defaultValue = cva.defaultVariants[axis] + const axisAttr = `data-${axis}` + for (const [key, classes] of Object.entries(values)) { + if (!classes.trim()) continue + if (key === defaultValue) { + // Default: apply when attr absent OR explicitly set to this key. + // Emit as TWO separate rules (no comma-joined selector list), because + // Tailwind v4 miscompiles arbitrary variants like `has-[>svg]:px-3` + // when @applied inside a rule with a comma-separated selector list + // (it emits a stray `)` and the resulting selector is invalid). + // Wrap :not() in :where() so it contributes zero specificity; + // otherwise plain utility classes like .bg-primary/90 would tie on + // specificity (both at 0,1,0) and lose by source order, breaking + // user className overrides. + lines.push( + ` ${SLOT}:where(:not([${axisAttr}])) { @apply ${uniqueClasses(classes)}; }`, + ) + lines.push( + ` ${SLOT}:where([${axisAttr}="${key}"]) { @apply ${uniqueClasses(classes)}; }`, + ) + } else { + lines.push( + ` ${SLOT}:where([${axisAttr}="${key}"]) { @apply ${uniqueClasses(classes)}; }`, + ) + } + } + } + } + + lines.push('') + } + + lines.push('}\n') + + if (warnings.length > 0) { + lines.push('/* Extraction warnings:') + for (const w of warnings) { + lines.push(` * [${w.sourceFile}] ${w.message}`) + } + lines.push(' */\n') + } + + return lines.join('\n') +} + +// ─── Entry ────────────────────────────────────────────────────────────── + +function main(): void { + const files = fs + .readdirSync(UI_DIR) + .filter((f) => f.endsWith('.tsx')) + .map((f) => path.join(UI_DIR, f)) + + for (const file of files) { + walkFile(file) + } + + const css = emitCss() + fs.mkdirSync(path.dirname(OUT_FILE), { recursive: true }) + fs.writeFileSync(OUT_FILE, css, 'utf-8') + + console.log(`Parsed ${files.length} component files`) + console.log(` ${cvaExtracts.length} cva bindings`) + console.log(` ${slotExtracts.length} data-slot occurrences`) + console.log(` ${warnings.length} warnings`) + console.log(`Wrote ${path.relative(ROOT, OUT_FILE)} (${(fs.statSync(OUT_FILE).size / 1024).toFixed(1)} KB)`) +} + +main() diff --git a/scripts/generate-skill.ts b/scripts/generate-skill.ts index 56e4cf9..9056c01 100644 --- a/scripts/generate-skill.ts +++ b/scripts/generate-skill.ts @@ -182,6 +182,50 @@ function buildCompositionRules(): string { ` } +function buildHtmxLayer(): string { + return `## HTMX / Server-Rendered Usage + +For projects that cannot use React (HTMX, Django templates, Rails ERB, Go \`html/template\`, Astro SSR, etc.), the design system ships a framework-agnostic CSS layer: \`dist/greyhaven.htmx.css\`. + +### What it is + +An auto-generated stylesheet derived from \`components/ui/*.tsx\`. Every \`data-slot\` attribute gets a \`@layer components\` rule. \`cva\` variants become attribute selectors (\`[data-variant=...]\`, \`[data-size=...]\`). Default variants apply via \`:not([data-variant])\` so consumers can omit the attribute. + +### Usage + +1. Install: \`./skill/install.sh /path/to/project --htmx-css\` +2. Import in your Tailwind v4 input CSS: \`@import "./greyhaven.htmx.css";\` +3. Emit HTML with \`data-slot\` / \`data-variant\` / \`data-size\` attributes: + +\`\`\`html +
+
+
Title
+
Description
+
+
Body
+
+ + + + +Active +\`\`\` + +### Scope + +- **Fully static** (pure CSS, no JS): Card, Button, Badge, Input, Label, Textarea, Table, Separator, Code, Kbd, Progress, Avatar, Skeleton, Alert, Pagination, Breadcrumb, Navbar (solid variant), Spinner, AspectRatio, Empty, Hero, Section, Footer, CtaSection, ButtonGroup, InputGroup, Toast. +- **Visual-only** (CSS is correct but needs your own state JS): Dialog, Dropdown, Popover, Select, Combobox, Accordion, Tabs, Tooltip, Drawer, Sheet, Sidebar, Collapsible, NavigationMenu, Menubar, ContextMenu, HoverCard, Command, AlertDialog, InputOtp, Carousel. Pair with Alpine.js (\`x-data\`, \`x-show\`, \`@click\`) or native HTML primitives (\`\`, \`
\`). + +### Regenerate + +\`\`\`bash +pnpm htmx-css:build +\`\`\` + +` +} + function buildExtensionProtocol(): string { return `## Extension Protocol @@ -258,6 +302,8 @@ This skill gives you full context to generate pixel-perfect, on-brand UI using t '---\n', buildCompositionRules(), '---\n', + buildHtmxLayer(), + '---\n', buildExtensionProtocol(), ].join('\n') } diff --git a/skill/SKILL.md b/skill/SKILL.md index f647c7d..8deb22d 100644 --- a/skill/SKILL.md +++ b/skill/SKILL.md @@ -659,6 +659,49 @@ pnpm dev`} - **Slot naming**: All components use `data-slot="component-name"` - **Icon sizing**: `[&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0` +--- + +## HTMX / Server-Rendered Usage + +For projects that cannot use React (HTMX, Django templates, Rails ERB, Go `html/template`, Astro SSR, etc.), the design system ships a framework-agnostic CSS layer: `dist/greyhaven.htmx.css`. + +### What it is + +An auto-generated stylesheet derived from `components/ui/*.tsx`. Every `data-slot` attribute gets a `@layer components` rule. `cva` variants become attribute selectors (`[data-variant=...]`, `[data-size=...]`). Default variants apply via `:not([data-variant])` so consumers can omit the attribute. + +### Usage + +1. Install: `./skill/install.sh /path/to/project --htmx-css` +2. Import in your Tailwind v4 input CSS: `@import "./greyhaven.htmx.css";` +3. Emit HTML with `data-slot` / `data-variant` / `data-size` attributes: + +```html +
+
+
Title
+
Description
+
+
Body
+
+ + + + +Active +``` + +### Scope + +- **Fully static** (pure CSS, no JS): Card, Button, Badge, Input, Label, Textarea, Table, Separator, Code, Kbd, Progress, Avatar, Skeleton, Alert, Pagination, Breadcrumb, Navbar (solid variant), Spinner, AspectRatio, Empty, Hero, Section, Footer, CtaSection, ButtonGroup, InputGroup, Toast. +- **Visual-only** (CSS is correct but needs your own state JS): Dialog, Dropdown, Popover, Select, Combobox, Accordion, Tabs, Tooltip, Drawer, Sheet, Sidebar, Collapsible, NavigationMenu, Menubar, ContextMenu, HoverCard, Command, AlertDialog, InputOtp, Carousel. Pair with Alpine.js (`x-data`, `x-show`, `@click`) or native HTML primitives (``, `
`). + +### Regenerate + +```bash +pnpm htmx-css:build +``` + + --- ## Extension Protocol diff --git a/skill/install.sh b/skill/install.sh index 5fa5b55..ec28118 100755 --- a/skill/install.sh +++ b/skill/install.sh @@ -28,10 +28,12 @@ AGENTS_BRAND_FILE="${SCRIPT_DIR}/AGENTS.brand.md" BRAND_FILE="${SCRIPT_DIR}/BRAND.md" FONTS_DIR="${REPO_ROOT}/public/fonts" PUBLIC_DIR="${REPO_ROOT}/public" +HTMX_CSS_FILE="${REPO_ROOT}/dist/greyhaven.htmx.css" # Parse arguments TARGET_PROJECT="" INSTALL_BRAND=false +INSTALL_HTMX_CSS=false while [ $# -gt 0 ]; do case "$1" in @@ -39,16 +41,23 @@ while [ $# -gt 0 ]; do INSTALL_BRAND=true shift ;; + --htmx-css) + INSTALL_HTMX_CSS=true + shift + ;; -h|--help) - echo "Usage: $0 [--brand-skill]" + echo "Usage: $0 [--brand-skill] [--htmx-css]" echo "" echo "Options:" echo " --brand-skill Also install BRAND.md (voice/tone/messaging) and logo SVGs" + echo " --htmx-css Also install greyhaven.htmx.css (framework-agnostic CSS layer" + echo " for HTMX / server-rendered projects that can't use React)" echo "" echo "Examples:" echo " $0 /path/to/my-app" echo " $0 /path/to/my-app --brand-skill" - echo " $0 . --brand-skill" + echo " $0 /path/to/my-app --htmx-css" + echo " $0 . --brand-skill --htmx-css" exit 0 ;; *) @@ -65,7 +74,7 @@ while [ $# -gt 0 ]; do done if [ -z "$TARGET_PROJECT" ]; then - echo "Usage: $0 [--brand-skill]" + echo "Usage: $0 [--brand-skill] [--htmx-css]" echo "Run '$0 --help' for details." exit 1 fi @@ -190,6 +199,20 @@ if [ "$INSTALL_BRAND" = true ]; then echo "[ok] Logos: ${copied} SVGs copied to ${TARGET_LOGOS}/ (renamed: spaces → dashes)" fi +# ── 5. HTMX CSS (opt-in via --htmx-css) ──────────────────────────────────── +if [ "$INSTALL_HTMX_CSS" = true ]; then + if [ -f "$HTMX_CSS_FILE" ]; then + TARGET_CSS_DIR="${TARGET_PROJECT}/public/css" + mkdir -p "$TARGET_CSS_DIR" + DST="${TARGET_CSS_DIR}/greyhaven.htmx.css" + copy_with_backup "$HTMX_CSS_FILE" "$DST" + echo "[ok] HTMX CSS: ${DST}" + else + echo "[skip] greyhaven.htmx.css not found at ${HTMX_CSS_FILE}" + echo " Run 'pnpm htmx-css:build' in the design system repo first." + fi +fi + # ── Next steps ───────────────────────────────────────────────────────────── cat <<'EOF' @@ -209,7 +232,27 @@ Done! And set the font stack: --font-sans: 'Aspekta', ui-sans-serif, system-ui, sans-serif; -2. (Optional) Register the Greyhaven MCP server. Create .mcp.json in your +2. If you installed --htmx-css, import it from your Tailwind v4 input CSS: + + @import "tailwindcss"; + @import "./tokens-light.css"; + @import "./tokens-dark.css"; + @import "./greyhaven.htmx.css"; /* ← component @layer rules */ + + Then consume via data-slot attributes in your HTML / Go templates / Jinja: + +
+
Hello
+
Body
+
+ + Active + + Interactive components (dialog, dropdown, popover, etc.) emit their static + visual CSS only — supply your own open/close JS (Alpine.js pairs well + with HTMX). + +3. (Optional) Register the Greyhaven MCP server. Create .mcp.json in your project root: { @@ -221,6 +264,6 @@ Done! } } -3. Re-run this script after design system updates to refresh your copies. +4. Re-run this script after design system updates to refresh your copies. EOF -- 2.49.1 From 90930d8f78c0500cebd86b2df74b843b9ccbb7de Mon Sep 17 00:00:00 2001 From: Mathieu Virbel Date: Fri, 24 Apr 2026 14:43:55 -0600 Subject: [PATCH 2/2] feat(htmx-css): ToggleGroup support + padding/primary parity MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Generator (scripts/generate-htmx-css.ts): track `viaVariants` per slot so slots that compose another component's variant system (e.g. ToggleGroupItem via toggleVariants) inherit the referenced CVA's base + variant rules under their own selector. Previously toggle-group-item's CSS contained only its override classes, shipping with no padding/height/hover/active state. Toggle (components/ui/toggle.tsx): - data-[state=on] now uses bg-primary (orange) instead of bg-accent (grey), matching every other "commit" affordance in the palette. - Horizontal padding aligned with Button: px-4/px-3/px-6 per size, plus has-[>svg]:px-* for icon-only toggles. ToggleGroup (components/ui/toggle-group.tsx): drop min-w-0 flex-1 shrink-0 from the item override. Items now size to content instead of being clamped into equal narrow columns where longer labels overflowed the bg box. Showcase: add ToggleGroup section to the React page (component-matrix.tsx) and 1:1 HTMX mirror (public/htmx.html) with a new JS bridge branch for single/multi-select. compare-all.sh extended with the new section; 22/22 pass at ≥99.97%. Docs: GAPS.md captures the generator gap, overflow root cause, color rationale, and padding parity with before/after numbers. --- GAPS.md | 179 ++++++++++++++++++ components/design-system/component-matrix.tsx | 64 +++++++ components/ui/toggle-group.tsx | 2 +- components/ui/toggle.tsx | 8 +- dist/greyhaven.htmx.css | 19 +- htmx-demo/compare-all.sh | 1 + public/htmx.css | 2 +- public/htmx.html | 76 ++++++++ scripts/generate-htmx-css.ts | 69 +++++-- 9 files changed, 391 insertions(+), 29 deletions(-) create mode 100644 GAPS.md diff --git a/GAPS.md b/GAPS.md new file mode 100644 index 0000000..9ac3ffd --- /dev/null +++ b/GAPS.md @@ -0,0 +1,179 @@ +# HTMX CSS Generator — Known Gaps & Fixes + +Running log of edge cases discovered while consuming `dist/greyhaven.htmx.css` +in framework-agnostic (HTMX / Go `html/template` / etc.) projects. Each entry +captures: the bug, its root cause, and the fix. Keep this file updated when +new gaps surface so consumers have a single place to check. + +--- + +## Fixed + +### 2026-04-24 — `toggle-group-item` missing Toggle base styles + +**Symptom (consumer-side):** `data-slot="toggle-group-item"` renders as +unstyled inline text — no padding, no height, no border, and `data-state="on"` +produces no visual change. + +**Root cause:** In React, `ToggleGroupItem` composes `toggleVariants()` with a +small set of segmented-group overrides: + +```tsx +className={cn( + toggleVariants({ variant, size }), // base + variant + size classes + 'min-w-0 flex-1 shrink-0 rounded-none ...' +)} +``` + +The generator's `extractSlot` only captured the first *string-literal* arg of +`cn(...)` — the segmented overrides — and never followed the +`toggleVariants(...)` call to pull in Toggle's base, variant, and size rules. +As a result, the emitted `[data-slot="toggle-group-item"]` had no padding, +hover, `disabled`, or — critically — the `data-[state=on]:bg-accent +data-[state=on]:text-accent-foreground` rule that drives the pressed state. + +**Fix (`scripts/generate-htmx-css.ts`):** `SlotExtract` now carries a +`viaVariants: string[]` field. When processing `className={cn(xVariants(...), +'literal')}`, the extractor records every `*Variants` call it sees. The +emitter then merges each referenced CVA's base + variant rules under the +slot's own selector, so a slot that *composes* another component's variant +system inherits its full rule set. + +**Generated output before:** +```css +[data-slot="toggle-group-item"] { /* only overrides */ + min-w-0 flex-1 ... rounded-none first:rounded-l-md ... +} +``` + +**Generated output after:** +```css +[data-slot="toggle-group-item"] { /* full Toggle base + item overrides */ + inline-flex items-center ... data-[state=on]:bg-accent ... + min-w-0 flex-1 ... rounded-none first:rounded-l-md ... +} +[data-slot="toggle-group-item"][data-variant="outline"] { /* inherited variant */ } +[data-slot="toggle-group-item"][data-size="sm"] { /* inherited size */ } +``` + +**Consumer impact:** existing HTMX demos do not use `toggle-group-item`, so no +screenshot-diff regression risk. Consumers previously working around this by +using `data-slot="toggle"` on each item (with manual rounded-none / border +overrides) can switch to the clean `toggle-group-item` form. + +--- + +### 2026-04-24 — Toggle active state uses `primary` (orange), not `accent` (grey) + +**Symptom:** Design review flagged the active-state grey (`bg-accent`) as too +muted — users expected the brand orange for selected items in a segmented +control, matching every other "selected" affordance in the system (primary +button, active nav link, focus ring). + +**Fix:** `components/ui/toggle.tsx` — `toggleVariants` base class swapped from +`data-[state=on]:bg-accent data-[state=on]:text-accent-foreground` to +`data-[state=on]:bg-primary data-[state=on]:text-primary-foreground`. This +propagates to `ToggleGroupItem` automatically (composes `toggleVariants`) and +to the generated `[data-slot="toggle"]` and `[data-slot="toggle-group-item"]` +rules after `pnpm htmx-css:build && pnpm htmx-demo:build`. + +**Rationale:** Greyhaven's palette reserves `accent` for hover hints and +subtle surface shifts; `primary` is the single brand-accent color, used +wherever a choice is committed. Selected-state for Toggle/ToggleGroup now +matches that convention. + +### 2026-04-24 — `ToggleGroupItem` overflow: text escapes the bg box + +**Symptom:** With segmented labels of uneven length ("System" / "Light" / +"Dark"), the longer label's text rendered outside its button's background +rectangle. Selected-state highlight appeared narrower than the text it was +supposed to cover, and hover state was clipped for longer labels. + +**Root cause:** `ToggleGroupItem` layered `'min-w-0 flex-1 shrink-0'` on top +of `toggleVariants`' size-based `min-w-*`. Because tailwind-merge keeps the +later `min-w-0`, each item was allowed to shrink below its content. Combined +with `flex: 1 1 0%` and `w-fit` on the group, items ended up forced to equal +narrow columns sized to `container_width / N` — which for the "System" case +was ~37px, well below the text's ~45px intrinsic width. `whitespace-nowrap` +then let the text bleed out of the button's layout box. + +**Fix:** `components/ui/toggle-group.tsx` — dropped `min-w-0 flex-1 shrink-0` +from `ToggleGroupItem`'s override string. Items now size to their content +(respecting the `min-w-*` floor from `toggleVariants`), the group's `w-fit` +sums them up, and padding is symmetric. Unequal-width items are the +intentional result (a segmented "System/Light/Dark" now shows "System" wider +than "Light"/"Dark"); if a consumer specifically wants equal-width columns, +they can re-apply `flex-1 basis-0` on each item via `className`. + +**Consumer impact:** no regressions in the existing 21 sections; the new +`toggle-group` section passes at 99.98%. + +### 2026-04-24 — Toggle horizontal padding aligned with Button + +**Symptom:** Side-by-side, a `Toggle` (or `ToggleGroupItem`) looked cramped +compared to a regular `Button` of the same size — the active-state orange +bg sat tight against the label, while Button had comfortable breathing room +on both sides. Perceived as a visual-rhythm bug across any UI that mixed the +two in the same view. + +**Root cause:** `Toggle`'s cva had roughly half the horizontal padding of +`Button` per size: + +| size | Button | Toggle (old) | +|---------|---------------|---------------| +| default | `px-4` (16px) | `px-2` (8px) | +| sm | `px-3` (12px) | `px-1.5` (6px)| +| lg | `px-6` (24px) | `px-2.5` (10px)| + +**Fix:** `components/ui/toggle.tsx` — `toggleVariants.size.*` horizontal +padding now matches Button exactly. Also added `has-[>svg]:px-*` for +icon-only toggles, mirroring Button's affordance. `min-w-*` kept as a floor +so very short labels (`A`, `B`) still render as balanced pills. + +```ts +size: { + default: 'h-9 px-4 min-w-9 has-[>svg]:px-3', + sm: 'h-8 px-3 min-w-8 has-[>svg]:px-2.5', + lg: 'h-10 px-6 min-w-10 has-[>svg]:px-4', +}, +``` + +## Known (not yet fixed) + +*(Add entries here as they are discovered. Template:* + +``` +### YYYY-MM-DD — +**Symptom:** ... +**Root cause:** ... +**Workaround:** ... +**Proposed fix:** ... +``` +*)* + +### Radix primitive-only components (AlertDialogAction, AlertDialogCancel) + +**Symptom:** These components have no static `data-slot` in their JSX — they +wrap `` which sets `data-slot` at runtime. The +AST extractor never sees them, so no CSS is emitted. + +**Workaround:** Consumers should add `data-slot="button"` on the +corresponding HTML element. The visual contract matches Button exactly +(`cn(buttonVariants(), className)` in React). + +**Proposed fix:** none yet — requires either parsing the Radix primitive +source, or adding explicit `data-slot` attributes upstream. + +### Interactive components without a built-in JS bridge + +**Symptom:** `data-slot="select-trigger"`, `data-slot="tooltip-content"`, +`data-slot="dialog-content"`, `data-slot="popover-content"` emit the CSS for +their open/closed states, but nothing drives them. + +**Workaround:** Consumers must implement open/close + positioning themselves +(Alpine.js, plain JS, HTMX swap). `public/htmx.html` ships a ~60-line vanilla +bridge for checkbox / switch / tabs; select / tooltip / dialog remain +consumer concerns. + +**Proposed fix:** ship an opt-in `greyhaven.htmx.js` companion with pointer +positioning (e.g. via Floating UI) and focus management. diff --git a/components/design-system/component-matrix.tsx b/components/design-system/component-matrix.tsx index 622b500..792970e 100644 --- a/components/design-system/component-matrix.tsx +++ b/components/design-system/component-matrix.tsx @@ -7,6 +7,7 @@ import { Checkbox } from "@/components/ui/checkbox" import { Switch } from "@/components/ui/switch" import { Badge } from "@/components/ui/badge" import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs" +import { ToggleGroup, ToggleGroupItem } from "@/components/ui/toggle-group" import { Select, SelectContent, @@ -455,6 +456,69 @@ export function ComponentMatrix() { + {/* Toggle Group */} +
+

+ Toggle Group +

+
+
+
+
+

Single, outline

+ + System + Light + Dark + +
+
+

Single, default

+ + List + Grid + Board + +
+
+

Multiple

+ + Bold + Italic + Underline + +
+
+
+
+

Small

+ + System + Light + Dark + +
+
+

Default

+ + System + Light + Dark + +
+
+

Large

+ + System + Light + Dark + +
+
+
+
+
+ {/* Tooltips */}

diff --git a/components/ui/toggle-group.tsx b/components/ui/toggle-group.tsx index 0ab9971..b75a6e0 100644 --- a/components/ui/toggle-group.tsx +++ b/components/ui/toggle-group.tsx @@ -60,7 +60,7 @@ function ToggleGroupItem({ variant: context.variant || variant, size: context.size || size, }), - 'min-w-0 flex-1 shrink-0 rounded-none shadow-none first:rounded-l-md last:rounded-r-md focus:z-10 focus-visible:z-10 data-[variant=outline]:border-l-0 data-[variant=outline]:first:border-l', + 'rounded-none shadow-none first:rounded-l-md last:rounded-r-md focus:z-10 focus-visible:z-10 data-[variant=outline]:border-l-0 data-[variant=outline]:first:border-l', className, )} {...props} diff --git a/components/ui/toggle.tsx b/components/ui/toggle.tsx index ad6b286..e3ccccf 100644 --- a/components/ui/toggle.tsx +++ b/components/ui/toggle.tsx @@ -7,7 +7,7 @@ import { cva, type VariantProps } from 'class-variance-authority' import { cn } from '@/lib/utils' const toggleVariants = cva( - "inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap", + "inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-primary data-[state=on]:text-primary-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap", { variants: { variant: { @@ -16,9 +16,9 @@ const toggleVariants = cva( 'border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground', }, size: { - default: 'h-9 px-2 min-w-9', - sm: 'h-8 px-1.5 min-w-8', - lg: 'h-10 px-2.5 min-w-10', + default: 'h-9 px-4 min-w-9 has-[>svg]:px-3', + sm: 'h-8 px-3 min-w-8 has-[>svg]:px-2.5', + lg: 'h-10 px-6 min-w-10 has-[>svg]:px-4', }, }, defaultVariants: { diff --git a/dist/greyhaven.htmx.css b/dist/greyhaven.htmx.css index 5072d29..fff9e9a 100644 --- a/dist/greyhaven.htmx.css +++ b/dist/greyhaven.htmx.css @@ -836,20 +836,27 @@ :where([data-slot="toast"]):where([data-variant="destructive"]) { @apply border-destructive bg-destructive text-destructive-foreground; } /* ── toggle ─────────────────────────────────────────── */ - :where([data-slot="toggle"]) { @apply inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap; } + :where([data-slot="toggle"]) { @apply inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-primary data-[state=on]:text-primary-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap; } :where([data-slot="toggle"]):where(:not([data-variant])) { @apply bg-transparent; } :where([data-slot="toggle"]):where([data-variant="default"]) { @apply bg-transparent; } :where([data-slot="toggle"]):where([data-variant="outline"]) { @apply border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground; } - :where([data-slot="toggle"]):where(:not([data-size])) { @apply h-9 px-2 min-w-9; } - :where([data-slot="toggle"]):where([data-size="default"]) { @apply h-9 px-2 min-w-9; } - :where([data-slot="toggle"]):where([data-size="sm"]) { @apply h-8 px-1.5 min-w-8; } - :where([data-slot="toggle"]):where([data-size="lg"]) { @apply h-10 px-2.5 min-w-10; } + :where([data-slot="toggle"]):where(:not([data-size])) { @apply h-9 px-4 min-w-9 has-[>svg]:px-3; } + :where([data-slot="toggle"]):where([data-size="default"]) { @apply h-9 px-4 min-w-9 has-[>svg]:px-3; } + :where([data-slot="toggle"]):where([data-size="sm"]) { @apply h-8 px-3 min-w-8 has-[>svg]:px-2.5; } + :where([data-slot="toggle"]):where([data-size="lg"]) { @apply h-10 px-6 min-w-10 has-[>svg]:px-4; } /* ── toggle-group ─────────────────────────────────────────── */ :where([data-slot="toggle-group"]) { @apply flex w-fit items-center rounded-md data-[variant=outline]:shadow-xs; } /* ── toggle-group-item ─────────────────────────────────────────── */ - :where([data-slot="toggle-group-item"]) { @apply min-w-0 flex-1 shrink-0 rounded-none shadow-none first:rounded-l-md last:rounded-r-md focus:z-10 focus-visible:z-10 data-[variant=outline]:border-l-0 data-[variant=outline]:first:border-l; } + :where([data-slot="toggle-group-item"]) { @apply inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-primary data-[state=on]:text-primary-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap rounded-none shadow-none first:rounded-l-md last:rounded-r-md focus:z-10 focus-visible:z-10 data-[variant=outline]:border-l-0 data-[variant=outline]:first:border-l; } + :where([data-slot="toggle-group-item"]):where(:not([data-variant])) { @apply bg-transparent; } + :where([data-slot="toggle-group-item"]):where([data-variant="default"]) { @apply bg-transparent; } + :where([data-slot="toggle-group-item"]):where([data-variant="outline"]) { @apply border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground; } + :where([data-slot="toggle-group-item"]):where(:not([data-size])) { @apply h-9 px-4 min-w-9 has-[>svg]:px-3; } + :where([data-slot="toggle-group-item"]):where([data-size="default"]) { @apply h-9 px-4 min-w-9 has-[>svg]:px-3; } + :where([data-slot="toggle-group-item"]):where([data-size="sm"]) { @apply h-8 px-3 min-w-8 has-[>svg]:px-2.5; } + :where([data-slot="toggle-group-item"]):where([data-size="lg"]) { @apply h-10 px-6 min-w-10 has-[>svg]:px-4; } /* ── tooltip-content ─────────────────────────────────────────── */ :where([data-slot="tooltip-content"]) { @apply bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance; } diff --git a/htmx-demo/compare-all.sh b/htmx-demo/compare-all.sh index fad0a4f..0f9a746 100755 --- a/htmx-demo/compare-all.sh +++ b/htmx-demo/compare-all.sh @@ -28,6 +28,7 @@ SECTIONS=( "select" "checkboxes-switches" "tabs" + "toggle-group" "tooltips" "sample-form" "settings-card" diff --git a/public/htmx.css b/public/htmx.css index 28e3171..a81949c 100644 --- a/public/htmx.css +++ b/public/htmx.css @@ -1,2 +1,2 @@ /*! tailwindcss v4.2.4 | 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-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-space-x-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-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction: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-content:"";--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:forwards;--tw-animation-iteration-count:1;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:"Aspekta", ui-sans-serif, system-ui, sans-serif;--font-serif:"Source Serif 4", "Source Serif Pro", Georgia, serif;--color-red-50:oklch(97.1% .013 17.38);--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-600:oklch(57.7% .245 27.325);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-5xl:64rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .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;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-widest:.1em;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-xs:.125rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm:8px;--aspect-video:16 / 9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Aspekta", ui-sans-serif, system-ui, sans-serif;--default-mono-font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--color-border:rgb(var(--border))}}@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:-.25em}sup{top:-.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}*{border-color:rgb(var(--border))}body{background-color:rgb(var(--background));color:rgb(var(--foreground));font-family:var(--font-sans)}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.\@container\/field-group{container:field-group/inline-size}.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)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.-top-12{top:calc(var(--spacing) * -12)}.top-0{top:calc(var(--spacing) * 0)}.top-1\.5{top:calc(var(--spacing) * 1.5)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-3\.5{top:calc(var(--spacing) * 3.5)}.top-4{top:calc(var(--spacing) * 4)}.top-\[1px\]{top:1px}.top-\[50\%\]{top:50%}.top-\[60\%\]{top:60%}.top-full{top:100%}.-right-12{right:calc(var(--spacing) * -12)}.right-0{right:calc(var(--spacing) * 0)}.right-1{right:calc(var(--spacing) * 1)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.-bottom-12{bottom:calc(var(--spacing) * -12)}.bottom-0{bottom:calc(var(--spacing) * 0)}.-left-12{left:calc(var(--spacing) * -12)}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.left-\[50\%\]{left:50%}.isolate{isolation:isolate}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[1\]{z-index:1}.z-\[100\]{z-index:100}.order-first{order:-9999}.order-last{order:9999}.col-span-2{grid-column:span 2/span 2}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.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)!important}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-3\.5{margin-inline:calc(var(--spacing) * 3.5)}.mx-auto{margin-inline:auto}.-my-2{margin-block:calc(var(--spacing) * -2)}.my-0{margin-block:calc(var(--spacing) * 0)}.my-0\.5{margin-block:calc(var(--spacing) * .5)}.my-1{margin-block:calc(var(--spacing) * 1)}.my-8{margin-block:calc(var(--spacing) * 8)}.-mt-4{margin-top:calc(var(--spacing) * -4)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-auto{margin-top:auto}.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-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-16{margin-bottom:calc(var(--spacing) * 16)}.-ml-4{margin-left:calc(var(--spacing) * -4)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-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}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.field-sizing-content{field-sizing:content}.aspect-square{aspect-ratio:1}.aspect-video{aspect-ratio:var(--aspect-video)}.size-\(--cell-size\){width:var(--cell-size);height:var(--cell-size)}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.size-auto{width:auto;height:auto}.size-full{width:100%;height:100%}.h-\(--cell-size\){height:var(--cell-size)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 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-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.h-24{height:calc(var(--spacing) * 24)}.h-\[1\.15rem\]{height:1.15rem}.h-\[41px\]{height:41px}.h-\[65px\]{height:65px}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-\[var\(--radix-navigation-menu-viewport-height\)\]{height:var(--radix-navigation-menu-viewport-height)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\(--radix-context-menu-content-available-height\){max-height:var(--radix-context-menu-content-available-height)}.max-h-\(--radix-dropdown-menu-content-available-height\){max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.max-h-\[300px\]{max-height:300px}.max-h-screen{max-height:100vh}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-4{min-height:calc(var(--spacing) * 4)}.min-h-16{min-height:calc(var(--spacing) * 16)}.min-h-\[120px\]{min-height:120px}.min-h-\[200px\]{min-height:200px}.min-h-screen{min-height:100vh}.min-h-svh{min-height:100svh}.w-\(--cell-size\){width:var(--cell-size)}.w-\(--sidebar-width\){width:var(--sidebar-width)}.w-0{width:calc(var(--spacing) * 0)}.w-1{width:calc(var(--spacing) * 1)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-20{width:calc(var(--spacing) * 20)}.w-24{width:calc(var(--spacing) * 24)}.w-25{width:calc(var(--spacing) * 25)}.w-30{width:calc(var(--spacing) * 30)}.w-32{width:calc(var(--spacing) * 32)}.w-50{width:calc(var(--spacing) * 50)}.w-62\.5{width:calc(var(--spacing) * 62.5)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-75{width:calc(var(--spacing) * 75)}.w-87\.5{width:calc(var(--spacing) * 87.5)}.w-100{width:calc(var(--spacing) * 100)}.w-125{width:calc(var(--spacing) * 125)}.w-150{width:calc(var(--spacing) * 150)}.w-\[100px\]{width:100px}.w-\[250px\]{width:250px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-\(--skeleton-width\){max-width:var(--skeleton-width)}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-max{max-width:max-content}.max-w-prose{max-width:65ch}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.min-w-\(--cell-size\){min-width:var(--cell-size)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-5{min-width:calc(var(--spacing) * 5)}.min-w-8{min-width:calc(var(--spacing) * 8)}.min-w-9{min-width:calc(var(--spacing) * 9)}.min-w-10{min-width:calc(var(--spacing) * 10)}.min-w-\[8rem\]{min-width:8rem}.min-w-\[12rem\]{min-width:12rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-\(--radix-context-menu-content-transform-origin\){transform-origin:var(--radix-context-menu-content-transform-origin)}.origin-\(--radix-dropdown-menu-content-transform-origin\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\(--radix-hover-card-content-transform-origin\){transform-origin:var(--radix-hover-card-content-transform-origin)}.origin-\(--radix-menubar-content-transform-origin\){transform-origin:var(--radix-menubar-content-transform-origin)}.origin-\(--radix-popover-content-transform-origin\){transform-origin:var(--radix-popover-content-transform-origin)}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.origin-\(--radix-tooltip-content-transform-origin\){transform-origin:var(--radix-tooltip-content-transform-origin)}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-x-px{--tw-translate-x:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-\[-50\%\]{--tw-translate-x:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-px{--tw-translate-x:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-0\.5{--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[calc\(-50\%_-_2px\)\]{--tw-translate-y:calc(-50% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-caret-blink{animation:1.25s ease-out infinite caret-blink}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-text{cursor:text}.touch-none{touch-action:none}.resize-none{resize:none}.scroll-my-1{scroll-margin-block:calc(var(--spacing) * 1)}.scroll-py-1{scroll-padding-block:calc(var(--spacing) * 1)}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[0_1fr\]{grid-template-columns:0 1fr}.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.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-start{justify-content:flex-start}.justify-items-start{justify-items:start}.gap-0\.5{gap:calc(var(--spacing) * .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-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-7{gap:calc(var(--spacing) * 7)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-12{gap:calc(var(--spacing) * 12)}: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-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-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-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-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-0\.5{row-gap:calc(var(--spacing) * .5)}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\[2px\]{border-radius:2px}.rounded-\[4px\]{border-radius:4px}.rounded-\[calc\(var\(--radius\)-5px\)\]{border-radius:calc(var(--radius) - 5px)}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:calc(var(--radius) + 2px)}.rounded-md{border-radius:var(--radius)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 2px)}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.rounded-xs{border-radius:var(--radius-xs)}.rounded-l-md{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.rounded-tl-sm{border-top-left-radius:calc(var(--radius) - 2px)}.rounded-r-md{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.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-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}.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-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\(--color-border\){border-color:var(--color-border)}.border-background\/20{border-color:rgb(var(--background))}@supports (color:color-mix(in lab, red, red)){.border-background\/20{border-color:color-mix(in oklab, rgb(var(--background)) 20%, transparent)}}.border-border,.border-border\/50{border-color:rgb(var(--border))}@supports (color:color-mix(in lab, red, red)){.border-border\/50{border-color:color-mix(in oklab, rgb(var(--border)) 50%, transparent)}}.border-destructive{border-color:rgb(var(--destructive))}.border-input{border-color:rgb(var(--input))}.border-muted-foreground\/25{border-color:rgb(var(--muted-foreground))}@supports (color:color-mix(in lab, red, red)){.border-muted-foreground\/25{border-color:color-mix(in oklab, rgb(var(--muted-foreground)) 25%, transparent)}}.border-primary{border-color:rgb(var(--primary))}.border-primary-foreground\/20{border-color:rgb(var(--primary-foreground))}@supports (color:color-mix(in lab, red, red)){.border-primary-foreground\/20{border-color:color-mix(in oklab, rgb(var(--primary-foreground)) 20%, transparent)}}.border-sidebar-border{border-color:rgb(var(--sidebar-border))}.border-transparent{border-color:#0000}.border-t-transparent{border-top-color:#0000}.border-l-transparent{border-left-color:#0000}.bg-\(--color-bg\){background-color:var(--color-bg)}.bg-\[\#1a7f37\]{background-color:#1a7f37}.bg-\[\#3b82f6\]{background-color:#3b82f6}.bg-\[\#4b5563\]{background-color:#4b5563}.bg-\[\#9a6700\]{background-color:#9a6700}.bg-\[\#22c55e\]{background-color:#22c55e}.bg-\[\#0969da\]{background-color:#0969da}.bg-\[\#a855f7\]{background-color:#a855f7}.bg-\[\#f97316\]{background-color:#f97316}.bg-\[rgb\(var\(--border\)\)\]{background-color:rgb(var(--border))}.bg-accent,.bg-accent\/10{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){.bg-accent\/10{background-color:color-mix(in oklab, rgb(var(--accent)) 10%, transparent)}}.bg-background{background-color:rgb(var(--background))}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}.bg-border{background-color:rgb(var(--border))}.bg-card,.bg-card\/80{background-color:rgb(var(--card))}@supports (color:color-mix(in lab, red, red)){.bg-card\/80{background-color:color-mix(in oklab, rgb(var(--card)) 80%, transparent)}}.bg-destructive,.bg-destructive\/90{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/90{background-color:color-mix(in oklab, rgb(var(--destructive)) 90%, transparent)}}.bg-foreground{background-color:rgb(var(--foreground))}.bg-hero-bg{background-color:rgb(var(--hero-bg))}.bg-input{background-color:rgb(var(--input))}.bg-muted,.bg-muted\/50{background-color:rgb(var(--muted))}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, rgb(var(--muted)) 50%, transparent)}}.bg-popover{background-color:rgb(var(--popover))}.bg-primary,.bg-primary\/5{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/5{background-color:color-mix(in oklab, rgb(var(--primary)) 5%, transparent)}}.bg-primary\/10{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, rgb(var(--primary)) 10%, transparent)}}.bg-primary\/20{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/20{background-color:color-mix(in oklab, rgb(var(--primary)) 20%, transparent)}}.bg-primary\/80{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/80{background-color:color-mix(in oklab, rgb(var(--primary)) 80%, transparent)}}.bg-primary\/90{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/90{background-color:color-mix(in oklab, rgb(var(--primary)) 90%, transparent)}}.bg-secondary{background-color:rgb(var(--secondary))}.bg-sidebar{background-color:rgb(var(--sidebar))}.bg-sidebar-border{background-color:rgb(var(--sidebar-border))}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-primary\/20{--tw-gradient-from:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.from-primary\/20{--tw-gradient-from:color-mix(in oklab, rgb(var(--primary)) 20%, transparent)}}.from-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-primary\/5{--tw-gradient-to:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.to-primary\/5{--tw-gradient-to:color-mix(in oklab, rgb(var(--primary)) 5%, transparent)}}.to-primary\/5{--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))}.fill-current{fill:currentColor}.fill-foreground{fill:rgb(var(--foreground))}.fill-primary{fill:rgb(var(--primary))}.p-0{padding:calc(var(--spacing) * 0)}.p-1{padding:calc(var(--spacing) * 1)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-\[3px\]{padding:3px}.p-px{padding:1px}.px-\(--cell-size\){padding-inline:var(--cell-size)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.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-6{padding-inline:calc(var(--spacing) * 6)}.py-0{padding-block:calc(var(--spacing) * 0)}.py-0\.5{padding-block:calc(var(--spacing) * .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-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.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-16{padding-block:calc(var(--spacing) * 16)}.py-24{padding-block:calc(var(--spacing) * 24)}.pt-0{padding-top:calc(var(--spacing) * 0)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-16\.25{padding-top:calc(var(--spacing) * 16.25)}.pr-1{padding-right:calc(var(--spacing) * 1)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-2\.5{padding-right:calc(var(--spacing) * 2.5)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-8{padding-left:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.font-sans{font-family:Aspekta,ui-sans-serif,system-ui,sans-serif}.font-serif{font-family:"Source Serif 4",Source Serif Pro,Georgia,serif}.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-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-sm\/relaxed{font-size:var(--text-sm);line-height:var(--leading-relaxed)}.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-\[0\.8rem\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.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-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent-foreground{color:rgb(var(--accent-foreground))}.text-background{color:rgb(var(--background))}.text-card-foreground{color:rgb(var(--card-foreground))}.text-current{color:currentColor}.text-destructive{color:rgb(var(--destructive))}.text-destructive-foreground{color:rgb(var(--destructive-foreground))}.text-foreground,.text-foreground\/50{color:rgb(var(--foreground))}@supports (color:color-mix(in lab, red, red)){.text-foreground\/50{color:color-mix(in oklab, rgb(var(--foreground)) 50%, transparent)}}.text-muted-foreground{color:rgb(var(--muted-foreground))}.text-popover-foreground{color:rgb(var(--popover-foreground))}.text-primary{color:rgb(var(--primary))}.text-primary-foreground,.text-primary-foreground\/80{color:rgb(var(--primary-foreground))}@supports (color:color-mix(in lab, red, red)){.text-primary-foreground\/80{color:color-mix(in oklab, rgb(var(--primary-foreground)) 80%, transparent)}}.text-secondary-foreground{color:rgb(var(--secondary-foreground))}.text-sidebar-foreground,.text-sidebar-foreground\/70{color:rgb(var(--sidebar-foreground))}@supports (color:color-mix(in lab, red, red)){.text-sidebar-foreground\/70{color:color-mix(in oklab, rgb(var(--sidebar-foreground)) 70%, transparent)}}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-foreground{accent-color:rgb(var(--foreground))}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.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-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-border)));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-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)}.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)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--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-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + 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-2{--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)}.ring-destructive\/50{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.ring-destructive\/50{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 50%, transparent)}}.ring-ring,.ring-ring\/50{--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){.ring-ring\/50{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}.ring-sidebar-ring{--tw-ring-color:rgb(var(--sidebar-ring))}.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)}.ring-offset-background{--tw-ring-offset-color:rgb(var(--background))}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.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,)}.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-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,)}.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-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;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))}.transition-none{transition-property:none}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-1000{--tw-duration:1s;transition-duration:1s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.\[--cell-size\:--spacing\(8\)\]{--cell-size:calc(var(--spacing) * 8)}.fade-in{--tw-enter-opacity:0}.fade-out{--tw-exit-opacity:0}.running{animation-play-state:running}.slide-in-from-bottom{--tw-enter-translate-y:100%}.slide-in-from-top{--tw-enter-translate-y:-100%}.zoom-in{--tw-enter-scale:0}.zoom-out{--tw-exit-scale:0}.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *){opacity:1}@media (hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *),.group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *){opacity:1}}.group-has-data-\[sidebar\=menu-action\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-right:calc(var(--spacing) * 8)}.group-has-\[\[data-orientation\=horizontal\]\]\/field\:text-balance:is(:where(.group\/field):has([data-orientation=horizontal]) *){text-wrap:balance}.group-has-\[\[data-slot\=item-description\]\]\/item\:translate-y-0\.5:is(:where(.group\/item):has([data-slot=item-description]) *){--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-has-\[\[data-slot\=item-description\]\]\/item\:self-start:is(:where(.group\/item):has([data-slot=item-description]) *){align-self:flex-start}.group-has-\[\>input\]\/input-group\:pt-2\.5:is(:where(.group\/input-group):has(>input) *){padding-top:calc(var(--spacing) * 2.5)}.group-has-\[\>input\]\/input-group\:pb-2\.5:is(:where(.group\/input-group):has(>input) *){padding-bottom:calc(var(--spacing) * 2.5)}.group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *){margin-top:calc(var(--spacing) * -8)}.group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *){display:none}.group-data-\[collapsible\=icon\]\:size-8\!:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing) * 8)!important;height:calc(var(--spacing) * 8)!important}.group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible=icon] *){width:var(--sidebar-width-icon)}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)))}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\+2px\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)) + 2px)}.group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *){overflow:hidden}.group-data-\[collapsible\=icon\]\:p-0\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing) * 0)!important}.group-data-\[collapsible\=icon\]\:p-2\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing) * 2)!important}.group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *){opacity:0}.group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){right:calc(var(--sidebar-width) * -1)}.group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){left:calc(var(--sidebar-width) * -1)}.group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *){width:calc(var(--spacing) * 0)}.group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *){--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *),.group-data-\[disabled\=true\]\/field\:opacity-50:is(:where(.group\/field)[data-disabled=true] *),.group-data-\[disabled\=true\]\/input-group\:opacity-50:is(:where(.group\/input-group)[data-disabled=true] *){opacity:.5}.group-data-\[focused\=true\]\/day\:relative:is(:where(.group\/day)[data-focused=true] *){position:relative}.group-data-\[focused\=true\]\/day\:z-10:is(:where(.group\/day)[data-focused=true] *){z-index:10}.group-data-\[focused\=true\]\/day\:border-ring:is(:where(.group\/day)[data-focused=true] *){border-color:rgb(var(--ring))}.group-data-\[focused\=true\]\/day\:ring-\[3px\]:is(:where(.group\/day)[data-focused=true] *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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)}.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}.group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side=left] *){right:calc(var(--spacing) * -4)}.group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side=left] *){border-right-style:var(--tw-border-style);border-right-width:1px}.group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side=right] *){left:calc(var(--spacing) * 0)}.group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *){rotate:180deg}.group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side=right] *){border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state=open] *){rotate:180deg}.group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant=floating] *){border-radius:calc(var(--radius) + 2px)}.group-data-\[variant\=floating\]\:border:is(:where(.group)[data-variant=floating] *){border-style:var(--tw-border-style);border-width:1px}.group-data-\[variant\=floating\]\:border-sidebar-border:is(:where(.group)[data-variant=floating] *){border-color:rgb(var(--sidebar-border))}.group-data-\[variant\=floating\]\:shadow-sm:is(:where(.group)[data-variant=floating] *){--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)}.group-data-\[variant\=outline\]\/field-group\:-mb-2:is(:where(.group\/field-group)[data-variant=outline] *){margin-bottom:calc(var(--spacing) * -2)}.group-data-\[vaul-drawer-direction\=bottom\]\/drawer-content\:block:is(:where(.group\/drawer-content)[data-vaul-drawer-direction=bottom] *){display:block}.group-data-\[vaul-drawer-direction\=bottom\]\/drawer-content\:text-center:is(:where(.group\/drawer-content)[data-vaul-drawer-direction=bottom] *),.group-data-\[vaul-drawer-direction\=top\]\/drawer-content\:text-center:is(:where(.group\/drawer-content)[data-vaul-drawer-direction=top] *){text-align:center}.group-data-\[viewport\=false\]\/navigation-menu\:top-full:is(:where(.group\/navigation-menu)[data-viewport=false] *){top:100%}.group-data-\[viewport\=false\]\/navigation-menu\:mt-1\.5:is(:where(.group\/navigation-menu)[data-viewport=false] *){margin-top:calc(var(--spacing) * 1.5)}.group-data-\[viewport\=false\]\/navigation-menu\:overflow-hidden:is(:where(.group\/navigation-menu)[data-viewport=false] *){overflow:hidden}.group-data-\[viewport\=false\]\/navigation-menu\:rounded-md:is(:where(.group\/navigation-menu)[data-viewport=false] *){border-radius:var(--radius)}.group-data-\[viewport\=false\]\/navigation-menu\:border:is(:where(.group\/navigation-menu)[data-viewport=false] *){border-style:var(--tw-border-style);border-width:1px}.group-data-\[viewport\=false\]\/navigation-menu\:bg-popover:is(:where(.group\/navigation-menu)[data-viewport=false] *){background-color:rgb(var(--popover))}.group-data-\[viewport\=false\]\/navigation-menu\:text-popover-foreground:is(:where(.group\/navigation-menu)[data-viewport=false] *){color:rgb(var(--popover-foreground))}.group-data-\[viewport\=false\]\/navigation-menu\:shadow:is(:where(.group\/navigation-menu)[data-viewport=false] *){--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)}.group-data-\[viewport\=false\]\/navigation-menu\:duration-200:is(:where(.group\/navigation-menu)[data-viewport=false] *){--tw-duration:.2s;transition-duration:.2s}.group-\[\.destructive\]\:border-muted\/40:is(:where(.group).destructive *){border-color:rgb(var(--muted))}@supports (color:color-mix(in lab, red, red)){.group-\[\.destructive\]\:border-muted\/40:is(:where(.group).destructive *){border-color:color-mix(in oklab, rgb(var(--muted)) 40%, transparent)}}.group-\[\.destructive\]\:text-red-300:is(:where(.group).destructive *){color:var(--color-red-300)}@media (hover:hover){.peer-hover\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button):hover~*){color:rgb(var(--sidebar-accent-foreground))}}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button)[data-active=true]~*){color:rgb(var(--sidebar-accent-foreground))}.peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*){top:calc(var(--spacing) * 1.5)}.peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*){top:calc(var(--spacing) * 2.5)}.peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*){top:calc(var(--spacing) * 1)}.selection\:bg-primary ::selection{background-color:rgb(var(--primary))}.selection\:bg-primary::selection{background-color:rgb(var(--primary))}.selection\:text-primary-foreground ::selection{color:rgb(var(--primary-foreground))}.selection\:text-primary-foreground::selection{color:rgb(var(--primary-foreground))}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing) * 7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:rgb(var(--foreground))}.placeholder\:text-muted-foreground::placeholder{color:rgb(var(--muted-foreground))}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:calc(var(--spacing) * -2)}.after\:inset-y-0:after{content:var(--tw-content);inset-block:calc(var(--spacing) * 0)}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-1:after{content:var(--tw-content);width:calc(var(--spacing) * 1)}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible=offcanvas] *):after{content:var(--tw-content);left:100%}.first\:rounded-l-md:first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.first\:border-l:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.last\:mt-0:last-child{margin-top:calc(var(--spacing) * 0)}.last\:rounded-r-md:last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:bg-accent:hover{background-color:rgb(var(--accent))}.hover\:bg-background\/10:hover{background-color:rgb(var(--background))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-background\/10:hover{background-color:color-mix(in oklab, rgb(var(--background)) 10%, transparent)}}.hover\:bg-destructive\/90:hover{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, rgb(var(--destructive)) 90%, transparent)}}.hover\:bg-muted:hover,.hover\:bg-muted\/50:hover{background-color:rgb(var(--muted))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab, rgb(var(--muted)) 50%, transparent)}}.hover\:bg-primary-foreground\/10:hover{background-color:rgb(var(--primary-foreground))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary-foreground\/10:hover{background-color:color-mix(in oklab, rgb(var(--primary-foreground)) 10%, transparent)}}.hover\:bg-primary\/90:hover{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, rgb(var(--primary)) 90%, transparent)}}.hover\:bg-secondary:hover,.hover\:bg-secondary\/80:hover{background-color:rgb(var(--secondary))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, rgb(var(--secondary)) 80%, transparent)}}.hover\:bg-sidebar-accent:hover{background-color:rgb(var(--sidebar-accent))}.hover\:text-accent-foreground:hover{color:rgb(var(--accent-foreground))}.hover\:text-foreground:hover{color:rgb(var(--foreground))}.hover\:text-muted-foreground:hover{color:rgb(var(--muted-foreground))}.hover\:text-primary:hover{color:rgb(var(--primary))}.hover\:text-sidebar-accent-foreground:hover{color:rgb(var(--sidebar-accent-foreground))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-70:hover{opacity:.7}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover{--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-accent)));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.hover\:ring-4:hover{--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)}.hover\:group-data-\[collapsible\=offcanvas\]\:bg-sidebar:hover:is(:where(.group)[data-collapsible=offcanvas] *){background-color:rgb(var(--sidebar))}.group-\[\.destructive\]\:hover\:border-destructive\/30:is(:where(.group).destructive *):hover{border-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.group-\[\.destructive\]\:hover\:border-destructive\/30:is(:where(.group).destructive *):hover{border-color:color-mix(in oklab, rgb(var(--destructive)) 30%, transparent)}}.group-\[\.destructive\]\:hover\:bg-destructive:is(:where(.group).destructive *):hover{background-color:rgb(var(--destructive))}.group-\[\.destructive\]\:hover\:text-destructive-foreground:is(:where(.group).destructive *):hover{color:rgb(var(--destructive-foreground))}.group-\[\.destructive\]\:hover\:text-red-50:is(:where(.group).destructive *):hover{color:var(--color-red-50)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:rgb(var(--sidebar-border))}}.focus\:z-10:focus{z-index:10}.focus\:bg-accent:focus{background-color:rgb(var(--accent))}.focus\:text-accent-foreground:focus{color:rgb(var(--accent-foreground))}.focus\:opacity-100:focus{opacity:1}.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-ring:focus{--tw-ring-color:rgb(var(--ring))}.focus\:ring-offset-2:focus{--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\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.group-\[\.destructive\]\:focus\:ring-destructive:is(:where(.group).destructive *):focus{--tw-ring-color:rgb(var(--destructive))}.group-\[\.destructive\]\:focus\:ring-red-400:is(:where(.group).destructive *):focus{--tw-ring-color:var(--color-red-400)}.group-\[\.destructive\]\:focus\:ring-offset-red-600:is(:where(.group).destructive *):focus{--tw-ring-offset-color:var(--color-red-600)}.focus-visible\:z-10:focus-visible{z-index:10}.focus-visible\:border-ring:focus-visible{border-color:rgb(var(--ring))}.focus-visible\:ring-0:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + 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-1:focus-visible{--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)}.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-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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-destructive\/20:focus-visible{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}.focus-visible\:ring-ring:focus-visible,.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus-visible\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:rgb(var(--ring))}.active\:bg-sidebar-accent:active{background-color:rgb(var(--sidebar-accent))}.active\:text-sidebar-accent-foreground:active{color:rgb(var(--sidebar-accent-foreground))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}:where([data-side=left]) .in-data-\[side\=left\]\:cursor-w-resize{cursor:w-resize}:where([data-side=right]) .in-data-\[side\=right\]\:cursor-e-resize{cursor:e-resize}.has-focus\:border-ring:has(:focus){border-color:rgb(var(--ring))}.has-focus\:ring-\[3px\]:has(:focus){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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)}.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}.has-disabled\:opacity-50:has(:disabled){opacity:.5}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[state\=checked\]\:border-primary:has([data-state=checked]){border-color:rgb(var(--primary))}.has-data-\[state\=checked\]\:bg-primary\/5:has([data-state=checked]){background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.has-data-\[state\=checked\]\:bg-primary\/5:has([data-state=checked]){background-color:color-mix(in oklab, rgb(var(--primary)) 5%, transparent)}}.has-data-\[variant\=inset\]\:bg-sidebar:has([data-variant=inset]){background-color:rgb(var(--sidebar))}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:border-ring:has([data-slot=input-group-control]:focus-visible){border-color:rgb(var(--ring))}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-\[3px\]:has([data-slot=input-group-control]:focus-visible){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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)}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-ring\/50:has([data-slot=input-group-control]:focus-visible){--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-ring\/50:has([data-slot=input-group-control]:focus-visible){--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}.has-\[\[data-slot\]\[aria-invalid\=true\]\]\:border-destructive:has([data-slot][aria-invalid=true]){border-color:rgb(var(--destructive))}.has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/20:has([data-slot][aria-invalid=true]){--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/20:has([data-slot][aria-invalid=true]){--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}.has-\[\>\[data-align\=block-end\]\]\:h-auto:has(>[data-align=block-end]){height:auto}.has-\[\>\[data-align\=block-end\]\]\:flex-col:has(>[data-align=block-end]){flex-direction:column}.has-\[\>\[data-align\=block-start\]\]\:h-auto:has(>[data-align=block-start]){height:auto}.has-\[\>\[data-align\=block-start\]\]\:flex-col:has(>[data-align=block-start]){flex-direction:column}.has-\[\>\[data-slot\=button-group\]\]\:gap-2:has(>[data-slot=button-group]){gap:calc(var(--spacing) * 2)}.has-\[\>\[data-slot\=checkbox-group\]\]\:gap-3:has(>[data-slot=checkbox-group]){gap:calc(var(--spacing) * 3)}.has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}.has-\[\>\[data-slot\=field\]\]\:w-full:has(>[data-slot=field]){width:100%}.has-\[\>\[data-slot\=field\]\]\:flex-col:has(>[data-slot=field]){flex-direction:column}.has-\[\>\[data-slot\=field\]\]\:rounded-md:has(>[data-slot=field]){border-radius:var(--radius)}.has-\[\>\[data-slot\=field\]\]\:border:has(>[data-slot=field]){border-style:var(--tw-border-style);border-width:1px}.has-\[\>\[data-slot\=radio-group\]\]\:gap-3:has(>[data-slot=radio-group]){gap:calc(var(--spacing) * 3)}.has-\[\>button\]\:mr-\[-0\.4rem\]:has(>button){margin-right:-.4rem}.has-\[\>button\]\:ml-\[-0\.45rem\]:has(>button){margin-left:-.45rem}.has-\[\>kbd\]\:mr-\[-0\.35rem\]:has(>kbd){margin-right:-.35rem}.has-\[\>kbd\]\:ml-\[-0\.35rem\]:has(>kbd){margin-left:-.35rem}.has-\[\>svg\]\:grid-cols-\[calc\(var\(--spacing\)\*4\)_1fr\]:has(>svg){grid-template-columns:calc(var(--spacing) * 4) 1fr}.has-\[\>svg\]\:gap-x-3:has(>svg){column-gap:calc(var(--spacing) * 3)}.has-\[\>svg\]\:p-0:has(>svg){padding:calc(var(--spacing) * 0)}.has-\[\>svg\]\:px-2:has(>svg){padding-inline:calc(var(--spacing) * 2)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.has-\[\>textarea\]\:h-auto:has(>textarea){height:auto}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:rgb(var(--destructive))}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}.aria-selected\:text-muted-foreground[aria-selected=true]{color:rgb(var(--muted-foreground))}.data-active\:text-primary[data-active]{color:rgb(var(--primary))}.data-active\:opacity-100[data-active]{opacity:1}.data-\[active\=true\]\:z-10[data-active=true]{z-index:10}.data-\[active\=true\]\:border-ring[data-active=true]{border-color:rgb(var(--ring))}.data-\[active\=true\]\:bg-accent\/50[data-active=true]{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){.data-\[active\=true\]\:bg-accent\/50[data-active=true]{background-color:color-mix(in oklab, rgb(var(--accent)) 50%, transparent)}}.data-\[active\=true\]\:bg-sidebar-accent[data-active=true]{background-color:rgb(var(--sidebar-accent))}.data-\[active\=true\]\:font-medium[data-active=true]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-\[active\=true\]\:text-accent-foreground[data-active=true]{color:rgb(var(--accent-foreground))}.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true]{color:rgb(var(--sidebar-accent-foreground))}.data-\[active\=true\]\:ring-\[3px\][data-active=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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)}.data-\[active\=true\]\:ring-ring\/50[data-active=true]{--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){.data-\[active\=true\]\:ring-ring\/50[data-active=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}@media (hover:hover){.data-\[active\=true\]\:hover\:bg-accent[data-active=true]:hover{background-color:rgb(var(--accent))}}.data-\[active\=true\]\:focus\:bg-accent[data-active=true]:focus{background-color:rgb(var(--accent))}.data-\[active\=true\]\:aria-invalid\:border-destructive[data-active=true][aria-invalid=true]{border-color:rgb(var(--destructive))}.data-\[active\=true\]\:aria-invalid\:ring-destructive\/20[data-active=true][aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.data-\[active\=true\]\:aria-invalid\:ring-destructive\/20[data-active=true][aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[error\=true\]\:text-destructive[data-error=true]{color:rgb(var(--destructive))}.data-\[inset\]\:pl-8[data-inset]{padding-left:calc(var(--spacing) * 8)}.data-\[invalid\=true\]\:text-destructive[data-invalid=true]{color:rgb(var(--destructive))}.data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end]{--tw-enter-translate-x:calc(52*var(--spacing))}.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start]{--tw-enter-translate-x:calc(52*var(--spacing)*-1)}.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end]{--tw-exit-translate-x:calc(52*var(--spacing))}.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start]{--tw-exit-translate-x:calc(52*var(--spacing)*-1)}.data-\[motion\^\=from-\]\:animate-in[data-motion^=from-]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.data-\[motion\^\=from-\]\:fade-in[data-motion^=from-]{--tw-enter-opacity:0}.data-\[motion\^\=to-\]\:animate-out[data-motion^=to-]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.data-\[motion\^\=to-\]\:fade-out[data-motion^=to-]{--tw-exit-opacity:0}.data-\[orientation\=horizontal\]\:h-1\.5[data-orientation=horizontal]{height:calc(var(--spacing) * 1.5)}.data-\[orientation\=horizontal\]\:h-full[data-orientation=horizontal]{height:100%}.data-\[orientation\=horizontal\]\:h-px[data-orientation=horizontal]{height:1px}.data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}.data-\[orientation\=vertical\]\:h-auto[data-orientation=vertical]{height:auto}.data-\[orientation\=vertical\]\:h-full[data-orientation=vertical]{height:100%}.data-\[orientation\=vertical\]\:min-h-44[data-orientation=vertical]{min-height:calc(var(--spacing) * 44)}.data-\[orientation\=vertical\]\:w-1\.5[data-orientation=vertical]{width:calc(var(--spacing) * 1.5)}.data-\[orientation\=vertical\]\:w-auto[data-orientation=vertical]{width:auto}.data-\[orientation\=vertical\]\:w-full[data-orientation=vertical]{width:100%}.data-\[orientation\=vertical\]\:w-px[data-orientation=vertical]{width:1px}.data-\[orientation\=vertical\]\:flex-col[data-orientation=vertical]{flex-direction:column}.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical]{height:1px}.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical]{width:100%}.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:calc(var(--spacing) * 0)}.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after{content:var(--tw-content);height:calc(var(--spacing) * 1)}.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after{content:var(--tw-content);width:100%}.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:rgb(var(--muted-foreground))}.data-\[range-end\=true\]\:rounded-md[data-range-end=true]{border-radius:var(--radius)}.data-\[range-end\=true\]\:rounded-r-md[data-range-end=true]{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.data-\[range-end\=true\]\:bg-primary[data-range-end=true]{background-color:rgb(var(--primary))}.data-\[range-end\=true\]\:text-primary-foreground[data-range-end=true]{color:rgb(var(--primary-foreground))}.data-\[range-middle\=true\]\:rounded-none[data-range-middle=true]{border-radius:0}.data-\[range-middle\=true\]\:bg-accent[data-range-middle=true]{background-color:rgb(var(--accent))}.data-\[range-middle\=true\]\:text-accent-foreground[data-range-middle=true]{color:rgb(var(--accent-foreground))}.data-\[range-start\=true\]\:rounded-md[data-range-start=true]{border-radius:var(--radius)}.data-\[range-start\=true\]\:rounded-l-md[data-range-start=true]{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.data-\[range-start\=true\]\:bg-primary[data-range-start=true]{background-color:rgb(var(--primary))}.data-\[range-start\=true\]\:text-primary-foreground[data-range-start=true]{color:rgb(var(--primary-foreground))}.data-\[selected-single\=true\]\:bg-primary[data-selected-single=true]{background-color:rgb(var(--primary))}.data-\[selected-single\=true\]\:text-primary-foreground[data-selected-single=true]{color:rgb(var(--primary-foreground))}.data-\[selected\=true\]\:rounded-none[data-selected=true]{border-radius:0}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:rgb(var(--accent))}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:rgb(var(--accent-foreground))}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[size\=default\]\:h-9[data-size=default]{height:calc(var(--spacing) * 9)}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing) * 8)}:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:color-mix(in oklab, rgb(var(--destructive)) 90%, transparent)}}.data-\[slot\=checkbox-group\]\:gap-3[data-slot=checkbox-group]{gap:calc(var(--spacing) * 3)}:is(.\*\*\:data-\[slot\=command-input-wrapper\]\:h-12 *)[data-slot=command-input-wrapper]{height:calc(var(--spacing) * 12)}:is(.\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:ring-0 *)[data-slot=navigation-menu-link]:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + 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)}:is(.\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:outline-none *)[data-slot=navigation-menu-link]:focus{--tw-outline-style:none;outline-style:none}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-2>*)[data-slot=select-value]{gap:calc(var(--spacing) * 2)}.data-\[state\=active\]\:bg-card[data-state=active]{background-color:rgb(var(--card))}.data-\[state\=active\]\:shadow-sm[data-state=active]{--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)}.data-\[state\=checked\]\:translate-x-\[calc\(100\%-2px\)\][data-state=checked]{--tw-translate-x:calc(100% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=checked\]\:border-primary[data-state=checked]{border-color:rgb(var(--primary))}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:rgb(var(--primary))}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:rgb(var(--primary-foreground))}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))ease-out}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.data-\[state\=closed\]\:duration-300[data-state=closed]{--tw-duration:.3s;transition-duration:.3s}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:fade-out-80[data-state=closed]{--tw-exit-opacity:.8}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-right-full[data-state=closed]{--tw-exit-translate-x:calc(1*100%)}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:animate-out:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:fade-out-0:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=closed]{--tw-exit-opacity:0}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:zoom-out-95:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=hidden\]\:animate-out[data-state=hidden]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.data-\[state\=hidden\]\:fade-out[data-state=hidden]{--tw-exit-opacity:0}.data-\[state\=on\]\:bg-accent[data-state=on]{background-color:rgb(var(--accent))}.data-\[state\=on\]\:text-accent-foreground[data-state=on]{color:rgb(var(--accent-foreground))}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))ease-out}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.data-\[state\=open\]\:bg-accent[data-state=open],.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:color-mix(in oklab, rgb(var(--accent)) 50%, transparent)}}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:rgb(var(--secondary))}.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:rgb(var(--accent-foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:rgb(var(--muted-foreground))}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.data-\[state\=open\]\:duration-500[data-state=open]{--tw-duration:.5s;transition-duration:.5s}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-90[data-state=open]{--tw-enter-scale:.9}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y:calc(1*-100%)}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:animate-in:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:fade-in-0:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=open]{--tw-enter-opacity:0}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:zoom-in-95:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=open]{--tw-enter-scale:.95}@media (hover:hover){.data-\[state\=open\]\:hover\:bg-accent[data-state=open]:hover{background-color:rgb(var(--accent))}.data-\[state\=open\]\:hover\:bg-sidebar-accent[data-state=open]:hover{background-color:rgb(var(--sidebar-accent))}.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground[data-state=open]:hover{color:rgb(var(--sidebar-accent-foreground))}}.data-\[state\=open\]\:focus\:bg-accent[data-state=open]:focus{background-color:rgb(var(--accent))}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:rgb(var(--muted))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-\[\#7F7F79\][data-state=unchecked]{background-color:#7f7f79}.data-\[state\=visible\]\:animate-in[data-state=visible]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.data-\[state\=visible\]\:fade-in[data-state=visible]{--tw-enter-opacity:0}.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x:var(--radix-toast-swipe-end-x);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x:var(--radix-toast-swipe-move-x);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[variant\=destructive\]\:text-destructive[data-variant=destructive]{color:rgb(var(--destructive))}.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab, rgb(var(--destructive)) 10%, transparent)}}.data-\[variant\=destructive\]\:focus\:text-destructive[data-variant=destructive]:focus{color:rgb(var(--destructive))}.data-\[variant\=label\]\:text-sm[data-variant=label]{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.data-\[variant\=legend\]\:text-base[data-variant=legend]{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.data-\[variant\=outline\]\:border-l-0[data-variant=outline]{border-left-style:var(--tw-border-style);border-left-width:0}.data-\[variant\=outline\]\:shadow-xs[data-variant=outline]{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.data-\[variant\=outline\]\:first\:border-l[data-variant=outline]:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.data-\[vaul-drawer-direction\=bottom\]\:inset-x-0[data-vaul-drawer-direction=bottom]{inset-inline:calc(var(--spacing) * 0)}.data-\[vaul-drawer-direction\=bottom\]\:bottom-0[data-vaul-drawer-direction=bottom]{bottom:calc(var(--spacing) * 0)}.data-\[vaul-drawer-direction\=bottom\]\:mt-24[data-vaul-drawer-direction=bottom]{margin-top:calc(var(--spacing) * 24)}.data-\[vaul-drawer-direction\=bottom\]\:max-h-\[80vh\][data-vaul-drawer-direction=bottom]{max-height:80vh}.data-\[vaul-drawer-direction\=bottom\]\:rounded-t-lg[data-vaul-drawer-direction=bottom]{border-top-left-radius:calc(var(--radius) + 2px);border-top-right-radius:calc(var(--radius) + 2px)}.data-\[vaul-drawer-direction\=bottom\]\:border-t[data-vaul-drawer-direction=bottom]{border-top-style:var(--tw-border-style);border-top-width:1px}.data-\[vaul-drawer-direction\=left\]\:inset-y-0[data-vaul-drawer-direction=left]{inset-block:calc(var(--spacing) * 0)}.data-\[vaul-drawer-direction\=left\]\:left-0[data-vaul-drawer-direction=left]{left:calc(var(--spacing) * 0)}.data-\[vaul-drawer-direction\=left\]\:w-3\/4[data-vaul-drawer-direction=left]{width:75%}.data-\[vaul-drawer-direction\=left\]\:border-r[data-vaul-drawer-direction=left]{border-right-style:var(--tw-border-style);border-right-width:1px}.data-\[vaul-drawer-direction\=right\]\:inset-y-0[data-vaul-drawer-direction=right]{inset-block:calc(var(--spacing) * 0)}.data-\[vaul-drawer-direction\=right\]\:right-0[data-vaul-drawer-direction=right]{right:calc(var(--spacing) * 0)}.data-\[vaul-drawer-direction\=right\]\:w-3\/4[data-vaul-drawer-direction=right]{width:75%}.data-\[vaul-drawer-direction\=right\]\:border-l[data-vaul-drawer-direction=right]{border-left-style:var(--tw-border-style);border-left-width:1px}.data-\[vaul-drawer-direction\=top\]\:inset-x-0[data-vaul-drawer-direction=top]{inset-inline:calc(var(--spacing) * 0)}.data-\[vaul-drawer-direction\=top\]\:top-0[data-vaul-drawer-direction=top]{top:calc(var(--spacing) * 0)}.data-\[vaul-drawer-direction\=top\]\:mb-24[data-vaul-drawer-direction=top]{margin-bottom:calc(var(--spacing) * 24)}.data-\[vaul-drawer-direction\=top\]\:max-h-\[80vh\][data-vaul-drawer-direction=top]{max-height:80vh}.data-\[vaul-drawer-direction\=top\]\:rounded-b-lg[data-vaul-drawer-direction=top]{border-bottom-right-radius:calc(var(--radius) + 2px);border-bottom-left-radius:calc(var(--radius) + 2px)}.data-\[vaul-drawer-direction\=top\]\:border-b[data-vaul-drawer-direction=top]{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.nth-last-2\:-mt-1:nth-last-child(2){margin-top:calc(var(--spacing) * -1)}@media (min-width:40rem){.sm\:top-auto{top:auto}.sm\:right-0{right:calc(var(--spacing) * 0)}.sm\:bottom-0{bottom:calc(var(--spacing) * 0)}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-sm{max-width:var(--container-sm)}.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\:flex-col{flex-direction:column}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2\.5{gap:calc(var(--spacing) * 2.5)}.sm\:pr-2\.5{padding-right:calc(var(--spacing) * 2.5)}.sm\:pl-2\.5{padding-left:calc(var(--spacing) * 2.5)}.sm\:text-left{text-align:left}.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))}.data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state=open]{--tw-enter-translate-y:calc(1*100%)}.data-\[vaul-drawer-direction\=left\]\:sm\:max-w-sm[data-vaul-drawer-direction=left],.data-\[vaul-drawer-direction\=right\]\:sm\:max-w-sm[data-vaul-drawer-direction=right]{max-width:var(--container-sm)}}@media (min-width:48rem){.md\:absolute{position:absolute}.md\:col-span-1{grid-column:span 1/span 1}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:w-\[var\(--radix-navigation-menu-viewport-width\)\]{width:var(--radix-navigation-menu-viewport-width)}.md\:w-auto{width:auto}.md\:max-w-\[420px\]{max-width:420px}.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\:flex-row{flex-direction:row}.md\:gap-1\.5{gap:calc(var(--spacing) * 1.5)}.md\:p-12{padding:calc(var(--spacing) * 12)}.md\:text-left{text-align:left}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:opacity-0{opacity:0}.md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant=inset]~*){margin:calc(var(--spacing) * 2)}.md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant=inset]~*){margin-left:calc(var(--spacing) * 0)}.md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant=inset]~*){border-radius:calc(var(--radius) + 4px)}.md\:peer-data-\[variant\=inset\]\:shadow-sm:is(:where(.peer)[data-variant=inset]~*){--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)}.md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2:is(:where(.peer)[data-variant=inset]~*):is(:where(.peer)[data-state=collapsed]~*){margin-left:calc(var(--spacing) * 2)}.md\:after\:hidden:after{content:var(--tw-content);display:none}}@media (min-width:64rem){.lg\:block{display:block}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.lg\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}}@container field-group (min-width:28rem){.\@md\/field-group\:flex-row{flex-direction:row}.\@md\/field-group\:items-center{align-items:center}.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}}.dark\:border-input:is(.dark *){border-color:rgb(var(--input))}.dark\:bg-background:is(.dark *),.dark\:bg-background\/80:is(.dark *){background-color:rgb(var(--background))}@supports (color:color-mix(in lab, red, red)){.dark\:bg-background\/80:is(.dark *){background-color:color-mix(in oklab, rgb(var(--background)) 80%, transparent)}}.dark\:bg-destructive\/60:is(.dark *){background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/60:is(.dark *){background-color:color-mix(in oklab, rgb(var(--destructive)) 60%, transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}.dark\:bg-transparent:is(.dark *){background-color:#0000}.dark\:text-muted-foreground:is(.dark *){color:rgb(var(--muted-foreground))}@media (hover:hover){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:color-mix(in oklab, rgb(var(--accent)) 50%, transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab, rgb(var(--input)) 50%, transparent)}}.dark\:hover\:text-accent-foreground:is(.dark *):hover{color:rgb(var(--accent-foreground))}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}.dark\:has-data-\[state\=checked\]\:bg-primary\/10:is(.dark *):has([data-state=checked]){background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.dark\:has-data-\[state\=checked\]\:bg-primary\/10:is(.dark *):has([data-state=checked]){background-color:color-mix(in oklab, rgb(var(--primary)) 10%, transparent)}}.dark\:has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/40:is(.dark *):has([data-slot][aria-invalid=true]){--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.dark\:has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/40:is(.dark *):has([data-slot][aria-invalid=true]){--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}.dark\:data-\[active\=true\]\:aria-invalid\:ring-destructive\/40:is(.dark *)[data-active=true][aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.dark\:data-\[active\=true\]\:aria-invalid\:ring-destructive\/40:is(.dark *)[data-active=true][aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}.dark\:data-\[state\=active\]\:border-input:is(.dark *)[data-state=active]{border-color:rgb(var(--input))}.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}.dark\:data-\[state\=active\]\:text-foreground:is(.dark *)[data-state=active]{color:rgb(var(--foreground))}.dark\:data-\[state\=checked\]\:bg-primary:is(.dark *)[data-state=checked]{background-color:rgb(var(--primary))}.dark\:data-\[state\=checked\]\:bg-primary-foreground:is(.dark *)[data-state=checked]{background-color:rgb(var(--primary-foreground))}.dark\:data-\[state\=unchecked\]\:bg-foreground:is(.dark *)[data-state=unchecked]{background-color:rgb(var(--foreground))}.dark\:data-\[state\=unchecked\]\:bg-input:is(.dark *)[data-state=unchecked]{background-color:rgb(var(--input))}.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:rgb(var(--muted-foreground))}.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke=\#ccc]{stroke:rgb(var(--border))}@supports (color:color-mix(in lab, red, red)){.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke=\#ccc]{stroke:color-mix(in oklab, rgb(var(--border)) 50%, transparent)}}.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:rgb(var(--border))}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke=\#fff]{stroke:#0000}.\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer{outline-offset:2px;outline:2px solid #0000}}.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke=\#ccc]{stroke:rgb(var(--border))}.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:rgb(var(--muted))}.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke=\#ccc]{stroke:rgb(var(--border))}.\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector{outline-offset:2px;outline:2px solid #0000}}.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke=\#fff]{stroke:#0000}.\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface{outline-offset:2px;outline:2px solid #0000}}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing) * 1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:rgb(var(--muted-foreground))}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:calc(var(--spacing) * 0)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:calc(var(--spacing) * 5)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:calc(var(--spacing) * 5)}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:calc(var(--spacing) * 12)}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-block:calc(var(--spacing) * 3)}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:calc(var(--spacing) * 5)}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:calc(var(--spacing) * 5)}.\[\&_img\]\:size-full img{width:100%;height:100%}.\[\&_img\]\:object-cover img{object-fit:cover}.\[\&_p\]\:leading-relaxed p{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-6 svg:not([class*=size-]){width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*=text-]){color:rgb(var(--muted-foreground))}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\+\[data-slot\=item-content\]\]\:flex-none+[data-slot=item-content]{flex:none}.\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected=true] button{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:calc(var(--spacing) * 0)}.\[\.border-b\]\:pb-3.border-b{padding-bottom:calc(var(--spacing) * 3)}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing) * 6)}.\[\.border-t\]\:pt-3.border-t{padding-top:calc(var(--spacing) * 3)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing) * 6)}:is(.rtl\:\*\*\:\[\.rdp-button\\_next\>svg\]\:rotate-180:where(:dir(rtl),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_next>svg),:is(.rtl\:\*\*\:\[\.rdp-button\\_previous\>svg\]\:rotate-180:where(:dir(rtl),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_previous>svg){rotate:180deg}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}:is(.data-\[variant\=destructive\]\:\*\:\[svg\]\:\!text-destructive[data-variant=destructive]>*):is(svg){color:rgb(var(--destructive))!important}.\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected=true] button{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.\[\&\>\*\]\:w-full>*{width:100%}.\[\&\>\*\]\:focus-visible\:relative>:focus-visible{position:relative}.\[\&\>\*\]\:focus-visible\:z-10>:focus-visible{z-index:10}.\[\&\>\*\]\:data-\[slot\=field\]\:p-4>[data-slot=field]{padding:calc(var(--spacing) * 4)}@container field-group (min-width:28rem){.\@md\/field-group\:\[\&\>\*\]\:w-auto>*{width:auto}}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-t-none>:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-l-none>:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:border-t-0>:not(:first-child){border-top-style:var(--tw-border-style);border-top-width:0}.\[\&\>\*\:not\(\:first-child\)\]\:border-l-0>:not(:first-child){border-left-style:var(--tw-border-style);border-left-width:0}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-r-none>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-b-none>:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0}.\[\&\>\.sr-only\]\:w-auto>.sr-only{width:auto}.\[\&\>\[data-slot\=field-group\]\]\:gap-4>[data-slot=field-group]{gap:calc(var(--spacing) * 4)}.\[\&\>\[data-slot\=field-label\]\]\:flex-auto>[data-slot=field-label]{flex:auto}@container field-group (min-width:28rem){.\@md\/field-group\:\[\&\>\[data-slot\=field-label\]\]\:flex-auto>[data-slot=field-label]{flex:auto}}.has-\[select\[aria-hidden\=true\]\:last-child\]\:\[\&\>\[data-slot\=select-trigger\]\:last-of-type\]\:rounded-r-md:has(:is(select[aria-hidden=true]:last-child))>[data-slot=select-trigger]:last-of-type{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.\[\&\>\[data-slot\=select-trigger\]\:not\(\[class\*\=\'w-\'\]\)\]\:w-fit>[data-slot=select-trigger]:not([class*=w-]){width:fit-content}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]{margin-top:1px}@container field-group (min-width:28rem){.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]{margin-top:1px}}.\[\&\>a\]\:underline>a{text-decoration-line:underline}.\[\&\>a\]\:underline-offset-4>a{text-underline-offset:4px}.\[\&\>a\:hover\]\:text-primary>a:hover{color:rgb(var(--primary))}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>input\]\:flex-1>input{flex:1}.has-\[\>\[data-align\=block-end\]\]\:\[\&\>input\]\:pt-3:has(>[data-align=block-end])>input{padding-top:calc(var(--spacing) * 3)}.has-\[\>\[data-align\=block-start\]\]\:\[\&\>input\]\:pb-3:has(>[data-align=block-start])>input{padding-bottom:calc(var(--spacing) * 3)}.has-\[\>\[data-align\=inline-end\]\]\:\[\&\>input\]\:pr-2:has(>[data-align=inline-end])>input{padding-right:calc(var(--spacing) * 2)}.has-\[\>\[data-align\=inline-start\]\]\:\[\&\>input\]\:pl-2:has(>[data-align=inline-start])>input{padding-left:calc(var(--spacing) * 2)}.\[\&\>kbd\]\:rounded-\[calc\(var\(--radius\)-5px\)\]>kbd{border-radius:calc(var(--radius) - 5px)}.\[\&\>span\]\:text-xs>span{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&\>span\]\:opacity-70>span{opacity:.7}.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>svg\]\:h-2\.5>svg{height:calc(var(--spacing) * 2.5)}.\[\&\>svg\]\:h-3>svg{height:calc(var(--spacing) * 3)}.\[\&\>svg\]\:w-2\.5>svg{width:calc(var(--spacing) * 2.5)}.\[\&\>svg\]\:w-3>svg{width:calc(var(--spacing) * 3)}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:translate-y-0\.5>svg{--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>svg\]\:text-current>svg{color:currentColor}.\[\&\>svg\]\:text-muted-foreground>svg{color:rgb(var(--muted-foreground))}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:rgb(var(--sidebar-accent-foreground))}.\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5>svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4>svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div{rotate:90deg}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{rotate:180deg}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:calc(var(--spacing) * -2)}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:calc(var(--spacing) * -2)}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-slot=card-content] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent,[data-slot=popover-content] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent{background-color:#0000}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/20{background-color:rgb(var(--background))}@supports (color:color-mix(in lab, red, red)){[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/20{background-color:color-mix(in oklab, rgb(var(--background)) 20%, transparent)}}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:text-background{color:rgb(var(--background))}[data-slot=tooltip-content] .dark\:\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/10:is(.dark *){background-color:rgb(var(--background))}@supports (color:color-mix(in lab, red, red)){[data-slot=tooltip-content] .dark\:\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/10:is(.dark *){background-color:color-mix(in oklab, rgb(var(--background)) 10%, transparent)}}[data-variant=legend]+.\[\[data-variant\=legend\]\+\&\]\:-mt-1\.5{margin-top:calc(var(--spacing) * -1.5)}a.\[a\&\]\: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))}@media (hover:hover){a.\[a\&\]\:hover\:bg-\[\#1a7f37\]\/90:hover{background-color:oklab(52.4411% -.118843 .0741478/.9)}a.\[a\&\]\:hover\:bg-\[\#3b82f6\]\/90:hover{background-color:oklab(62.3083% -.0332476 -.185052/.9)}a.\[a\&\]\:hover\:bg-\[\#4b5563\]\/90:hover{background-color:oklab(44.6112% -.00600769 -.0256175/.9)}a.\[a\&\]\:hover\:bg-\[\#9a6700\]\/90:hover{background-color:oklab(55.4191% .0302415 .112929/.9)}a.\[a\&\]\:hover\:bg-\[\#22c55e\]\/90:hover{background-color:oklab(72.2746% -.165574 .0972219/.9)}a.\[a\&\]\:hover\:bg-\[\#0969da\]\/90:hover{background-color:oklab(53.9924% -.0413103 -.186053/.9)}a.\[a\&\]\:hover\:bg-\[\#a855f7\]\/90:hover{background-color:oklab(62.6846% .129701 -.193012/.9)}a.\[a\&\]\:hover\:bg-\[\#f97316\]\/90:hover{background-color:oklab(70.4871% .125896 .137895/.9)}a.\[a\&\]\:hover\:bg-accent\/10:hover{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-accent\/10:hover{background-color:color-mix(in oklab, rgb(var(--accent)) 10%, transparent)}}a.\[a\&\]\:hover\:bg-accent\/50:hover{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-accent\/50:hover{background-color:color-mix(in oklab, rgb(var(--accent)) 50%, transparent)}}a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, rgb(var(--destructive)) 90%, transparent)}}a.\[a\&\]\:hover\:bg-muted:hover,a.\[a\&\]\:hover\:bg-muted\/80:hover{background-color:rgb(var(--muted))}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-muted\/80:hover{background-color:color-mix(in oklab, rgb(var(--muted)) 80%, transparent)}}a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, rgb(var(--primary)) 90%, transparent)}}a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:rgb(var(--secondary))}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:color-mix(in oklab, rgb(var(--secondary)) 90%, transparent)}}a.\[a\&\]\:hover\:text-accent-foreground:hover{color:rgb(var(--accent-foreground))}}:where([data-slot=accordion-content]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));overflow:hidden}:where([data-slot=accordion-content])[data-state=closed]{animation:accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))ease-out}:where([data-slot=accordion-content])[data-state=open]{animation:accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))ease-out}:where([data-slot=accordion-item]){border-bottom-style:var(--tw-border-style);border-bottom-width:1px}:where([data-slot=accordion-item]):last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}:where([data-slot=accordion-trigger]){justify-content:space-between;align-items:flex-start;gap:calc(var(--spacing) * 4);border-radius:var(--radius);padding-block:calc(var(--spacing) * 4);text-align:left;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;outline-style:none;flex:1;display:flex}@media (hover:hover){:where([data-slot=accordion-trigger]):hover{text-decoration-line:underline}}:where([data-slot=accordion-trigger]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=accordion-trigger]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=accordion-trigger]):disabled{pointer-events:none;opacity:.5}:where([data-slot=accordion-trigger])[data-state=open]>svg{rotate:180deg}:where([data-slot=alert]){align-items:flex-start;row-gap:calc(var(--spacing) * .5);border-radius:calc(var(--radius) + 2px);border-style:var(--tw-border-style);width:100%;padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));border-width:1px;grid-template-columns:0 1fr;display:grid;position:relative}:where([data-slot=alert]):has(>svg){grid-template-columns:calc(var(--spacing) * 4) 1fr;column-gap:calc(var(--spacing) * 3)}:where([data-slot=alert])>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y);color:currentColor}:where([data-slot=alert]):where(:not([data-variant])),:where([data-slot=alert]):where([data-variant=default]){background-color:rgb(var(--card));color:rgb(var(--card-foreground))}:where([data-slot=alert]):where([data-variant=destructive]){background-color:rgb(var(--card));color:rgb(var(--destructive))}:is(:where([data-slot=alert]):where([data-variant=destructive])>*)[data-slot=alert-description]{color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:is(:where([data-slot=alert]):where([data-variant=destructive])>*)[data-slot=alert-description]{color:color-mix(in oklab, rgb(var(--destructive)) 90%, transparent)}}:where([data-slot=alert]):where([data-variant=destructive])>svg{color:currentColor}:where([data-slot=alert-description]){justify-items:start;gap:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--muted-foreground));grid-column-start:2;display:grid}:where([data-slot=alert-description]) p{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}:where([data-slot=alert-dialog-content]){z-index:50;--tw-translate-x:-50%;--tw-translate-y:-50%;width:100%;max-width:calc(100% - 2rem);translate:var(--tw-translate-x) var(--tw-translate-y);gap:calc(var(--spacing) * 4);border-radius:calc(var(--radius) + 2px);border-style:var(--tw-border-style);background-color:rgb(var(--background));padding:calc(var(--spacing) * 6);--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);--tw-duration:.2s;border-width:1px;transition-duration:.2s;display:grid;position:fixed;top:50%;left:50%}:where([data-slot=alert-dialog-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=alert-dialog-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}@media (min-width:40rem){:where([data-slot=alert-dialog-content]){max-width:var(--container-lg)}}:where([data-slot=alert-dialog-description]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--muted-foreground))}:where([data-slot=alert-dialog-footer]){gap:calc(var(--spacing) * 2);flex-direction:column-reverse;display:flex}@media (min-width:40rem){:where([data-slot=alert-dialog-footer]){flex-direction:row;justify-content:flex-end}}:where([data-slot=alert-dialog-header]){gap:calc(var(--spacing) * 2);text-align:center;flex-direction:column;display:flex}@media (min-width:40rem){:where([data-slot=alert-dialog-header]){text-align:left}}:where([data-slot=alert-dialog-overlay]){inset:calc(var(--spacing) * 0);z-index:50;background-color:#00000080;position:fixed}@supports (color:color-mix(in lab, red, red)){:where([data-slot=alert-dialog-overlay]){background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}:where([data-slot=alert-dialog-overlay])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0}:where([data-slot=alert-dialog-overlay])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0}:where([data-slot=alert-dialog-title]){font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}:where([data-slot=alert-title]){-webkit-line-clamp:1;min-height:calc(var(--spacing) * 4);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);-webkit-box-orient:vertical;grid-column-start:2;display:-webkit-box;overflow:hidden}:where([data-slot=avatar]){width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8);border-radius:3.40282e38px;flex-shrink:0;display:flex;position:relative;overflow:hidden}:where([data-slot=avatar-fallback]){background-color:rgb(var(--muted));border-radius:3.40282e38px;justify-content:center;align-items:center;width:100%;height:100%;display:flex}:where([data-slot=avatar-image]){aspect-ratio:1;width:100%;height:100%}:where([data-slot=badge]){justify-content:center;align-items:center;gap:calc(var(--spacing) * 1);border-radius:var(--radius);border-style:var(--tw-border-style);--tw-font-weight:var(--font-weight-medium);width:fit-content;font-weight:var(--font-weight-medium);white-space:nowrap;transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));border-width:1px;flex-shrink:0;display:inline-flex;overflow:hidden}:where([data-slot=badge]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=badge]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=badge])[aria-invalid=true]{border-color:rgb(var(--destructive));--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=badge])[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=badge]):is(.dark *)[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=badge]):is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=badge])>svg{pointer-events:none;width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}:where([data-slot=badge]):where(:not([data-variant])){background-color:rgb(var(--primary));color:rgb(var(--primary-foreground));border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where(:not([data-variant])):hover{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){a:where([data-slot=badge]):where(:not([data-variant])):hover{background-color:color-mix(in oklab, rgb(var(--primary)) 90%, transparent)}}}:where([data-slot=badge]):where([data-variant=default]){background-color:rgb(var(--primary));color:rgb(var(--primary-foreground));border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=default]):hover{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){a:where([data-slot=badge]):where([data-variant=default]):hover{background-color:color-mix(in oklab, rgb(var(--primary)) 90%, transparent)}}}:where([data-slot=badge]):where([data-variant=secondary]){background-color:rgb(var(--secondary));color:rgb(var(--secondary-foreground));border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=secondary]):hover{background-color:rgb(var(--secondary))}@supports (color:color-mix(in lab, red, red)){a:where([data-slot=badge]):where([data-variant=secondary]):hover{background-color:color-mix(in oklab, rgb(var(--secondary)) 90%, transparent)}}}:where([data-slot=badge]):where([data-variant=muted]){background-color:rgb(var(--muted));color:rgb(var(--muted-foreground));border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=muted]):hover{background-color:rgb(var(--muted))}@supports (color:color-mix(in lab, red, red)){a:where([data-slot=badge]):where([data-variant=muted]):hover{background-color:color-mix(in oklab, rgb(var(--muted)) 80%, transparent)}}}:where([data-slot=badge]):where([data-variant=destructive]){background-color:rgb(var(--destructive));color:var(--color-white);border-color:#0000}:where([data-slot=badge]):where([data-variant=destructive]):focus-visible{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=badge]):where([data-variant=destructive]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=badge]):where([data-variant=destructive]):is(.dark *){background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=badge]):where([data-variant=destructive]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--destructive)) 60%, transparent)}}:where([data-slot=badge]):where([data-variant=destructive]):is(.dark *):focus-visible{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=badge]):where([data-variant=destructive]):is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=destructive]):hover{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){a:where([data-slot=badge]):where([data-variant=destructive]):hover{background-color:color-mix(in oklab, rgb(var(--destructive)) 90%, transparent)}}}:where([data-slot=badge]):where([data-variant=outline]){color:rgb(var(--foreground))}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=outline]):hover{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){a:where([data-slot=badge]):where([data-variant=outline]):hover{background-color:color-mix(in oklab, rgb(var(--accent)) 10%, transparent)}}a:where([data-slot=badge]):where([data-variant=outline]):hover{color:rgb(var(--accent-foreground))}}:where([data-slot=badge]):where([data-variant=success]){color:var(--color-white);background-color:#1a7f37;border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=success]):hover{background-color:oklab(52.4411% -.118843 .0741478/.9)}}:where([data-slot=badge]):where([data-variant=warning]){color:var(--color-white);background-color:#9a6700;border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=warning]):hover{background-color:oklab(55.4191% .0302415 .112929/.9)}}:where([data-slot=badge]):where([data-variant=info]){color:var(--color-white);background-color:#0969da;border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=info]):hover{background-color:oklab(53.9924% -.0413103 -.186053/.9)}}:where([data-slot=badge]):where([data-variant=tag]){border-color:rgb(var(--border));background-color:rgb(var(--card));color:rgb(var(--foreground))}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=tag]):hover{background-color:rgb(var(--muted))}}:where([data-slot=badge]):where([data-variant=value]){background-color:rgb(var(--muted));color:rgb(var(--foreground));border-color:#0000;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=value]):hover{background-color:rgb(var(--muted))}@supports (color:color-mix(in lab, red, red)){a:where([data-slot=badge]):where([data-variant=value]):hover{background-color:color-mix(in oklab, rgb(var(--muted)) 80%, transparent)}}}:where([data-slot=badge]):where([data-variant=whatsapp]){color:var(--color-white);background-color:#22c55e;border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=whatsapp]):hover{background-color:oklab(72.2746% -.165574 .0972219/.9)}}:where([data-slot=badge]):where([data-variant=email]){color:var(--color-white);background-color:#4b5563;border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=email]):hover{background-color:oklab(44.6112% -.00600769 -.0256175/.9)}}:where([data-slot=badge]):where([data-variant=telegram]){color:var(--color-white);background-color:#3b82f6;border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=telegram]):hover{background-color:oklab(62.3083% -.0332476 -.185052/.9)}}:where([data-slot=badge]):where([data-variant=zulip]){color:var(--color-white);background-color:#a855f7;border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=zulip]):hover{background-color:oklab(62.6846% .129701 -.193012/.9)}}:where([data-slot=badge]):where([data-variant=platform]){color:var(--color-white);background-color:#f97316;border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=platform]):hover{background-color:oklab(70.4871% .125896 .137895/.9)}}:where([data-slot=badge]):where([data-size=sm]){padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * 0);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}:where([data-slot=badge]):where(:not([data-size])),:where([data-slot=badge]):where([data-size=default]){padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * .5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}:where([data-slot=badge]):where([data-size=lg]){padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}:where([data-slot=badge]):where([data-size=lg])>svg{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}:where([data-slot=breadcrumb-ellipsis]){width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9);justify-content:center;align-items:center;display:flex}:where([data-slot=breadcrumb-item]){align-items:center;gap:calc(var(--spacing) * 1.5);display:inline-flex}:where([data-slot=breadcrumb-link]){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))}@media (hover:hover){:where([data-slot=breadcrumb-link]):hover{color:rgb(var(--foreground))}}:where([data-slot=breadcrumb-list]){align-items:center;gap:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));overflow-wrap:break-word;color:rgb(var(--muted-foreground));flex-wrap:wrap;display:flex}@media (min-width:40rem){:where([data-slot=breadcrumb-list]){gap:calc(var(--spacing) * 2.5)}}:where([data-slot=breadcrumb-page]){--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:rgb(var(--foreground))}:where([data-slot=breadcrumb-separator])>svg{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}:where([data-slot=button]){justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);white-space:nowrap;transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;outline-style:none;flex-shrink:0;display:inline-flex}:where([data-slot=button]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=button]):disabled{pointer-events:none;opacity:.5}:where([data-slot=button])[aria-invalid=true]{border-color:rgb(var(--destructive));--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button])[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=button]):is(.dark *)[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=button]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=button]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=button]):where(:not([data-variant])){background-color:rgb(var(--primary));color:rgb(var(--primary-foreground))}@media (hover:hover){:where([data-slot=button]):where(:not([data-variant])):hover{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where(:not([data-variant])):hover{background-color:color-mix(in oklab, rgb(var(--primary)) 90%, transparent)}}}:where([data-slot=button]):where([data-variant=default]){background-color:rgb(var(--primary));color:rgb(var(--primary-foreground))}@media (hover:hover){:where([data-slot=button]):where([data-variant=default]):hover{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=default]):hover{background-color:color-mix(in oklab, rgb(var(--primary)) 90%, transparent)}}}:where([data-slot=button]):where([data-variant=destructive]){background-color:rgb(var(--destructive));color:var(--color-white)}@media (hover:hover){:where([data-slot=button]):where([data-variant=destructive]):hover{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=destructive]):hover{background-color:color-mix(in oklab, rgb(var(--destructive)) 90%, transparent)}}}:where([data-slot=button]):where([data-variant=destructive]):focus-visible{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=destructive]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=button]):where([data-variant=destructive]):is(.dark *){background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=destructive]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--destructive)) 60%, transparent)}}:where([data-slot=button]):where([data-variant=destructive]):is(.dark *):focus-visible{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=destructive]):is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=button]):where([data-variant=outline]){border-style:var(--tw-border-style);background-color:rgb(var(--background));--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-width:1px}@media (hover:hover){:where([data-slot=button]):where([data-variant=outline]):hover{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}}:where([data-slot=button]):where([data-variant=outline]):is(.dark *){border-color:rgb(var(--input));background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=outline]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}@media (hover:hover){:where([data-slot=button]):where([data-variant=outline]):is(.dark *):hover{background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=outline]):is(.dark *):hover{background-color:color-mix(in oklab, rgb(var(--input)) 50%, transparent)}}}:where([data-slot=button]):where([data-variant=secondary]){background-color:rgb(var(--secondary));color:rgb(var(--secondary-foreground))}@media (hover:hover){:where([data-slot=button]):where([data-variant=secondary]):hover{background-color:rgb(var(--secondary))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=secondary]):hover{background-color:color-mix(in oklab, rgb(var(--secondary)) 80%, transparent)}}:where([data-slot=button]):where([data-variant=ghost]):hover{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=button]):where([data-variant=ghost]):is(.dark *):hover{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=ghost]):is(.dark *):hover{background-color:color-mix(in oklab, rgb(var(--accent)) 50%, transparent)}}}:where([data-slot=button]):where([data-variant=link]){color:rgb(var(--primary));text-underline-offset:4px}@media (hover:hover){:where([data-slot=button]):where([data-variant=link]):hover{text-decoration-line:underline}}:where([data-slot=button]):where(:not([data-size])){height:calc(var(--spacing) * 9);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2)}:where([data-slot=button]):where(:not([data-size])):has(>svg){padding-inline:calc(var(--spacing) * 3)}:where([data-slot=button]):where([data-size=default]){height:calc(var(--spacing) * 9);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2)}:where([data-slot=button]):where([data-size=default]):has(>svg){padding-inline:calc(var(--spacing) * 3)}:where([data-slot=button]):where([data-size=sm]){height:calc(var(--spacing) * 8);gap:calc(var(--spacing) * 1.5);border-radius:var(--radius);padding-inline:calc(var(--spacing) * 3)}:where([data-slot=button]):where([data-size=sm]):has(>svg){padding-inline:calc(var(--spacing) * 2.5)}:where([data-slot=button]):where([data-size=lg]){height:calc(var(--spacing) * 10);border-radius:var(--radius);padding-inline:calc(var(--spacing) * 6)}:where([data-slot=button]):where([data-size=lg]):has(>svg){padding-inline:calc(var(--spacing) * 4)}:where([data-slot=button]):where([data-size=icon]){width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}:where([data-slot=button]):where([data-size=icon-sm]){width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}:where([data-slot=button]):where([data-size=icon-lg]){width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}:where([data-slot=button-group]){align-items:stretch;width:fit-content;display:flex}:where([data-slot=button-group]):has(>[data-slot=button-group]){gap:calc(var(--spacing) * 2)}:where([data-slot=button-group])>:focus-visible{z-index:10;position:relative}:where([data-slot=button-group]):has(:is(select[aria-hidden=true]:last-child))>[data-slot=select-trigger]:last-of-type{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}:where([data-slot=button-group])>[data-slot=select-trigger]:not([class*=w-]){width:fit-content}:where([data-slot=button-group])>input{flex:1}:where([data-slot=button-group]):where(:not([data-orientation]))>:not(:first-child){border-left-style:var(--tw-border-style);border-left-width:0;border-top-left-radius:0;border-bottom-left-radius:0}:where([data-slot=button-group]):where(:not([data-orientation]))>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}:where([data-slot=button-group]):where([data-orientation=horizontal])>:not(:first-child){border-left-style:var(--tw-border-style);border-left-width:0;border-top-left-radius:0;border-bottom-left-radius:0}:where([data-slot=button-group]):where([data-orientation=horizontal])>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}:where([data-slot=button-group]):where([data-orientation=vertical]){flex-direction:column}:where([data-slot=button-group]):where([data-orientation=vertical])>:not(:first-child){border-top-style:var(--tw-border-style);border-top-width:0;border-top-left-radius:0;border-top-right-radius:0}:where([data-slot=button-group]):where([data-orientation=vertical])>:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0}:where([data-slot=button-group-separator]){background-color:rgb(var(--input));align-self:stretch;position:relative;margin:calc(var(--spacing) * 0)!important}:where([data-slot=button-group-separator])[data-orientation=vertical]{height:auto}:where([data-slot=card]){gap:calc(var(--spacing) * 6);border-radius:calc(var(--radius) + 4px);border-style:var(--tw-border-style);background-color:rgb(var(--card));padding-block:calc(var(--spacing) * 6);color:rgb(var(--card-foreground));--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);border-width:1px;flex-direction:column;display:flex}:where([data-slot=card-action]){grid-row:1/span 2;grid-column-start:2;place-self:flex-start flex-end}:where([data-slot=card-content]){padding-inline:calc(var(--spacing) * 6)}:where([data-slot=card-description]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--muted-foreground))}:where([data-slot=card-footer]){padding-inline:calc(var(--spacing) * 6);align-items:center;display:flex}:where([data-slot=card-footer]).border-t{padding-top:calc(var(--spacing) * 6)}:where([data-slot=card-header]){align-items:flex-start;gap:calc(var(--spacing) * 2);padding-inline:calc(var(--spacing) * 6);grid-template-rows:auto auto;grid-auto-rows:min-content;display:grid;container:card-header/inline-size}:where([data-slot=card-header]):has([data-slot=card-action]){grid-template-columns:1fr auto}:where([data-slot=card-header]).border-b{padding-bottom:calc(var(--spacing) * 6)}:where([data-slot=card-title]){--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}:where([data-slot=carousel]){position:relative}:where([data-slot=carousel-content]){overflow:hidden}:where([data-slot=carousel-item]){min-width:calc(var(--spacing) * 0);flex:0 0 100%}:where([data-slot=carousel-next]),:where([data-slot=carousel-previous]){width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8);border-radius:3.40282e38px;position:absolute}:where([data-slot=chart]){aspect-ratio:var(--aspect-video);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));justify-content:center;display:flex}:where([data-slot=chart]) .recharts-cartesian-axis-tick text{fill:rgb(var(--muted-foreground))}:where([data-slot=chart]) .recharts-cartesian-grid line[stroke=\#ccc]{stroke:rgb(var(--border))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=chart]) .recharts-cartesian-grid line[stroke=\#ccc]{stroke:color-mix(in oklab, rgb(var(--border)) 50%, transparent)}}:where([data-slot=chart]) .recharts-curve.recharts-tooltip-cursor{stroke:rgb(var(--border))}:where([data-slot=chart]) .recharts-dot[stroke=\#fff]{stroke:#0000}:where([data-slot=chart]) .recharts-layer{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:where([data-slot=chart]) .recharts-layer{outline-offset:2px;outline:2px solid #0000}}:where([data-slot=chart]) .recharts-polar-grid [stroke=\#ccc]{stroke:rgb(var(--border))}:where([data-slot=chart]) .recharts-radial-bar-background-sector,:where([data-slot=chart]) .recharts-rectangle.recharts-tooltip-cursor{fill:rgb(var(--muted))}:where([data-slot=chart]) .recharts-reference-line [stroke=\#ccc]{stroke:rgb(var(--border))}:where([data-slot=chart]) .recharts-sector{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:where([data-slot=chart]) .recharts-sector{outline-offset:2px;outline:2px solid #0000}}:where([data-slot=chart]) .recharts-sector[stroke=\#fff]{stroke:#0000}:where([data-slot=chart]) .recharts-surface{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:where([data-slot=chart]) .recharts-surface{outline-offset:2px;outline:2px solid #0000}}:where([data-slot=checkbox]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--input));--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-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));--tw-outline-style:none;border-radius:4px;outline-style:none;flex-shrink:0}:where([data-slot=checkbox]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=checkbox]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=checkbox]):disabled{cursor:not-allowed;opacity:.5}:where([data-slot=checkbox])[aria-invalid=true]{border-color:rgb(var(--destructive));--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=checkbox])[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=checkbox])[data-state=checked]{border-color:rgb(var(--primary));background-color:rgb(var(--primary));color:rgb(var(--primary-foreground))}:where([data-slot=checkbox]):is(.dark *){background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=checkbox]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}:where([data-slot=checkbox]):is(.dark *)[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=checkbox]):is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=checkbox]):is(.dark *)[data-state=checked]{background-color:rgb(var(--primary))}:where([data-slot=checkbox-indicator]){color:currentColor;justify-content:center;align-items:center;transition-property:none;display:flex}:where([data-slot=code]){border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--border));background-color:rgb(var(--muted));color:rgb(var(--foreground));font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}:where([data-slot=code]):where(:not([data-variant])),:where([data-slot=code]):where([data-variant=inline]){padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));border-radius:.25rem}:where([data-slot=code]):where([data-variant=block]){border-radius:var(--radius);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));word-break:break-all;white-space:pre-wrap;display:block}:where([data-slot=command]){border-radius:var(--radius);background-color:rgb(var(--popover));width:100%;height:100%;color:rgb(var(--popover-foreground));flex-direction:column;display:flex;overflow:hidden}:where([data-slot=command-empty]){padding-block:calc(var(--spacing) * 6);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}:where([data-slot=command-group]){padding:calc(var(--spacing) * 1);color:rgb(var(--foreground));overflow:hidden}:where([data-slot=command-group]) [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:rgb(var(--muted-foreground))}:where([data-slot=command-input]){height:calc(var(--spacing) * 10);border-radius:var(--radius);width:100%;padding-block:calc(var(--spacing) * 3);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;background-color:#0000;outline-style:none;display:flex}@media (forced-colors:active){:where([data-slot=command-input]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=command-input])::placeholder{color:rgb(var(--muted-foreground))}:where([data-slot=command-input]):disabled{cursor:not-allowed;opacity:.5}:where([data-slot=command-input-wrapper]){height:calc(var(--spacing) * 9);align-items:center;gap:calc(var(--spacing) * 2);border-bottom-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * 3);border-bottom-width:1px;display:flex}:where([data-slot=command-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=command-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=command-item]){-webkit-user-select:none;user-select:none}:where([data-slot=command-item])[data-disabled=true]{pointer-events:none;opacity:.5}:where([data-slot=command-item])[data-selected=true]{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=command-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=command-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=command-item]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:where([data-slot=command-list]){max-height:300px;scroll-padding-block:calc(var(--spacing) * 1);overflow:hidden auto}:where([data-slot=command-separator]){margin-inline:calc(var(--spacing) * -1);background-color:rgb(var(--border));height:1px}:where([data-slot=command-shortcut]){font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest);color:rgb(var(--muted-foreground));margin-left:auto}:where([data-slot=context-menu-checkbox-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 8);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=context-menu-checkbox-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=context-menu-checkbox-item]){-webkit-user-select:none;user-select:none}:where([data-slot=context-menu-checkbox-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=context-menu-checkbox-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=context-menu-checkbox-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=context-menu-checkbox-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=context-menu-content]){z-index:50;max-height:var(--radix-context-menu-content-available-height);min-width:8rem;transform-origin:var(--radix-context-menu-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));padding:calc(var(--spacing) * 1);color:rgb(var(--popover-foreground));--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);border-width:1px;overflow:hidden auto}:where([data-slot=context-menu-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=context-menu-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=context-menu-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=context-menu-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=context-menu-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=context-menu-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=context-menu-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=context-menu-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=context-menu-item]){-webkit-user-select:none;user-select:none}:where([data-slot=context-menu-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=context-menu-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=context-menu-item])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=context-menu-item])[data-variant=destructive]{color:rgb(var(--destructive))}:where([data-slot=context-menu-item])[data-variant=destructive]:focus{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=context-menu-item])[data-variant=destructive]:focus{background-color:color-mix(in oklab, rgb(var(--destructive)) 10%, transparent)}}:where([data-slot=context-menu-item])[data-variant=destructive]:focus{color:rgb(var(--destructive))}:where([data-slot=context-menu-item]):is(.dark *)[data-variant=destructive]:focus{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=context-menu-item]):is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=context-menu-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=context-menu-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=context-menu-item]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:is(:where([data-slot=context-menu-item])[data-variant=destructive]>*):is(svg){color:rgb(var(--destructive))!important}:where([data-slot=context-menu-label]){padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:rgb(var(--foreground))}:where([data-slot=context-menu-label])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=context-menu-radio-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 8);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=context-menu-radio-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=context-menu-radio-item]){-webkit-user-select:none;user-select:none}:where([data-slot=context-menu-radio-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=context-menu-radio-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=context-menu-radio-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=context-menu-radio-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=context-menu-separator]){margin-inline:calc(var(--spacing) * -1);margin-block:calc(var(--spacing) * 1);background-color:rgb(var(--border));height:1px}:where([data-slot=context-menu-shortcut]){font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest);color:rgb(var(--muted-foreground));margin-left:auto}:where([data-slot=context-menu-sub-content]){z-index:50;min-width:8rem;transform-origin:var(--radix-context-menu-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));padding:calc(var(--spacing) * 1);color:rgb(var(--popover-foreground));--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);border-width:1px;overflow:hidden}:where([data-slot=context-menu-sub-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=context-menu-sub-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=context-menu-sub-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=context-menu-sub-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=context-menu-sub-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=context-menu-sub-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=context-menu-sub-trigger]){cursor:default;border-radius:calc(var(--radius) - 2px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;align-items:center;display:flex}@media (forced-colors:active){:where([data-slot=context-menu-sub-trigger]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=context-menu-sub-trigger]){-webkit-user-select:none;user-select:none}:where([data-slot=context-menu-sub-trigger]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=context-menu-sub-trigger])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=context-menu-sub-trigger])[data-state=open]{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=context-menu-sub-trigger]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=context-menu-sub-trigger]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=context-menu-sub-trigger]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:where([data-slot=cta-section]){padding-inline:calc(var(--spacing) * 6);padding-block:calc(var(--spacing) * 16)}:where([data-slot=cta-section]):where(:not([data-variant])),:where([data-slot=cta-section]):where([data-variant=centered]){text-align:center}:where([data-slot=cta-section]):where([data-variant=left-aligned]){text-align:left}:where([data-slot=cta-section]):where([data-background=default]){background-color:rgb(var(--background))}:where([data-slot=cta-section]):where(:not([data-background])),:where([data-slot=cta-section]):where([data-background=muted]){background-color:rgb(var(--muted))}:where([data-slot=cta-section]):where([data-background=accent]){background-color:rgb(var(--primary));color:rgb(var(--primary-foreground))}:where([data-slot=cta-section]):where([data-background=subtle]){background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=cta-section]):where([data-background=subtle]){background-color:color-mix(in oklab, rgb(var(--primary)) 5%, transparent)}}:where([data-slot=dialog-close]){top:calc(var(--spacing) * 4);right:calc(var(--spacing) * 4);border-radius:var(--radius-xs);opacity:.7;--tw-ring-offset-color:rgb(var(--background));transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));position:absolute}@media (hover:hover){:where([data-slot=dialog-close]):hover{opacity:1}}:where([data-slot=dialog-close]):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);--tw-ring-color:rgb(var(--ring));--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);--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:where([data-slot=dialog-close]):focus{outline-offset:2px;outline:2px solid #0000}}:where([data-slot=dialog-close]):disabled{pointer-events:none}:where([data-slot=dialog-close])[data-state=open]{background-color:rgb(var(--accent));color:rgb(var(--muted-foreground))}:where([data-slot=dialog-close]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=dialog-close]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=dialog-content]){z-index:50;--tw-translate-x:-50%;--tw-translate-y:-50%;width:100%;max-width:calc(100% - 2rem);translate:var(--tw-translate-x) var(--tw-translate-y);gap:calc(var(--spacing) * 4);border-radius:calc(var(--radius) + 2px);border-style:var(--tw-border-style);background-color:rgb(var(--background));padding:calc(var(--spacing) * 6);--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);--tw-duration:.2s;border-width:1px;transition-duration:.2s;display:grid;position:fixed;top:50%;left:50%}:where([data-slot=dialog-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=dialog-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}@media (min-width:40rem){:where([data-slot=dialog-content]){max-width:var(--container-lg)}}:where([data-slot=dialog-description]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--muted-foreground))}:where([data-slot=dialog-footer]){gap:calc(var(--spacing) * 2);flex-direction:column-reverse;display:flex}@media (min-width:40rem){:where([data-slot=dialog-footer]){flex-direction:row;justify-content:flex-end}}:where([data-slot=dialog-header]){gap:calc(var(--spacing) * 2);text-align:center;flex-direction:column;display:flex}@media (min-width:40rem){:where([data-slot=dialog-header]){text-align:left}}:where([data-slot=dialog-overlay]){inset:calc(var(--spacing) * 0);z-index:50;background-color:#00000080;position:fixed}@supports (color:color-mix(in lab, red, red)){:where([data-slot=dialog-overlay]){background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}:where([data-slot=dialog-overlay])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0}:where([data-slot=dialog-overlay])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0}:where([data-slot=dialog-title]){font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}:where([data-slot=drawer-content]){z-index:50;background-color:rgb(var(--background));flex-direction:column;height:auto;display:flex;position:fixed}:where([data-slot=drawer-description]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--muted-foreground))}:where([data-slot=drawer-footer]){gap:calc(var(--spacing) * 2);padding:calc(var(--spacing) * 4);flex-direction:column;margin-top:auto;display:flex}:where([data-slot=drawer-header]){gap:calc(var(--spacing) * .5);padding:calc(var(--spacing) * 4);flex-direction:column;display:flex}:where([data-slot=drawer-header]):is(:where(.group\/drawer-content)[data-vaul-drawer-direction=bottom] *),:where([data-slot=drawer-header]):is(:where(.group\/drawer-content)[data-vaul-drawer-direction=top] *){text-align:center}@media (min-width:48rem){:where([data-slot=drawer-header]){gap:calc(var(--spacing) * 1.5);text-align:left}}:where([data-slot=drawer-overlay]){inset:calc(var(--spacing) * 0);z-index:50;background-color:#00000080;position:fixed}@supports (color:color-mix(in lab, red, red)){:where([data-slot=drawer-overlay]){background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}:where([data-slot=drawer-overlay])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0}:where([data-slot=drawer-overlay])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0}:where([data-slot=drawer-title]){--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:rgb(var(--foreground))}:where([data-slot=dropdown-menu-checkbox-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 8);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=dropdown-menu-checkbox-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=dropdown-menu-checkbox-item]){-webkit-user-select:none;user-select:none}:where([data-slot=dropdown-menu-checkbox-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=dropdown-menu-checkbox-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=dropdown-menu-checkbox-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=dropdown-menu-checkbox-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=dropdown-menu-content]){z-index:50;max-height:var(--radix-dropdown-menu-content-available-height);min-width:8rem;transform-origin:var(--radix-dropdown-menu-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));padding:calc(var(--spacing) * 1);color:rgb(var(--popover-foreground));--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);border-width:1px;overflow:hidden auto}:where([data-slot=dropdown-menu-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=dropdown-menu-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=dropdown-menu-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=dropdown-menu-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=dropdown-menu-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=dropdown-menu-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=dropdown-menu-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=dropdown-menu-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=dropdown-menu-item]){-webkit-user-select:none;user-select:none}:where([data-slot=dropdown-menu-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=dropdown-menu-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=dropdown-menu-item])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=dropdown-menu-item])[data-variant=destructive]{color:rgb(var(--destructive))}:where([data-slot=dropdown-menu-item])[data-variant=destructive]:focus{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=dropdown-menu-item])[data-variant=destructive]:focus{background-color:color-mix(in oklab, rgb(var(--destructive)) 10%, transparent)}}:where([data-slot=dropdown-menu-item])[data-variant=destructive]:focus{color:rgb(var(--destructive))}:where([data-slot=dropdown-menu-item]):is(.dark *)[data-variant=destructive]:focus{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=dropdown-menu-item]):is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=dropdown-menu-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=dropdown-menu-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=dropdown-menu-item]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:is(:where([data-slot=dropdown-menu-item])[data-variant=destructive]>*):is(svg){color:rgb(var(--destructive))!important}:where([data-slot=dropdown-menu-label]){padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}:where([data-slot=dropdown-menu-label])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=dropdown-menu-radio-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 8);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=dropdown-menu-radio-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=dropdown-menu-radio-item]){-webkit-user-select:none;user-select:none}:where([data-slot=dropdown-menu-radio-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=dropdown-menu-radio-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=dropdown-menu-radio-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=dropdown-menu-radio-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=dropdown-menu-separator]){margin-inline:calc(var(--spacing) * -1);margin-block:calc(var(--spacing) * 1);background-color:rgb(var(--border));height:1px}:where([data-slot=dropdown-menu-shortcut]){font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest);color:rgb(var(--muted-foreground));margin-left:auto}:where([data-slot=dropdown-menu-sub-content]){z-index:50;min-width:8rem;transform-origin:var(--radix-dropdown-menu-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));padding:calc(var(--spacing) * 1);color:rgb(var(--popover-foreground));--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);border-width:1px;overflow:hidden}:where([data-slot=dropdown-menu-sub-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=dropdown-menu-sub-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=dropdown-menu-sub-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=dropdown-menu-sub-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=dropdown-menu-sub-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=dropdown-menu-sub-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=dropdown-menu-sub-trigger]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex}@media (forced-colors:active){:where([data-slot=dropdown-menu-sub-trigger]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=dropdown-menu-sub-trigger]){-webkit-user-select:none;user-select:none}:where([data-slot=dropdown-menu-sub-trigger]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=dropdown-menu-sub-trigger])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=dropdown-menu-sub-trigger])[data-state=open]{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=dropdown-menu-sub-trigger]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=dropdown-menu-sub-trigger]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=dropdown-menu-sub-trigger]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:where([data-slot=empty]){min-width:calc(var(--spacing) * 0);justify-content:center;align-items:center;gap:calc(var(--spacing) * 6);border-radius:calc(var(--radius) + 2px);--tw-border-style:dashed;padding:calc(var(--spacing) * 6);text-align:center;text-wrap:balance;border-style:dashed;flex-direction:column;flex:1;display:flex}@media (min-width:48rem){:where([data-slot=empty]){padding:calc(var(--spacing) * 12)}}:where([data-slot=empty-content]){width:100%;max-width:var(--container-sm);min-width:calc(var(--spacing) * 0);align-items:center;gap:calc(var(--spacing) * 4);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));text-wrap:balance;flex-direction:column;display:flex}:where([data-slot=empty-description]){font-size:var(--text-sm);line-height:var(--leading-relaxed);color:rgb(var(--muted-foreground))}:where([data-slot=empty-description])>a{text-underline-offset:4px;text-decoration-line:underline}:where([data-slot=empty-description])>a:hover{color:rgb(var(--primary))}:where([data-slot=empty-header]){max-width:var(--container-sm);align-items:center;gap:calc(var(--spacing) * 2);text-align:center;flex-direction:column;display:flex}:where([data-slot=empty-media]){margin-bottom:calc(var(--spacing) * 2);flex-shrink:0;justify-content:center;align-items:center;display:flex}:where([data-slot=empty-media]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=empty-media]):where(:not([data-variant])),:where([data-slot=empty-media]):where([data-variant=default]){background-color:#0000}:where([data-slot=empty-media]):where([data-variant=icon]){width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10);border-radius:calc(var(--radius) + 2px);background-color:rgb(var(--muted));color:rgb(var(--foreground));flex-shrink:0;justify-content:center;align-items:center;display:flex}:where([data-slot=empty-media]):where([data-variant=icon]) svg:not([class*=size-]){width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}:where([data-slot=empty-title]){font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}:where([data-slot=field]){gap:calc(var(--spacing) * 3);width:100%;display:flex}:where([data-slot=field])[data-invalid=true]{color:rgb(var(--destructive))}:where([data-slot=field-content]){gap:calc(var(--spacing) * 1.5);flex-direction:column;flex:1;display:flex}:where([data-slot=field-description]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:rgb(var(--muted-foreground))}:where([data-slot=field-description]):is(:where(.group\/field):has([data-orientation=horizontal]) *){text-wrap:balance}:where([data-slot=field-error]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:rgb(var(--destructive))}:where([data-slot=field-group]){gap:calc(var(--spacing) * 7);flex-direction:column;width:100%;display:flex;container:field-group/inline-size}:where([data-slot=field-group])[data-slot=checkbox-group]{gap:calc(var(--spacing) * 3)}:where([data-slot=field-group])>[data-slot=field-group]{gap:calc(var(--spacing) * 4)}:where([data-slot=field-label]){align-items:center;gap:calc(var(--spacing) * 2);width:fit-content;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);display:flex}:where([data-slot=field-label]):is(:where(.group\/field)[data-disabled=true] *){opacity:.5}:where([data-slot=field-legend]){margin-bottom:calc(var(--spacing) * 3);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}:where([data-slot=field-separator]){margin-block:calc(var(--spacing) * -2);height:calc(var(--spacing) * 5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));position:relative}:where([data-slot=field-separator]):is(:where(.group\/field-group)[data-variant=outline] *){margin-bottom:calc(var(--spacing) * -2)}:where([data-slot=field-separator-content]){background-color:rgb(var(--background));width:fit-content;padding-inline:calc(var(--spacing) * 2);color:rgb(var(--muted-foreground));margin-inline:auto;display:block;position:relative}:where([data-slot=field-set]){gap:calc(var(--spacing) * 6);flex-direction:column;display:flex}:where([data-slot=footer]){border-top-style:var(--tw-border-style);border-top-width:1px;border-color:rgb(var(--border));background-color:rgb(var(--background));font-family:Aspekta,ui-sans-serif,system-ui,sans-serif}:where([data-slot=footer]):where(:not([data-variant])),:where([data-slot=footer]):where([data-variant=minimal]){padding-block:calc(var(--spacing) * 8)}:where([data-slot=footer]):where([data-variant=full]){padding-block:calc(var(--spacing) * 12)}:where([data-slot=form-description]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--muted-foreground))}:where([data-slot=form-item]){gap:calc(var(--spacing) * 2);display:grid}:where([data-slot=form-label])[data-error=true]{color:rgb(var(--destructive))}:where([data-slot=form-message]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--destructive))}:where([data-slot=hero]){padding-inline:calc(var(--spacing) * 6);padding-block:calc(var(--spacing) * 24)}:where([data-slot=hero]):where(:not([data-variant])),:where([data-slot=hero]):where([data-variant=centered]){text-align:center}:where([data-slot=hero]):where([data-variant=left-aligned]),:where([data-slot=hero]):where([data-variant=split]){text-align:left}:where([data-slot=hero]):where(:not([data-background])),:where([data-slot=hero]):where([data-background=default]){background-color:rgb(var(--hero-bg))}:where([data-slot=hero]):where([data-background=muted]){background-color:rgb(var(--muted))}:where([data-slot=hero]):where([data-background=accent]){background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=hero]):where([data-background=accent]){background-color:color-mix(in oklab, rgb(var(--primary)) 5%, transparent)}}:where([data-slot=hero]):where([data-background=dark]){background-color:rgb(var(--foreground));color:rgb(var(--background))}:where([data-slot=hover-card-content]){z-index:50;width:calc(var(--spacing) * 64);transform-origin:var(--radix-hover-card-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));padding:calc(var(--spacing) * 4);color:rgb(var(--popover-foreground));--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);--tw-outline-style:none;border-width:1px;outline-style:none}@media (forced-colors:active){:where([data-slot=hover-card-content]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=hover-card-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=hover-card-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=hover-card-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=hover-card-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=hover-card-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=hover-card-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=input]){height:calc(var(--spacing) * 9);width:100%;min-width:calc(var(--spacing) * 0);border-radius:var(--radius);border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--input));padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;background-color:#0000;outline-style:none}:where([data-slot=input]) ::selection{background-color:rgb(var(--primary))}:where([data-slot=input])::selection{background-color:rgb(var(--primary))}:where([data-slot=input]) ::selection{color:rgb(var(--primary-foreground))}:where([data-slot=input])::selection{color:rgb(var(--primary-foreground))}:where([data-slot=input])::file-selector-button{display:inline-flex}:where([data-slot=input])::file-selector-button{height:calc(var(--spacing) * 7)}:where([data-slot=input])::file-selector-button{border-style:var(--tw-border-style);border-width:0}:where([data-slot=input])::file-selector-button{background-color:#0000}:where([data-slot=input])::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}:where([data-slot=input])::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}:where([data-slot=input])::file-selector-button{color:rgb(var(--foreground))}:where([data-slot=input])::placeholder{color:rgb(var(--muted-foreground))}:where([data-slot=input]):disabled{pointer-events:none;cursor:not-allowed;opacity:.5}@media (min-width:48rem){:where([data-slot=input]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}:where([data-slot=input]):is(.dark *){background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=input]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}:where([data-slot=input-group]){border-radius:var(--radius);border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--input));--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);width:100%;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;outline-style:none;align-items:center;display:flex;position:relative}:where([data-slot=input-group]):is(.dark *){background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=input-group]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}:where([data-slot=input-group-addon]){cursor:text;justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);height:auto;padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:rgb(var(--muted-foreground));-webkit-user-select:none;user-select:none;display:flex}:where([data-slot=input-group-addon]):is(:where(.group\/input-group)[data-disabled=true] *){opacity:.5}:where([data-slot=input-group-addon])>kbd{border-radius:calc(var(--radius) - 5px)}:where([data-slot=input-group-addon])>svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=input-group-addon]):where(:not([data-align])){padding-left:calc(var(--spacing) * 3);order:-9999}:where([data-slot=input-group-addon]):where(:not([data-align])):has(>button){margin-left:-.45rem}:where([data-slot=input-group-addon]):where(:not([data-align])):has(>kbd){margin-left:-.35rem}:where([data-slot=input-group-addon]):where([data-align=inline-start]){padding-left:calc(var(--spacing) * 3);order:-9999}:where([data-slot=input-group-addon]):where([data-align=inline-start]):has(>button){margin-left:-.45rem}:where([data-slot=input-group-addon]):where([data-align=inline-start]):has(>kbd){margin-left:-.35rem}:where([data-slot=input-group-addon]):where([data-align=inline-end]){padding-right:calc(var(--spacing) * 3);order:9999}:where([data-slot=input-group-addon]):where([data-align=inline-end]):has(>button){margin-right:-.4rem}:where([data-slot=input-group-addon]):where([data-align=inline-end]):has(>kbd){margin-right:-.35rem}:where([data-slot=input-group-addon]):where([data-align=block-start]){width:100%;padding-inline:calc(var(--spacing) * 3);padding-top:calc(var(--spacing) * 3);order:-9999;justify-content:flex-start}:where([data-slot=input-group-addon]):where([data-align=block-start]):is(:where(.group\/input-group):has(>input) *){padding-top:calc(var(--spacing) * 2.5)}:where([data-slot=input-group-addon]):where([data-align=block-start]).border-b{padding-bottom:calc(var(--spacing) * 3)}:where([data-slot=input-group-addon]):where([data-align=block-end]){width:100%;padding-inline:calc(var(--spacing) * 3);padding-bottom:calc(var(--spacing) * 3);order:9999;justify-content:flex-start}:where([data-slot=input-group-addon]):where([data-align=block-end]):is(:where(.group\/input-group):has(>input) *){padding-bottom:calc(var(--spacing) * 2.5)}:where([data-slot=input-group-addon]):where([data-align=block-end]).border-t{padding-top:calc(var(--spacing) * 3)}:where([data-slot=input-group-button]){align-items:center;gap:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--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);display:flex}:where([data-slot=input-group-button]):where(:not([data-size])){height:calc(var(--spacing) * 6);gap:calc(var(--spacing) * 1);border-radius:calc(var(--radius) - 5px);padding-inline:calc(var(--spacing) * 2)}:where([data-slot=input-group-button]):where(:not([data-size])):has(>svg){padding-inline:calc(var(--spacing) * 2)}:where([data-slot=input-group-button]):where(:not([data-size]))>svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}:where([data-slot=input-group-button]):where([data-size=xs]){height:calc(var(--spacing) * 6);gap:calc(var(--spacing) * 1);border-radius:calc(var(--radius) - 5px);padding-inline:calc(var(--spacing) * 2)}:where([data-slot=input-group-button]):where([data-size=xs]):has(>svg){padding-inline:calc(var(--spacing) * 2)}:where([data-slot=input-group-button]):where([data-size=xs])>svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}:where([data-slot=input-group-button]):where([data-size=sm]){height:calc(var(--spacing) * 8);gap:calc(var(--spacing) * 1.5);border-radius:var(--radius);padding-inline:calc(var(--spacing) * 2.5)}:where([data-slot=input-group-button]):where([data-size=sm]):has(>svg){padding-inline:calc(var(--spacing) * 2.5)}:where([data-slot=input-group-button]):where([data-size=icon-xs]){width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6);border-radius:calc(var(--radius) - 5px);padding:calc(var(--spacing) * 0)}:where([data-slot=input-group-button]):where([data-size=icon-xs]):has(>svg){padding:calc(var(--spacing) * 0)}:where([data-slot=input-group-button]):where([data-size=icon-sm]){width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8);padding:calc(var(--spacing) * 0)}:where([data-slot=input-group-button]):where([data-size=icon-sm]):has(>svg){padding:calc(var(--spacing) * 0)}:where([data-slot=input-group-control]){resize:none;border-style:var(--tw-border-style);padding-block:calc(var(--spacing) * 3);--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);background-color:#0000;border-width:0;border-radius:0;flex:1}:where([data-slot=input-group-control]):focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + 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)}:where([data-slot=input-group-control]):is(.dark *){background-color:#0000}:where([data-slot=input-otp]):disabled{cursor:not-allowed}:where([data-slot=input-otp-group]){align-items:center;display:flex}:where([data-slot=input-otp-slot]){height:calc(var(--spacing) * 9);width:calc(var(--spacing) * 9);border-block-style:var(--tw-border-style);border-block-width:1px;border-right-style:var(--tw-border-style);border-right-width:1px;border-color:rgb(var(--input));font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;outline-style:none;justify-content:center;align-items:center;display:flex;position:relative}:where([data-slot=input-otp-slot]):first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius);border-left-style:var(--tw-border-style);border-left-width:1px}:where([data-slot=input-otp-slot]):last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}:where([data-slot=input-otp-slot])[aria-invalid=true]{border-color:rgb(var(--destructive))}:where([data-slot=input-otp-slot])[data-active=true]{z-index:10;border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=input-otp-slot])[data-active=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=input-otp-slot])[data-active=true][aria-invalid=true]{border-color:rgb(var(--destructive));--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=input-otp-slot])[data-active=true][aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=input-otp-slot]):is(.dark *){background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=input-otp-slot]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}:where([data-slot=input-otp-slot]):is(.dark *)[data-active=true][aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=input-otp-slot]):is(.dark *)[data-active=true][aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=item]){border-radius:var(--radius);border-style:var(--tw-border-style);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));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));--tw-duration:.1s;--tw-outline-style:none;border-width:1px;border-color:#0000;outline-style:none;flex-wrap:wrap;align-items:center;transition-duration:.1s;display:flex}:where([data-slot=item]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=item]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}a:where([data-slot=item]){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))}@media (hover:hover){a:where([data-slot=item]):hover{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){a:where([data-slot=item]):hover{background-color:color-mix(in oklab, rgb(var(--accent)) 50%, transparent)}}}:where([data-slot=item]):where(:not([data-variant])),:where([data-slot=item]):where([data-variant=default]){background-color:#0000}:where([data-slot=item]):where([data-variant=outline]){border-color:rgb(var(--border))}:where([data-slot=item]):where([data-variant=muted]){background-color:rgb(var(--muted))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=item]):where([data-variant=muted]){background-color:color-mix(in oklab, rgb(var(--muted)) 50%, transparent)}}:where([data-slot=item]):where(:not([data-size])),:where([data-slot=item]):where([data-size=default]){gap:calc(var(--spacing) * 4);padding:calc(var(--spacing) * 4)}:where([data-slot=item]):where([data-size=sm]){gap:calc(var(--spacing) * 2.5);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3)}:where([data-slot=item-actions]){align-items:center;gap:calc(var(--spacing) * 2);display:flex}:where([data-slot=item-content]){gap:calc(var(--spacing) * 1);flex-direction:column;flex:1;display:flex}:where([data-slot=item-content])+[data-slot=item-content]{flex:none}:where([data-slot=item-description]){-webkit-line-clamp:2;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);text-wrap:balance;color:rgb(var(--muted-foreground));-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:where([data-slot=item-footer]){justify-content:space-between;align-items:center;gap:calc(var(--spacing) * 2);flex-basis:100%;display:flex}:where([data-slot=item-group]){flex-direction:column;display:flex}:where([data-slot=item-header]){justify-content:space-between;align-items:center;gap:calc(var(--spacing) * 2);flex-basis:100%;display:flex}:where([data-slot=item-media]){justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);flex-shrink:0;display:flex}:where([data-slot=item-media]):is(:where(.group\/item):has([data-slot=item-description]) *){--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y);align-self:flex-start}:where([data-slot=item-media]) svg{pointer-events:none}:where([data-slot=item-media]):where(:not([data-variant])),:where([data-slot=item-media]):where([data-variant=default]){background-color:#0000}:where([data-slot=item-media]):where([data-variant=icon]){width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8);border-radius:calc(var(--radius) - 2px);border-style:var(--tw-border-style);background-color:rgb(var(--muted));border-width:1px}:where([data-slot=item-media]):where([data-variant=icon]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=item-media]):where([data-variant=image]){width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10);border-radius:calc(var(--radius) - 2px);overflow:hidden}:where([data-slot=item-media]):where([data-variant=image]) img{object-fit:cover;width:100%;height:100%}:where([data-slot=item-separator]){margin-block:calc(var(--spacing) * 0)}:where([data-slot=item-title]){align-items:center;gap:calc(var(--spacing) * 2);width:fit-content;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);display:flex}:where([data-slot=kbd]){pointer-events:none;height:calc(var(--spacing) * 5);width:fit-content;min-width:calc(var(--spacing) * 5);justify-content:center;align-items:center;gap:calc(var(--spacing) * 1);border-radius:calc(var(--radius) - 2px);background-color:rgb(var(--muted));padding-inline:calc(var(--spacing) * 1);font-family:Aspekta,ui-sans-serif,system-ui,sans-serif;font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:rgb(var(--muted-foreground));-webkit-user-select:none;user-select:none;display:inline-flex}:where([data-slot=kbd-group]){align-items:center;gap:calc(var(--spacing) * 1);display:inline-flex}:where([data-slot=label]){align-items:center;gap:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);-webkit-user-select:none;user-select:none;display:flex}:where([data-slot=label]):is(:where(.group)[data-disabled=true] *){pointer-events:none;opacity:.5}:where([data-slot=label]):is(:where(.peer):disabled~*){cursor:not-allowed;opacity:.5}:where([data-slot=logo]){display:inline-block}:where([data-slot=logo]):where([data-size=sm]){height:calc(var(--spacing) * 6);width:auto}:where([data-slot=logo]):where(:not([data-size])),:where([data-slot=logo]):where([data-size=md]){height:calc(var(--spacing) * 8);width:auto}:where([data-slot=logo]):where([data-size=lg]){height:calc(var(--spacing) * 10);width:auto}:where([data-slot=logo]):where([data-size=xl]){height:calc(var(--spacing) * 14);width:auto}:where([data-slot=menubar]){height:calc(var(--spacing) * 9);align-items:center;gap:calc(var(--spacing) * 1);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--background));padding:calc(var(--spacing) * 1);--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-width:1px;display:flex}:where([data-slot=menubar-checkbox-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius-xs);padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 8);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=menubar-checkbox-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=menubar-checkbox-item]){-webkit-user-select:none;user-select:none}:where([data-slot=menubar-checkbox-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=menubar-checkbox-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=menubar-checkbox-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=menubar-checkbox-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=menubar-content]){z-index:50;min-width:12rem;transform-origin:var(--radix-menubar-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));padding:calc(var(--spacing) * 1);color:rgb(var(--popover-foreground));--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);border-width:1px;overflow:hidden}:where([data-slot=menubar-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=menubar-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=menubar-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=menubar-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=menubar-content])[data-state=closed]{--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=menubar-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=menubar-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=menubar-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=menubar-item]){-webkit-user-select:none;user-select:none}:where([data-slot=menubar-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=menubar-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=menubar-item])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=menubar-item])[data-variant=destructive]{color:rgb(var(--destructive))}:where([data-slot=menubar-item])[data-variant=destructive]:focus{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=menubar-item])[data-variant=destructive]:focus{background-color:color-mix(in oklab, rgb(var(--destructive)) 10%, transparent)}}:where([data-slot=menubar-item])[data-variant=destructive]:focus{color:rgb(var(--destructive))}:where([data-slot=menubar-item]):is(.dark *)[data-variant=destructive]:focus{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=menubar-item]):is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=menubar-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=menubar-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=menubar-item]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:is(:where([data-slot=menubar-item])[data-variant=destructive]>*):is(svg){color:rgb(var(--destructive))!important}:where([data-slot=menubar-label]){padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}:where([data-slot=menubar-label])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=menubar-radio-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius-xs);padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 8);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=menubar-radio-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=menubar-radio-item]){-webkit-user-select:none;user-select:none}:where([data-slot=menubar-radio-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=menubar-radio-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=menubar-radio-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=menubar-radio-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=menubar-separator]){margin-inline:calc(var(--spacing) * -1);margin-block:calc(var(--spacing) * 1);background-color:rgb(var(--border));height:1px}:where([data-slot=menubar-shortcut]){font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest);color:rgb(var(--muted-foreground));margin-left:auto}:where([data-slot=menubar-sub-content]){z-index:50;min-width:8rem;transform-origin:var(--radix-menubar-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));padding:calc(var(--spacing) * 1);color:rgb(var(--popover-foreground));--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);border-width:1px;overflow:hidden}:where([data-slot=menubar-sub-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=menubar-sub-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=menubar-sub-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=menubar-sub-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=menubar-sub-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=menubar-sub-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=menubar-sub-trigger]){cursor:default;border-radius:calc(var(--radius) - 2px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;-webkit-user-select:none;user-select:none;outline-style:none;align-items:center;display:flex}:where([data-slot=menubar-sub-trigger]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=menubar-sub-trigger])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=menubar-sub-trigger])[data-state=open]{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=menubar-trigger]){border-radius:calc(var(--radius) - 2px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);--tw-outline-style:none;outline-style:none;align-items:center;display:flex}@media (forced-colors:active){:where([data-slot=menubar-trigger]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=menubar-trigger]){-webkit-user-select:none;user-select:none}:where([data-slot=menubar-trigger]):focus,:where([data-slot=menubar-trigger])[data-state=open]{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=navbar]){top:calc(var(--spacing) * 0);right:calc(var(--spacing) * 0);left:calc(var(--spacing) * 0);z-index:50;height:65px;font-family:Aspekta,ui-sans-serif,system-ui,sans-serif;position:fixed}:where([data-slot=navbar]):where(:not([data-variant])){border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgb(var(--border));background-color:rgb(var(--card))}:where([data-slot=navbar]):where(:not([data-variant])):is(.dark *){background-color:rgb(var(--background))}:where([data-slot=navbar]):where([data-variant=solid]){border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgb(var(--border));background-color:rgb(var(--card))}:where([data-slot=navbar]):where([data-variant=solid]):is(.dark *){background-color:rgb(var(--background))}:where([data-slot=navbar]):where([data-variant=transparent]){background-color:#0000}:where([data-slot=navbar]):where([data-variant=minimal]){border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgb(var(--border))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=navbar]):where([data-variant=minimal]){border-color:color-mix(in oklab, rgb(var(--border)) 50%, transparent)}}:where([data-slot=navbar]):where([data-variant=minimal]){background-color:rgb(var(--card))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=navbar]):where([data-variant=minimal]){background-color:color-mix(in oklab, rgb(var(--card)) 80%, transparent)}}:where([data-slot=navbar]):where([data-variant=minimal]){--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,)}:where([data-slot=navbar]):where([data-variant=minimal]):is(.dark *){background-color:rgb(var(--background))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=navbar]):where([data-variant=minimal]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--background)) 80%, transparent)}}:where([data-slot=navbar-actions]){align-items:center;gap:calc(var(--spacing) * 2);display:none}@media (min-width:48rem){:where([data-slot=navbar-actions]){display:flex}}:where([data-slot=navbar-link]){padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);color:rgb(var(--foreground));transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){:where([data-slot=navbar-link]):hover{opacity:.7}}:where([data-slot=navbar-logo]){flex-shrink:0}:where([data-slot=navbar-mobile]){border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgb(var(--border));background-color:rgb(var(--card))}@media (min-width:48rem){:where([data-slot=navbar-mobile]){display:none}}:where([data-slot=navbar-mobile]):is(.dark *){background-color:rgb(var(--background))}:where([data-slot=navbar-nav]){align-items:center;gap:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);display:none}@media (min-width:48rem){:where([data-slot=navbar-nav]){display:flex}}:where([data-slot=navigation-menu]){flex:1;justify-content:center;align-items:center;max-width:max-content;display:flex;position:relative}:where([data-slot=navigation-menu-content]){top:calc(var(--spacing) * 0);left:calc(var(--spacing) * 0);width:100%;padding:calc(var(--spacing) * 2);padding-right:calc(var(--spacing) * 2.5)}:where([data-slot=navigation-menu-content])[data-motion=from-end]{--tw-enter-translate-x:calc(52*var(--spacing))}:where([data-slot=navigation-menu-content])[data-motion=from-start]{--tw-enter-translate-x:calc(52*var(--spacing)*-1)}:where([data-slot=navigation-menu-content])[data-motion=to-end]{--tw-exit-translate-x:calc(52*var(--spacing))}:where([data-slot=navigation-menu-content])[data-motion=to-start]{--tw-exit-translate-x:calc(52*var(--spacing)*-1)}:where([data-slot=navigation-menu-content])[data-motion^=from-]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0}:where([data-slot=navigation-menu-content])[data-motion^=to-]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0}@media (min-width:48rem){:where([data-slot=navigation-menu-content]){width:auto;position:absolute}}:where([data-slot=navigation-menu-indicator]){z-index:1;height:calc(var(--spacing) * 1.5);justify-content:center;align-items:flex-end;display:flex;top:100%;overflow:hidden}:where([data-slot=navigation-menu-indicator])[data-state=hidden]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0}:where([data-slot=navigation-menu-indicator])[data-state=visible]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0}:where([data-slot=navigation-menu-item]){position:relative}:where([data-slot=navigation-menu-link]){gap:calc(var(--spacing) * 1);border-radius:calc(var(--radius) - 2px);padding:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;outline-style:none;flex-direction:column;display:flex}@media (hover:hover){:where([data-slot=navigation-menu-link]):hover{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}}:where([data-slot=navigation-menu-link]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=navigation-menu-link]):focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=navigation-menu-link]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=navigation-menu-link]):focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}:where([data-slot=navigation-menu-link])[data-active=true]{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=navigation-menu-link])[data-active=true]{background-color:color-mix(in oklab, rgb(var(--accent)) 50%, transparent)}}:where([data-slot=navigation-menu-link])[data-active=true]{color:rgb(var(--accent-foreground))}@media (hover:hover){:where([data-slot=navigation-menu-link])[data-active=true]:hover{background-color:rgb(var(--accent))}}:where([data-slot=navigation-menu-link])[data-active=true]:focus{background-color:rgb(var(--accent))}:where([data-slot=navigation-menu-link]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=navigation-menu-link]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:where([data-slot=navigation-menu-list]){justify-content:center;align-items:center;gap:calc(var(--spacing) * 1);flex:1;list-style-type:none;display:flex}:where([data-slot=navigation-menu-viewport]){margin-top:calc(var(--spacing) * 1.5);height:var(--radix-navigation-menu-viewport-height);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));width:100%;color:rgb(var(--popover-foreground));--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);border-width:1px;position:relative;overflow:hidden}:where([data-slot=navigation-menu-viewport])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-scale:.95}:where([data-slot=navigation-menu-viewport])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-scale:.9}@media (min-width:48rem){:where([data-slot=navigation-menu-viewport]){width:var(--radix-navigation-menu-viewport-width)}}:where([data-slot=page-layout]){background-color:rgb(var(--background));min-height:100vh;color:rgb(var(--foreground));flex-direction:column;display:flex}:where([data-slot=page-layout-main]){min-width:calc(var(--spacing) * 0);flex:1}:where([data-slot=page-layout-sidebar]){width:calc(var(--spacing) * 64);border-right-style:var(--tw-border-style);border-right-width:1px;border-color:rgb(var(--border));background-color:rgb(var(--background));flex-shrink:0;display:none}@media (min-width:64rem){:where([data-slot=page-layout-sidebar]){display:block}}:where([data-slot=pagination]){justify-content:center;width:100%;margin-inline:auto;display:flex}:where([data-slot=pagination-content]){align-items:center;gap:calc(var(--spacing) * 1);flex-direction:row;display:flex}:where([data-slot=pagination-ellipsis]){width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9);justify-content:center;align-items:center;display:flex}:where([data-slot=popover-content]){z-index:50;width:calc(var(--spacing) * 72);transform-origin:var(--radix-popover-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));padding:calc(var(--spacing) * 4);color:rgb(var(--popover-foreground));--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);--tw-outline-style:none;border-width:1px;outline-style:none}@media (forced-colors:active){:where([data-slot=popover-content]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=popover-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=popover-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=popover-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=popover-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=popover-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=popover-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=progress]){height:calc(var(--spacing) * 2);background-color:rgb(var(--primary));border-radius:3.40282e38px;width:100%;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){:where([data-slot=progress]){background-color:color-mix(in oklab, rgb(var(--primary)) 20%, transparent)}}:where([data-slot=progress-indicator]){background-color:rgb(var(--primary));width:100%;height:100%;transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));flex:1}:where([data-slot=radio-group]){gap:calc(var(--spacing) * 3);display:grid}:where([data-slot=radio-group-indicator]){justify-content:center;align-items:center;display:flex;position:relative}:where([data-slot=radio-group-item]){aspect-ratio:1;width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--input));color:rgb(var(--primary));--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;border-radius:3.40282e38px;outline-style:none;flex-shrink:0}:where([data-slot=radio-group-item]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=radio-group-item]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=radio-group-item]):disabled{cursor:not-allowed;opacity:.5}:where([data-slot=radio-group-item])[aria-invalid=true]{border-color:rgb(var(--destructive));--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=radio-group-item])[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=radio-group-item]):is(.dark *){background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=radio-group-item]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}:where([data-slot=radio-group-item]):is(.dark *)[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=radio-group-item]):is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=resizable-handle]){background-color:rgb(var(--border));justify-content:center;align-items:center;width:1px;display:flex;position:relative}:where([data-slot=resizable-handle]):after{content:var(--tw-content);content:var(--tw-content);inset-block:calc(var(--spacing) * 0);content:var(--tw-content);content:var(--tw-content);width:calc(var(--spacing) * 1);content:var(--tw-content);--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);position:absolute;left:50%}:where([data-slot=resizable-handle]):focus-visible{--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);--tw-ring-color:rgb(var(--ring));--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:where([data-slot=resizable-handle]):focus-visible{outline-offset:2px;outline:2px solid #0000}}:where([data-slot=resizable-handle])[data-panel-group-direction=vertical]{width:100%;height:1px}:where([data-slot=resizable-handle])[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:calc(var(--spacing) * 0);content:var(--tw-content);height:calc(var(--spacing) * 1);content:var(--tw-content);content:var(--tw-content);--tw-translate-x:calc(var(--spacing) * 0);width:100%;translate:var(--tw-translate-x) var(--tw-translate-y);content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}:where([data-slot=resizable-handle])[data-panel-group-direction=vertical]>div{rotate:90deg}:where([data-slot=resizable-panel-group]){width:100%;height:100%;display:flex}:where([data-slot=resizable-panel-group])[data-panel-group-direction=vertical]{flex-direction:column}:where([data-slot=scroll-area]){position:relative}:where([data-slot=scroll-area-scrollbar]){touch-action:none;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));-webkit-user-select:none;user-select:none;padding:1px;display:flex}:where([data-slot=scroll-area-thumb]){background-color:rgb(var(--border));border-radius:3.40282e38px;flex:1;position:relative}:where([data-slot=scroll-area-viewport]){border-radius:inherit;width:100%;height:100%;transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;outline-style:none}:where([data-slot=scroll-area-viewport]):focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=scroll-area-viewport]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=scroll-area-viewport]):focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}:where([data-slot=section]){padding-block:calc(var(--spacing) * 10)}:where([data-slot=section]):where([data-variant=highlighted]){margin-block:calc(var(--spacing) * 8);background-color:rgb(var(--card))}:where([data-slot=section]):where([data-variant=accent]){margin-block:calc(var(--spacing) * 8);background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=section]):where([data-variant=accent]){background-color:color-mix(in oklab, rgb(var(--primary)) 5%, transparent)}}:where([data-slot=section]):where([data-width=narrow]){max-width:var(--container-3xl);margin-inline:auto}:where([data-slot=section]):where(:not([data-width])),:where([data-slot=section]):where([data-width=default]){max-width:var(--container-5xl);margin-inline:auto}:where([data-slot=section]):where([data-width=wide]){max-width:var(--container-7xl);margin-inline:auto}:where([data-slot=section]):where([data-width=full]){width:100%}:where([data-slot=select-content]){z-index:50;max-height:var(--radix-select-content-available-height);min-width:8rem;transform-origin:var(--radix-select-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));color:rgb(var(--popover-foreground));--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);border-width:1px;position:relative;overflow:hidden auto}:where([data-slot=select-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=select-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=select-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=select-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=select-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=select-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=select-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);width:100%;padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 8);padding-left:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=select-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=select-item]){-webkit-user-select:none;user-select:none}:where([data-slot=select-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=select-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=select-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=select-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=select-item]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:is(:where([data-slot=select-item])>*):is(span):last-child{align-items:center;gap:calc(var(--spacing) * 2);display:flex}:where([data-slot=select-label]){padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:rgb(var(--muted-foreground))}:where([data-slot=select-scroll-down-button]),:where([data-slot=select-scroll-up-button]){cursor:default;padding-block:calc(var(--spacing) * 1);justify-content:center;align-items:center;display:flex}:where([data-slot=select-separator]){pointer-events:none;margin-inline:calc(var(--spacing) * -1);margin-block:calc(var(--spacing) * 1);background-color:rgb(var(--border));height:1px}:where([data-slot=select-trigger]){justify-content:space-between;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius);border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--input));width:fit-content;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));white-space:nowrap;--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;background-color:#0000;outline-style:none;display:flex}:where([data-slot=select-trigger]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=select-trigger]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=select-trigger]):disabled{cursor:not-allowed;opacity:.5}:where([data-slot=select-trigger])[aria-invalid=true]{border-color:rgb(var(--destructive));--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=select-trigger])[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=select-trigger])[data-placeholder]{color:rgb(var(--muted-foreground))}:where([data-slot=select-trigger])[data-size=default]{height:calc(var(--spacing) * 9)}:where([data-slot=select-trigger])[data-size=sm]{height:calc(var(--spacing) * 8)}:is(:where([data-slot=select-trigger])>*)[data-slot=select-value]{-webkit-line-clamp:1;align-items:center;gap:calc(var(--spacing) * 2);-webkit-box-orient:vertical;display:flex;overflow:hidden}:where([data-slot=select-trigger]):is(.dark *){background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=select-trigger]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}@media (hover:hover){:where([data-slot=select-trigger]):is(.dark *):hover{background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=select-trigger]):is(.dark *):hover{background-color:color-mix(in oklab, rgb(var(--input)) 50%, transparent)}}}:where([data-slot=select-trigger]):is(.dark *)[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=select-trigger]):is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=select-trigger]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=select-trigger]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=select-trigger]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:where([data-slot=separator]){background-color:rgb(var(--border));flex-shrink:0}:where([data-slot=separator])[data-orientation=horizontal]{width:100%;height:1px}:where([data-slot=separator])[data-orientation=vertical]{width:1px;height:100%}:where([data-slot=sheet-content]){z-index:50;gap:calc(var(--spacing) * 4);background-color:rgb(var(--background));--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);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));--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out);flex-direction:column;display:flex;position:fixed}:where([data-slot=sheet-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-duration:.3s;transition-duration:.3s}:where([data-slot=sheet-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-duration:.5s;transition-duration:.5s}:where([data-slot=sheet-description]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--muted-foreground))}:where([data-slot=sheet-footer]){gap:calc(var(--spacing) * 2);padding:calc(var(--spacing) * 4);flex-direction:column;margin-top:auto;display:flex}:where([data-slot=sheet-header]){gap:calc(var(--spacing) * 1.5);padding:calc(var(--spacing) * 4);flex-direction:column;display:flex}:where([data-slot=sheet-overlay]){inset:calc(var(--spacing) * 0);z-index:50;background-color:#00000080;position:fixed}@supports (color:color-mix(in lab, red, red)){:where([data-slot=sheet-overlay]){background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}:where([data-slot=sheet-overlay])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0}:where([data-slot=sheet-overlay])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0}:where([data-slot=sheet-title]){--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:rgb(var(--foreground))}:where([data-slot=sidebar]){height:100%;width:var(--sidebar-width);background-color:rgb(var(--sidebar));padding:calc(var(--spacing) * 0);color:rgb(var(--sidebar-foreground));flex-direction:column;display:none}@media (min-width:48rem){:where([data-slot=sidebar]){display:block}}:where([data-slot=sidebar])>button{display:none}:where([data-slot=sidebar-container]){inset-block:calc(var(--spacing) * 0);z-index:10;height:100svh;width:var(--sidebar-width);transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.2s;--tw-ease:linear;transition-duration:.2s;transition-timing-function:linear;display:none;position:fixed}@media (min-width:48rem){:where([data-slot=sidebar-container]){display:flex}}:where([data-slot=sidebar-content]){min-height:calc(var(--spacing) * 0);gap:calc(var(--spacing) * 2);flex-direction:column;flex:1;display:flex;overflow:auto}:where([data-slot=sidebar-content]):is(:where(.group)[data-collapsible=icon] *){overflow:hidden}:where([data-slot=sidebar-footer]){gap:calc(var(--spacing) * 2);padding:calc(var(--spacing) * 2);flex-direction:column;display:flex}:where([data-slot=sidebar-gap]){width:var(--sidebar-width);transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.2s;--tw-ease:linear;background-color:#0000;transition-duration:.2s;transition-timing-function:linear;position:relative}:where([data-slot=sidebar-group]){width:100%;min-width:calc(var(--spacing) * 0);padding:calc(var(--spacing) * 2);flex-direction:column;display:flex;position:relative}:where([data-slot=sidebar-group-action]){top:calc(var(--spacing) * 3.5);right:calc(var(--spacing) * 3);aspect-ratio:1;width:calc(var(--spacing) * 5);border-radius:var(--radius);padding:calc(var(--spacing) * 0);color:rgb(var(--sidebar-foreground));--tw-ring-color:rgb(var(--sidebar-ring));--tw-outline-style:none;outline-style:none;justify-content:center;align-items:center;display:flex;position:absolute}@media (forced-colors:active){:where([data-slot=sidebar-group-action]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=sidebar-group-action]){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))}@media (hover:hover){:where([data-slot=sidebar-group-action]):hover{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground))}}:where([data-slot=sidebar-group-action]):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)}:where([data-slot=sidebar-group-action])>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);flex-shrink:0}:where([data-slot=sidebar-group-content]){width:100%;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}:where([data-slot=sidebar-group-label]){height:calc(var(--spacing) * 8);border-radius:var(--radius);padding-inline:calc(var(--spacing) * 2);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:rgb(var(--sidebar-foreground));flex-shrink:0;align-items:center;display:flex}@supports (color:color-mix(in lab, red, red)){:where([data-slot=sidebar-group-label]){color:color-mix(in oklab, rgb(var(--sidebar-foreground)) 70%, transparent)}}:where([data-slot=sidebar-group-label]){--tw-ring-color:rgb(var(--sidebar-ring));--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:where([data-slot=sidebar-group-label]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=sidebar-group-label]){transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.2s;--tw-ease:linear;transition-duration:.2s;transition-timing-function:linear}:where([data-slot=sidebar-group-label]):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)}:where([data-slot=sidebar-group-label])>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);flex-shrink:0}:where([data-slot=sidebar-header]){gap:calc(var(--spacing) * 2);padding:calc(var(--spacing) * 2);flex-direction:column;display:flex}:where([data-slot=sidebar-inner]){background-color:rgb(var(--sidebar));flex-direction:column;width:100%;height:100%;display:flex}:where([data-slot=sidebar-inner]):is(:where(.group)[data-variant=floating] *){border-radius:calc(var(--radius) + 2px);border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--sidebar-border));--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)}:where([data-slot=sidebar-input]){height:calc(var(--spacing) * 8);background-color:rgb(var(--background));--tw-shadow:0 0 #0000;width:100%;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}:where([data-slot=sidebar-inset]){background-color:rgb(var(--background));flex-direction:column;flex:1;width:100%;display:flex;position:relative}:where([data-slot=sidebar-menu]){width:100%;min-width:calc(var(--spacing) * 0);gap:calc(var(--spacing) * 1);flex-direction:column;display:flex}:where([data-slot=sidebar-menu-action]){top:calc(var(--spacing) * 1.5);right:calc(var(--spacing) * 1);aspect-ratio:1;width:calc(var(--spacing) * 5);border-radius:var(--radius);padding:calc(var(--spacing) * 0);color:rgb(var(--sidebar-foreground));--tw-ring-color:rgb(var(--sidebar-ring));--tw-outline-style:none;outline-style:none;justify-content:center;align-items:center;display:flex;position:absolute}@media (forced-colors:active){:where([data-slot=sidebar-menu-action]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=sidebar-menu-action]){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))}@media (hover:hover){:where([data-slot=sidebar-menu-action]):is(:where(.peer\/menu-button):hover~*){color:rgb(var(--sidebar-accent-foreground))}:where([data-slot=sidebar-menu-action]):hover{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground))}}:where([data-slot=sidebar-menu-action]):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)}:where([data-slot=sidebar-menu-action])>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);flex-shrink:0}:where([data-slot=sidebar-menu-badge]){pointer-events:none;right:calc(var(--spacing) * 1);height:calc(var(--spacing) * 5);min-width:calc(var(--spacing) * 5);border-radius:var(--radius);padding-inline:calc(var(--spacing) * 1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:rgb(var(--sidebar-foreground));--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;display:flex;position:absolute}:where([data-slot=sidebar-menu-button]){align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius);width:100%;padding:calc(var(--spacing) * 2);text-align:left;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-ring-color:rgb(var(--sidebar-ring));--tw-outline-style:none;outline-style:none;display:flex;overflow:hidden}@media (forced-colors:active){:where([data-slot=sidebar-menu-button]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=sidebar-menu-button]){transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}:where([data-slot=sidebar-menu-button]):is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-right:calc(var(--spacing) * 8)}:where([data-slot=sidebar-menu-button]):is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing) * 8)!important;height:calc(var(--spacing) * 8)!important;padding:calc(var(--spacing) * 2)!important}@media (hover:hover){:where([data-slot=sidebar-menu-button]):hover{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground))}}:where([data-slot=sidebar-menu-button]):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)}:where([data-slot=sidebar-menu-button]):active{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground))}:where([data-slot=sidebar-menu-button]):disabled,:where([data-slot=sidebar-menu-button])[aria-disabled=true]{pointer-events:none;opacity:.5}:where([data-slot=sidebar-menu-button])[data-active=true]{background-color:rgb(var(--sidebar-accent));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:rgb(var(--sidebar-accent-foreground))}@media (hover:hover){:where([data-slot=sidebar-menu-button])[data-state=open]:hover{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground))}}:where([data-slot=sidebar-menu-button])>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:where([data-slot=sidebar-menu-button])>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);flex-shrink:0}@media (hover:hover){:where([data-slot=sidebar-menu-button]):where(:not([data-variant])):hover,:where([data-slot=sidebar-menu-button]):where([data-variant=default]):hover{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground))}}:where([data-slot=sidebar-menu-button]):where([data-variant=outline]){background-color:rgb(var(--background));--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-border)));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (hover:hover){:where([data-slot=sidebar-menu-button]):where([data-variant=outline]):hover{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground));--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-accent)));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}:where([data-slot=sidebar-menu-button]):where(:not([data-size])),:where([data-slot=sidebar-menu-button]):where([data-size=default]){height:calc(var(--spacing) * 8);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}:where([data-slot=sidebar-menu-button]):where([data-size=sm]){height:calc(var(--spacing) * 7);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}:where([data-slot=sidebar-menu-button]):where([data-size=lg]){height:calc(var(--spacing) * 12);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}:where([data-slot=sidebar-menu-button]):where([data-size=lg]):is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing) * 0)!important}:where([data-slot=sidebar-menu-item]){position:relative}:where([data-slot=sidebar-menu-skeleton]){height:calc(var(--spacing) * 8);align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius);padding-inline:calc(var(--spacing) * 2);display:flex}:where([data-slot=sidebar-menu-sub]){margin-inline:calc(var(--spacing) * 3.5);min-width:calc(var(--spacing) * 0);--tw-translate-x:1px;translate:var(--tw-translate-x) var(--tw-translate-y);gap:calc(var(--spacing) * 1);border-left-style:var(--tw-border-style);border-left-width:1px;border-color:rgb(var(--sidebar-border));padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * .5);flex-direction:column;display:flex}:where([data-slot=sidebar-menu-sub-button]){height:calc(var(--spacing) * 7);min-width:calc(var(--spacing) * 0);--tw-translate-x:-1px;translate:var(--tw-translate-x) var(--tw-translate-y);align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius);padding-inline:calc(var(--spacing) * 2);color:rgb(var(--sidebar-foreground));--tw-ring-color:rgb(var(--sidebar-ring));--tw-outline-style:none;outline-style:none;display:flex;overflow:hidden}@media (forced-colors:active){:where([data-slot=sidebar-menu-sub-button]){outline-offset:2px;outline:2px solid #0000}}@media (hover:hover){:where([data-slot=sidebar-menu-sub-button]):hover{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground))}}:where([data-slot=sidebar-menu-sub-button]):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)}:where([data-slot=sidebar-menu-sub-button]):active{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground))}:where([data-slot=sidebar-menu-sub-button]):disabled,:where([data-slot=sidebar-menu-sub-button])[aria-disabled=true]{pointer-events:none;opacity:.5}:where([data-slot=sidebar-menu-sub-button])>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:where([data-slot=sidebar-menu-sub-button])>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);color:rgb(var(--sidebar-accent-foreground));flex-shrink:0}:where([data-slot=sidebar-menu-sub-item]){position:relative}:where([data-slot=sidebar-rail]){inset-block:calc(var(--spacing) * 0);z-index:20;width:calc(var(--spacing) * 4);--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-ease:linear;transition-timing-function:linear;display:none;position:absolute}:where([data-slot=sidebar-rail]):is(:where(.group)[data-side=left] *){right:calc(var(--spacing) * -4)}:where([data-slot=sidebar-rail]):is(:where(.group)[data-side=right] *){left:calc(var(--spacing) * 0)}:where([data-slot=sidebar-rail]):after{content:var(--tw-content);content:var(--tw-content);inset-block:calc(var(--spacing) * 0);content:var(--tw-content);content:var(--tw-content);width:2px;position:absolute;left:50%}@media (hover:hover){:where([data-slot=sidebar-rail]):hover:after{content:var(--tw-content);background-color:rgb(var(--sidebar-border))}}@media (min-width:40rem){:where([data-slot=sidebar-rail]){display:flex}}:where([data-slot=sidebar-separator]){margin-inline:calc(var(--spacing) * 2);background-color:rgb(var(--sidebar-border));width:auto}:where([data-slot=sidebar-trigger]){width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}:where([data-slot=sidebar-wrapper]){width:100%;min-height:100svh;display:flex}:where([data-slot=sidebar-wrapper]):has([data-variant=inset]){background-color:rgb(var(--sidebar))}:where([data-slot=skeleton]){animation:var(--animate-pulse);border-radius:var(--radius);background-color:rgb(var(--accent))}:where([data-slot=slider]){touch-action:none;-webkit-user-select:none;user-select:none;align-items:center;width:100%;display:flex;position:relative}:where([data-slot=slider])[data-disabled]{opacity:.5}:where([data-slot=slider])[data-orientation=vertical]{height:100%;min-height:calc(var(--spacing) * 44);flex-direction:column;width:auto}:where([data-slot=slider-range]){background-color:rgb(var(--primary));position:absolute}:where([data-slot=slider-range])[data-orientation=horizontal]{height:100%}:where([data-slot=slider-range])[data-orientation=vertical]{width:100%}:where([data-slot=slider-thumb]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--primary));background-color:var(--color-white);--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);--tw-ring-color:rgb(var(--ring));border-radius:3.40282e38px;flex-shrink:0;display:block}@supports (color:color-mix(in lab, red, red)){:where([data-slot=slider-thumb]){--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=slider-thumb]){transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){:where([data-slot=slider-thumb]):hover{--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)}}:where([data-slot=slider-thumb]):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);--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:where([data-slot=slider-thumb]):focus-visible{outline-offset:2px;outline:2px solid #0000}}:where([data-slot=slider-thumb]):disabled{pointer-events:none;opacity:.5}:where([data-slot=slider-track]){background-color:rgb(var(--muted));border-radius:3.40282e38px;flex-grow:1;position:relative;overflow:hidden}:where([data-slot=slider-track])[data-orientation=horizontal]{height:calc(var(--spacing) * 1.5);width:100%}:where([data-slot=slider-track])[data-orientation=vertical]{height:100%;width:calc(var(--spacing) * 1.5)}:where([data-slot=switch]){height:1.15rem;width:calc(var(--spacing) * 8);border-style:var(--tw-border-style);--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;border-width:1px;border-color:#0000;border-radius:3.40282e38px;outline-style:none;flex-shrink:0;align-items:center;display:inline-flex}:where([data-slot=switch]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=switch]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=switch]):disabled{cursor:not-allowed;opacity:.5}:where([data-slot=switch])[data-state=checked]{background-color:rgb(var(--primary))}:where([data-slot=switch])[data-state=unchecked]{background-color:#7f7f79}:where([data-slot=switch]):is(.dark *)[data-state=unchecked]{background-color:rgb(var(--input))}:where([data-slot=switch-thumb]){pointer-events:none;width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);background-color:rgb(var(--background));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + 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);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));border-radius:3.40282e38px;display:block}:where([data-slot=switch-thumb])[data-state=checked]{--tw-translate-x:calc(100% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}:where([data-slot=switch-thumb])[data-state=unchecked]{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}:where([data-slot=switch-thumb]):is(.dark *)[data-state=checked]{background-color:rgb(var(--primary-foreground))}:where([data-slot=switch-thumb]):is(.dark *)[data-state=unchecked]{background-color:rgb(var(--foreground))}:where([data-slot=table]){caption-side:bottom;width:100%;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}:where([data-slot=table-body]) tr:last-child{border-style:var(--tw-border-style);border-width:0}:where([data-slot=table-caption]){margin-top:calc(var(--spacing) * 4);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--muted-foreground))}:where([data-slot=table-cell]){padding:calc(var(--spacing) * 2);vertical-align:middle;white-space:nowrap}:where([data-slot=table-cell]):has([role=checkbox]){padding-right:calc(var(--spacing) * 0)}:where([data-slot=table-cell])>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}:where([data-slot=table-container]){width:100%;position:relative;overflow-x:auto}:where([data-slot=table-footer]){border-top-style:var(--tw-border-style);background-color:rgb(var(--muted));border-top-width:1px}@supports (color:color-mix(in lab, red, red)){:where([data-slot=table-footer]){background-color:color-mix(in oklab, rgb(var(--muted)) 50%, transparent)}}:where([data-slot=table-footer]){--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}:where([data-slot=table-footer])>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}:where([data-slot=table-head]){height:calc(var(--spacing) * 10);padding-inline:calc(var(--spacing) * 2);text-align:left;vertical-align:middle;--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);white-space:nowrap;color:rgb(var(--foreground))}:where([data-slot=table-head]):has([role=checkbox]){padding-right:calc(var(--spacing) * 0)}:where([data-slot=table-head])>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}:where([data-slot=table-header]) tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}:where([data-slot=table-row]){border-bottom-style:var(--tw-border-style);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));border-bottom-width:1px}@media (hover:hover){:where([data-slot=table-row]):hover{background-color:rgb(var(--muted))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=table-row]):hover{background-color:color-mix(in oklab, rgb(var(--muted)) 50%, transparent)}}}:where([data-slot=table-row])[data-state=selected]{background-color:rgb(var(--muted))}:where([data-slot=tabs]){gap:calc(var(--spacing) * 2);flex-direction:column;display:flex}:where([data-slot=tabs-content]){--tw-outline-style:none;outline-style:none;flex:1}:where([data-slot=tabs-list]){height:calc(var(--spacing) * 9);border-radius:calc(var(--radius) + 2px);background-color:rgb(var(--border));width:fit-content;color:rgb(var(--muted-foreground));justify-content:center;align-items:center;padding:3px;display:inline-flex}:where([data-slot=tabs-trigger]){justify-content:center;align-items:center;gap:calc(var(--spacing) * 1.5);border-radius:var(--radius);border-style:var(--tw-border-style);height:calc(100% - 1px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);white-space:nowrap;color:rgb(var(--foreground));transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));border-width:1px;border-color:#0000;flex:1;display:inline-flex}:where([data-slot=tabs-trigger]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=tabs-trigger]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=tabs-trigger]):focus-visible{outline-style:var(--tw-outline-style);outline-width:1px;outline-color:rgb(var(--ring))}:where([data-slot=tabs-trigger]):disabled{pointer-events:none;opacity:.5}:where([data-slot=tabs-trigger])[data-state=active]{background-color:rgb(var(--card));--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)}:where([data-slot=tabs-trigger]):is(.dark *){color:rgb(var(--muted-foreground))}:where([data-slot=tabs-trigger]):is(.dark *)[data-state=active]{border-color:rgb(var(--input));background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=tabs-trigger]):is(.dark *)[data-state=active]{background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}:where([data-slot=tabs-trigger]):is(.dark *)[data-state=active]{color:rgb(var(--foreground))}:where([data-slot=tabs-trigger]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=tabs-trigger]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=textarea]){field-sizing:content;min-height:calc(var(--spacing) * 16);border-radius:var(--radius);border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--input));width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;background-color:#0000;outline-style:none;display:flex}:where([data-slot=textarea])::placeholder{color:rgb(var(--muted-foreground))}:where([data-slot=textarea]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=textarea]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=textarea]):disabled{cursor:not-allowed;opacity:.5}:where([data-slot=textarea])[aria-invalid=true]{border-color:rgb(var(--destructive));--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=textarea])[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}@media (min-width:48rem){:where([data-slot=textarea]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}:where([data-slot=textarea]):is(.dark *){background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=textarea]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}:where([data-slot=textarea]):is(.dark *)[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=textarea]):is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=toast]){pointer-events:auto;justify-content:space-between;align-items:center;width:100%;display:flex;position:relative}:where(:where([data-slot=toast])>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)))}:where([data-slot=toast]){border-radius:var(--radius);border-style:var(--tw-border-style);padding:calc(var(--spacing) * 6);padding-right:calc(var(--spacing) * 8);--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);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));border-width:1px;overflow:hidden}:where([data-slot=toast])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:.8;--tw-exit-translate-x:calc(1*100%)}:where([data-slot=toast])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-translate-y:calc(1*-100%)}:where([data-slot=toast])[data-swipe=cancel]{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}:where([data-slot=toast])[data-swipe=end]{--tw-translate-x:var(--radix-toast-swipe-end-x);translate:var(--tw-translate-x) var(--tw-translate-y);animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}:where([data-slot=toast])[data-swipe=move]{--tw-translate-x:var(--radix-toast-swipe-move-x);translate:var(--tw-translate-x) var(--tw-translate-y);transition-property:none}@media (min-width:40rem){:where([data-slot=toast])[data-state=open]{--tw-enter-translate-y:calc(1*100%)}}:where([data-slot=toast]):where(:not([data-variant])),:where([data-slot=toast]):where([data-variant=default]){border-style:var(--tw-border-style);background-color:rgb(var(--background));color:rgb(var(--foreground));border-width:1px}:where([data-slot=toast]):where([data-variant=destructive]){border-color:rgb(var(--destructive));background-color:rgb(var(--destructive));color:rgb(var(--destructive-foreground))}:where([data-slot=toggle]){justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);white-space:nowrap;transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;outline-style:none;display:inline-flex}@media (hover:hover){:where([data-slot=toggle]):hover{background-color:rgb(var(--muted));color:rgb(var(--muted-foreground))}}:where([data-slot=toggle]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=toggle]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=toggle]):disabled{pointer-events:none;opacity:.5}:where([data-slot=toggle])[aria-invalid=true]{border-color:rgb(var(--destructive));--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=toggle])[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=toggle])[data-state=on]{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=toggle]):is(.dark *)[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=toggle]):is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=toggle]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=toggle]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=toggle]):where(:not([data-variant])),:where([data-slot=toggle]):where([data-variant=default]){background-color:#0000}:where([data-slot=toggle]):where([data-variant=outline]){border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--input));--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);background-color:#0000}@media (hover:hover){:where([data-slot=toggle]):where([data-variant=outline]):hover{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}}:where([data-slot=toggle]):where(:not([data-size])),:where([data-slot=toggle]):where([data-size=default]){height:calc(var(--spacing) * 9);min-width:calc(var(--spacing) * 9);padding-inline:calc(var(--spacing) * 2)}:where([data-slot=toggle]):where([data-size=sm]){height:calc(var(--spacing) * 8);min-width:calc(var(--spacing) * 8);padding-inline:calc(var(--spacing) * 1.5)}:where([data-slot=toggle]):where([data-size=lg]){height:calc(var(--spacing) * 10);min-width:calc(var(--spacing) * 10);padding-inline:calc(var(--spacing) * 2.5)}:where([data-slot=toggle-group]){border-radius:var(--radius);align-items:center;width:fit-content;display:flex}:where([data-slot=toggle-group])[data-variant=outline]{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}:where([data-slot=toggle-group-item]){min-width:calc(var(--spacing) * 0);--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);border-radius:0;flex:1 0}:where([data-slot=toggle-group-item]):first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}:where([data-slot=toggle-group-item]):last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}:where([data-slot=toggle-group-item]):focus,:where([data-slot=toggle-group-item]):focus-visible{z-index:10}:where([data-slot=toggle-group-item])[data-variant=outline]{border-left-style:var(--tw-border-style);border-left-width:0}:where([data-slot=toggle-group-item])[data-variant=outline]:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}:where([data-slot=tooltip-content]){z-index:50;width:fit-content;transform-origin:var(--radix-tooltip-content-transform-origin);animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);border-radius:var(--radius);background-color:rgb(var(--foreground));padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));text-wrap:balance;color:rgb(var(--background));--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=tooltip-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=tooltip-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=tooltip-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=tooltip-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=tooltip-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:forwards}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{--background:240 240 236;--foreground:22 22 20;--card:249 249 247;--card-foreground:22 22 20;--popover:249 249 247;--popover-foreground:22 22 20;--primary:217 94 42;--primary-foreground:249 249 247;--secondary:240 240 236;--secondary-foreground:47 47 44;--muted:240 240 236;--muted-foreground:87 87 83;--accent:221 221 215;--accent-foreground:22 22 20;--destructive:180 50 50;--destructive-foreground:249 249 247;--border:196 196 189;--input:196 196 189;--ring:217 94 42;--hero-bg:221 221 215;--chart-1:217 94 42;--chart-2:87 87 83;--chart-3:127 127 121;--chart-4:166 166 159;--chart-5:47 47 44;--sidebar:240 240 236;--sidebar-foreground:22 22 20;--sidebar-primary:217 94 42;--sidebar-primary-foreground:249 249 247;--sidebar-accent:196 196 189;--sidebar-accent-foreground:22 22 20;--sidebar-border:196 196 189;--sidebar-ring:217 94 42}.dark{--background:22 22 20;--foreground:249 249 247;--card:47 47 44;--card-foreground:249 249 247;--popover:47 47 44;--popover-foreground:249 249 247;--primary:217 94 42;--primary-foreground:249 249 247;--secondary:87 87 83;--secondary-foreground:249 249 247;--muted:47 47 44;--muted-foreground:196 196 189;--accent:87 87 83;--accent-foreground:249 249 247;--destructive:180 50 50;--destructive-foreground:249 249 247;--border:87 87 83;--input:87 87 83;--ring:217 94 42;--hero-bg:47 47 44;--chart-1:217 94 42;--chart-2:196 196 189;--chart-3:166 166 159;--chart-4:127 127 121;--chart-5:240 240 236;--sidebar:47 47 44;--sidebar-foreground:249 249 247;--sidebar-primary:217 94 42;--sidebar-primary-foreground:249 249 247;--sidebar-accent:87 87 83;--sidebar-accent-foreground:249 249 247;--sidebar-border:87 87 83;--sidebar-ring:217 94 42}@font-face{font-family:Aspekta;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Aspekta-400.woff2)format("woff2")}@font-face{font-family:Aspekta;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/Aspekta-500.woff2)format("woff2")}@font-face{font-family:Aspekta;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/Aspekta-600.woff2)format("woff2")}@font-face{font-family:Aspekta;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/Aspekta-700.woff2)format("woff2")}:root{--radius:.375rem}@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-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-space-x-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:"";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"";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:"";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"";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-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{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:"";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:"";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:"";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:"";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-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0))}}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,auto))))}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,auto))))}to{height:0}}@keyframes caret-blink{0%,70%,to{opacity:1}20%,50%{opacity:0}} \ No newline at end of file +@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-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-space-x-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-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction: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-content:"";--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:forwards;--tw-animation-iteration-count:1;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:"Aspekta", ui-sans-serif, system-ui, sans-serif;--font-serif:"Source Serif 4", "Source Serif Pro", Georgia, serif;--color-red-50:oklch(97.1% .013 17.38);--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-600:oklch(57.7% .245 27.325);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-5xl:64rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .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;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-widest:.1em;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-xs:.125rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm:8px;--aspect-video:16 / 9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Aspekta", ui-sans-serif, system-ui, sans-serif;--default-mono-font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--color-border:rgb(var(--border))}}@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:-.25em}sup{top:-.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}*{border-color:rgb(var(--border))}body{background-color:rgb(var(--background));color:rgb(var(--foreground));font-family:var(--font-sans)}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.\@container\/field-group{container:field-group/inline-size}.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)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.-top-12{top:calc(var(--spacing) * -12)}.top-0{top:calc(var(--spacing) * 0)}.top-1\.5{top:calc(var(--spacing) * 1.5)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-3\.5{top:calc(var(--spacing) * 3.5)}.top-4{top:calc(var(--spacing) * 4)}.top-\[1px\]{top:1px}.top-\[50\%\]{top:50%}.top-\[60\%\]{top:60%}.top-full{top:100%}.-right-12{right:calc(var(--spacing) * -12)}.right-0{right:calc(var(--spacing) * 0)}.right-1{right:calc(var(--spacing) * 1)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.-bottom-12{bottom:calc(var(--spacing) * -12)}.bottom-0{bottom:calc(var(--spacing) * 0)}.-left-12{left:calc(var(--spacing) * -12)}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.left-\[50\%\]{left:50%}.isolate{isolation:isolate}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[1\]{z-index:1}.z-\[100\]{z-index:100}.order-first{order:-9999}.order-last{order:9999}.col-span-2{grid-column:span 2/span 2}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.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)!important}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-3\.5{margin-inline:calc(var(--spacing) * 3.5)}.mx-auto{margin-inline:auto}.-my-2{margin-block:calc(var(--spacing) * -2)}.my-0{margin-block:calc(var(--spacing) * 0)}.my-0\.5{margin-block:calc(var(--spacing) * .5)}.my-1{margin-block:calc(var(--spacing) * 1)}.my-8{margin-block:calc(var(--spacing) * 8)}.-mt-4{margin-top:calc(var(--spacing) * -4)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-auto{margin-top:auto}.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-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-16{margin-bottom:calc(var(--spacing) * 16)}.-ml-4{margin-left:calc(var(--spacing) * -4)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-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}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.field-sizing-content{field-sizing:content}.aspect-square{aspect-ratio:1}.aspect-video{aspect-ratio:var(--aspect-video)}.size-\(--cell-size\){width:var(--cell-size);height:var(--cell-size)}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.size-auto{width:auto;height:auto}.size-full{width:100%;height:100%}.h-\(--cell-size\){height:var(--cell-size)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 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-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.h-24{height:calc(var(--spacing) * 24)}.h-\[1\.15rem\]{height:1.15rem}.h-\[41px\]{height:41px}.h-\[65px\]{height:65px}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-\[var\(--radix-navigation-menu-viewport-height\)\]{height:var(--radix-navigation-menu-viewport-height)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\(--radix-context-menu-content-available-height\){max-height:var(--radix-context-menu-content-available-height)}.max-h-\(--radix-dropdown-menu-content-available-height\){max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.max-h-\[300px\]{max-height:300px}.max-h-screen{max-height:100vh}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-4{min-height:calc(var(--spacing) * 4)}.min-h-16{min-height:calc(var(--spacing) * 16)}.min-h-\[120px\]{min-height:120px}.min-h-\[200px\]{min-height:200px}.min-h-screen{min-height:100vh}.min-h-svh{min-height:100svh}.w-\(--cell-size\){width:var(--cell-size)}.w-\(--sidebar-width\){width:var(--sidebar-width)}.w-0{width:calc(var(--spacing) * 0)}.w-1{width:calc(var(--spacing) * 1)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-20{width:calc(var(--spacing) * 20)}.w-24{width:calc(var(--spacing) * 24)}.w-25{width:calc(var(--spacing) * 25)}.w-30{width:calc(var(--spacing) * 30)}.w-32{width:calc(var(--spacing) * 32)}.w-50{width:calc(var(--spacing) * 50)}.w-62\.5{width:calc(var(--spacing) * 62.5)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-75{width:calc(var(--spacing) * 75)}.w-87\.5{width:calc(var(--spacing) * 87.5)}.w-100{width:calc(var(--spacing) * 100)}.w-125{width:calc(var(--spacing) * 125)}.w-150{width:calc(var(--spacing) * 150)}.w-\[100px\]{width:100px}.w-\[250px\]{width:250px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-\(--skeleton-width\){max-width:var(--skeleton-width)}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-max{max-width:max-content}.max-w-prose{max-width:65ch}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.min-w-\(--cell-size\){min-width:var(--cell-size)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-5{min-width:calc(var(--spacing) * 5)}.min-w-8{min-width:calc(var(--spacing) * 8)}.min-w-9{min-width:calc(var(--spacing) * 9)}.min-w-10{min-width:calc(var(--spacing) * 10)}.min-w-\[8rem\]{min-width:8rem}.min-w-\[12rem\]{min-width:12rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-0{flex-basis:calc(var(--spacing) * 0)}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-\(--radix-context-menu-content-transform-origin\){transform-origin:var(--radix-context-menu-content-transform-origin)}.origin-\(--radix-dropdown-menu-content-transform-origin\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\(--radix-hover-card-content-transform-origin\){transform-origin:var(--radix-hover-card-content-transform-origin)}.origin-\(--radix-menubar-content-transform-origin\){transform-origin:var(--radix-menubar-content-transform-origin)}.origin-\(--radix-popover-content-transform-origin\){transform-origin:var(--radix-popover-content-transform-origin)}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.origin-\(--radix-tooltip-content-transform-origin\){transform-origin:var(--radix-tooltip-content-transform-origin)}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-x-px{--tw-translate-x:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-\[-50\%\]{--tw-translate-x:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-px{--tw-translate-x:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-0\.5{--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[calc\(-50\%_-_2px\)\]{--tw-translate-y:calc(-50% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-caret-blink{animation:1.25s ease-out infinite caret-blink}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-text{cursor:text}.touch-none{touch-action:none}.resize-none{resize:none}.scroll-my-1{scroll-margin-block:calc(var(--spacing) * 1)}.scroll-py-1{scroll-padding-block:calc(var(--spacing) * 1)}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[0_1fr\]{grid-template-columns:0 1fr}.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.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-start{justify-content:flex-start}.justify-items-start{justify-items:start}.gap-0\.5{gap:calc(var(--spacing) * .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-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-7{gap:calc(var(--spacing) * 7)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-12{gap:calc(var(--spacing) * 12)}: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-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-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-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-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-0\.5{row-gap:calc(var(--spacing) * .5)}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\[2px\]{border-radius:2px}.rounded-\[4px\]{border-radius:4px}.rounded-\[calc\(var\(--radius\)-5px\)\]{border-radius:calc(var(--radius) - 5px)}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:calc(var(--radius) + 2px)}.rounded-md{border-radius:var(--radius)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 2px)}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.rounded-xs{border-radius:var(--radius-xs)}.rounded-l-md{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.rounded-tl-sm{border-top-left-radius:calc(var(--radius) - 2px)}.rounded-r-md{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.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-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}.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-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\(--color-border\){border-color:var(--color-border)}.border-background\/20{border-color:rgb(var(--background))}@supports (color:color-mix(in lab, red, red)){.border-background\/20{border-color:color-mix(in oklab, rgb(var(--background)) 20%, transparent)}}.border-border,.border-border\/50{border-color:rgb(var(--border))}@supports (color:color-mix(in lab, red, red)){.border-border\/50{border-color:color-mix(in oklab, rgb(var(--border)) 50%, transparent)}}.border-destructive{border-color:rgb(var(--destructive))}.border-input{border-color:rgb(var(--input))}.border-muted-foreground\/25{border-color:rgb(var(--muted-foreground))}@supports (color:color-mix(in lab, red, red)){.border-muted-foreground\/25{border-color:color-mix(in oklab, rgb(var(--muted-foreground)) 25%, transparent)}}.border-primary{border-color:rgb(var(--primary))}.border-primary-foreground\/20{border-color:rgb(var(--primary-foreground))}@supports (color:color-mix(in lab, red, red)){.border-primary-foreground\/20{border-color:color-mix(in oklab, rgb(var(--primary-foreground)) 20%, transparent)}}.border-sidebar-border{border-color:rgb(var(--sidebar-border))}.border-transparent{border-color:#0000}.border-t-transparent{border-top-color:#0000}.border-l-transparent{border-left-color:#0000}.bg-\(--color-bg\){background-color:var(--color-bg)}.bg-\[\#1a7f37\]{background-color:#1a7f37}.bg-\[\#3b82f6\]{background-color:#3b82f6}.bg-\[\#4b5563\]{background-color:#4b5563}.bg-\[\#9a6700\]{background-color:#9a6700}.bg-\[\#22c55e\]{background-color:#22c55e}.bg-\[\#0969da\]{background-color:#0969da}.bg-\[\#a855f7\]{background-color:#a855f7}.bg-\[\#f97316\]{background-color:#f97316}.bg-\[rgb\(var\(--border\)\)\]{background-color:rgb(var(--border))}.bg-accent,.bg-accent\/10{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){.bg-accent\/10{background-color:color-mix(in oklab, rgb(var(--accent)) 10%, transparent)}}.bg-background{background-color:rgb(var(--background))}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}.bg-border{background-color:rgb(var(--border))}.bg-card,.bg-card\/80{background-color:rgb(var(--card))}@supports (color:color-mix(in lab, red, red)){.bg-card\/80{background-color:color-mix(in oklab, rgb(var(--card)) 80%, transparent)}}.bg-destructive,.bg-destructive\/90{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/90{background-color:color-mix(in oklab, rgb(var(--destructive)) 90%, transparent)}}.bg-foreground{background-color:rgb(var(--foreground))}.bg-hero-bg{background-color:rgb(var(--hero-bg))}.bg-input{background-color:rgb(var(--input))}.bg-muted,.bg-muted\/50{background-color:rgb(var(--muted))}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, rgb(var(--muted)) 50%, transparent)}}.bg-popover{background-color:rgb(var(--popover))}.bg-primary,.bg-primary\/5{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/5{background-color:color-mix(in oklab, rgb(var(--primary)) 5%, transparent)}}.bg-primary\/10{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, rgb(var(--primary)) 10%, transparent)}}.bg-primary\/20{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/20{background-color:color-mix(in oklab, rgb(var(--primary)) 20%, transparent)}}.bg-primary\/80{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/80{background-color:color-mix(in oklab, rgb(var(--primary)) 80%, transparent)}}.bg-primary\/90{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/90{background-color:color-mix(in oklab, rgb(var(--primary)) 90%, transparent)}}.bg-secondary{background-color:rgb(var(--secondary))}.bg-sidebar{background-color:rgb(var(--sidebar))}.bg-sidebar-border{background-color:rgb(var(--sidebar-border))}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-primary\/20{--tw-gradient-from:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.from-primary\/20{--tw-gradient-from:color-mix(in oklab, rgb(var(--primary)) 20%, transparent)}}.from-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-primary\/5{--tw-gradient-to:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.to-primary\/5{--tw-gradient-to:color-mix(in oklab, rgb(var(--primary)) 5%, transparent)}}.to-primary\/5{--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))}.fill-current{fill:currentColor}.fill-foreground{fill:rgb(var(--foreground))}.fill-primary{fill:rgb(var(--primary))}.p-0{padding:calc(var(--spacing) * 0)}.p-1{padding:calc(var(--spacing) * 1)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-\[3px\]{padding:3px}.p-px{padding:1px}.px-\(--cell-size\){padding-inline:var(--cell-size)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.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-6{padding-inline:calc(var(--spacing) * 6)}.py-0{padding-block:calc(var(--spacing) * 0)}.py-0\.5{padding-block:calc(var(--spacing) * .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-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.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-16{padding-block:calc(var(--spacing) * 16)}.py-24{padding-block:calc(var(--spacing) * 24)}.pt-0{padding-top:calc(var(--spacing) * 0)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-16\.25{padding-top:calc(var(--spacing) * 16.25)}.pr-1{padding-right:calc(var(--spacing) * 1)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-2\.5{padding-right:calc(var(--spacing) * 2.5)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-8{padding-left:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.font-sans{font-family:Aspekta,ui-sans-serif,system-ui,sans-serif}.font-serif{font-family:"Source Serif 4",Source Serif Pro,Georgia,serif}.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-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-sm\/relaxed{font-size:var(--text-sm);line-height:var(--leading-relaxed)}.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-\[0\.8rem\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.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-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent-foreground{color:rgb(var(--accent-foreground))}.text-background{color:rgb(var(--background))}.text-card-foreground{color:rgb(var(--card-foreground))}.text-current{color:currentColor}.text-destructive{color:rgb(var(--destructive))}.text-destructive-foreground{color:rgb(var(--destructive-foreground))}.text-foreground,.text-foreground\/50{color:rgb(var(--foreground))}@supports (color:color-mix(in lab, red, red)){.text-foreground\/50{color:color-mix(in oklab, rgb(var(--foreground)) 50%, transparent)}}.text-muted-foreground{color:rgb(var(--muted-foreground))}.text-popover-foreground{color:rgb(var(--popover-foreground))}.text-primary{color:rgb(var(--primary))}.text-primary-foreground,.text-primary-foreground\/80{color:rgb(var(--primary-foreground))}@supports (color:color-mix(in lab, red, red)){.text-primary-foreground\/80{color:color-mix(in oklab, rgb(var(--primary-foreground)) 80%, transparent)}}.text-secondary-foreground{color:rgb(var(--secondary-foreground))}.text-sidebar-foreground,.text-sidebar-foreground\/70{color:rgb(var(--sidebar-foreground))}@supports (color:color-mix(in lab, red, red)){.text-sidebar-foreground\/70{color:color-mix(in oklab, rgb(var(--sidebar-foreground)) 70%, transparent)}}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-foreground{accent-color:rgb(var(--foreground))}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.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-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-border)));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-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)}.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)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--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-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + 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-2{--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)}.ring-destructive\/50{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.ring-destructive\/50{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 50%, transparent)}}.ring-ring,.ring-ring\/50{--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){.ring-ring\/50{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}.ring-sidebar-ring{--tw-ring-color:rgb(var(--sidebar-ring))}.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)}.ring-offset-background{--tw-ring-offset-color:rgb(var(--background))}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.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,)}.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-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,)}.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-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;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))}.transition-none{transition-property:none}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-1000{--tw-duration:1s;transition-duration:1s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.\[--cell-size\:--spacing\(8\)\]{--cell-size:calc(var(--spacing) * 8)}.fade-in{--tw-enter-opacity:0}.fade-out{--tw-exit-opacity:0}.running{animation-play-state:running}.slide-in-from-bottom{--tw-enter-translate-y:100%}.slide-in-from-top{--tw-enter-translate-y:-100%}.zoom-in{--tw-enter-scale:0}.zoom-out{--tw-exit-scale:0}.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *){opacity:1}@media (hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *),.group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *){opacity:1}}.group-has-data-\[sidebar\=menu-action\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-right:calc(var(--spacing) * 8)}.group-has-\[\[data-orientation\=horizontal\]\]\/field\:text-balance:is(:where(.group\/field):has([data-orientation=horizontal]) *){text-wrap:balance}.group-has-\[\[data-slot\=item-description\]\]\/item\:translate-y-0\.5:is(:where(.group\/item):has([data-slot=item-description]) *){--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-has-\[\[data-slot\=item-description\]\]\/item\:self-start:is(:where(.group\/item):has([data-slot=item-description]) *){align-self:flex-start}.group-has-\[\>input\]\/input-group\:pt-2\.5:is(:where(.group\/input-group):has(>input) *){padding-top:calc(var(--spacing) * 2.5)}.group-has-\[\>input\]\/input-group\:pb-2\.5:is(:where(.group\/input-group):has(>input) *){padding-bottom:calc(var(--spacing) * 2.5)}.group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *){margin-top:calc(var(--spacing) * -8)}.group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *){display:none}.group-data-\[collapsible\=icon\]\:size-8\!:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing) * 8)!important;height:calc(var(--spacing) * 8)!important}.group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible=icon] *){width:var(--sidebar-width-icon)}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)))}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\+2px\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)) + 2px)}.group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *){overflow:hidden}.group-data-\[collapsible\=icon\]\:p-0\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing) * 0)!important}.group-data-\[collapsible\=icon\]\:p-2\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing) * 2)!important}.group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *){opacity:0}.group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){right:calc(var(--sidebar-width) * -1)}.group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){left:calc(var(--sidebar-width) * -1)}.group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *){width:calc(var(--spacing) * 0)}.group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *){--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *),.group-data-\[disabled\=true\]\/field\:opacity-50:is(:where(.group\/field)[data-disabled=true] *),.group-data-\[disabled\=true\]\/input-group\:opacity-50:is(:where(.group\/input-group)[data-disabled=true] *){opacity:.5}.group-data-\[focused\=true\]\/day\:relative:is(:where(.group\/day)[data-focused=true] *){position:relative}.group-data-\[focused\=true\]\/day\:z-10:is(:where(.group\/day)[data-focused=true] *){z-index:10}.group-data-\[focused\=true\]\/day\:border-ring:is(:where(.group\/day)[data-focused=true] *){border-color:rgb(var(--ring))}.group-data-\[focused\=true\]\/day\:ring-\[3px\]:is(:where(.group\/day)[data-focused=true] *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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)}.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}.group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side=left] *){right:calc(var(--spacing) * -4)}.group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side=left] *){border-right-style:var(--tw-border-style);border-right-width:1px}.group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side=right] *){left:calc(var(--spacing) * 0)}.group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *){rotate:180deg}.group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side=right] *){border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state=open] *){rotate:180deg}.group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant=floating] *){border-radius:calc(var(--radius) + 2px)}.group-data-\[variant\=floating\]\:border:is(:where(.group)[data-variant=floating] *){border-style:var(--tw-border-style);border-width:1px}.group-data-\[variant\=floating\]\:border-sidebar-border:is(:where(.group)[data-variant=floating] *){border-color:rgb(var(--sidebar-border))}.group-data-\[variant\=floating\]\:shadow-sm:is(:where(.group)[data-variant=floating] *){--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)}.group-data-\[variant\=outline\]\/field-group\:-mb-2:is(:where(.group\/field-group)[data-variant=outline] *){margin-bottom:calc(var(--spacing) * -2)}.group-data-\[vaul-drawer-direction\=bottom\]\/drawer-content\:block:is(:where(.group\/drawer-content)[data-vaul-drawer-direction=bottom] *){display:block}.group-data-\[vaul-drawer-direction\=bottom\]\/drawer-content\:text-center:is(:where(.group\/drawer-content)[data-vaul-drawer-direction=bottom] *),.group-data-\[vaul-drawer-direction\=top\]\/drawer-content\:text-center:is(:where(.group\/drawer-content)[data-vaul-drawer-direction=top] *){text-align:center}.group-data-\[viewport\=false\]\/navigation-menu\:top-full:is(:where(.group\/navigation-menu)[data-viewport=false] *){top:100%}.group-data-\[viewport\=false\]\/navigation-menu\:mt-1\.5:is(:where(.group\/navigation-menu)[data-viewport=false] *){margin-top:calc(var(--spacing) * 1.5)}.group-data-\[viewport\=false\]\/navigation-menu\:overflow-hidden:is(:where(.group\/navigation-menu)[data-viewport=false] *){overflow:hidden}.group-data-\[viewport\=false\]\/navigation-menu\:rounded-md:is(:where(.group\/navigation-menu)[data-viewport=false] *){border-radius:var(--radius)}.group-data-\[viewport\=false\]\/navigation-menu\:border:is(:where(.group\/navigation-menu)[data-viewport=false] *){border-style:var(--tw-border-style);border-width:1px}.group-data-\[viewport\=false\]\/navigation-menu\:bg-popover:is(:where(.group\/navigation-menu)[data-viewport=false] *){background-color:rgb(var(--popover))}.group-data-\[viewport\=false\]\/navigation-menu\:text-popover-foreground:is(:where(.group\/navigation-menu)[data-viewport=false] *){color:rgb(var(--popover-foreground))}.group-data-\[viewport\=false\]\/navigation-menu\:shadow:is(:where(.group\/navigation-menu)[data-viewport=false] *){--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)}.group-data-\[viewport\=false\]\/navigation-menu\:duration-200:is(:where(.group\/navigation-menu)[data-viewport=false] *){--tw-duration:.2s;transition-duration:.2s}.group-\[\.destructive\]\:border-muted\/40:is(:where(.group).destructive *){border-color:rgb(var(--muted))}@supports (color:color-mix(in lab, red, red)){.group-\[\.destructive\]\:border-muted\/40:is(:where(.group).destructive *){border-color:color-mix(in oklab, rgb(var(--muted)) 40%, transparent)}}.group-\[\.destructive\]\:text-red-300:is(:where(.group).destructive *){color:var(--color-red-300)}@media (hover:hover){.peer-hover\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button):hover~*){color:rgb(var(--sidebar-accent-foreground))}}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button)[data-active=true]~*){color:rgb(var(--sidebar-accent-foreground))}.peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*){top:calc(var(--spacing) * 1.5)}.peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*){top:calc(var(--spacing) * 2.5)}.peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*){top:calc(var(--spacing) * 1)}.selection\:bg-primary ::selection{background-color:rgb(var(--primary))}.selection\:bg-primary::selection{background-color:rgb(var(--primary))}.selection\:text-primary-foreground ::selection{color:rgb(var(--primary-foreground))}.selection\:text-primary-foreground::selection{color:rgb(var(--primary-foreground))}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing) * 7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:rgb(var(--foreground))}.placeholder\:text-muted-foreground::placeholder{color:rgb(var(--muted-foreground))}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:calc(var(--spacing) * -2)}.after\:inset-y-0:after{content:var(--tw-content);inset-block:calc(var(--spacing) * 0)}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-1:after{content:var(--tw-content);width:calc(var(--spacing) * 1)}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible=offcanvas] *):after{content:var(--tw-content);left:100%}.first\:rounded-l-md:first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.first\:border-l:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.last\:mt-0:last-child{margin-top:calc(var(--spacing) * 0)}.last\:rounded-r-md:last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:bg-accent:hover{background-color:rgb(var(--accent))}.hover\:bg-background\/10:hover{background-color:rgb(var(--background))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-background\/10:hover{background-color:color-mix(in oklab, rgb(var(--background)) 10%, transparent)}}.hover\:bg-destructive\/90:hover{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, rgb(var(--destructive)) 90%, transparent)}}.hover\:bg-muted:hover,.hover\:bg-muted\/50:hover{background-color:rgb(var(--muted))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab, rgb(var(--muted)) 50%, transparent)}}.hover\:bg-primary-foreground\/10:hover{background-color:rgb(var(--primary-foreground))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary-foreground\/10:hover{background-color:color-mix(in oklab, rgb(var(--primary-foreground)) 10%, transparent)}}.hover\:bg-primary\/90:hover{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, rgb(var(--primary)) 90%, transparent)}}.hover\:bg-secondary:hover,.hover\:bg-secondary\/80:hover{background-color:rgb(var(--secondary))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, rgb(var(--secondary)) 80%, transparent)}}.hover\:bg-sidebar-accent:hover{background-color:rgb(var(--sidebar-accent))}.hover\:text-accent-foreground:hover{color:rgb(var(--accent-foreground))}.hover\:text-foreground:hover{color:rgb(var(--foreground))}.hover\:text-muted-foreground:hover{color:rgb(var(--muted-foreground))}.hover\:text-primary:hover{color:rgb(var(--primary))}.hover\:text-sidebar-accent-foreground:hover{color:rgb(var(--sidebar-accent-foreground))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-70:hover{opacity:.7}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover{--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-accent)));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.hover\:ring-4:hover{--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)}.hover\:group-data-\[collapsible\=offcanvas\]\:bg-sidebar:hover:is(:where(.group)[data-collapsible=offcanvas] *){background-color:rgb(var(--sidebar))}.group-\[\.destructive\]\:hover\:border-destructive\/30:is(:where(.group).destructive *):hover{border-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.group-\[\.destructive\]\:hover\:border-destructive\/30:is(:where(.group).destructive *):hover{border-color:color-mix(in oklab, rgb(var(--destructive)) 30%, transparent)}}.group-\[\.destructive\]\:hover\:bg-destructive:is(:where(.group).destructive *):hover{background-color:rgb(var(--destructive))}.group-\[\.destructive\]\:hover\:text-destructive-foreground:is(:where(.group).destructive *):hover{color:rgb(var(--destructive-foreground))}.group-\[\.destructive\]\:hover\:text-red-50:is(:where(.group).destructive *):hover{color:var(--color-red-50)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:rgb(var(--sidebar-border))}}.focus\:z-10:focus{z-index:10}.focus\:bg-accent:focus{background-color:rgb(var(--accent))}.focus\:text-accent-foreground:focus{color:rgb(var(--accent-foreground))}.focus\:opacity-100:focus{opacity:1}.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-ring:focus{--tw-ring-color:rgb(var(--ring))}.focus\:ring-offset-2:focus{--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\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.group-\[\.destructive\]\:focus\:ring-destructive:is(:where(.group).destructive *):focus{--tw-ring-color:rgb(var(--destructive))}.group-\[\.destructive\]\:focus\:ring-red-400:is(:where(.group).destructive *):focus{--tw-ring-color:var(--color-red-400)}.group-\[\.destructive\]\:focus\:ring-offset-red-600:is(:where(.group).destructive *):focus{--tw-ring-offset-color:var(--color-red-600)}.focus-visible\:z-10:focus-visible{z-index:10}.focus-visible\:border-ring:focus-visible{border-color:rgb(var(--ring))}.focus-visible\:ring-0:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + 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-1:focus-visible{--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)}.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-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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-destructive\/20:focus-visible{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}.focus-visible\:ring-ring:focus-visible,.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus-visible\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:rgb(var(--ring))}.active\:bg-sidebar-accent:active{background-color:rgb(var(--sidebar-accent))}.active\:text-sidebar-accent-foreground:active{color:rgb(var(--sidebar-accent-foreground))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}:where([data-side=left]) .in-data-\[side\=left\]\:cursor-w-resize{cursor:w-resize}:where([data-side=right]) .in-data-\[side\=right\]\:cursor-e-resize{cursor:e-resize}.has-focus\:border-ring:has(:focus){border-color:rgb(var(--ring))}.has-focus\:ring-\[3px\]:has(:focus){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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)}.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}.has-disabled\:opacity-50:has(:disabled){opacity:.5}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[state\=checked\]\:border-primary:has([data-state=checked]){border-color:rgb(var(--primary))}.has-data-\[state\=checked\]\:bg-primary\/5:has([data-state=checked]){background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.has-data-\[state\=checked\]\:bg-primary\/5:has([data-state=checked]){background-color:color-mix(in oklab, rgb(var(--primary)) 5%, transparent)}}.has-data-\[variant\=inset\]\:bg-sidebar:has([data-variant=inset]){background-color:rgb(var(--sidebar))}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:border-ring:has([data-slot=input-group-control]:focus-visible){border-color:rgb(var(--ring))}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-\[3px\]:has([data-slot=input-group-control]:focus-visible){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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)}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-ring\/50:has([data-slot=input-group-control]:focus-visible){--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-ring\/50:has([data-slot=input-group-control]:focus-visible){--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}.has-\[\[data-slot\]\[aria-invalid\=true\]\]\:border-destructive:has([data-slot][aria-invalid=true]){border-color:rgb(var(--destructive))}.has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/20:has([data-slot][aria-invalid=true]){--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/20:has([data-slot][aria-invalid=true]){--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}.has-\[\>\[data-align\=block-end\]\]\:h-auto:has(>[data-align=block-end]){height:auto}.has-\[\>\[data-align\=block-end\]\]\:flex-col:has(>[data-align=block-end]){flex-direction:column}.has-\[\>\[data-align\=block-start\]\]\:h-auto:has(>[data-align=block-start]){height:auto}.has-\[\>\[data-align\=block-start\]\]\:flex-col:has(>[data-align=block-start]){flex-direction:column}.has-\[\>\[data-slot\=button-group\]\]\:gap-2:has(>[data-slot=button-group]){gap:calc(var(--spacing) * 2)}.has-\[\>\[data-slot\=checkbox-group\]\]\:gap-3:has(>[data-slot=checkbox-group]){gap:calc(var(--spacing) * 3)}.has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}.has-\[\>\[data-slot\=field\]\]\:w-full:has(>[data-slot=field]){width:100%}.has-\[\>\[data-slot\=field\]\]\:flex-col:has(>[data-slot=field]){flex-direction:column}.has-\[\>\[data-slot\=field\]\]\:rounded-md:has(>[data-slot=field]){border-radius:var(--radius)}.has-\[\>\[data-slot\=field\]\]\:border:has(>[data-slot=field]){border-style:var(--tw-border-style);border-width:1px}.has-\[\>\[data-slot\=radio-group\]\]\:gap-3:has(>[data-slot=radio-group]){gap:calc(var(--spacing) * 3)}.has-\[\>button\]\:mr-\[-0\.4rem\]:has(>button){margin-right:-.4rem}.has-\[\>button\]\:ml-\[-0\.45rem\]:has(>button){margin-left:-.45rem}.has-\[\>kbd\]\:mr-\[-0\.35rem\]:has(>kbd){margin-right:-.35rem}.has-\[\>kbd\]\:ml-\[-0\.35rem\]:has(>kbd){margin-left:-.35rem}.has-\[\>svg\]\:grid-cols-\[calc\(var\(--spacing\)\*4\)_1fr\]:has(>svg){grid-template-columns:calc(var(--spacing) * 4) 1fr}.has-\[\>svg\]\:gap-x-3:has(>svg){column-gap:calc(var(--spacing) * 3)}.has-\[\>svg\]\:p-0:has(>svg){padding:calc(var(--spacing) * 0)}.has-\[\>svg\]\:px-2:has(>svg){padding-inline:calc(var(--spacing) * 2)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.has-\[\>textarea\]\:h-auto:has(>textarea){height:auto}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:rgb(var(--destructive))}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}.aria-selected\:text-muted-foreground[aria-selected=true]{color:rgb(var(--muted-foreground))}.data-active\:text-primary[data-active]{color:rgb(var(--primary))}.data-active\:opacity-100[data-active]{opacity:1}.data-\[active\=true\]\:z-10[data-active=true]{z-index:10}.data-\[active\=true\]\:border-ring[data-active=true]{border-color:rgb(var(--ring))}.data-\[active\=true\]\:bg-accent\/50[data-active=true]{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){.data-\[active\=true\]\:bg-accent\/50[data-active=true]{background-color:color-mix(in oklab, rgb(var(--accent)) 50%, transparent)}}.data-\[active\=true\]\:bg-sidebar-accent[data-active=true]{background-color:rgb(var(--sidebar-accent))}.data-\[active\=true\]\:font-medium[data-active=true]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-\[active\=true\]\:text-accent-foreground[data-active=true]{color:rgb(var(--accent-foreground))}.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true]{color:rgb(var(--sidebar-accent-foreground))}.data-\[active\=true\]\:ring-\[3px\][data-active=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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)}.data-\[active\=true\]\:ring-ring\/50[data-active=true]{--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){.data-\[active\=true\]\:ring-ring\/50[data-active=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}@media (hover:hover){.data-\[active\=true\]\:hover\:bg-accent[data-active=true]:hover{background-color:rgb(var(--accent))}}.data-\[active\=true\]\:focus\:bg-accent[data-active=true]:focus{background-color:rgb(var(--accent))}.data-\[active\=true\]\:aria-invalid\:border-destructive[data-active=true][aria-invalid=true]{border-color:rgb(var(--destructive))}.data-\[active\=true\]\:aria-invalid\:ring-destructive\/20[data-active=true][aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.data-\[active\=true\]\:aria-invalid\:ring-destructive\/20[data-active=true][aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[error\=true\]\:text-destructive[data-error=true]{color:rgb(var(--destructive))}.data-\[inset\]\:pl-8[data-inset]{padding-left:calc(var(--spacing) * 8)}.data-\[invalid\=true\]\:text-destructive[data-invalid=true]{color:rgb(var(--destructive))}.data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end]{--tw-enter-translate-x:calc(52*var(--spacing))}.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start]{--tw-enter-translate-x:calc(52*var(--spacing)*-1)}.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end]{--tw-exit-translate-x:calc(52*var(--spacing))}.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start]{--tw-exit-translate-x:calc(52*var(--spacing)*-1)}.data-\[motion\^\=from-\]\:animate-in[data-motion^=from-]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.data-\[motion\^\=from-\]\:fade-in[data-motion^=from-]{--tw-enter-opacity:0}.data-\[motion\^\=to-\]\:animate-out[data-motion^=to-]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.data-\[motion\^\=to-\]\:fade-out[data-motion^=to-]{--tw-exit-opacity:0}.data-\[orientation\=horizontal\]\:h-1\.5[data-orientation=horizontal]{height:calc(var(--spacing) * 1.5)}.data-\[orientation\=horizontal\]\:h-full[data-orientation=horizontal]{height:100%}.data-\[orientation\=horizontal\]\:h-px[data-orientation=horizontal]{height:1px}.data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}.data-\[orientation\=vertical\]\:h-auto[data-orientation=vertical]{height:auto}.data-\[orientation\=vertical\]\:h-full[data-orientation=vertical]{height:100%}.data-\[orientation\=vertical\]\:min-h-44[data-orientation=vertical]{min-height:calc(var(--spacing) * 44)}.data-\[orientation\=vertical\]\:w-1\.5[data-orientation=vertical]{width:calc(var(--spacing) * 1.5)}.data-\[orientation\=vertical\]\:w-auto[data-orientation=vertical]{width:auto}.data-\[orientation\=vertical\]\:w-full[data-orientation=vertical]{width:100%}.data-\[orientation\=vertical\]\:w-px[data-orientation=vertical]{width:1px}.data-\[orientation\=vertical\]\:flex-col[data-orientation=vertical]{flex-direction:column}.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical]{height:1px}.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical]{width:100%}.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:calc(var(--spacing) * 0)}.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after{content:var(--tw-content);height:calc(var(--spacing) * 1)}.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after{content:var(--tw-content);width:100%}.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:rgb(var(--muted-foreground))}.data-\[range-end\=true\]\:rounded-md[data-range-end=true]{border-radius:var(--radius)}.data-\[range-end\=true\]\:rounded-r-md[data-range-end=true]{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.data-\[range-end\=true\]\:bg-primary[data-range-end=true]{background-color:rgb(var(--primary))}.data-\[range-end\=true\]\:text-primary-foreground[data-range-end=true]{color:rgb(var(--primary-foreground))}.data-\[range-middle\=true\]\:rounded-none[data-range-middle=true]{border-radius:0}.data-\[range-middle\=true\]\:bg-accent[data-range-middle=true]{background-color:rgb(var(--accent))}.data-\[range-middle\=true\]\:text-accent-foreground[data-range-middle=true]{color:rgb(var(--accent-foreground))}.data-\[range-start\=true\]\:rounded-md[data-range-start=true]{border-radius:var(--radius)}.data-\[range-start\=true\]\:rounded-l-md[data-range-start=true]{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.data-\[range-start\=true\]\:bg-primary[data-range-start=true]{background-color:rgb(var(--primary))}.data-\[range-start\=true\]\:text-primary-foreground[data-range-start=true]{color:rgb(var(--primary-foreground))}.data-\[selected-single\=true\]\:bg-primary[data-selected-single=true]{background-color:rgb(var(--primary))}.data-\[selected-single\=true\]\:text-primary-foreground[data-selected-single=true]{color:rgb(var(--primary-foreground))}.data-\[selected\=true\]\:rounded-none[data-selected=true]{border-radius:0}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:rgb(var(--accent))}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:rgb(var(--accent-foreground))}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[size\=default\]\:h-9[data-size=default]{height:calc(var(--spacing) * 9)}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing) * 8)}:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:color-mix(in oklab, rgb(var(--destructive)) 90%, transparent)}}.data-\[slot\=checkbox-group\]\:gap-3[data-slot=checkbox-group]{gap:calc(var(--spacing) * 3)}:is(.\*\*\:data-\[slot\=command-input-wrapper\]\:h-12 *)[data-slot=command-input-wrapper]{height:calc(var(--spacing) * 12)}:is(.\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:ring-0 *)[data-slot=navigation-menu-link]:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + 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)}:is(.\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:outline-none *)[data-slot=navigation-menu-link]:focus{--tw-outline-style:none;outline-style:none}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-2>*)[data-slot=select-value]{gap:calc(var(--spacing) * 2)}.data-\[state\=active\]\:bg-card[data-state=active]{background-color:rgb(var(--card))}.data-\[state\=active\]\:shadow-sm[data-state=active]{--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)}.data-\[state\=checked\]\:translate-x-\[calc\(100\%-2px\)\][data-state=checked]{--tw-translate-x:calc(100% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=checked\]\:border-primary[data-state=checked]{border-color:rgb(var(--primary))}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:rgb(var(--primary))}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:rgb(var(--primary-foreground))}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))ease-out}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.data-\[state\=closed\]\:duration-300[data-state=closed]{--tw-duration:.3s;transition-duration:.3s}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:fade-out-80[data-state=closed]{--tw-exit-opacity:.8}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-right-full[data-state=closed]{--tw-exit-translate-x:calc(1*100%)}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:animate-out:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:fade-out-0:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=closed]{--tw-exit-opacity:0}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:zoom-out-95:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=hidden\]\:animate-out[data-state=hidden]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.data-\[state\=hidden\]\:fade-out[data-state=hidden]{--tw-exit-opacity:0}.data-\[state\=on\]\:bg-accent[data-state=on]{background-color:rgb(var(--accent))}.data-\[state\=on\]\:bg-primary[data-state=on]{background-color:rgb(var(--primary))}.data-\[state\=on\]\:text-accent-foreground[data-state=on]{color:rgb(var(--accent-foreground))}.data-\[state\=on\]\:text-primary-foreground[data-state=on]{color:rgb(var(--primary-foreground))}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))ease-out}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.data-\[state\=open\]\:bg-accent[data-state=open],.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:color-mix(in oklab, rgb(var(--accent)) 50%, transparent)}}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:rgb(var(--secondary))}.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:rgb(var(--accent-foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:rgb(var(--muted-foreground))}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.data-\[state\=open\]\:duration-500[data-state=open]{--tw-duration:.5s;transition-duration:.5s}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-90[data-state=open]{--tw-enter-scale:.9}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y:calc(1*-100%)}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:animate-in:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:fade-in-0:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=open]{--tw-enter-opacity:0}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:zoom-in-95:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=open]{--tw-enter-scale:.95}@media (hover:hover){.data-\[state\=open\]\:hover\:bg-accent[data-state=open]:hover{background-color:rgb(var(--accent))}.data-\[state\=open\]\:hover\:bg-sidebar-accent[data-state=open]:hover{background-color:rgb(var(--sidebar-accent))}.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground[data-state=open]:hover{color:rgb(var(--sidebar-accent-foreground))}}.data-\[state\=open\]\:focus\:bg-accent[data-state=open]:focus{background-color:rgb(var(--accent))}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:rgb(var(--muted))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-\[\#7F7F79\][data-state=unchecked]{background-color:#7f7f79}.data-\[state\=visible\]\:animate-in[data-state=visible]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.data-\[state\=visible\]\:fade-in[data-state=visible]{--tw-enter-opacity:0}.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x:var(--radix-toast-swipe-end-x);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x:var(--radix-toast-swipe-move-x);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[variant\=destructive\]\:text-destructive[data-variant=destructive]{color:rgb(var(--destructive))}.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab, rgb(var(--destructive)) 10%, transparent)}}.data-\[variant\=destructive\]\:focus\:text-destructive[data-variant=destructive]:focus{color:rgb(var(--destructive))}.data-\[variant\=label\]\:text-sm[data-variant=label]{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.data-\[variant\=legend\]\:text-base[data-variant=legend]{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.data-\[variant\=outline\]\:border-l-0[data-variant=outline]{border-left-style:var(--tw-border-style);border-left-width:0}.data-\[variant\=outline\]\:shadow-xs[data-variant=outline]{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.data-\[variant\=outline\]\:first\:border-l[data-variant=outline]:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.data-\[vaul-drawer-direction\=bottom\]\:inset-x-0[data-vaul-drawer-direction=bottom]{inset-inline:calc(var(--spacing) * 0)}.data-\[vaul-drawer-direction\=bottom\]\:bottom-0[data-vaul-drawer-direction=bottom]{bottom:calc(var(--spacing) * 0)}.data-\[vaul-drawer-direction\=bottom\]\:mt-24[data-vaul-drawer-direction=bottom]{margin-top:calc(var(--spacing) * 24)}.data-\[vaul-drawer-direction\=bottom\]\:max-h-\[80vh\][data-vaul-drawer-direction=bottom]{max-height:80vh}.data-\[vaul-drawer-direction\=bottom\]\:rounded-t-lg[data-vaul-drawer-direction=bottom]{border-top-left-radius:calc(var(--radius) + 2px);border-top-right-radius:calc(var(--radius) + 2px)}.data-\[vaul-drawer-direction\=bottom\]\:border-t[data-vaul-drawer-direction=bottom]{border-top-style:var(--tw-border-style);border-top-width:1px}.data-\[vaul-drawer-direction\=left\]\:inset-y-0[data-vaul-drawer-direction=left]{inset-block:calc(var(--spacing) * 0)}.data-\[vaul-drawer-direction\=left\]\:left-0[data-vaul-drawer-direction=left]{left:calc(var(--spacing) * 0)}.data-\[vaul-drawer-direction\=left\]\:w-3\/4[data-vaul-drawer-direction=left]{width:75%}.data-\[vaul-drawer-direction\=left\]\:border-r[data-vaul-drawer-direction=left]{border-right-style:var(--tw-border-style);border-right-width:1px}.data-\[vaul-drawer-direction\=right\]\:inset-y-0[data-vaul-drawer-direction=right]{inset-block:calc(var(--spacing) * 0)}.data-\[vaul-drawer-direction\=right\]\:right-0[data-vaul-drawer-direction=right]{right:calc(var(--spacing) * 0)}.data-\[vaul-drawer-direction\=right\]\:w-3\/4[data-vaul-drawer-direction=right]{width:75%}.data-\[vaul-drawer-direction\=right\]\:border-l[data-vaul-drawer-direction=right]{border-left-style:var(--tw-border-style);border-left-width:1px}.data-\[vaul-drawer-direction\=top\]\:inset-x-0[data-vaul-drawer-direction=top]{inset-inline:calc(var(--spacing) * 0)}.data-\[vaul-drawer-direction\=top\]\:top-0[data-vaul-drawer-direction=top]{top:calc(var(--spacing) * 0)}.data-\[vaul-drawer-direction\=top\]\:mb-24[data-vaul-drawer-direction=top]{margin-bottom:calc(var(--spacing) * 24)}.data-\[vaul-drawer-direction\=top\]\:max-h-\[80vh\][data-vaul-drawer-direction=top]{max-height:80vh}.data-\[vaul-drawer-direction\=top\]\:rounded-b-lg[data-vaul-drawer-direction=top]{border-bottom-right-radius:calc(var(--radius) + 2px);border-bottom-left-radius:calc(var(--radius) + 2px)}.data-\[vaul-drawer-direction\=top\]\:border-b[data-vaul-drawer-direction=top]{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.nth-last-2\:-mt-1:nth-last-child(2){margin-top:calc(var(--spacing) * -1)}@media (min-width:40rem){.sm\:top-auto{top:auto}.sm\:right-0{right:calc(var(--spacing) * 0)}.sm\:bottom-0{bottom:calc(var(--spacing) * 0)}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-sm{max-width:var(--container-sm)}.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\:flex-col{flex-direction:column}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2\.5{gap:calc(var(--spacing) * 2.5)}.sm\:pr-2\.5{padding-right:calc(var(--spacing) * 2.5)}.sm\:pl-2\.5{padding-left:calc(var(--spacing) * 2.5)}.sm\:text-left{text-align:left}.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))}.data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state=open]{--tw-enter-translate-y:calc(1*100%)}.data-\[vaul-drawer-direction\=left\]\:sm\:max-w-sm[data-vaul-drawer-direction=left],.data-\[vaul-drawer-direction\=right\]\:sm\:max-w-sm[data-vaul-drawer-direction=right]{max-width:var(--container-sm)}}@media (min-width:48rem){.md\:absolute{position:absolute}.md\:col-span-1{grid-column:span 1/span 1}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:w-\[var\(--radix-navigation-menu-viewport-width\)\]{width:var(--radix-navigation-menu-viewport-width)}.md\:w-auto{width:auto}.md\:max-w-\[420px\]{max-width:420px}.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\:flex-row{flex-direction:row}.md\:gap-1\.5{gap:calc(var(--spacing) * 1.5)}.md\:p-12{padding:calc(var(--spacing) * 12)}.md\:text-left{text-align:left}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:opacity-0{opacity:0}.md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant=inset]~*){margin:calc(var(--spacing) * 2)}.md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant=inset]~*){margin-left:calc(var(--spacing) * 0)}.md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant=inset]~*){border-radius:calc(var(--radius) + 4px)}.md\:peer-data-\[variant\=inset\]\:shadow-sm:is(:where(.peer)[data-variant=inset]~*){--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)}.md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2:is(:where(.peer)[data-variant=inset]~*):is(:where(.peer)[data-state=collapsed]~*){margin-left:calc(var(--spacing) * 2)}.md\:after\:hidden:after{content:var(--tw-content);display:none}}@media (min-width:64rem){.lg\:block{display:block}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.lg\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}}@container field-group (min-width:28rem){.\@md\/field-group\:flex-row{flex-direction:row}.\@md\/field-group\:items-center{align-items:center}.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}}.dark\:border-input:is(.dark *){border-color:rgb(var(--input))}.dark\:bg-background:is(.dark *),.dark\:bg-background\/80:is(.dark *){background-color:rgb(var(--background))}@supports (color:color-mix(in lab, red, red)){.dark\:bg-background\/80:is(.dark *){background-color:color-mix(in oklab, rgb(var(--background)) 80%, transparent)}}.dark\:bg-destructive\/60:is(.dark *){background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/60:is(.dark *){background-color:color-mix(in oklab, rgb(var(--destructive)) 60%, transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}.dark\:bg-transparent:is(.dark *){background-color:#0000}.dark\:text-muted-foreground:is(.dark *){color:rgb(var(--muted-foreground))}@media (hover:hover){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:color-mix(in oklab, rgb(var(--accent)) 50%, transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab, rgb(var(--input)) 50%, transparent)}}.dark\:hover\:text-accent-foreground:is(.dark *):hover{color:rgb(var(--accent-foreground))}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}.dark\:has-data-\[state\=checked\]\:bg-primary\/10:is(.dark *):has([data-state=checked]){background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){.dark\:has-data-\[state\=checked\]\:bg-primary\/10:is(.dark *):has([data-state=checked]){background-color:color-mix(in oklab, rgb(var(--primary)) 10%, transparent)}}.dark\:has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/40:is(.dark *):has([data-slot][aria-invalid=true]){--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.dark\:has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/40:is(.dark *):has([data-slot][aria-invalid=true]){--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}.dark\:data-\[active\=true\]\:aria-invalid\:ring-destructive\/40:is(.dark *)[data-active=true][aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.dark\:data-\[active\=true\]\:aria-invalid\:ring-destructive\/40:is(.dark *)[data-active=true][aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}.dark\:data-\[state\=active\]\:border-input:is(.dark *)[data-state=active]{border-color:rgb(var(--input))}.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}.dark\:data-\[state\=active\]\:text-foreground:is(.dark *)[data-state=active]{color:rgb(var(--foreground))}.dark\:data-\[state\=checked\]\:bg-primary:is(.dark *)[data-state=checked]{background-color:rgb(var(--primary))}.dark\:data-\[state\=checked\]\:bg-primary-foreground:is(.dark *)[data-state=checked]{background-color:rgb(var(--primary-foreground))}.dark\:data-\[state\=unchecked\]\:bg-foreground:is(.dark *)[data-state=unchecked]{background-color:rgb(var(--foreground))}.dark\:data-\[state\=unchecked\]\:bg-input:is(.dark *)[data-state=unchecked]{background-color:rgb(var(--input))}.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:rgb(var(--muted-foreground))}.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke=\#ccc]{stroke:rgb(var(--border))}@supports (color:color-mix(in lab, red, red)){.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke=\#ccc]{stroke:color-mix(in oklab, rgb(var(--border)) 50%, transparent)}}.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:rgb(var(--border))}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke=\#fff]{stroke:#0000}.\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer{outline-offset:2px;outline:2px solid #0000}}.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke=\#ccc]{stroke:rgb(var(--border))}.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:rgb(var(--muted))}.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke=\#ccc]{stroke:rgb(var(--border))}.\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector{outline-offset:2px;outline:2px solid #0000}}.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke=\#fff]{stroke:#0000}.\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface{outline-offset:2px;outline:2px solid #0000}}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing) * 1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:rgb(var(--muted-foreground))}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:calc(var(--spacing) * 0)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:calc(var(--spacing) * 5)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:calc(var(--spacing) * 5)}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:calc(var(--spacing) * 12)}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-block:calc(var(--spacing) * 3)}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:calc(var(--spacing) * 5)}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:calc(var(--spacing) * 5)}.\[\&_img\]\:size-full img{width:100%;height:100%}.\[\&_img\]\:object-cover img{object-fit:cover}.\[\&_p\]\:leading-relaxed p{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-6 svg:not([class*=size-]){width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*=text-]){color:rgb(var(--muted-foreground))}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\+\[data-slot\=item-content\]\]\:flex-none+[data-slot=item-content]{flex:none}.\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected=true] button{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:calc(var(--spacing) * 0)}.\[\.border-b\]\:pb-3.border-b{padding-bottom:calc(var(--spacing) * 3)}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing) * 6)}.\[\.border-t\]\:pt-3.border-t{padding-top:calc(var(--spacing) * 3)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing) * 6)}:is(.rtl\:\*\*\:\[\.rdp-button\\_next\>svg\]\:rotate-180:where(:dir(rtl),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_next>svg),:is(.rtl\:\*\*\:\[\.rdp-button\\_previous\>svg\]\:rotate-180:where(:dir(rtl),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_previous>svg){rotate:180deg}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}:is(.data-\[variant\=destructive\]\:\*\:\[svg\]\:\!text-destructive[data-variant=destructive]>*):is(svg){color:rgb(var(--destructive))!important}.\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected=true] button{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.\[\&\>\*\]\:w-full>*{width:100%}.\[\&\>\*\]\:focus-visible\:relative>:focus-visible{position:relative}.\[\&\>\*\]\:focus-visible\:z-10>:focus-visible{z-index:10}.\[\&\>\*\]\:data-\[slot\=field\]\:p-4>[data-slot=field]{padding:calc(var(--spacing) * 4)}@container field-group (min-width:28rem){.\@md\/field-group\:\[\&\>\*\]\:w-auto>*{width:auto}}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-t-none>:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-l-none>:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:border-t-0>:not(:first-child){border-top-style:var(--tw-border-style);border-top-width:0}.\[\&\>\*\:not\(\:first-child\)\]\:border-l-0>:not(:first-child){border-left-style:var(--tw-border-style);border-left-width:0}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-r-none>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-b-none>:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0}.\[\&\>\.sr-only\]\:w-auto>.sr-only{width:auto}.\[\&\>\[data-slot\=field-group\]\]\:gap-4>[data-slot=field-group]{gap:calc(var(--spacing) * 4)}.\[\&\>\[data-slot\=field-label\]\]\:flex-auto>[data-slot=field-label]{flex:auto}@container field-group (min-width:28rem){.\@md\/field-group\:\[\&\>\[data-slot\=field-label\]\]\:flex-auto>[data-slot=field-label]{flex:auto}}.has-\[select\[aria-hidden\=true\]\:last-child\]\:\[\&\>\[data-slot\=select-trigger\]\:last-of-type\]\:rounded-r-md:has(:is(select[aria-hidden=true]:last-child))>[data-slot=select-trigger]:last-of-type{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.\[\&\>\[data-slot\=select-trigger\]\:not\(\[class\*\=\'w-\'\]\)\]\:w-fit>[data-slot=select-trigger]:not([class*=w-]){width:fit-content}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]{margin-top:1px}@container field-group (min-width:28rem){.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]{margin-top:1px}}.\[\&\>a\]\:underline>a{text-decoration-line:underline}.\[\&\>a\]\:underline-offset-4>a{text-underline-offset:4px}.\[\&\>a\:hover\]\:text-primary>a:hover{color:rgb(var(--primary))}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>input\]\:flex-1>input{flex:1}.has-\[\>\[data-align\=block-end\]\]\:\[\&\>input\]\:pt-3:has(>[data-align=block-end])>input{padding-top:calc(var(--spacing) * 3)}.has-\[\>\[data-align\=block-start\]\]\:\[\&\>input\]\:pb-3:has(>[data-align=block-start])>input{padding-bottom:calc(var(--spacing) * 3)}.has-\[\>\[data-align\=inline-end\]\]\:\[\&\>input\]\:pr-2:has(>[data-align=inline-end])>input{padding-right:calc(var(--spacing) * 2)}.has-\[\>\[data-align\=inline-start\]\]\:\[\&\>input\]\:pl-2:has(>[data-align=inline-start])>input{padding-left:calc(var(--spacing) * 2)}.\[\&\>kbd\]\:rounded-\[calc\(var\(--radius\)-5px\)\]>kbd{border-radius:calc(var(--radius) - 5px)}.\[\&\>span\]\:text-xs>span{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&\>span\]\:opacity-70>span{opacity:.7}.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>svg\]\:h-2\.5>svg{height:calc(var(--spacing) * 2.5)}.\[\&\>svg\]\:h-3>svg{height:calc(var(--spacing) * 3)}.\[\&\>svg\]\:w-2\.5>svg{width:calc(var(--spacing) * 2.5)}.\[\&\>svg\]\:w-3>svg{width:calc(var(--spacing) * 3)}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:translate-y-0\.5>svg{--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>svg\]\:text-current>svg{color:currentColor}.\[\&\>svg\]\:text-muted-foreground>svg{color:rgb(var(--muted-foreground))}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:rgb(var(--sidebar-accent-foreground))}.\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5>svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4>svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div{rotate:90deg}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{rotate:180deg}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:calc(var(--spacing) * -2)}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:calc(var(--spacing) * -2)}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-slot=card-content] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent,[data-slot=popover-content] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent{background-color:#0000}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/20{background-color:rgb(var(--background))}@supports (color:color-mix(in lab, red, red)){[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/20{background-color:color-mix(in oklab, rgb(var(--background)) 20%, transparent)}}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:text-background{color:rgb(var(--background))}[data-slot=tooltip-content] .dark\:\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/10:is(.dark *){background-color:rgb(var(--background))}@supports (color:color-mix(in lab, red, red)){[data-slot=tooltip-content] .dark\:\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/10:is(.dark *){background-color:color-mix(in oklab, rgb(var(--background)) 10%, transparent)}}[data-variant=legend]+.\[\[data-variant\=legend\]\+\&\]\:-mt-1\.5{margin-top:calc(var(--spacing) * -1.5)}a.\[a\&\]\: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))}@media (hover:hover){a.\[a\&\]\:hover\:bg-\[\#1a7f37\]\/90:hover{background-color:oklab(52.4411% -.118843 .0741478/.9)}a.\[a\&\]\:hover\:bg-\[\#3b82f6\]\/90:hover{background-color:oklab(62.3083% -.0332476 -.185052/.9)}a.\[a\&\]\:hover\:bg-\[\#4b5563\]\/90:hover{background-color:oklab(44.6112% -.00600769 -.0256175/.9)}a.\[a\&\]\:hover\:bg-\[\#9a6700\]\/90:hover{background-color:oklab(55.4191% .0302415 .112929/.9)}a.\[a\&\]\:hover\:bg-\[\#22c55e\]\/90:hover{background-color:oklab(72.2746% -.165574 .0972219/.9)}a.\[a\&\]\:hover\:bg-\[\#0969da\]\/90:hover{background-color:oklab(53.9924% -.0413103 -.186053/.9)}a.\[a\&\]\:hover\:bg-\[\#a855f7\]\/90:hover{background-color:oklab(62.6846% .129701 -.193012/.9)}a.\[a\&\]\:hover\:bg-\[\#f97316\]\/90:hover{background-color:oklab(70.4871% .125896 .137895/.9)}a.\[a\&\]\:hover\:bg-accent\/10:hover{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-accent\/10:hover{background-color:color-mix(in oklab, rgb(var(--accent)) 10%, transparent)}}a.\[a\&\]\:hover\:bg-accent\/50:hover{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-accent\/50:hover{background-color:color-mix(in oklab, rgb(var(--accent)) 50%, transparent)}}a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, rgb(var(--destructive)) 90%, transparent)}}a.\[a\&\]\:hover\:bg-muted:hover,a.\[a\&\]\:hover\:bg-muted\/80:hover{background-color:rgb(var(--muted))}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-muted\/80:hover{background-color:color-mix(in oklab, rgb(var(--muted)) 80%, transparent)}}a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, rgb(var(--primary)) 90%, transparent)}}a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:rgb(var(--secondary))}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:color-mix(in oklab, rgb(var(--secondary)) 90%, transparent)}}a.\[a\&\]\:hover\:text-accent-foreground:hover{color:rgb(var(--accent-foreground))}}:where([data-slot=accordion-content]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));overflow:hidden}:where([data-slot=accordion-content])[data-state=closed]{animation:accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))ease-out}:where([data-slot=accordion-content])[data-state=open]{animation:accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))ease-out}:where([data-slot=accordion-item]){border-bottom-style:var(--tw-border-style);border-bottom-width:1px}:where([data-slot=accordion-item]):last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}:where([data-slot=accordion-trigger]){justify-content:space-between;align-items:flex-start;gap:calc(var(--spacing) * 4);border-radius:var(--radius);padding-block:calc(var(--spacing) * 4);text-align:left;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;outline-style:none;flex:1;display:flex}@media (hover:hover){:where([data-slot=accordion-trigger]):hover{text-decoration-line:underline}}:where([data-slot=accordion-trigger]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=accordion-trigger]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=accordion-trigger]):disabled{pointer-events:none;opacity:.5}:where([data-slot=accordion-trigger])[data-state=open]>svg{rotate:180deg}:where([data-slot=alert]){align-items:flex-start;row-gap:calc(var(--spacing) * .5);border-radius:calc(var(--radius) + 2px);border-style:var(--tw-border-style);width:100%;padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));border-width:1px;grid-template-columns:0 1fr;display:grid;position:relative}:where([data-slot=alert]):has(>svg){grid-template-columns:calc(var(--spacing) * 4) 1fr;column-gap:calc(var(--spacing) * 3)}:where([data-slot=alert])>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y);color:currentColor}:where([data-slot=alert]):where(:not([data-variant])),:where([data-slot=alert]):where([data-variant=default]){background-color:rgb(var(--card));color:rgb(var(--card-foreground))}:where([data-slot=alert]):where([data-variant=destructive]){background-color:rgb(var(--card));color:rgb(var(--destructive))}:is(:where([data-slot=alert]):where([data-variant=destructive])>*)[data-slot=alert-description]{color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:is(:where([data-slot=alert]):where([data-variant=destructive])>*)[data-slot=alert-description]{color:color-mix(in oklab, rgb(var(--destructive)) 90%, transparent)}}:where([data-slot=alert]):where([data-variant=destructive])>svg{color:currentColor}:where([data-slot=alert-description]){justify-items:start;gap:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--muted-foreground));grid-column-start:2;display:grid}:where([data-slot=alert-description]) p{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}:where([data-slot=alert-dialog-content]){z-index:50;--tw-translate-x:-50%;--tw-translate-y:-50%;width:100%;max-width:calc(100% - 2rem);translate:var(--tw-translate-x) var(--tw-translate-y);gap:calc(var(--spacing) * 4);border-radius:calc(var(--radius) + 2px);border-style:var(--tw-border-style);background-color:rgb(var(--background));padding:calc(var(--spacing) * 6);--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);--tw-duration:.2s;border-width:1px;transition-duration:.2s;display:grid;position:fixed;top:50%;left:50%}:where([data-slot=alert-dialog-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=alert-dialog-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}@media (min-width:40rem){:where([data-slot=alert-dialog-content]){max-width:var(--container-lg)}}:where([data-slot=alert-dialog-description]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--muted-foreground))}:where([data-slot=alert-dialog-footer]){gap:calc(var(--spacing) * 2);flex-direction:column-reverse;display:flex}@media (min-width:40rem){:where([data-slot=alert-dialog-footer]){flex-direction:row;justify-content:flex-end}}:where([data-slot=alert-dialog-header]){gap:calc(var(--spacing) * 2);text-align:center;flex-direction:column;display:flex}@media (min-width:40rem){:where([data-slot=alert-dialog-header]){text-align:left}}:where([data-slot=alert-dialog-overlay]){inset:calc(var(--spacing) * 0);z-index:50;background-color:#00000080;position:fixed}@supports (color:color-mix(in lab, red, red)){:where([data-slot=alert-dialog-overlay]){background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}:where([data-slot=alert-dialog-overlay])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0}:where([data-slot=alert-dialog-overlay])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0}:where([data-slot=alert-dialog-title]){font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}:where([data-slot=alert-title]){-webkit-line-clamp:1;min-height:calc(var(--spacing) * 4);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);-webkit-box-orient:vertical;grid-column-start:2;display:-webkit-box;overflow:hidden}:where([data-slot=avatar]){width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8);border-radius:3.40282e38px;flex-shrink:0;display:flex;position:relative;overflow:hidden}:where([data-slot=avatar-fallback]){background-color:rgb(var(--muted));border-radius:3.40282e38px;justify-content:center;align-items:center;width:100%;height:100%;display:flex}:where([data-slot=avatar-image]){aspect-ratio:1;width:100%;height:100%}:where([data-slot=badge]){justify-content:center;align-items:center;gap:calc(var(--spacing) * 1);border-radius:var(--radius);border-style:var(--tw-border-style);--tw-font-weight:var(--font-weight-medium);width:fit-content;font-weight:var(--font-weight-medium);white-space:nowrap;transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));border-width:1px;flex-shrink:0;display:inline-flex;overflow:hidden}:where([data-slot=badge]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=badge]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=badge])[aria-invalid=true]{border-color:rgb(var(--destructive));--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=badge])[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=badge]):is(.dark *)[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=badge]):is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=badge])>svg{pointer-events:none;width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}:where([data-slot=badge]):where(:not([data-variant])){background-color:rgb(var(--primary));color:rgb(var(--primary-foreground));border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where(:not([data-variant])):hover{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){a:where([data-slot=badge]):where(:not([data-variant])):hover{background-color:color-mix(in oklab, rgb(var(--primary)) 90%, transparent)}}}:where([data-slot=badge]):where([data-variant=default]){background-color:rgb(var(--primary));color:rgb(var(--primary-foreground));border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=default]):hover{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){a:where([data-slot=badge]):where([data-variant=default]):hover{background-color:color-mix(in oklab, rgb(var(--primary)) 90%, transparent)}}}:where([data-slot=badge]):where([data-variant=secondary]){background-color:rgb(var(--secondary));color:rgb(var(--secondary-foreground));border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=secondary]):hover{background-color:rgb(var(--secondary))}@supports (color:color-mix(in lab, red, red)){a:where([data-slot=badge]):where([data-variant=secondary]):hover{background-color:color-mix(in oklab, rgb(var(--secondary)) 90%, transparent)}}}:where([data-slot=badge]):where([data-variant=muted]){background-color:rgb(var(--muted));color:rgb(var(--muted-foreground));border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=muted]):hover{background-color:rgb(var(--muted))}@supports (color:color-mix(in lab, red, red)){a:where([data-slot=badge]):where([data-variant=muted]):hover{background-color:color-mix(in oklab, rgb(var(--muted)) 80%, transparent)}}}:where([data-slot=badge]):where([data-variant=destructive]){background-color:rgb(var(--destructive));color:var(--color-white);border-color:#0000}:where([data-slot=badge]):where([data-variant=destructive]):focus-visible{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=badge]):where([data-variant=destructive]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=badge]):where([data-variant=destructive]):is(.dark *){background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=badge]):where([data-variant=destructive]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--destructive)) 60%, transparent)}}:where([data-slot=badge]):where([data-variant=destructive]):is(.dark *):focus-visible{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=badge]):where([data-variant=destructive]):is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=destructive]):hover{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){a:where([data-slot=badge]):where([data-variant=destructive]):hover{background-color:color-mix(in oklab, rgb(var(--destructive)) 90%, transparent)}}}:where([data-slot=badge]):where([data-variant=outline]){color:rgb(var(--foreground))}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=outline]):hover{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){a:where([data-slot=badge]):where([data-variant=outline]):hover{background-color:color-mix(in oklab, rgb(var(--accent)) 10%, transparent)}}a:where([data-slot=badge]):where([data-variant=outline]):hover{color:rgb(var(--accent-foreground))}}:where([data-slot=badge]):where([data-variant=success]){color:var(--color-white);background-color:#1a7f37;border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=success]):hover{background-color:oklab(52.4411% -.118843 .0741478/.9)}}:where([data-slot=badge]):where([data-variant=warning]){color:var(--color-white);background-color:#9a6700;border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=warning]):hover{background-color:oklab(55.4191% .0302415 .112929/.9)}}:where([data-slot=badge]):where([data-variant=info]){color:var(--color-white);background-color:#0969da;border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=info]):hover{background-color:oklab(53.9924% -.0413103 -.186053/.9)}}:where([data-slot=badge]):where([data-variant=tag]){border-color:rgb(var(--border));background-color:rgb(var(--card));color:rgb(var(--foreground))}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=tag]):hover{background-color:rgb(var(--muted))}}:where([data-slot=badge]):where([data-variant=value]){background-color:rgb(var(--muted));color:rgb(var(--foreground));border-color:#0000;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=value]):hover{background-color:rgb(var(--muted))}@supports (color:color-mix(in lab, red, red)){a:where([data-slot=badge]):where([data-variant=value]):hover{background-color:color-mix(in oklab, rgb(var(--muted)) 80%, transparent)}}}:where([data-slot=badge]):where([data-variant=whatsapp]){color:var(--color-white);background-color:#22c55e;border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=whatsapp]):hover{background-color:oklab(72.2746% -.165574 .0972219/.9)}}:where([data-slot=badge]):where([data-variant=email]){color:var(--color-white);background-color:#4b5563;border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=email]):hover{background-color:oklab(44.6112% -.00600769 -.0256175/.9)}}:where([data-slot=badge]):where([data-variant=telegram]){color:var(--color-white);background-color:#3b82f6;border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=telegram]):hover{background-color:oklab(62.3083% -.0332476 -.185052/.9)}}:where([data-slot=badge]):where([data-variant=zulip]){color:var(--color-white);background-color:#a855f7;border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=zulip]):hover{background-color:oklab(62.6846% .129701 -.193012/.9)}}:where([data-slot=badge]):where([data-variant=platform]){color:var(--color-white);background-color:#f97316;border-color:#0000}@media (hover:hover){a:where([data-slot=badge]):where([data-variant=platform]):hover{background-color:oklab(70.4871% .125896 .137895/.9)}}:where([data-slot=badge]):where([data-size=sm]){padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * 0);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}:where([data-slot=badge]):where(:not([data-size])),:where([data-slot=badge]):where([data-size=default]){padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * .5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}:where([data-slot=badge]):where([data-size=lg]){padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}:where([data-slot=badge]):where([data-size=lg])>svg{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}:where([data-slot=breadcrumb-ellipsis]){width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9);justify-content:center;align-items:center;display:flex}:where([data-slot=breadcrumb-item]){align-items:center;gap:calc(var(--spacing) * 1.5);display:inline-flex}:where([data-slot=breadcrumb-link]){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))}@media (hover:hover){:where([data-slot=breadcrumb-link]):hover{color:rgb(var(--foreground))}}:where([data-slot=breadcrumb-list]){align-items:center;gap:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));overflow-wrap:break-word;color:rgb(var(--muted-foreground));flex-wrap:wrap;display:flex}@media (min-width:40rem){:where([data-slot=breadcrumb-list]){gap:calc(var(--spacing) * 2.5)}}:where([data-slot=breadcrumb-page]){--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:rgb(var(--foreground))}:where([data-slot=breadcrumb-separator])>svg{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}:where([data-slot=button]){justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);white-space:nowrap;transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;outline-style:none;flex-shrink:0;display:inline-flex}:where([data-slot=button]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=button]):disabled{pointer-events:none;opacity:.5}:where([data-slot=button])[aria-invalid=true]{border-color:rgb(var(--destructive));--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button])[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=button]):is(.dark *)[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=button]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=button]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=button]):where(:not([data-variant])){background-color:rgb(var(--primary));color:rgb(var(--primary-foreground))}@media (hover:hover){:where([data-slot=button]):where(:not([data-variant])):hover{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where(:not([data-variant])):hover{background-color:color-mix(in oklab, rgb(var(--primary)) 90%, transparent)}}}:where([data-slot=button]):where([data-variant=default]){background-color:rgb(var(--primary));color:rgb(var(--primary-foreground))}@media (hover:hover){:where([data-slot=button]):where([data-variant=default]):hover{background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=default]):hover{background-color:color-mix(in oklab, rgb(var(--primary)) 90%, transparent)}}}:where([data-slot=button]):where([data-variant=destructive]){background-color:rgb(var(--destructive));color:var(--color-white)}@media (hover:hover){:where([data-slot=button]):where([data-variant=destructive]):hover{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=destructive]):hover{background-color:color-mix(in oklab, rgb(var(--destructive)) 90%, transparent)}}}:where([data-slot=button]):where([data-variant=destructive]):focus-visible{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=destructive]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=button]):where([data-variant=destructive]):is(.dark *){background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=destructive]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--destructive)) 60%, transparent)}}:where([data-slot=button]):where([data-variant=destructive]):is(.dark *):focus-visible{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=destructive]):is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=button]):where([data-variant=outline]){border-style:var(--tw-border-style);background-color:rgb(var(--background));--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-width:1px}@media (hover:hover){:where([data-slot=button]):where([data-variant=outline]):hover{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}}:where([data-slot=button]):where([data-variant=outline]):is(.dark *){border-color:rgb(var(--input));background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=outline]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}@media (hover:hover){:where([data-slot=button]):where([data-variant=outline]):is(.dark *):hover{background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=outline]):is(.dark *):hover{background-color:color-mix(in oklab, rgb(var(--input)) 50%, transparent)}}}:where([data-slot=button]):where([data-variant=secondary]){background-color:rgb(var(--secondary));color:rgb(var(--secondary-foreground))}@media (hover:hover){:where([data-slot=button]):where([data-variant=secondary]):hover{background-color:rgb(var(--secondary))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=secondary]):hover{background-color:color-mix(in oklab, rgb(var(--secondary)) 80%, transparent)}}:where([data-slot=button]):where([data-variant=ghost]):hover{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=button]):where([data-variant=ghost]):is(.dark *):hover{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=button]):where([data-variant=ghost]):is(.dark *):hover{background-color:color-mix(in oklab, rgb(var(--accent)) 50%, transparent)}}}:where([data-slot=button]):where([data-variant=link]){color:rgb(var(--primary));text-underline-offset:4px}@media (hover:hover){:where([data-slot=button]):where([data-variant=link]):hover{text-decoration-line:underline}}:where([data-slot=button]):where(:not([data-size])){height:calc(var(--spacing) * 9);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2)}:where([data-slot=button]):where(:not([data-size])):has(>svg){padding-inline:calc(var(--spacing) * 3)}:where([data-slot=button]):where([data-size=default]){height:calc(var(--spacing) * 9);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2)}:where([data-slot=button]):where([data-size=default]):has(>svg){padding-inline:calc(var(--spacing) * 3)}:where([data-slot=button]):where([data-size=sm]){height:calc(var(--spacing) * 8);gap:calc(var(--spacing) * 1.5);border-radius:var(--radius);padding-inline:calc(var(--spacing) * 3)}:where([data-slot=button]):where([data-size=sm]):has(>svg){padding-inline:calc(var(--spacing) * 2.5)}:where([data-slot=button]):where([data-size=lg]){height:calc(var(--spacing) * 10);border-radius:var(--radius);padding-inline:calc(var(--spacing) * 6)}:where([data-slot=button]):where([data-size=lg]):has(>svg){padding-inline:calc(var(--spacing) * 4)}:where([data-slot=button]):where([data-size=icon]){width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}:where([data-slot=button]):where([data-size=icon-sm]){width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}:where([data-slot=button]):where([data-size=icon-lg]){width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}:where([data-slot=button-group]){align-items:stretch;width:fit-content;display:flex}:where([data-slot=button-group]):has(>[data-slot=button-group]){gap:calc(var(--spacing) * 2)}:where([data-slot=button-group])>:focus-visible{z-index:10;position:relative}:where([data-slot=button-group]):has(:is(select[aria-hidden=true]:last-child))>[data-slot=select-trigger]:last-of-type{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}:where([data-slot=button-group])>[data-slot=select-trigger]:not([class*=w-]){width:fit-content}:where([data-slot=button-group])>input{flex:1}:where([data-slot=button-group]):where(:not([data-orientation]))>:not(:first-child){border-left-style:var(--tw-border-style);border-left-width:0;border-top-left-radius:0;border-bottom-left-radius:0}:where([data-slot=button-group]):where(:not([data-orientation]))>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}:where([data-slot=button-group]):where([data-orientation=horizontal])>:not(:first-child){border-left-style:var(--tw-border-style);border-left-width:0;border-top-left-radius:0;border-bottom-left-radius:0}:where([data-slot=button-group]):where([data-orientation=horizontal])>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}:where([data-slot=button-group]):where([data-orientation=vertical]){flex-direction:column}:where([data-slot=button-group]):where([data-orientation=vertical])>:not(:first-child){border-top-style:var(--tw-border-style);border-top-width:0;border-top-left-radius:0;border-top-right-radius:0}:where([data-slot=button-group]):where([data-orientation=vertical])>:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0}:where([data-slot=button-group-separator]){background-color:rgb(var(--input));align-self:stretch;position:relative;margin:calc(var(--spacing) * 0)!important}:where([data-slot=button-group-separator])[data-orientation=vertical]{height:auto}:where([data-slot=card]){gap:calc(var(--spacing) * 6);border-radius:calc(var(--radius) + 4px);border-style:var(--tw-border-style);background-color:rgb(var(--card));padding-block:calc(var(--spacing) * 6);color:rgb(var(--card-foreground));--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);border-width:1px;flex-direction:column;display:flex}:where([data-slot=card-action]){grid-row:1/span 2;grid-column-start:2;place-self:flex-start flex-end}:where([data-slot=card-content]){padding-inline:calc(var(--spacing) * 6)}:where([data-slot=card-description]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--muted-foreground))}:where([data-slot=card-footer]){padding-inline:calc(var(--spacing) * 6);align-items:center;display:flex}:where([data-slot=card-footer]).border-t{padding-top:calc(var(--spacing) * 6)}:where([data-slot=card-header]){align-items:flex-start;gap:calc(var(--spacing) * 2);padding-inline:calc(var(--spacing) * 6);grid-template-rows:auto auto;grid-auto-rows:min-content;display:grid;container:card-header/inline-size}:where([data-slot=card-header]):has([data-slot=card-action]){grid-template-columns:1fr auto}:where([data-slot=card-header]).border-b{padding-bottom:calc(var(--spacing) * 6)}:where([data-slot=card-title]){--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}:where([data-slot=carousel]){position:relative}:where([data-slot=carousel-content]){overflow:hidden}:where([data-slot=carousel-item]){min-width:calc(var(--spacing) * 0);flex:0 0 100%}:where([data-slot=carousel-next]),:where([data-slot=carousel-previous]){width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8);border-radius:3.40282e38px;position:absolute}:where([data-slot=chart]){aspect-ratio:var(--aspect-video);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));justify-content:center;display:flex}:where([data-slot=chart]) .recharts-cartesian-axis-tick text{fill:rgb(var(--muted-foreground))}:where([data-slot=chart]) .recharts-cartesian-grid line[stroke=\#ccc]{stroke:rgb(var(--border))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=chart]) .recharts-cartesian-grid line[stroke=\#ccc]{stroke:color-mix(in oklab, rgb(var(--border)) 50%, transparent)}}:where([data-slot=chart]) .recharts-curve.recharts-tooltip-cursor{stroke:rgb(var(--border))}:where([data-slot=chart]) .recharts-dot[stroke=\#fff]{stroke:#0000}:where([data-slot=chart]) .recharts-layer{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:where([data-slot=chart]) .recharts-layer{outline-offset:2px;outline:2px solid #0000}}:where([data-slot=chart]) .recharts-polar-grid [stroke=\#ccc]{stroke:rgb(var(--border))}:where([data-slot=chart]) .recharts-radial-bar-background-sector,:where([data-slot=chart]) .recharts-rectangle.recharts-tooltip-cursor{fill:rgb(var(--muted))}:where([data-slot=chart]) .recharts-reference-line [stroke=\#ccc]{stroke:rgb(var(--border))}:where([data-slot=chart]) .recharts-sector{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:where([data-slot=chart]) .recharts-sector{outline-offset:2px;outline:2px solid #0000}}:where([data-slot=chart]) .recharts-sector[stroke=\#fff]{stroke:#0000}:where([data-slot=chart]) .recharts-surface{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:where([data-slot=chart]) .recharts-surface{outline-offset:2px;outline:2px solid #0000}}:where([data-slot=checkbox]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--input));--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-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));--tw-outline-style:none;border-radius:4px;outline-style:none;flex-shrink:0}:where([data-slot=checkbox]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=checkbox]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=checkbox]):disabled{cursor:not-allowed;opacity:.5}:where([data-slot=checkbox])[aria-invalid=true]{border-color:rgb(var(--destructive));--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=checkbox])[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=checkbox])[data-state=checked]{border-color:rgb(var(--primary));background-color:rgb(var(--primary));color:rgb(var(--primary-foreground))}:where([data-slot=checkbox]):is(.dark *){background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=checkbox]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}:where([data-slot=checkbox]):is(.dark *)[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=checkbox]):is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=checkbox]):is(.dark *)[data-state=checked]{background-color:rgb(var(--primary))}:where([data-slot=checkbox-indicator]){color:currentColor;justify-content:center;align-items:center;transition-property:none;display:flex}:where([data-slot=code]){border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--border));background-color:rgb(var(--muted));color:rgb(var(--foreground));font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}:where([data-slot=code]):where(:not([data-variant])),:where([data-slot=code]):where([data-variant=inline]){padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));border-radius:.25rem}:where([data-slot=code]):where([data-variant=block]){border-radius:var(--radius);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));word-break:break-all;white-space:pre-wrap;display:block}:where([data-slot=command]){border-radius:var(--radius);background-color:rgb(var(--popover));width:100%;height:100%;color:rgb(var(--popover-foreground));flex-direction:column;display:flex;overflow:hidden}:where([data-slot=command-empty]){padding-block:calc(var(--spacing) * 6);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}:where([data-slot=command-group]){padding:calc(var(--spacing) * 1);color:rgb(var(--foreground));overflow:hidden}:where([data-slot=command-group]) [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:rgb(var(--muted-foreground))}:where([data-slot=command-input]){height:calc(var(--spacing) * 10);border-radius:var(--radius);width:100%;padding-block:calc(var(--spacing) * 3);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;background-color:#0000;outline-style:none;display:flex}@media (forced-colors:active){:where([data-slot=command-input]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=command-input])::placeholder{color:rgb(var(--muted-foreground))}:where([data-slot=command-input]):disabled{cursor:not-allowed;opacity:.5}:where([data-slot=command-input-wrapper]){height:calc(var(--spacing) * 9);align-items:center;gap:calc(var(--spacing) * 2);border-bottom-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * 3);border-bottom-width:1px;display:flex}:where([data-slot=command-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=command-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=command-item]){-webkit-user-select:none;user-select:none}:where([data-slot=command-item])[data-disabled=true]{pointer-events:none;opacity:.5}:where([data-slot=command-item])[data-selected=true]{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=command-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=command-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=command-item]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:where([data-slot=command-list]){max-height:300px;scroll-padding-block:calc(var(--spacing) * 1);overflow:hidden auto}:where([data-slot=command-separator]){margin-inline:calc(var(--spacing) * -1);background-color:rgb(var(--border));height:1px}:where([data-slot=command-shortcut]){font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest);color:rgb(var(--muted-foreground));margin-left:auto}:where([data-slot=context-menu-checkbox-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 8);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=context-menu-checkbox-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=context-menu-checkbox-item]){-webkit-user-select:none;user-select:none}:where([data-slot=context-menu-checkbox-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=context-menu-checkbox-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=context-menu-checkbox-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=context-menu-checkbox-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=context-menu-content]){z-index:50;max-height:var(--radix-context-menu-content-available-height);min-width:8rem;transform-origin:var(--radix-context-menu-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));padding:calc(var(--spacing) * 1);color:rgb(var(--popover-foreground));--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);border-width:1px;overflow:hidden auto}:where([data-slot=context-menu-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=context-menu-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=context-menu-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=context-menu-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=context-menu-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=context-menu-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=context-menu-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=context-menu-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=context-menu-item]){-webkit-user-select:none;user-select:none}:where([data-slot=context-menu-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=context-menu-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=context-menu-item])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=context-menu-item])[data-variant=destructive]{color:rgb(var(--destructive))}:where([data-slot=context-menu-item])[data-variant=destructive]:focus{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=context-menu-item])[data-variant=destructive]:focus{background-color:color-mix(in oklab, rgb(var(--destructive)) 10%, transparent)}}:where([data-slot=context-menu-item])[data-variant=destructive]:focus{color:rgb(var(--destructive))}:where([data-slot=context-menu-item]):is(.dark *)[data-variant=destructive]:focus{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=context-menu-item]):is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=context-menu-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=context-menu-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=context-menu-item]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:is(:where([data-slot=context-menu-item])[data-variant=destructive]>*):is(svg){color:rgb(var(--destructive))!important}:where([data-slot=context-menu-label]){padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:rgb(var(--foreground))}:where([data-slot=context-menu-label])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=context-menu-radio-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 8);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=context-menu-radio-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=context-menu-radio-item]){-webkit-user-select:none;user-select:none}:where([data-slot=context-menu-radio-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=context-menu-radio-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=context-menu-radio-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=context-menu-radio-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=context-menu-separator]){margin-inline:calc(var(--spacing) * -1);margin-block:calc(var(--spacing) * 1);background-color:rgb(var(--border));height:1px}:where([data-slot=context-menu-shortcut]){font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest);color:rgb(var(--muted-foreground));margin-left:auto}:where([data-slot=context-menu-sub-content]){z-index:50;min-width:8rem;transform-origin:var(--radix-context-menu-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));padding:calc(var(--spacing) * 1);color:rgb(var(--popover-foreground));--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);border-width:1px;overflow:hidden}:where([data-slot=context-menu-sub-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=context-menu-sub-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=context-menu-sub-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=context-menu-sub-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=context-menu-sub-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=context-menu-sub-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=context-menu-sub-trigger]){cursor:default;border-radius:calc(var(--radius) - 2px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;align-items:center;display:flex}@media (forced-colors:active){:where([data-slot=context-menu-sub-trigger]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=context-menu-sub-trigger]){-webkit-user-select:none;user-select:none}:where([data-slot=context-menu-sub-trigger]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=context-menu-sub-trigger])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=context-menu-sub-trigger])[data-state=open]{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=context-menu-sub-trigger]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=context-menu-sub-trigger]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=context-menu-sub-trigger]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:where([data-slot=cta-section]){padding-inline:calc(var(--spacing) * 6);padding-block:calc(var(--spacing) * 16)}:where([data-slot=cta-section]):where(:not([data-variant])),:where([data-slot=cta-section]):where([data-variant=centered]){text-align:center}:where([data-slot=cta-section]):where([data-variant=left-aligned]){text-align:left}:where([data-slot=cta-section]):where([data-background=default]){background-color:rgb(var(--background))}:where([data-slot=cta-section]):where(:not([data-background])),:where([data-slot=cta-section]):where([data-background=muted]){background-color:rgb(var(--muted))}:where([data-slot=cta-section]):where([data-background=accent]){background-color:rgb(var(--primary));color:rgb(var(--primary-foreground))}:where([data-slot=cta-section]):where([data-background=subtle]){background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=cta-section]):where([data-background=subtle]){background-color:color-mix(in oklab, rgb(var(--primary)) 5%, transparent)}}:where([data-slot=dialog-close]){top:calc(var(--spacing) * 4);right:calc(var(--spacing) * 4);border-radius:var(--radius-xs);opacity:.7;--tw-ring-offset-color:rgb(var(--background));transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));position:absolute}@media (hover:hover){:where([data-slot=dialog-close]):hover{opacity:1}}:where([data-slot=dialog-close]):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);--tw-ring-color:rgb(var(--ring));--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);--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:where([data-slot=dialog-close]):focus{outline-offset:2px;outline:2px solid #0000}}:where([data-slot=dialog-close]):disabled{pointer-events:none}:where([data-slot=dialog-close])[data-state=open]{background-color:rgb(var(--accent));color:rgb(var(--muted-foreground))}:where([data-slot=dialog-close]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=dialog-close]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=dialog-content]){z-index:50;--tw-translate-x:-50%;--tw-translate-y:-50%;width:100%;max-width:calc(100% - 2rem);translate:var(--tw-translate-x) var(--tw-translate-y);gap:calc(var(--spacing) * 4);border-radius:calc(var(--radius) + 2px);border-style:var(--tw-border-style);background-color:rgb(var(--background));padding:calc(var(--spacing) * 6);--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);--tw-duration:.2s;border-width:1px;transition-duration:.2s;display:grid;position:fixed;top:50%;left:50%}:where([data-slot=dialog-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=dialog-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}@media (min-width:40rem){:where([data-slot=dialog-content]){max-width:var(--container-lg)}}:where([data-slot=dialog-description]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--muted-foreground))}:where([data-slot=dialog-footer]){gap:calc(var(--spacing) * 2);flex-direction:column-reverse;display:flex}@media (min-width:40rem){:where([data-slot=dialog-footer]){flex-direction:row;justify-content:flex-end}}:where([data-slot=dialog-header]){gap:calc(var(--spacing) * 2);text-align:center;flex-direction:column;display:flex}@media (min-width:40rem){:where([data-slot=dialog-header]){text-align:left}}:where([data-slot=dialog-overlay]){inset:calc(var(--spacing) * 0);z-index:50;background-color:#00000080;position:fixed}@supports (color:color-mix(in lab, red, red)){:where([data-slot=dialog-overlay]){background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}:where([data-slot=dialog-overlay])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0}:where([data-slot=dialog-overlay])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0}:where([data-slot=dialog-title]){font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}:where([data-slot=drawer-content]){z-index:50;background-color:rgb(var(--background));flex-direction:column;height:auto;display:flex;position:fixed}:where([data-slot=drawer-description]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--muted-foreground))}:where([data-slot=drawer-footer]){gap:calc(var(--spacing) * 2);padding:calc(var(--spacing) * 4);flex-direction:column;margin-top:auto;display:flex}:where([data-slot=drawer-header]){gap:calc(var(--spacing) * .5);padding:calc(var(--spacing) * 4);flex-direction:column;display:flex}:where([data-slot=drawer-header]):is(:where(.group\/drawer-content)[data-vaul-drawer-direction=bottom] *),:where([data-slot=drawer-header]):is(:where(.group\/drawer-content)[data-vaul-drawer-direction=top] *){text-align:center}@media (min-width:48rem){:where([data-slot=drawer-header]){gap:calc(var(--spacing) * 1.5);text-align:left}}:where([data-slot=drawer-overlay]){inset:calc(var(--spacing) * 0);z-index:50;background-color:#00000080;position:fixed}@supports (color:color-mix(in lab, red, red)){:where([data-slot=drawer-overlay]){background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}:where([data-slot=drawer-overlay])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0}:where([data-slot=drawer-overlay])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0}:where([data-slot=drawer-title]){--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:rgb(var(--foreground))}:where([data-slot=dropdown-menu-checkbox-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 8);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=dropdown-menu-checkbox-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=dropdown-menu-checkbox-item]){-webkit-user-select:none;user-select:none}:where([data-slot=dropdown-menu-checkbox-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=dropdown-menu-checkbox-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=dropdown-menu-checkbox-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=dropdown-menu-checkbox-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=dropdown-menu-content]){z-index:50;max-height:var(--radix-dropdown-menu-content-available-height);min-width:8rem;transform-origin:var(--radix-dropdown-menu-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));padding:calc(var(--spacing) * 1);color:rgb(var(--popover-foreground));--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);border-width:1px;overflow:hidden auto}:where([data-slot=dropdown-menu-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=dropdown-menu-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=dropdown-menu-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=dropdown-menu-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=dropdown-menu-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=dropdown-menu-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=dropdown-menu-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=dropdown-menu-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=dropdown-menu-item]){-webkit-user-select:none;user-select:none}:where([data-slot=dropdown-menu-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=dropdown-menu-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=dropdown-menu-item])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=dropdown-menu-item])[data-variant=destructive]{color:rgb(var(--destructive))}:where([data-slot=dropdown-menu-item])[data-variant=destructive]:focus{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=dropdown-menu-item])[data-variant=destructive]:focus{background-color:color-mix(in oklab, rgb(var(--destructive)) 10%, transparent)}}:where([data-slot=dropdown-menu-item])[data-variant=destructive]:focus{color:rgb(var(--destructive))}:where([data-slot=dropdown-menu-item]):is(.dark *)[data-variant=destructive]:focus{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=dropdown-menu-item]):is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=dropdown-menu-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=dropdown-menu-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=dropdown-menu-item]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:is(:where([data-slot=dropdown-menu-item])[data-variant=destructive]>*):is(svg){color:rgb(var(--destructive))!important}:where([data-slot=dropdown-menu-label]){padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}:where([data-slot=dropdown-menu-label])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=dropdown-menu-radio-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 8);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=dropdown-menu-radio-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=dropdown-menu-radio-item]){-webkit-user-select:none;user-select:none}:where([data-slot=dropdown-menu-radio-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=dropdown-menu-radio-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=dropdown-menu-radio-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=dropdown-menu-radio-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=dropdown-menu-separator]){margin-inline:calc(var(--spacing) * -1);margin-block:calc(var(--spacing) * 1);background-color:rgb(var(--border));height:1px}:where([data-slot=dropdown-menu-shortcut]){font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest);color:rgb(var(--muted-foreground));margin-left:auto}:where([data-slot=dropdown-menu-sub-content]){z-index:50;min-width:8rem;transform-origin:var(--radix-dropdown-menu-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));padding:calc(var(--spacing) * 1);color:rgb(var(--popover-foreground));--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);border-width:1px;overflow:hidden}:where([data-slot=dropdown-menu-sub-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=dropdown-menu-sub-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=dropdown-menu-sub-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=dropdown-menu-sub-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=dropdown-menu-sub-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=dropdown-menu-sub-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=dropdown-menu-sub-trigger]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex}@media (forced-colors:active){:where([data-slot=dropdown-menu-sub-trigger]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=dropdown-menu-sub-trigger]){-webkit-user-select:none;user-select:none}:where([data-slot=dropdown-menu-sub-trigger]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=dropdown-menu-sub-trigger])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=dropdown-menu-sub-trigger])[data-state=open]{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=dropdown-menu-sub-trigger]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=dropdown-menu-sub-trigger]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=dropdown-menu-sub-trigger]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:where([data-slot=empty]){min-width:calc(var(--spacing) * 0);justify-content:center;align-items:center;gap:calc(var(--spacing) * 6);border-radius:calc(var(--radius) + 2px);--tw-border-style:dashed;padding:calc(var(--spacing) * 6);text-align:center;text-wrap:balance;border-style:dashed;flex-direction:column;flex:1;display:flex}@media (min-width:48rem){:where([data-slot=empty]){padding:calc(var(--spacing) * 12)}}:where([data-slot=empty-content]){width:100%;max-width:var(--container-sm);min-width:calc(var(--spacing) * 0);align-items:center;gap:calc(var(--spacing) * 4);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));text-wrap:balance;flex-direction:column;display:flex}:where([data-slot=empty-description]){font-size:var(--text-sm);line-height:var(--leading-relaxed);color:rgb(var(--muted-foreground))}:where([data-slot=empty-description])>a{text-underline-offset:4px;text-decoration-line:underline}:where([data-slot=empty-description])>a:hover{color:rgb(var(--primary))}:where([data-slot=empty-header]){max-width:var(--container-sm);align-items:center;gap:calc(var(--spacing) * 2);text-align:center;flex-direction:column;display:flex}:where([data-slot=empty-media]){margin-bottom:calc(var(--spacing) * 2);flex-shrink:0;justify-content:center;align-items:center;display:flex}:where([data-slot=empty-media]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=empty-media]):where(:not([data-variant])),:where([data-slot=empty-media]):where([data-variant=default]){background-color:#0000}:where([data-slot=empty-media]):where([data-variant=icon]){width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10);border-radius:calc(var(--radius) + 2px);background-color:rgb(var(--muted));color:rgb(var(--foreground));flex-shrink:0;justify-content:center;align-items:center;display:flex}:where([data-slot=empty-media]):where([data-variant=icon]) svg:not([class*=size-]){width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}:where([data-slot=empty-title]){font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}:where([data-slot=field]){gap:calc(var(--spacing) * 3);width:100%;display:flex}:where([data-slot=field])[data-invalid=true]{color:rgb(var(--destructive))}:where([data-slot=field-content]){gap:calc(var(--spacing) * 1.5);flex-direction:column;flex:1;display:flex}:where([data-slot=field-description]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:rgb(var(--muted-foreground))}:where([data-slot=field-description]):is(:where(.group\/field):has([data-orientation=horizontal]) *){text-wrap:balance}:where([data-slot=field-error]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:rgb(var(--destructive))}:where([data-slot=field-group]){gap:calc(var(--spacing) * 7);flex-direction:column;width:100%;display:flex;container:field-group/inline-size}:where([data-slot=field-group])[data-slot=checkbox-group]{gap:calc(var(--spacing) * 3)}:where([data-slot=field-group])>[data-slot=field-group]{gap:calc(var(--spacing) * 4)}:where([data-slot=field-label]){align-items:center;gap:calc(var(--spacing) * 2);width:fit-content;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);display:flex}:where([data-slot=field-label]):is(:where(.group\/field)[data-disabled=true] *){opacity:.5}:where([data-slot=field-legend]){margin-bottom:calc(var(--spacing) * 3);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}:where([data-slot=field-separator]){margin-block:calc(var(--spacing) * -2);height:calc(var(--spacing) * 5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));position:relative}:where([data-slot=field-separator]):is(:where(.group\/field-group)[data-variant=outline] *){margin-bottom:calc(var(--spacing) * -2)}:where([data-slot=field-separator-content]){background-color:rgb(var(--background));width:fit-content;padding-inline:calc(var(--spacing) * 2);color:rgb(var(--muted-foreground));margin-inline:auto;display:block;position:relative}:where([data-slot=field-set]){gap:calc(var(--spacing) * 6);flex-direction:column;display:flex}:where([data-slot=footer]){border-top-style:var(--tw-border-style);border-top-width:1px;border-color:rgb(var(--border));background-color:rgb(var(--background));font-family:Aspekta,ui-sans-serif,system-ui,sans-serif}:where([data-slot=footer]):where(:not([data-variant])),:where([data-slot=footer]):where([data-variant=minimal]){padding-block:calc(var(--spacing) * 8)}:where([data-slot=footer]):where([data-variant=full]){padding-block:calc(var(--spacing) * 12)}:where([data-slot=form-description]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--muted-foreground))}:where([data-slot=form-item]){gap:calc(var(--spacing) * 2);display:grid}:where([data-slot=form-label])[data-error=true]{color:rgb(var(--destructive))}:where([data-slot=form-message]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--destructive))}:where([data-slot=hero]){padding-inline:calc(var(--spacing) * 6);padding-block:calc(var(--spacing) * 24)}:where([data-slot=hero]):where(:not([data-variant])),:where([data-slot=hero]):where([data-variant=centered]){text-align:center}:where([data-slot=hero]):where([data-variant=left-aligned]),:where([data-slot=hero]):where([data-variant=split]){text-align:left}:where([data-slot=hero]):where(:not([data-background])),:where([data-slot=hero]):where([data-background=default]){background-color:rgb(var(--hero-bg))}:where([data-slot=hero]):where([data-background=muted]){background-color:rgb(var(--muted))}:where([data-slot=hero]):where([data-background=accent]){background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=hero]):where([data-background=accent]){background-color:color-mix(in oklab, rgb(var(--primary)) 5%, transparent)}}:where([data-slot=hero]):where([data-background=dark]){background-color:rgb(var(--foreground));color:rgb(var(--background))}:where([data-slot=hover-card-content]){z-index:50;width:calc(var(--spacing) * 64);transform-origin:var(--radix-hover-card-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));padding:calc(var(--spacing) * 4);color:rgb(var(--popover-foreground));--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);--tw-outline-style:none;border-width:1px;outline-style:none}@media (forced-colors:active){:where([data-slot=hover-card-content]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=hover-card-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=hover-card-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=hover-card-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=hover-card-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=hover-card-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=hover-card-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=input]){height:calc(var(--spacing) * 9);width:100%;min-width:calc(var(--spacing) * 0);border-radius:var(--radius);border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--input));padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;background-color:#0000;outline-style:none}:where([data-slot=input]) ::selection{background-color:rgb(var(--primary))}:where([data-slot=input])::selection{background-color:rgb(var(--primary))}:where([data-slot=input]) ::selection{color:rgb(var(--primary-foreground))}:where([data-slot=input])::selection{color:rgb(var(--primary-foreground))}:where([data-slot=input])::file-selector-button{display:inline-flex}:where([data-slot=input])::file-selector-button{height:calc(var(--spacing) * 7)}:where([data-slot=input])::file-selector-button{border-style:var(--tw-border-style);border-width:0}:where([data-slot=input])::file-selector-button{background-color:#0000}:where([data-slot=input])::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}:where([data-slot=input])::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}:where([data-slot=input])::file-selector-button{color:rgb(var(--foreground))}:where([data-slot=input])::placeholder{color:rgb(var(--muted-foreground))}:where([data-slot=input]):disabled{pointer-events:none;cursor:not-allowed;opacity:.5}@media (min-width:48rem){:where([data-slot=input]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}:where([data-slot=input]):is(.dark *){background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=input]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}:where([data-slot=input-group]){border-radius:var(--radius);border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--input));--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);width:100%;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;outline-style:none;align-items:center;display:flex;position:relative}:where([data-slot=input-group]):is(.dark *){background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=input-group]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}:where([data-slot=input-group-addon]){cursor:text;justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);height:auto;padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:rgb(var(--muted-foreground));-webkit-user-select:none;user-select:none;display:flex}:where([data-slot=input-group-addon]):is(:where(.group\/input-group)[data-disabled=true] *){opacity:.5}:where([data-slot=input-group-addon])>kbd{border-radius:calc(var(--radius) - 5px)}:where([data-slot=input-group-addon])>svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=input-group-addon]):where(:not([data-align])){padding-left:calc(var(--spacing) * 3);order:-9999}:where([data-slot=input-group-addon]):where(:not([data-align])):has(>button){margin-left:-.45rem}:where([data-slot=input-group-addon]):where(:not([data-align])):has(>kbd){margin-left:-.35rem}:where([data-slot=input-group-addon]):where([data-align=inline-start]){padding-left:calc(var(--spacing) * 3);order:-9999}:where([data-slot=input-group-addon]):where([data-align=inline-start]):has(>button){margin-left:-.45rem}:where([data-slot=input-group-addon]):where([data-align=inline-start]):has(>kbd){margin-left:-.35rem}:where([data-slot=input-group-addon]):where([data-align=inline-end]){padding-right:calc(var(--spacing) * 3);order:9999}:where([data-slot=input-group-addon]):where([data-align=inline-end]):has(>button){margin-right:-.4rem}:where([data-slot=input-group-addon]):where([data-align=inline-end]):has(>kbd){margin-right:-.35rem}:where([data-slot=input-group-addon]):where([data-align=block-start]){width:100%;padding-inline:calc(var(--spacing) * 3);padding-top:calc(var(--spacing) * 3);order:-9999;justify-content:flex-start}:where([data-slot=input-group-addon]):where([data-align=block-start]):is(:where(.group\/input-group):has(>input) *){padding-top:calc(var(--spacing) * 2.5)}:where([data-slot=input-group-addon]):where([data-align=block-start]).border-b{padding-bottom:calc(var(--spacing) * 3)}:where([data-slot=input-group-addon]):where([data-align=block-end]){width:100%;padding-inline:calc(var(--spacing) * 3);padding-bottom:calc(var(--spacing) * 3);order:9999;justify-content:flex-start}:where([data-slot=input-group-addon]):where([data-align=block-end]):is(:where(.group\/input-group):has(>input) *){padding-bottom:calc(var(--spacing) * 2.5)}:where([data-slot=input-group-addon]):where([data-align=block-end]).border-t{padding-top:calc(var(--spacing) * 3)}:where([data-slot=input-group-button]){align-items:center;gap:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--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);display:flex}:where([data-slot=input-group-button]):where(:not([data-size])){height:calc(var(--spacing) * 6);gap:calc(var(--spacing) * 1);border-radius:calc(var(--radius) - 5px);padding-inline:calc(var(--spacing) * 2)}:where([data-slot=input-group-button]):where(:not([data-size])):has(>svg){padding-inline:calc(var(--spacing) * 2)}:where([data-slot=input-group-button]):where(:not([data-size]))>svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}:where([data-slot=input-group-button]):where([data-size=xs]){height:calc(var(--spacing) * 6);gap:calc(var(--spacing) * 1);border-radius:calc(var(--radius) - 5px);padding-inline:calc(var(--spacing) * 2)}:where([data-slot=input-group-button]):where([data-size=xs]):has(>svg){padding-inline:calc(var(--spacing) * 2)}:where([data-slot=input-group-button]):where([data-size=xs])>svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}:where([data-slot=input-group-button]):where([data-size=sm]){height:calc(var(--spacing) * 8);gap:calc(var(--spacing) * 1.5);border-radius:var(--radius);padding-inline:calc(var(--spacing) * 2.5)}:where([data-slot=input-group-button]):where([data-size=sm]):has(>svg){padding-inline:calc(var(--spacing) * 2.5)}:where([data-slot=input-group-button]):where([data-size=icon-xs]){width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6);border-radius:calc(var(--radius) - 5px);padding:calc(var(--spacing) * 0)}:where([data-slot=input-group-button]):where([data-size=icon-xs]):has(>svg){padding:calc(var(--spacing) * 0)}:where([data-slot=input-group-button]):where([data-size=icon-sm]){width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8);padding:calc(var(--spacing) * 0)}:where([data-slot=input-group-button]):where([data-size=icon-sm]):has(>svg){padding:calc(var(--spacing) * 0)}:where([data-slot=input-group-control]){resize:none;border-style:var(--tw-border-style);padding-block:calc(var(--spacing) * 3);--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);background-color:#0000;border-width:0;border-radius:0;flex:1}:where([data-slot=input-group-control]):focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + 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)}:where([data-slot=input-group-control]):is(.dark *){background-color:#0000}:where([data-slot=input-otp]):disabled{cursor:not-allowed}:where([data-slot=input-otp-group]){align-items:center;display:flex}:where([data-slot=input-otp-slot]){height:calc(var(--spacing) * 9);width:calc(var(--spacing) * 9);border-block-style:var(--tw-border-style);border-block-width:1px;border-right-style:var(--tw-border-style);border-right-width:1px;border-color:rgb(var(--input));font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;outline-style:none;justify-content:center;align-items:center;display:flex;position:relative}:where([data-slot=input-otp-slot]):first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius);border-left-style:var(--tw-border-style);border-left-width:1px}:where([data-slot=input-otp-slot]):last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}:where([data-slot=input-otp-slot])[aria-invalid=true]{border-color:rgb(var(--destructive))}:where([data-slot=input-otp-slot])[data-active=true]{z-index:10;border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=input-otp-slot])[data-active=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=input-otp-slot])[data-active=true][aria-invalid=true]{border-color:rgb(var(--destructive));--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=input-otp-slot])[data-active=true][aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=input-otp-slot]):is(.dark *){background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=input-otp-slot]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}:where([data-slot=input-otp-slot]):is(.dark *)[data-active=true][aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=input-otp-slot]):is(.dark *)[data-active=true][aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=item]){border-radius:var(--radius);border-style:var(--tw-border-style);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));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));--tw-duration:.1s;--tw-outline-style:none;border-width:1px;border-color:#0000;outline-style:none;flex-wrap:wrap;align-items:center;transition-duration:.1s;display:flex}:where([data-slot=item]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=item]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}a:where([data-slot=item]){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))}@media (hover:hover){a:where([data-slot=item]):hover{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){a:where([data-slot=item]):hover{background-color:color-mix(in oklab, rgb(var(--accent)) 50%, transparent)}}}:where([data-slot=item]):where(:not([data-variant])),:where([data-slot=item]):where([data-variant=default]){background-color:#0000}:where([data-slot=item]):where([data-variant=outline]){border-color:rgb(var(--border))}:where([data-slot=item]):where([data-variant=muted]){background-color:rgb(var(--muted))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=item]):where([data-variant=muted]){background-color:color-mix(in oklab, rgb(var(--muted)) 50%, transparent)}}:where([data-slot=item]):where(:not([data-size])),:where([data-slot=item]):where([data-size=default]){gap:calc(var(--spacing) * 4);padding:calc(var(--spacing) * 4)}:where([data-slot=item]):where([data-size=sm]){gap:calc(var(--spacing) * 2.5);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3)}:where([data-slot=item-actions]){align-items:center;gap:calc(var(--spacing) * 2);display:flex}:where([data-slot=item-content]){gap:calc(var(--spacing) * 1);flex-direction:column;flex:1;display:flex}:where([data-slot=item-content])+[data-slot=item-content]{flex:none}:where([data-slot=item-description]){-webkit-line-clamp:2;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);text-wrap:balance;color:rgb(var(--muted-foreground));-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:where([data-slot=item-footer]){justify-content:space-between;align-items:center;gap:calc(var(--spacing) * 2);flex-basis:100%;display:flex}:where([data-slot=item-group]){flex-direction:column;display:flex}:where([data-slot=item-header]){justify-content:space-between;align-items:center;gap:calc(var(--spacing) * 2);flex-basis:100%;display:flex}:where([data-slot=item-media]){justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);flex-shrink:0;display:flex}:where([data-slot=item-media]):is(:where(.group\/item):has([data-slot=item-description]) *){--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y);align-self:flex-start}:where([data-slot=item-media]) svg{pointer-events:none}:where([data-slot=item-media]):where(:not([data-variant])),:where([data-slot=item-media]):where([data-variant=default]){background-color:#0000}:where([data-slot=item-media]):where([data-variant=icon]){width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8);border-radius:calc(var(--radius) - 2px);border-style:var(--tw-border-style);background-color:rgb(var(--muted));border-width:1px}:where([data-slot=item-media]):where([data-variant=icon]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=item-media]):where([data-variant=image]){width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10);border-radius:calc(var(--radius) - 2px);overflow:hidden}:where([data-slot=item-media]):where([data-variant=image]) img{object-fit:cover;width:100%;height:100%}:where([data-slot=item-separator]){margin-block:calc(var(--spacing) * 0)}:where([data-slot=item-title]){align-items:center;gap:calc(var(--spacing) * 2);width:fit-content;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);display:flex}:where([data-slot=kbd]){pointer-events:none;height:calc(var(--spacing) * 5);width:fit-content;min-width:calc(var(--spacing) * 5);justify-content:center;align-items:center;gap:calc(var(--spacing) * 1);border-radius:calc(var(--radius) - 2px);background-color:rgb(var(--muted));padding-inline:calc(var(--spacing) * 1);font-family:Aspekta,ui-sans-serif,system-ui,sans-serif;font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:rgb(var(--muted-foreground));-webkit-user-select:none;user-select:none;display:inline-flex}:where([data-slot=kbd-group]){align-items:center;gap:calc(var(--spacing) * 1);display:inline-flex}:where([data-slot=label]){align-items:center;gap:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);-webkit-user-select:none;user-select:none;display:flex}:where([data-slot=label]):is(:where(.group)[data-disabled=true] *){pointer-events:none;opacity:.5}:where([data-slot=label]):is(:where(.peer):disabled~*){cursor:not-allowed;opacity:.5}:where([data-slot=logo]){display:inline-block}:where([data-slot=logo]):where([data-size=sm]){height:calc(var(--spacing) * 6);width:auto}:where([data-slot=logo]):where(:not([data-size])),:where([data-slot=logo]):where([data-size=md]){height:calc(var(--spacing) * 8);width:auto}:where([data-slot=logo]):where([data-size=lg]){height:calc(var(--spacing) * 10);width:auto}:where([data-slot=logo]):where([data-size=xl]){height:calc(var(--spacing) * 14);width:auto}:where([data-slot=menubar]){height:calc(var(--spacing) * 9);align-items:center;gap:calc(var(--spacing) * 1);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--background));padding:calc(var(--spacing) * 1);--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-width:1px;display:flex}:where([data-slot=menubar-checkbox-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius-xs);padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 8);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=menubar-checkbox-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=menubar-checkbox-item]){-webkit-user-select:none;user-select:none}:where([data-slot=menubar-checkbox-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=menubar-checkbox-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=menubar-checkbox-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=menubar-checkbox-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=menubar-content]){z-index:50;min-width:12rem;transform-origin:var(--radix-menubar-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));padding:calc(var(--spacing) * 1);color:rgb(var(--popover-foreground));--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);border-width:1px;overflow:hidden}:where([data-slot=menubar-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=menubar-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=menubar-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=menubar-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=menubar-content])[data-state=closed]{--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=menubar-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=menubar-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=menubar-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=menubar-item]){-webkit-user-select:none;user-select:none}:where([data-slot=menubar-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=menubar-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=menubar-item])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=menubar-item])[data-variant=destructive]{color:rgb(var(--destructive))}:where([data-slot=menubar-item])[data-variant=destructive]:focus{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=menubar-item])[data-variant=destructive]:focus{background-color:color-mix(in oklab, rgb(var(--destructive)) 10%, transparent)}}:where([data-slot=menubar-item])[data-variant=destructive]:focus{color:rgb(var(--destructive))}:where([data-slot=menubar-item]):is(.dark *)[data-variant=destructive]:focus{background-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=menubar-item]):is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=menubar-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=menubar-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=menubar-item]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:is(:where([data-slot=menubar-item])[data-variant=destructive]>*):is(svg){color:rgb(var(--destructive))!important}:where([data-slot=menubar-label]){padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}:where([data-slot=menubar-label])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=menubar-radio-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius-xs);padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 8);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=menubar-radio-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=menubar-radio-item]){-webkit-user-select:none;user-select:none}:where([data-slot=menubar-radio-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=menubar-radio-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=menubar-radio-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=menubar-radio-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=menubar-separator]){margin-inline:calc(var(--spacing) * -1);margin-block:calc(var(--spacing) * 1);background-color:rgb(var(--border));height:1px}:where([data-slot=menubar-shortcut]){font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest);color:rgb(var(--muted-foreground));margin-left:auto}:where([data-slot=menubar-sub-content]){z-index:50;min-width:8rem;transform-origin:var(--radix-menubar-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));padding:calc(var(--spacing) * 1);color:rgb(var(--popover-foreground));--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);border-width:1px;overflow:hidden}:where([data-slot=menubar-sub-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=menubar-sub-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=menubar-sub-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=menubar-sub-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=menubar-sub-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=menubar-sub-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=menubar-sub-trigger]){cursor:default;border-radius:calc(var(--radius) - 2px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;-webkit-user-select:none;user-select:none;outline-style:none;align-items:center;display:flex}:where([data-slot=menubar-sub-trigger]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=menubar-sub-trigger])[data-inset]{padding-left:calc(var(--spacing) * 8)}:where([data-slot=menubar-sub-trigger])[data-state=open]{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=menubar-trigger]){border-radius:calc(var(--radius) - 2px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);--tw-outline-style:none;outline-style:none;align-items:center;display:flex}@media (forced-colors:active){:where([data-slot=menubar-trigger]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=menubar-trigger]){-webkit-user-select:none;user-select:none}:where([data-slot=menubar-trigger]):focus,:where([data-slot=menubar-trigger])[data-state=open]{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=navbar]){top:calc(var(--spacing) * 0);right:calc(var(--spacing) * 0);left:calc(var(--spacing) * 0);z-index:50;height:65px;font-family:Aspekta,ui-sans-serif,system-ui,sans-serif;position:fixed}:where([data-slot=navbar]):where(:not([data-variant])){border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgb(var(--border));background-color:rgb(var(--card))}:where([data-slot=navbar]):where(:not([data-variant])):is(.dark *){background-color:rgb(var(--background))}:where([data-slot=navbar]):where([data-variant=solid]){border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgb(var(--border));background-color:rgb(var(--card))}:where([data-slot=navbar]):where([data-variant=solid]):is(.dark *){background-color:rgb(var(--background))}:where([data-slot=navbar]):where([data-variant=transparent]){background-color:#0000}:where([data-slot=navbar]):where([data-variant=minimal]){border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgb(var(--border))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=navbar]):where([data-variant=minimal]){border-color:color-mix(in oklab, rgb(var(--border)) 50%, transparent)}}:where([data-slot=navbar]):where([data-variant=minimal]){background-color:rgb(var(--card))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=navbar]):where([data-variant=minimal]){background-color:color-mix(in oklab, rgb(var(--card)) 80%, transparent)}}:where([data-slot=navbar]):where([data-variant=minimal]){--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,)}:where([data-slot=navbar]):where([data-variant=minimal]):is(.dark *){background-color:rgb(var(--background))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=navbar]):where([data-variant=minimal]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--background)) 80%, transparent)}}:where([data-slot=navbar-actions]){align-items:center;gap:calc(var(--spacing) * 2);display:none}@media (min-width:48rem){:where([data-slot=navbar-actions]){display:flex}}:where([data-slot=navbar-link]){padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);color:rgb(var(--foreground));transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){:where([data-slot=navbar-link]):hover{opacity:.7}}:where([data-slot=navbar-logo]){flex-shrink:0}:where([data-slot=navbar-mobile]){border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgb(var(--border));background-color:rgb(var(--card))}@media (min-width:48rem){:where([data-slot=navbar-mobile]){display:none}}:where([data-slot=navbar-mobile]):is(.dark *){background-color:rgb(var(--background))}:where([data-slot=navbar-nav]){align-items:center;gap:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);display:none}@media (min-width:48rem){:where([data-slot=navbar-nav]){display:flex}}:where([data-slot=navigation-menu]){flex:1;justify-content:center;align-items:center;max-width:max-content;display:flex;position:relative}:where([data-slot=navigation-menu-content]){top:calc(var(--spacing) * 0);left:calc(var(--spacing) * 0);width:100%;padding:calc(var(--spacing) * 2);padding-right:calc(var(--spacing) * 2.5)}:where([data-slot=navigation-menu-content])[data-motion=from-end]{--tw-enter-translate-x:calc(52*var(--spacing))}:where([data-slot=navigation-menu-content])[data-motion=from-start]{--tw-enter-translate-x:calc(52*var(--spacing)*-1)}:where([data-slot=navigation-menu-content])[data-motion=to-end]{--tw-exit-translate-x:calc(52*var(--spacing))}:where([data-slot=navigation-menu-content])[data-motion=to-start]{--tw-exit-translate-x:calc(52*var(--spacing)*-1)}:where([data-slot=navigation-menu-content])[data-motion^=from-]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0}:where([data-slot=navigation-menu-content])[data-motion^=to-]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0}@media (min-width:48rem){:where([data-slot=navigation-menu-content]){width:auto;position:absolute}}:where([data-slot=navigation-menu-indicator]){z-index:1;height:calc(var(--spacing) * 1.5);justify-content:center;align-items:flex-end;display:flex;top:100%;overflow:hidden}:where([data-slot=navigation-menu-indicator])[data-state=hidden]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0}:where([data-slot=navigation-menu-indicator])[data-state=visible]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0}:where([data-slot=navigation-menu-item]){position:relative}:where([data-slot=navigation-menu-link]){gap:calc(var(--spacing) * 1);border-radius:calc(var(--radius) - 2px);padding:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;outline-style:none;flex-direction:column;display:flex}@media (hover:hover){:where([data-slot=navigation-menu-link]):hover{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}}:where([data-slot=navigation-menu-link]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=navigation-menu-link]):focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=navigation-menu-link]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=navigation-menu-link]):focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}:where([data-slot=navigation-menu-link])[data-active=true]{background-color:rgb(var(--accent))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=navigation-menu-link])[data-active=true]{background-color:color-mix(in oklab, rgb(var(--accent)) 50%, transparent)}}:where([data-slot=navigation-menu-link])[data-active=true]{color:rgb(var(--accent-foreground))}@media (hover:hover){:where([data-slot=navigation-menu-link])[data-active=true]:hover{background-color:rgb(var(--accent))}}:where([data-slot=navigation-menu-link])[data-active=true]:focus{background-color:rgb(var(--accent))}:where([data-slot=navigation-menu-link]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=navigation-menu-link]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:where([data-slot=navigation-menu-list]){justify-content:center;align-items:center;gap:calc(var(--spacing) * 1);flex:1;list-style-type:none;display:flex}:where([data-slot=navigation-menu-viewport]){margin-top:calc(var(--spacing) * 1.5);height:var(--radix-navigation-menu-viewport-height);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));width:100%;color:rgb(var(--popover-foreground));--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);border-width:1px;position:relative;overflow:hidden}:where([data-slot=navigation-menu-viewport])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-scale:.95}:where([data-slot=navigation-menu-viewport])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-scale:.9}@media (min-width:48rem){:where([data-slot=navigation-menu-viewport]){width:var(--radix-navigation-menu-viewport-width)}}:where([data-slot=page-layout]){background-color:rgb(var(--background));min-height:100vh;color:rgb(var(--foreground));flex-direction:column;display:flex}:where([data-slot=page-layout-main]){min-width:calc(var(--spacing) * 0);flex:1}:where([data-slot=page-layout-sidebar]){width:calc(var(--spacing) * 64);border-right-style:var(--tw-border-style);border-right-width:1px;border-color:rgb(var(--border));background-color:rgb(var(--background));flex-shrink:0;display:none}@media (min-width:64rem){:where([data-slot=page-layout-sidebar]){display:block}}:where([data-slot=pagination]){justify-content:center;width:100%;margin-inline:auto;display:flex}:where([data-slot=pagination-content]){align-items:center;gap:calc(var(--spacing) * 1);flex-direction:row;display:flex}:where([data-slot=pagination-ellipsis]){width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9);justify-content:center;align-items:center;display:flex}:where([data-slot=popover-content]){z-index:50;width:calc(var(--spacing) * 72);transform-origin:var(--radix-popover-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));padding:calc(var(--spacing) * 4);color:rgb(var(--popover-foreground));--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);--tw-outline-style:none;border-width:1px;outline-style:none}@media (forced-colors:active){:where([data-slot=popover-content]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=popover-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=popover-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=popover-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=popover-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=popover-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=popover-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=progress]){height:calc(var(--spacing) * 2);background-color:rgb(var(--primary));border-radius:3.40282e38px;width:100%;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){:where([data-slot=progress]){background-color:color-mix(in oklab, rgb(var(--primary)) 20%, transparent)}}:where([data-slot=progress-indicator]){background-color:rgb(var(--primary));width:100%;height:100%;transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));flex:1}:where([data-slot=radio-group]){gap:calc(var(--spacing) * 3);display:grid}:where([data-slot=radio-group-indicator]){justify-content:center;align-items:center;display:flex;position:relative}:where([data-slot=radio-group-item]){aspect-ratio:1;width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--input));color:rgb(var(--primary));--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;border-radius:3.40282e38px;outline-style:none;flex-shrink:0}:where([data-slot=radio-group-item]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=radio-group-item]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=radio-group-item]):disabled{cursor:not-allowed;opacity:.5}:where([data-slot=radio-group-item])[aria-invalid=true]{border-color:rgb(var(--destructive));--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=radio-group-item])[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=radio-group-item]):is(.dark *){background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=radio-group-item]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}:where([data-slot=radio-group-item]):is(.dark *)[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=radio-group-item]):is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=resizable-handle]){background-color:rgb(var(--border));justify-content:center;align-items:center;width:1px;display:flex;position:relative}:where([data-slot=resizable-handle]):after{content:var(--tw-content);content:var(--tw-content);inset-block:calc(var(--spacing) * 0);content:var(--tw-content);content:var(--tw-content);width:calc(var(--spacing) * 1);content:var(--tw-content);--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);position:absolute;left:50%}:where([data-slot=resizable-handle]):focus-visible{--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);--tw-ring-color:rgb(var(--ring));--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:where([data-slot=resizable-handle]):focus-visible{outline-offset:2px;outline:2px solid #0000}}:where([data-slot=resizable-handle])[data-panel-group-direction=vertical]{width:100%;height:1px}:where([data-slot=resizable-handle])[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:calc(var(--spacing) * 0);content:var(--tw-content);height:calc(var(--spacing) * 1);content:var(--tw-content);content:var(--tw-content);--tw-translate-x:calc(var(--spacing) * 0);width:100%;translate:var(--tw-translate-x) var(--tw-translate-y);content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}:where([data-slot=resizable-handle])[data-panel-group-direction=vertical]>div{rotate:90deg}:where([data-slot=resizable-panel-group]){width:100%;height:100%;display:flex}:where([data-slot=resizable-panel-group])[data-panel-group-direction=vertical]{flex-direction:column}:where([data-slot=scroll-area]){position:relative}:where([data-slot=scroll-area-scrollbar]){touch-action:none;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));-webkit-user-select:none;user-select:none;padding:1px;display:flex}:where([data-slot=scroll-area-thumb]){background-color:rgb(var(--border));border-radius:3.40282e38px;flex:1;position:relative}:where([data-slot=scroll-area-viewport]){border-radius:inherit;width:100%;height:100%;transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;outline-style:none}:where([data-slot=scroll-area-viewport]):focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=scroll-area-viewport]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=scroll-area-viewport]):focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}:where([data-slot=section]){padding-block:calc(var(--spacing) * 10)}:where([data-slot=section]):where([data-variant=highlighted]){margin-block:calc(var(--spacing) * 8);background-color:rgb(var(--card))}:where([data-slot=section]):where([data-variant=accent]){margin-block:calc(var(--spacing) * 8);background-color:rgb(var(--primary))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=section]):where([data-variant=accent]){background-color:color-mix(in oklab, rgb(var(--primary)) 5%, transparent)}}:where([data-slot=section]):where([data-width=narrow]){max-width:var(--container-3xl);margin-inline:auto}:where([data-slot=section]):where(:not([data-width])),:where([data-slot=section]):where([data-width=default]){max-width:var(--container-5xl);margin-inline:auto}:where([data-slot=section]):where([data-width=wide]){max-width:var(--container-7xl);margin-inline:auto}:where([data-slot=section]):where([data-width=full]){width:100%}:where([data-slot=select-content]){z-index:50;max-height:var(--radix-select-content-available-height);min-width:8rem;transform-origin:var(--radix-select-content-transform-origin);border-radius:var(--radius);border-style:var(--tw-border-style);background-color:rgb(var(--popover));color:rgb(var(--popover-foreground));--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);border-width:1px;position:relative;overflow:hidden auto}:where([data-slot=select-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=select-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=select-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=select-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=select-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}:where([data-slot=select-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=select-item]){cursor:default;align-items:center;gap:calc(var(--spacing) * 2);border-radius:calc(var(--radius) - 2px);width:100%;padding-block:calc(var(--spacing) * 1.5);padding-right:calc(var(--spacing) * 8);padding-left:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-outline-style:none;outline-style:none;display:flex;position:relative}@media (forced-colors:active){:where([data-slot=select-item]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=select-item]){-webkit-user-select:none;user-select:none}:where([data-slot=select-item]):focus{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}:where([data-slot=select-item])[data-disabled]{pointer-events:none;opacity:.5}:where([data-slot=select-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=select-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=select-item]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:is(:where([data-slot=select-item])>*):is(span):last-child{align-items:center;gap:calc(var(--spacing) * 2);display:flex}:where([data-slot=select-label]){padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:rgb(var(--muted-foreground))}:where([data-slot=select-scroll-down-button]),:where([data-slot=select-scroll-up-button]){cursor:default;padding-block:calc(var(--spacing) * 1);justify-content:center;align-items:center;display:flex}:where([data-slot=select-separator]){pointer-events:none;margin-inline:calc(var(--spacing) * -1);margin-block:calc(var(--spacing) * 1);background-color:rgb(var(--border));height:1px}:where([data-slot=select-trigger]){justify-content:space-between;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius);border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--input));width:fit-content;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));white-space:nowrap;--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;background-color:#0000;outline-style:none;display:flex}:where([data-slot=select-trigger]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=select-trigger]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=select-trigger]):disabled{cursor:not-allowed;opacity:.5}:where([data-slot=select-trigger])[aria-invalid=true]{border-color:rgb(var(--destructive));--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=select-trigger])[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=select-trigger])[data-placeholder]{color:rgb(var(--muted-foreground))}:where([data-slot=select-trigger])[data-size=default]{height:calc(var(--spacing) * 9)}:where([data-slot=select-trigger])[data-size=sm]{height:calc(var(--spacing) * 8)}:is(:where([data-slot=select-trigger])>*)[data-slot=select-value]{-webkit-line-clamp:1;align-items:center;gap:calc(var(--spacing) * 2);-webkit-box-orient:vertical;display:flex;overflow:hidden}:where([data-slot=select-trigger]):is(.dark *){background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=select-trigger]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}@media (hover:hover){:where([data-slot=select-trigger]):is(.dark *):hover{background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=select-trigger]):is(.dark *):hover{background-color:color-mix(in oklab, rgb(var(--input)) 50%, transparent)}}}:where([data-slot=select-trigger]):is(.dark *)[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=select-trigger]):is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=select-trigger]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=select-trigger]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=select-trigger]) svg:not([class*=text-]){color:rgb(var(--muted-foreground))}:where([data-slot=separator]){background-color:rgb(var(--border));flex-shrink:0}:where([data-slot=separator])[data-orientation=horizontal]{width:100%;height:1px}:where([data-slot=separator])[data-orientation=vertical]{width:1px;height:100%}:where([data-slot=sheet-content]){z-index:50;gap:calc(var(--spacing) * 4);background-color:rgb(var(--background));--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);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));--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out);flex-direction:column;display:flex;position:fixed}:where([data-slot=sheet-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-duration:.3s;transition-duration:.3s}:where([data-slot=sheet-content])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-duration:.5s;transition-duration:.5s}:where([data-slot=sheet-description]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--muted-foreground))}:where([data-slot=sheet-footer]){gap:calc(var(--spacing) * 2);padding:calc(var(--spacing) * 4);flex-direction:column;margin-top:auto;display:flex}:where([data-slot=sheet-header]){gap:calc(var(--spacing) * 1.5);padding:calc(var(--spacing) * 4);flex-direction:column;display:flex}:where([data-slot=sheet-overlay]){inset:calc(var(--spacing) * 0);z-index:50;background-color:#00000080;position:fixed}@supports (color:color-mix(in lab, red, red)){:where([data-slot=sheet-overlay]){background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}:where([data-slot=sheet-overlay])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0}:where([data-slot=sheet-overlay])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-opacity:0}:where([data-slot=sheet-title]){--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:rgb(var(--foreground))}:where([data-slot=sidebar]){height:100%;width:var(--sidebar-width);background-color:rgb(var(--sidebar));padding:calc(var(--spacing) * 0);color:rgb(var(--sidebar-foreground));flex-direction:column;display:none}@media (min-width:48rem){:where([data-slot=sidebar]){display:block}}:where([data-slot=sidebar])>button{display:none}:where([data-slot=sidebar-container]){inset-block:calc(var(--spacing) * 0);z-index:10;height:100svh;width:var(--sidebar-width);transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.2s;--tw-ease:linear;transition-duration:.2s;transition-timing-function:linear;display:none;position:fixed}@media (min-width:48rem){:where([data-slot=sidebar-container]){display:flex}}:where([data-slot=sidebar-content]){min-height:calc(var(--spacing) * 0);gap:calc(var(--spacing) * 2);flex-direction:column;flex:1;display:flex;overflow:auto}:where([data-slot=sidebar-content]):is(:where(.group)[data-collapsible=icon] *){overflow:hidden}:where([data-slot=sidebar-footer]){gap:calc(var(--spacing) * 2);padding:calc(var(--spacing) * 2);flex-direction:column;display:flex}:where([data-slot=sidebar-gap]){width:var(--sidebar-width);transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.2s;--tw-ease:linear;background-color:#0000;transition-duration:.2s;transition-timing-function:linear;position:relative}:where([data-slot=sidebar-group]){width:100%;min-width:calc(var(--spacing) * 0);padding:calc(var(--spacing) * 2);flex-direction:column;display:flex;position:relative}:where([data-slot=sidebar-group-action]){top:calc(var(--spacing) * 3.5);right:calc(var(--spacing) * 3);aspect-ratio:1;width:calc(var(--spacing) * 5);border-radius:var(--radius);padding:calc(var(--spacing) * 0);color:rgb(var(--sidebar-foreground));--tw-ring-color:rgb(var(--sidebar-ring));--tw-outline-style:none;outline-style:none;justify-content:center;align-items:center;display:flex;position:absolute}@media (forced-colors:active){:where([data-slot=sidebar-group-action]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=sidebar-group-action]){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))}@media (hover:hover){:where([data-slot=sidebar-group-action]):hover{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground))}}:where([data-slot=sidebar-group-action]):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)}:where([data-slot=sidebar-group-action])>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);flex-shrink:0}:where([data-slot=sidebar-group-content]){width:100%;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}:where([data-slot=sidebar-group-label]){height:calc(var(--spacing) * 8);border-radius:var(--radius);padding-inline:calc(var(--spacing) * 2);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:rgb(var(--sidebar-foreground));flex-shrink:0;align-items:center;display:flex}@supports (color:color-mix(in lab, red, red)){:where([data-slot=sidebar-group-label]){color:color-mix(in oklab, rgb(var(--sidebar-foreground)) 70%, transparent)}}:where([data-slot=sidebar-group-label]){--tw-ring-color:rgb(var(--sidebar-ring));--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:where([data-slot=sidebar-group-label]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=sidebar-group-label]){transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.2s;--tw-ease:linear;transition-duration:.2s;transition-timing-function:linear}:where([data-slot=sidebar-group-label]):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)}:where([data-slot=sidebar-group-label])>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);flex-shrink:0}:where([data-slot=sidebar-header]){gap:calc(var(--spacing) * 2);padding:calc(var(--spacing) * 2);flex-direction:column;display:flex}:where([data-slot=sidebar-inner]){background-color:rgb(var(--sidebar));flex-direction:column;width:100%;height:100%;display:flex}:where([data-slot=sidebar-inner]):is(:where(.group)[data-variant=floating] *){border-radius:calc(var(--radius) + 2px);border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--sidebar-border));--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)}:where([data-slot=sidebar-input]){height:calc(var(--spacing) * 8);background-color:rgb(var(--background));--tw-shadow:0 0 #0000;width:100%;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}:where([data-slot=sidebar-inset]){background-color:rgb(var(--background));flex-direction:column;flex:1;width:100%;display:flex;position:relative}:where([data-slot=sidebar-menu]){width:100%;min-width:calc(var(--spacing) * 0);gap:calc(var(--spacing) * 1);flex-direction:column;display:flex}:where([data-slot=sidebar-menu-action]){top:calc(var(--spacing) * 1.5);right:calc(var(--spacing) * 1);aspect-ratio:1;width:calc(var(--spacing) * 5);border-radius:var(--radius);padding:calc(var(--spacing) * 0);color:rgb(var(--sidebar-foreground));--tw-ring-color:rgb(var(--sidebar-ring));--tw-outline-style:none;outline-style:none;justify-content:center;align-items:center;display:flex;position:absolute}@media (forced-colors:active){:where([data-slot=sidebar-menu-action]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=sidebar-menu-action]){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))}@media (hover:hover){:where([data-slot=sidebar-menu-action]):is(:where(.peer\/menu-button):hover~*){color:rgb(var(--sidebar-accent-foreground))}:where([data-slot=sidebar-menu-action]):hover{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground))}}:where([data-slot=sidebar-menu-action]):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)}:where([data-slot=sidebar-menu-action])>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);flex-shrink:0}:where([data-slot=sidebar-menu-badge]){pointer-events:none;right:calc(var(--spacing) * 1);height:calc(var(--spacing) * 5);min-width:calc(var(--spacing) * 5);border-radius:var(--radius);padding-inline:calc(var(--spacing) * 1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:rgb(var(--sidebar-foreground));--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;display:flex;position:absolute}:where([data-slot=sidebar-menu-button]){align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius);width:100%;padding:calc(var(--spacing) * 2);text-align:left;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-ring-color:rgb(var(--sidebar-ring));--tw-outline-style:none;outline-style:none;display:flex;overflow:hidden}@media (forced-colors:active){:where([data-slot=sidebar-menu-button]){outline-offset:2px;outline:2px solid #0000}}:where([data-slot=sidebar-menu-button]){transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}:where([data-slot=sidebar-menu-button]):is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-right:calc(var(--spacing) * 8)}:where([data-slot=sidebar-menu-button]):is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing) * 8)!important;height:calc(var(--spacing) * 8)!important;padding:calc(var(--spacing) * 2)!important}@media (hover:hover){:where([data-slot=sidebar-menu-button]):hover{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground))}}:where([data-slot=sidebar-menu-button]):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)}:where([data-slot=sidebar-menu-button]):active{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground))}:where([data-slot=sidebar-menu-button]):disabled,:where([data-slot=sidebar-menu-button])[aria-disabled=true]{pointer-events:none;opacity:.5}:where([data-slot=sidebar-menu-button])[data-active=true]{background-color:rgb(var(--sidebar-accent));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:rgb(var(--sidebar-accent-foreground))}@media (hover:hover){:where([data-slot=sidebar-menu-button])[data-state=open]:hover{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground))}}:where([data-slot=sidebar-menu-button])>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:where([data-slot=sidebar-menu-button])>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);flex-shrink:0}@media (hover:hover){:where([data-slot=sidebar-menu-button]):where(:not([data-variant])):hover,:where([data-slot=sidebar-menu-button]):where([data-variant=default]):hover{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground))}}:where([data-slot=sidebar-menu-button]):where([data-variant=outline]){background-color:rgb(var(--background));--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-border)));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (hover:hover){:where([data-slot=sidebar-menu-button]):where([data-variant=outline]):hover{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground));--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-accent)));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}:where([data-slot=sidebar-menu-button]):where(:not([data-size])),:where([data-slot=sidebar-menu-button]):where([data-size=default]){height:calc(var(--spacing) * 8);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}:where([data-slot=sidebar-menu-button]):where([data-size=sm]){height:calc(var(--spacing) * 7);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}:where([data-slot=sidebar-menu-button]):where([data-size=lg]){height:calc(var(--spacing) * 12);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}:where([data-slot=sidebar-menu-button]):where([data-size=lg]):is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing) * 0)!important}:where([data-slot=sidebar-menu-item]){position:relative}:where([data-slot=sidebar-menu-skeleton]){height:calc(var(--spacing) * 8);align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius);padding-inline:calc(var(--spacing) * 2);display:flex}:where([data-slot=sidebar-menu-sub]){margin-inline:calc(var(--spacing) * 3.5);min-width:calc(var(--spacing) * 0);--tw-translate-x:1px;translate:var(--tw-translate-x) var(--tw-translate-y);gap:calc(var(--spacing) * 1);border-left-style:var(--tw-border-style);border-left-width:1px;border-color:rgb(var(--sidebar-border));padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * .5);flex-direction:column;display:flex}:where([data-slot=sidebar-menu-sub-button]){height:calc(var(--spacing) * 7);min-width:calc(var(--spacing) * 0);--tw-translate-x:-1px;translate:var(--tw-translate-x) var(--tw-translate-y);align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius);padding-inline:calc(var(--spacing) * 2);color:rgb(var(--sidebar-foreground));--tw-ring-color:rgb(var(--sidebar-ring));--tw-outline-style:none;outline-style:none;display:flex;overflow:hidden}@media (forced-colors:active){:where([data-slot=sidebar-menu-sub-button]){outline-offset:2px;outline:2px solid #0000}}@media (hover:hover){:where([data-slot=sidebar-menu-sub-button]):hover{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground))}}:where([data-slot=sidebar-menu-sub-button]):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)}:where([data-slot=sidebar-menu-sub-button]):active{background-color:rgb(var(--sidebar-accent));color:rgb(var(--sidebar-accent-foreground))}:where([data-slot=sidebar-menu-sub-button]):disabled,:where([data-slot=sidebar-menu-sub-button])[aria-disabled=true]{pointer-events:none;opacity:.5}:where([data-slot=sidebar-menu-sub-button])>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:where([data-slot=sidebar-menu-sub-button])>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);color:rgb(var(--sidebar-accent-foreground));flex-shrink:0}:where([data-slot=sidebar-menu-sub-item]){position:relative}:where([data-slot=sidebar-rail]){inset-block:calc(var(--spacing) * 0);z-index:20;width:calc(var(--spacing) * 4);--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-ease:linear;transition-timing-function:linear;display:none;position:absolute}:where([data-slot=sidebar-rail]):is(:where(.group)[data-side=left] *){right:calc(var(--spacing) * -4)}:where([data-slot=sidebar-rail]):is(:where(.group)[data-side=right] *){left:calc(var(--spacing) * 0)}:where([data-slot=sidebar-rail]):after{content:var(--tw-content);content:var(--tw-content);inset-block:calc(var(--spacing) * 0);content:var(--tw-content);content:var(--tw-content);width:2px;position:absolute;left:50%}@media (hover:hover){:where([data-slot=sidebar-rail]):hover:after{content:var(--tw-content);background-color:rgb(var(--sidebar-border))}}@media (min-width:40rem){:where([data-slot=sidebar-rail]){display:flex}}:where([data-slot=sidebar-separator]){margin-inline:calc(var(--spacing) * 2);background-color:rgb(var(--sidebar-border));width:auto}:where([data-slot=sidebar-trigger]){width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}:where([data-slot=sidebar-wrapper]){width:100%;min-height:100svh;display:flex}:where([data-slot=sidebar-wrapper]):has([data-variant=inset]){background-color:rgb(var(--sidebar))}:where([data-slot=skeleton]){animation:var(--animate-pulse);border-radius:var(--radius);background-color:rgb(var(--accent))}:where([data-slot=slider]){touch-action:none;-webkit-user-select:none;user-select:none;align-items:center;width:100%;display:flex;position:relative}:where([data-slot=slider])[data-disabled]{opacity:.5}:where([data-slot=slider])[data-orientation=vertical]{height:100%;min-height:calc(var(--spacing) * 44);flex-direction:column;width:auto}:where([data-slot=slider-range]){background-color:rgb(var(--primary));position:absolute}:where([data-slot=slider-range])[data-orientation=horizontal]{height:100%}:where([data-slot=slider-range])[data-orientation=vertical]{width:100%}:where([data-slot=slider-thumb]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--primary));background-color:var(--color-white);--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);--tw-ring-color:rgb(var(--ring));border-radius:3.40282e38px;flex-shrink:0;display:block}@supports (color:color-mix(in lab, red, red)){:where([data-slot=slider-thumb]){--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=slider-thumb]){transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){:where([data-slot=slider-thumb]):hover{--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)}}:where([data-slot=slider-thumb]):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);--tw-outline-style:none;outline-style:none}@media (forced-colors:active){:where([data-slot=slider-thumb]):focus-visible{outline-offset:2px;outline:2px solid #0000}}:where([data-slot=slider-thumb]):disabled{pointer-events:none;opacity:.5}:where([data-slot=slider-track]){background-color:rgb(var(--muted));border-radius:3.40282e38px;flex-grow:1;position:relative;overflow:hidden}:where([data-slot=slider-track])[data-orientation=horizontal]{height:calc(var(--spacing) * 1.5);width:100%}:where([data-slot=slider-track])[data-orientation=vertical]{height:100%;width:calc(var(--spacing) * 1.5)}:where([data-slot=switch]){height:1.15rem;width:calc(var(--spacing) * 8);border-style:var(--tw-border-style);--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;border-width:1px;border-color:#0000;border-radius:3.40282e38px;outline-style:none;flex-shrink:0;align-items:center;display:inline-flex}:where([data-slot=switch]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=switch]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=switch]):disabled{cursor:not-allowed;opacity:.5}:where([data-slot=switch])[data-state=checked]{background-color:rgb(var(--primary))}:where([data-slot=switch])[data-state=unchecked]{background-color:#7f7f79}:where([data-slot=switch]):is(.dark *)[data-state=unchecked]{background-color:rgb(var(--input))}:where([data-slot=switch-thumb]){pointer-events:none;width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);background-color:rgb(var(--background));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + 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);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));border-radius:3.40282e38px;display:block}:where([data-slot=switch-thumb])[data-state=checked]{--tw-translate-x:calc(100% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}:where([data-slot=switch-thumb])[data-state=unchecked]{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}:where([data-slot=switch-thumb]):is(.dark *)[data-state=checked]{background-color:rgb(var(--primary-foreground))}:where([data-slot=switch-thumb]):is(.dark *)[data-state=unchecked]{background-color:rgb(var(--foreground))}:where([data-slot=table]){caption-side:bottom;width:100%;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}:where([data-slot=table-body]) tr:last-child{border-style:var(--tw-border-style);border-width:0}:where([data-slot=table-caption]){margin-top:calc(var(--spacing) * 4);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:rgb(var(--muted-foreground))}:where([data-slot=table-cell]){padding:calc(var(--spacing) * 2);vertical-align:middle;white-space:nowrap}:where([data-slot=table-cell]):has([role=checkbox]){padding-right:calc(var(--spacing) * 0)}:where([data-slot=table-cell])>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}:where([data-slot=table-container]){width:100%;position:relative;overflow-x:auto}:where([data-slot=table-footer]){border-top-style:var(--tw-border-style);background-color:rgb(var(--muted));border-top-width:1px}@supports (color:color-mix(in lab, red, red)){:where([data-slot=table-footer]){background-color:color-mix(in oklab, rgb(var(--muted)) 50%, transparent)}}:where([data-slot=table-footer]){--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}:where([data-slot=table-footer])>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}:where([data-slot=table-head]){height:calc(var(--spacing) * 10);padding-inline:calc(var(--spacing) * 2);text-align:left;vertical-align:middle;--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);white-space:nowrap;color:rgb(var(--foreground))}:where([data-slot=table-head]):has([role=checkbox]){padding-right:calc(var(--spacing) * 0)}:where([data-slot=table-head])>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}:where([data-slot=table-header]) tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}:where([data-slot=table-row]){border-bottom-style:var(--tw-border-style);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));border-bottom-width:1px}@media (hover:hover){:where([data-slot=table-row]):hover{background-color:rgb(var(--muted))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=table-row]):hover{background-color:color-mix(in oklab, rgb(var(--muted)) 50%, transparent)}}}:where([data-slot=table-row])[data-state=selected]{background-color:rgb(var(--muted))}:where([data-slot=tabs]){gap:calc(var(--spacing) * 2);flex-direction:column;display:flex}:where([data-slot=tabs-content]){--tw-outline-style:none;outline-style:none;flex:1}:where([data-slot=tabs-list]){height:calc(var(--spacing) * 9);border-radius:calc(var(--radius) + 2px);background-color:rgb(var(--border));width:fit-content;color:rgb(var(--muted-foreground));justify-content:center;align-items:center;padding:3px;display:inline-flex}:where([data-slot=tabs-trigger]){justify-content:center;align-items:center;gap:calc(var(--spacing) * 1.5);border-radius:var(--radius);border-style:var(--tw-border-style);height:calc(100% - 1px);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);white-space:nowrap;color:rgb(var(--foreground));transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));border-width:1px;border-color:#0000;flex:1;display:inline-flex}:where([data-slot=tabs-trigger]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=tabs-trigger]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=tabs-trigger]):focus-visible{outline-style:var(--tw-outline-style);outline-width:1px;outline-color:rgb(var(--ring))}:where([data-slot=tabs-trigger]):disabled{pointer-events:none;opacity:.5}:where([data-slot=tabs-trigger])[data-state=active]{background-color:rgb(var(--card));--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)}:where([data-slot=tabs-trigger]):is(.dark *){color:rgb(var(--muted-foreground))}:where([data-slot=tabs-trigger]):is(.dark *)[data-state=active]{border-color:rgb(var(--input));background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=tabs-trigger]):is(.dark *)[data-state=active]{background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}:where([data-slot=tabs-trigger]):is(.dark *)[data-state=active]{color:rgb(var(--foreground))}:where([data-slot=tabs-trigger]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=tabs-trigger]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=textarea]){field-sizing:content;min-height:calc(var(--spacing) * 16);border-radius:var(--radius);border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--input));width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;background-color:#0000;outline-style:none;display:flex}:where([data-slot=textarea])::placeholder{color:rgb(var(--muted-foreground))}:where([data-slot=textarea]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=textarea]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=textarea]):disabled{cursor:not-allowed;opacity:.5}:where([data-slot=textarea])[aria-invalid=true]{border-color:rgb(var(--destructive));--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=textarea])[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}@media (min-width:48rem){:where([data-slot=textarea]){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}:where([data-slot=textarea]):is(.dark *){background-color:rgb(var(--input))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=textarea]):is(.dark *){background-color:color-mix(in oklab, rgb(var(--input)) 30%, transparent)}}:where([data-slot=textarea]):is(.dark *)[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=textarea]):is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=toast]){pointer-events:auto;justify-content:space-between;align-items:center;width:100%;display:flex;position:relative}:where(:where([data-slot=toast])>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)))}:where([data-slot=toast]){border-radius:var(--radius);border-style:var(--tw-border-style);padding:calc(var(--spacing) * 6);padding-right:calc(var(--spacing) * 8);--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);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));border-width:1px;overflow:hidden}:where([data-slot=toast])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:.8;--tw-exit-translate-x:calc(1*100%)}:where([data-slot=toast])[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-enter-translate-y:calc(1*-100%)}:where([data-slot=toast])[data-swipe=cancel]{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}:where([data-slot=toast])[data-swipe=end]{--tw-translate-x:var(--radix-toast-swipe-end-x);translate:var(--tw-translate-x) var(--tw-translate-y);animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards)}:where([data-slot=toast])[data-swipe=move]{--tw-translate-x:var(--radix-toast-swipe-move-x);translate:var(--tw-translate-x) var(--tw-translate-y);transition-property:none}@media (min-width:40rem){:where([data-slot=toast])[data-state=open]{--tw-enter-translate-y:calc(1*100%)}}:where([data-slot=toast]):where(:not([data-variant])),:where([data-slot=toast]):where([data-variant=default]){border-style:var(--tw-border-style);background-color:rgb(var(--background));color:rgb(var(--foreground));border-width:1px}:where([data-slot=toast]):where([data-variant=destructive]){border-color:rgb(var(--destructive));background-color:rgb(var(--destructive));color:rgb(var(--destructive-foreground))}:where([data-slot=toggle]){justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);white-space:nowrap;transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;outline-style:none;display:inline-flex}@media (hover:hover){:where([data-slot=toggle]):hover{background-color:rgb(var(--muted));color:rgb(var(--muted-foreground))}}:where([data-slot=toggle]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=toggle]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=toggle]):disabled{pointer-events:none;opacity:.5}:where([data-slot=toggle])[aria-invalid=true]{border-color:rgb(var(--destructive));--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=toggle])[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=toggle])[data-state=on]{background-color:rgb(var(--primary));color:rgb(var(--primary-foreground))}:where([data-slot=toggle]):is(.dark *)[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=toggle]):is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=toggle]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=toggle]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=toggle]):where(:not([data-variant])),:where([data-slot=toggle]):where([data-variant=default]){background-color:#0000}:where([data-slot=toggle]):where([data-variant=outline]){border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--input));--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);background-color:#0000}@media (hover:hover){:where([data-slot=toggle]):where([data-variant=outline]):hover{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}}:where([data-slot=toggle]):where(:not([data-size])){height:calc(var(--spacing) * 9);min-width:calc(var(--spacing) * 9);padding-inline:calc(var(--spacing) * 4)}:where([data-slot=toggle]):where(:not([data-size])):has(>svg){padding-inline:calc(var(--spacing) * 3)}:where([data-slot=toggle]):where([data-size=default]){height:calc(var(--spacing) * 9);min-width:calc(var(--spacing) * 9);padding-inline:calc(var(--spacing) * 4)}:where([data-slot=toggle]):where([data-size=default]):has(>svg){padding-inline:calc(var(--spacing) * 3)}:where([data-slot=toggle]):where([data-size=sm]){height:calc(var(--spacing) * 8);min-width:calc(var(--spacing) * 8);padding-inline:calc(var(--spacing) * 3)}:where([data-slot=toggle]):where([data-size=sm]):has(>svg){padding-inline:calc(var(--spacing) * 2.5)}:where([data-slot=toggle]):where([data-size=lg]){height:calc(var(--spacing) * 10);min-width:calc(var(--spacing) * 10);padding-inline:calc(var(--spacing) * 6)}:where([data-slot=toggle]):where([data-size=lg]):has(>svg){padding-inline:calc(var(--spacing) * 4)}:where([data-slot=toggle-group]){border-radius:var(--radius);align-items:center;width:fit-content;display:flex}:where([data-slot=toggle-group])[data-variant=outline]{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}:where([data-slot=toggle-group-item]){justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);white-space:nowrap;--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);transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-outline-style:none;border-radius:0;outline-style:none;display:inline-flex}:where([data-slot=toggle-group-item]):first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}:where([data-slot=toggle-group-item]):last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}@media (hover:hover){:where([data-slot=toggle-group-item]):hover{background-color:rgb(var(--muted));color:rgb(var(--muted-foreground))}}:where([data-slot=toggle-group-item]):focus,:where([data-slot=toggle-group-item]):focus-visible{z-index:10}:where([data-slot=toggle-group-item]):focus-visible{border-color:rgb(var(--ring));--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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);--tw-ring-color:rgb(var(--ring))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=toggle-group-item]):focus-visible{--tw-ring-color:color-mix(in oklab, rgb(var(--ring)) 50%, transparent)}}:where([data-slot=toggle-group-item]):disabled{pointer-events:none;opacity:.5}:where([data-slot=toggle-group-item])[aria-invalid=true]{border-color:rgb(var(--destructive));--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=toggle-group-item])[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 20%, transparent)}}:where([data-slot=toggle-group-item])[data-state=on]{background-color:rgb(var(--primary));color:rgb(var(--primary-foreground))}:where([data-slot=toggle-group-item])[data-variant=outline]{border-left-style:var(--tw-border-style);border-left-width:0}:where([data-slot=toggle-group-item])[data-variant=outline]:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}:where([data-slot=toggle-group-item]):is(.dark *)[aria-invalid=true]{--tw-ring-color:rgb(var(--destructive))}@supports (color:color-mix(in lab, red, red)){:where([data-slot=toggle-group-item]):is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, rgb(var(--destructive)) 40%, transparent)}}:where([data-slot=toggle-group-item]) svg{pointer-events:none;flex-shrink:0}:where([data-slot=toggle-group-item]) svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:where([data-slot=toggle-group-item]):where(:not([data-variant])),:where([data-slot=toggle-group-item]):where([data-variant=default]){background-color:#0000}:where([data-slot=toggle-group-item]):where([data-variant=outline]){border-style:var(--tw-border-style);border-width:1px;border-color:rgb(var(--input));--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);background-color:#0000}@media (hover:hover){:where([data-slot=toggle-group-item]):where([data-variant=outline]):hover{background-color:rgb(var(--accent));color:rgb(var(--accent-foreground))}}:where([data-slot=toggle-group-item]):where(:not([data-size])){height:calc(var(--spacing) * 9);min-width:calc(var(--spacing) * 9);padding-inline:calc(var(--spacing) * 4)}:where([data-slot=toggle-group-item]):where(:not([data-size])):has(>svg){padding-inline:calc(var(--spacing) * 3)}:where([data-slot=toggle-group-item]):where([data-size=default]){height:calc(var(--spacing) * 9);min-width:calc(var(--spacing) * 9);padding-inline:calc(var(--spacing) * 4)}:where([data-slot=toggle-group-item]):where([data-size=default]):has(>svg){padding-inline:calc(var(--spacing) * 3)}:where([data-slot=toggle-group-item]):where([data-size=sm]){height:calc(var(--spacing) * 8);min-width:calc(var(--spacing) * 8);padding-inline:calc(var(--spacing) * 3)}:where([data-slot=toggle-group-item]):where([data-size=sm]):has(>svg){padding-inline:calc(var(--spacing) * 2.5)}:where([data-slot=toggle-group-item]):where([data-size=lg]){height:calc(var(--spacing) * 10);min-width:calc(var(--spacing) * 10);padding-inline:calc(var(--spacing) * 6)}:where([data-slot=toggle-group-item]):where([data-size=lg]):has(>svg){padding-inline:calc(var(--spacing) * 4)}:where([data-slot=tooltip-content]){z-index:50;width:fit-content;transform-origin:var(--radix-tooltip-content-transform-origin);animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);border-radius:var(--radius);background-color:rgb(var(--foreground));padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));text-wrap:balance;color:rgb(var(--background));--tw-enter-opacity:0;--tw-enter-scale:.95}:where([data-slot=tooltip-content])[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}:where([data-slot=tooltip-content])[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}:where([data-slot=tooltip-content])[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}:where([data-slot=tooltip-content])[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:where([data-slot=tooltip-content])[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,forwards);--tw-exit-opacity:0;--tw-exit-scale:.95}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:forwards}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{--background:240 240 236;--foreground:22 22 20;--card:249 249 247;--card-foreground:22 22 20;--popover:249 249 247;--popover-foreground:22 22 20;--primary:217 94 42;--primary-foreground:249 249 247;--secondary:240 240 236;--secondary-foreground:47 47 44;--muted:240 240 236;--muted-foreground:87 87 83;--accent:221 221 215;--accent-foreground:22 22 20;--destructive:180 50 50;--destructive-foreground:249 249 247;--border:196 196 189;--input:196 196 189;--ring:217 94 42;--hero-bg:221 221 215;--chart-1:217 94 42;--chart-2:87 87 83;--chart-3:127 127 121;--chart-4:166 166 159;--chart-5:47 47 44;--sidebar:240 240 236;--sidebar-foreground:22 22 20;--sidebar-primary:217 94 42;--sidebar-primary-foreground:249 249 247;--sidebar-accent:196 196 189;--sidebar-accent-foreground:22 22 20;--sidebar-border:196 196 189;--sidebar-ring:217 94 42}.dark{--background:22 22 20;--foreground:249 249 247;--card:47 47 44;--card-foreground:249 249 247;--popover:47 47 44;--popover-foreground:249 249 247;--primary:217 94 42;--primary-foreground:249 249 247;--secondary:87 87 83;--secondary-foreground:249 249 247;--muted:47 47 44;--muted-foreground:196 196 189;--accent:87 87 83;--accent-foreground:249 249 247;--destructive:180 50 50;--destructive-foreground:249 249 247;--border:87 87 83;--input:87 87 83;--ring:217 94 42;--hero-bg:47 47 44;--chart-1:217 94 42;--chart-2:196 196 189;--chart-3:166 166 159;--chart-4:127 127 121;--chart-5:240 240 236;--sidebar:47 47 44;--sidebar-foreground:249 249 247;--sidebar-primary:217 94 42;--sidebar-primary-foreground:249 249 247;--sidebar-accent:87 87 83;--sidebar-accent-foreground:249 249 247;--sidebar-border:87 87 83;--sidebar-ring:217 94 42}@font-face{font-family:Aspekta;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Aspekta-400.woff2)format("woff2")}@font-face{font-family:Aspekta;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/Aspekta-500.woff2)format("woff2")}@font-face{font-family:Aspekta;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/Aspekta-600.woff2)format("woff2")}@font-face{font-family:Aspekta;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/Aspekta-700.woff2)format("woff2")}:root{--radius:.375rem}@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-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-space-x-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:"";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"";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:"";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"";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-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{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:"";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:"";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:"";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:"";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-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0))}}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,auto))))}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,auto))))}to{height:0}}@keyframes caret-blink{0%,70%,to{opacity:1}20%,50%{opacity:0}} \ No newline at end of file diff --git a/public/htmx.html b/public/htmx.html index e5db03d..8541b1b 100644 --- a/public/htmx.html +++ b/public/htmx.html @@ -736,6 +736,69 @@

+ +
+

+ Toggle Group +

+
+
+
+
+

Single, outline

+
+ + + +
+
+
+

Single, default

+
+ + + +
+
+
+

Multiple

+
+ + + +
+
+
+
+
+

Small

+
+ + + +
+
+
+

Default

+
+ + + +
+
+
+

Large

+
+ + + +
+
+
+
+
+
+

@@ -993,6 +1056,19 @@ el.setAttribute('aria-checked', next === 'checked' ? 'true' : 'false'); const thumb = el.querySelector('[data-slot="switch-thumb"]'); if (thumb) thumb.setAttribute('data-state', next); + } else if (slot === 'toggle-group-item') { + const group = el.closest('[data-slot="toggle-group"]'); + if (!group) return; + const multi = group.getAttribute('data-type') === 'multiple'; + const next = el.getAttribute('data-state') === 'on' ? 'off' : 'on'; + if (multi) { + el.setAttribute('data-state', next); + } else { + // Single-select: activate this, deactivate siblings. Don't deselect the active one. + group.querySelectorAll('[data-slot="toggle-group-item"]').forEach((it) => { + it.setAttribute('data-state', it === el ? 'on' : 'off'); + }); + } } else if (slot === 'tabs-trigger') { const list = el.closest('[data-slot="tabs-list"]'); const tabs = el.closest('[data-slot="tabs"]'); diff --git a/scripts/generate-htmx-css.ts b/scripts/generate-htmx-css.ts index 2046ad2..294b5c3 100644 --- a/scripts/generate-htmx-css.ts +++ b/scripts/generate-htmx-css.ts @@ -50,6 +50,15 @@ type SlotExtract = { sourceFile: string slot: string classes: string + /** + * Names of CVA functions referenced inside the slot's `cn(...)` call — e.g. + * `cn(toggleVariants({variant,size}), 'rounded-none ...')` on + * ToggleGroupItem records `['toggleVariants']`. Used to emit the + * referenced CVA's base + variant rules under this slot's selector, so + * slots that *compose* another component's variant system (instead of + * declaring their own cva) still inherit its padding/height/states. + */ + viaVariants: string[] } type Warning = { sourceFile: string; message: string } @@ -156,6 +165,7 @@ function extractSlot( ): void { let slot: string | null = null let classes: string | null = null + const viaVariants: string[] = [] const attrs = element.attributes.properties for (const attr of attrs) { @@ -173,13 +183,22 @@ function extractSlot( if (ts.isStringLiteral(expr) || ts.isNoSubstitutionTemplateLiteral(expr)) { classes = (expr as ts.StringLiteral).text } else if (ts.isCallExpression(expr)) { - // cn(...) or xVariants(...) — we extract the first string-literal arg - // Variant calls are already covered by CVA extraction; cn's first literal - // is the static baseline. const callName = expr.expression.getText() if (callName === 'cn' || callName.endsWith('Variants')) { + // First string-literal arg is the static class baseline. const first = expr.arguments.find((a) => getStringLiteral(a) !== null) if (first) classes = getStringLiteral(first) + // Any *call* arg whose callee is a `xVariants` identifier means this + // slot inherits from another component's variant system (e.g. + // ToggleGroupItem: `cn(toggleVariants({variant,size}), 'rounded-none...')`). + // Record the names so the emitter can pull in those CVAs' base + variants. + for (const arg of expr.arguments) { + if (!ts.isCallExpression(arg)) continue + const argCallee = arg.expression + if (ts.isIdentifier(argCallee) && argCallee.text.endsWith('Variants')) { + viaVariants.push(argCallee.text) + } + } } } } @@ -187,13 +206,7 @@ function extractSlot( } if (slot) { - if (classes === null) { - // data-slot is present but no static class extractable (maybe dynamic). - // We still record the slot with empty classes so rule ordering is preserved. - slotExtracts.push({ sourceFile, slot, classes: '' }) - } else { - slotExtracts.push({ sourceFile, slot, classes }) - } + slotExtracts.push({ sourceFile, slot, classes: classes ?? '', viaVariants }) } } @@ -313,7 +326,9 @@ function emitCss(): string { // in the same file uses `data-slot="x"`. If ambiguous, fall back to stripping // "Variants" and kebab-casing. const cvaBySlot = new Map() + const cvaByName = new Map() for (const cva of cvaExtracts) { + cvaByName.set(cva.variableName, cva) const stripped = cva.variableName.replace(/Variants$/, '') const slot = stripped .replace(/([a-z])([A-Z])/g, '$1-$2') @@ -321,13 +336,30 @@ function emitCss(): string { cvaBySlot.set(slot, cva) } + // Aggregate viaVariants per slot (a slot may appear in multiple JSX sites). + const slotVia = new Map>() + for (const s of slotExtracts) { + if (s.viaVariants.length === 0) continue + if (!slotVia.has(s.slot)) slotVia.set(s.slot, new Set()) + for (const v of s.viaVariants) slotVia.get(s.slot)!.add(v) + } + // Emit slots in sorted order for stable output. const allSlots = Array.from( new Set([...slotMap.keys(), ...cvaBySlot.keys()]), ).sort() for (const slot of allSlots) { - const cva = cvaBySlot.get(slot) + const selfCva = cvaBySlot.get(slot) + // Gather CVAs to apply under this slot's selector: its own (if any), plus + // any CVAs referenced via `cn(xVariants(...), ...)` in the JSX (e.g. + // ToggleGroupItem inherits from toggleVariants). Dedup. + const cvas: CvaExtract[] = [] + if (selfCva) cvas.push(selfCva) + for (const name of slotVia.get(slot) ?? []) { + const aliasCva = cvaByName.get(name) + if (aliasCva && !cvas.includes(aliasCva)) cvas.push(aliasCva) + } const staticSets = slotMap.get(slot) const staticClasses = staticSets ? Array.from(staticSets).join(' ') : '' @@ -341,19 +373,22 @@ function emitCss(): string { // (0,1,0) and silently drop user overrides. const SLOT = `:where([data-slot="${slot}"])` - // Base rule: cva.base + any static classes found on the slot's JSX + // Base rule: every contributing CVA's base + any static classes from JSX. const basePieces: string[] = [] - if (cva?.base) basePieces.push(cva.base) + for (const c of cvas) if (c.base) basePieces.push(c.base) if (staticClasses) basePieces.push(staticClasses) const base = uniqueClasses(basePieces.join(' ')) if (base) { lines.push(` ${SLOT} { @apply ${base}; }`) } - // CVA variants - if (cva) { - for (const [axis, values] of Object.entries(cva.variants)) { - const defaultValue = cva.defaultVariants[axis] + // Emit variant rules for each contributing CVA, under this slot's selector. + // When a slot inherits (e.g. toggle-group-item via toggleVariants), its + // data-variant/data-size attributes on the DOM drive the inherited CVA's + // rules just like they drive the self-CVA's. + for (const c of cvas) { + for (const [axis, values] of Object.entries(c.variants)) { + const defaultValue = c.defaultVariants[axis] const axisAttr = `data-${axis}` for (const [key, classes] of Object.entries(values)) { if (!classes.trim()) continue -- 2.49.1