@moontra/moonui-pro 2.0.12 → 2.0.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.mjs +1328 -433
  2. package/package.json +1 -1
package/dist/index.mjs CHANGED
@@ -1,11 +1,11 @@
1
- import * as React50 from 'react';
2
- import React50__default, { useState, forwardRef, createContext, Children, isValidElement, createElement, cloneElement, useEffect, useRef, useContext, useMemo, useCallback, Fragment as Fragment$1, useLayoutEffect, useDebugValue } from 'react';
3
- import { cva } from 'class-variance-authority';
4
- import { motion, useMotionValue, useTransform, animate } from 'framer-motion';
1
+ import * as React55 from 'react';
2
+ import React55__default, { useState, useRef, useCallback, forwardRef, createContext, Children, isValidElement, createElement, cloneElement, useEffect, useContext, useMemo, Fragment as Fragment$1, useLayoutEffect, useDebugValue, Component } from 'react';
3
+ import { motion, AnimatePresence, useMotionValue, useSpring, useTransform, animate } from 'framer-motion';
4
+ import { Loader2, Lock, Sparkles, Plus, ChevronDown, ChevronUp, Check, X, ChevronRight, Circle, Calendar, ChevronLeft, Edit, Trash2, Clock, MapPin, User, MoreHorizontal, GripVertical, MessageCircle, Paperclip, Bold as Bold$1, Italic as Italic$1, Underline as Underline$1, Strikethrough, Code as Code$1, Type, Heading1, Heading2, Heading3, AlignLeft, AlignCenter, AlignRight, AlignJustify, List, ListOrdered, CheckSquare, Quote, Palette, Highlighter, Link2, Image, Table as Table$1, Settings, Undo, Redo, Eye, RefreshCw, Wand2, Maximize, FileText, Languages, TrendingUp, TrendingDown, Minus, Download, Maximize2, Activity, Star, ExternalLink, BarChart3, Users, DollarSign, AlertTriangle, CheckCircle2, AlertCircle, XCircle, ArrowDownRight, ArrowUpRight } from 'lucide-react';
5
5
  import { clsx } from 'clsx';
6
6
  import { twMerge } from 'tailwind-merge';
7
+ import { cva } from 'class-variance-authority';
7
8
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
8
- import { Loader2, ChevronDown, ChevronUp, Check, X, ChevronRight, Circle, Lock, Sparkles, Calendar, ChevronLeft, Edit, Trash2, Clock, MapPin, User, Plus, MoreHorizontal, GripVertical, MessageCircle, Paperclip, Bold as Bold$1, Italic as Italic$1, Underline as Underline$1, Strikethrough, Code as Code$1, Type, Heading1, Heading2, Heading3, AlignLeft, AlignCenter, AlignRight, AlignJustify, List, ListOrdered, CheckSquare, Quote, Palette, Highlighter, Link2, Image, Table as Table$1, Settings, Undo, Redo, Eye, RefreshCw, Wand2, Maximize, FileText, Languages, TrendingUp, TrendingDown, Minus, Download, Maximize2, Activity, Star, ExternalLink, BarChart3, Users, DollarSign, CheckCircle2, AlertCircle, XCircle, ArrowDownRight, ArrowUpRight } from 'lucide-react';
9
9
  import * as ReactDOM from 'react-dom';
10
10
  import ReactDOM__default, { createPortal, flushSync } from 'react-dom';
11
11
  import * as AvatarPrimitive from '@radix-ui/react-avatar';
@@ -1729,7 +1729,7 @@ function styleInject(css2, { insertAt } = {}) {
1729
1729
  }
1730
1730
 
1731
1731
  // src/styles/index.css
1732
- styleInject('*,\n::before,\n::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n*,\n::before,\n::after {\n box-sizing: border-box;\n border-width: 0;\n border-style: solid;\n border-color: #e5e7eb;\n}\n::before,\n::after {\n --tw-content: "";\n}\nhtml,\n:host {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n font-family: var(--font-sans);\n font-feature-settings: normal;\n font-variation-settings: normal;\n -webkit-tap-highlight-color: transparent;\n}\nbody {\n margin: 0;\n line-height: inherit;\n}\nhr {\n height: 0;\n color: inherit;\n border-top-width: 1px;\n}\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\na {\n color: inherit;\n text-decoration: inherit;\n}\nb,\nstrong {\n font-weight: bolder;\n}\ncode,\nkbd,\nsamp,\npre {\n font-family: var(--font-mono);\n font-feature-settings: normal;\n font-variation-settings: normal;\n font-size: 1em;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsub {\n bottom: -0.25em;\n}\nsup {\n top: -0.5em;\n}\ntable {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n font-size: 100%;\n font-weight: inherit;\n line-height: inherit;\n letter-spacing: inherit;\n color: inherit;\n margin: 0;\n padding: 0;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\ninput:where([type="button"]),\ninput:where([type="reset"]),\ninput:where([type="submit"]) {\n -webkit-appearance: button;\n background-color: transparent;\n background-image: none;\n}\n:-moz-focusring {\n outline: auto;\n}\n:-moz-ui-invalid {\n box-shadow: none;\n}\nprogress {\n vertical-align: baseline;\n}\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n[type=search] {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n}\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n::-webkit-file-upload-button {\n -webkit-appearance: button;\n font: inherit;\n}\nsummary {\n display: list-item;\n}\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\nfieldset {\n margin: 0;\n padding: 0;\n}\nlegend {\n padding: 0;\n}\nol,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\ndialog {\n padding: 0;\n}\ntextarea {\n resize: vertical;\n}\ninput::-moz-placeholder,\ntextarea::-moz-placeholder {\n opacity: 1;\n color: #9ca3af;\n}\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1;\n color: #9ca3af;\n}\nbutton,\n[role=button] {\n cursor: pointer;\n}\n:disabled {\n cursor: default;\n}\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block;\n vertical-align: middle;\n}\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n[hidden]:where(:not([hidden="until-found"])) {\n display: none;\n}\n:root {\n --bg-base: var(--background);\n --bg-subtle: var(--gray-50);\n --bg-muted: var(--gray-100);\n --bg-emphasis: var(--gray-200);\n --bg-inverse: var(--foreground);\n --surface-base: var(--background);\n --surface-overlay: var(--gray-50);\n --surface-raised: var(--background);\n --surface-sunken: var(--gray-100);\n --text-primary: var(--foreground);\n --text-secondary: var(--gray-600);\n --text-tertiary: var(--gray-500);\n --text-disabled: var(--gray-400);\n --text-inverse: var(--background);\n --text-link: var(--primary);\n --text-link-hover: var(--primary-hover);\n --brand-primary: var(--primary);\n --brand-primary-hover: var(--primary-hover);\n --brand-primary-active: var(--primary-active);\n --brand-secondary: var(--secondary);\n --state-hover: var(--gray-100);\n --state-active: var(--gray-200);\n --state-selected: var(--primary);\n --state-disabled: var(--gray-300);\n --state-focus: var(--primary);\n --feedback-success: var(--success);\n --feedback-success-light: 142 71% 95%;\n --feedback-success-dark: 142 71% 35%;\n --feedback-warning: var(--warning);\n --feedback-warning-light: 38 92% 95%;\n --feedback-warning-dark: 38 92% 40%;\n --feedback-error: var(--error);\n --feedback-error-light: 0 84% 95%;\n --feedback-error-dark: 0 84% 50%;\n --feedback-info: 217 91% 60%;\n --feedback-info-light: 217 91% 95%;\n --feedback-info-dark: 217 91% 50%;\n --border-default: var(--border);\n --border-subtle: var(--gray-200);\n --border-strong: var(--gray-400);\n --border-interactive: var(--primary);\n --border-error: var(--error);\n --border-success: var(--success);\n --border-warning: var(--warning);\n --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);\n --shadow-primary: 0 4px 14px 0 hsl(var(--primary) / 0.3);\n --shadow-success: 0 4px 14px 0 hsl(var(--success) / 0.3);\n --shadow-error: 0 4px 14px 0 hsl(var(--error) / 0.3);\n --shadow-warning: 0 4px 14px 0 hsl(var(--warning) / 0.3);\n --shadow-inner-xs: inset 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --shadow-inner-sm: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);\n --shadow-inner-md: inset 0 4px 6px -1px rgb(0 0 0 / 0.1);\n --ease-linear: linear;\n --ease-in: cubic-bezier(0.4, 0, 1, 1);\n --ease-out: cubic-bezier(0, 0, 0.2, 1);\n --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);\n --ease-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);\n --ease-elastic: cubic-bezier(0.68, -0.55, 0.265, 1.55);\n --ease-back-in: cubic-bezier(0.6, -0.28, 0.735, 0.045);\n --ease-back-out: cubic-bezier(0.175, 0.885, 0.32, 1.275);\n --ease-back-in-out: cubic-bezier(0.68, -0.55, 0.265, 1.55);\n --duration-instant: 0ms;\n --duration-fast: 150ms;\n --duration-normal: 250ms;\n --duration-slow: 350ms;\n --duration-slower: 500ms;\n --duration-slowest: 750ms;\n --space-0: 0;\n --space-px: 1px;\n --space-0\\.5: 0.125rem;\n --space-1: 0.25rem;\n --space-1\\.5: 0.375rem;\n --space-2: 0.5rem;\n --space-2\\.5: 0.625rem;\n --space-3: 0.75rem;\n --space-3\\.5: 0.875rem;\n --space-4: 1rem;\n --space-5: 1.25rem;\n --space-6: 1.5rem;\n --space-7: 1.75rem;\n --space-8: 2rem;\n --space-9: 2.25rem;\n --space-10: 2.5rem;\n --space-11: 2.75rem;\n --space-12: 3rem;\n --space-14: 3.5rem;\n --space-16: 4rem;\n --space-20: 5rem;\n --space-24: 6rem;\n --space-28: 7rem;\n --space-32: 8rem;\n --space-36: 9rem;\n --space-40: 10rem;\n --space-44: 11rem;\n --space-48: 12rem;\n --space-52: 13rem;\n --space-56: 14rem;\n --space-60: 15rem;\n --space-64: 16rem;\n --space-72: 18rem;\n --space-80: 20rem;\n --space-96: 24rem;\n --text-2xs: 0.625rem;\n --text-xs: 0.75rem;\n --text-sm: 0.875rem;\n --text-base: 1rem;\n --text-lg: 1.125rem;\n --text-xl: 1.25rem;\n --text-2xl: 1.5rem;\n --text-3xl: 1.875rem;\n --text-4xl: 2.25rem;\n --text-5xl: 3rem;\n --text-6xl: 3.75rem;\n --text-7xl: 4.5rem;\n --text-8xl: 6rem;\n --text-9xl: 8rem;\n --leading-none: 1;\n --leading-tight: 1.25;\n --leading-snug: 1.375;\n --leading-normal: 1.5;\n --leading-relaxed: 1.625;\n --leading-loose: 2;\n --tracking-tighter: -0.05em;\n --tracking-tight: -0.025em;\n --tracking-normal: 0;\n --tracking-wide: 0.025em;\n --tracking-wider: 0.05em;\n --tracking-widest: 0.1em;\n --font-thin: 100;\n --font-extralight: 200;\n --font-light: 300;\n --font-normal: 400;\n --font-medium: 500;\n --font-semibold: 600;\n --font-bold: 700;\n --font-extrabold: 800;\n --font-black: 900;\n --radius-none: 0;\n --radius-sm: 0.125rem;\n --radius-base: 0.25rem;\n --radius-md: 0.375rem;\n --radius-lg: 0.5rem;\n --radius-xl: 0.75rem;\n --radius-2xl: 1rem;\n --radius-3xl: 1.5rem;\n --radius-full: 9999px;\n --z-0: 0;\n --z-10: 10;\n --z-20: 20;\n --z-30: 30;\n --z-40: 40;\n --z-50: 50;\n --z-dropdown: 1000;\n --z-sticky: 1020;\n --z-fixed: 1030;\n --z-modal-backdrop: 1040;\n --z-modal: 1050;\n --z-popover: 1060;\n --z-tooltip: 1070;\n --z-notification: 1080;\n --blur-none: 0;\n --blur-sm: 4px;\n --blur-base: 8px;\n --blur-md: 12px;\n --blur-lg: 16px;\n --blur-xl: 24px;\n --blur-2xl: 40px;\n --blur-3xl: 64px;\n}\n.dark {\n --bg-base: var(--background);\n --bg-subtle: var(--gray-800);\n --bg-muted: var(--gray-700);\n --bg-emphasis: var(--gray-600);\n --surface-overlay: var(--gray-800);\n --surface-raised: var(--gray-800);\n --surface-sunken: var(--background);\n --text-secondary: var(--gray-400);\n --text-tertiary: var(--gray-500);\n --text-disabled: var(--gray-600);\n --state-hover: var(--gray-700);\n --state-active: var(--gray-600);\n --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.3);\n --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.4), 0 1px 2px -1px rgb(0 0 0 / 0.3);\n --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.4), 0 2px 4px -2px rgb(0 0 0 / 0.3);\n --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.4), 0 4px 6px -4px rgb(0 0 0 / 0.3);\n --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.4), 0 8px 10px -6px rgb(0 0 0 / 0.3);\n --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.5);\n}\n.container {\n width: 100%;\n margin-right: auto;\n margin-left: auto;\n padding-right: 1rem;\n padding-left: 1rem;\n}\n@media (min-width: 640px) {\n .container {\n max-width: 640px;\n padding-right: 2rem;\n padding-left: 2rem;\n }\n}\n@media (min-width: 768px) {\n .container {\n max-width: 768px;\n }\n}\n@media (min-width: 1024px) {\n .container {\n max-width: 1024px;\n padding-right: 4rem;\n padding-left: 4rem;\n }\n}\n@media (min-width: 1280px) {\n .container {\n max-width: 1280px;\n padding-right: 5rem;\n padding-left: 5rem;\n }\n}\n@media (min-width: 1536px) {\n .container {\n max-width: 1536px;\n padding-right: 6rem;\n padding-left: 6rem;\n }\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n.pointer-events-none {\n pointer-events: none;\n}\n.pointer-events-auto {\n pointer-events: auto;\n}\n.visible {\n visibility: visible;\n}\n.collapse {\n visibility: collapse;\n}\n.static {\n position: static;\n}\n.fixed {\n position: fixed;\n}\n.absolute {\n position: absolute;\n}\n.relative {\n position: relative;\n}\n.sticky {\n position: sticky;\n}\n.inset-0 {\n inset: 0px;\n}\n.bottom-2 {\n bottom: 0.5rem;\n}\n.bottom-\\[5\\%\\] {\n bottom: 5%;\n}\n.left-2 {\n left: 0.5rem;\n}\n.left-3 {\n left: 0.75rem;\n}\n.left-4 {\n left: 1rem;\n}\n.left-\\[50\\%\\] {\n left: 50%;\n}\n.right-1 {\n right: 0.25rem;\n}\n.right-2 {\n right: 0.5rem;\n}\n.right-3 {\n right: 0.75rem;\n}\n.right-4 {\n right: 1rem;\n}\n.top-0 {\n top: 0px;\n}\n.top-1 {\n top: 0.25rem;\n}\n.top-2 {\n top: 0.5rem;\n}\n.top-2\\.5 {\n top: 0.625rem;\n}\n.top-4 {\n top: 1rem;\n}\n.top-\\[5\\%\\] {\n top: 5%;\n}\n.top-\\[50\\%\\] {\n top: 50%;\n}\n.top-auto {\n top: auto;\n}\n.z-0 {\n z-index: 0;\n}\n.z-10 {\n z-index: 10;\n}\n.z-40 {\n z-index: 40;\n}\n.z-50 {\n z-index: 50;\n}\n.z-\\[100\\] {\n z-index: 100;\n}\n.col-span-1 {\n grid-column: span 1 / span 1;\n}\n.col-span-2 {\n grid-column: span 2 / span 2;\n}\n.col-span-3 {\n grid-column: span 3 / span 3;\n}\n.col-span-4 {\n grid-column: span 4 / span 4;\n}\n.-m-2 {\n margin: -0.5rem;\n}\n.-mx-1 {\n margin-left: -0.25rem;\n margin-right: -0.25rem;\n}\n.-mx-4 {\n margin-left: -1rem;\n margin-right: -1rem;\n}\n.mx-1 {\n margin-left: 0.25rem;\n margin-right: 0.25rem;\n}\n.mx-auto {\n margin-left: auto;\n margin-right: auto;\n}\n.my-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n}\n.my-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n}\n.-mb-4 {\n margin-bottom: -1rem;\n}\n.-mr-1 {\n margin-right: -0.25rem;\n}\n.-mt-4 {\n margin-top: -1rem;\n}\n.mb-1 {\n margin-bottom: 0.25rem;\n}\n.mb-2 {\n margin-bottom: 0.5rem;\n}\n.mb-3 {\n margin-bottom: 0.75rem;\n}\n.mb-4 {\n margin-bottom: 1rem;\n}\n.mb-8 {\n margin-bottom: 2rem;\n}\n.ml-1 {\n margin-left: 0.25rem;\n}\n.ml-2 {\n margin-left: 0.5rem;\n}\n.ml-auto {\n margin-left: auto;\n}\n.mr-1 {\n margin-right: 0.25rem;\n}\n.mr-2 {\n margin-right: 0.5rem;\n}\n.mr-auto {\n margin-right: auto;\n}\n.mt-1 {\n margin-top: 0.25rem;\n}\n.mt-2 {\n margin-top: 0.5rem;\n}\n.mt-3 {\n margin-top: 0.75rem;\n}\n.mt-6 {\n margin-top: 1.5rem;\n}\n.line-clamp-2 {\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n}\n.block {\n display: block;\n}\n.inline-block {\n display: inline-block;\n}\n.inline {\n display: inline;\n}\n.flex {\n display: flex;\n}\n.inline-flex {\n display: inline-flex;\n}\n.\\!table {\n display: table !important;\n}\n.table {\n display: table;\n}\n.grid {\n display: grid;\n}\n.hidden {\n display: none;\n}\n.aspect-square {\n aspect-ratio: 1 / 1;\n}\n.h-0 {\n height: 0px;\n}\n.h-1\\.5 {\n height: 0.375rem;\n}\n.h-10 {\n height: 2.5rem;\n}\n.h-11 {\n height: 2.75rem;\n}\n.h-12 {\n height: 3rem;\n}\n.h-14 {\n height: 3.5rem;\n}\n.h-16 {\n height: 4rem;\n}\n.h-2 {\n height: 0.5rem;\n}\n.h-20 {\n height: 5rem;\n}\n.h-24 {\n height: 6rem;\n}\n.h-3 {\n height: 0.75rem;\n}\n.h-3\\.5 {\n height: 0.875rem;\n}\n.h-32 {\n height: 8rem;\n}\n.h-4 {\n height: 1rem;\n}\n.h-5 {\n height: 1.25rem;\n}\n.h-6 {\n height: 1.5rem;\n}\n.h-7 {\n height: 1.75rem;\n}\n.h-8 {\n height: 2rem;\n}\n.h-9 {\n height: 2.25rem;\n}\n.h-96 {\n height: 24rem;\n}\n.h-\\[0\\.5px\\] {\n height: 0.5px;\n}\n.h-\\[1px\\] {\n height: 1px;\n}\n.h-\\[2px\\] {\n height: 2px;\n}\n.h-\\[65\\%\\] {\n height: 65%;\n}\n.h-\\[var\\(--radix-select-trigger-height\\)\\] {\n height: var(--radix-select-trigger-height);\n}\n.h-auto {\n height: auto;\n}\n.h-fit {\n height: -moz-fit-content;\n height: fit-content;\n}\n.h-full {\n height: 100%;\n}\n.h-px {\n height: 1px;\n}\n.max-h-96 {\n max-height: 24rem;\n}\n.max-h-\\[95vh\\] {\n max-height: 95vh;\n}\n.max-h-screen {\n max-height: 100vh;\n}\n.min-h-\\[200px\\] {\n min-height: 200px;\n}\n.min-h-\\[80px\\] {\n min-height: 80px;\n}\n.w-0 {\n width: 0px;\n}\n.w-0\\.5 {\n width: 0.125rem;\n}\n.w-1\\/4 {\n width: 25%;\n}\n.w-10 {\n width: 2.5rem;\n}\n.w-11 {\n width: 2.75rem;\n}\n.w-12 {\n width: 3rem;\n}\n.w-14 {\n width: 3.5rem;\n}\n.w-16 {\n width: 4rem;\n}\n.w-2 {\n width: 0.5rem;\n}\n.w-20 {\n width: 5rem;\n}\n.w-3 {\n width: 0.75rem;\n}\n.w-3\\.5 {\n width: 0.875rem;\n}\n.w-4 {\n width: 1rem;\n}\n.w-48 {\n width: 12rem;\n}\n.w-5 {\n width: 1.25rem;\n}\n.w-56 {\n width: 14rem;\n}\n.w-6 {\n width: 1.5rem;\n}\n.w-64 {\n width: 16rem;\n}\n.w-72 {\n width: 18rem;\n}\n.w-8 {\n width: 2rem;\n}\n.w-80 {\n width: 20rem;\n}\n.w-96 {\n width: 24rem;\n}\n.w-\\[0\\.5px\\] {\n width: 0.5px;\n}\n.w-\\[100px\\] {\n width: 100px;\n}\n.w-\\[1px\\] {\n width: 1px;\n}\n.w-\\[2px\\] {\n width: 2px;\n}\n.w-\\[65\\%\\] {\n width: 65%;\n}\n.w-\\[70px\\] {\n width: 70px;\n}\n.w-auto {\n width: auto;\n}\n.w-fit {\n width: -moz-fit-content;\n width: fit-content;\n}\n.w-full {\n width: 100%;\n}\n.w-px {\n width: 1px;\n}\n.min-w-0 {\n min-width: 0px;\n}\n.min-w-\\[70px\\] {\n min-width: 70px;\n}\n.min-w-\\[8rem\\] {\n min-width: 8rem;\n}\n.min-w-\\[var\\(--radix-select-trigger-width\\)\\] {\n min-width: var(--radix-select-trigger-width);\n}\n.max-w-2xl {\n max-width: 42rem;\n}\n.max-w-4xl {\n max-width: 56rem;\n}\n.max-w-\\[95vw\\] {\n max-width: 95vw;\n}\n.max-w-full {\n max-width: 100%;\n}\n.max-w-lg {\n max-width: 32rem;\n}\n.max-w-md {\n max-width: 28rem;\n}\n.max-w-none {\n max-width: none;\n}\n.max-w-sm {\n max-width: 24rem;\n}\n.max-w-xs {\n max-width: 20rem;\n}\n.flex-1 {\n flex: 1 1 0%;\n}\n.flex-shrink-0 {\n flex-shrink: 0;\n}\n.shrink-0 {\n flex-shrink: 0;\n}\n.grow {\n flex-grow: 1;\n}\n.translate-x-\\[-50\\%\\] {\n --tw-translate-x: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.translate-y-0 {\n --tw-translate-y: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.translate-y-\\[-50\\%\\] {\n --tw-translate-y: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.rotate-2 {\n --tw-rotate: 2deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.rotate-\\[-15deg\\] {\n --tw-rotate: -15deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.rotate-\\[15deg\\] {\n --tw-rotate: 15deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.scale-105 {\n --tw-scale-x: 1.05;\n --tw-scale-y: 1.05;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.scale-95 {\n --tw-scale-x: .95;\n --tw-scale-y: .95;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n@keyframes pulse {\n 50% {\n opacity: .5;\n }\n}\n.animate-pulse {\n animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n.animate-spin {\n animation: spin 1s linear infinite;\n}\n.cursor-default {\n cursor: default;\n}\n.cursor-grab {\n cursor: grab;\n}\n.cursor-help {\n cursor: help;\n}\n.cursor-move {\n cursor: move;\n}\n.cursor-not-allowed {\n cursor: not-allowed;\n}\n.cursor-pointer {\n cursor: pointer;\n}\n.cursor-text {\n cursor: text;\n}\n.cursor-wait {\n cursor: wait;\n}\n.touch-none {\n touch-action: none;\n}\n.select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n.resize-none {\n resize: none;\n}\n.resize {\n resize: both;\n}\n.grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n}\n.grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n}\n.grid-cols-4 {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n}\n.grid-cols-6 {\n grid-template-columns: repeat(6, minmax(0, 1fr));\n}\n.grid-cols-7 {\n grid-template-columns: repeat(7, minmax(0, 1fr));\n}\n.flex-row {\n flex-direction: row;\n}\n.flex-col {\n flex-direction: column;\n}\n.flex-col-reverse {\n flex-direction: column-reverse;\n}\n.flex-wrap {\n flex-wrap: wrap;\n}\n.items-start {\n align-items: flex-start;\n}\n.items-center {\n align-items: center;\n}\n.justify-start {\n justify-content: flex-start;\n}\n.justify-end {\n justify-content: flex-end;\n}\n.justify-center {\n justify-content: center;\n}\n.justify-between {\n justify-content: space-between;\n}\n.gap-1 {\n gap: 0.25rem;\n}\n.gap-1\\.5 {\n gap: 0.375rem;\n}\n.gap-2 {\n gap: 0.5rem;\n}\n.gap-3 {\n gap: 0.75rem;\n}\n.gap-4 {\n gap: 1rem;\n}\n.gap-6 {\n gap: 1.5rem;\n}\n.gap-8 {\n gap: 2rem;\n}\n.space-x-1 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.25rem * var(--tw-space-x-reverse));\n margin-left: calc(0.25rem * calc(1 - var(--tw-space-x-reverse)));\n}\n.space-x-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.5rem * var(--tw-space-x-reverse));\n margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));\n}\n.space-x-6 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(1.5rem * var(--tw-space-x-reverse));\n margin-left: calc(1.5rem * calc(1 - var(--tw-space-x-reverse)));\n}\n.space-y-0 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0px * var(--tw-space-y-reverse));\n}\n.space-y-1 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));\n}\n.space-y-1\\.5 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.375rem * var(--tw-space-y-reverse));\n}\n.space-y-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));\n}\n.space-y-3 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));\n}\n.space-y-4 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(1rem * var(--tw-space-y-reverse));\n}\n.space-y-6 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));\n}\n.overflow-auto {\n overflow: auto;\n}\n.overflow-hidden {\n overflow: hidden;\n}\n.overflow-x-auto {\n overflow-x: auto;\n}\n.truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.whitespace-nowrap {\n white-space: nowrap;\n}\n.rounded {\n border-radius: 0.25rem;\n}\n.rounded-2xl {\n border-radius: 1rem;\n}\n.rounded-3xl {\n border-radius: 1.5rem;\n}\n.rounded-\\[inherit\\] {\n border-radius: inherit;\n}\n.rounded-\\[var\\(--login-border-radius\\)\\] {\n border-radius: var(--login-border-radius);\n}\n.rounded-full {\n border-radius: 9999px;\n}\n.rounded-lg {\n border-radius: var(--radius);\n}\n.rounded-md {\n border-radius: calc(var(--radius) - 2px);\n}\n.rounded-none {\n border-radius: 0px;\n}\n.rounded-sm {\n border-radius: calc(var(--radius) - 4px);\n}\n.rounded-xl {\n border-radius: 0.75rem;\n}\n.border {\n border-width: 1px;\n}\n.border-2 {\n border-width: 2px;\n}\n.border-b {\n border-bottom-width: 1px;\n}\n.border-b-2 {\n border-bottom-width: 2px;\n}\n.border-l {\n border-left-width: 1px;\n}\n.border-l-0 {\n border-left-width: 0px;\n}\n.border-l-2 {\n border-left-width: 2px;\n}\n.border-l-4 {\n border-left-width: 4px;\n}\n.border-l-\\[0\\.5px\\] {\n border-left-width: 0.5px;\n}\n.border-r-0 {\n border-right-width: 0px;\n}\n.border-t {\n border-top-width: 1px;\n}\n.border-t-0 {\n border-top-width: 0px;\n}\n.border-t-2 {\n border-top-width: 2px;\n}\n.border-t-\\[0\\.5px\\] {\n border-top-width: 0.5px;\n}\n.border-dashed {\n border-style: dashed;\n}\n.border-dotted {\n border-style: dotted;\n}\n.border-none {\n border-style: none;\n}\n.border-accent {\n --tw-border-opacity: 1;\n border-color: hsl(var(--accent) / var(--tw-border-opacity, 1));\n}\n.border-blue-200 {\n --tw-border-opacity: 1;\n border-color: rgb(191 219 254 / var(--tw-border-opacity, 1));\n}\n.border-blue-500 {\n --tw-border-opacity: 1;\n border-color: rgb(59 130 246 / var(--tw-border-opacity, 1));\n}\n.border-blue-600 {\n --tw-border-opacity: 1;\n border-color: rgb(37 99 235 / var(--tw-border-opacity, 1));\n}\n.border-border {\n --tw-border-opacity: 1;\n border-color: hsl(var(--border) / var(--tw-border-opacity, 1));\n}\n.border-border\\/50 {\n border-color: hsl(var(--border) / 0.5);\n}\n.border-destructive {\n --tw-border-opacity: 1;\n border-color: hsl(var(--destructive) / var(--tw-border-opacity, 1));\n}\n.border-error {\n --tw-border-opacity: 1;\n border-color: hsl(var(--error) / var(--tw-border-opacity, 1));\n}\n.border-error\\/20 {\n border-color: hsl(var(--error) / 0.2);\n}\n.border-foreground {\n --tw-border-opacity: 1;\n border-color: hsl(var(--foreground) / var(--tw-border-opacity, 1));\n}\n.border-gray-200 {\n --tw-border-opacity: 1;\n border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));\n}\n.border-gray-300 {\n --tw-border-opacity: 1;\n border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));\n}\n.border-gray-400 {\n --tw-border-opacity: 1;\n border-color: rgb(156 163 175 / var(--tw-border-opacity, 1));\n}\n.border-green-200 {\n --tw-border-opacity: 1;\n border-color: rgb(187 247 208 / var(--tw-border-opacity, 1));\n}\n.border-green-500 {\n --tw-border-opacity: 1;\n border-color: rgb(34 197 94 / var(--tw-border-opacity, 1));\n}\n.border-green-600 {\n --tw-border-opacity: 1;\n border-color: rgb(22 163 74 / var(--tw-border-opacity, 1));\n}\n.border-input {\n --tw-border-opacity: 1;\n border-color: hsl(var(--input) / var(--tw-border-opacity, 1));\n}\n.border-muted {\n --tw-border-opacity: 1;\n border-color: hsl(var(--muted) / var(--tw-border-opacity, 1));\n}\n.border-muted-foreground\\/25 {\n border-color: hsl(var(--muted-foreground) / 0.25);\n}\n.border-orange-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254 215 170 / var(--tw-border-opacity, 1));\n}\n.border-primary {\n --tw-border-opacity: 1;\n border-color: hsl(var(--primary) / var(--tw-border-opacity, 1));\n}\n.border-primary\\/20 {\n border-color: hsl(var(--primary) / 0.2);\n}\n.border-primary\\/50 {\n border-color: hsl(var(--primary) / 0.5);\n}\n.border-red-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254 202 202 / var(--tw-border-opacity, 1));\n}\n.border-red-500 {\n --tw-border-opacity: 1;\n border-color: rgb(239 68 68 / var(--tw-border-opacity, 1));\n}\n.border-secondary {\n --tw-border-opacity: 1;\n border-color: hsl(var(--secondary) / var(--tw-border-opacity, 1));\n}\n.border-success {\n --tw-border-opacity: 1;\n border-color: hsl(var(--success) / var(--tw-border-opacity, 1));\n}\n.border-success\\/40 {\n border-color: hsl(var(--success) / 0.4);\n}\n.border-transparent {\n border-color: transparent;\n}\n.border-warning {\n --tw-border-opacity: 1;\n border-color: hsl(var(--warning) / var(--tw-border-opacity, 1));\n}\n.border-white\\/20 {\n border-color: rgb(255 255 255 / 0.2);\n}\n.border-yellow-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254 240 138 / var(--tw-border-opacity, 1));\n}\n.border-yellow-500 {\n --tw-border-opacity: 1;\n border-color: rgb(234 179 8 / var(--tw-border-opacity, 1));\n}\n.border-yellow-600 {\n --tw-border-opacity: 1;\n border-color: rgb(202 138 4 / var(--tw-border-opacity, 1));\n}\n.border-t-primary {\n --tw-border-opacity: 1;\n border-top-color: hsl(var(--primary) / var(--tw-border-opacity, 1));\n}\n.bg-\\[var\\(--login-background\\)\\] {\n background-color: var(--login-background);\n}\n.bg-\\[var\\(--login-primary\\)\\] {\n background-color: var(--login-primary);\n}\n.bg-accent {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));\n}\n.bg-accent\\/20 {\n background-color: hsl(var(--accent) / 0.2);\n}\n.bg-background {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--background) / var(--tw-bg-opacity, 1));\n}\n.bg-background\\/80 {\n background-color: hsl(var(--background) / 0.8);\n}\n.bg-black\\/20 {\n background-color: rgb(0 0 0 / 0.2);\n}\n.bg-black\\/40 {\n background-color: rgb(0 0 0 / 0.4);\n}\n.bg-black\\/60 {\n background-color: rgb(0 0 0 / 0.6);\n}\n.bg-black\\/80 {\n background-color: rgb(0 0 0 / 0.8);\n}\n.bg-blue-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));\n}\n.bg-blue-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity, 1));\n}\n.bg-border {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--border) / var(--tw-bg-opacity, 1));\n}\n.bg-card {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--card) / var(--tw-bg-opacity, 1));\n}\n.bg-destructive {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--destructive) / var(--tw-bg-opacity, 1));\n}\n.bg-destructive\\/5 {\n background-color: hsl(var(--destructive) / 0.05);\n}\n.bg-error {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--error) / var(--tw-bg-opacity, 1));\n}\n.bg-error\\/20 {\n background-color: hsl(var(--error) / 0.2);\n}\n.bg-foreground {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--foreground) / var(--tw-bg-opacity, 1));\n}\n.bg-gray-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));\n}\n.bg-gray-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(156 163 175 / var(--tw-bg-opacity, 1));\n}\n.bg-gray-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));\n}\n.bg-green-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(220 252 231 / var(--tw-bg-opacity, 1));\n}\n.bg-green-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(240 253 244 / var(--tw-bg-opacity, 1));\n}\n.bg-green-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(34 197 94 / var(--tw-bg-opacity, 1));\n}\n.bg-muted {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--muted) / var(--tw-bg-opacity, 1));\n}\n.bg-muted\\/20 {\n background-color: hsl(var(--muted) / 0.2);\n}\n.bg-muted\\/50 {\n background-color: hsl(var(--muted) / 0.5);\n}\n.bg-muted\\/80 {\n background-color: hsl(var(--muted) / 0.8);\n}\n.bg-orange-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(255 237 213 / var(--tw-bg-opacity, 1));\n}\n.bg-orange-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(255 247 237 / var(--tw-bg-opacity, 1));\n}\n.bg-orange-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));\n}\n.bg-popover {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--popover) / var(--tw-bg-opacity, 1));\n}\n.bg-primary {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1));\n}\n.bg-primary-foreground {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--primary-foreground) / var(--tw-bg-opacity, 1));\n}\n.bg-primary\\/10 {\n background-color: hsl(var(--primary) / 0.1);\n}\n.bg-primary\\/20 {\n background-color: hsl(var(--primary) / 0.2);\n}\n.bg-primary\\/30 {\n background-color: hsl(var(--primary) / 0.3);\n}\n.bg-primary\\/5 {\n background-color: hsl(var(--primary) / 0.05);\n}\n.bg-purple-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(243 232 255 / var(--tw-bg-opacity, 1));\n}\n.bg-purple-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(168 85 247 / var(--tw-bg-opacity, 1));\n}\n.bg-red-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 226 226 / var(--tw-bg-opacity, 1));\n}\n.bg-red-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(239 68 68 / var(--tw-bg-opacity, 1));\n}\n.bg-secondary {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--secondary) / var(--tw-bg-opacity, 1));\n}\n.bg-secondary-foreground {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--secondary-foreground) / var(--tw-bg-opacity, 1));\n}\n.bg-secondary\\/20 {\n background-color: hsl(var(--secondary) / 0.2);\n}\n.bg-success {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--success) / var(--tw-bg-opacity, 1));\n}\n.bg-success\\/20 {\n background-color: hsl(var(--success) / 0.2);\n}\n.bg-transparent {\n background-color: transparent;\n}\n.bg-warning {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--warning) / var(--tw-bg-opacity, 1));\n}\n.bg-warning\\/20 {\n background-color: hsl(var(--warning) / 0.2);\n}\n.bg-white {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));\n}\n.bg-white\\/10 {\n background-color: rgb(255 255 255 / 0.1);\n}\n.bg-yellow-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 249 195 / var(--tw-bg-opacity, 1));\n}\n.bg-yellow-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(234 179 8 / var(--tw-bg-opacity, 1));\n}\n.bg-opacity-80 {\n --tw-bg-opacity: 0.8;\n}\n.bg-gradient-to-br {\n background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));\n}\n.bg-gradient-to-r {\n background-image: linear-gradient(to right, var(--tw-gradient-stops));\n}\n.from-blue-600 {\n --tw-gradient-from: #2563eb var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-primary\\/5 {\n --tw-gradient-from: hsl(var(--primary) / 0.05) var(--tw-gradient-from-position);\n --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-purple-600 {\n --tw-gradient-from: #9333ea var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-transparent {\n --tw-gradient-from: transparent var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-white\\/20 {\n --tw-gradient-from: rgb(255 255 255 / 0.2) var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.via-border {\n --tw-gradient-to: hsl(var(--border) / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops:\n var(--tw-gradient-from),\n hsl(var(--border) / 1) var(--tw-gradient-via-position),\n var(--tw-gradient-to);\n}\n.to-pink-600 {\n --tw-gradient-to: #db2777 var(--tw-gradient-to-position);\n}\n.to-primary\\/10 {\n --tw-gradient-to: hsl(var(--primary) / 0.1) var(--tw-gradient-to-position);\n}\n.to-purple-600 {\n --tw-gradient-to: #9333ea var(--tw-gradient-to-position);\n}\n.to-transparent {\n --tw-gradient-to: transparent var(--tw-gradient-to-position);\n}\n.to-white\\/0 {\n --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);\n}\n.fill-current {\n fill: currentColor;\n}\n.p-0 {\n padding: 0px;\n}\n.p-1 {\n padding: 0.25rem;\n}\n.p-1\\.5 {\n padding: 0.375rem;\n}\n.p-10 {\n padding: 2.5rem;\n}\n.p-2 {\n padding: 0.5rem;\n}\n.p-3 {\n padding: 0.75rem;\n}\n.p-4 {\n padding: 1rem;\n}\n.p-5 {\n padding: 1.25rem;\n}\n.p-6 {\n padding: 1.5rem;\n}\n.p-7 {\n padding: 1.75rem;\n}\n.p-8 {\n padding: 2rem;\n}\n.px-0 {\n padding-left: 0px;\n padding-right: 0px;\n}\n.px-1 {\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n}\n.px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n.px-2\\.5 {\n padding-left: 0.625rem;\n padding-right: 0.625rem;\n}\n.px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n.px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n.px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n}\n.px-8 {\n padding-left: 2rem;\n padding-right: 2rem;\n}\n.py-0 {\n padding-top: 0px;\n padding-bottom: 0px;\n}\n.py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n.py-1\\.5 {\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n}\n.py-12 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n}\n.py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n.py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n.py-8 {\n padding-top: 2rem;\n padding-bottom: 2rem;\n}\n.pb-2 {\n padding-bottom: 0.5rem;\n}\n.pb-3 {\n padding-bottom: 0.75rem;\n}\n.pb-4 {\n padding-bottom: 1rem;\n}\n.pb-8 {\n padding-bottom: 2rem;\n}\n.pl-10 {\n padding-left: 2.5rem;\n}\n.pl-2 {\n padding-left: 0.5rem;\n}\n.pl-7 {\n padding-left: 1.75rem;\n}\n.pl-8 {\n padding-left: 2rem;\n}\n.pl-9 {\n padding-left: 2.25rem;\n}\n.pr-10 {\n padding-right: 2.5rem;\n}\n.pr-2 {\n padding-right: 0.5rem;\n}\n.pr-3 {\n padding-right: 0.75rem;\n}\n.pr-8 {\n padding-right: 2rem;\n}\n.pt-0 {\n padding-top: 0px;\n}\n.pt-3 {\n padding-top: 0.75rem;\n}\n.pt-4 {\n padding-top: 1rem;\n}\n.text-left {\n text-align: left;\n}\n.text-center {\n text-align: center;\n}\n.align-middle {\n vertical-align: middle;\n}\n.font-mono {\n font-family: var(--font-mono);\n}\n.text-2xl {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n.text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n.text-lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n.text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n.text-xs {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n.font-bold {\n font-weight: 700;\n}\n.font-medium {\n font-weight: 500;\n}\n.font-normal {\n font-weight: 400;\n}\n.font-semibold {\n font-weight: 600;\n}\n.capitalize {\n text-transform: capitalize;\n}\n.italic {\n font-style: italic;\n}\n.leading-none {\n line-height: 1;\n}\n.leading-normal {\n line-height: 1.5;\n}\n.leading-snug {\n line-height: 1.375;\n}\n.tracking-tight {\n letter-spacing: -0.025em;\n}\n.tracking-widest {\n letter-spacing: 0.1em;\n}\n.text-\\[var\\(--login-primary\\)\\] {\n color: var(--login-primary);\n}\n.text-\\[var\\(--login-text\\)\\] {\n color: var(--login-text);\n}\n.text-blue-600 {\n --tw-text-opacity: 1;\n color: rgb(37 99 235 / var(--tw-text-opacity, 1));\n}\n.text-blue-700 {\n --tw-text-opacity: 1;\n color: rgb(29 78 216 / var(--tw-text-opacity, 1));\n}\n.text-blue-900 {\n --tw-text-opacity: 1;\n color: rgb(30 58 138 / var(--tw-text-opacity, 1));\n}\n.text-card-foreground {\n --tw-text-opacity: 1;\n color: hsl(var(--card-foreground) / var(--tw-text-opacity, 1));\n}\n.text-current {\n color: currentColor;\n}\n.text-destructive {\n --tw-text-opacity: 1;\n color: hsl(var(--destructive) / var(--tw-text-opacity, 1));\n}\n.text-destructive-foreground {\n --tw-text-opacity: 1;\n color: hsl(var(--destructive-foreground) / var(--tw-text-opacity, 1));\n}\n.text-error {\n --tw-text-opacity: 1;\n color: hsl(var(--error) / var(--tw-text-opacity, 1));\n}\n.text-foreground {\n --tw-text-opacity: 1;\n color: hsl(var(--foreground) / var(--tw-text-opacity, 1));\n}\n.text-foreground\\/50 {\n color: hsl(var(--foreground) / 0.5);\n}\n.text-gray-500 {\n --tw-text-opacity: 1;\n color: rgb(107 114 128 / var(--tw-text-opacity, 1));\n}\n.text-gray-600 {\n --tw-text-opacity: 1;\n color: rgb(75 85 99 / var(--tw-text-opacity, 1));\n}\n.text-gray-700 {\n --tw-text-opacity: 1;\n color: rgb(55 65 81 / var(--tw-text-opacity, 1));\n}\n.text-gray-900 {\n --tw-text-opacity: 1;\n color: rgb(17 24 39 / var(--tw-text-opacity, 1));\n}\n.text-green-500 {\n --tw-text-opacity: 1;\n color: rgb(34 197 94 / var(--tw-text-opacity, 1));\n}\n.text-green-600 {\n --tw-text-opacity: 1;\n color: rgb(22 163 74 / var(--tw-text-opacity, 1));\n}\n.text-green-700 {\n --tw-text-opacity: 1;\n color: rgb(21 128 61 / var(--tw-text-opacity, 1));\n}\n.text-green-800 {\n --tw-text-opacity: 1;\n color: rgb(22 101 52 / var(--tw-text-opacity, 1));\n}\n.text-green-900 {\n --tw-text-opacity: 1;\n color: rgb(20 83 45 / var(--tw-text-opacity, 1));\n}\n.text-muted-foreground {\n --tw-text-opacity: 1;\n color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));\n}\n.text-orange-800 {\n --tw-text-opacity: 1;\n color: rgb(154 52 18 / var(--tw-text-opacity, 1));\n}\n.text-orange-900 {\n --tw-text-opacity: 1;\n color: rgb(124 45 18 / var(--tw-text-opacity, 1));\n}\n.text-popover-foreground {\n --tw-text-opacity: 1;\n color: hsl(var(--popover-foreground) / var(--tw-text-opacity, 1));\n}\n.text-primary {\n --tw-text-opacity: 1;\n color: hsl(var(--primary) / var(--tw-text-opacity, 1));\n}\n.text-primary-foreground {\n --tw-text-opacity: 1;\n color: hsl(var(--primary-foreground) / var(--tw-text-opacity, 1));\n}\n.text-purple-600 {\n --tw-text-opacity: 1;\n color: rgb(147 51 234 / var(--tw-text-opacity, 1));\n}\n.text-red-500 {\n --tw-text-opacity: 1;\n color: rgb(239 68 68 / var(--tw-text-opacity, 1));\n}\n.text-red-600 {\n --tw-text-opacity: 1;\n color: rgb(220 38 38 / var(--tw-text-opacity, 1));\n}\n.text-red-700 {\n --tw-text-opacity: 1;\n color: rgb(185 28 28 / var(--tw-text-opacity, 1));\n}\n.text-red-800 {\n --tw-text-opacity: 1;\n color: rgb(153 27 27 / var(--tw-text-opacity, 1));\n}\n.text-secondary-foreground {\n --tw-text-opacity: 1;\n color: hsl(var(--secondary-foreground) / var(--tw-text-opacity, 1));\n}\n.text-success {\n --tw-text-opacity: 1;\n color: hsl(var(--success) / var(--tw-text-opacity, 1));\n}\n.text-warning {\n --tw-text-opacity: 1;\n color: hsl(var(--warning) / var(--tw-text-opacity, 1));\n}\n.text-white {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\n}\n.text-white\\/80 {\n color: rgb(255 255 255 / 0.8);\n}\n.text-yellow-600 {\n --tw-text-opacity: 1;\n color: rgb(202 138 4 / var(--tw-text-opacity, 1));\n}\n.text-yellow-700 {\n --tw-text-opacity: 1;\n color: rgb(161 98 7 / var(--tw-text-opacity, 1));\n}\n.text-yellow-800 {\n --tw-text-opacity: 1;\n color: rgb(133 77 14 / var(--tw-text-opacity, 1));\n}\n.underline {\n text-decoration-line: underline;\n}\n.underline-offset-4 {\n text-underline-offset: 4px;\n}\n.opacity-0 {\n opacity: 0;\n}\n.opacity-30 {\n opacity: 0.3;\n}\n.opacity-50 {\n opacity: 0.5;\n}\n.opacity-60 {\n opacity: 0.6;\n}\n.opacity-70 {\n opacity: 0.7;\n}\n.opacity-80 {\n opacity: 0.8;\n}\n.opacity-90 {\n opacity: 0.9;\n}\n.shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-lg {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-md {\n --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-none {\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-sm {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-xl {\n --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-primary\\/50 {\n --tw-shadow-color: hsl(var(--primary) / 0.5);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.shadow-purple-500\\/25 {\n --tw-shadow-color: rgb(168 85 247 / 0.25);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.outline-none {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.outline {\n outline-style: solid;\n}\n.ring {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.ring-0 {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.ring-2 {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.ring-gray-300 {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(209 213 219 / var(--tw-ring-opacity, 1));\n}\n.ring-offset-2 {\n --tw-ring-offset-width: 2px;\n}\n.ring-offset-background {\n --tw-ring-offset-color: hsl(var(--background) / 1);\n}\n.blur {\n --tw-blur: blur(8px);\n 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);\n}\n.filter {\n 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);\n}\n.backdrop-blur-md {\n --tw-backdrop-blur: blur(12px);\n -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);\n 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);\n}\n.backdrop-blur-sm {\n --tw-backdrop-blur: blur(4px);\n -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);\n 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);\n}\n.transition {\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke,\n opacity,\n box-shadow,\n transform,\n filter,\n -webkit-backdrop-filter;\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke,\n opacity,\n box-shadow,\n transform,\n filter,\n backdrop-filter;\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke,\n opacity,\n box-shadow,\n transform,\n filter,\n backdrop-filter,\n -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-colors {\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-opacity {\n transition-property: opacity;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-shadow {\n transition-property: box-shadow;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-transform {\n transition-property: transform;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.duration-100 {\n transition-duration: 100ms;\n}\n.duration-200 {\n transition-duration: 200ms;\n}\n.duration-300 {\n transition-duration: 300ms;\n}\n.ease-out {\n transition-timing-function: cubic-bezier(0, 0, 0.2, 1);\n}\n.shadow-sm {\n box-shadow: var(--shadow-sm);\n}\n.shadow-md {\n box-shadow: var(--shadow-md);\n}\n.shadow-lg {\n box-shadow: var(--shadow-lg);\n}\n.shadow-xl {\n box-shadow: var(--shadow-xl);\n}\n.animate-spin {\n animation: spin 1s linear infinite;\n}\n.animate-pulse {\n animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n}\n.transition-all {\n transition-property: all;\n}\n.transition-colors {\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke;\n}\n.transition-opacity {\n transition-property: opacity;\n}\n.transition-shadow {\n transition-property: box-shadow;\n}\n.transition-transform {\n transition-property: transform;\n}\n.ease-out {\n transition-timing-function: var(--ease-out);\n}\n:root {\n --primary-50: 240 249 255;\n --primary-100: 224 242 254;\n --primary-200: 186 230 253;\n --primary-300: 125 211 252;\n --primary-400: 56 189 248;\n --primary-500: 14 165 233;\n --primary-600: 2 132 199;\n --primary-700: 3 105 161;\n --primary-800: 7 89 133;\n --primary-900: 12 74 110;\n --primary-950: 8 47 73;\n --secondary-50: 248 250 252;\n --secondary-100: 241 245 249;\n --secondary-200: 226 232 240;\n --secondary-300: 203 213 225;\n --secondary-400: 148 163 184;\n --secondary-500: 100 116 139;\n --secondary-600: 71 85 105;\n --secondary-700: 51 65 85;\n --secondary-800: 30 41 59;\n --secondary-900: 15 23 42;\n --secondary-950: 2 6 23;\n --success-50: 240 253 244;\n --success-100: 220 252 231;\n --success-200: 187 247 208;\n --success-300: 134 239 172;\n --success-400: 74 222 128;\n --success-500: 34 197 94;\n --success-600: 22 163 74;\n --success-700: 21 128 61;\n --success-800: 22 101 52;\n --success-900: 20 83 45;\n --success-950: 5 46 22;\n --warning-50: 254 252 232;\n --warning-100: 254 249 195;\n --warning-200: 254 240 138;\n --warning-300: 253 224 71;\n --warning-400: 250 204 21;\n --warning-500: 234 179 8;\n --warning-600: 202 138 4;\n --warning-700: 161 98 7;\n --warning-800: 133 77 14;\n --warning-900: 113 63 18;\n --warning-950: 66 32 6;\n --error-50: 254 242 242;\n --error-100: 254 226 226;\n --error-200: 254 202 202;\n --error-300: 252 165 165;\n --error-400: 248 113 113;\n --error-500: 239 68 68;\n --error-600: 220 38 38;\n --error-700: 185 28 28;\n --error-800: 153 27 27;\n --error-900: 127 29 29;\n --error-950: 69 10 10;\n --background: 0 0% 100%;\n --foreground: 222.2 47.4% 11.2%;\n --card: 0 0% 100%;\n --card-foreground: 222.2 47.4% 11.2%;\n --popover: 0 0% 100%;\n --popover-foreground: 222.2 47.4% 11.2%;\n --primary: 222.2 47.4% 11.2%;\n --primary-foreground: 210 40% 98%;\n --secondary: 210 40% 96%;\n --secondary-foreground: 222.2 47.4% 11.2%;\n --muted: 210 40% 96%;\n --muted-foreground: 215.4 16.3% 46.9%;\n --accent: 210 40% 96%;\n --accent-foreground: 222.2 47.4% 11.2%;\n --destructive: 0 100% 50%;\n --destructive-foreground: 210 40% 98%;\n --border: 214.3 31.8% 91.4%;\n --input: 214.3 31.8% 91.4%;\n --ring: 215 20.2% 65.1%;\n --chart-1: 12 76% 61%;\n --chart-2: 173 58% 39%;\n --chart-3: 197 37% 24%;\n --chart-4: 43 74% 66%;\n --chart-5: 27 87% 67%;\n --font-sans:\n "Inter",\n -apple-system,\n BlinkMacSystemFont,\n "Segoe UI",\n Roboto,\n "Helvetica Neue",\n Arial,\n sans-serif;\n --font-serif:\n "Crimson Text",\n Georgia,\n "Times New Roman",\n serif;\n --font-mono:\n "JetBrains Mono",\n "Fira Code",\n "Consolas",\n monospace;\n --text-xs: 0.75rem;\n --text-sm: 0.875rem;\n --text-base: 1rem;\n --text-lg: 1.125rem;\n --text-xl: 1.25rem;\n --text-2xl: 1.5rem;\n --text-3xl: 1.875rem;\n --text-4xl: 2.25rem;\n --text-5xl: 3rem;\n --text-6xl: 3.75rem;\n --text-7xl: 4.5rem;\n --text-8xl: 6rem;\n --text-9xl: 8rem;\n --leading-none: 1;\n --leading-tight: 1.25;\n --leading-snug: 1.375;\n --leading-normal: 1.5;\n --leading-relaxed: 1.625;\n --leading-loose: 2;\n --font-thin: 100;\n --font-extralight: 200;\n --font-light: 300;\n --font-normal: 400;\n --font-medium: 500;\n --font-semibold: 600;\n --font-bold: 700;\n --font-extrabold: 800;\n --font-black: 900;\n --spacing-0: 0;\n --spacing-px: 1px;\n --spacing-0-5: 0.125rem;\n --spacing-1: 0.25rem;\n --spacing-1-5: 0.375rem;\n --spacing-2: 0.5rem;\n --spacing-2-5: 0.625rem;\n --spacing-3: 0.75rem;\n --spacing-3-5: 0.875rem;\n --spacing-4: 1rem;\n --spacing-5: 1.25rem;\n --spacing-6: 1.5rem;\n --spacing-7: 1.75rem;\n --spacing-8: 2rem;\n --spacing-9: 2.25rem;\n --spacing-10: 2.5rem;\n --spacing-11: 2.75rem;\n --spacing-12: 3rem;\n --spacing-14: 3.5rem;\n --spacing-16: 4rem;\n --spacing-20: 5rem;\n --spacing-24: 6rem;\n --spacing-28: 7rem;\n --spacing-32: 8rem;\n --spacing-36: 9rem;\n --spacing-40: 10rem;\n --spacing-44: 11rem;\n --spacing-48: 12rem;\n --spacing-52: 13rem;\n --spacing-56: 14rem;\n --spacing-60: 15rem;\n --spacing-64: 16rem;\n --spacing-72: 18rem;\n --spacing-80: 20rem;\n --spacing-96: 24rem;\n --radius-none: 0;\n --radius-sm: 0.125rem;\n --radius-base: 0.25rem;\n --radius-md: 0.375rem;\n --radius-lg: 0.5rem;\n --radius-xl: 0.75rem;\n --radius-2xl: 1rem;\n --radius-3xl: 1.5rem;\n --radius-full: 9999px;\n --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n --shadow-base: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);\n --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);\n --shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);\n --shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, 0.06);\n --shadow-none: 0 0 #0000;\n --elevation-0: var(--shadow-none);\n --elevation-1: var(--shadow-sm);\n --elevation-2: var(--shadow-base);\n --elevation-3: var(--shadow-md);\n --elevation-4: var(--shadow-lg);\n --elevation-5: var(--shadow-xl);\n --elevation-6: var(--shadow-2xl);\n --duration-75: 75ms;\n --duration-100: 100ms;\n --duration-150: 150ms;\n --duration-200: 200ms;\n --duration-300: 300ms;\n --duration-500: 500ms;\n --duration-700: 700ms;\n --duration-1000: 1000ms;\n --ease-linear: linear;\n --ease-in: cubic-bezier(0.4, 0, 1, 1);\n --ease-out: cubic-bezier(0, 0, 0.2, 1);\n --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);\n --ease-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);\n --ease-spring: cubic-bezier(0.175, 0.885, 0.32, 1.275);\n --animate-fade-in: fadeIn var(--duration-300) var(--ease-out);\n --animate-fade-out: fadeOut var(--duration-300) var(--ease-in);\n --animate-slide-in-up: slideInUp var(--duration-300) var(--ease-out);\n --animate-slide-in-down: slideInDown var(--duration-300) var(--ease-out);\n --animate-slide-in-left: slideInLeft var(--duration-300) var(--ease-out);\n --animate-slide-in-right: slideInRight var(--duration-300) var(--ease-out);\n --animate-scale-in: scaleIn var(--duration-200) var(--ease-out);\n --animate-scale-out: scaleOut var(--duration-200) var(--ease-in);\n --animate-bounce: bounce var(--duration-500) var(--ease-bounce);\n --animate-pulse: pulse var(--duration-1000) var(--ease-in-out) infinite;\n --animate-spin: spin var(--duration-1000) var(--ease-linear) infinite;\n --breakpoint-sm: 640px;\n --breakpoint-md: 768px;\n --breakpoint-lg: 1024px;\n --breakpoint-xl: 1280px;\n --breakpoint-2xl: 1536px;\n --container-sm: 640px;\n --container-md: 768px;\n --container-lg: 1024px;\n --container-xl: 1280px;\n --container-2xl: 1536px;\n --z-0: 0;\n --z-10: 10;\n --z-20: 20;\n --z-30: 30;\n --z-40: 40;\n --z-50: 50;\n --z-auto: auto;\n --z-dropdown: 1000;\n --z-sticky: 1020;\n --z-fixed: 1030;\n --z-modal-backdrop: 1040;\n --z-modal: 1050;\n --z-popover: 1060;\n --z-tooltip: 1070;\n --z-toast: 1080;\n --button-height-sm: 2rem;\n --button-height-md: 2.5rem;\n --button-height-lg: 3rem;\n --button-height-xl: 3.5rem;\n --button-padding-sm: 0.5rem 0.75rem;\n --button-padding-md: 0.625rem 1rem;\n --button-padding-lg: 0.75rem 1.25rem;\n --button-padding-xl: 1rem 1.5rem;\n --button-font-size-sm: var(--text-sm);\n --button-font-size-md: var(--text-base);\n --button-font-size-lg: var(--text-lg);\n --button-font-size-xl: var(--text-xl);\n --input-height-sm: 2rem;\n --input-height-md: 2.5rem;\n --input-height-lg: 3rem;\n --input-height-xl: 3.5rem;\n --input-padding-sm: 0.5rem 0.75rem;\n --input-padding-md: 0.625rem 1rem;\n --input-padding-lg: 0.75rem 1.25rem;\n --input-padding-xl: 1rem 1.5rem;\n --input-border-width: 1px;\n --input-border-radius: var(--radius-md);\n --input-focus-ring-width: 2px;\n --input-focus-ring-offset: 2px;\n --card-padding-sm: 1rem;\n --card-padding-md: 1.5rem;\n --card-padding-lg: 2rem;\n --card-padding-xl: 2.5rem;\n --card-border-radius: var(--radius-lg);\n --card-border-width: 1px;\n --card-shadow: var(--elevation-1);\n --card-hover-shadow: var(--elevation-2);\n}\n.dark {\n --background: 224 71% 4%;\n --foreground: 213 31% 91%;\n --card: 224 71% 4%;\n --card-foreground: 213 31% 91%;\n --popover: 224 71% 4%;\n --popover-foreground: 213 31% 91%;\n --primary: 210 40% 98%;\n --primary-foreground: 222.2 47.4% 1.2%;\n --secondary: 222.2 84% 4.9%;\n --secondary-foreground: 210 40% 98%;\n --muted: 223 47% 11%;\n --muted-foreground: 215.4 16.3% 56.9%;\n --accent: 216 34% 17%;\n --accent-foreground: 210 40% 98%;\n --destructive: 0 63% 31%;\n --destructive-foreground: 210 40% 98%;\n --border: 216 34% 17%;\n --input: 216 34% 17%;\n --ring: 216 34% 17%;\n --chart-1: 220 70% 50%;\n --chart-2: 160 60% 45%;\n --chart-3: 30 80% 55%;\n --chart-4: 280 65% 60%;\n --chart-5: 340 75% 55%;\n}\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes fadeOut {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n}\n@keyframes slideInUp {\n from {\n transform: translateY(100%);\n opacity: 0;\n }\n to {\n transform: translateY(0);\n opacity: 1;\n }\n}\n@keyframes slideInDown {\n from {\n transform: translateY(-100%);\n opacity: 0;\n }\n to {\n transform: translateY(0);\n opacity: 1;\n }\n}\n@keyframes slideInLeft {\n from {\n transform: translateX(-100%);\n opacity: 0;\n }\n to {\n transform: translateX(0);\n opacity: 1;\n }\n}\n@keyframes slideInRight {\n from {\n transform: translateX(100%);\n opacity: 0;\n }\n to {\n transform: translateX(0);\n opacity: 1;\n }\n}\n@keyframes scaleIn {\n from {\n transform: scale(0.95);\n opacity: 0;\n }\n to {\n transform: scale(1);\n opacity: 1;\n }\n}\n@keyframes scaleOut {\n from {\n transform: scale(1);\n opacity: 1;\n }\n to {\n transform: scale(0.95);\n opacity: 0;\n }\n}\n@keyframes bounce {\n 0%, 20%, 53%, 80%, 100% {\n transform: translate3d(0, 0, 0);\n }\n 40%, 43% {\n transform: translate3d(0, -30px, 0);\n }\n 70% {\n transform: translate3d(0, -15px, 0);\n }\n 90% {\n transform: translate3d(0, -4px, 0);\n }\n}\n@keyframes pulse {\n 0%, 100% {\n opacity: 1;\n }\n 50% {\n opacity: 0.5;\n }\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n.animate-fade-in {\n animation: var(--animate-fade-in);\n}\n.animate-fade-out {\n animation: var(--animate-fade-out);\n}\n.animate-slide-in-up {\n animation: var(--animate-slide-in-up);\n}\n.animate-slide-in-down {\n animation: var(--animate-slide-in-down);\n}\n.animate-slide-in-left {\n animation: var(--animate-slide-in-left);\n}\n.animate-slide-in-right {\n animation: var(--animate-slide-in-right);\n}\n.animate-scale-in {\n animation: var(--animate-scale-in);\n}\n.animate-scale-out {\n animation: var(--animate-scale-out);\n}\n.animate-bounce {\n animation: var(--animate-bounce);\n}\n.animate-pulse {\n animation: var(--animate-pulse);\n}\n.animate-spin {\n animation: var(--animate-spin);\n}\n@media (max-width: 639px) {\n .container {\n max-width: 100%;\n }\n}\n@media (min-width: 640px) {\n .container {\n max-width: var(--container-sm);\n }\n}\n@media (min-width: 768px) {\n .container {\n max-width: var(--container-md);\n }\n}\n@media (min-width: 1024px) {\n .container {\n max-width: var(--container-lg);\n }\n}\n@media (min-width: 1280px) {\n .container {\n max-width: var(--container-xl);\n }\n}\n@media (min-width: 1536px) {\n .container {\n max-width: var(--container-2xl);\n }\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n@keyframes ping {\n 75%, 100% {\n transform: scale(2);\n opacity: 0;\n }\n}\n@keyframes pulse {\n 0%, 100% {\n opacity: 1;\n }\n 50% {\n opacity: .5;\n }\n}\n@keyframes bounce {\n 0%, 100% {\n transform: translateY(-25%);\n animation-timing-function: cubic-bezier(0.8, 0, 1, 1);\n }\n 50% {\n transform: translateY(0);\n animation-timing-function: cubic-bezier(0, 0, 0.2, 1);\n }\n}\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes fadeOut {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n}\n@keyframes slideIn {\n from {\n transform: translateX(-100%);\n }\n to {\n transform: translateX(0);\n }\n}\n@keyframes scaleIn {\n from {\n transform: scale(0.95);\n opacity: 0;\n }\n to {\n transform: scale(1);\n opacity: 1;\n }\n}\n.file\\:border-0::file-selector-button {\n border-width: 0px;\n}\n.file\\:bg-transparent::file-selector-button {\n background-color: transparent;\n}\n.file\\:font-medium::file-selector-button {\n font-weight: 500;\n}\n.placeholder\\:text-muted-foreground::-moz-placeholder {\n --tw-text-opacity: 1;\n color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));\n}\n.placeholder\\:text-muted-foreground::placeholder {\n --tw-text-opacity: 1;\n color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));\n}\n.hover\\:-translate-y-0\\.5:hover {\n --tw-translate-y: -0.125rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.hover\\:scale-105:hover {\n --tw-scale-x: 1.05;\n --tw-scale-y: 1.05;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.hover\\:scale-110:hover {\n --tw-scale-x: 1.1;\n --tw-scale-y: 1.1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.hover\\:border-error\\/80:hover {\n border-color: hsl(var(--error) / 0.8);\n}\n.hover\\:border-gray-300:hover {\n --tw-border-opacity: 1;\n border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));\n}\n.hover\\:border-gray-400:hover {\n --tw-border-opacity: 1;\n border-color: rgb(156 163 175 / var(--tw-border-opacity, 1));\n}\n.hover\\:border-primary\\/20:hover {\n border-color: hsl(var(--primary) / 0.2);\n}\n.hover\\:border-primary\\/50:hover {\n border-color: hsl(var(--primary) / 0.5);\n}\n.hover\\:border-success\\/80:hover {\n border-color: hsl(var(--success) / 0.8);\n}\n.hover\\:border-white\\/30:hover {\n border-color: rgb(255 255 255 / 0.3);\n}\n.hover\\:bg-accent:hover {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-black\\/10:hover {\n background-color: rgb(0 0 0 / 0.1);\n}\n.hover\\:bg-destructive\\/90:hover {\n background-color: hsl(var(--destructive) / 0.9);\n}\n.hover\\:bg-error\\/90:hover {\n background-color: hsl(var(--error) / 0.9);\n}\n.hover\\:bg-gray-100:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-gray-100\\/50:hover {\n background-color: rgb(243 244 246 / 0.5);\n}\n.hover\\:bg-gray-200:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-gray-50:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-muted:hover {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--muted) / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-muted\\/30:hover {\n background-color: hsl(var(--muted) / 0.3);\n}\n.hover\\:bg-muted\\/50:hover {\n background-color: hsl(var(--muted) / 0.5);\n}\n.hover\\:bg-muted\\/80:hover {\n background-color: hsl(var(--muted) / 0.8);\n}\n.hover\\:bg-primary:hover {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-primary\\/20:hover {\n background-color: hsl(var(--primary) / 0.2);\n}\n.hover\\:bg-primary\\/90:hover {\n background-color: hsl(var(--primary) / 0.9);\n}\n.hover\\:bg-purple-200:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(233 213 255 / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-secondary:hover {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--secondary) / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-secondary\\/80:hover {\n background-color: hsl(var(--secondary) / 0.8);\n}\n.hover\\:bg-success\\/90:hover {\n background-color: hsl(var(--success) / 0.9);\n}\n.hover\\:bg-warning\\/90:hover {\n background-color: hsl(var(--warning) / 0.9);\n}\n.hover\\:bg-white\\/20:hover {\n background-color: rgb(255 255 255 / 0.2);\n}\n.hover\\:from-blue-700:hover {\n --tw-gradient-from: #1d4ed8 var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(29 78 216 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.hover\\:from-purple-700:hover {\n --tw-gradient-from: #7e22ce var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(126 34 206 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.hover\\:to-pink-700:hover {\n --tw-gradient-to: #be185d var(--tw-gradient-to-position);\n}\n.hover\\:to-purple-700:hover {\n --tw-gradient-to: #7e22ce var(--tw-gradient-to-position);\n}\n.hover\\:text-accent-foreground:hover {\n --tw-text-opacity: 1;\n color: hsl(var(--accent-foreground) / var(--tw-text-opacity, 1));\n}\n.hover\\:text-foreground:hover {\n --tw-text-opacity: 1;\n color: hsl(var(--foreground) / var(--tw-text-opacity, 1));\n}\n.hover\\:text-primary-foreground:hover {\n --tw-text-opacity: 1;\n color: hsl(var(--primary-foreground) / var(--tw-text-opacity, 1));\n}\n.hover\\:text-white:hover {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\n}\n.hover\\:underline:hover {\n text-decoration-line: underline;\n}\n.hover\\:opacity-100:hover {\n opacity: 1;\n}\n.hover\\:opacity-90:hover {\n opacity: 0.9;\n}\n.hover\\:shadow-\\[0_0_20px_rgba\\(var\\(--primary\\)\\,0\\.5\\)\\]:hover {\n --tw-shadow: 0 0 20px rgba(var(--primary),0.5);\n --tw-shadow-colored: 0 0 20px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.hover\\:shadow-lg:hover {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.hover\\:shadow-md:hover {\n --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.hover\\:shadow-xl:hover {\n --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.hover\\:shadow-primary\\/20:hover {\n --tw-shadow-color: hsl(var(--primary) / 0.2);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.hover\\:shadow-primary\\/60:hover {\n --tw-shadow-color: hsl(var(--primary) / 0.6);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.hover\\:brightness-110:hover {\n --tw-brightness: brightness(1.1);\n 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);\n}\n.hover\\:shadow-md:hover {\n box-shadow: var(--shadow-md);\n}\n.hover\\:shadow-lg:hover {\n box-shadow: var(--shadow-lg);\n}\n.hover\\:shadow-xl:hover {\n box-shadow: var(--shadow-xl);\n}\n.focus\\:bg-accent:focus {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));\n}\n.focus\\:bg-error\\/10:focus {\n background-color: hsl(var(--error) / 0.1);\n}\n.focus\\:bg-gray-100:focus {\n --tw-bg-opacity: 1;\n background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));\n}\n.focus\\:bg-success\\/10:focus {\n background-color: hsl(var(--success) / 0.1);\n}\n.focus\\:bg-warning\\/10:focus {\n background-color: hsl(var(--warning) / 0.1);\n}\n.focus\\:text-accent-foreground:focus {\n --tw-text-opacity: 1;\n color: hsl(var(--accent-foreground) / var(--tw-text-opacity, 1));\n}\n.focus\\:text-error:focus {\n --tw-text-opacity: 1;\n color: hsl(var(--error) / var(--tw-text-opacity, 1));\n}\n.focus\\:text-foreground:focus {\n --tw-text-opacity: 1;\n color: hsl(var(--foreground) / var(--tw-text-opacity, 1));\n}\n.focus\\:text-success:focus {\n --tw-text-opacity: 1;\n color: hsl(var(--success) / var(--tw-text-opacity, 1));\n}\n.focus\\:text-warning:focus {\n --tw-text-opacity: 1;\n color: hsl(var(--warning) / var(--tw-text-opacity, 1));\n}\n.focus\\:opacity-100:focus {\n opacity: 1;\n}\n.focus\\:outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.focus\\:ring-1:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.focus\\:ring-2:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.focus\\:ring-\\[var\\(--login-primary\\)\\]:focus {\n --tw-ring-color: var(--login-primary);\n}\n.focus\\:ring-primary\\/30:focus {\n --tw-ring-color: hsl(var(--primary) / 0.3);\n}\n.focus\\:ring-ring:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: hsl(var(--ring) / var(--tw-ring-opacity, 1));\n}\n.focus\\:ring-offset-2:focus {\n --tw-ring-offset-width: 2px;\n}\n.focus-visible\\:border-2:focus-visible {\n border-width: 2px;\n}\n.focus-visible\\:border-b-2:focus-visible {\n border-bottom-width: 2px;\n}\n.focus-visible\\:border-error:focus-visible {\n --tw-border-opacity: 1;\n border-color: hsl(var(--error) / var(--tw-border-opacity, 1));\n}\n.focus-visible\\:border-primary:focus-visible {\n --tw-border-opacity: 1;\n border-color: hsl(var(--primary) / var(--tw-border-opacity, 1));\n}\n.focus-visible\\:border-success:focus-visible {\n --tw-border-opacity: 1;\n border-color: hsl(var(--success) / var(--tw-border-opacity, 1));\n}\n.focus-visible\\:bg-transparent:focus-visible {\n background-color: transparent;\n}\n.focus-visible\\:shadow-lg:focus-visible {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.focus-visible\\:shadow-primary\\/30:focus-visible {\n --tw-shadow-color: hsl(var(--primary) / 0.3);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.focus-visible\\:outline-none:focus-visible {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.focus-visible\\:ring-0:focus-visible {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.focus-visible\\:ring-2:focus-visible {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.focus-visible\\:ring-error\\/30:focus-visible {\n --tw-ring-color: hsl(var(--error) / 0.3);\n}\n.focus-visible\\:ring-error\\/50:focus-visible {\n --tw-ring-color: hsl(var(--error) / 0.5);\n}\n.focus-visible\\:ring-gray-400\\/30:focus-visible {\n --tw-ring-color: rgb(156 163 175 / 0.3);\n}\n.focus-visible\\:ring-primary\\/30:focus-visible {\n --tw-ring-color: hsl(var(--primary) / 0.3);\n}\n.focus-visible\\:ring-primary\\/50:focus-visible {\n --tw-ring-color: hsl(var(--primary) / 0.5);\n}\n.focus-visible\\:ring-purple-400\\/30:focus-visible {\n --tw-ring-color: rgb(192 132 252 / 0.3);\n}\n.focus-visible\\:ring-purple-500\\/50:focus-visible {\n --tw-ring-color: rgb(168 85 247 / 0.5);\n}\n.focus-visible\\:ring-ring:focus-visible {\n --tw-ring-opacity: 1;\n --tw-ring-color: hsl(var(--ring) / var(--tw-ring-opacity, 1));\n}\n.focus-visible\\:ring-success\\/30:focus-visible {\n --tw-ring-color: hsl(var(--success) / 0.3);\n}\n.focus-visible\\:ring-success\\/50:focus-visible {\n --tw-ring-color: hsl(var(--success) / 0.5);\n}\n.focus-visible\\:ring-warning\\/30:focus-visible {\n --tw-ring-color: hsl(var(--warning) / 0.3);\n}\n.focus-visible\\:ring-white\\/50:focus-visible {\n --tw-ring-color: rgb(255 255 255 / 0.5);\n}\n.focus-visible\\:ring-offset-1:focus-visible {\n --tw-ring-offset-width: 1px;\n}\n.focus-visible\\:ring-offset-2:focus-visible {\n --tw-ring-offset-width: 2px;\n}\n.focus-visible\\:ring-offset-background:focus-visible {\n --tw-ring-offset-color: hsl(var(--background) / 1);\n}\n.focus-visible\\:shadow-lg:focus-visible {\n box-shadow: var(--shadow-lg);\n}\n.active\\:translate-y-0:active {\n --tw-translate-y: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.active\\:translate-y-0\\.5:active {\n --tw-translate-y: 0.125rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.active\\:scale-95:active {\n --tw-scale-x: .95;\n --tw-scale-y: .95;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.active\\:cursor-grabbing:active {\n cursor: grabbing;\n}\n.active\\:bg-error\\/80:active {\n background-color: hsl(var(--error) / 0.8);\n}\n.active\\:bg-gray-100:active {\n --tw-bg-opacity: 1;\n background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));\n}\n.active\\:bg-gray-200:active {\n --tw-bg-opacity: 1;\n background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));\n}\n.active\\:bg-gray-300:active {\n --tw-bg-opacity: 1;\n background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));\n}\n.active\\:bg-primary\\/30:active {\n background-color: hsl(var(--primary) / 0.3);\n}\n.active\\:bg-success\\/80:active {\n background-color: hsl(var(--success) / 0.8);\n}\n.active\\:bg-white\\/30:active {\n background-color: rgb(255 255 255 / 0.3);\n}\n.active\\:from-blue-800:active {\n --tw-gradient-from: #1e40af var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(30 64 175 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.active\\:to-purple-800:active {\n --tw-gradient-to: #6b21a8 var(--tw-gradient-to-position);\n}\n.active\\:shadow-\\[0_0_10px_rgba\\(var\\(--primary\\)\\,0\\.3\\)\\]:active {\n --tw-shadow: 0 0 10px rgba(var(--primary),0.3);\n --tw-shadow-colored: 0 0 10px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.active\\:shadow-md:active {\n --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.active\\:shadow-sm:active {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.active\\:shadow-primary\\/40:active {\n --tw-shadow-color: hsl(var(--primary) / 0.4);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.active\\:brightness-90:active {\n --tw-brightness: brightness(.9);\n 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);\n}\n.active\\:brightness-95:active {\n --tw-brightness: brightness(.95);\n 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);\n}\n.active\\:shadow-sm:active {\n box-shadow: var(--shadow-sm);\n}\n.active\\:shadow-md:active {\n box-shadow: var(--shadow-md);\n}\n.disabled\\:pointer-events-none:disabled {\n pointer-events: none;\n}\n.disabled\\:cursor-not-allowed:disabled {\n cursor: not-allowed;\n}\n.disabled\\:opacity-50:disabled {\n opacity: 0.5;\n}\n.group:hover .group-hover\\:flex {\n display: flex;\n}\n.group:hover .group-hover\\:opacity-100 {\n opacity: 1;\n}\n.group.destructive .group-\\[\\.destructive\\]\\:border-muted\\/40 {\n border-color: hsl(var(--muted) / 0.4);\n}\n.group.destructive .group-\\[\\.destructive\\]\\:text-red-300 {\n --tw-text-opacity: 1;\n color: rgb(252 165 165 / var(--tw-text-opacity, 1));\n}\n.group.destructive .group-\\[\\.destructive\\]\\:hover\\:border-destructive\\/30:hover {\n border-color: hsl(var(--destructive) / 0.3);\n}\n.group.destructive .group-\\[\\.destructive\\]\\:hover\\:bg-destructive:hover {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--destructive) / var(--tw-bg-opacity, 1));\n}\n.group.destructive .group-\\[\\.destructive\\]\\:hover\\:text-destructive-foreground:hover {\n --tw-text-opacity: 1;\n color: hsl(var(--destructive-foreground) / var(--tw-text-opacity, 1));\n}\n.group.destructive .group-\\[\\.destructive\\]\\:hover\\:text-red-50:hover {\n --tw-text-opacity: 1;\n color: rgb(254 242 242 / var(--tw-text-opacity, 1));\n}\n.group.destructive .group-\\[\\.destructive\\]\\:focus\\:ring-destructive:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: hsl(var(--destructive) / var(--tw-ring-opacity, 1));\n}\n.group.destructive .group-\\[\\.destructive\\]\\:focus\\:ring-red-400:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity, 1));\n}\n.group.destructive .group-\\[\\.destructive\\]\\:focus\\:ring-offset-red-600:focus {\n --tw-ring-offset-color: #dc2626;\n}\n.peer:disabled ~ .peer-disabled\\:cursor-not-allowed {\n cursor: not-allowed;\n}\n.peer:disabled ~ .peer-disabled\\:opacity-70 {\n opacity: 0.7;\n}\n.data-\\[disabled\\]\\:pointer-events-none[data-disabled] {\n pointer-events: none;\n}\n.data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom] {\n --tw-translate-y: 0.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[side\\=left\\]\\:-translate-x-1[data-side=left] {\n --tw-translate-x: -0.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[side\\=right\\]\\:translate-x-1[data-side=right] {\n --tw-translate-x: 0.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[side\\=top\\]\\:-translate-y-1[data-side=top] {\n --tw-translate-y: -0.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[state\\=checked\\]\\:translate-x-4[data-state=checked] {\n --tw-translate-x: 1rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[state\\=checked\\]\\:translate-x-5[data-state=checked] {\n --tw-translate-x: 1.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[state\\=checked\\]\\:translate-x-7[data-state=checked] {\n --tw-translate-x: 1.75rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[state\\=unchecked\\]\\:translate-x-0[data-state=unchecked] {\n --tw-translate-x: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[swipe\\=cancel\\]\\:translate-x-0[data-swipe=cancel] {\n --tw-translate-x: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[swipe\\=end\\]\\:translate-x-\\[var\\(--radix-toast-swipe-end-x\\)\\][data-swipe=end] {\n --tw-translate-x: var(--radix-toast-swipe-end-x);\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[swipe\\=move\\]\\:translate-x-\\[var\\(--radix-toast-swipe-move-x\\)\\][data-swipe=move] {\n --tw-translate-x: var(--radix-toast-swipe-move-x);\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n@keyframes bounce {\n 0%, 100% {\n transform: translateY(-25%);\n animation-timing-function: cubic-bezier(0.8, 0, 1, 1);\n }\n 50% {\n transform: none;\n animation-timing-function: cubic-bezier(0, 0, 0.2, 1);\n }\n}\n.data-\\[state\\=checked\\]\\:animate-bounce[data-state=checked] {\n animation: bounce 1s infinite;\n}\n.data-\\[state\\=active\\]\\:border-primary[data-state=active] {\n --tw-border-opacity: 1;\n border-color: hsl(var(--primary) / var(--tw-border-opacity, 1));\n}\n.data-\\[state\\=checked\\]\\:border-primary[data-state=checked] {\n --tw-border-opacity: 1;\n border-color: hsl(var(--primary) / var(--tw-border-opacity, 1));\n}\n.data-\\[state\\=active\\]\\:bg-background[data-state=active] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--background) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=active\\]\\:bg-primary[data-state=active] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=active\\]\\:bg-transparent[data-state=active] {\n background-color: transparent;\n}\n.data-\\[state\\=checked\\]\\:bg-accent[data-state=checked] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=checked\\]\\:bg-error[data-state=checked] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--error) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=checked\\]\\:bg-primary[data-state=checked] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=checked\\]\\:bg-success[data-state=checked] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--success) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=checked\\]\\:bg-warning[data-state=checked] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--warning) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=open\\]\\:bg-accent[data-state=open] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=unchecked\\]\\:bg-input[data-state=unchecked] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--input) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=active\\]\\:text-foreground[data-state=active] {\n --tw-text-opacity: 1;\n color: hsl(var(--foreground) / var(--tw-text-opacity, 1));\n}\n.data-\\[state\\=active\\]\\:text-primary-foreground[data-state=active] {\n --tw-text-opacity: 1;\n color: hsl(var(--primary-foreground) / var(--tw-text-opacity, 1));\n}\n.data-\\[state\\=checked\\]\\:text-primary-foreground[data-state=checked] {\n --tw-text-opacity: 1;\n color: hsl(var(--primary-foreground) / var(--tw-text-opacity, 1));\n}\n.data-\\[state\\=active\\]\\:underline[data-state=active] {\n text-decoration-line: underline;\n}\n.data-\\[state\\=active\\]\\:underline-offset-4[data-state=active] {\n text-underline-offset: 4px;\n}\n.data-\\[disabled\\]\\:opacity-50[data-disabled] {\n opacity: 0.5;\n}\n.data-\\[state\\=inactive\\]\\:opacity-60[data-state=inactive] {\n opacity: 0.6;\n}\n.data-\\[state\\=active\\]\\:shadow-md[data-state=active] {\n --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.data-\\[state\\=active\\]\\:shadow-sm[data-state=active] {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.data-\\[swipe\\=move\\]\\:transition-none[data-swipe=move] {\n transition-property: none;\n}\n.data-\\[state\\=open\\]\\:duration-150[data-state=open] {\n transition-duration: 150ms;\n}\n.data-\\[state\\=active\\]\\:shadow-sm[data-state=active] {\n box-shadow: var(--shadow-sm);\n}\n.data-\\[state\\=active\\]\\:shadow-md[data-state=active] {\n box-shadow: var(--shadow-md);\n}\n.data-\\[state\\=checked\\]\\:animate-bounce[data-state=checked] {\n animation: bounce 1s infinite;\n}\n.data-\\[swipe\\=move\\]\\:transition-none[data-swipe=move] {\n transition: none;\n}\n.group[data-state=open] .group-data-\\[state\\=open\\]\\:rotate-180 {\n --tw-rotate: 180deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.dark\\:border-blue-800:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(30 64 175 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-error\\/20:is(.dark *) {\n border-color: hsl(var(--error) / 0.2);\n}\n.dark\\:border-error\\/30:is(.dark *) {\n border-color: hsl(var(--error) / 0.3);\n}\n.dark\\:border-gray-600:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(75 85 99 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-gray-700:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(55 65 81 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-gray-700\\/20:is(.dark *) {\n border-color: rgb(55 65 81 / 0.2);\n}\n.dark\\:border-gray-700\\/30:is(.dark *) {\n border-color: rgb(55 65 81 / 0.3);\n}\n.dark\\:border-gray-800:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(31 41 55 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-green-800:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(22 101 52 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-orange-800:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(154 52 18 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-primary\\/30:is(.dark *) {\n border-color: hsl(var(--primary) / 0.3);\n}\n.dark\\:border-success\\/20:is(.dark *) {\n border-color: hsl(var(--success) / 0.2);\n}\n.dark\\:bg-blue-900\\/20:is(.dark *) {\n background-color: rgb(30 58 138 / 0.2);\n}\n.dark\\:bg-error\\/90:is(.dark *) {\n background-color: hsl(var(--error) / 0.9);\n}\n.dark\\:bg-gray-700:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-gray-800:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-gray-800\\/10:is(.dark *) {\n background-color: rgb(31 41 55 / 0.1);\n}\n.dark\\:bg-gray-800\\/50:is(.dark *) {\n background-color: rgb(31 41 55 / 0.5);\n}\n.dark\\:bg-gray-800\\/80:is(.dark *) {\n background-color: rgb(31 41 55 / 0.8);\n}\n.dark\\:bg-gray-800\\/90:is(.dark *) {\n background-color: rgb(31 41 55 / 0.9);\n}\n.dark\\:bg-gray-900:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(17 24 39 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-gray-900\\/50:is(.dark *) {\n background-color: rgb(17 24 39 / 0.5);\n}\n.dark\\:bg-gray-900\\/60:is(.dark *) {\n background-color: rgb(17 24 39 / 0.6);\n}\n.dark\\:bg-gray-950:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(3 7 18 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-green-900\\/20:is(.dark *) {\n background-color: rgb(20 83 45 / 0.2);\n}\n.dark\\:bg-orange-900\\/20:is(.dark *) {\n background-color: rgb(124 45 18 / 0.2);\n}\n.dark\\:bg-primary:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-primary\\/20:is(.dark *) {\n background-color: hsl(var(--primary) / 0.2);\n}\n.dark\\:bg-primary\\/90:is(.dark *) {\n background-color: hsl(var(--primary) / 0.9);\n}\n.dark\\:bg-purple-900:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(88 28 135 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-purple-900\\/30:is(.dark *) {\n background-color: rgb(88 28 135 / 0.3);\n}\n.dark\\:bg-success\\/90:is(.dark *) {\n background-color: hsl(var(--success) / 0.9);\n}\n.dark\\:bg-transparent:is(.dark *) {\n background-color: transparent;\n}\n.dark\\:bg-warning\\/90:is(.dark *) {\n background-color: hsl(var(--warning) / 0.9);\n}\n.dark\\:from-primary\\/10:is(.dark *) {\n --tw-gradient-from: hsl(var(--primary) / 0.1) var(--tw-gradient-from-position);\n --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.dark\\:to-primary\\/20:is(.dark *) {\n --tw-gradient-to: hsl(var(--primary) / 0.2) var(--tw-gradient-to-position);\n}\n.dark\\:text-blue-100:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(219 234 254 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-blue-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(96 165 250 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-gray-100:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(243 244 246 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-gray-200:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(229 231 235 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-gray-300:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(209 213 219 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-gray-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(156 163 175 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-gray-900:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(17 24 39 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-green-100:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(220 252 231 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-green-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(74 222 128 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-orange-100:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(255 237 213 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-primary-foreground:is(.dark *) {\n --tw-text-opacity: 1;\n color: hsl(var(--primary-foreground) / var(--tw-text-opacity, 1));\n}\n.dark\\:text-purple-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(192 132 252 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-red-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(248 113 113 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-white:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-yellow-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(250 204 21 / var(--tw-text-opacity, 1));\n}\n.dark\\:shadow-inner:is(.dark *) {\n --tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.dark\\:shadow-lg:is(.dark *) {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.dark\\:shadow-md:is(.dark *) {\n --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.dark\\:shadow-sm:is(.dark *) {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.dark\\:shadow-error\\/10:is(.dark *) {\n --tw-shadow-color: hsl(var(--error) / 0.1);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:shadow-gray-900\\/20:is(.dark *) {\n --tw-shadow-color: rgb(17 24 39 / 0.2);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:shadow-gray-900\\/30:is(.dark *) {\n --tw-shadow-color: rgb(17 24 39 / 0.3);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:shadow-gray-950\\/10:is(.dark *) {\n --tw-shadow-color: rgb(3 7 18 / 0.1);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:shadow-primary\\/10:is(.dark *) {\n --tw-shadow-color: hsl(var(--primary) / 0.1);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:shadow-primary\\/20:is(.dark *) {\n --tw-shadow-color: hsl(var(--primary) / 0.2);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:shadow-purple-500\\/10:is(.dark *) {\n --tw-shadow-color: rgb(168 85 247 / 0.1);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:shadow-success\\/10:is(.dark *) {\n --tw-shadow-color: hsl(var(--success) / 0.1);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:shadow-warning\\/10:is(.dark *) {\n --tw-shadow-color: hsl(var(--warning) / 0.1);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:ring-gray-600:is(.dark *) {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(75 85 99 / var(--tw-ring-opacity, 1));\n}\n.dark\\:ring-offset-gray-950:is(.dark *) {\n --tw-ring-offset-color: #030712;\n}\n.dark\\:backdrop-blur-sm:is(.dark *) {\n --tw-backdrop-blur: blur(4px);\n -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);\n 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);\n}\n.dark\\:shadow-sm:is(.dark *) {\n box-shadow: var(--shadow-sm);\n}\n.dark\\:shadow-md:is(.dark *) {\n box-shadow: var(--shadow-md);\n}\n.dark\\:shadow-lg:is(.dark *) {\n box-shadow: var(--shadow-lg);\n}\n.dark\\:placeholder\\:text-gray-500:is(.dark *)::-moz-placeholder {\n --tw-text-opacity: 1;\n color: rgb(107 114 128 / var(--tw-text-opacity, 1));\n}\n.dark\\:placeholder\\:text-gray-500:is(.dark *)::placeholder {\n --tw-text-opacity: 1;\n color: rgb(107 114 128 / var(--tw-text-opacity, 1));\n}\n.dark\\:hover\\:border-error\\/80:hover:is(.dark *) {\n border-color: hsl(var(--error) / 0.8);\n}\n.dark\\:hover\\:border-gray-500:hover:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(107 114 128 / var(--tw-border-opacity, 1));\n}\n.dark\\:hover\\:border-gray-600:hover:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(75 85 99 / var(--tw-border-opacity, 1));\n}\n.dark\\:hover\\:border-gray-700\\/30:hover:is(.dark *) {\n border-color: rgb(55 65 81 / 0.3);\n}\n.dark\\:hover\\:border-primary\\/30:hover:is(.dark *) {\n border-color: hsl(var(--primary) / 0.3);\n}\n.dark\\:hover\\:border-success\\/80:hover:is(.dark *) {\n border-color: hsl(var(--success) / 0.8);\n}\n.dark\\:hover\\:bg-error\\/80:hover:is(.dark *) {\n background-color: hsl(var(--error) / 0.8);\n}\n.dark\\:hover\\:bg-gray-700:hover:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));\n}\n.dark\\:hover\\:bg-gray-700\\/50:hover:is(.dark *) {\n background-color: rgb(55 65 81 / 0.5);\n}\n.dark\\:hover\\:bg-gray-700\\/90:hover:is(.dark *) {\n background-color: rgb(55 65 81 / 0.9);\n}\n.dark\\:hover\\:bg-gray-800:hover:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));\n}\n.dark\\:hover\\:bg-gray-800\\/20:hover:is(.dark *) {\n background-color: rgb(31 41 55 / 0.2);\n}\n.dark\\:hover\\:bg-gray-800\\/30:hover:is(.dark *) {\n background-color: rgb(31 41 55 / 0.3);\n}\n.dark\\:hover\\:bg-gray-800\\/80:hover:is(.dark *) {\n background-color: rgb(31 41 55 / 0.8);\n}\n.dark\\:hover\\:bg-gray-800\\/90:hover:is(.dark *) {\n background-color: rgb(31 41 55 / 0.9);\n}\n.dark\\:hover\\:bg-primary\\/30:hover:is(.dark *) {\n background-color: hsl(var(--primary) / 0.3);\n}\n.dark\\:hover\\:bg-primary\\/90:hover:is(.dark *) {\n background-color: hsl(var(--primary) / 0.9);\n}\n.dark\\:hover\\:bg-purple-800:hover:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(107 33 168 / var(--tw-bg-opacity, 1));\n}\n.dark\\:hover\\:bg-success\\/80:hover:is(.dark *) {\n background-color: hsl(var(--success) / 0.8);\n}\n.dark\\:hover\\:bg-warning\\/80:hover:is(.dark *) {\n background-color: hsl(var(--warning) / 0.8);\n}\n.dark\\:hover\\:bg-white\\/10:hover:is(.dark *) {\n background-color: rgb(255 255 255 / 0.1);\n}\n.dark\\:hover\\:text-blue-300:hover:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(147 197 253 / var(--tw-text-opacity, 1));\n}\n.dark\\:hover\\:text-white:hover:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\n}\n.dark\\:focus\\:bg-gray-700:focus:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));\n}\n.dark\\:focus\\:bg-gray-800:focus:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));\n}\n.dark\\:focus\\:bg-green-900\\/20:focus:is(.dark *) {\n background-color: rgb(20 83 45 / 0.2);\n}\n.dark\\:focus\\:bg-red-900\\/20:focus:is(.dark *) {\n background-color: rgb(127 29 29 / 0.2);\n}\n.dark\\:focus\\:bg-yellow-900\\/20:focus:is(.dark *) {\n background-color: rgb(113 63 18 / 0.2);\n}\n.dark\\:focus\\:text-gray-100:focus:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(243 244 246 / var(--tw-text-opacity, 1));\n}\n.dark\\:focus\\:text-gray-200:focus:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(229 231 235 / var(--tw-text-opacity, 1));\n}\n.dark\\:focus\\:text-green-300:focus:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(134 239 172 / var(--tw-text-opacity, 1));\n}\n.dark\\:focus\\:text-red-300:focus:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(252 165 165 / var(--tw-text-opacity, 1));\n}\n.dark\\:focus\\:text-yellow-300:focus:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(253 224 71 / var(--tw-text-opacity, 1));\n}\n.dark\\:focus-visible\\:border-primary:focus-visible:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: hsl(var(--primary) / var(--tw-border-opacity, 1));\n}\n.dark\\:focus-visible\\:border-primary\\/80:focus-visible:is(.dark *) {\n border-color: hsl(var(--primary) / 0.8);\n}\n.dark\\:focus-visible\\:ring-error\\/25:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--error) / 0.25);\n}\n.dark\\:focus-visible\\:ring-error\\/30:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--error) / 0.3);\n}\n.dark\\:focus-visible\\:ring-gray-500\\/40:focus-visible:is(.dark *) {\n --tw-ring-color: rgb(107 114 128 / 0.4);\n}\n.dark\\:focus-visible\\:ring-primary\\/20:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--primary) / 0.2);\n}\n.dark\\:focus-visible\\:ring-primary\\/30:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--primary) / 0.3);\n}\n.dark\\:focus-visible\\:ring-primary\\/40:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--primary) / 0.4);\n}\n.dark\\:focus-visible\\:ring-primary\\/50:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--primary) / 0.5);\n}\n.dark\\:focus-visible\\:ring-purple-500\\/40:focus-visible:is(.dark *) {\n --tw-ring-color: rgb(168 85 247 / 0.4);\n}\n.dark\\:focus-visible\\:ring-success\\/25:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--success) / 0.25);\n}\n.dark\\:focus-visible\\:ring-success\\/30:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--success) / 0.3);\n}\n.dark\\:focus-visible\\:ring-warning\\/25:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--warning) / 0.25);\n}\n.dark\\:focus-visible\\:ring-offset-gray-950:focus-visible:is(.dark *) {\n --tw-ring-offset-color: #030712;\n}\n.dark\\:active\\:bg-error\\/70:active:is(.dark *) {\n background-color: hsl(var(--error) / 0.7);\n}\n.dark\\:active\\:bg-gray-600\\/90:active:is(.dark *) {\n background-color: rgb(75 85 99 / 0.9);\n}\n.dark\\:active\\:bg-gray-700\\/90:active:is(.dark *) {\n background-color: rgb(55 65 81 / 0.9);\n}\n.dark\\:active\\:bg-gray-800\\/90:active:is(.dark *) {\n background-color: rgb(31 41 55 / 0.9);\n}\n.dark\\:active\\:bg-primary\\/40:active:is(.dark *) {\n background-color: hsl(var(--primary) / 0.4);\n}\n.dark\\:active\\:bg-primary\\/80:active:is(.dark *) {\n background-color: hsl(var(--primary) / 0.8);\n}\n.dark\\:active\\:bg-success\\/70:active:is(.dark *) {\n background-color: hsl(var(--success) / 0.7);\n}\n.dark\\:active\\:text-blue-500:active:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(59 130 246 / var(--tw-text-opacity, 1));\n}\n.peer:disabled ~ .dark\\:peer-disabled\\:opacity-60:is(.dark *) {\n opacity: 0.6;\n}\n.dark\\:data-\\[state\\=active\\]\\:border-primary\\/80[data-state=active]:is(.dark *) {\n border-color: hsl(var(--primary) / 0.8);\n}\n.dark\\:data-\\[state\\=active\\]\\:bg-gray-900[data-state=active]:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(17 24 39 / var(--tw-bg-opacity, 1));\n}\n.dark\\:data-\\[state\\=active\\]\\:bg-primary\\/90[data-state=active]:is(.dark *) {\n background-color: hsl(var(--primary) / 0.9);\n}\n.dark\\:data-\\[state\\=unchecked\\]\\:bg-gray-700\\/70[data-state=unchecked]:is(.dark *) {\n background-color: rgb(55 65 81 / 0.7);\n}\n.dark\\:data-\\[state\\=active\\]\\:text-gray-100[data-state=active]:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(243 244 246 / var(--tw-text-opacity, 1));\n}\n.dark\\:data-\\[state\\=active\\]\\:text-gray-200[data-state=active]:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(229 231 235 / var(--tw-text-opacity, 1));\n}\n.dark\\:data-\\[state\\=active\\]\\:text-white[data-state=active]:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\n}\n.dark\\:data-\\[state\\=active\\]\\:shadow-gray-950\\/10[data-state=active]:is(.dark *) {\n --tw-shadow-color: rgb(3 7 18 / 0.1);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:data-\\[state\\=active\\]\\:shadow-gray-950\\/20[data-state=active]:is(.dark *) {\n --tw-shadow-color: rgb(3 7 18 / 0.2);\n --tw-shadow: var(--tw-shadow-colored);\n}\n@media (min-width: 640px) {\n .sm\\:bottom-0 {\n bottom: 0px;\n }\n .sm\\:right-0 {\n right: 0px;\n }\n .sm\\:top-auto {\n top: auto;\n }\n .sm\\:max-w-\\[425px\\] {\n max-width: 425px;\n }\n .sm\\:max-w-\\[500px\\] {\n max-width: 500px;\n }\n .sm\\:flex-row {\n flex-direction: row;\n }\n .sm\\:flex-col {\n flex-direction: column;\n }\n .sm\\:justify-end {\n justify-content: flex-end;\n }\n .sm\\:space-x-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.5rem * var(--tw-space-x-reverse));\n margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));\n }\n .sm\\:text-left {\n text-align: left;\n }\n}\n@media (min-width: 768px) {\n .md\\:max-w-\\[420px\\] {\n max-width: 420px;\n }\n .md\\:grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n }\n}\n@media (min-width: 1024px) {\n .lg\\:flex {\n display: flex;\n }\n .lg\\:grid-cols-4 {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n }\n .lg\\:space-x-8 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(2rem * var(--tw-space-x-reverse));\n margin-left: calc(2rem * calc(1 - var(--tw-space-x-reverse)));\n }\n}\n.\\[\\&\\+div\\]\\:text-xs + div {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n.\\[\\&\\>span\\]\\:line-clamp-1 > span {\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 1;\n}\n.\\[\\&_blockquote\\]\\:border-l-4 blockquote {\n border-left-width: 4px;\n}\n.\\[\\&_blockquote\\]\\:border-gray-300 blockquote {\n --tw-border-opacity: 1;\n border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));\n}\n.\\[\\&_blockquote\\]\\:pl-4 blockquote {\n padding-left: 1rem;\n}\n.\\[\\&_blockquote\\]\\:italic blockquote {\n font-style: italic;\n}\n.\\[\\&_h1\\]\\:mb-4 h1 {\n margin-bottom: 1rem;\n}\n.\\[\\&_h1\\]\\:text-3xl h1 {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n.\\[\\&_h1\\]\\:font-bold h1 {\n font-weight: 700;\n}\n.\\[\\&_h2\\]\\:mb-3 h2 {\n margin-bottom: 0.75rem;\n}\n.\\[\\&_h2\\]\\:text-2xl h2 {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n.\\[\\&_h2\\]\\:font-bold h2 {\n font-weight: 700;\n}\n.\\[\\&_h3\\]\\:mb-2 h3 {\n margin-bottom: 0.5rem;\n}\n.\\[\\&_h3\\]\\:text-xl h3 {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n.\\[\\&_h3\\]\\:font-bold h3 {\n font-weight: 700;\n}\n.\\[\\&_h4\\]\\:mb-2 h4 {\n margin-bottom: 0.5rem;\n}\n.\\[\\&_h4\\]\\:text-lg h4 {\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n.\\[\\&_h4\\]\\:font-bold h4 {\n font-weight: 700;\n}\n.\\[\\&_h5\\]\\:mb-1 h5 {\n margin-bottom: 0.25rem;\n}\n.\\[\\&_h5\\]\\:text-base h5 {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n.\\[\\&_h5\\]\\:font-bold h5 {\n font-weight: 700;\n}\n.\\[\\&_h6\\]\\:mb-1 h6 {\n margin-bottom: 0.25rem;\n}\n.\\[\\&_h6\\]\\:text-sm h6 {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.\\[\\&_h6\\]\\:font-bold h6 {\n font-weight: 700;\n}\n.\\[\\&_li\\]\\:mb-1 li {\n margin-bottom: 0.25rem;\n}\n.\\[\\&_ol\\]\\:mb-4 ol {\n margin-bottom: 1rem;\n}\n.\\[\\&_ol\\]\\:list-decimal ol {\n list-style-type: decimal;\n}\n.\\[\\&_ol\\]\\:pl-6 ol {\n padding-left: 1.5rem;\n}\n.\\[\\&_pre\\]\\:overflow-x-auto pre {\n overflow-x: auto;\n}\n.\\[\\&_pre\\]\\:rounded pre {\n border-radius: 0.25rem;\n}\n.\\[\\&_pre\\]\\:bg-gray-100 pre {\n --tw-bg-opacity: 1;\n background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));\n}\n.\\[\\&_pre\\]\\:p-4 pre {\n padding: 1rem;\n}\n.\\[\\&_pre\\]\\:dark\\:bg-gray-800:is(.dark *) pre {\n --tw-bg-opacity: 1;\n background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));\n}\n.\\[\\&_table\\]\\:mb-4 table {\n margin-bottom: 1rem;\n}\n.\\[\\&_table\\]\\:w-full table {\n width: 100%;\n}\n.\\[\\&_table_td\\]\\:border table td {\n border-width: 1px;\n}\n.\\[\\&_table_td\\]\\:border-gray-300 table td {\n --tw-border-opacity: 1;\n border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));\n}\n.\\[\\&_table_td\\]\\:p-2 table td {\n padding: 0.5rem;\n}\n.\\[\\&_table_th\\]\\:border table th {\n border-width: 1px;\n}\n.\\[\\&_table_th\\]\\:border-gray-300 table th {\n --tw-border-opacity: 1;\n border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));\n}\n.\\[\\&_table_th\\]\\:bg-gray-50 table th {\n --tw-bg-opacity: 1;\n background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));\n}\n.\\[\\&_table_th\\]\\:p-2 table th {\n padding: 0.5rem;\n}\n.\\[\\&_table_th\\]\\:font-semibold table th {\n font-weight: 600;\n}\n.\\[\\&_ul\\]\\:mb-4 ul {\n margin-bottom: 1rem;\n}\n.\\[\\&_ul\\]\\:list-disc ul {\n list-style-type: disc;\n}\n.\\[\\&_ul\\]\\:pl-6 ul {\n padding-left: 1.5rem;\n}\n');
1732
+ styleInject('*,\n::before,\n::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n*,\n::before,\n::after {\n box-sizing: border-box;\n border-width: 0;\n border-style: solid;\n border-color: #e5e7eb;\n}\n::before,\n::after {\n --tw-content: "";\n}\nhtml,\n:host {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n font-family: var(--font-sans);\n font-feature-settings: normal;\n font-variation-settings: normal;\n -webkit-tap-highlight-color: transparent;\n}\nbody {\n margin: 0;\n line-height: inherit;\n}\nhr {\n height: 0;\n color: inherit;\n border-top-width: 1px;\n}\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\na {\n color: inherit;\n text-decoration: inherit;\n}\nb,\nstrong {\n font-weight: bolder;\n}\ncode,\nkbd,\nsamp,\npre {\n font-family: var(--font-mono);\n font-feature-settings: normal;\n font-variation-settings: normal;\n font-size: 1em;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsub {\n bottom: -0.25em;\n}\nsup {\n top: -0.5em;\n}\ntable {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n font-size: 100%;\n font-weight: inherit;\n line-height: inherit;\n letter-spacing: inherit;\n color: inherit;\n margin: 0;\n padding: 0;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\ninput:where([type="button"]),\ninput:where([type="reset"]),\ninput:where([type="submit"]) {\n -webkit-appearance: button;\n background-color: transparent;\n background-image: none;\n}\n:-moz-focusring {\n outline: auto;\n}\n:-moz-ui-invalid {\n box-shadow: none;\n}\nprogress {\n vertical-align: baseline;\n}\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n[type=search] {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n}\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n::-webkit-file-upload-button {\n -webkit-appearance: button;\n font: inherit;\n}\nsummary {\n display: list-item;\n}\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\nfieldset {\n margin: 0;\n padding: 0;\n}\nlegend {\n padding: 0;\n}\nol,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\ndialog {\n padding: 0;\n}\ntextarea {\n resize: vertical;\n}\ninput::-moz-placeholder,\ntextarea::-moz-placeholder {\n opacity: 1;\n color: #9ca3af;\n}\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1;\n color: #9ca3af;\n}\nbutton,\n[role=button] {\n cursor: pointer;\n}\n:disabled {\n cursor: default;\n}\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block;\n vertical-align: middle;\n}\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n[hidden]:where(:not([hidden="until-found"])) {\n display: none;\n}\n:root {\n --bg-base: var(--background);\n --bg-subtle: var(--gray-50);\n --bg-muted: var(--gray-100);\n --bg-emphasis: var(--gray-200);\n --bg-inverse: var(--foreground);\n --surface-base: var(--background);\n --surface-overlay: var(--gray-50);\n --surface-raised: var(--background);\n --surface-sunken: var(--gray-100);\n --text-primary: var(--foreground);\n --text-secondary: var(--gray-600);\n --text-tertiary: var(--gray-500);\n --text-disabled: var(--gray-400);\n --text-inverse: var(--background);\n --text-link: var(--primary);\n --text-link-hover: var(--primary-hover);\n --brand-primary: var(--primary);\n --brand-primary-hover: var(--primary-hover);\n --brand-primary-active: var(--primary-active);\n --brand-secondary: var(--secondary);\n --state-hover: var(--gray-100);\n --state-active: var(--gray-200);\n --state-selected: var(--primary);\n --state-disabled: var(--gray-300);\n --state-focus: var(--primary);\n --feedback-success: var(--success);\n --feedback-success-light: 142 71% 95%;\n --feedback-success-dark: 142 71% 35%;\n --feedback-warning: var(--warning);\n --feedback-warning-light: 38 92% 95%;\n --feedback-warning-dark: 38 92% 40%;\n --feedback-error: var(--error);\n --feedback-error-light: 0 84% 95%;\n --feedback-error-dark: 0 84% 50%;\n --feedback-info: 217 91% 60%;\n --feedback-info-light: 217 91% 95%;\n --feedback-info-dark: 217 91% 50%;\n --border-default: var(--border);\n --border-subtle: var(--gray-200);\n --border-strong: var(--gray-400);\n --border-interactive: var(--primary);\n --border-error: var(--error);\n --border-success: var(--success);\n --border-warning: var(--warning);\n --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);\n --shadow-primary: 0 4px 14px 0 hsl(var(--primary) / 0.3);\n --shadow-success: 0 4px 14px 0 hsl(var(--success) / 0.3);\n --shadow-error: 0 4px 14px 0 hsl(var(--error) / 0.3);\n --shadow-warning: 0 4px 14px 0 hsl(var(--warning) / 0.3);\n --shadow-inner-xs: inset 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --shadow-inner-sm: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);\n --shadow-inner-md: inset 0 4px 6px -1px rgb(0 0 0 / 0.1);\n --ease-linear: linear;\n --ease-in: cubic-bezier(0.4, 0, 1, 1);\n --ease-out: cubic-bezier(0, 0, 0.2, 1);\n --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);\n --ease-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);\n --ease-elastic: cubic-bezier(0.68, -0.55, 0.265, 1.55);\n --ease-back-in: cubic-bezier(0.6, -0.28, 0.735, 0.045);\n --ease-back-out: cubic-bezier(0.175, 0.885, 0.32, 1.275);\n --ease-back-in-out: cubic-bezier(0.68, -0.55, 0.265, 1.55);\n --duration-instant: 0ms;\n --duration-fast: 150ms;\n --duration-normal: 250ms;\n --duration-slow: 350ms;\n --duration-slower: 500ms;\n --duration-slowest: 750ms;\n --space-0: 0;\n --space-px: 1px;\n --space-0\\.5: 0.125rem;\n --space-1: 0.25rem;\n --space-1\\.5: 0.375rem;\n --space-2: 0.5rem;\n --space-2\\.5: 0.625rem;\n --space-3: 0.75rem;\n --space-3\\.5: 0.875rem;\n --space-4: 1rem;\n --space-5: 1.25rem;\n --space-6: 1.5rem;\n --space-7: 1.75rem;\n --space-8: 2rem;\n --space-9: 2.25rem;\n --space-10: 2.5rem;\n --space-11: 2.75rem;\n --space-12: 3rem;\n --space-14: 3.5rem;\n --space-16: 4rem;\n --space-20: 5rem;\n --space-24: 6rem;\n --space-28: 7rem;\n --space-32: 8rem;\n --space-36: 9rem;\n --space-40: 10rem;\n --space-44: 11rem;\n --space-48: 12rem;\n --space-52: 13rem;\n --space-56: 14rem;\n --space-60: 15rem;\n --space-64: 16rem;\n --space-72: 18rem;\n --space-80: 20rem;\n --space-96: 24rem;\n --text-2xs: 0.625rem;\n --text-xs: 0.75rem;\n --text-sm: 0.875rem;\n --text-base: 1rem;\n --text-lg: 1.125rem;\n --text-xl: 1.25rem;\n --text-2xl: 1.5rem;\n --text-3xl: 1.875rem;\n --text-4xl: 2.25rem;\n --text-5xl: 3rem;\n --text-6xl: 3.75rem;\n --text-7xl: 4.5rem;\n --text-8xl: 6rem;\n --text-9xl: 8rem;\n --leading-none: 1;\n --leading-tight: 1.25;\n --leading-snug: 1.375;\n --leading-normal: 1.5;\n --leading-relaxed: 1.625;\n --leading-loose: 2;\n --tracking-tighter: -0.05em;\n --tracking-tight: -0.025em;\n --tracking-normal: 0;\n --tracking-wide: 0.025em;\n --tracking-wider: 0.05em;\n --tracking-widest: 0.1em;\n --font-thin: 100;\n --font-extralight: 200;\n --font-light: 300;\n --font-normal: 400;\n --font-medium: 500;\n --font-semibold: 600;\n --font-bold: 700;\n --font-extrabold: 800;\n --font-black: 900;\n --radius-none: 0;\n --radius-sm: 0.125rem;\n --radius-base: 0.25rem;\n --radius-md: 0.375rem;\n --radius-lg: 0.5rem;\n --radius-xl: 0.75rem;\n --radius-2xl: 1rem;\n --radius-3xl: 1.5rem;\n --radius-full: 9999px;\n --z-0: 0;\n --z-10: 10;\n --z-20: 20;\n --z-30: 30;\n --z-40: 40;\n --z-50: 50;\n --z-dropdown: 1000;\n --z-sticky: 1020;\n --z-fixed: 1030;\n --z-modal-backdrop: 1040;\n --z-modal: 1050;\n --z-popover: 1060;\n --z-tooltip: 1070;\n --z-notification: 1080;\n --blur-none: 0;\n --blur-sm: 4px;\n --blur-base: 8px;\n --blur-md: 12px;\n --blur-lg: 16px;\n --blur-xl: 24px;\n --blur-2xl: 40px;\n --blur-3xl: 64px;\n}\n.dark {\n --bg-base: var(--background);\n --bg-subtle: var(--gray-800);\n --bg-muted: var(--gray-700);\n --bg-emphasis: var(--gray-600);\n --surface-overlay: var(--gray-800);\n --surface-raised: var(--gray-800);\n --surface-sunken: var(--background);\n --text-secondary: var(--gray-400);\n --text-tertiary: var(--gray-500);\n --text-disabled: var(--gray-600);\n --state-hover: var(--gray-700);\n --state-active: var(--gray-600);\n --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.3);\n --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.4), 0 1px 2px -1px rgb(0 0 0 / 0.3);\n --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.4), 0 2px 4px -2px rgb(0 0 0 / 0.3);\n --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.4), 0 4px 6px -4px rgb(0 0 0 / 0.3);\n --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.4), 0 8px 10px -6px rgb(0 0 0 / 0.3);\n --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.5);\n}\n.container {\n width: 100%;\n margin-right: auto;\n margin-left: auto;\n padding-right: 1rem;\n padding-left: 1rem;\n}\n@media (min-width: 640px) {\n .container {\n max-width: 640px;\n padding-right: 2rem;\n padding-left: 2rem;\n }\n}\n@media (min-width: 768px) {\n .container {\n max-width: 768px;\n }\n}\n@media (min-width: 1024px) {\n .container {\n max-width: 1024px;\n padding-right: 4rem;\n padding-left: 4rem;\n }\n}\n@media (min-width: 1280px) {\n .container {\n max-width: 1280px;\n padding-right: 5rem;\n padding-left: 5rem;\n }\n}\n@media (min-width: 1536px) {\n .container {\n max-width: 1536px;\n padding-right: 6rem;\n padding-left: 6rem;\n }\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n.pointer-events-none {\n pointer-events: none;\n}\n.pointer-events-auto {\n pointer-events: auto;\n}\n.visible {\n visibility: visible;\n}\n.collapse {\n visibility: collapse;\n}\n.static {\n position: static;\n}\n.fixed {\n position: fixed;\n}\n.absolute {\n position: absolute;\n}\n.relative {\n position: relative;\n}\n.sticky {\n position: sticky;\n}\n.inset-0 {\n inset: 0px;\n}\n.bottom-2 {\n bottom: 0.5rem;\n}\n.bottom-4 {\n bottom: 1rem;\n}\n.bottom-\\[5\\%\\] {\n bottom: 5%;\n}\n.left-2 {\n left: 0.5rem;\n}\n.left-3 {\n left: 0.75rem;\n}\n.left-4 {\n left: 1rem;\n}\n.left-\\[50\\%\\] {\n left: 50%;\n}\n.right-1 {\n right: 0.25rem;\n}\n.right-2 {\n right: 0.5rem;\n}\n.right-3 {\n right: 0.75rem;\n}\n.right-4 {\n right: 1rem;\n}\n.top-0 {\n top: 0px;\n}\n.top-1 {\n top: 0.25rem;\n}\n.top-2 {\n top: 0.5rem;\n}\n.top-2\\.5 {\n top: 0.625rem;\n}\n.top-4 {\n top: 1rem;\n}\n.top-\\[5\\%\\] {\n top: 5%;\n}\n.top-\\[50\\%\\] {\n top: 50%;\n}\n.top-auto {\n top: auto;\n}\n.z-0 {\n z-index: 0;\n}\n.z-10 {\n z-index: 10;\n}\n.z-40 {\n z-index: 40;\n}\n.z-50 {\n z-index: 50;\n}\n.z-\\[-1\\] {\n z-index: -1;\n}\n.z-\\[100\\] {\n z-index: 100;\n}\n.col-span-1 {\n grid-column: span 1 / span 1;\n}\n.col-span-2 {\n grid-column: span 2 / span 2;\n}\n.col-span-3 {\n grid-column: span 3 / span 3;\n}\n.col-span-4 {\n grid-column: span 4 / span 4;\n}\n.-m-2 {\n margin: -0.5rem;\n}\n.-mx-1 {\n margin-left: -0.25rem;\n margin-right: -0.25rem;\n}\n.-mx-4 {\n margin-left: -1rem;\n margin-right: -1rem;\n}\n.mx-1 {\n margin-left: 0.25rem;\n margin-right: 0.25rem;\n}\n.mx-auto {\n margin-left: auto;\n margin-right: auto;\n}\n.my-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n}\n.my-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n}\n.-mb-4 {\n margin-bottom: -1rem;\n}\n.-mr-1 {\n margin-right: -0.25rem;\n}\n.-mt-4 {\n margin-top: -1rem;\n}\n.mb-1 {\n margin-bottom: 0.25rem;\n}\n.mb-2 {\n margin-bottom: 0.5rem;\n}\n.mb-3 {\n margin-bottom: 0.75rem;\n}\n.mb-4 {\n margin-bottom: 1rem;\n}\n.mb-8 {\n margin-bottom: 2rem;\n}\n.ml-1 {\n margin-left: 0.25rem;\n}\n.ml-2 {\n margin-left: 0.5rem;\n}\n.ml-auto {\n margin-left: auto;\n}\n.mr-1 {\n margin-right: 0.25rem;\n}\n.mr-2 {\n margin-right: 0.5rem;\n}\n.mr-auto {\n margin-right: auto;\n}\n.mt-1 {\n margin-top: 0.25rem;\n}\n.mt-2 {\n margin-top: 0.5rem;\n}\n.mt-3 {\n margin-top: 0.75rem;\n}\n.mt-4 {\n margin-top: 1rem;\n}\n.mt-6 {\n margin-top: 1.5rem;\n}\n.line-clamp-2 {\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n}\n.block {\n display: block;\n}\n.inline-block {\n display: inline-block;\n}\n.inline {\n display: inline;\n}\n.flex {\n display: flex;\n}\n.inline-flex {\n display: inline-flex;\n}\n.\\!table {\n display: table !important;\n}\n.table {\n display: table;\n}\n.grid {\n display: grid;\n}\n.hidden {\n display: none;\n}\n.aspect-square {\n aspect-ratio: 1 / 1;\n}\n.h-0 {\n height: 0px;\n}\n.h-1 {\n height: 0.25rem;\n}\n.h-1\\.5 {\n height: 0.375rem;\n}\n.h-10 {\n height: 2.5rem;\n}\n.h-11 {\n height: 2.75rem;\n}\n.h-12 {\n height: 3rem;\n}\n.h-14 {\n height: 3.5rem;\n}\n.h-16 {\n height: 4rem;\n}\n.h-2 {\n height: 0.5rem;\n}\n.h-20 {\n height: 5rem;\n}\n.h-24 {\n height: 6rem;\n}\n.h-3 {\n height: 0.75rem;\n}\n.h-3\\.5 {\n height: 0.875rem;\n}\n.h-32 {\n height: 8rem;\n}\n.h-4 {\n height: 1rem;\n}\n.h-5 {\n height: 1.25rem;\n}\n.h-6 {\n height: 1.5rem;\n}\n.h-7 {\n height: 1.75rem;\n}\n.h-8 {\n height: 2rem;\n}\n.h-9 {\n height: 2.25rem;\n}\n.h-96 {\n height: 24rem;\n}\n.h-\\[0\\.5px\\] {\n height: 0.5px;\n}\n.h-\\[1px\\] {\n height: 1px;\n}\n.h-\\[2px\\] {\n height: 2px;\n}\n.h-\\[65\\%\\] {\n height: 65%;\n}\n.h-\\[var\\(--radix-select-trigger-height\\)\\] {\n height: var(--radix-select-trigger-height);\n}\n.h-auto {\n height: auto;\n}\n.h-fit {\n height: -moz-fit-content;\n height: fit-content;\n}\n.h-full {\n height: 100%;\n}\n.h-px {\n height: 1px;\n}\n.max-h-96 {\n max-height: 24rem;\n}\n.max-h-\\[95vh\\] {\n max-height: 95vh;\n}\n.max-h-screen {\n max-height: 100vh;\n}\n.min-h-\\[200px\\] {\n min-height: 200px;\n}\n.min-h-\\[80px\\] {\n min-height: 80px;\n}\n.w-0 {\n width: 0px;\n}\n.w-0\\.5 {\n width: 0.125rem;\n}\n.w-1 {\n width: 0.25rem;\n}\n.w-1\\/4 {\n width: 25%;\n}\n.w-10 {\n width: 2.5rem;\n}\n.w-11 {\n width: 2.75rem;\n}\n.w-12 {\n width: 3rem;\n}\n.w-14 {\n width: 3.5rem;\n}\n.w-16 {\n width: 4rem;\n}\n.w-2 {\n width: 0.5rem;\n}\n.w-20 {\n width: 5rem;\n}\n.w-3 {\n width: 0.75rem;\n}\n.w-3\\.5 {\n width: 0.875rem;\n}\n.w-4 {\n width: 1rem;\n}\n.w-48 {\n width: 12rem;\n}\n.w-5 {\n width: 1.25rem;\n}\n.w-56 {\n width: 14rem;\n}\n.w-6 {\n width: 1.5rem;\n}\n.w-64 {\n width: 16rem;\n}\n.w-72 {\n width: 18rem;\n}\n.w-8 {\n width: 2rem;\n}\n.w-80 {\n width: 20rem;\n}\n.w-96 {\n width: 24rem;\n}\n.w-\\[0\\.5px\\] {\n width: 0.5px;\n}\n.w-\\[100px\\] {\n width: 100px;\n}\n.w-\\[1px\\] {\n width: 1px;\n}\n.w-\\[2px\\] {\n width: 2px;\n}\n.w-\\[65\\%\\] {\n width: 65%;\n}\n.w-\\[70px\\] {\n width: 70px;\n}\n.w-auto {\n width: auto;\n}\n.w-fit {\n width: -moz-fit-content;\n width: fit-content;\n}\n.w-full {\n width: 100%;\n}\n.w-px {\n width: 1px;\n}\n.min-w-0 {\n min-width: 0px;\n}\n.min-w-\\[70px\\] {\n min-width: 70px;\n}\n.min-w-\\[8rem\\] {\n min-width: 8rem;\n}\n.min-w-\\[var\\(--radix-select-trigger-width\\)\\] {\n min-width: var(--radix-select-trigger-width);\n}\n.max-w-2xl {\n max-width: 42rem;\n}\n.max-w-4xl {\n max-width: 56rem;\n}\n.max-w-\\[95vw\\] {\n max-width: 95vw;\n}\n.max-w-full {\n max-width: 100%;\n}\n.max-w-lg {\n max-width: 32rem;\n}\n.max-w-md {\n max-width: 28rem;\n}\n.max-w-none {\n max-width: none;\n}\n.max-w-sm {\n max-width: 24rem;\n}\n.max-w-xs {\n max-width: 20rem;\n}\n.flex-1 {\n flex: 1 1 0%;\n}\n.flex-shrink-0 {\n flex-shrink: 0;\n}\n.shrink-0 {\n flex-shrink: 0;\n}\n.grow {\n flex-grow: 1;\n}\n.translate-x-\\[-50\\%\\] {\n --tw-translate-x: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.translate-y-0 {\n --tw-translate-y: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.translate-y-\\[-50\\%\\] {\n --tw-translate-y: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.rotate-2 {\n --tw-rotate: 2deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.rotate-\\[-15deg\\] {\n --tw-rotate: -15deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.rotate-\\[15deg\\] {\n --tw-rotate: 15deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.scale-105 {\n --tw-scale-x: 1.05;\n --tw-scale-y: 1.05;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.scale-95 {\n --tw-scale-x: .95;\n --tw-scale-y: .95;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n@keyframes pulse {\n 50% {\n opacity: .5;\n }\n}\n.animate-pulse {\n animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n.animate-spin {\n animation: spin 1s linear infinite;\n}\n.cursor-default {\n cursor: default;\n}\n.cursor-grab {\n cursor: grab;\n}\n.cursor-grabbing {\n cursor: grabbing;\n}\n.cursor-help {\n cursor: help;\n}\n.cursor-move {\n cursor: move;\n}\n.cursor-not-allowed {\n cursor: not-allowed;\n}\n.cursor-pointer {\n cursor: pointer;\n}\n.cursor-text {\n cursor: text;\n}\n.cursor-wait {\n cursor: wait;\n}\n.touch-none {\n touch-action: none;\n}\n.select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n.resize-none {\n resize: none;\n}\n.resize {\n resize: both;\n}\n.grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n}\n.grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n}\n.grid-cols-4 {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n}\n.grid-cols-6 {\n grid-template-columns: repeat(6, minmax(0, 1fr));\n}\n.grid-cols-7 {\n grid-template-columns: repeat(7, minmax(0, 1fr));\n}\n.flex-row {\n flex-direction: row;\n}\n.flex-col {\n flex-direction: column;\n}\n.flex-col-reverse {\n flex-direction: column-reverse;\n}\n.flex-wrap {\n flex-wrap: wrap;\n}\n.items-start {\n align-items: flex-start;\n}\n.items-center {\n align-items: center;\n}\n.justify-start {\n justify-content: flex-start;\n}\n.justify-end {\n justify-content: flex-end;\n}\n.justify-center {\n justify-content: center;\n}\n.justify-between {\n justify-content: space-between;\n}\n.gap-1 {\n gap: 0.25rem;\n}\n.gap-1\\.5 {\n gap: 0.375rem;\n}\n.gap-2 {\n gap: 0.5rem;\n}\n.gap-3 {\n gap: 0.75rem;\n}\n.gap-4 {\n gap: 1rem;\n}\n.gap-6 {\n gap: 1.5rem;\n}\n.gap-8 {\n gap: 2rem;\n}\n.space-x-1 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.25rem * var(--tw-space-x-reverse));\n margin-left: calc(0.25rem * calc(1 - var(--tw-space-x-reverse)));\n}\n.space-x-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.5rem * var(--tw-space-x-reverse));\n margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));\n}\n.space-x-6 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(1.5rem * var(--tw-space-x-reverse));\n margin-left: calc(1.5rem * calc(1 - var(--tw-space-x-reverse)));\n}\n.space-y-0 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0px * var(--tw-space-y-reverse));\n}\n.space-y-1 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));\n}\n.space-y-1\\.5 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.375rem * var(--tw-space-y-reverse));\n}\n.space-y-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));\n}\n.space-y-3 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));\n}\n.space-y-4 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(1rem * var(--tw-space-y-reverse));\n}\n.space-y-6 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));\n}\n.overflow-auto {\n overflow: auto;\n}\n.overflow-hidden {\n overflow: hidden;\n}\n.overflow-x-auto {\n overflow-x: auto;\n}\n.truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.whitespace-nowrap {\n white-space: nowrap;\n}\n.rounded {\n border-radius: 0.25rem;\n}\n.rounded-2xl {\n border-radius: 1rem;\n}\n.rounded-3xl {\n border-radius: 1.5rem;\n}\n.rounded-\\[inherit\\] {\n border-radius: inherit;\n}\n.rounded-\\[var\\(--login-border-radius\\)\\] {\n border-radius: var(--login-border-radius);\n}\n.rounded-full {\n border-radius: 9999px;\n}\n.rounded-lg {\n border-radius: var(--radius);\n}\n.rounded-md {\n border-radius: calc(var(--radius) - 2px);\n}\n.rounded-none {\n border-radius: 0px;\n}\n.rounded-sm {\n border-radius: calc(var(--radius) - 4px);\n}\n.rounded-xl {\n border-radius: 0.75rem;\n}\n.border {\n border-width: 1px;\n}\n.border-2 {\n border-width: 2px;\n}\n.border-b {\n border-bottom-width: 1px;\n}\n.border-b-2 {\n border-bottom-width: 2px;\n}\n.border-l {\n border-left-width: 1px;\n}\n.border-l-0 {\n border-left-width: 0px;\n}\n.border-l-2 {\n border-left-width: 2px;\n}\n.border-l-4 {\n border-left-width: 4px;\n}\n.border-l-\\[0\\.5px\\] {\n border-left-width: 0.5px;\n}\n.border-r-0 {\n border-right-width: 0px;\n}\n.border-t {\n border-top-width: 1px;\n}\n.border-t-0 {\n border-top-width: 0px;\n}\n.border-t-2 {\n border-top-width: 2px;\n}\n.border-t-\\[0\\.5px\\] {\n border-top-width: 0.5px;\n}\n.border-dashed {\n border-style: dashed;\n}\n.border-dotted {\n border-style: dotted;\n}\n.border-none {\n border-style: none;\n}\n.border-accent {\n --tw-border-opacity: 1;\n border-color: hsl(var(--accent) / var(--tw-border-opacity, 1));\n}\n.border-blue-200 {\n --tw-border-opacity: 1;\n border-color: rgb(191 219 254 / var(--tw-border-opacity, 1));\n}\n.border-blue-500 {\n --tw-border-opacity: 1;\n border-color: rgb(59 130 246 / var(--tw-border-opacity, 1));\n}\n.border-blue-600 {\n --tw-border-opacity: 1;\n border-color: rgb(37 99 235 / var(--tw-border-opacity, 1));\n}\n.border-border {\n --tw-border-opacity: 1;\n border-color: hsl(var(--border) / var(--tw-border-opacity, 1));\n}\n.border-border\\/50 {\n border-color: hsl(var(--border) / 0.5);\n}\n.border-destructive {\n --tw-border-opacity: 1;\n border-color: hsl(var(--destructive) / var(--tw-border-opacity, 1));\n}\n.border-error {\n --tw-border-opacity: 1;\n border-color: hsl(var(--error) / var(--tw-border-opacity, 1));\n}\n.border-error\\/20 {\n border-color: hsl(var(--error) / 0.2);\n}\n.border-foreground {\n --tw-border-opacity: 1;\n border-color: hsl(var(--foreground) / var(--tw-border-opacity, 1));\n}\n.border-gray-200 {\n --tw-border-opacity: 1;\n border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));\n}\n.border-gray-300 {\n --tw-border-opacity: 1;\n border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));\n}\n.border-gray-400 {\n --tw-border-opacity: 1;\n border-color: rgb(156 163 175 / var(--tw-border-opacity, 1));\n}\n.border-green-200 {\n --tw-border-opacity: 1;\n border-color: rgb(187 247 208 / var(--tw-border-opacity, 1));\n}\n.border-green-500 {\n --tw-border-opacity: 1;\n border-color: rgb(34 197 94 / var(--tw-border-opacity, 1));\n}\n.border-green-600 {\n --tw-border-opacity: 1;\n border-color: rgb(22 163 74 / var(--tw-border-opacity, 1));\n}\n.border-input {\n --tw-border-opacity: 1;\n border-color: hsl(var(--input) / var(--tw-border-opacity, 1));\n}\n.border-muted {\n --tw-border-opacity: 1;\n border-color: hsl(var(--muted) / var(--tw-border-opacity, 1));\n}\n.border-muted-foreground\\/25 {\n border-color: hsl(var(--muted-foreground) / 0.25);\n}\n.border-orange-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254 215 170 / var(--tw-border-opacity, 1));\n}\n.border-primary {\n --tw-border-opacity: 1;\n border-color: hsl(var(--primary) / var(--tw-border-opacity, 1));\n}\n.border-primary\\/20 {\n border-color: hsl(var(--primary) / 0.2);\n}\n.border-primary\\/50 {\n border-color: hsl(var(--primary) / 0.5);\n}\n.border-red-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254 202 202 / var(--tw-border-opacity, 1));\n}\n.border-red-500 {\n --tw-border-opacity: 1;\n border-color: rgb(239 68 68 / var(--tw-border-opacity, 1));\n}\n.border-secondary {\n --tw-border-opacity: 1;\n border-color: hsl(var(--secondary) / var(--tw-border-opacity, 1));\n}\n.border-success {\n --tw-border-opacity: 1;\n border-color: hsl(var(--success) / var(--tw-border-opacity, 1));\n}\n.border-success\\/40 {\n border-color: hsl(var(--success) / 0.4);\n}\n.border-transparent {\n border-color: transparent;\n}\n.border-warning {\n --tw-border-opacity: 1;\n border-color: hsl(var(--warning) / var(--tw-border-opacity, 1));\n}\n.border-white\\/20 {\n border-color: rgb(255 255 255 / 0.2);\n}\n.border-yellow-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254 240 138 / var(--tw-border-opacity, 1));\n}\n.border-yellow-500 {\n --tw-border-opacity: 1;\n border-color: rgb(234 179 8 / var(--tw-border-opacity, 1));\n}\n.border-yellow-600 {\n --tw-border-opacity: 1;\n border-color: rgb(202 138 4 / var(--tw-border-opacity, 1));\n}\n.border-t-primary {\n --tw-border-opacity: 1;\n border-top-color: hsl(var(--primary) / var(--tw-border-opacity, 1));\n}\n.bg-\\[var\\(--login-background\\)\\] {\n background-color: var(--login-background);\n}\n.bg-\\[var\\(--login-primary\\)\\] {\n background-color: var(--login-primary);\n}\n.bg-accent {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));\n}\n.bg-accent\\/20 {\n background-color: hsl(var(--accent) / 0.2);\n}\n.bg-background {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--background) / var(--tw-bg-opacity, 1));\n}\n.bg-background\\/80 {\n background-color: hsl(var(--background) / 0.8);\n}\n.bg-background\\/90 {\n background-color: hsl(var(--background) / 0.9);\n}\n.bg-black\\/20 {\n background-color: rgb(0 0 0 / 0.2);\n}\n.bg-black\\/40 {\n background-color: rgb(0 0 0 / 0.4);\n}\n.bg-black\\/60 {\n background-color: rgb(0 0 0 / 0.6);\n}\n.bg-black\\/80 {\n background-color: rgb(0 0 0 / 0.8);\n}\n.bg-blue-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));\n}\n.bg-blue-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity, 1));\n}\n.bg-border {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--border) / var(--tw-bg-opacity, 1));\n}\n.bg-card {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--card) / var(--tw-bg-opacity, 1));\n}\n.bg-destructive {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--destructive) / var(--tw-bg-opacity, 1));\n}\n.bg-destructive\\/5 {\n background-color: hsl(var(--destructive) / 0.05);\n}\n.bg-error {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--error) / var(--tw-bg-opacity, 1));\n}\n.bg-error\\/20 {\n background-color: hsl(var(--error) / 0.2);\n}\n.bg-foreground {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--foreground) / var(--tw-bg-opacity, 1));\n}\n.bg-gray-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));\n}\n.bg-gray-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(156 163 175 / var(--tw-bg-opacity, 1));\n}\n.bg-gray-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));\n}\n.bg-green-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(220 252 231 / var(--tw-bg-opacity, 1));\n}\n.bg-green-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(240 253 244 / var(--tw-bg-opacity, 1));\n}\n.bg-green-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(34 197 94 / var(--tw-bg-opacity, 1));\n}\n.bg-green-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(22 163 74 / var(--tw-bg-opacity, 1));\n}\n.bg-muted {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--muted) / var(--tw-bg-opacity, 1));\n}\n.bg-muted\\/20 {\n background-color: hsl(var(--muted) / 0.2);\n}\n.bg-muted\\/50 {\n background-color: hsl(var(--muted) / 0.5);\n}\n.bg-muted\\/80 {\n background-color: hsl(var(--muted) / 0.8);\n}\n.bg-orange-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(255 237 213 / var(--tw-bg-opacity, 1));\n}\n.bg-orange-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(255 247 237 / var(--tw-bg-opacity, 1));\n}\n.bg-orange-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));\n}\n.bg-popover {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--popover) / var(--tw-bg-opacity, 1));\n}\n.bg-primary {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1));\n}\n.bg-primary-foreground {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--primary-foreground) / var(--tw-bg-opacity, 1));\n}\n.bg-primary\\/10 {\n background-color: hsl(var(--primary) / 0.1);\n}\n.bg-primary\\/20 {\n background-color: hsl(var(--primary) / 0.2);\n}\n.bg-primary\\/30 {\n background-color: hsl(var(--primary) / 0.3);\n}\n.bg-primary\\/5 {\n background-color: hsl(var(--primary) / 0.05);\n}\n.bg-purple-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(243 232 255 / var(--tw-bg-opacity, 1));\n}\n.bg-purple-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(168 85 247 / var(--tw-bg-opacity, 1));\n}\n.bg-red-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 226 226 / var(--tw-bg-opacity, 1));\n}\n.bg-red-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(239 68 68 / var(--tw-bg-opacity, 1));\n}\n.bg-red-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(220 38 38 / var(--tw-bg-opacity, 1));\n}\n.bg-secondary {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--secondary) / var(--tw-bg-opacity, 1));\n}\n.bg-secondary-foreground {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--secondary-foreground) / var(--tw-bg-opacity, 1));\n}\n.bg-secondary\\/20 {\n background-color: hsl(var(--secondary) / 0.2);\n}\n.bg-success {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--success) / var(--tw-bg-opacity, 1));\n}\n.bg-success\\/20 {\n background-color: hsl(var(--success) / 0.2);\n}\n.bg-transparent {\n background-color: transparent;\n}\n.bg-warning {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--warning) / var(--tw-bg-opacity, 1));\n}\n.bg-warning\\/20 {\n background-color: hsl(var(--warning) / 0.2);\n}\n.bg-white {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));\n}\n.bg-white\\/10 {\n background-color: rgb(255 255 255 / 0.1);\n}\n.bg-yellow-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 249 195 / var(--tw-bg-opacity, 1));\n}\n.bg-yellow-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(234 179 8 / var(--tw-bg-opacity, 1));\n}\n.bg-opacity-80 {\n --tw-bg-opacity: 0.8;\n}\n.bg-gradient-to-br {\n background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));\n}\n.bg-gradient-to-r {\n background-image: linear-gradient(to right, var(--tw-gradient-stops));\n}\n.from-blue-600 {\n --tw-gradient-from: #2563eb var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-primary\\/5 {\n --tw-gradient-from: hsl(var(--primary) / 0.05) var(--tw-gradient-from-position);\n --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-purple-600 {\n --tw-gradient-from: #9333ea var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-transparent {\n --tw-gradient-from: transparent var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-white\\/20 {\n --tw-gradient-from: rgb(255 255 255 / 0.2) var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-white\\/5 {\n --tw-gradient-from: rgb(255 255 255 / 0.05) var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.via-border {\n --tw-gradient-to: hsl(var(--border) / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops:\n var(--tw-gradient-from),\n hsl(var(--border) / 1) var(--tw-gradient-via-position),\n var(--tw-gradient-to);\n}\n.via-transparent {\n --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops:\n var(--tw-gradient-from),\n transparent var(--tw-gradient-via-position),\n var(--tw-gradient-to);\n}\n.to-black\\/5 {\n --tw-gradient-to: rgb(0 0 0 / 0.05) var(--tw-gradient-to-position);\n}\n.to-pink-600 {\n --tw-gradient-to: #db2777 var(--tw-gradient-to-position);\n}\n.to-primary\\/10 {\n --tw-gradient-to: hsl(var(--primary) / 0.1) var(--tw-gradient-to-position);\n}\n.to-purple-600 {\n --tw-gradient-to: #9333ea var(--tw-gradient-to-position);\n}\n.to-transparent {\n --tw-gradient-to: transparent var(--tw-gradient-to-position);\n}\n.to-white\\/0 {\n --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);\n}\n.fill-current {\n fill: currentColor;\n}\n.p-0 {\n padding: 0px;\n}\n.p-1 {\n padding: 0.25rem;\n}\n.p-1\\.5 {\n padding: 0.375rem;\n}\n.p-10 {\n padding: 2.5rem;\n}\n.p-2 {\n padding: 0.5rem;\n}\n.p-3 {\n padding: 0.75rem;\n}\n.p-4 {\n padding: 1rem;\n}\n.p-5 {\n padding: 1.25rem;\n}\n.p-6 {\n padding: 1.5rem;\n}\n.p-7 {\n padding: 1.75rem;\n}\n.p-8 {\n padding: 2rem;\n}\n.px-0 {\n padding-left: 0px;\n padding-right: 0px;\n}\n.px-1 {\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n}\n.px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n.px-2\\.5 {\n padding-left: 0.625rem;\n padding-right: 0.625rem;\n}\n.px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n.px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n.px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n}\n.px-8 {\n padding-left: 2rem;\n padding-right: 2rem;\n}\n.py-0 {\n padding-top: 0px;\n padding-bottom: 0px;\n}\n.py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n.py-1\\.5 {\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n}\n.py-12 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n}\n.py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n.py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n.py-6 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n}\n.py-8 {\n padding-top: 2rem;\n padding-bottom: 2rem;\n}\n.pb-2 {\n padding-bottom: 0.5rem;\n}\n.pb-3 {\n padding-bottom: 0.75rem;\n}\n.pb-4 {\n padding-bottom: 1rem;\n}\n.pb-8 {\n padding-bottom: 2rem;\n}\n.pl-10 {\n padding-left: 2.5rem;\n}\n.pl-2 {\n padding-left: 0.5rem;\n}\n.pl-7 {\n padding-left: 1.75rem;\n}\n.pl-8 {\n padding-left: 2rem;\n}\n.pl-9 {\n padding-left: 2.25rem;\n}\n.pr-10 {\n padding-right: 2.5rem;\n}\n.pr-2 {\n padding-right: 0.5rem;\n}\n.pr-3 {\n padding-right: 0.75rem;\n}\n.pr-8 {\n padding-right: 2rem;\n}\n.pt-0 {\n padding-top: 0px;\n}\n.pt-3 {\n padding-top: 0.75rem;\n}\n.pt-4 {\n padding-top: 1rem;\n}\n.text-left {\n text-align: left;\n}\n.text-center {\n text-align: center;\n}\n.align-middle {\n vertical-align: middle;\n}\n.font-mono {\n font-family: var(--font-mono);\n}\n.text-2xl {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n.text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n.text-lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n.text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n.text-xs {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n.font-bold {\n font-weight: 700;\n}\n.font-medium {\n font-weight: 500;\n}\n.font-normal {\n font-weight: 400;\n}\n.font-semibold {\n font-weight: 600;\n}\n.capitalize {\n text-transform: capitalize;\n}\n.italic {\n font-style: italic;\n}\n.leading-none {\n line-height: 1;\n}\n.leading-normal {\n line-height: 1.5;\n}\n.leading-snug {\n line-height: 1.375;\n}\n.tracking-tight {\n letter-spacing: -0.025em;\n}\n.tracking-widest {\n letter-spacing: 0.1em;\n}\n.text-\\[var\\(--login-primary\\)\\] {\n color: var(--login-primary);\n}\n.text-\\[var\\(--login-text\\)\\] {\n color: var(--login-text);\n}\n.text-blue-600 {\n --tw-text-opacity: 1;\n color: rgb(37 99 235 / var(--tw-text-opacity, 1));\n}\n.text-blue-700 {\n --tw-text-opacity: 1;\n color: rgb(29 78 216 / var(--tw-text-opacity, 1));\n}\n.text-blue-900 {\n --tw-text-opacity: 1;\n color: rgb(30 58 138 / var(--tw-text-opacity, 1));\n}\n.text-card-foreground {\n --tw-text-opacity: 1;\n color: hsl(var(--card-foreground) / var(--tw-text-opacity, 1));\n}\n.text-current {\n color: currentColor;\n}\n.text-destructive {\n --tw-text-opacity: 1;\n color: hsl(var(--destructive) / var(--tw-text-opacity, 1));\n}\n.text-destructive-foreground {\n --tw-text-opacity: 1;\n color: hsl(var(--destructive-foreground) / var(--tw-text-opacity, 1));\n}\n.text-error {\n --tw-text-opacity: 1;\n color: hsl(var(--error) / var(--tw-text-opacity, 1));\n}\n.text-foreground {\n --tw-text-opacity: 1;\n color: hsl(var(--foreground) / var(--tw-text-opacity, 1));\n}\n.text-foreground\\/50 {\n color: hsl(var(--foreground) / 0.5);\n}\n.text-gray-500 {\n --tw-text-opacity: 1;\n color: rgb(107 114 128 / var(--tw-text-opacity, 1));\n}\n.text-gray-600 {\n --tw-text-opacity: 1;\n color: rgb(75 85 99 / var(--tw-text-opacity, 1));\n}\n.text-gray-700 {\n --tw-text-opacity: 1;\n color: rgb(55 65 81 / var(--tw-text-opacity, 1));\n}\n.text-gray-900 {\n --tw-text-opacity: 1;\n color: rgb(17 24 39 / var(--tw-text-opacity, 1));\n}\n.text-green-500 {\n --tw-text-opacity: 1;\n color: rgb(34 197 94 / var(--tw-text-opacity, 1));\n}\n.text-green-600 {\n --tw-text-opacity: 1;\n color: rgb(22 163 74 / var(--tw-text-opacity, 1));\n}\n.text-green-700 {\n --tw-text-opacity: 1;\n color: rgb(21 128 61 / var(--tw-text-opacity, 1));\n}\n.text-green-800 {\n --tw-text-opacity: 1;\n color: rgb(22 101 52 / var(--tw-text-opacity, 1));\n}\n.text-green-900 {\n --tw-text-opacity: 1;\n color: rgb(20 83 45 / var(--tw-text-opacity, 1));\n}\n.text-muted-foreground {\n --tw-text-opacity: 1;\n color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));\n}\n.text-orange-800 {\n --tw-text-opacity: 1;\n color: rgb(154 52 18 / var(--tw-text-opacity, 1));\n}\n.text-orange-900 {\n --tw-text-opacity: 1;\n color: rgb(124 45 18 / var(--tw-text-opacity, 1));\n}\n.text-popover-foreground {\n --tw-text-opacity: 1;\n color: hsl(var(--popover-foreground) / var(--tw-text-opacity, 1));\n}\n.text-primary {\n --tw-text-opacity: 1;\n color: hsl(var(--primary) / var(--tw-text-opacity, 1));\n}\n.text-primary-foreground {\n --tw-text-opacity: 1;\n color: hsl(var(--primary-foreground) / var(--tw-text-opacity, 1));\n}\n.text-purple-600 {\n --tw-text-opacity: 1;\n color: rgb(147 51 234 / var(--tw-text-opacity, 1));\n}\n.text-red-500 {\n --tw-text-opacity: 1;\n color: rgb(239 68 68 / var(--tw-text-opacity, 1));\n}\n.text-red-600 {\n --tw-text-opacity: 1;\n color: rgb(220 38 38 / var(--tw-text-opacity, 1));\n}\n.text-red-700 {\n --tw-text-opacity: 1;\n color: rgb(185 28 28 / var(--tw-text-opacity, 1));\n}\n.text-red-800 {\n --tw-text-opacity: 1;\n color: rgb(153 27 27 / var(--tw-text-opacity, 1));\n}\n.text-secondary-foreground {\n --tw-text-opacity: 1;\n color: hsl(var(--secondary-foreground) / var(--tw-text-opacity, 1));\n}\n.text-success {\n --tw-text-opacity: 1;\n color: hsl(var(--success) / var(--tw-text-opacity, 1));\n}\n.text-warning {\n --tw-text-opacity: 1;\n color: hsl(var(--warning) / var(--tw-text-opacity, 1));\n}\n.text-white {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\n}\n.text-white\\/80 {\n color: rgb(255 255 255 / 0.8);\n}\n.text-yellow-600 {\n --tw-text-opacity: 1;\n color: rgb(202 138 4 / var(--tw-text-opacity, 1));\n}\n.text-yellow-700 {\n --tw-text-opacity: 1;\n color: rgb(161 98 7 / var(--tw-text-opacity, 1));\n}\n.text-yellow-800 {\n --tw-text-opacity: 1;\n color: rgb(133 77 14 / var(--tw-text-opacity, 1));\n}\n.underline {\n text-decoration-line: underline;\n}\n.underline-offset-4 {\n text-underline-offset: 4px;\n}\n.opacity-0 {\n opacity: 0;\n}\n.opacity-30 {\n opacity: 0.3;\n}\n.opacity-50 {\n opacity: 0.5;\n}\n.opacity-60 {\n opacity: 0.6;\n}\n.opacity-70 {\n opacity: 0.7;\n}\n.opacity-80 {\n opacity: 0.8;\n}\n.opacity-90 {\n opacity: 0.9;\n}\n.shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-lg {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-md {\n --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-none {\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-sm {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-xl {\n --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-primary\\/50 {\n --tw-shadow-color: hsl(var(--primary) / 0.5);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.shadow-purple-500\\/25 {\n --tw-shadow-color: rgb(168 85 247 / 0.25);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.outline-none {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.outline {\n outline-style: solid;\n}\n.ring {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.ring-0 {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.ring-2 {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.ring-gray-300 {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(209 213 219 / var(--tw-ring-opacity, 1));\n}\n.ring-offset-2 {\n --tw-ring-offset-width: 2px;\n}\n.ring-offset-background {\n --tw-ring-offset-color: hsl(var(--background) / 1);\n}\n.blur {\n --tw-blur: blur(8px);\n 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);\n}\n.blur-md {\n --tw-blur: blur(12px);\n 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);\n}\n.blur-xl {\n --tw-blur: blur(24px);\n 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);\n}\n.filter {\n 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);\n}\n.backdrop-blur-md {\n --tw-backdrop-blur: blur(12px);\n -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);\n 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);\n}\n.backdrop-blur-sm {\n --tw-backdrop-blur: blur(4px);\n -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);\n 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);\n}\n.transition {\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke,\n opacity,\n box-shadow,\n transform,\n filter,\n -webkit-backdrop-filter;\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke,\n opacity,\n box-shadow,\n transform,\n filter,\n backdrop-filter;\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke,\n opacity,\n box-shadow,\n transform,\n filter,\n backdrop-filter,\n -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-colors {\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-opacity {\n transition-property: opacity;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-shadow {\n transition-property: box-shadow;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-transform {\n transition-property: transform;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.duration-100 {\n transition-duration: 100ms;\n}\n.duration-200 {\n transition-duration: 200ms;\n}\n.duration-300 {\n transition-duration: 300ms;\n}\n.ease-out {\n transition-timing-function: cubic-bezier(0, 0, 0.2, 1);\n}\n.shadow-sm {\n box-shadow: var(--shadow-sm);\n}\n.shadow-md {\n box-shadow: var(--shadow-md);\n}\n.shadow-lg {\n box-shadow: var(--shadow-lg);\n}\n.shadow-xl {\n box-shadow: var(--shadow-xl);\n}\n.animate-spin {\n animation: spin 1s linear infinite;\n}\n.animate-pulse {\n animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n}\n.transition-all {\n transition-property: all;\n}\n.transition-colors {\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke;\n}\n.transition-opacity {\n transition-property: opacity;\n}\n.transition-shadow {\n transition-property: box-shadow;\n}\n.transition-transform {\n transition-property: transform;\n}\n.ease-out {\n transition-timing-function: var(--ease-out);\n}\n:root {\n --primary-50: 240 249 255;\n --primary-100: 224 242 254;\n --primary-200: 186 230 253;\n --primary-300: 125 211 252;\n --primary-400: 56 189 248;\n --primary-500: 14 165 233;\n --primary-600: 2 132 199;\n --primary-700: 3 105 161;\n --primary-800: 7 89 133;\n --primary-900: 12 74 110;\n --primary-950: 8 47 73;\n --secondary-50: 248 250 252;\n --secondary-100: 241 245 249;\n --secondary-200: 226 232 240;\n --secondary-300: 203 213 225;\n --secondary-400: 148 163 184;\n --secondary-500: 100 116 139;\n --secondary-600: 71 85 105;\n --secondary-700: 51 65 85;\n --secondary-800: 30 41 59;\n --secondary-900: 15 23 42;\n --secondary-950: 2 6 23;\n --success-50: 240 253 244;\n --success-100: 220 252 231;\n --success-200: 187 247 208;\n --success-300: 134 239 172;\n --success-400: 74 222 128;\n --success-500: 34 197 94;\n --success-600: 22 163 74;\n --success-700: 21 128 61;\n --success-800: 22 101 52;\n --success-900: 20 83 45;\n --success-950: 5 46 22;\n --warning-50: 254 252 232;\n --warning-100: 254 249 195;\n --warning-200: 254 240 138;\n --warning-300: 253 224 71;\n --warning-400: 250 204 21;\n --warning-500: 234 179 8;\n --warning-600: 202 138 4;\n --warning-700: 161 98 7;\n --warning-800: 133 77 14;\n --warning-900: 113 63 18;\n --warning-950: 66 32 6;\n --error-50: 254 242 242;\n --error-100: 254 226 226;\n --error-200: 254 202 202;\n --error-300: 252 165 165;\n --error-400: 248 113 113;\n --error-500: 239 68 68;\n --error-600: 220 38 38;\n --error-700: 185 28 28;\n --error-800: 153 27 27;\n --error-900: 127 29 29;\n --error-950: 69 10 10;\n --background: 0 0% 100%;\n --foreground: 222.2 47.4% 11.2%;\n --card: 0 0% 100%;\n --card-foreground: 222.2 47.4% 11.2%;\n --popover: 0 0% 100%;\n --popover-foreground: 222.2 47.4% 11.2%;\n --primary: 222.2 47.4% 11.2%;\n --primary-foreground: 210 40% 98%;\n --secondary: 210 40% 96%;\n --secondary-foreground: 222.2 47.4% 11.2%;\n --muted: 210 40% 96%;\n --muted-foreground: 215.4 16.3% 46.9%;\n --accent: 210 40% 96%;\n --accent-foreground: 222.2 47.4% 11.2%;\n --destructive: 0 100% 50%;\n --destructive-foreground: 210 40% 98%;\n --border: 214.3 31.8% 91.4%;\n --input: 214.3 31.8% 91.4%;\n --ring: 215 20.2% 65.1%;\n --chart-1: 12 76% 61%;\n --chart-2: 173 58% 39%;\n --chart-3: 197 37% 24%;\n --chart-4: 43 74% 66%;\n --chart-5: 27 87% 67%;\n --font-sans:\n "Inter",\n -apple-system,\n BlinkMacSystemFont,\n "Segoe UI",\n Roboto,\n "Helvetica Neue",\n Arial,\n sans-serif;\n --font-serif:\n "Crimson Text",\n Georgia,\n "Times New Roman",\n serif;\n --font-mono:\n "JetBrains Mono",\n "Fira Code",\n "Consolas",\n monospace;\n --text-xs: 0.75rem;\n --text-sm: 0.875rem;\n --text-base: 1rem;\n --text-lg: 1.125rem;\n --text-xl: 1.25rem;\n --text-2xl: 1.5rem;\n --text-3xl: 1.875rem;\n --text-4xl: 2.25rem;\n --text-5xl: 3rem;\n --text-6xl: 3.75rem;\n --text-7xl: 4.5rem;\n --text-8xl: 6rem;\n --text-9xl: 8rem;\n --leading-none: 1;\n --leading-tight: 1.25;\n --leading-snug: 1.375;\n --leading-normal: 1.5;\n --leading-relaxed: 1.625;\n --leading-loose: 2;\n --font-thin: 100;\n --font-extralight: 200;\n --font-light: 300;\n --font-normal: 400;\n --font-medium: 500;\n --font-semibold: 600;\n --font-bold: 700;\n --font-extrabold: 800;\n --font-black: 900;\n --spacing-0: 0;\n --spacing-px: 1px;\n --spacing-0-5: 0.125rem;\n --spacing-1: 0.25rem;\n --spacing-1-5: 0.375rem;\n --spacing-2: 0.5rem;\n --spacing-2-5: 0.625rem;\n --spacing-3: 0.75rem;\n --spacing-3-5: 0.875rem;\n --spacing-4: 1rem;\n --spacing-5: 1.25rem;\n --spacing-6: 1.5rem;\n --spacing-7: 1.75rem;\n --spacing-8: 2rem;\n --spacing-9: 2.25rem;\n --spacing-10: 2.5rem;\n --spacing-11: 2.75rem;\n --spacing-12: 3rem;\n --spacing-14: 3.5rem;\n --spacing-16: 4rem;\n --spacing-20: 5rem;\n --spacing-24: 6rem;\n --spacing-28: 7rem;\n --spacing-32: 8rem;\n --spacing-36: 9rem;\n --spacing-40: 10rem;\n --spacing-44: 11rem;\n --spacing-48: 12rem;\n --spacing-52: 13rem;\n --spacing-56: 14rem;\n --spacing-60: 15rem;\n --spacing-64: 16rem;\n --spacing-72: 18rem;\n --spacing-80: 20rem;\n --spacing-96: 24rem;\n --radius-none: 0;\n --radius-sm: 0.125rem;\n --radius-base: 0.25rem;\n --radius-md: 0.375rem;\n --radius-lg: 0.5rem;\n --radius-xl: 0.75rem;\n --radius-2xl: 1rem;\n --radius-3xl: 1.5rem;\n --radius-full: 9999px;\n --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n --shadow-base: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);\n --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);\n --shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);\n --shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, 0.06);\n --shadow-none: 0 0 #0000;\n --elevation-0: var(--shadow-none);\n --elevation-1: var(--shadow-sm);\n --elevation-2: var(--shadow-base);\n --elevation-3: var(--shadow-md);\n --elevation-4: var(--shadow-lg);\n --elevation-5: var(--shadow-xl);\n --elevation-6: var(--shadow-2xl);\n --duration-75: 75ms;\n --duration-100: 100ms;\n --duration-150: 150ms;\n --duration-200: 200ms;\n --duration-300: 300ms;\n --duration-500: 500ms;\n --duration-700: 700ms;\n --duration-1000: 1000ms;\n --ease-linear: linear;\n --ease-in: cubic-bezier(0.4, 0, 1, 1);\n --ease-out: cubic-bezier(0, 0, 0.2, 1);\n --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);\n --ease-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);\n --ease-spring: cubic-bezier(0.175, 0.885, 0.32, 1.275);\n --animate-fade-in: fadeIn var(--duration-300) var(--ease-out);\n --animate-fade-out: fadeOut var(--duration-300) var(--ease-in);\n --animate-slide-in-up: slideInUp var(--duration-300) var(--ease-out);\n --animate-slide-in-down: slideInDown var(--duration-300) var(--ease-out);\n --animate-slide-in-left: slideInLeft var(--duration-300) var(--ease-out);\n --animate-slide-in-right: slideInRight var(--duration-300) var(--ease-out);\n --animate-scale-in: scaleIn var(--duration-200) var(--ease-out);\n --animate-scale-out: scaleOut var(--duration-200) var(--ease-in);\n --animate-bounce: bounce var(--duration-500) var(--ease-bounce);\n --animate-pulse: pulse var(--duration-1000) var(--ease-in-out) infinite;\n --animate-spin: spin var(--duration-1000) var(--ease-linear) infinite;\n --breakpoint-sm: 640px;\n --breakpoint-md: 768px;\n --breakpoint-lg: 1024px;\n --breakpoint-xl: 1280px;\n --breakpoint-2xl: 1536px;\n --container-sm: 640px;\n --container-md: 768px;\n --container-lg: 1024px;\n --container-xl: 1280px;\n --container-2xl: 1536px;\n --z-0: 0;\n --z-10: 10;\n --z-20: 20;\n --z-30: 30;\n --z-40: 40;\n --z-50: 50;\n --z-auto: auto;\n --z-dropdown: 1000;\n --z-sticky: 1020;\n --z-fixed: 1030;\n --z-modal-backdrop: 1040;\n --z-modal: 1050;\n --z-popover: 1060;\n --z-tooltip: 1070;\n --z-toast: 1080;\n --button-height-sm: 2rem;\n --button-height-md: 2.5rem;\n --button-height-lg: 3rem;\n --button-height-xl: 3.5rem;\n --button-padding-sm: 0.5rem 0.75rem;\n --button-padding-md: 0.625rem 1rem;\n --button-padding-lg: 0.75rem 1.25rem;\n --button-padding-xl: 1rem 1.5rem;\n --button-font-size-sm: var(--text-sm);\n --button-font-size-md: var(--text-base);\n --button-font-size-lg: var(--text-lg);\n --button-font-size-xl: var(--text-xl);\n --input-height-sm: 2rem;\n --input-height-md: 2.5rem;\n --input-height-lg: 3rem;\n --input-height-xl: 3.5rem;\n --input-padding-sm: 0.5rem 0.75rem;\n --input-padding-md: 0.625rem 1rem;\n --input-padding-lg: 0.75rem 1.25rem;\n --input-padding-xl: 1rem 1.5rem;\n --input-border-width: 1px;\n --input-border-radius: var(--radius-md);\n --input-focus-ring-width: 2px;\n --input-focus-ring-offset: 2px;\n --card-padding-sm: 1rem;\n --card-padding-md: 1.5rem;\n --card-padding-lg: 2rem;\n --card-padding-xl: 2.5rem;\n --card-border-radius: var(--radius-lg);\n --card-border-width: 1px;\n --card-shadow: var(--elevation-1);\n --card-hover-shadow: var(--elevation-2);\n}\n.dark {\n --background: 224 71% 4%;\n --foreground: 213 31% 91%;\n --card: 224 71% 4%;\n --card-foreground: 213 31% 91%;\n --popover: 224 71% 4%;\n --popover-foreground: 213 31% 91%;\n --primary: 210 40% 98%;\n --primary-foreground: 222.2 47.4% 1.2%;\n --secondary: 222.2 84% 4.9%;\n --secondary-foreground: 210 40% 98%;\n --muted: 223 47% 11%;\n --muted-foreground: 215.4 16.3% 56.9%;\n --accent: 216 34% 17%;\n --accent-foreground: 210 40% 98%;\n --destructive: 0 63% 31%;\n --destructive-foreground: 210 40% 98%;\n --border: 216 34% 17%;\n --input: 216 34% 17%;\n --ring: 216 34% 17%;\n --chart-1: 220 70% 50%;\n --chart-2: 160 60% 45%;\n --chart-3: 30 80% 55%;\n --chart-4: 280 65% 60%;\n --chart-5: 340 75% 55%;\n}\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes fadeOut {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n}\n@keyframes slideInUp {\n from {\n transform: translateY(100%);\n opacity: 0;\n }\n to {\n transform: translateY(0);\n opacity: 1;\n }\n}\n@keyframes slideInDown {\n from {\n transform: translateY(-100%);\n opacity: 0;\n }\n to {\n transform: translateY(0);\n opacity: 1;\n }\n}\n@keyframes slideInLeft {\n from {\n transform: translateX(-100%);\n opacity: 0;\n }\n to {\n transform: translateX(0);\n opacity: 1;\n }\n}\n@keyframes slideInRight {\n from {\n transform: translateX(100%);\n opacity: 0;\n }\n to {\n transform: translateX(0);\n opacity: 1;\n }\n}\n@keyframes scaleIn {\n from {\n transform: scale(0.95);\n opacity: 0;\n }\n to {\n transform: scale(1);\n opacity: 1;\n }\n}\n@keyframes scaleOut {\n from {\n transform: scale(1);\n opacity: 1;\n }\n to {\n transform: scale(0.95);\n opacity: 0;\n }\n}\n@keyframes bounce {\n 0%, 20%, 53%, 80%, 100% {\n transform: translate3d(0, 0, 0);\n }\n 40%, 43% {\n transform: translate3d(0, -30px, 0);\n }\n 70% {\n transform: translate3d(0, -15px, 0);\n }\n 90% {\n transform: translate3d(0, -4px, 0);\n }\n}\n@keyframes pulse {\n 0%, 100% {\n opacity: 1;\n }\n 50% {\n opacity: 0.5;\n }\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n.animate-fade-in {\n animation: var(--animate-fade-in);\n}\n.animate-fade-out {\n animation: var(--animate-fade-out);\n}\n.animate-slide-in-up {\n animation: var(--animate-slide-in-up);\n}\n.animate-slide-in-down {\n animation: var(--animate-slide-in-down);\n}\n.animate-slide-in-left {\n animation: var(--animate-slide-in-left);\n}\n.animate-slide-in-right {\n animation: var(--animate-slide-in-right);\n}\n.animate-scale-in {\n animation: var(--animate-scale-in);\n}\n.animate-scale-out {\n animation: var(--animate-scale-out);\n}\n.animate-bounce {\n animation: var(--animate-bounce);\n}\n.animate-pulse {\n animation: var(--animate-pulse);\n}\n.animate-spin {\n animation: var(--animate-spin);\n}\n@media (max-width: 639px) {\n .container {\n max-width: 100%;\n }\n}\n@media (min-width: 640px) {\n .container {\n max-width: var(--container-sm);\n }\n}\n@media (min-width: 768px) {\n .container {\n max-width: var(--container-md);\n }\n}\n@media (min-width: 1024px) {\n .container {\n max-width: var(--container-lg);\n }\n}\n@media (min-width: 1280px) {\n .container {\n max-width: var(--container-xl);\n }\n}\n@media (min-width: 1536px) {\n .container {\n max-width: var(--container-2xl);\n }\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n@keyframes ping {\n 75%, 100% {\n transform: scale(2);\n opacity: 0;\n }\n}\n@keyframes pulse {\n 0%, 100% {\n opacity: 1;\n }\n 50% {\n opacity: .5;\n }\n}\n@keyframes bounce {\n 0%, 100% {\n transform: translateY(-25%);\n animation-timing-function: cubic-bezier(0.8, 0, 1, 1);\n }\n 50% {\n transform: translateY(0);\n animation-timing-function: cubic-bezier(0, 0, 0.2, 1);\n }\n}\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes fadeOut {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n}\n@keyframes slideIn {\n from {\n transform: translateX(-100%);\n }\n to {\n transform: translateX(0);\n }\n}\n@keyframes scaleIn {\n from {\n transform: scale(0.95);\n opacity: 0;\n }\n to {\n transform: scale(1);\n opacity: 1;\n }\n}\n.file\\:border-0::file-selector-button {\n border-width: 0px;\n}\n.file\\:bg-transparent::file-selector-button {\n background-color: transparent;\n}\n.file\\:font-medium::file-selector-button {\n font-weight: 500;\n}\n.placeholder\\:text-muted-foreground::-moz-placeholder {\n --tw-text-opacity: 1;\n color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));\n}\n.placeholder\\:text-muted-foreground::placeholder {\n --tw-text-opacity: 1;\n color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));\n}\n.hover\\:-translate-y-0\\.5:hover {\n --tw-translate-y: -0.125rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.hover\\:scale-105:hover {\n --tw-scale-x: 1.05;\n --tw-scale-y: 1.05;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.hover\\:scale-110:hover {\n --tw-scale-x: 1.1;\n --tw-scale-y: 1.1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.hover\\:border-error\\/80:hover {\n border-color: hsl(var(--error) / 0.8);\n}\n.hover\\:border-gray-300:hover {\n --tw-border-opacity: 1;\n border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));\n}\n.hover\\:border-gray-400:hover {\n --tw-border-opacity: 1;\n border-color: rgb(156 163 175 / var(--tw-border-opacity, 1));\n}\n.hover\\:border-primary\\/20:hover {\n border-color: hsl(var(--primary) / 0.2);\n}\n.hover\\:border-primary\\/50:hover {\n border-color: hsl(var(--primary) / 0.5);\n}\n.hover\\:border-success\\/80:hover {\n border-color: hsl(var(--success) / 0.8);\n}\n.hover\\:border-white\\/30:hover {\n border-color: rgb(255 255 255 / 0.3);\n}\n.hover\\:bg-accent:hover {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-background\\/90:hover {\n background-color: hsl(var(--background) / 0.9);\n}\n.hover\\:bg-black\\/10:hover {\n background-color: rgb(0 0 0 / 0.1);\n}\n.hover\\:bg-card\\/90:hover {\n background-color: hsl(var(--card) / 0.9);\n}\n.hover\\:bg-destructive\\/90:hover {\n background-color: hsl(var(--destructive) / 0.9);\n}\n.hover\\:bg-error\\/90:hover {\n background-color: hsl(var(--error) / 0.9);\n}\n.hover\\:bg-gray-100:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-gray-100\\/50:hover {\n background-color: rgb(243 244 246 / 0.5);\n}\n.hover\\:bg-gray-200:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-gray-50:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-muted:hover {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--muted) / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-muted\\/30:hover {\n background-color: hsl(var(--muted) / 0.3);\n}\n.hover\\:bg-muted\\/50:hover {\n background-color: hsl(var(--muted) / 0.5);\n}\n.hover\\:bg-muted\\/80:hover {\n background-color: hsl(var(--muted) / 0.8);\n}\n.hover\\:bg-primary:hover {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-primary\\/20:hover {\n background-color: hsl(var(--primary) / 0.2);\n}\n.hover\\:bg-primary\\/90:hover {\n background-color: hsl(var(--primary) / 0.9);\n}\n.hover\\:bg-purple-200:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(233 213 255 / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-secondary:hover {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--secondary) / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-secondary\\/80:hover {\n background-color: hsl(var(--secondary) / 0.8);\n}\n.hover\\:bg-success\\/90:hover {\n background-color: hsl(var(--success) / 0.9);\n}\n.hover\\:bg-warning\\/90:hover {\n background-color: hsl(var(--warning) / 0.9);\n}\n.hover\\:bg-white\\/20:hover {\n background-color: rgb(255 255 255 / 0.2);\n}\n.hover\\:from-blue-700:hover {\n --tw-gradient-from: #1d4ed8 var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(29 78 216 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.hover\\:from-purple-700:hover {\n --tw-gradient-from: #7e22ce var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(126 34 206 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.hover\\:to-pink-700:hover {\n --tw-gradient-to: #be185d var(--tw-gradient-to-position);\n}\n.hover\\:to-purple-700:hover {\n --tw-gradient-to: #7e22ce var(--tw-gradient-to-position);\n}\n.hover\\:text-accent-foreground:hover {\n --tw-text-opacity: 1;\n color: hsl(var(--accent-foreground) / var(--tw-text-opacity, 1));\n}\n.hover\\:text-foreground:hover {\n --tw-text-opacity: 1;\n color: hsl(var(--foreground) / var(--tw-text-opacity, 1));\n}\n.hover\\:text-primary-foreground:hover {\n --tw-text-opacity: 1;\n color: hsl(var(--primary-foreground) / var(--tw-text-opacity, 1));\n}\n.hover\\:text-white:hover {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\n}\n.hover\\:underline:hover {\n text-decoration-line: underline;\n}\n.hover\\:opacity-100:hover {\n opacity: 1;\n}\n.hover\\:opacity-90:hover {\n opacity: 0.9;\n}\n.hover\\:shadow-\\[0_0_20px_rgba\\(var\\(--primary\\)\\,0\\.5\\)\\]:hover {\n --tw-shadow: 0 0 20px rgba(var(--primary),0.5);\n --tw-shadow-colored: 0 0 20px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.hover\\:shadow-lg:hover {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.hover\\:shadow-md:hover {\n --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.hover\\:shadow-xl:hover {\n --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.hover\\:shadow-primary\\/20:hover {\n --tw-shadow-color: hsl(var(--primary) / 0.2);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.hover\\:shadow-primary\\/60:hover {\n --tw-shadow-color: hsl(var(--primary) / 0.6);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.hover\\:brightness-110:hover {\n --tw-brightness: brightness(1.1);\n 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);\n}\n.hover\\:shadow-md:hover {\n box-shadow: var(--shadow-md);\n}\n.hover\\:shadow-lg:hover {\n box-shadow: var(--shadow-lg);\n}\n.hover\\:shadow-xl:hover {\n box-shadow: var(--shadow-xl);\n}\n.focus\\:bg-accent:focus {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));\n}\n.focus\\:bg-error\\/10:focus {\n background-color: hsl(var(--error) / 0.1);\n}\n.focus\\:bg-gray-100:focus {\n --tw-bg-opacity: 1;\n background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));\n}\n.focus\\:bg-success\\/10:focus {\n background-color: hsl(var(--success) / 0.1);\n}\n.focus\\:bg-warning\\/10:focus {\n background-color: hsl(var(--warning) / 0.1);\n}\n.focus\\:text-accent-foreground:focus {\n --tw-text-opacity: 1;\n color: hsl(var(--accent-foreground) / var(--tw-text-opacity, 1));\n}\n.focus\\:text-error:focus {\n --tw-text-opacity: 1;\n color: hsl(var(--error) / var(--tw-text-opacity, 1));\n}\n.focus\\:text-foreground:focus {\n --tw-text-opacity: 1;\n color: hsl(var(--foreground) / var(--tw-text-opacity, 1));\n}\n.focus\\:text-success:focus {\n --tw-text-opacity: 1;\n color: hsl(var(--success) / var(--tw-text-opacity, 1));\n}\n.focus\\:text-warning:focus {\n --tw-text-opacity: 1;\n color: hsl(var(--warning) / var(--tw-text-opacity, 1));\n}\n.focus\\:opacity-100:focus {\n opacity: 1;\n}\n.focus\\:outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.focus\\:ring-1:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.focus\\:ring-2:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.focus\\:ring-\\[var\\(--login-primary\\)\\]:focus {\n --tw-ring-color: var(--login-primary);\n}\n.focus\\:ring-primary\\/30:focus {\n --tw-ring-color: hsl(var(--primary) / 0.3);\n}\n.focus\\:ring-ring:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: hsl(var(--ring) / var(--tw-ring-opacity, 1));\n}\n.focus\\:ring-offset-2:focus {\n --tw-ring-offset-width: 2px;\n}\n.focus-visible\\:border-2:focus-visible {\n border-width: 2px;\n}\n.focus-visible\\:border-b-2:focus-visible {\n border-bottom-width: 2px;\n}\n.focus-visible\\:border-error:focus-visible {\n --tw-border-opacity: 1;\n border-color: hsl(var(--error) / var(--tw-border-opacity, 1));\n}\n.focus-visible\\:border-primary:focus-visible {\n --tw-border-opacity: 1;\n border-color: hsl(var(--primary) / var(--tw-border-opacity, 1));\n}\n.focus-visible\\:border-success:focus-visible {\n --tw-border-opacity: 1;\n border-color: hsl(var(--success) / var(--tw-border-opacity, 1));\n}\n.focus-visible\\:bg-transparent:focus-visible {\n background-color: transparent;\n}\n.focus-visible\\:shadow-lg:focus-visible {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.focus-visible\\:shadow-primary\\/30:focus-visible {\n --tw-shadow-color: hsl(var(--primary) / 0.3);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.focus-visible\\:outline-none:focus-visible {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.focus-visible\\:ring-0:focus-visible {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.focus-visible\\:ring-1:focus-visible {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.focus-visible\\:ring-2:focus-visible {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.focus-visible\\:ring-error\\/30:focus-visible {\n --tw-ring-color: hsl(var(--error) / 0.3);\n}\n.focus-visible\\:ring-error\\/50:focus-visible {\n --tw-ring-color: hsl(var(--error) / 0.5);\n}\n.focus-visible\\:ring-gray-400\\/30:focus-visible {\n --tw-ring-color: rgb(156 163 175 / 0.3);\n}\n.focus-visible\\:ring-primary\\/30:focus-visible {\n --tw-ring-color: hsl(var(--primary) / 0.3);\n}\n.focus-visible\\:ring-primary\\/50:focus-visible {\n --tw-ring-color: hsl(var(--primary) / 0.5);\n}\n.focus-visible\\:ring-purple-400\\/30:focus-visible {\n --tw-ring-color: rgb(192 132 252 / 0.3);\n}\n.focus-visible\\:ring-purple-500\\/50:focus-visible {\n --tw-ring-color: rgb(168 85 247 / 0.5);\n}\n.focus-visible\\:ring-ring:focus-visible {\n --tw-ring-opacity: 1;\n --tw-ring-color: hsl(var(--ring) / var(--tw-ring-opacity, 1));\n}\n.focus-visible\\:ring-success\\/30:focus-visible {\n --tw-ring-color: hsl(var(--success) / 0.3);\n}\n.focus-visible\\:ring-success\\/50:focus-visible {\n --tw-ring-color: hsl(var(--success) / 0.5);\n}\n.focus-visible\\:ring-warning\\/30:focus-visible {\n --tw-ring-color: hsl(var(--warning) / 0.3);\n}\n.focus-visible\\:ring-white\\/50:focus-visible {\n --tw-ring-color: rgb(255 255 255 / 0.5);\n}\n.focus-visible\\:ring-offset-1:focus-visible {\n --tw-ring-offset-width: 1px;\n}\n.focus-visible\\:ring-offset-2:focus-visible {\n --tw-ring-offset-width: 2px;\n}\n.focus-visible\\:ring-offset-background:focus-visible {\n --tw-ring-offset-color: hsl(var(--background) / 1);\n}\n.focus-visible\\:shadow-lg:focus-visible {\n box-shadow: var(--shadow-lg);\n}\n.active\\:translate-y-0:active {\n --tw-translate-y: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.active\\:translate-y-0\\.5:active {\n --tw-translate-y: 0.125rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.active\\:scale-95:active {\n --tw-scale-x: .95;\n --tw-scale-y: .95;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.active\\:cursor-grabbing:active {\n cursor: grabbing;\n}\n.active\\:bg-error\\/80:active {\n background-color: hsl(var(--error) / 0.8);\n}\n.active\\:bg-gray-100:active {\n --tw-bg-opacity: 1;\n background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));\n}\n.active\\:bg-gray-200:active {\n --tw-bg-opacity: 1;\n background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));\n}\n.active\\:bg-gray-300:active {\n --tw-bg-opacity: 1;\n background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));\n}\n.active\\:bg-primary\\/30:active {\n background-color: hsl(var(--primary) / 0.3);\n}\n.active\\:bg-success\\/80:active {\n background-color: hsl(var(--success) / 0.8);\n}\n.active\\:bg-white\\/30:active {\n background-color: rgb(255 255 255 / 0.3);\n}\n.active\\:from-blue-800:active {\n --tw-gradient-from: #1e40af var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(30 64 175 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.active\\:to-purple-800:active {\n --tw-gradient-to: #6b21a8 var(--tw-gradient-to-position);\n}\n.active\\:shadow-\\[0_0_10px_rgba\\(var\\(--primary\\)\\,0\\.3\\)\\]:active {\n --tw-shadow: 0 0 10px rgba(var(--primary),0.3);\n --tw-shadow-colored: 0 0 10px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.active\\:shadow-md:active {\n --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.active\\:shadow-sm:active {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.active\\:shadow-primary\\/40:active {\n --tw-shadow-color: hsl(var(--primary) / 0.4);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.active\\:brightness-90:active {\n --tw-brightness: brightness(.9);\n 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);\n}\n.active\\:brightness-95:active {\n --tw-brightness: brightness(.95);\n 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);\n}\n.active\\:shadow-sm:active {\n box-shadow: var(--shadow-sm);\n}\n.active\\:shadow-md:active {\n box-shadow: var(--shadow-md);\n}\n.disabled\\:pointer-events-none:disabled {\n pointer-events: none;\n}\n.disabled\\:cursor-not-allowed:disabled {\n cursor: not-allowed;\n}\n.disabled\\:opacity-50:disabled {\n opacity: 0.5;\n}\n.group:hover .group-hover\\:flex {\n display: flex;\n}\n.group:hover .group-hover\\:opacity-100 {\n opacity: 1;\n}\n.group.destructive .group-\\[\\.destructive\\]\\:border-muted\\/40 {\n border-color: hsl(var(--muted) / 0.4);\n}\n.group.destructive .group-\\[\\.destructive\\]\\:text-red-300 {\n --tw-text-opacity: 1;\n color: rgb(252 165 165 / var(--tw-text-opacity, 1));\n}\n.group.destructive .group-\\[\\.destructive\\]\\:hover\\:border-destructive\\/30:hover {\n border-color: hsl(var(--destructive) / 0.3);\n}\n.group.destructive .group-\\[\\.destructive\\]\\:hover\\:bg-destructive:hover {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--destructive) / var(--tw-bg-opacity, 1));\n}\n.group.destructive .group-\\[\\.destructive\\]\\:hover\\:text-destructive-foreground:hover {\n --tw-text-opacity: 1;\n color: hsl(var(--destructive-foreground) / var(--tw-text-opacity, 1));\n}\n.group.destructive .group-\\[\\.destructive\\]\\:hover\\:text-red-50:hover {\n --tw-text-opacity: 1;\n color: rgb(254 242 242 / var(--tw-text-opacity, 1));\n}\n.group.destructive .group-\\[\\.destructive\\]\\:focus\\:ring-destructive:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: hsl(var(--destructive) / var(--tw-ring-opacity, 1));\n}\n.group.destructive .group-\\[\\.destructive\\]\\:focus\\:ring-red-400:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity, 1));\n}\n.group.destructive .group-\\[\\.destructive\\]\\:focus\\:ring-offset-red-600:focus {\n --tw-ring-offset-color: #dc2626;\n}\n.peer:disabled ~ .peer-disabled\\:cursor-not-allowed {\n cursor: not-allowed;\n}\n.peer:disabled ~ .peer-disabled\\:opacity-70 {\n opacity: 0.7;\n}\n.data-\\[disabled\\]\\:pointer-events-none[data-disabled] {\n pointer-events: none;\n}\n.data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom] {\n --tw-translate-y: 0.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[side\\=left\\]\\:-translate-x-1[data-side=left] {\n --tw-translate-x: -0.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[side\\=right\\]\\:translate-x-1[data-side=right] {\n --tw-translate-x: 0.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[side\\=top\\]\\:-translate-y-1[data-side=top] {\n --tw-translate-y: -0.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[state\\=checked\\]\\:translate-x-4[data-state=checked] {\n --tw-translate-x: 1rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[state\\=checked\\]\\:translate-x-5[data-state=checked] {\n --tw-translate-x: 1.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[state\\=checked\\]\\:translate-x-7[data-state=checked] {\n --tw-translate-x: 1.75rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[state\\=unchecked\\]\\:translate-x-0[data-state=unchecked] {\n --tw-translate-x: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[swipe\\=cancel\\]\\:translate-x-0[data-swipe=cancel] {\n --tw-translate-x: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[swipe\\=end\\]\\:translate-x-\\[var\\(--radix-toast-swipe-end-x\\)\\][data-swipe=end] {\n --tw-translate-x: var(--radix-toast-swipe-end-x);\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[swipe\\=move\\]\\:translate-x-\\[var\\(--radix-toast-swipe-move-x\\)\\][data-swipe=move] {\n --tw-translate-x: var(--radix-toast-swipe-move-x);\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n@keyframes bounce {\n 0%, 100% {\n transform: translateY(-25%);\n animation-timing-function: cubic-bezier(0.8, 0, 1, 1);\n }\n 50% {\n transform: none;\n animation-timing-function: cubic-bezier(0, 0, 0.2, 1);\n }\n}\n.data-\\[state\\=checked\\]\\:animate-bounce[data-state=checked] {\n animation: bounce 1s infinite;\n}\n.data-\\[state\\=active\\]\\:border-primary[data-state=active] {\n --tw-border-opacity: 1;\n border-color: hsl(var(--primary) / var(--tw-border-opacity, 1));\n}\n.data-\\[state\\=checked\\]\\:border-primary[data-state=checked] {\n --tw-border-opacity: 1;\n border-color: hsl(var(--primary) / var(--tw-border-opacity, 1));\n}\n.data-\\[state\\=active\\]\\:bg-background[data-state=active] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--background) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=active\\]\\:bg-primary[data-state=active] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=active\\]\\:bg-transparent[data-state=active] {\n background-color: transparent;\n}\n.data-\\[state\\=checked\\]\\:bg-accent[data-state=checked] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=checked\\]\\:bg-error[data-state=checked] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--error) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=checked\\]\\:bg-primary[data-state=checked] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=checked\\]\\:bg-success[data-state=checked] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--success) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=checked\\]\\:bg-warning[data-state=checked] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--warning) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=open\\]\\:bg-accent[data-state=open] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=unchecked\\]\\:bg-input[data-state=unchecked] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--input) / var(--tw-bg-opacity, 1));\n}\n.data-\\[state\\=active\\]\\:text-foreground[data-state=active] {\n --tw-text-opacity: 1;\n color: hsl(var(--foreground) / var(--tw-text-opacity, 1));\n}\n.data-\\[state\\=active\\]\\:text-primary-foreground[data-state=active] {\n --tw-text-opacity: 1;\n color: hsl(var(--primary-foreground) / var(--tw-text-opacity, 1));\n}\n.data-\\[state\\=checked\\]\\:text-primary-foreground[data-state=checked] {\n --tw-text-opacity: 1;\n color: hsl(var(--primary-foreground) / var(--tw-text-opacity, 1));\n}\n.data-\\[state\\=active\\]\\:underline[data-state=active] {\n text-decoration-line: underline;\n}\n.data-\\[state\\=active\\]\\:underline-offset-4[data-state=active] {\n text-underline-offset: 4px;\n}\n.data-\\[disabled\\]\\:opacity-50[data-disabled] {\n opacity: 0.5;\n}\n.data-\\[state\\=inactive\\]\\:opacity-60[data-state=inactive] {\n opacity: 0.6;\n}\n.data-\\[state\\=active\\]\\:shadow-md[data-state=active] {\n --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.data-\\[state\\=active\\]\\:shadow-sm[data-state=active] {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.data-\\[swipe\\=move\\]\\:transition-none[data-swipe=move] {\n transition-property: none;\n}\n.data-\\[state\\=open\\]\\:duration-150[data-state=open] {\n transition-duration: 150ms;\n}\n.data-\\[state\\=active\\]\\:shadow-sm[data-state=active] {\n box-shadow: var(--shadow-sm);\n}\n.data-\\[state\\=active\\]\\:shadow-md[data-state=active] {\n box-shadow: var(--shadow-md);\n}\n.data-\\[state\\=checked\\]\\:animate-bounce[data-state=checked] {\n animation: bounce 1s infinite;\n}\n.data-\\[swipe\\=move\\]\\:transition-none[data-swipe=move] {\n transition: none;\n}\n.group[data-state=open] .group-data-\\[state\\=open\\]\\:rotate-180 {\n --tw-rotate: 180deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.dark\\:border-blue-800:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(30 64 175 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-error\\/20:is(.dark *) {\n border-color: hsl(var(--error) / 0.2);\n}\n.dark\\:border-error\\/30:is(.dark *) {\n border-color: hsl(var(--error) / 0.3);\n}\n.dark\\:border-gray-600:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(75 85 99 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-gray-700:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(55 65 81 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-gray-700\\/20:is(.dark *) {\n border-color: rgb(55 65 81 / 0.2);\n}\n.dark\\:border-gray-700\\/30:is(.dark *) {\n border-color: rgb(55 65 81 / 0.3);\n}\n.dark\\:border-gray-800:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(31 41 55 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-green-800:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(22 101 52 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-orange-800:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(154 52 18 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-primary\\/30:is(.dark *) {\n border-color: hsl(var(--primary) / 0.3);\n}\n.dark\\:border-success\\/20:is(.dark *) {\n border-color: hsl(var(--success) / 0.2);\n}\n.dark\\:bg-blue-900\\/20:is(.dark *) {\n background-color: rgb(30 58 138 / 0.2);\n}\n.dark\\:bg-error\\/90:is(.dark *) {\n background-color: hsl(var(--error) / 0.9);\n}\n.dark\\:bg-gray-700:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-gray-800:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-gray-800\\/10:is(.dark *) {\n background-color: rgb(31 41 55 / 0.1);\n}\n.dark\\:bg-gray-800\\/50:is(.dark *) {\n background-color: rgb(31 41 55 / 0.5);\n}\n.dark\\:bg-gray-800\\/80:is(.dark *) {\n background-color: rgb(31 41 55 / 0.8);\n}\n.dark\\:bg-gray-800\\/90:is(.dark *) {\n background-color: rgb(31 41 55 / 0.9);\n}\n.dark\\:bg-gray-900:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(17 24 39 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-gray-900\\/50:is(.dark *) {\n background-color: rgb(17 24 39 / 0.5);\n}\n.dark\\:bg-gray-900\\/60:is(.dark *) {\n background-color: rgb(17 24 39 / 0.6);\n}\n.dark\\:bg-gray-950:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(3 7 18 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-green-900\\/20:is(.dark *) {\n background-color: rgb(20 83 45 / 0.2);\n}\n.dark\\:bg-orange-900\\/20:is(.dark *) {\n background-color: rgb(124 45 18 / 0.2);\n}\n.dark\\:bg-primary:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-primary\\/20:is(.dark *) {\n background-color: hsl(var(--primary) / 0.2);\n}\n.dark\\:bg-primary\\/90:is(.dark *) {\n background-color: hsl(var(--primary) / 0.9);\n}\n.dark\\:bg-purple-900:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(88 28 135 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-purple-900\\/30:is(.dark *) {\n background-color: rgb(88 28 135 / 0.3);\n}\n.dark\\:bg-success\\/90:is(.dark *) {\n background-color: hsl(var(--success) / 0.9);\n}\n.dark\\:bg-transparent:is(.dark *) {\n background-color: transparent;\n}\n.dark\\:bg-warning\\/90:is(.dark *) {\n background-color: hsl(var(--warning) / 0.9);\n}\n.dark\\:from-primary\\/10:is(.dark *) {\n --tw-gradient-from: hsl(var(--primary) / 0.1) var(--tw-gradient-from-position);\n --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.dark\\:to-primary\\/20:is(.dark *) {\n --tw-gradient-to: hsl(var(--primary) / 0.2) var(--tw-gradient-to-position);\n}\n.dark\\:text-blue-100:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(219 234 254 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-blue-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(96 165 250 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-gray-100:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(243 244 246 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-gray-200:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(229 231 235 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-gray-300:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(209 213 219 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-gray-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(156 163 175 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-gray-900:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(17 24 39 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-green-100:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(220 252 231 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-green-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(74 222 128 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-orange-100:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(255 237 213 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-primary-foreground:is(.dark *) {\n --tw-text-opacity: 1;\n color: hsl(var(--primary-foreground) / var(--tw-text-opacity, 1));\n}\n.dark\\:text-purple-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(192 132 252 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-red-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(248 113 113 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-white:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-yellow-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(250 204 21 / var(--tw-text-opacity, 1));\n}\n.dark\\:shadow-inner:is(.dark *) {\n --tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.dark\\:shadow-lg:is(.dark *) {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.dark\\:shadow-md:is(.dark *) {\n --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.dark\\:shadow-sm:is(.dark *) {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.dark\\:shadow-error\\/10:is(.dark *) {\n --tw-shadow-color: hsl(var(--error) / 0.1);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:shadow-gray-900\\/20:is(.dark *) {\n --tw-shadow-color: rgb(17 24 39 / 0.2);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:shadow-gray-900\\/30:is(.dark *) {\n --tw-shadow-color: rgb(17 24 39 / 0.3);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:shadow-gray-950\\/10:is(.dark *) {\n --tw-shadow-color: rgb(3 7 18 / 0.1);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:shadow-primary\\/10:is(.dark *) {\n --tw-shadow-color: hsl(var(--primary) / 0.1);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:shadow-primary\\/20:is(.dark *) {\n --tw-shadow-color: hsl(var(--primary) / 0.2);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:shadow-purple-500\\/10:is(.dark *) {\n --tw-shadow-color: rgb(168 85 247 / 0.1);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:shadow-success\\/10:is(.dark *) {\n --tw-shadow-color: hsl(var(--success) / 0.1);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:shadow-warning\\/10:is(.dark *) {\n --tw-shadow-color: hsl(var(--warning) / 0.1);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:ring-gray-600:is(.dark *) {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(75 85 99 / var(--tw-ring-opacity, 1));\n}\n.dark\\:ring-offset-gray-950:is(.dark *) {\n --tw-ring-offset-color: #030712;\n}\n.dark\\:backdrop-blur-sm:is(.dark *) {\n --tw-backdrop-blur: blur(4px);\n -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);\n 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);\n}\n.dark\\:shadow-sm:is(.dark *) {\n box-shadow: var(--shadow-sm);\n}\n.dark\\:shadow-md:is(.dark *) {\n box-shadow: var(--shadow-md);\n}\n.dark\\:shadow-lg:is(.dark *) {\n box-shadow: var(--shadow-lg);\n}\n.dark\\:placeholder\\:text-gray-500:is(.dark *)::-moz-placeholder {\n --tw-text-opacity: 1;\n color: rgb(107 114 128 / var(--tw-text-opacity, 1));\n}\n.dark\\:placeholder\\:text-gray-500:is(.dark *)::placeholder {\n --tw-text-opacity: 1;\n color: rgb(107 114 128 / var(--tw-text-opacity, 1));\n}\n.dark\\:hover\\:border-error\\/80:hover:is(.dark *) {\n border-color: hsl(var(--error) / 0.8);\n}\n.dark\\:hover\\:border-gray-500:hover:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(107 114 128 / var(--tw-border-opacity, 1));\n}\n.dark\\:hover\\:border-gray-600:hover:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(75 85 99 / var(--tw-border-opacity, 1));\n}\n.dark\\:hover\\:border-gray-700\\/30:hover:is(.dark *) {\n border-color: rgb(55 65 81 / 0.3);\n}\n.dark\\:hover\\:border-primary\\/30:hover:is(.dark *) {\n border-color: hsl(var(--primary) / 0.3);\n}\n.dark\\:hover\\:border-success\\/80:hover:is(.dark *) {\n border-color: hsl(var(--success) / 0.8);\n}\n.dark\\:hover\\:bg-error\\/80:hover:is(.dark *) {\n background-color: hsl(var(--error) / 0.8);\n}\n.dark\\:hover\\:bg-gray-700:hover:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));\n}\n.dark\\:hover\\:bg-gray-700\\/50:hover:is(.dark *) {\n background-color: rgb(55 65 81 / 0.5);\n}\n.dark\\:hover\\:bg-gray-700\\/90:hover:is(.dark *) {\n background-color: rgb(55 65 81 / 0.9);\n}\n.dark\\:hover\\:bg-gray-800:hover:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));\n}\n.dark\\:hover\\:bg-gray-800\\/20:hover:is(.dark *) {\n background-color: rgb(31 41 55 / 0.2);\n}\n.dark\\:hover\\:bg-gray-800\\/30:hover:is(.dark *) {\n background-color: rgb(31 41 55 / 0.3);\n}\n.dark\\:hover\\:bg-gray-800\\/80:hover:is(.dark *) {\n background-color: rgb(31 41 55 / 0.8);\n}\n.dark\\:hover\\:bg-gray-800\\/90:hover:is(.dark *) {\n background-color: rgb(31 41 55 / 0.9);\n}\n.dark\\:hover\\:bg-primary\\/30:hover:is(.dark *) {\n background-color: hsl(var(--primary) / 0.3);\n}\n.dark\\:hover\\:bg-primary\\/90:hover:is(.dark *) {\n background-color: hsl(var(--primary) / 0.9);\n}\n.dark\\:hover\\:bg-purple-800:hover:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(107 33 168 / var(--tw-bg-opacity, 1));\n}\n.dark\\:hover\\:bg-success\\/80:hover:is(.dark *) {\n background-color: hsl(var(--success) / 0.8);\n}\n.dark\\:hover\\:bg-warning\\/80:hover:is(.dark *) {\n background-color: hsl(var(--warning) / 0.8);\n}\n.dark\\:hover\\:bg-white\\/10:hover:is(.dark *) {\n background-color: rgb(255 255 255 / 0.1);\n}\n.dark\\:hover\\:text-blue-300:hover:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(147 197 253 / var(--tw-text-opacity, 1));\n}\n.dark\\:hover\\:text-white:hover:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\n}\n.dark\\:focus\\:bg-gray-700:focus:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));\n}\n.dark\\:focus\\:bg-gray-800:focus:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));\n}\n.dark\\:focus\\:bg-green-900\\/20:focus:is(.dark *) {\n background-color: rgb(20 83 45 / 0.2);\n}\n.dark\\:focus\\:bg-red-900\\/20:focus:is(.dark *) {\n background-color: rgb(127 29 29 / 0.2);\n}\n.dark\\:focus\\:bg-yellow-900\\/20:focus:is(.dark *) {\n background-color: rgb(113 63 18 / 0.2);\n}\n.dark\\:focus\\:text-gray-100:focus:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(243 244 246 / var(--tw-text-opacity, 1));\n}\n.dark\\:focus\\:text-gray-200:focus:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(229 231 235 / var(--tw-text-opacity, 1));\n}\n.dark\\:focus\\:text-green-300:focus:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(134 239 172 / var(--tw-text-opacity, 1));\n}\n.dark\\:focus\\:text-red-300:focus:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(252 165 165 / var(--tw-text-opacity, 1));\n}\n.dark\\:focus\\:text-yellow-300:focus:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(253 224 71 / var(--tw-text-opacity, 1));\n}\n.dark\\:focus-visible\\:border-primary:focus-visible:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: hsl(var(--primary) / var(--tw-border-opacity, 1));\n}\n.dark\\:focus-visible\\:border-primary\\/80:focus-visible:is(.dark *) {\n border-color: hsl(var(--primary) / 0.8);\n}\n.dark\\:focus-visible\\:ring-error\\/25:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--error) / 0.25);\n}\n.dark\\:focus-visible\\:ring-error\\/30:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--error) / 0.3);\n}\n.dark\\:focus-visible\\:ring-gray-500\\/40:focus-visible:is(.dark *) {\n --tw-ring-color: rgb(107 114 128 / 0.4);\n}\n.dark\\:focus-visible\\:ring-primary\\/20:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--primary) / 0.2);\n}\n.dark\\:focus-visible\\:ring-primary\\/30:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--primary) / 0.3);\n}\n.dark\\:focus-visible\\:ring-primary\\/40:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--primary) / 0.4);\n}\n.dark\\:focus-visible\\:ring-primary\\/50:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--primary) / 0.5);\n}\n.dark\\:focus-visible\\:ring-purple-500\\/40:focus-visible:is(.dark *) {\n --tw-ring-color: rgb(168 85 247 / 0.4);\n}\n.dark\\:focus-visible\\:ring-success\\/25:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--success) / 0.25);\n}\n.dark\\:focus-visible\\:ring-success\\/30:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--success) / 0.3);\n}\n.dark\\:focus-visible\\:ring-warning\\/25:focus-visible:is(.dark *) {\n --tw-ring-color: hsl(var(--warning) / 0.25);\n}\n.dark\\:focus-visible\\:ring-offset-gray-950:focus-visible:is(.dark *) {\n --tw-ring-offset-color: #030712;\n}\n.dark\\:active\\:bg-error\\/70:active:is(.dark *) {\n background-color: hsl(var(--error) / 0.7);\n}\n.dark\\:active\\:bg-gray-600\\/90:active:is(.dark *) {\n background-color: rgb(75 85 99 / 0.9);\n}\n.dark\\:active\\:bg-gray-700\\/90:active:is(.dark *) {\n background-color: rgb(55 65 81 / 0.9);\n}\n.dark\\:active\\:bg-gray-800\\/90:active:is(.dark *) {\n background-color: rgb(31 41 55 / 0.9);\n}\n.dark\\:active\\:bg-primary\\/40:active:is(.dark *) {\n background-color: hsl(var(--primary) / 0.4);\n}\n.dark\\:active\\:bg-primary\\/80:active:is(.dark *) {\n background-color: hsl(var(--primary) / 0.8);\n}\n.dark\\:active\\:bg-success\\/70:active:is(.dark *) {\n background-color: hsl(var(--success) / 0.7);\n}\n.dark\\:active\\:text-blue-500:active:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(59 130 246 / var(--tw-text-opacity, 1));\n}\n.peer:disabled ~ .dark\\:peer-disabled\\:opacity-60:is(.dark *) {\n opacity: 0.6;\n}\n.dark\\:data-\\[state\\=active\\]\\:border-primary\\/80[data-state=active]:is(.dark *) {\n border-color: hsl(var(--primary) / 0.8);\n}\n.dark\\:data-\\[state\\=active\\]\\:bg-gray-900[data-state=active]:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(17 24 39 / var(--tw-bg-opacity, 1));\n}\n.dark\\:data-\\[state\\=active\\]\\:bg-primary\\/90[data-state=active]:is(.dark *) {\n background-color: hsl(var(--primary) / 0.9);\n}\n.dark\\:data-\\[state\\=unchecked\\]\\:bg-gray-700\\/70[data-state=unchecked]:is(.dark *) {\n background-color: rgb(55 65 81 / 0.7);\n}\n.dark\\:data-\\[state\\=active\\]\\:text-gray-100[data-state=active]:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(243 244 246 / var(--tw-text-opacity, 1));\n}\n.dark\\:data-\\[state\\=active\\]\\:text-gray-200[data-state=active]:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(229 231 235 / var(--tw-text-opacity, 1));\n}\n.dark\\:data-\\[state\\=active\\]\\:text-white[data-state=active]:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\n}\n.dark\\:data-\\[state\\=active\\]\\:shadow-gray-950\\/10[data-state=active]:is(.dark *) {\n --tw-shadow-color: rgb(3 7 18 / 0.1);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.dark\\:data-\\[state\\=active\\]\\:shadow-gray-950\\/20[data-state=active]:is(.dark *) {\n --tw-shadow-color: rgb(3 7 18 / 0.2);\n --tw-shadow: var(--tw-shadow-colored);\n}\n@media (min-width: 640px) {\n .sm\\:bottom-0 {\n bottom: 0px;\n }\n .sm\\:right-0 {\n right: 0px;\n }\n .sm\\:top-auto {\n top: auto;\n }\n .sm\\:max-w-\\[425px\\] {\n max-width: 425px;\n }\n .sm\\:max-w-\\[500px\\] {\n max-width: 500px;\n }\n .sm\\:flex-row {\n flex-direction: row;\n }\n .sm\\:flex-col {\n flex-direction: column;\n }\n .sm\\:justify-end {\n justify-content: flex-end;\n }\n .sm\\:space-x-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.5rem * var(--tw-space-x-reverse));\n margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));\n }\n .sm\\:text-left {\n text-align: left;\n }\n}\n@media (min-width: 768px) {\n .md\\:max-w-\\[420px\\] {\n max-width: 420px;\n }\n .md\\:grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n }\n}\n@media (min-width: 1024px) {\n .lg\\:flex {\n display: flex;\n }\n .lg\\:grid-cols-4 {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n }\n .lg\\:space-x-8 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(2rem * var(--tw-space-x-reverse));\n margin-left: calc(2rem * calc(1 - var(--tw-space-x-reverse)));\n }\n}\n.\\[\\&\\+div\\]\\:text-xs + div {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n.\\[\\&\\>span\\]\\:line-clamp-1 > span {\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 1;\n}\n.\\[\\&_blockquote\\]\\:border-l-4 blockquote {\n border-left-width: 4px;\n}\n.\\[\\&_blockquote\\]\\:border-gray-300 blockquote {\n --tw-border-opacity: 1;\n border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));\n}\n.\\[\\&_blockquote\\]\\:pl-4 blockquote {\n padding-left: 1rem;\n}\n.\\[\\&_blockquote\\]\\:italic blockquote {\n font-style: italic;\n}\n.\\[\\&_h1\\]\\:mb-4 h1 {\n margin-bottom: 1rem;\n}\n.\\[\\&_h1\\]\\:text-3xl h1 {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n.\\[\\&_h1\\]\\:font-bold h1 {\n font-weight: 700;\n}\n.\\[\\&_h2\\]\\:mb-3 h2 {\n margin-bottom: 0.75rem;\n}\n.\\[\\&_h2\\]\\:text-2xl h2 {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n.\\[\\&_h2\\]\\:font-bold h2 {\n font-weight: 700;\n}\n.\\[\\&_h3\\]\\:mb-2 h3 {\n margin-bottom: 0.5rem;\n}\n.\\[\\&_h3\\]\\:text-xl h3 {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n.\\[\\&_h3\\]\\:font-bold h3 {\n font-weight: 700;\n}\n.\\[\\&_h4\\]\\:mb-2 h4 {\n margin-bottom: 0.5rem;\n}\n.\\[\\&_h4\\]\\:text-lg h4 {\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n.\\[\\&_h4\\]\\:font-bold h4 {\n font-weight: 700;\n}\n.\\[\\&_h5\\]\\:mb-1 h5 {\n margin-bottom: 0.25rem;\n}\n.\\[\\&_h5\\]\\:text-base h5 {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n.\\[\\&_h5\\]\\:font-bold h5 {\n font-weight: 700;\n}\n.\\[\\&_h6\\]\\:mb-1 h6 {\n margin-bottom: 0.25rem;\n}\n.\\[\\&_h6\\]\\:text-sm h6 {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.\\[\\&_h6\\]\\:font-bold h6 {\n font-weight: 700;\n}\n.\\[\\&_li\\]\\:mb-1 li {\n margin-bottom: 0.25rem;\n}\n.\\[\\&_ol\\]\\:mb-4 ol {\n margin-bottom: 1rem;\n}\n.\\[\\&_ol\\]\\:list-decimal ol {\n list-style-type: decimal;\n}\n.\\[\\&_ol\\]\\:pl-6 ol {\n padding-left: 1.5rem;\n}\n.\\[\\&_pre\\]\\:overflow-x-auto pre {\n overflow-x: auto;\n}\n.\\[\\&_pre\\]\\:rounded pre {\n border-radius: 0.25rem;\n}\n.\\[\\&_pre\\]\\:bg-gray-100 pre {\n --tw-bg-opacity: 1;\n background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));\n}\n.\\[\\&_pre\\]\\:p-4 pre {\n padding: 1rem;\n}\n.\\[\\&_pre\\]\\:dark\\:bg-gray-800:is(.dark *) pre {\n --tw-bg-opacity: 1;\n background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));\n}\n.\\[\\&_table\\]\\:mb-4 table {\n margin-bottom: 1rem;\n}\n.\\[\\&_table\\]\\:w-full table {\n width: 100%;\n}\n.\\[\\&_table_td\\]\\:border table td {\n border-width: 1px;\n}\n.\\[\\&_table_td\\]\\:border-gray-300 table td {\n --tw-border-opacity: 1;\n border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));\n}\n.\\[\\&_table_td\\]\\:p-2 table td {\n padding: 0.5rem;\n}\n.\\[\\&_table_th\\]\\:border table th {\n border-width: 1px;\n}\n.\\[\\&_table_th\\]\\:border-gray-300 table th {\n --tw-border-opacity: 1;\n border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));\n}\n.\\[\\&_table_th\\]\\:bg-gray-50 table th {\n --tw-bg-opacity: 1;\n background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));\n}\n.\\[\\&_table_th\\]\\:p-2 table th {\n padding: 0.5rem;\n}\n.\\[\\&_table_th\\]\\:font-semibold table th {\n font-weight: 600;\n}\n.\\[\\&_ul\\]\\:mb-4 ul {\n margin-bottom: 1rem;\n}\n.\\[\\&_ul\\]\\:list-disc ul {\n list-style-type: disc;\n}\n.\\[\\&_ul\\]\\:pl-6 ul {\n padding-left: 1.5rem;\n}\n');
1733
1733
  function cn(...inputs) {
1734
1734
  return twMerge(clsx(inputs));
1735
1735
  }
@@ -1901,7 +1901,7 @@ var cardVariants = cva(
1901
1901
  }
1902
1902
  }
1903
1903
  );
1904
- var Card = React50.forwardRef(
1904
+ var Card = React55.forwardRef(
1905
1905
  ({ className, variant, size: size4, radius, interactive, microInteraction = "lift", ...props }, ref) => {
1906
1906
  if (interactive && microInteraction !== "none") {
1907
1907
  const interactionProps = {
@@ -1929,7 +1929,7 @@ var Card = React50.forwardRef(
1929
1929
  }
1930
1930
  );
1931
1931
  Card.displayName = "Card";
1932
- var CardHeader = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1932
+ var CardHeader = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1933
1933
  "div",
1934
1934
  {
1935
1935
  ref,
@@ -1938,7 +1938,7 @@ var CardHeader = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE
1938
1938
  }
1939
1939
  ));
1940
1940
  CardHeader.displayName = "CardHeader";
1941
- var CardTitle = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1941
+ var CardTitle = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1942
1942
  "h3",
1943
1943
  {
1944
1944
  ref,
@@ -1947,7 +1947,7 @@ var CardTitle = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE_
1947
1947
  }
1948
1948
  ));
1949
1949
  CardTitle.displayName = "CardTitle";
1950
- var CardDescription = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1950
+ var CardDescription = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1951
1951
  "p",
1952
1952
  {
1953
1953
  ref,
@@ -1956,9 +1956,9 @@ var CardDescription = React50.forwardRef(({ className, ...props }, ref) => /* @_
1956
1956
  }
1957
1957
  ));
1958
1958
  CardDescription.displayName = "CardDescription";
1959
- var CardContent = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: cn("pt-0", className), ...props }));
1959
+ var CardContent = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: cn("pt-0", className), ...props }));
1960
1960
  CardContent.displayName = "CardContent";
1961
- var CardFooter = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1961
+ var CardFooter = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1962
1962
  "div",
1963
1963
  {
1964
1964
  ref,
@@ -2116,7 +2116,7 @@ var buttonVariants = cva(
2116
2116
  }
2117
2117
  }
2118
2118
  );
2119
- var Button = React50.forwardRef(
2119
+ var Button = React55.forwardRef(
2120
2120
  ({
2121
2121
  className,
2122
2122
  variant,
@@ -2151,6 +2151,917 @@ var Button = React50.forwardRef(
2151
2151
  }
2152
2152
  );
2153
2153
  Button.displayName = "Button";
2154
+
2155
+ // src/hooks/use-subscription.ts
2156
+ function useSubscription() {
2157
+ return {
2158
+ isLoading: false,
2159
+ isAuthenticated: true,
2160
+ isAdmin: false,
2161
+ hasProAccess: true,
2162
+ // Pro package kullanıcıları varsayılan olarak pro erişime sahip
2163
+ subscriptionPlan: "pro",
2164
+ subscription: {
2165
+ status: "active",
2166
+ plan: "pro"
2167
+ }
2168
+ };
2169
+ }
2170
+ var animatedButtonVariants = cva(
2171
+ "relative inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 overflow-hidden",
2172
+ {
2173
+ variants: {
2174
+ variant: {
2175
+ default: "bg-primary text-primary-foreground shadow hover:bg-primary/90",
2176
+ destructive: "bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",
2177
+ outline: "border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",
2178
+ secondary: "bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",
2179
+ ghost: "hover:bg-accent hover:text-accent-foreground",
2180
+ link: "text-primary underline-offset-4 hover:underline"
2181
+ },
2182
+ size: {
2183
+ default: "h-9 px-4 py-2",
2184
+ sm: "h-8 rounded-md px-3 text-xs",
2185
+ lg: "h-10 rounded-md px-8"
2186
+ }
2187
+ },
2188
+ defaultVariants: {
2189
+ variant: "default",
2190
+ size: "default"
2191
+ }
2192
+ }
2193
+ );
2194
+ var AnimatedButtonInternal = React55__default.forwardRef(
2195
+ ({ className, variant, size: size4, state = "idle", onStateChange, children, onClick, ...props }, ref) => {
2196
+ const [internalState, setInternalState] = useState("idle");
2197
+ const currentState = state !== "idle" ? state : internalState;
2198
+ const handleClick2 = async (e) => {
2199
+ if (currentState === "loading")
2200
+ return;
2201
+ setInternalState("loading");
2202
+ onStateChange?.("loading");
2203
+ if (onClick) {
2204
+ try {
2205
+ await onClick(e);
2206
+ setInternalState("success");
2207
+ onStateChange?.("success");
2208
+ setTimeout(() => {
2209
+ setInternalState("idle");
2210
+ onStateChange?.("idle");
2211
+ }, 2e3);
2212
+ } catch (error) {
2213
+ setInternalState("error");
2214
+ onStateChange?.("error");
2215
+ setTimeout(() => {
2216
+ setInternalState("idle");
2217
+ onStateChange?.("idle");
2218
+ }, 2e3);
2219
+ }
2220
+ }
2221
+ };
2222
+ const getIcon = () => {
2223
+ switch (currentState) {
2224
+ case "loading":
2225
+ return /* @__PURE__ */ jsx(Loader2, { className: "h-4 w-4 animate-spin" });
2226
+ case "success":
2227
+ return /* @__PURE__ */ jsx(Check, { className: "h-4 w-4" });
2228
+ case "error":
2229
+ return /* @__PURE__ */ jsx(X, { className: "h-4 w-4" });
2230
+ default:
2231
+ return null;
2232
+ }
2233
+ };
2234
+ const getBackgroundColor = () => {
2235
+ switch (currentState) {
2236
+ case "success":
2237
+ return "bg-green-600";
2238
+ case "error":
2239
+ return "bg-red-600";
2240
+ default:
2241
+ return "";
2242
+ }
2243
+ };
2244
+ return /* @__PURE__ */ jsxs(
2245
+ "button",
2246
+ {
2247
+ className: cn(animatedButtonVariants({ variant, size: size4 }), className),
2248
+ ref,
2249
+ onClick: handleClick2,
2250
+ disabled: currentState === "loading" || props.disabled,
2251
+ ...props,
2252
+ children: [
2253
+ /* @__PURE__ */ jsxs(
2254
+ motion.div,
2255
+ {
2256
+ className: "flex items-center gap-2",
2257
+ animate: {
2258
+ width: currentState !== "idle" ? "auto" : "100%"
2259
+ },
2260
+ transition: { duration: 0.2 },
2261
+ children: [
2262
+ /* @__PURE__ */ jsx(
2263
+ motion.div,
2264
+ {
2265
+ animate: {
2266
+ scale: currentState !== "idle" ? 1 : 0,
2267
+ width: currentState !== "idle" ? "auto" : 0
2268
+ },
2269
+ transition: { duration: 0.2 },
2270
+ className: "flex items-center",
2271
+ children: getIcon()
2272
+ }
2273
+ ),
2274
+ /* @__PURE__ */ jsx(
2275
+ motion.span,
2276
+ {
2277
+ animate: {
2278
+ opacity: currentState === "idle" ? 1 : 0,
2279
+ x: currentState !== "idle" ? -20 : 0
2280
+ },
2281
+ transition: { duration: 0.2 },
2282
+ children
2283
+ }
2284
+ )
2285
+ ]
2286
+ }
2287
+ ),
2288
+ /* @__PURE__ */ jsx(
2289
+ motion.div,
2290
+ {
2291
+ className: cn(
2292
+ "absolute inset-0 rounded-md",
2293
+ getBackgroundColor()
2294
+ ),
2295
+ initial: { scale: 0, opacity: 0 },
2296
+ animate: {
2297
+ scale: currentState === "success" || currentState === "error" ? 1 : 0,
2298
+ opacity: currentState === "success" || currentState === "error" ? 1 : 0
2299
+ },
2300
+ transition: { duration: 0.3 },
2301
+ style: { zIndex: -1 }
2302
+ }
2303
+ )
2304
+ ]
2305
+ }
2306
+ );
2307
+ }
2308
+ );
2309
+ AnimatedButtonInternal.displayName = "AnimatedButtonInternal";
2310
+ var AnimatedButton = React55__default.forwardRef(
2311
+ ({ className, ...props }, ref) => {
2312
+ const docsProAccess = { hasAccess: true };
2313
+ const { hasProAccess, isLoading } = useSubscription();
2314
+ if (!docsProAccess.isDocsMode && !isLoading && !hasProAccess) {
2315
+ return /* @__PURE__ */ jsx(Card, { className: cn("w-fit", className), children: /* @__PURE__ */ jsx(CardContent, { className: "py-6 text-center", children: /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
2316
+ /* @__PURE__ */ jsx("div", { className: "rounded-full bg-purple-100 dark:bg-purple-900/30 p-3 w-fit mx-auto", children: /* @__PURE__ */ jsx(Lock, { className: "h-6 w-6 text-purple-600 dark:text-purple-400" }) }),
2317
+ /* @__PURE__ */ jsxs("div", { children: [
2318
+ /* @__PURE__ */ jsx("h3", { className: "font-semibold text-sm mb-2", children: "Pro Feature" }),
2319
+ /* @__PURE__ */ jsx("p", { className: "text-muted-foreground text-xs mb-4", children: "Animated Button is available exclusively to MoonUI Pro subscribers." }),
2320
+ /* @__PURE__ */ jsx("a", { href: "/pricing", children: /* @__PURE__ */ jsxs(Button, { size: "sm", children: [
2321
+ /* @__PURE__ */ jsx(Sparkles, { className: "mr-2 h-4 w-4" }),
2322
+ "Upgrade to Pro"
2323
+ ] }) })
2324
+ ] })
2325
+ ] }) }) });
2326
+ }
2327
+ return /* @__PURE__ */ jsx(AnimatedButtonInternal, { className, ref, ...props });
2328
+ }
2329
+ );
2330
+ AnimatedButton.displayName = "AnimatedButton";
2331
+ var ErrorBoundaryInternal = class extends Component {
2332
+ constructor(props) {
2333
+ super(props);
2334
+ this.state = { hasError: false };
2335
+ }
2336
+ static getDerivedStateFromError(error) {
2337
+ return { hasError: true, error };
2338
+ }
2339
+ componentDidCatch(error, errorInfo) {
2340
+ this.props.onError?.(error, errorInfo);
2341
+ console.error("ErrorBoundary caught an error:", error, errorInfo);
2342
+ }
2343
+ render() {
2344
+ if (this.state.hasError) {
2345
+ if (this.props.fallback) {
2346
+ return this.props.fallback;
2347
+ }
2348
+ return /* @__PURE__ */ jsx("div", { className: cn("flex items-center justify-center min-h-[200px] p-4", this.props.className), children: /* @__PURE__ */ jsxs(Card, { className: "w-full max-w-md", children: [
2349
+ /* @__PURE__ */ jsxs(CardHeader, { className: "text-center", children: [
2350
+ /* @__PURE__ */ jsx("div", { className: "mx-auto mb-4 flex h-12 w-12 items-center justify-center rounded-full bg-red-100", children: /* @__PURE__ */ jsx(AlertTriangle, { className: "h-6 w-6 text-red-600" }) }),
2351
+ /* @__PURE__ */ jsx(CardTitle, { children: "Something went wrong" }),
2352
+ /* @__PURE__ */ jsx(CardDescription, { children: "An error occurred while rendering this component" })
2353
+ ] }),
2354
+ /* @__PURE__ */ jsx(CardContent, { className: "text-center", children: /* @__PURE__ */ jsxs(
2355
+ Button,
2356
+ {
2357
+ onClick: () => this.setState({ hasError: false, error: void 0 }),
2358
+ className: "mt-4",
2359
+ children: [
2360
+ /* @__PURE__ */ jsx(RefreshCw, { className: "mr-2 h-4 w-4" }),
2361
+ "Try again"
2362
+ ]
2363
+ }
2364
+ ) })
2365
+ ] }) });
2366
+ }
2367
+ return this.props.children;
2368
+ }
2369
+ };
2370
+ function ErrorBoundaryWrapper(props) {
2371
+ const docsProAccess = { hasAccess: true };
2372
+ const { hasProAccess, isLoading } = useSubscription();
2373
+ if (!docsProAccess.isDocsMode && !isLoading && !hasProAccess) {
2374
+ return /* @__PURE__ */ jsx(Card, { className: cn("w-fit", props.className), children: /* @__PURE__ */ jsx(CardContent, { className: "py-6 text-center", children: /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
2375
+ /* @__PURE__ */ jsx("div", { className: "rounded-full bg-purple-100 dark:bg-purple-900/30 p-3 w-fit mx-auto", children: /* @__PURE__ */ jsx(Lock, { className: "h-6 w-6 text-purple-600 dark:text-purple-400" }) }),
2376
+ /* @__PURE__ */ jsxs("div", { children: [
2377
+ /* @__PURE__ */ jsx("h3", { className: "font-semibold text-sm mb-2", children: "Pro Feature" }),
2378
+ /* @__PURE__ */ jsx("p", { className: "text-muted-foreground text-xs mb-4", children: "Error Boundary is available exclusively to MoonUI Pro subscribers." }),
2379
+ /* @__PURE__ */ jsx("a", { href: "/pricing", children: /* @__PURE__ */ jsxs(Button, { size: "sm", children: [
2380
+ /* @__PURE__ */ jsx(Sparkles, { className: "mr-2 h-4 w-4" }),
2381
+ "Upgrade to Pro"
2382
+ ] }) })
2383
+ ] })
2384
+ ] }) }) });
2385
+ }
2386
+ return /* @__PURE__ */ jsx(ErrorBoundaryInternal, { ...props });
2387
+ }
2388
+ var ErrorBoundary = ErrorBoundaryWrapper;
2389
+ var FloatingActionButtonInternal = React55__default.forwardRef(
2390
+ ({
2391
+ actions = [],
2392
+ position = "bottom-right",
2393
+ size: size4 = "default",
2394
+ className,
2395
+ children,
2396
+ onClick,
2397
+ ...props
2398
+ }, ref) => {
2399
+ const [isOpen, setIsOpen] = useState(false);
2400
+ const sizeClasses = {
2401
+ sm: "h-10 w-10",
2402
+ default: "h-12 w-12",
2403
+ lg: "h-14 w-14"
2404
+ };
2405
+ const positionClasses = {
2406
+ "bottom-right": "bottom-4 right-4",
2407
+ "bottom-left": "bottom-4 left-4",
2408
+ "top-right": "top-4 right-4",
2409
+ "top-left": "top-4 left-4"
2410
+ };
2411
+ const actionPositions = {
2412
+ "bottom-right": { x: -60, y: 0 },
2413
+ "bottom-left": { x: 60, y: 0 },
2414
+ "top-right": { x: -60, y: 0 },
2415
+ "top-left": { x: 60, y: 0 }
2416
+ };
2417
+ const handleMainClick = (e) => {
2418
+ if (actions.length > 0) {
2419
+ setIsOpen(!isOpen);
2420
+ } else if (onClick) {
2421
+ onClick(e);
2422
+ }
2423
+ };
2424
+ return /* @__PURE__ */ jsxs("div", { className: cn("fixed z-50", positionClasses[position]), children: [
2425
+ /* @__PURE__ */ jsx(AnimatePresence, { children: isOpen && actions.length > 0 && /* @__PURE__ */ jsx("div", { className: "absolute", children: actions.map((action, index2) => /* @__PURE__ */ jsxs(
2426
+ motion.div,
2427
+ {
2428
+ initial: {
2429
+ scale: 0,
2430
+ opacity: 0,
2431
+ x: 0,
2432
+ y: 0
2433
+ },
2434
+ animate: {
2435
+ scale: 1,
2436
+ opacity: 1,
2437
+ x: actionPositions[position].x,
2438
+ y: actionPositions[position].y * (index2 + 1) - 10
2439
+ },
2440
+ exit: {
2441
+ scale: 0,
2442
+ opacity: 0,
2443
+ x: 0,
2444
+ y: 0
2445
+ },
2446
+ transition: {
2447
+ delay: index2 * 0.05,
2448
+ type: "spring",
2449
+ stiffness: 200,
2450
+ damping: 15
2451
+ },
2452
+ className: "absolute flex items-center gap-2",
2453
+ style: {
2454
+ transform: `translate(${position.includes("right") ? "0" : "0"}, ${position.includes("bottom") ? "0" : "0"})`
2455
+ },
2456
+ children: [
2457
+ /* @__PURE__ */ jsx(
2458
+ motion.div,
2459
+ {
2460
+ initial: { opacity: 0, scale: 0.8 },
2461
+ animate: { opacity: 1, scale: 1 },
2462
+ exit: { opacity: 0, scale: 0.8 },
2463
+ transition: { delay: (index2 + 1) * 0.05 },
2464
+ className: cn(
2465
+ "px-2 py-1 bg-background/90 backdrop-blur-sm text-sm font-medium rounded-md shadow-sm border whitespace-nowrap",
2466
+ position.includes("right") ? "mr-2" : "ml-2"
2467
+ ),
2468
+ children: action.label
2469
+ }
2470
+ ),
2471
+ /* @__PURE__ */ jsx(
2472
+ "button",
2473
+ {
2474
+ onClick: () => {
2475
+ action.onClick();
2476
+ setIsOpen(false);
2477
+ },
2478
+ className: cn(
2479
+ "inline-flex items-center justify-center rounded-full bg-primary text-primary-foreground shadow-lg hover:bg-primary/90 transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring",
2480
+ sizeClasses[size4]
2481
+ ),
2482
+ children: action.icon
2483
+ }
2484
+ )
2485
+ ]
2486
+ },
2487
+ index2
2488
+ )) }) }),
2489
+ /* @__PURE__ */ jsx(
2490
+ motion.button,
2491
+ {
2492
+ ref,
2493
+ className: cn(
2494
+ "inline-flex items-center justify-center rounded-full bg-primary text-primary-foreground shadow-lg hover:bg-primary/90 transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring",
2495
+ sizeClasses[size4],
2496
+ className
2497
+ ),
2498
+ onClick: handleMainClick,
2499
+ whileHover: { scale: 1.1 },
2500
+ whileTap: { scale: 0.9 },
2501
+ animate: { rotate: isOpen ? 45 : 0 },
2502
+ transition: { duration: 0.2 },
2503
+ ...props,
2504
+ children: children || (actions.length > 0 ? /* @__PURE__ */ jsx(Plus, { className: "h-5 w-5" }) : /* @__PURE__ */ jsx(Plus, { className: "h-5 w-5" }))
2505
+ }
2506
+ ),
2507
+ /* @__PURE__ */ jsx(AnimatePresence, { children: isOpen && /* @__PURE__ */ jsx(
2508
+ motion.div,
2509
+ {
2510
+ initial: { opacity: 0 },
2511
+ animate: { opacity: 1 },
2512
+ exit: { opacity: 0 },
2513
+ className: "fixed inset-0 z-[-1]",
2514
+ onClick: () => setIsOpen(false)
2515
+ }
2516
+ ) })
2517
+ ] });
2518
+ }
2519
+ );
2520
+ FloatingActionButtonInternal.displayName = "FloatingActionButtonInternal";
2521
+ var FloatingActionButton = React55__default.forwardRef(
2522
+ ({ className, ...props }, ref) => {
2523
+ const docsProAccess = { hasAccess: true };
2524
+ const { hasProAccess, isLoading } = useSubscription();
2525
+ if (!docsProAccess.isDocsMode && !isLoading && !hasProAccess) {
2526
+ return /* @__PURE__ */ jsx(Card, { className: cn("w-fit", className), children: /* @__PURE__ */ jsx(CardContent, { className: "py-6 text-center", children: /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
2527
+ /* @__PURE__ */ jsx("div", { className: "rounded-full bg-purple-100 dark:bg-purple-900/30 p-3 w-fit mx-auto", children: /* @__PURE__ */ jsx(Lock, { className: "h-6 w-6 text-purple-600 dark:text-purple-400" }) }),
2528
+ /* @__PURE__ */ jsxs("div", { children: [
2529
+ /* @__PURE__ */ jsx("h3", { className: "font-semibold text-sm mb-2", children: "Pro Feature" }),
2530
+ /* @__PURE__ */ jsx("p", { className: "text-muted-foreground text-xs mb-4", children: "Floating Action Button is available exclusively to MoonUI Pro subscribers." }),
2531
+ /* @__PURE__ */ jsx("a", { href: "/pricing", children: /* @__PURE__ */ jsxs(Button, { size: "sm", children: [
2532
+ /* @__PURE__ */ jsx(Sparkles, { className: "mr-2 h-4 w-4" }),
2533
+ "Upgrade to Pro"
2534
+ ] }) })
2535
+ ] })
2536
+ ] }) }) });
2537
+ }
2538
+ return /* @__PURE__ */ jsx(FloatingActionButtonInternal, { className, ref, ...props });
2539
+ }
2540
+ );
2541
+ FloatingActionButton.displayName = "FloatingActionButton";
2542
+ var HoverCard3DInternal = React55__default.forwardRef(
2543
+ ({
2544
+ children,
2545
+ className,
2546
+ perspective = 1e3,
2547
+ rotationIntensity = 15,
2548
+ springConfig = { stiffness: 200, damping: 15 },
2549
+ ...props
2550
+ }, ref) => {
2551
+ const cardRef = useRef(null);
2552
+ const [isHovered, setIsHovered] = useState(false);
2553
+ const x = useMotionValue(0);
2554
+ const y = useMotionValue(0);
2555
+ const springX = useSpring(x, springConfig);
2556
+ const springY = useSpring(y, springConfig);
2557
+ const rotateX = useTransform(springY, [-0.5, 0.5], [rotationIntensity, -rotationIntensity]);
2558
+ const rotateY = useTransform(springX, [-0.5, 0.5], [-rotationIntensity, rotationIntensity]);
2559
+ const handleMouseMove2 = (e) => {
2560
+ if (!cardRef.current)
2561
+ return;
2562
+ const rect = cardRef.current.getBoundingClientRect();
2563
+ const centerX = rect.left + rect.width / 2;
2564
+ const centerY = rect.top + rect.height / 2;
2565
+ const rotateXValue = (e.clientY - centerY) / (rect.height / 2);
2566
+ const rotateYValue = (e.clientX - centerX) / (rect.width / 2);
2567
+ x.set(rotateYValue);
2568
+ y.set(rotateXValue);
2569
+ };
2570
+ const handleMouseEnter = () => {
2571
+ setIsHovered(true);
2572
+ };
2573
+ const handleMouseLeave2 = () => {
2574
+ setIsHovered(false);
2575
+ x.set(0);
2576
+ y.set(0);
2577
+ };
2578
+ return /* @__PURE__ */ jsxs(
2579
+ motion.div,
2580
+ {
2581
+ ref: (node) => {
2582
+ cardRef.current = node;
2583
+ if (typeof ref === "function") {
2584
+ ref(node);
2585
+ } else if (ref) {
2586
+ ref.current = node;
2587
+ }
2588
+ },
2589
+ className: cn(
2590
+ "relative rounded-lg border bg-card text-card-foreground shadow-sm transition-colors duration-200 hover:bg-card/90",
2591
+ className
2592
+ ),
2593
+ onMouseMove: handleMouseMove2,
2594
+ onMouseEnter: handleMouseEnter,
2595
+ onMouseLeave: handleMouseLeave2,
2596
+ style: {
2597
+ transformPerspective: perspective,
2598
+ transformStyle: "preserve-3d"
2599
+ },
2600
+ animate: {
2601
+ rotateX: isHovered ? rotateX : 0,
2602
+ rotateY: isHovered ? rotateY : 0,
2603
+ scale: isHovered ? 1.05 : 1
2604
+ },
2605
+ transition: { duration: 0.15 },
2606
+ ...props,
2607
+ children: [
2608
+ /* @__PURE__ */ jsx(
2609
+ motion.div,
2610
+ {
2611
+ className: "relative z-10",
2612
+ animate: {
2613
+ z: isHovered ? 20 : 0
2614
+ },
2615
+ transition: { duration: 0.2 },
2616
+ children
2617
+ }
2618
+ ),
2619
+ /* @__PURE__ */ jsx(
2620
+ motion.div,
2621
+ {
2622
+ className: "absolute inset-0 rounded-lg bg-gradient-to-br from-white/5 via-transparent to-black/5 pointer-events-none",
2623
+ animate: {
2624
+ opacity: isHovered ? 1 : 0
2625
+ },
2626
+ transition: { duration: 0.3 }
2627
+ }
2628
+ ),
2629
+ /* @__PURE__ */ jsx(
2630
+ motion.div,
2631
+ {
2632
+ className: "absolute inset-0 rounded-lg bg-primary/5 blur-xl",
2633
+ animate: {
2634
+ opacity: isHovered ? 0.8 : 0,
2635
+ scale: isHovered ? 1.2 : 1
2636
+ },
2637
+ transition: { duration: 0.3 },
2638
+ style: { zIndex: -1 }
2639
+ }
2640
+ )
2641
+ ]
2642
+ }
2643
+ );
2644
+ }
2645
+ );
2646
+ HoverCard3DInternal.displayName = "HoverCard3DInternal";
2647
+ var HoverCard3D = React55__default.forwardRef(
2648
+ ({ className, ...props }, ref) => {
2649
+ const docsProAccess = { hasAccess: true };
2650
+ const { hasProAccess, isLoading } = useSubscription();
2651
+ if (!docsProAccess.isDocsMode && !isLoading && !hasProAccess) {
2652
+ return /* @__PURE__ */ jsx(Card, { className: cn("w-fit", className), children: /* @__PURE__ */ jsx(CardContent, { className: "py-6 text-center", children: /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
2653
+ /* @__PURE__ */ jsx("div", { className: "rounded-full bg-purple-100 dark:bg-purple-900/30 p-3 w-fit mx-auto", children: /* @__PURE__ */ jsx(Lock, { className: "h-6 w-6 text-purple-600 dark:text-purple-400" }) }),
2654
+ /* @__PURE__ */ jsxs("div", { children: [
2655
+ /* @__PURE__ */ jsx("h3", { className: "font-semibold text-sm mb-2", children: "Pro Feature" }),
2656
+ /* @__PURE__ */ jsx("p", { className: "text-muted-foreground text-xs mb-4", children: "3D Hover Card is available exclusively to MoonUI Pro subscribers." }),
2657
+ /* @__PURE__ */ jsx("a", { href: "/pricing", children: /* @__PURE__ */ jsxs(Button, { size: "sm", children: [
2658
+ /* @__PURE__ */ jsx(Sparkles, { className: "mr-2 h-4 w-4" }),
2659
+ "Upgrade to Pro"
2660
+ ] }) })
2661
+ ] })
2662
+ ] }) }) });
2663
+ }
2664
+ return /* @__PURE__ */ jsx(HoverCard3DInternal, { className, ref, ...props });
2665
+ }
2666
+ );
2667
+ HoverCard3D.displayName = "HoverCard3D";
2668
+ var MagneticButtonInternal = React55__default.forwardRef(
2669
+ ({
2670
+ children,
2671
+ className,
2672
+ strength = 0.3,
2673
+ range = 100,
2674
+ springConfig = { stiffness: 200, damping: 15 },
2675
+ ...props
2676
+ }, ref) => {
2677
+ const buttonRef = useRef(null);
2678
+ const [isHovered, setIsHovered] = useState(false);
2679
+ const x = useMotionValue(0);
2680
+ const y = useMotionValue(0);
2681
+ const springX = useSpring(x, springConfig);
2682
+ const springY = useSpring(y, springConfig);
2683
+ const rotateX = useTransform(springY, [-range, range], [5, -5]);
2684
+ const rotateY = useTransform(springX, [-range, range], [-5, 5]);
2685
+ const handleMouseMove2 = (e) => {
2686
+ if (!buttonRef.current)
2687
+ return;
2688
+ const rect = buttonRef.current.getBoundingClientRect();
2689
+ const centerX = rect.left + rect.width / 2;
2690
+ const centerY = rect.top + rect.height / 2;
2691
+ const deltaX = e.clientX - centerX;
2692
+ const deltaY = e.clientY - centerY;
2693
+ const distance = Math.sqrt(deltaX * deltaX + deltaY * deltaY);
2694
+ if (distance < range) {
2695
+ x.set(deltaX * strength);
2696
+ y.set(deltaY * strength);
2697
+ }
2698
+ };
2699
+ const handleMouseLeave2 = () => {
2700
+ setIsHovered(false);
2701
+ x.set(0);
2702
+ y.set(0);
2703
+ };
2704
+ const handleMouseEnter = () => {
2705
+ setIsHovered(true);
2706
+ };
2707
+ return /* @__PURE__ */ jsxs(
2708
+ motion.button,
2709
+ {
2710
+ ref: (node) => {
2711
+ buttonRef.current = node;
2712
+ if (typeof ref === "function") {
2713
+ ref(node);
2714
+ } else if (ref) {
2715
+ ref.current = node;
2716
+ }
2717
+ },
2718
+ className: cn(
2719
+ "relative inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50",
2720
+ "bg-primary text-primary-foreground shadow hover:bg-primary/90",
2721
+ "h-9 px-4 py-2",
2722
+ className
2723
+ ),
2724
+ onMouseMove: handleMouseMove2,
2725
+ onMouseLeave: handleMouseLeave2,
2726
+ onMouseEnter: handleMouseEnter,
2727
+ style: {
2728
+ x: springX,
2729
+ y: springY,
2730
+ rotateX,
2731
+ rotateY,
2732
+ transformPerspective: 1e3
2733
+ },
2734
+ whileHover: { scale: 1.05 },
2735
+ whileTap: { scale: 0.95 },
2736
+ animate: {
2737
+ rotateX: isHovered ? rotateX : 0,
2738
+ rotateY: isHovered ? rotateY : 0
2739
+ },
2740
+ transition: { duration: 0.3 },
2741
+ ...props,
2742
+ children: [
2743
+ /* @__PURE__ */ jsx(
2744
+ motion.div,
2745
+ {
2746
+ className: "relative z-10",
2747
+ animate: {
2748
+ scale: isHovered ? 1.02 : 1
2749
+ },
2750
+ transition: { duration: 0.2 },
2751
+ children
2752
+ }
2753
+ ),
2754
+ /* @__PURE__ */ jsx(
2755
+ motion.div,
2756
+ {
2757
+ className: "absolute inset-0 rounded-md bg-primary/20 blur-md",
2758
+ animate: {
2759
+ opacity: isHovered ? 0.8 : 0,
2760
+ scale: isHovered ? 1.1 : 1
2761
+ },
2762
+ transition: { duration: 0.3 }
2763
+ }
2764
+ )
2765
+ ]
2766
+ }
2767
+ );
2768
+ }
2769
+ );
2770
+ MagneticButtonInternal.displayName = "MagneticButtonInternal";
2771
+ var MagneticButton = React55__default.forwardRef(
2772
+ ({ className, ...props }, ref) => {
2773
+ const docsProAccess = { hasAccess: true };
2774
+ const { hasProAccess, isLoading } = useSubscription();
2775
+ if (!docsProAccess.isDocsMode && !isLoading && !hasProAccess) {
2776
+ return /* @__PURE__ */ jsx(Card, { className: cn("w-fit", className), children: /* @__PURE__ */ jsx(CardContent, { className: "py-6 text-center", children: /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
2777
+ /* @__PURE__ */ jsx("div", { className: "rounded-full bg-purple-100 dark:bg-purple-900/30 p-3 w-fit mx-auto", children: /* @__PURE__ */ jsx(Lock, { className: "h-6 w-6 text-purple-600 dark:text-purple-400" }) }),
2778
+ /* @__PURE__ */ jsxs("div", { children: [
2779
+ /* @__PURE__ */ jsx("h3", { className: "font-semibold text-sm mb-2", children: "Pro Feature" }),
2780
+ /* @__PURE__ */ jsx("p", { className: "text-muted-foreground text-xs mb-4", children: "Magnetic Button is available exclusively to MoonUI Pro subscribers." }),
2781
+ /* @__PURE__ */ jsx("a", { href: "/pricing", children: /* @__PURE__ */ jsxs(Button, { size: "sm", children: [
2782
+ /* @__PURE__ */ jsx(Sparkles, { className: "mr-2 h-4 w-4" }),
2783
+ "Upgrade to Pro"
2784
+ ] }) })
2785
+ ] })
2786
+ ] }) }) });
2787
+ }
2788
+ return /* @__PURE__ */ jsx(MagneticButtonInternal, { className, ref, ...props });
2789
+ }
2790
+ );
2791
+ MagneticButton.displayName = "MagneticButton";
2792
+ var PinchZoomInternal = React55__default.forwardRef(
2793
+ ({
2794
+ children,
2795
+ minZoom = 0.5,
2796
+ maxZoom = 3,
2797
+ initialZoom = 1,
2798
+ className,
2799
+ contentClassName,
2800
+ onZoomChange,
2801
+ ...props
2802
+ }, ref) => {
2803
+ const containerRef = useRef(null);
2804
+ const [isDragging, setIsDragging] = useState(false);
2805
+ const scale = useMotionValue(initialZoom);
2806
+ const x = useMotionValue(0);
2807
+ const y = useMotionValue(0);
2808
+ const constrainedScale = useTransform(scale, (value) => {
2809
+ return Math.min(Math.max(value, minZoom), maxZoom);
2810
+ });
2811
+ const handleWheel = useCallback((event) => {
2812
+ event.preventDefault();
2813
+ const delta = -event.deltaY / 1e3;
2814
+ const currentScale = scale.get();
2815
+ const newScale = Math.min(Math.max(currentScale + delta, minZoom), maxZoom);
2816
+ animate(scale, newScale, { duration: 0.2 });
2817
+ onZoomChange?.(newScale);
2818
+ }, [scale, minZoom, maxZoom, onZoomChange]);
2819
+ const handleDoubleClick2 = useCallback((event) => {
2820
+ event.preventDefault();
2821
+ const currentScale = scale.get();
2822
+ const newScale = currentScale > 1 ? 1 : 2;
2823
+ animate(scale, Math.min(Math.max(newScale, minZoom), maxZoom), {
2824
+ duration: 0.3,
2825
+ type: "spring",
2826
+ stiffness: 300
2827
+ });
2828
+ if (newScale === 1) {
2829
+ animate(x, 0, { duration: 0.3 });
2830
+ animate(y, 0, { duration: 0.3 });
2831
+ }
2832
+ onZoomChange?.(newScale);
2833
+ }, [scale, x, y, minZoom, maxZoom, onZoomChange]);
2834
+ const resetZoom = useCallback(() => {
2835
+ animate(scale, initialZoom, { duration: 0.3 });
2836
+ animate(x, 0, { duration: 0.3 });
2837
+ animate(y, 0, { duration: 0.3 });
2838
+ onZoomChange?.(initialZoom);
2839
+ }, [scale, x, y, initialZoom, onZoomChange]);
2840
+ return /* @__PURE__ */ jsxs(
2841
+ "div",
2842
+ {
2843
+ ref,
2844
+ className: cn(
2845
+ "relative overflow-hidden touch-none select-none",
2846
+ "cursor-grab active:cursor-grabbing",
2847
+ className
2848
+ ),
2849
+ onWheel: handleWheel,
2850
+ onDoubleClick: handleDoubleClick2,
2851
+ ...props,
2852
+ children: [
2853
+ /* @__PURE__ */ jsx(
2854
+ motion.div,
2855
+ {
2856
+ ref: containerRef,
2857
+ drag: true,
2858
+ dragElastic: 0,
2859
+ dragMomentum: false,
2860
+ onDragStart: () => setIsDragging(true),
2861
+ onDragEnd: () => setIsDragging(false),
2862
+ style: {
2863
+ scale: constrainedScale,
2864
+ x,
2865
+ y
2866
+ },
2867
+ className: cn(
2868
+ "w-full h-full flex items-center justify-center",
2869
+ isDragging && "cursor-grabbing",
2870
+ contentClassName
2871
+ ),
2872
+ children
2873
+ }
2874
+ ),
2875
+ /* @__PURE__ */ jsx(
2876
+ "button",
2877
+ {
2878
+ onClick: resetZoom,
2879
+ className: cn(
2880
+ "absolute bottom-4 right-4 px-3 py-1 bg-background/80 backdrop-blur-sm",
2881
+ "border rounded-md text-sm hover:bg-background/90 transition-colors",
2882
+ "opacity-0 hover:opacity-100 focus:opacity-100"
2883
+ ),
2884
+ children: "Reset"
2885
+ }
2886
+ )
2887
+ ]
2888
+ }
2889
+ );
2890
+ }
2891
+ );
2892
+ PinchZoomInternal.displayName = "PinchZoomInternal";
2893
+ var PinchZoom = React55__default.forwardRef(
2894
+ ({ className, ...props }, ref) => {
2895
+ const docsProAccess = { hasAccess: true };
2896
+ const { hasProAccess, isLoading } = useSubscription();
2897
+ if (!docsProAccess.isDocsMode && !isLoading && !hasProAccess) {
2898
+ return /* @__PURE__ */ jsx(Card, { className: cn("w-fit", className), children: /* @__PURE__ */ jsx(CardContent, { className: "py-6 text-center", children: /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
2899
+ /* @__PURE__ */ jsx("div", { className: "rounded-full bg-purple-100 dark:bg-purple-900/30 p-3 w-fit mx-auto", children: /* @__PURE__ */ jsx(Lock, { className: "h-6 w-6 text-purple-600 dark:text-purple-400" }) }),
2900
+ /* @__PURE__ */ jsxs("div", { children: [
2901
+ /* @__PURE__ */ jsx("h3", { className: "font-semibold text-sm mb-2", children: "Pro Feature" }),
2902
+ /* @__PURE__ */ jsx("p", { className: "text-muted-foreground text-xs mb-4", children: "Pinch Zoom is available exclusively to MoonUI Pro subscribers." }),
2903
+ /* @__PURE__ */ jsx("a", { href: "/pricing", children: /* @__PURE__ */ jsxs(Button, { size: "sm", children: [
2904
+ /* @__PURE__ */ jsx(Sparkles, { className: "mr-2 h-4 w-4" }),
2905
+ "Upgrade to Pro"
2906
+ ] }) })
2907
+ ] })
2908
+ ] }) }) });
2909
+ }
2910
+ return /* @__PURE__ */ jsx(PinchZoomInternal, { className, ref, ...props });
2911
+ }
2912
+ );
2913
+ PinchZoom.displayName = "PinchZoom";
2914
+ var SpotlightCardInternal = React55__default.forwardRef(
2915
+ ({
2916
+ children,
2917
+ className,
2918
+ spotlightColor = "rgba(255, 255, 255, 0.25)",
2919
+ spotlightSize = 300,
2920
+ intensity = 0.8,
2921
+ borderGlow = true,
2922
+ ...props
2923
+ }, ref) => {
2924
+ const cardRef = useRef(null);
2925
+ const [mousePosition, setMousePosition] = useState({ x: 0, y: 0 });
2926
+ const [isHovered, setIsHovered] = useState(false);
2927
+ const handleMouseMove2 = (e) => {
2928
+ if (!cardRef.current)
2929
+ return;
2930
+ const rect = cardRef.current.getBoundingClientRect();
2931
+ const x = e.clientX - rect.left;
2932
+ const y = e.clientY - rect.top;
2933
+ setMousePosition({ x, y });
2934
+ };
2935
+ const handleMouseEnter = () => {
2936
+ setIsHovered(true);
2937
+ };
2938
+ const handleMouseLeave2 = () => {
2939
+ setIsHovered(false);
2940
+ };
2941
+ return /* @__PURE__ */ jsxs(
2942
+ motion.div,
2943
+ {
2944
+ ref: (node) => {
2945
+ cardRef.current = node;
2946
+ if (typeof ref === "function") {
2947
+ ref(node);
2948
+ } else if (ref) {
2949
+ ref.current = node;
2950
+ }
2951
+ },
2952
+ className: cn(
2953
+ "relative overflow-hidden rounded-lg border bg-card text-card-foreground shadow-sm",
2954
+ className
2955
+ ),
2956
+ onMouseMove: handleMouseMove2,
2957
+ onMouseEnter: handleMouseEnter,
2958
+ onMouseLeave: handleMouseLeave2,
2959
+ whileHover: { scale: 1.02 },
2960
+ transition: { duration: 0.2 },
2961
+ ...props,
2962
+ children: [
2963
+ /* @__PURE__ */ jsx(
2964
+ motion.div,
2965
+ {
2966
+ className: "absolute inset-0 pointer-events-none",
2967
+ animate: {
2968
+ opacity: isHovered ? intensity : 0
2969
+ },
2970
+ transition: { duration: 0.3 },
2971
+ style: {
2972
+ background: `radial-gradient(${spotlightSize}px circle at ${mousePosition.x}px ${mousePosition.y}px, ${spotlightColor}, transparent 70%)`
2973
+ }
2974
+ }
2975
+ ),
2976
+ /* @__PURE__ */ jsx(
2977
+ motion.div,
2978
+ {
2979
+ className: "absolute inset-0 pointer-events-none",
2980
+ animate: {
2981
+ opacity: isHovered ? intensity * 0.5 : 0
2982
+ },
2983
+ transition: { duration: 0.4, delay: 0.1 },
2984
+ style: {
2985
+ background: `radial-gradient(${spotlightSize * 1.5}px circle at ${mousePosition.x}px ${mousePosition.y}px, ${spotlightColor.replace("0.25", "0.1")}, transparent 80%)`
2986
+ }
2987
+ }
2988
+ ),
2989
+ borderGlow && /* @__PURE__ */ jsx(
2990
+ motion.div,
2991
+ {
2992
+ className: "absolute inset-0 rounded-lg pointer-events-none",
2993
+ animate: {
2994
+ opacity: isHovered ? 0.6 : 0
2995
+ },
2996
+ transition: { duration: 0.3 },
2997
+ style: {
2998
+ background: `linear-gradient(135deg, transparent 30%, ${spotlightColor.replace("0.25", "0.4")} 50%, transparent 70%)`,
2999
+ backgroundSize: "200% 200%",
3000
+ backgroundPosition: `${mousePosition.x / cardRef.current?.offsetWidth * 100}% ${mousePosition.y / cardRef.current?.offsetHeight * 100}%`
3001
+ }
3002
+ }
3003
+ ),
3004
+ /* @__PURE__ */ jsx("div", { className: "relative z-10", children }),
3005
+ /* @__PURE__ */ jsx(
3006
+ motion.div,
3007
+ {
3008
+ className: "absolute inset-0 pointer-events-none",
3009
+ animate: {
3010
+ opacity: isHovered ? 0.3 : 0
3011
+ },
3012
+ transition: { duration: 0.5 },
3013
+ children: [...Array(3)].map((_, i) => /* @__PURE__ */ jsx(
3014
+ motion.div,
3015
+ {
3016
+ className: "absolute w-1 h-1 bg-white rounded-full",
3017
+ animate: isHovered ? {
3018
+ x: [mousePosition.x, mousePosition.x + Math.random() * 100 - 50],
3019
+ y: [mousePosition.y, mousePosition.y + Math.random() * 100 - 50],
3020
+ opacity: [0, 1, 0],
3021
+ scale: [0, 1, 0]
3022
+ } : {},
3023
+ transition: {
3024
+ duration: 2,
3025
+ delay: i * 0.2,
3026
+ repeat: isHovered ? Infinity : 0,
3027
+ ease: "easeOut"
3028
+ },
3029
+ style: {
3030
+ left: mousePosition.x,
3031
+ top: mousePosition.y
3032
+ }
3033
+ },
3034
+ i
3035
+ ))
3036
+ }
3037
+ )
3038
+ ]
3039
+ }
3040
+ );
3041
+ }
3042
+ );
3043
+ SpotlightCardInternal.displayName = "SpotlightCardInternal";
3044
+ var SpotlightCard = React55__default.forwardRef(
3045
+ ({ className, ...props }, ref) => {
3046
+ const docsProAccess = { hasAccess: true };
3047
+ const { hasProAccess, isLoading } = useSubscription();
3048
+ if (!docsProAccess.isDocsMode && !isLoading && !hasProAccess) {
3049
+ return /* @__PURE__ */ jsx(Card, { className: cn("w-fit", className), children: /* @__PURE__ */ jsx(CardContent, { className: "py-6 text-center", children: /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
3050
+ /* @__PURE__ */ jsx("div", { className: "rounded-full bg-purple-100 dark:bg-purple-900/30 p-3 w-fit mx-auto", children: /* @__PURE__ */ jsx(Lock, { className: "h-6 w-6 text-purple-600 dark:text-purple-400" }) }),
3051
+ /* @__PURE__ */ jsxs("div", { children: [
3052
+ /* @__PURE__ */ jsx("h3", { className: "font-semibold text-sm mb-2", children: "Pro Feature" }),
3053
+ /* @__PURE__ */ jsx("p", { className: "text-muted-foreground text-xs mb-4", children: "Spotlight Card is available exclusively to MoonUI Pro subscribers." }),
3054
+ /* @__PURE__ */ jsx("a", { href: "/pricing", children: /* @__PURE__ */ jsxs(Button, { size: "sm", children: [
3055
+ /* @__PURE__ */ jsx(Sparkles, { className: "mr-2 h-4 w-4" }),
3056
+ "Upgrade to Pro"
3057
+ ] }) })
3058
+ ] })
3059
+ ] }) }) });
3060
+ }
3061
+ return /* @__PURE__ */ jsx(SpotlightCardInternal, { className, ref, ...props });
3062
+ }
3063
+ );
3064
+ SpotlightCard.displayName = "SpotlightCard";
2154
3065
  var badgeVariants = cva(
2155
3066
  [
2156
3067
  "inline-flex items-center gap-1.5",
@@ -2314,22 +3225,6 @@ function Badge({
2314
3225
  }
2315
3226
  );
2316
3227
  }
2317
-
2318
- // src/hooks/use-subscription.ts
2319
- function useSubscription() {
2320
- return {
2321
- isLoading: false,
2322
- isAuthenticated: true,
2323
- isAdmin: false,
2324
- hasProAccess: true,
2325
- // Pro package kullanıcıları varsayılan olarak pro erişime sahip
2326
- subscriptionPlan: "pro",
2327
- subscription: {
2328
- status: "active",
2329
- plan: "pro"
2330
- }
2331
- };
2332
- }
2333
3228
  var inputWrapperVariants = cva(
2334
3229
  "group relative flex items-center w-full transition-colors",
2335
3230
  {
@@ -2403,7 +3298,7 @@ var inputVariants = cva(
2403
3298
  }
2404
3299
  }
2405
3300
  );
2406
- var Input = React50.forwardRef(
3301
+ var Input = React55.forwardRef(
2407
3302
  ({
2408
3303
  className,
2409
3304
  wrapperClassName,
@@ -2506,26 +3401,26 @@ function composeRefs(...refs) {
2506
3401
  };
2507
3402
  }
2508
3403
  function useComposedRefs(...refs) {
2509
- return React50.useCallback(composeRefs(...refs), refs);
3404
+ return React55.useCallback(composeRefs(...refs), refs);
2510
3405
  }
2511
3406
  function createSlot(ownerName) {
2512
3407
  const SlotClone = /* @__PURE__ */ createSlotClone(ownerName);
2513
- const Slot22 = React50.forwardRef((props, forwardedRef) => {
3408
+ const Slot22 = React55.forwardRef((props, forwardedRef) => {
2514
3409
  const { children, ...slotProps } = props;
2515
- const childrenArray = React50.Children.toArray(children);
3410
+ const childrenArray = React55.Children.toArray(children);
2516
3411
  const slottable = childrenArray.find(isSlottable);
2517
3412
  if (slottable) {
2518
3413
  const newElement = slottable.props.children;
2519
3414
  const newChildren = childrenArray.map((child) => {
2520
3415
  if (child === slottable) {
2521
- if (React50.Children.count(newElement) > 1)
2522
- return React50.Children.only(null);
2523
- return React50.isValidElement(newElement) ? newElement.props.children : null;
3416
+ if (React55.Children.count(newElement) > 1)
3417
+ return React55.Children.only(null);
3418
+ return React55.isValidElement(newElement) ? newElement.props.children : null;
2524
3419
  } else {
2525
3420
  return child;
2526
3421
  }
2527
3422
  });
2528
- return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children: React50.isValidElement(newElement) ? React50.cloneElement(newElement, void 0, newChildren) : null });
3423
+ return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children: React55.isValidElement(newElement) ? React55.cloneElement(newElement, void 0, newChildren) : null });
2529
3424
  }
2530
3425
  return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children });
2531
3426
  });
@@ -2533,24 +3428,24 @@ function createSlot(ownerName) {
2533
3428
  return Slot22;
2534
3429
  }
2535
3430
  function createSlotClone(ownerName) {
2536
- const SlotClone = React50.forwardRef((props, forwardedRef) => {
3431
+ const SlotClone = React55.forwardRef((props, forwardedRef) => {
2537
3432
  const { children, ...slotProps } = props;
2538
- if (React50.isValidElement(children)) {
3433
+ if (React55.isValidElement(children)) {
2539
3434
  const childrenRef = getElementRef(children);
2540
3435
  const props2 = mergeProps(slotProps, children.props);
2541
- if (children.type !== React50.Fragment) {
3436
+ if (children.type !== React55.Fragment) {
2542
3437
  props2.ref = forwardedRef ? composeRefs(forwardedRef, childrenRef) : childrenRef;
2543
3438
  }
2544
- return React50.cloneElement(children, props2);
3439
+ return React55.cloneElement(children, props2);
2545
3440
  }
2546
- return React50.Children.count(children) > 1 ? React50.Children.only(null) : null;
3441
+ return React55.Children.count(children) > 1 ? React55.Children.only(null) : null;
2547
3442
  });
2548
3443
  SlotClone.displayName = `${ownerName}.SlotClone`;
2549
3444
  return SlotClone;
2550
3445
  }
2551
3446
  var SLOTTABLE_IDENTIFIER = Symbol("radix.slottable");
2552
3447
  function isSlottable(child) {
2553
- return React50.isValidElement(child) && typeof child.type === "function" && "__radixId" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER;
3448
+ return React55.isValidElement(child) && typeof child.type === "function" && "__radixId" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER;
2554
3449
  }
2555
3450
  function mergeProps(slotProps, childProps) {
2556
3451
  const overrideProps = { ...childProps };
@@ -2610,7 +3505,7 @@ var NODES = [
2610
3505
  ];
2611
3506
  var Primitive = NODES.reduce((primitive, node) => {
2612
3507
  const Slot4 = createSlot(`Primitive.${node}`);
2613
- const Node4 = React50.forwardRef((props, forwardedRef) => {
3508
+ const Node4 = React55.forwardRef((props, forwardedRef) => {
2614
3509
  const { asChild, ...primitiveProps } = props;
2615
3510
  const Comp = asChild ? Slot4 : node;
2616
3511
  if (typeof window !== "undefined") {
@@ -2626,7 +3521,7 @@ function dispatchDiscreteCustomEvent(target, event) {
2626
3521
  ReactDOM.flushSync(() => target.dispatchEvent(event));
2627
3522
  }
2628
3523
  var NAME = "Label";
2629
- var Label = React50.forwardRef((props, forwardedRef) => {
3524
+ var Label = React55.forwardRef((props, forwardedRef) => {
2630
3525
  return /* @__PURE__ */ jsx(
2631
3526
  Primitive.label,
2632
3527
  {
@@ -2648,7 +3543,7 @@ var Root = Label;
2648
3543
  var labelVariants = cva(
2649
3544
  "text-sm font-medium leading-none text-gray-900 dark:text-gray-200 peer-disabled:cursor-not-allowed peer-disabled:opacity-70 dark:peer-disabled:opacity-60 transition-colors duration-200"
2650
3545
  );
2651
- var Label2 = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
3546
+ var Label2 = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2652
3547
  Root,
2653
3548
  {
2654
3549
  ref,
@@ -2657,7 +3552,7 @@ var Label2 = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ *
2657
3552
  }
2658
3553
  ));
2659
3554
  Label2.displayName = Root.displayName;
2660
- var Textarea = React50__default.forwardRef(
3555
+ var Textarea = React55__default.forwardRef(
2661
3556
  ({ className, ...props }, ref) => {
2662
3557
  return /* @__PURE__ */ jsx(
2663
3558
  "textarea",
@@ -2891,45 +3786,45 @@ function $e02a7d9cb1dc128c$export$c74125a8e3af6bb2(name) {
2891
3786
  });
2892
3787
  const CollectionProvider = (props) => {
2893
3788
  const { scope, children } = props;
2894
- const ref = React50__default.useRef(null);
2895
- const itemMap = React50__default.useRef(/* @__PURE__ */ new Map()).current;
2896
- return /* @__PURE__ */ React50__default.createElement(CollectionProviderImpl, {
3789
+ const ref = React55__default.useRef(null);
3790
+ const itemMap = React55__default.useRef(/* @__PURE__ */ new Map()).current;
3791
+ return /* @__PURE__ */ React55__default.createElement(CollectionProviderImpl, {
2897
3792
  scope,
2898
3793
  itemMap,
2899
3794
  collectionRef: ref
2900
3795
  }, children);
2901
3796
  };
2902
3797
  const COLLECTION_SLOT_NAME = name + "CollectionSlot";
2903
- const CollectionSlot = /* @__PURE__ */ React50__default.forwardRef((props, forwardedRef) => {
3798
+ const CollectionSlot = /* @__PURE__ */ React55__default.forwardRef((props, forwardedRef) => {
2904
3799
  const { scope, children } = props;
2905
3800
  const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);
2906
3801
  const composedRefs = $6ed0406888f73fc4$export$c7b2cbe3552a0d05(forwardedRef, context.collectionRef);
2907
- return /* @__PURE__ */ React50__default.createElement($5e63c961fc1ce211$export$8c6ed5c666ac1360, {
3802
+ return /* @__PURE__ */ React55__default.createElement($5e63c961fc1ce211$export$8c6ed5c666ac1360, {
2908
3803
  ref: composedRefs
2909
3804
  }, children);
2910
3805
  });
2911
3806
  const ITEM_SLOT_NAME = name + "CollectionItemSlot";
2912
3807
  const ITEM_DATA_ATTR = "data-radix-collection-item";
2913
- const CollectionItemSlot = /* @__PURE__ */ React50__default.forwardRef((props, forwardedRef) => {
3808
+ const CollectionItemSlot = /* @__PURE__ */ React55__default.forwardRef((props, forwardedRef) => {
2914
3809
  const { scope, children, ...itemData } = props;
2915
- const ref = React50__default.useRef(null);
3810
+ const ref = React55__default.useRef(null);
2916
3811
  const composedRefs = $6ed0406888f73fc4$export$c7b2cbe3552a0d05(forwardedRef, ref);
2917
3812
  const context = useCollectionContext(ITEM_SLOT_NAME, scope);
2918
- React50__default.useEffect(() => {
3813
+ React55__default.useEffect(() => {
2919
3814
  context.itemMap.set(ref, {
2920
3815
  ref,
2921
3816
  ...itemData
2922
3817
  });
2923
3818
  return () => void context.itemMap.delete(ref);
2924
3819
  });
2925
- return /* @__PURE__ */ React50__default.createElement($5e63c961fc1ce211$export$8c6ed5c666ac1360, {
3820
+ return /* @__PURE__ */ React55__default.createElement($5e63c961fc1ce211$export$8c6ed5c666ac1360, {
2926
3821
  [ITEM_DATA_ATTR]: "",
2927
3822
  ref: composedRefs
2928
3823
  }, children);
2929
3824
  });
2930
3825
  function useCollection4(scope) {
2931
3826
  const context = useCollectionContext(name + "CollectionConsumer", scope);
2932
- const getItems = React50__default.useCallback(() => {
3827
+ const getItems = React55__default.useCallback(() => {
2933
3828
  const collectionNode = context.collectionRef.current;
2934
3829
  if (!collectionNode)
2935
3830
  return [];
@@ -3516,10 +4411,10 @@ var $9f79659886946c16$export$e5c5a5f917a5871c = Boolean(globalThis === null || g
3516
4411
  };
3517
4412
 
3518
4413
  // node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-id/dist/index.mjs
3519
- var $1746a345f3d73bb7$var$useReactId = React50["useId".toString()] || (() => void 0);
4414
+ var $1746a345f3d73bb7$var$useReactId = React55["useId".toString()] || (() => void 0);
3520
4415
  var $1746a345f3d73bb7$var$count = 0;
3521
4416
  function $1746a345f3d73bb7$export$f680877a34711e37(deterministicId) {
3522
- const [id, setId] = React50.useState($1746a345f3d73bb7$var$useReactId());
4417
+ const [id, setId] = React55.useState($1746a345f3d73bb7$var$useReactId());
3523
4418
  $9f79659886946c16$export$e5c5a5f917a5871c(() => {
3524
4419
  if (!deterministicId)
3525
4420
  setId(
@@ -5194,7 +6089,7 @@ function roundByDPR(element, value) {
5194
6089
  return Math.round(value * dpr) / dpr;
5195
6090
  }
5196
6091
  function useLatestRef(value) {
5197
- const ref = React50.useRef(value);
6092
+ const ref = React55.useRef(value);
5198
6093
  index(() => {
5199
6094
  ref.current = value;
5200
6095
  });
@@ -5217,7 +6112,7 @@ function useFloating(options) {
5217
6112
  whileElementsMounted,
5218
6113
  open
5219
6114
  } = options;
5220
- const [data, setData] = React50.useState({
6115
+ const [data, setData] = React55.useState({
5221
6116
  x: 0,
5222
6117
  y: 0,
5223
6118
  strategy,
@@ -5225,19 +6120,19 @@ function useFloating(options) {
5225
6120
  middlewareData: {},
5226
6121
  isPositioned: false
5227
6122
  });
5228
- const [latestMiddleware, setLatestMiddleware] = React50.useState(middleware);
6123
+ const [latestMiddleware, setLatestMiddleware] = React55.useState(middleware);
5229
6124
  if (!deepEqual(latestMiddleware, middleware)) {
5230
6125
  setLatestMiddleware(middleware);
5231
6126
  }
5232
- const [_reference, _setReference] = React50.useState(null);
5233
- const [_floating, _setFloating] = React50.useState(null);
5234
- const setReference = React50.useCallback((node) => {
6127
+ const [_reference, _setReference] = React55.useState(null);
6128
+ const [_floating, _setFloating] = React55.useState(null);
6129
+ const setReference = React55.useCallback((node) => {
5235
6130
  if (node !== referenceRef.current) {
5236
6131
  referenceRef.current = node;
5237
6132
  _setReference(node);
5238
6133
  }
5239
6134
  }, []);
5240
- const setFloating = React50.useCallback((node) => {
6135
+ const setFloating = React55.useCallback((node) => {
5241
6136
  if (node !== floatingRef.current) {
5242
6137
  floatingRef.current = node;
5243
6138
  _setFloating(node);
@@ -5245,14 +6140,14 @@ function useFloating(options) {
5245
6140
  }, []);
5246
6141
  const referenceEl = externalReference || _reference;
5247
6142
  const floatingEl = externalFloating || _floating;
5248
- const referenceRef = React50.useRef(null);
5249
- const floatingRef = React50.useRef(null);
5250
- const dataRef = React50.useRef(data);
6143
+ const referenceRef = React55.useRef(null);
6144
+ const floatingRef = React55.useRef(null);
6145
+ const dataRef = React55.useRef(data);
5251
6146
  const hasWhileElementsMounted = whileElementsMounted != null;
5252
6147
  const whileElementsMountedRef = useLatestRef(whileElementsMounted);
5253
6148
  const platformRef = useLatestRef(platform2);
5254
6149
  const openRef = useLatestRef(open);
5255
- const update = React50.useCallback(() => {
6150
+ const update = React55.useCallback(() => {
5256
6151
  if (!referenceRef.current || !floatingRef.current) {
5257
6152
  return;
5258
6153
  }
@@ -5290,7 +6185,7 @@ function useFloating(options) {
5290
6185
  }));
5291
6186
  }
5292
6187
  }, [open]);
5293
- const isMountedRef = React50.useRef(false);
6188
+ const isMountedRef = React55.useRef(false);
5294
6189
  index(() => {
5295
6190
  isMountedRef.current = true;
5296
6191
  return () => {
@@ -5309,17 +6204,17 @@ function useFloating(options) {
5309
6204
  update();
5310
6205
  }
5311
6206
  }, [referenceEl, floatingEl, update, whileElementsMountedRef, hasWhileElementsMounted]);
5312
- const refs = React50.useMemo(() => ({
6207
+ const refs = React55.useMemo(() => ({
5313
6208
  reference: referenceRef,
5314
6209
  floating: floatingRef,
5315
6210
  setReference,
5316
6211
  setFloating
5317
6212
  }), [setReference, setFloating]);
5318
- const elements = React50.useMemo(() => ({
6213
+ const elements = React55.useMemo(() => ({
5319
6214
  reference: referenceEl,
5320
6215
  floating: floatingEl
5321
6216
  }), [referenceEl, floatingEl]);
5322
- const floatingStyles = React50.useMemo(() => {
6217
+ const floatingStyles = React55.useMemo(() => {
5323
6218
  const initialStyles = {
5324
6219
  position: strategy,
5325
6220
  left: 0,
@@ -5345,7 +6240,7 @@ function useFloating(options) {
5345
6240
  top: y
5346
6241
  };
5347
6242
  }, [strategy, transform, elements.floating, data.x, data.y]);
5348
- return React50.useMemo(() => ({
6243
+ return React55.useMemo(() => ({
5349
6244
  ...data,
5350
6245
  update,
5351
6246
  refs,
@@ -6077,7 +6972,7 @@ function useCallbackRef(initialValue, callback) {
6077
6972
  ref.callback = callback;
6078
6973
  return ref.facade;
6079
6974
  }
6080
- var useIsomorphicLayoutEffect = typeof window !== "undefined" ? React50.useLayoutEffect : React50.useEffect;
6975
+ var useIsomorphicLayoutEffect = typeof window !== "undefined" ? React55.useLayoutEffect : React55.useEffect;
6081
6976
  var currentValues = /* @__PURE__ */ new WeakMap();
6082
6977
  function useMergeRefs(refs, defaultValue) {
6083
6978
  var callbackRef = useCallbackRef(defaultValue || null, function(newValue) {
@@ -6201,7 +7096,7 @@ var SideCar = function(_a2) {
6201
7096
  if (!Target) {
6202
7097
  throw new Error("Sidecar medium not found");
6203
7098
  }
6204
- return React50.createElement(Target, __assign({}, rest));
7099
+ return React55.createElement(Target, __assign({}, rest));
6205
7100
  };
6206
7101
  SideCar.isSideCarExport = true;
6207
7102
  function exportSidecar(medium, exported) {
@@ -6216,9 +7111,9 @@ var effectCar = createSidecarMedium();
6216
7111
  var nothing = function() {
6217
7112
  return;
6218
7113
  };
6219
- var RemoveScroll = React50.forwardRef(function(props, parentRef) {
6220
- var ref = React50.useRef(null);
6221
- var _a2 = React50.useState({
7114
+ var RemoveScroll = React55.forwardRef(function(props, parentRef) {
7115
+ var ref = React55.useRef(null);
7116
+ var _a2 = React55.useState({
6222
7117
  onScrollCapture: nothing,
6223
7118
  onWheelCapture: nothing,
6224
7119
  onTouchMoveCapture: nothing
@@ -6227,11 +7122,11 @@ var RemoveScroll = React50.forwardRef(function(props, parentRef) {
6227
7122
  var SideCar2 = sideCar;
6228
7123
  var containerRef = useMergeRefs([ref, parentRef]);
6229
7124
  var containerProps = __assign(__assign({}, rest), callbacks);
6230
- return React50.createElement(
6231
- React50.Fragment,
7125
+ return React55.createElement(
7126
+ React55.Fragment,
6232
7127
  null,
6233
- enabled && React50.createElement(SideCar2, { sideCar: effectCar, removeScrollBar, shards, noIsolation, inert, setCallbacks, allowPinchZoom: !!allowPinchZoom, lockRef: ref }),
6234
- forwardProps ? React50.cloneElement(React50.Children.only(children), __assign(__assign({}, containerProps), { ref: containerRef })) : React50.createElement(Container, __assign({}, containerProps, { className, ref: containerRef }), children)
7128
+ enabled && React55.createElement(SideCar2, { sideCar: effectCar, removeScrollBar, shards, noIsolation, inert, setCallbacks, allowPinchZoom: !!allowPinchZoom, lockRef: ref }),
7129
+ forwardProps ? React55.cloneElement(React55.Children.only(children), __assign(__assign({}, containerProps), { ref: containerRef })) : React55.createElement(Container, __assign({}, containerProps, { className, ref: containerRef }), children)
6235
7130
  );
6236
7131
  });
6237
7132
  RemoveScroll.defaultProps = {
@@ -6300,7 +7195,7 @@ var stylesheetSingleton = function() {
6300
7195
  var styleHookSingleton = function() {
6301
7196
  var sheet = stylesheetSingleton();
6302
7197
  return function(styles, isDynamic) {
6303
- React50.useEffect(function() {
7198
+ React55.useEffect(function() {
6304
7199
  sheet.add(styles);
6305
7200
  return function() {
6306
7201
  sheet.remove();
@@ -6374,7 +7269,7 @@ var getCurrentUseCounter = function() {
6374
7269
  return isFinite(counter) ? counter : 0;
6375
7270
  };
6376
7271
  var useLockAttribute = function() {
6377
- React50.useEffect(function() {
7272
+ React55.useEffect(function() {
6378
7273
  document.body.setAttribute(lockAttribute, (getCurrentUseCounter() + 1).toString());
6379
7274
  return function() {
6380
7275
  var newCounter = getCurrentUseCounter() - 1;
@@ -6389,10 +7284,10 @@ var useLockAttribute = function() {
6389
7284
  var RemoveScrollBar = function(_a2) {
6390
7285
  var noRelative = _a2.noRelative, noImportant = _a2.noImportant, _b = _a2.gapMode, gapMode = _b === void 0 ? "margin" : _b;
6391
7286
  useLockAttribute();
6392
- var gap = React50.useMemo(function() {
7287
+ var gap = React55.useMemo(function() {
6393
7288
  return getGapWidth(gapMode);
6394
7289
  }, [gapMode]);
6395
- return React50.createElement(Style, { styles: getStyles(gap, !noRelative, gapMode, !noImportant ? "!important" : "") });
7290
+ return React55.createElement(Style, { styles: getStyles(gap, !noRelative, gapMode, !noImportant ? "!important" : "") });
6396
7291
  };
6397
7292
 
6398
7293
  // node_modules/@radix-ui/react-select/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js
@@ -6525,18 +7420,18 @@ var generateStyle = function(id) {
6525
7420
  var idCounter = 0;
6526
7421
  var lockStack = [];
6527
7422
  function RemoveScrollSideCar(props) {
6528
- var shouldPreventQueue = React50.useRef([]);
6529
- var touchStartRef = React50.useRef([0, 0]);
6530
- var activeAxis = React50.useRef();
6531
- var id = React50.useState(idCounter++)[0];
6532
- var Style2 = React50.useState(function() {
7423
+ var shouldPreventQueue = React55.useRef([]);
7424
+ var touchStartRef = React55.useRef([0, 0]);
7425
+ var activeAxis = React55.useRef();
7426
+ var id = React55.useState(idCounter++)[0];
7427
+ var Style2 = React55.useState(function() {
6533
7428
  return styleSingleton();
6534
7429
  })[0];
6535
- var lastProps = React50.useRef(props);
6536
- React50.useEffect(function() {
7430
+ var lastProps = React55.useRef(props);
7431
+ React55.useEffect(function() {
6537
7432
  lastProps.current = props;
6538
7433
  }, [props]);
6539
- React50.useEffect(function() {
7434
+ React55.useEffect(function() {
6540
7435
  if (props.inert) {
6541
7436
  document.body.classList.add("block-interactivity-".concat(id));
6542
7437
  var allow_1 = __spreadArray([props.lockRef.current], (props.shards || []).map(extractRef), true).filter(Boolean);
@@ -6552,7 +7447,7 @@ function RemoveScrollSideCar(props) {
6552
7447
  }
6553
7448
  return;
6554
7449
  }, [props.inert, props.lockRef.current, props.shards]);
6555
- var shouldCancelEvent = React50.useCallback(function(event, parent) {
7450
+ var shouldCancelEvent = React55.useCallback(function(event, parent) {
6556
7451
  if ("touches" in event && event.touches.length === 2) {
6557
7452
  return !lastProps.current.allowPinchZoom;
6558
7453
  }
@@ -6588,7 +7483,7 @@ function RemoveScrollSideCar(props) {
6588
7483
  var cancelingAxis = activeAxis.current || currentAxis;
6589
7484
  return handleScroll(cancelingAxis, parent, event, cancelingAxis === "h" ? deltaX : deltaY, true);
6590
7485
  }, []);
6591
- var shouldPrevent = React50.useCallback(function(_event) {
7486
+ var shouldPrevent = React55.useCallback(function(_event) {
6592
7487
  var event = _event;
6593
7488
  if (!lockStack.length || lockStack[lockStack.length - 1] !== Style2) {
6594
7489
  return;
@@ -6615,7 +7510,7 @@ function RemoveScrollSideCar(props) {
6615
7510
  }
6616
7511
  }
6617
7512
  }, []);
6618
- var shouldCancel = React50.useCallback(function(name, delta, target, should) {
7513
+ var shouldCancel = React55.useCallback(function(name, delta, target, should) {
6619
7514
  var event = { name, delta, target, should };
6620
7515
  shouldPreventQueue.current.push(event);
6621
7516
  setTimeout(function() {
@@ -6624,17 +7519,17 @@ function RemoveScrollSideCar(props) {
6624
7519
  });
6625
7520
  }, 1);
6626
7521
  }, []);
6627
- var scrollTouchStart = React50.useCallback(function(event) {
7522
+ var scrollTouchStart = React55.useCallback(function(event) {
6628
7523
  touchStartRef.current = getTouchXY(event);
6629
7524
  activeAxis.current = void 0;
6630
7525
  }, []);
6631
- var scrollWheel = React50.useCallback(function(event) {
7526
+ var scrollWheel = React55.useCallback(function(event) {
6632
7527
  shouldCancel(event.type, getDeltaXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));
6633
7528
  }, []);
6634
- var scrollTouchMove = React50.useCallback(function(event) {
7529
+ var scrollTouchMove = React55.useCallback(function(event) {
6635
7530
  shouldCancel(event.type, getTouchXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));
6636
7531
  }, []);
6637
- React50.useEffect(function() {
7532
+ React55.useEffect(function() {
6638
7533
  lockStack.push(Style2);
6639
7534
  props.setCallbacks({
6640
7535
  onScrollCapture: scrollWheel,
@@ -6654,11 +7549,11 @@ function RemoveScrollSideCar(props) {
6654
7549
  };
6655
7550
  }, []);
6656
7551
  var removeScrollBar = props.removeScrollBar, inert = props.inert;
6657
- return React50.createElement(
6658
- React50.Fragment,
7552
+ return React55.createElement(
7553
+ React55.Fragment,
6659
7554
  null,
6660
- inert ? React50.createElement(Style2, { styles: generateStyle(id) }) : null,
6661
- removeScrollBar ? React50.createElement(RemoveScrollBar, { gapMode: "margin" }) : null
7555
+ inert ? React55.createElement(Style2, { styles: generateStyle(id) }) : null,
7556
+ removeScrollBar ? React55.createElement(RemoveScrollBar, { gapMode: "margin" }) : null
6662
7557
  );
6663
7558
  }
6664
7559
 
@@ -6666,8 +7561,8 @@ function RemoveScrollSideCar(props) {
6666
7561
  var sidecar_default = exportSidecar(effectCar, RemoveScrollSideCar);
6667
7562
 
6668
7563
  // node_modules/@radix-ui/react-select/node_modules/react-remove-scroll/dist/es2015/Combination.js
6669
- var ReactRemoveScroll = React50.forwardRef(function(props, ref) {
6670
- return React50.createElement(RemoveScroll, __assign({}, props, { ref, sideCar: sidecar_default }));
7564
+ var ReactRemoveScroll = React55.forwardRef(function(props, ref) {
7565
+ return React55.createElement(RemoveScroll, __assign({}, props, { ref, sideCar: sidecar_default }));
6671
7566
  });
6672
7567
  ReactRemoveScroll.classNames = RemoveScroll.classNames;
6673
7568
  var Combination_default = ReactRemoveScroll;
@@ -7757,7 +8652,7 @@ var $cc7e05a45900e73f$export$1ff3c3f08ae963c0 = $cc7e05a45900e73f$export$eba4b1d
7757
8652
  var Select = $cc7e05a45900e73f$export$be92b6f5f03c0fe9;
7758
8653
  Select.displayName = "Select";
7759
8654
  var SelectValue = $cc7e05a45900e73f$export$4c8d1a57a761ef94;
7760
- var SelectTrigger = React50.forwardRef(({ className, children, variant = "standard", size: size4 = "md", error, success, loading, leftIcon, rightIcon, ...props }, ref) => /* @__PURE__ */ jsxs(
8655
+ var SelectTrigger = React55.forwardRef(({ className, children, variant = "standard", size: size4 = "md", error, success, loading, leftIcon, rightIcon, ...props }, ref) => /* @__PURE__ */ jsxs(
7761
8656
  $cc7e05a45900e73f$export$41fb9f06171c75f4,
7762
8657
  {
7763
8658
  ref,
@@ -7799,7 +8694,7 @@ var SelectTrigger = React50.forwardRef(({ className, children, variant = "standa
7799
8694
  }
7800
8695
  ));
7801
8696
  SelectTrigger.displayName = $cc7e05a45900e73f$export$41fb9f06171c75f4.displayName;
7802
- var SelectScrollUpButton = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
8697
+ var SelectScrollUpButton = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
7803
8698
  $cc7e05a45900e73f$export$2f60d3ec9ad468f2,
7804
8699
  {
7805
8700
  ref,
@@ -7812,7 +8707,7 @@ var SelectScrollUpButton = React50.forwardRef(({ className, ...props }, ref) =>
7812
8707
  }
7813
8708
  ));
7814
8709
  SelectScrollUpButton.displayName = $cc7e05a45900e73f$export$2f60d3ec9ad468f2.displayName;
7815
- var SelectScrollDownButton = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
8710
+ var SelectScrollDownButton = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
7816
8711
  $cc7e05a45900e73f$export$bf1aedc3039c8d63,
7817
8712
  {
7818
8713
  ref,
@@ -7825,7 +8720,7 @@ var SelectScrollDownButton = React50.forwardRef(({ className, ...props }, ref) =
7825
8720
  }
7826
8721
  ));
7827
8722
  SelectScrollDownButton.displayName = $cc7e05a45900e73f$export$bf1aedc3039c8d63.displayName;
7828
- var SelectContent = React50.forwardRef(({ className, children, position = "item-aligned", ...props }, ref) => /* @__PURE__ */ jsx($cc7e05a45900e73f$export$602eac185826482c, { children: /* @__PURE__ */ jsxs(
8723
+ var SelectContent = React55.forwardRef(({ className, children, position = "item-aligned", ...props }, ref) => /* @__PURE__ */ jsx($cc7e05a45900e73f$export$602eac185826482c, { children: /* @__PURE__ */ jsxs(
7829
8724
  $cc7e05a45900e73f$export$7c6e2c02157bb7d2,
7830
8725
  {
7831
8726
  ref,
@@ -7862,7 +8757,7 @@ var SelectContent = React50.forwardRef(({ className, children, position = "item-
7862
8757
  }
7863
8758
  ) }));
7864
8759
  SelectContent.displayName = $cc7e05a45900e73f$export$7c6e2c02157bb7d2.displayName;
7865
- var SelectLabel = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
8760
+ var SelectLabel = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
7866
8761
  $cc7e05a45900e73f$export$b04be29aa201d4f5,
7867
8762
  {
7868
8763
  ref,
@@ -7871,7 +8766,7 @@ var SelectLabel = React50.forwardRef(({ className, ...props }, ref) => /* @__PUR
7871
8766
  }
7872
8767
  ));
7873
8768
  SelectLabel.displayName = $cc7e05a45900e73f$export$b04be29aa201d4f5.displayName;
7874
- var SelectItem = React50.forwardRef(({ className, children, variant = "default", size: size4 = "md", rightIcon, customIndicator, ...props }, ref) => /* @__PURE__ */ jsxs(
8769
+ var SelectItem = React55.forwardRef(({ className, children, variant = "default", size: size4 = "md", rightIcon, customIndicator, ...props }, ref) => /* @__PURE__ */ jsxs(
7875
8770
  $cc7e05a45900e73f$export$6d08773d2e66f8f2,
7876
8771
  {
7877
8772
  ref,
@@ -7898,7 +8793,7 @@ var SelectItem = React50.forwardRef(({ className, children, variant = "default",
7898
8793
  }
7899
8794
  ));
7900
8795
  SelectItem.displayName = $cc7e05a45900e73f$export$6d08773d2e66f8f2.displayName;
7901
- var SelectSeparator = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
8796
+ var SelectSeparator = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
7902
8797
  $cc7e05a45900e73f$export$1ff3c3f08ae963c0,
7903
8798
  {
7904
8799
  ref,
@@ -7918,15 +8813,15 @@ function composeEventHandlers(originalEventHandler, ourEventHandler, { checkForD
7918
8813
  };
7919
8814
  }
7920
8815
  function createContext2(rootComponentName, defaultContext) {
7921
- const Context = React50.createContext(defaultContext);
8816
+ const Context = React55.createContext(defaultContext);
7922
8817
  const Provider3 = (props) => {
7923
8818
  const { children, ...context } = props;
7924
- const value = React50.useMemo(() => context, Object.values(context));
8819
+ const value = React55.useMemo(() => context, Object.values(context));
7925
8820
  return /* @__PURE__ */ jsx(Context.Provider, { value, children });
7926
8821
  };
7927
8822
  Provider3.displayName = rootComponentName + "Provider";
7928
8823
  function useContext23(consumerName) {
7929
- const context = React50.useContext(Context);
8824
+ const context = React55.useContext(Context);
7930
8825
  if (context)
7931
8826
  return context;
7932
8827
  if (defaultContext !== void 0)
@@ -7938,19 +8833,19 @@ function createContext2(rootComponentName, defaultContext) {
7938
8833
  function createContextScope(scopeName, createContextScopeDeps = []) {
7939
8834
  let defaultContexts = [];
7940
8835
  function createContext32(rootComponentName, defaultContext) {
7941
- const BaseContext = React50.createContext(defaultContext);
8836
+ const BaseContext = React55.createContext(defaultContext);
7942
8837
  const index2 = defaultContexts.length;
7943
8838
  defaultContexts = [...defaultContexts, defaultContext];
7944
8839
  const Provider3 = (props) => {
7945
8840
  const { scope, children, ...context } = props;
7946
8841
  const Context = scope?.[scopeName]?.[index2] || BaseContext;
7947
- const value = React50.useMemo(() => context, Object.values(context));
8842
+ const value = React55.useMemo(() => context, Object.values(context));
7948
8843
  return /* @__PURE__ */ jsx(Context.Provider, { value, children });
7949
8844
  };
7950
8845
  Provider3.displayName = rootComponentName + "Provider";
7951
8846
  function useContext23(consumerName, scope) {
7952
8847
  const Context = scope?.[scopeName]?.[index2] || BaseContext;
7953
- const context = React50.useContext(Context);
8848
+ const context = React55.useContext(Context);
7954
8849
  if (context)
7955
8850
  return context;
7956
8851
  if (defaultContext !== void 0)
@@ -7961,11 +8856,11 @@ function createContextScope(scopeName, createContextScopeDeps = []) {
7961
8856
  }
7962
8857
  const createScope = () => {
7963
8858
  const scopeContexts = defaultContexts.map((defaultContext) => {
7964
- return React50.createContext(defaultContext);
8859
+ return React55.createContext(defaultContext);
7965
8860
  });
7966
8861
  return function useScope(scope) {
7967
8862
  const contexts = scope?.[scopeName] || scopeContexts;
7968
- return React50.useMemo(
8863
+ return React55.useMemo(
7969
8864
  () => ({ [`__scope${scopeName}`]: { ...scope, [scopeName]: contexts } }),
7970
8865
  [scope, contexts]
7971
8866
  );
@@ -7989,27 +8884,27 @@ function composeContextScopes(...scopes) {
7989
8884
  const currentScope = scopeProps[`__scope${scopeName}`];
7990
8885
  return { ...nextScopes2, ...currentScope };
7991
8886
  }, {});
7992
- return React50.useMemo(() => ({ [`__scope${baseScope.scopeName}`]: nextScopes }), [nextScopes]);
8887
+ return React55.useMemo(() => ({ [`__scope${baseScope.scopeName}`]: nextScopes }), [nextScopes]);
7993
8888
  };
7994
8889
  };
7995
8890
  createScope.scopeName = baseScope.scopeName;
7996
8891
  return createScope;
7997
8892
  }
7998
- var useLayoutEffect22 = globalThis?.document ? React50.useLayoutEffect : () => {
8893
+ var useLayoutEffect22 = globalThis?.document ? React55.useLayoutEffect : () => {
7999
8894
  };
8000
8895
 
8001
8896
  // node_modules/@radix-ui/react-id/dist/index.mjs
8002
- var useReactId = React50[" useId ".trim().toString()] || (() => void 0);
8897
+ var useReactId = React55[" useId ".trim().toString()] || (() => void 0);
8003
8898
  var count = 0;
8004
8899
  function useId(deterministicId) {
8005
- const [id, setId] = React50.useState(useReactId());
8900
+ const [id, setId] = React55.useState(useReactId());
8006
8901
  useLayoutEffect22(() => {
8007
8902
  if (!deterministicId)
8008
8903
  setId((reactId) => reactId ?? String(count++));
8009
8904
  }, [deterministicId]);
8010
8905
  return deterministicId || (id ? `radix-${id}` : "");
8011
8906
  }
8012
- var useInsertionEffect = React50[" useInsertionEffect ".trim().toString()] || useLayoutEffect22;
8907
+ var useInsertionEffect = React55[" useInsertionEffect ".trim().toString()] || useLayoutEffect22;
8013
8908
  function useControllableState({
8014
8909
  prop,
8015
8910
  defaultProp,
@@ -8024,8 +8919,8 @@ function useControllableState({
8024
8919
  const isControlled = prop !== void 0;
8025
8920
  const value = isControlled ? prop : uncontrolledProp;
8026
8921
  {
8027
- const isControlledRef = React50.useRef(prop !== void 0);
8028
- React50.useEffect(() => {
8922
+ const isControlledRef = React55.useRef(prop !== void 0);
8923
+ React55.useEffect(() => {
8029
8924
  const wasControlled = isControlledRef.current;
8030
8925
  if (wasControlled !== isControlled) {
8031
8926
  const from2 = wasControlled ? "controlled" : "uncontrolled";
@@ -8037,7 +8932,7 @@ function useControllableState({
8037
8932
  isControlledRef.current = isControlled;
8038
8933
  }, [isControlled, caller]);
8039
8934
  }
8040
- const setValue = React50.useCallback(
8935
+ const setValue = React55.useCallback(
8041
8936
  (nextValue) => {
8042
8937
  if (isControlled) {
8043
8938
  const value2 = isFunction(nextValue) ? nextValue(prop) : nextValue;
@@ -8056,13 +8951,13 @@ function useUncontrolledState({
8056
8951
  defaultProp,
8057
8952
  onChange
8058
8953
  }) {
8059
- const [value, setValue] = React50.useState(defaultProp);
8060
- const prevValueRef = React50.useRef(value);
8061
- const onChangeRef = React50.useRef(onChange);
8954
+ const [value, setValue] = React55.useState(defaultProp);
8955
+ const prevValueRef = React55.useRef(value);
8956
+ const onChangeRef = React55.useRef(onChange);
8062
8957
  useInsertionEffect(() => {
8063
8958
  onChangeRef.current = onChange;
8064
8959
  }, [onChange]);
8065
- React50.useEffect(() => {
8960
+ React55.useEffect(() => {
8066
8961
  if (prevValueRef.current !== value) {
8067
8962
  onChangeRef.current?.(value);
8068
8963
  prevValueRef.current = value;
@@ -8074,15 +8969,15 @@ function isFunction(value) {
8074
8969
  return typeof value === "function";
8075
8970
  }
8076
8971
  function useCallbackRef2(callback) {
8077
- const callbackRef = React50.useRef(callback);
8078
- React50.useEffect(() => {
8972
+ const callbackRef = React55.useRef(callback);
8973
+ React55.useEffect(() => {
8079
8974
  callbackRef.current = callback;
8080
8975
  });
8081
- return React50.useMemo(() => (...args) => callbackRef.current?.(...args), []);
8976
+ return React55.useMemo(() => (...args) => callbackRef.current?.(...args), []);
8082
8977
  }
8083
8978
  function useEscapeKeydown(onEscapeKeyDownProp, ownerDocument = globalThis?.document) {
8084
8979
  const onEscapeKeyDown = useCallbackRef2(onEscapeKeyDownProp);
8085
- React50.useEffect(() => {
8980
+ React55.useEffect(() => {
8086
8981
  const handleKeyDown3 = (event) => {
8087
8982
  if (event.key === "Escape") {
8088
8983
  onEscapeKeyDown(event);
@@ -8097,12 +8992,12 @@ var CONTEXT_UPDATE = "dismissableLayer.update";
8097
8992
  var POINTER_DOWN_OUTSIDE = "dismissableLayer.pointerDownOutside";
8098
8993
  var FOCUS_OUTSIDE = "dismissableLayer.focusOutside";
8099
8994
  var originalBodyPointerEvents;
8100
- var DismissableLayerContext = React50.createContext({
8995
+ var DismissableLayerContext = React55.createContext({
8101
8996
  layers: /* @__PURE__ */ new Set(),
8102
8997
  layersWithOutsidePointerEventsDisabled: /* @__PURE__ */ new Set(),
8103
8998
  branches: /* @__PURE__ */ new Set()
8104
8999
  });
8105
- var DismissableLayer = React50.forwardRef(
9000
+ var DismissableLayer = React55.forwardRef(
8106
9001
  (props, forwardedRef) => {
8107
9002
  const {
8108
9003
  disableOutsidePointerEvents = false,
@@ -8113,10 +9008,10 @@ var DismissableLayer = React50.forwardRef(
8113
9008
  onDismiss,
8114
9009
  ...layerProps
8115
9010
  } = props;
8116
- const context = React50.useContext(DismissableLayerContext);
8117
- const [node, setNode2] = React50.useState(null);
9011
+ const context = React55.useContext(DismissableLayerContext);
9012
+ const [node, setNode2] = React55.useState(null);
8118
9013
  const ownerDocument = node?.ownerDocument ?? globalThis?.document;
8119
- const [, force] = React50.useState({});
9014
+ const [, force] = React55.useState({});
8120
9015
  const composedRefs = useComposedRefs(forwardedRef, (node2) => setNode2(node2));
8121
9016
  const layers = Array.from(context.layers);
8122
9017
  const [highestLayerWithOutsidePointerEventsDisabled] = [...context.layersWithOutsidePointerEventsDisabled].slice(-1);
@@ -8154,7 +9049,7 @@ var DismissableLayer = React50.forwardRef(
8154
9049
  onDismiss();
8155
9050
  }
8156
9051
  }, ownerDocument);
8157
- React50.useEffect(() => {
9052
+ React55.useEffect(() => {
8158
9053
  if (!node)
8159
9054
  return;
8160
9055
  if (disableOutsidePointerEvents) {
@@ -8172,7 +9067,7 @@ var DismissableLayer = React50.forwardRef(
8172
9067
  }
8173
9068
  };
8174
9069
  }, [node, ownerDocument, disableOutsidePointerEvents, context]);
8175
- React50.useEffect(() => {
9070
+ React55.useEffect(() => {
8176
9071
  return () => {
8177
9072
  if (!node)
8178
9073
  return;
@@ -8181,7 +9076,7 @@ var DismissableLayer = React50.forwardRef(
8181
9076
  dispatchUpdate();
8182
9077
  };
8183
9078
  }, [node, context]);
8184
- React50.useEffect(() => {
9079
+ React55.useEffect(() => {
8185
9080
  const handleUpdate = () => force({});
8186
9081
  document.addEventListener(CONTEXT_UPDATE, handleUpdate);
8187
9082
  return () => document.removeEventListener(CONTEXT_UPDATE, handleUpdate);
@@ -8207,11 +9102,11 @@ var DismissableLayer = React50.forwardRef(
8207
9102
  );
8208
9103
  DismissableLayer.displayName = DISMISSABLE_LAYER_NAME;
8209
9104
  var BRANCH_NAME = "DismissableLayerBranch";
8210
- var DismissableLayerBranch = React50.forwardRef((props, forwardedRef) => {
8211
- const context = React50.useContext(DismissableLayerContext);
8212
- const ref = React50.useRef(null);
9105
+ var DismissableLayerBranch = React55.forwardRef((props, forwardedRef) => {
9106
+ const context = React55.useContext(DismissableLayerContext);
9107
+ const ref = React55.useRef(null);
8213
9108
  const composedRefs = useComposedRefs(forwardedRef, ref);
8214
- React50.useEffect(() => {
9109
+ React55.useEffect(() => {
8215
9110
  const node = ref.current;
8216
9111
  if (node) {
8217
9112
  context.branches.add(node);
@@ -8225,10 +9120,10 @@ var DismissableLayerBranch = React50.forwardRef((props, forwardedRef) => {
8225
9120
  DismissableLayerBranch.displayName = BRANCH_NAME;
8226
9121
  function usePointerDownOutside(onPointerDownOutside, ownerDocument = globalThis?.document) {
8227
9122
  const handlePointerDownOutside = useCallbackRef2(onPointerDownOutside);
8228
- const isPointerInsideReactTreeRef = React50.useRef(false);
8229
- const handleClickRef = React50.useRef(() => {
9123
+ const isPointerInsideReactTreeRef = React55.useRef(false);
9124
+ const handleClickRef = React55.useRef(() => {
8230
9125
  });
8231
- React50.useEffect(() => {
9126
+ React55.useEffect(() => {
8232
9127
  const handlePointerDown = (event) => {
8233
9128
  if (event.target && !isPointerInsideReactTreeRef.current) {
8234
9129
  let handleAndDispatchPointerDownOutsideEvent2 = function() {
@@ -8268,8 +9163,8 @@ function usePointerDownOutside(onPointerDownOutside, ownerDocument = globalThis?
8268
9163
  }
8269
9164
  function useFocusOutside(onFocusOutside, ownerDocument = globalThis?.document) {
8270
9165
  const handleFocusOutside = useCallbackRef2(onFocusOutside);
8271
- const isFocusInsideReactTreeRef = React50.useRef(false);
8272
- React50.useEffect(() => {
9166
+ const isFocusInsideReactTreeRef = React55.useRef(false);
9167
+ React55.useEffect(() => {
8273
9168
  const handleFocus = (event) => {
8274
9169
  if (event.target && !isFocusInsideReactTreeRef.current) {
8275
9170
  const eventDetail = { originalEvent: event };
@@ -8307,7 +9202,7 @@ var AUTOFOCUS_ON_MOUNT = "focusScope.autoFocusOnMount";
8307
9202
  var AUTOFOCUS_ON_UNMOUNT = "focusScope.autoFocusOnUnmount";
8308
9203
  var EVENT_OPTIONS = { bubbles: false, cancelable: true };
8309
9204
  var FOCUS_SCOPE_NAME = "FocusScope";
8310
- var FocusScope = React50.forwardRef((props, forwardedRef) => {
9205
+ var FocusScope = React55.forwardRef((props, forwardedRef) => {
8311
9206
  const {
8312
9207
  loop = false,
8313
9208
  trapped = false,
@@ -8315,12 +9210,12 @@ var FocusScope = React50.forwardRef((props, forwardedRef) => {
8315
9210
  onUnmountAutoFocus: onUnmountAutoFocusProp,
8316
9211
  ...scopeProps
8317
9212
  } = props;
8318
- const [container, setContainer] = React50.useState(null);
9213
+ const [container, setContainer] = React55.useState(null);
8319
9214
  const onMountAutoFocus = useCallbackRef2(onMountAutoFocusProp);
8320
9215
  const onUnmountAutoFocus = useCallbackRef2(onUnmountAutoFocusProp);
8321
- const lastFocusedElementRef = React50.useRef(null);
9216
+ const lastFocusedElementRef = React55.useRef(null);
8322
9217
  const composedRefs = useComposedRefs(forwardedRef, (node) => setContainer(node));
8323
- const focusScope = React50.useRef({
9218
+ const focusScope = React55.useRef({
8324
9219
  paused: false,
8325
9220
  pause() {
8326
9221
  this.paused = true;
@@ -8329,7 +9224,7 @@ var FocusScope = React50.forwardRef((props, forwardedRef) => {
8329
9224
  this.paused = false;
8330
9225
  }
8331
9226
  }).current;
8332
- React50.useEffect(() => {
9227
+ React55.useEffect(() => {
8333
9228
  if (trapped) {
8334
9229
  let handleFocusIn2 = function(event) {
8335
9230
  if (focusScope.paused || !container)
@@ -8370,7 +9265,7 @@ var FocusScope = React50.forwardRef((props, forwardedRef) => {
8370
9265
  };
8371
9266
  }
8372
9267
  }, [trapped, container, focusScope.paused]);
8373
- React50.useEffect(() => {
9268
+ React55.useEffect(() => {
8374
9269
  if (container) {
8375
9270
  focusScopesStack.add(focusScope);
8376
9271
  const previouslyFocusedElement = document.activeElement;
@@ -8401,7 +9296,7 @@ var FocusScope = React50.forwardRef((props, forwardedRef) => {
8401
9296
  };
8402
9297
  }
8403
9298
  }, [container, onMountAutoFocus, onUnmountAutoFocus, focusScope]);
8404
- const handleKeyDown3 = React50.useCallback(
9299
+ const handleKeyDown3 = React55.useCallback(
8405
9300
  (event) => {
8406
9301
  if (!loop && !trapped)
8407
9302
  return;
@@ -8521,16 +9416,16 @@ function removeLinks(items) {
8521
9416
  return items.filter((item) => item.tagName !== "A");
8522
9417
  }
8523
9418
  var PORTAL_NAME = "Portal";
8524
- var Portal = React50.forwardRef((props, forwardedRef) => {
9419
+ var Portal = React55.forwardRef((props, forwardedRef) => {
8525
9420
  const { container: containerProp, ...portalProps } = props;
8526
- const [mounted, setMounted] = React50.useState(false);
9421
+ const [mounted, setMounted] = React55.useState(false);
8527
9422
  useLayoutEffect22(() => setMounted(true), []);
8528
9423
  const container = containerProp || mounted && globalThis?.document?.body;
8529
9424
  return container ? ReactDOM__default.createPortal(/* @__PURE__ */ jsx(Primitive.div, { ...portalProps, ref: forwardedRef }), container) : null;
8530
9425
  });
8531
9426
  Portal.displayName = PORTAL_NAME;
8532
9427
  function useStateMachine(initialState, machine) {
8533
- return React50.useReducer((state, event) => {
9428
+ return React55.useReducer((state, event) => {
8534
9429
  const nextState = machine[state][event];
8535
9430
  return nextState ?? state;
8536
9431
  }, initialState);
@@ -8538,17 +9433,17 @@ function useStateMachine(initialState, machine) {
8538
9433
  var Presence = (props) => {
8539
9434
  const { present, children } = props;
8540
9435
  const presence = usePresence(present);
8541
- const child = typeof children === "function" ? children({ present: presence.isPresent }) : React50.Children.only(children);
9436
+ const child = typeof children === "function" ? children({ present: presence.isPresent }) : React55.Children.only(children);
8542
9437
  const ref = useComposedRefs(presence.ref, getElementRef2(child));
8543
9438
  const forceMount = typeof children === "function";
8544
- return forceMount || presence.isPresent ? React50.cloneElement(child, { ref }) : null;
9439
+ return forceMount || presence.isPresent ? React55.cloneElement(child, { ref }) : null;
8545
9440
  };
8546
9441
  Presence.displayName = "Presence";
8547
9442
  function usePresence(present) {
8548
- const [node, setNode2] = React50.useState();
8549
- const stylesRef = React50.useRef(null);
8550
- const prevPresentRef = React50.useRef(present);
8551
- const prevAnimationNameRef = React50.useRef("none");
9443
+ const [node, setNode2] = React55.useState();
9444
+ const stylesRef = React55.useRef(null);
9445
+ const prevPresentRef = React55.useRef(present);
9446
+ const prevAnimationNameRef = React55.useRef("none");
8552
9447
  const initialState = present ? "mounted" : "unmounted";
8553
9448
  const [state, send] = useStateMachine(initialState, {
8554
9449
  mounted: {
@@ -8563,7 +9458,7 @@ function usePresence(present) {
8563
9458
  MOUNT: "mounted"
8564
9459
  }
8565
9460
  });
8566
- React50.useEffect(() => {
9461
+ React55.useEffect(() => {
8567
9462
  const currentAnimationName = getAnimationName(stylesRef.current);
8568
9463
  prevAnimationNameRef.current = state === "mounted" ? currentAnimationName : "none";
8569
9464
  }, [state]);
@@ -8629,7 +9524,7 @@ function usePresence(present) {
8629
9524
  }, [node, send]);
8630
9525
  return {
8631
9526
  isPresent: ["mounted", "unmountSuspended"].includes(state),
8632
- ref: React50.useCallback((node2) => {
9527
+ ref: React55.useCallback((node2) => {
8633
9528
  stylesRef.current = node2 ? getComputedStyle(node2) : null;
8634
9529
  setNode2(node2);
8635
9530
  }, [])
@@ -8653,7 +9548,7 @@ function getElementRef2(element) {
8653
9548
  }
8654
9549
  var count2 = 0;
8655
9550
  function useFocusGuards() {
8656
- React50.useEffect(() => {
9551
+ React55.useEffect(() => {
8657
9552
  const edgeGuards = document.querySelectorAll("[data-radix-focus-guard]");
8658
9553
  document.body.insertAdjacentElement("afterbegin", edgeGuards[0] ?? createFocusGuard());
8659
9554
  document.body.insertAdjacentElement("beforeend", edgeGuards[1] ?? createFocusGuard());
@@ -8684,9 +9579,9 @@ var effectCar2 = createSidecarMedium();
8684
9579
  var nothing2 = function() {
8685
9580
  return;
8686
9581
  };
8687
- var RemoveScroll2 = React50.forwardRef(function(props, parentRef) {
8688
- var ref = React50.useRef(null);
8689
- var _a2 = React50.useState({
9582
+ var RemoveScroll2 = React55.forwardRef(function(props, parentRef) {
9583
+ var ref = React55.useRef(null);
9584
+ var _a2 = React55.useState({
8690
9585
  onScrollCapture: nothing2,
8691
9586
  onWheelCapture: nothing2,
8692
9587
  onTouchMoveCapture: nothing2
@@ -8695,11 +9590,11 @@ var RemoveScroll2 = React50.forwardRef(function(props, parentRef) {
8695
9590
  var SideCar2 = sideCar;
8696
9591
  var containerRef = useMergeRefs([ref, parentRef]);
8697
9592
  var containerProps = __assign(__assign({}, rest), callbacks);
8698
- return React50.createElement(
8699
- React50.Fragment,
9593
+ return React55.createElement(
9594
+ React55.Fragment,
8700
9595
  null,
8701
- enabled && React50.createElement(SideCar2, { sideCar: effectCar2, removeScrollBar, shards, noRelative, noIsolation, inert, setCallbacks, allowPinchZoom: !!allowPinchZoom, lockRef: ref, gapMode }),
8702
- forwardProps ? React50.cloneElement(React50.Children.only(children), __assign(__assign({}, containerProps), { ref: containerRef })) : React50.createElement(Container, __assign({}, containerProps, { className, ref: containerRef }), children)
9596
+ enabled && React55.createElement(SideCar2, { sideCar: effectCar2, removeScrollBar, shards, noRelative, noIsolation, inert, setCallbacks, allowPinchZoom: !!allowPinchZoom, lockRef: ref, gapMode }),
9597
+ forwardProps ? React55.cloneElement(React55.Children.only(children), __assign(__assign({}, containerProps), { ref: containerRef })) : React55.createElement(Container, __assign({}, containerProps, { className, ref: containerRef }), children)
8703
9598
  );
8704
9599
  });
8705
9600
  RemoveScroll2.defaultProps = {
@@ -8850,16 +9745,16 @@ var generateStyle2 = function(id) {
8850
9745
  var idCounter2 = 0;
8851
9746
  var lockStack2 = [];
8852
9747
  function RemoveScrollSideCar2(props) {
8853
- var shouldPreventQueue = React50.useRef([]);
8854
- var touchStartRef = React50.useRef([0, 0]);
8855
- var activeAxis = React50.useRef();
8856
- var id = React50.useState(idCounter2++)[0];
8857
- var Style2 = React50.useState(styleSingleton)[0];
8858
- var lastProps = React50.useRef(props);
8859
- React50.useEffect(function() {
9748
+ var shouldPreventQueue = React55.useRef([]);
9749
+ var touchStartRef = React55.useRef([0, 0]);
9750
+ var activeAxis = React55.useRef();
9751
+ var id = React55.useState(idCounter2++)[0];
9752
+ var Style2 = React55.useState(styleSingleton)[0];
9753
+ var lastProps = React55.useRef(props);
9754
+ React55.useEffect(function() {
8860
9755
  lastProps.current = props;
8861
9756
  }, [props]);
8862
- React50.useEffect(function() {
9757
+ React55.useEffect(function() {
8863
9758
  if (props.inert) {
8864
9759
  document.body.classList.add("block-interactivity-".concat(id));
8865
9760
  var allow_1 = __spreadArray([props.lockRef.current], (props.shards || []).map(extractRef2), true).filter(Boolean);
@@ -8875,7 +9770,7 @@ function RemoveScrollSideCar2(props) {
8875
9770
  }
8876
9771
  return;
8877
9772
  }, [props.inert, props.lockRef.current, props.shards]);
8878
- var shouldCancelEvent = React50.useCallback(function(event, parent) {
9773
+ var shouldCancelEvent = React55.useCallback(function(event, parent) {
8879
9774
  if ("touches" in event && event.touches.length === 2 || event.type === "wheel" && event.ctrlKey) {
8880
9775
  return !lastProps.current.allowPinchZoom;
8881
9776
  }
@@ -8911,7 +9806,7 @@ function RemoveScrollSideCar2(props) {
8911
9806
  var cancelingAxis = activeAxis.current || currentAxis;
8912
9807
  return handleScroll2(cancelingAxis, parent, event, cancelingAxis === "h" ? deltaX : deltaY, true);
8913
9808
  }, []);
8914
- var shouldPrevent = React50.useCallback(function(_event) {
9809
+ var shouldPrevent = React55.useCallback(function(_event) {
8915
9810
  var event = _event;
8916
9811
  if (!lockStack2.length || lockStack2[lockStack2.length - 1] !== Style2) {
8917
9812
  return;
@@ -8938,7 +9833,7 @@ function RemoveScrollSideCar2(props) {
8938
9833
  }
8939
9834
  }
8940
9835
  }, []);
8941
- var shouldCancel = React50.useCallback(function(name, delta, target, should) {
9836
+ var shouldCancel = React55.useCallback(function(name, delta, target, should) {
8942
9837
  var event = { name, delta, target, should, shadowParent: getOutermostShadowParent(target) };
8943
9838
  shouldPreventQueue.current.push(event);
8944
9839
  setTimeout(function() {
@@ -8947,17 +9842,17 @@ function RemoveScrollSideCar2(props) {
8947
9842
  });
8948
9843
  }, 1);
8949
9844
  }, []);
8950
- var scrollTouchStart = React50.useCallback(function(event) {
9845
+ var scrollTouchStart = React55.useCallback(function(event) {
8951
9846
  touchStartRef.current = getTouchXY2(event);
8952
9847
  activeAxis.current = void 0;
8953
9848
  }, []);
8954
- var scrollWheel = React50.useCallback(function(event) {
9849
+ var scrollWheel = React55.useCallback(function(event) {
8955
9850
  shouldCancel(event.type, getDeltaXY2(event), event.target, shouldCancelEvent(event, props.lockRef.current));
8956
9851
  }, []);
8957
- var scrollTouchMove = React50.useCallback(function(event) {
9852
+ var scrollTouchMove = React55.useCallback(function(event) {
8958
9853
  shouldCancel(event.type, getTouchXY2(event), event.target, shouldCancelEvent(event, props.lockRef.current));
8959
9854
  }, []);
8960
- React50.useEffect(function() {
9855
+ React55.useEffect(function() {
8961
9856
  lockStack2.push(Style2);
8962
9857
  props.setCallbacks({
8963
9858
  onScrollCapture: scrollWheel,
@@ -8977,11 +9872,11 @@ function RemoveScrollSideCar2(props) {
8977
9872
  };
8978
9873
  }, []);
8979
9874
  var removeScrollBar = props.removeScrollBar, inert = props.inert;
8980
- return React50.createElement(
8981
- React50.Fragment,
9875
+ return React55.createElement(
9876
+ React55.Fragment,
8982
9877
  null,
8983
- inert ? React50.createElement(Style2, { styles: generateStyle2(id) }) : null,
8984
- removeScrollBar ? React50.createElement(RemoveScrollBar, { noRelative: props.noRelative, gapMode: props.gapMode }) : null
9878
+ inert ? React55.createElement(Style2, { styles: generateStyle2(id) }) : null,
9879
+ removeScrollBar ? React55.createElement(RemoveScrollBar, { noRelative: props.noRelative, gapMode: props.gapMode }) : null
8985
9880
  );
8986
9881
  }
8987
9882
  function getOutermostShadowParent(node) {
@@ -9000,8 +9895,8 @@ function getOutermostShadowParent(node) {
9000
9895
  var sidecar_default2 = exportSidecar(effectCar2, RemoveScrollSideCar2);
9001
9896
 
9002
9897
  // node_modules/react-remove-scroll/dist/es2015/Combination.js
9003
- var ReactRemoveScroll2 = React50.forwardRef(function(props, ref) {
9004
- return React50.createElement(RemoveScroll2, __assign({}, props, { ref, sideCar: sidecar_default2 }));
9898
+ var ReactRemoveScroll2 = React55.forwardRef(function(props, ref) {
9899
+ return React55.createElement(RemoveScroll2, __assign({}, props, { ref, sideCar: sidecar_default2 }));
9005
9900
  });
9006
9901
  ReactRemoveScroll2.classNames = RemoveScroll2.classNames;
9007
9902
  var Combination_default2 = ReactRemoveScroll2;
@@ -9017,8 +9912,8 @@ var Dialog = (props) => {
9017
9912
  onOpenChange,
9018
9913
  modal = true
9019
9914
  } = props;
9020
- const triggerRef = React50.useRef(null);
9021
- const contentRef = React50.useRef(null);
9915
+ const triggerRef = React55.useRef(null);
9916
+ const contentRef = React55.useRef(null);
9022
9917
  const [open, setOpen] = useControllableState({
9023
9918
  prop: openProp,
9024
9919
  defaultProp: defaultOpen ?? false,
@@ -9036,7 +9931,7 @@ var Dialog = (props) => {
9036
9931
  descriptionId: useId(),
9037
9932
  open,
9038
9933
  onOpenChange: setOpen,
9039
- onOpenToggle: React50.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),
9934
+ onOpenToggle: React55.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),
9040
9935
  modal,
9041
9936
  children
9042
9937
  }
@@ -9044,7 +9939,7 @@ var Dialog = (props) => {
9044
9939
  };
9045
9940
  Dialog.displayName = DIALOG_NAME;
9046
9941
  var TRIGGER_NAME = "DialogTrigger";
9047
- var DialogTrigger = React50.forwardRef(
9942
+ var DialogTrigger = React55.forwardRef(
9048
9943
  (props, forwardedRef) => {
9049
9944
  const { __scopeDialog, ...triggerProps } = props;
9050
9945
  const context = useDialogContext(TRIGGER_NAME, __scopeDialog);
@@ -9072,11 +9967,11 @@ var [PortalProvider, usePortalContext] = createDialogContext(PORTAL_NAME2, {
9072
9967
  var DialogPortal = (props) => {
9073
9968
  const { __scopeDialog, forceMount, children, container } = props;
9074
9969
  const context = useDialogContext(PORTAL_NAME2, __scopeDialog);
9075
- return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopeDialog, forceMount, children: React50.Children.map(children, (child) => /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(Portal, { asChild: true, container, children: child }) })) });
9970
+ return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopeDialog, forceMount, children: React55.Children.map(children, (child) => /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(Portal, { asChild: true, container, children: child }) })) });
9076
9971
  };
9077
9972
  DialogPortal.displayName = PORTAL_NAME2;
9078
9973
  var OVERLAY_NAME = "DialogOverlay";
9079
- var DialogOverlay = React50.forwardRef(
9974
+ var DialogOverlay = React55.forwardRef(
9080
9975
  (props, forwardedRef) => {
9081
9976
  const portalContext = usePortalContext(OVERLAY_NAME, props.__scopeDialog);
9082
9977
  const { forceMount = portalContext.forceMount, ...overlayProps } = props;
@@ -9086,7 +9981,7 @@ var DialogOverlay = React50.forwardRef(
9086
9981
  );
9087
9982
  DialogOverlay.displayName = OVERLAY_NAME;
9088
9983
  var Slot = createSlot("DialogOverlay.RemoveScroll");
9089
- var DialogOverlayImpl = React50.forwardRef(
9984
+ var DialogOverlayImpl = React55.forwardRef(
9090
9985
  (props, forwardedRef) => {
9091
9986
  const { __scopeDialog, ...overlayProps } = props;
9092
9987
  const context = useDialogContext(OVERLAY_NAME, __scopeDialog);
@@ -9106,7 +10001,7 @@ var DialogOverlayImpl = React50.forwardRef(
9106
10001
  }
9107
10002
  );
9108
10003
  var CONTENT_NAME = "DialogContent";
9109
- var DialogContent = React50.forwardRef(
10004
+ var DialogContent = React55.forwardRef(
9110
10005
  (props, forwardedRef) => {
9111
10006
  const portalContext = usePortalContext(CONTENT_NAME, props.__scopeDialog);
9112
10007
  const { forceMount = portalContext.forceMount, ...contentProps } = props;
@@ -9115,12 +10010,12 @@ var DialogContent = React50.forwardRef(
9115
10010
  }
9116
10011
  );
9117
10012
  DialogContent.displayName = CONTENT_NAME;
9118
- var DialogContentModal = React50.forwardRef(
10013
+ var DialogContentModal = React55.forwardRef(
9119
10014
  (props, forwardedRef) => {
9120
10015
  const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);
9121
- const contentRef = React50.useRef(null);
10016
+ const contentRef = React55.useRef(null);
9122
10017
  const composedRefs = useComposedRefs(forwardedRef, context.contentRef, contentRef);
9123
- React50.useEffect(() => {
10018
+ React55.useEffect(() => {
9124
10019
  const content = contentRef.current;
9125
10020
  if (content)
9126
10021
  return hideOthers(content);
@@ -9151,11 +10046,11 @@ var DialogContentModal = React50.forwardRef(
9151
10046
  );
9152
10047
  }
9153
10048
  );
9154
- var DialogContentNonModal = React50.forwardRef(
10049
+ var DialogContentNonModal = React55.forwardRef(
9155
10050
  (props, forwardedRef) => {
9156
10051
  const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);
9157
- const hasInteractedOutsideRef = React50.useRef(false);
9158
- const hasPointerDownOutsideRef = React50.useRef(false);
10052
+ const hasInteractedOutsideRef = React55.useRef(false);
10053
+ const hasPointerDownOutsideRef = React55.useRef(false);
9159
10054
  return /* @__PURE__ */ jsx(
9160
10055
  DialogContentImpl,
9161
10056
  {
@@ -9193,11 +10088,11 @@ var DialogContentNonModal = React50.forwardRef(
9193
10088
  );
9194
10089
  }
9195
10090
  );
9196
- var DialogContentImpl = React50.forwardRef(
10091
+ var DialogContentImpl = React55.forwardRef(
9197
10092
  (props, forwardedRef) => {
9198
10093
  const { __scopeDialog, trapFocus, onOpenAutoFocus, onCloseAutoFocus, ...contentProps } = props;
9199
10094
  const context = useDialogContext(CONTENT_NAME, __scopeDialog);
9200
- const contentRef = React50.useRef(null);
10095
+ const contentRef = React55.useRef(null);
9201
10096
  const composedRefs = useComposedRefs(forwardedRef, contentRef);
9202
10097
  useFocusGuards();
9203
10098
  return /* @__PURE__ */ jsxs(Fragment, { children: [
@@ -9232,7 +10127,7 @@ var DialogContentImpl = React50.forwardRef(
9232
10127
  }
9233
10128
  );
9234
10129
  var TITLE_NAME = "DialogTitle";
9235
- var DialogTitle = React50.forwardRef(
10130
+ var DialogTitle = React55.forwardRef(
9236
10131
  (props, forwardedRef) => {
9237
10132
  const { __scopeDialog, ...titleProps } = props;
9238
10133
  const context = useDialogContext(TITLE_NAME, __scopeDialog);
@@ -9241,7 +10136,7 @@ var DialogTitle = React50.forwardRef(
9241
10136
  );
9242
10137
  DialogTitle.displayName = TITLE_NAME;
9243
10138
  var DESCRIPTION_NAME = "DialogDescription";
9244
- var DialogDescription = React50.forwardRef(
10139
+ var DialogDescription = React55.forwardRef(
9245
10140
  (props, forwardedRef) => {
9246
10141
  const { __scopeDialog, ...descriptionProps } = props;
9247
10142
  const context = useDialogContext(DESCRIPTION_NAME, __scopeDialog);
@@ -9250,7 +10145,7 @@ var DialogDescription = React50.forwardRef(
9250
10145
  );
9251
10146
  DialogDescription.displayName = DESCRIPTION_NAME;
9252
10147
  var CLOSE_NAME = "DialogClose";
9253
- var DialogClose = React50.forwardRef(
10148
+ var DialogClose = React55.forwardRef(
9254
10149
  (props, forwardedRef) => {
9255
10150
  const { __scopeDialog, ...closeProps } = props;
9256
10151
  const context = useDialogContext(CLOSE_NAME, __scopeDialog);
@@ -9282,7 +10177,7 @@ var TitleWarning = ({ titleId }) => {
9282
10177
  If you want to hide the \`${titleWarningContext.titleName}\`, you can wrap it with our VisuallyHidden component.
9283
10178
 
9284
10179
  For more information, see https://radix-ui.com/primitives/docs/components/${titleWarningContext.docsSlug}`;
9285
- React50.useEffect(() => {
10180
+ React55.useEffect(() => {
9286
10181
  if (titleId) {
9287
10182
  const hasTitle = document.getElementById(titleId);
9288
10183
  if (!hasTitle)
@@ -9295,7 +10190,7 @@ var DESCRIPTION_WARNING_NAME = "DialogDescriptionWarning";
9295
10190
  var DescriptionWarning = ({ contentRef, descriptionId }) => {
9296
10191
  const descriptionWarningContext = useWarningContext(DESCRIPTION_WARNING_NAME);
9297
10192
  const MESSAGE = `Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${descriptionWarningContext.contentName}}.`;
9298
- React50.useEffect(() => {
10193
+ React55.useEffect(() => {
9299
10194
  const describedById = contentRef.current?.getAttribute("aria-describedby");
9300
10195
  if (descriptionId && describedById) {
9301
10196
  const hasDescription = document.getElementById(descriptionId);
@@ -9338,7 +10233,7 @@ var overlayVariants = cva(
9338
10233
  }
9339
10234
  }
9340
10235
  );
9341
- var DialogOverlay2 = React50.forwardRef(({ className, variant, animation, ...props }, ref) => /* @__PURE__ */ jsx(
10236
+ var DialogOverlay2 = React55.forwardRef(({ className, variant, animation, ...props }, ref) => /* @__PURE__ */ jsx(
9342
10237
  Overlay,
9343
10238
  {
9344
10239
  ref,
@@ -9397,7 +10292,7 @@ var dialogContentVariants = cva(
9397
10292
  }
9398
10293
  }
9399
10294
  );
9400
- var DialogContent2 = React50.forwardRef(
10295
+ var DialogContent2 = React55.forwardRef(
9401
10296
  ({
9402
10297
  className,
9403
10298
  children,
@@ -9510,7 +10405,7 @@ var DialogFooter = ({
9510
10405
  }
9511
10406
  );
9512
10407
  DialogFooter.displayName = "DialogFooter";
9513
- var DialogTitle2 = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
10408
+ var DialogTitle2 = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
9514
10409
  Title,
9515
10410
  {
9516
10411
  ref,
@@ -9522,7 +10417,7 @@ var DialogTitle2 = React50.forwardRef(({ className, ...props }, ref) => /* @__PU
9522
10417
  }
9523
10418
  ));
9524
10419
  DialogTitle2.displayName = Title.displayName;
9525
- var DialogDescription2 = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
10420
+ var DialogDescription2 = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
9526
10421
  Description,
9527
10422
  {
9528
10423
  ref,
@@ -9534,7 +10429,7 @@ var DialogDescription2 = React50.forwardRef(({ className, ...props }, ref) => /*
9534
10429
  }
9535
10430
  ));
9536
10431
  DialogDescription2.displayName = Description.displayName;
9537
- var DialogForm = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
10432
+ var DialogForm = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
9538
10433
  "form",
9539
10434
  {
9540
10435
  ref,
@@ -9561,7 +10456,7 @@ var defaultColors = [
9561
10456
  "#EC4899",
9562
10457
  "#F43F5E"
9563
10458
  ];
9564
- var ColorPicker = React50__default.forwardRef(
10459
+ var ColorPicker = React55__default.forwardRef(
9565
10460
  ({
9566
10461
  value = "#000000",
9567
10462
  onChange,
@@ -9968,14 +10863,14 @@ function Calendar2({
9968
10863
  ] })
9969
10864
  ] }) }) });
9970
10865
  }
9971
- const [currentDate, setCurrentDate] = React50__default.useState(/* @__PURE__ */ new Date());
9972
- const [selectedDate, setSelectedDate] = React50__default.useState(null);
9973
- React50__default.useState("month");
9974
- const [eventDialogOpen, setEventDialogOpen] = React50__default.useState(false);
9975
- const [eventDialogMode, setEventDialogMode] = React50__default.useState("create");
9976
- const [selectedEvent, setSelectedEvent] = React50__default.useState(null);
9977
- const [draggedEvent, setDraggedEvent] = React50__default.useState(null);
9978
- const [dragTargetDate, setDragTargetDate] = React50__default.useState(null);
10866
+ const [currentDate, setCurrentDate] = React55__default.useState(/* @__PURE__ */ new Date());
10867
+ const [selectedDate, setSelectedDate] = React55__default.useState(null);
10868
+ React55__default.useState("month");
10869
+ const [eventDialogOpen, setEventDialogOpen] = React55__default.useState(false);
10870
+ const [eventDialogMode, setEventDialogMode] = React55__default.useState("create");
10871
+ const [selectedEvent, setSelectedEvent] = React55__default.useState(null);
10872
+ const [draggedEvent, setDraggedEvent] = React55__default.useState(null);
10873
+ const [dragTargetDate, setDragTargetDate] = React55__default.useState(null);
9979
10874
  const today = /* @__PURE__ */ new Date();
9980
10875
  const currentMonth = currentDate.getMonth();
9981
10876
  const currentYear = currentDate.getFullYear();
@@ -10366,7 +11261,7 @@ var avatarVariants = cva(
10366
11261
  }
10367
11262
  }
10368
11263
  );
10369
- var Avatar = React50.forwardRef(({ className, size: size4, radius, variant, ...props }, ref) => /* @__PURE__ */ jsx(
11264
+ var Avatar = React55.forwardRef(({ className, size: size4, radius, variant, ...props }, ref) => /* @__PURE__ */ jsx(
10370
11265
  AvatarPrimitive.Root,
10371
11266
  {
10372
11267
  ref,
@@ -10375,7 +11270,7 @@ var Avatar = React50.forwardRef(({ className, size: size4, radius, variant, ...p
10375
11270
  }
10376
11271
  ));
10377
11272
  Avatar.displayName = AvatarPrimitive.Root.displayName;
10378
- var AvatarImage = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
11273
+ var AvatarImage = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
10379
11274
  AvatarPrimitive.Image,
10380
11275
  {
10381
11276
  ref,
@@ -10384,7 +11279,7 @@ var AvatarImage = React50.forwardRef(({ className, ...props }, ref) => /* @__PUR
10384
11279
  }
10385
11280
  ));
10386
11281
  AvatarImage.displayName = AvatarPrimitive.Image.displayName;
10387
- var AvatarFallback = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
11282
+ var AvatarFallback = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
10388
11283
  AvatarPrimitive.Fallback,
10389
11284
  {
10390
11285
  ref,
@@ -10396,7 +11291,7 @@ var AvatarFallback = React50.forwardRef(({ className, ...props }, ref) => /* @__
10396
11291
  }
10397
11292
  ));
10398
11293
  AvatarFallback.displayName = AvatarPrimitive.Fallback.displayName;
10399
- var AvatarGroup = React50.forwardRef(
11294
+ var AvatarGroup = React55.forwardRef(
10400
11295
  ({ className, limit, avatars, overlapOffset = -8, ...props }, ref) => {
10401
11296
  const visibleAvatars = limit ? avatars.slice(0, limit) : avatars;
10402
11297
  const remainingCount = limit ? Math.max(0, avatars.length - limit) : 0;
@@ -10470,9 +11365,9 @@ function Kanban({
10470
11365
  ] })
10471
11366
  ] }) }) });
10472
11367
  }
10473
- const [draggedCard, setDraggedCard] = React50__default.useState(null);
10474
- const [draggedOverColumn, setDraggedOverColumn] = React50__default.useState(null);
10475
- const [draggedFromColumn, setDraggedFromColumn] = React50__default.useState(null);
11368
+ const [draggedCard, setDraggedCard] = React55__default.useState(null);
11369
+ const [draggedOverColumn, setDraggedOverColumn] = React55__default.useState(null);
11370
+ const [draggedFromColumn, setDraggedFromColumn] = React55__default.useState(null);
10476
11371
  const handleDragStart = (e, cardId) => {
10477
11372
  if (disabled)
10478
11373
  return;
@@ -27194,7 +28089,7 @@ function markPasteRule(config) {
27194
28089
  }
27195
28090
 
27196
28091
  // ../../node_modules/@tiptap/react/dist/index.js
27197
- var import_react33 = __toESM(require_react(), 1);
28092
+ var import_react40 = __toESM(require_react(), 1);
27198
28093
  var mergeRefs = (...refs) => {
27199
28094
  return (node) => {
27200
28095
  refs.forEach((ref) => {
@@ -27254,11 +28149,11 @@ function getInstance() {
27254
28149
  }
27255
28150
  };
27256
28151
  }
27257
- var PureEditorContent = class extends React50__default.Component {
28152
+ var PureEditorContent = class extends React55__default.Component {
27258
28153
  constructor(props) {
27259
28154
  var _a2;
27260
28155
  super(props);
27261
- this.editorContentRef = React50__default.createRef();
28156
+ this.editorContentRef = React55__default.createRef();
27262
28157
  this.initialized = false;
27263
28158
  this.state = {
27264
28159
  hasContentComponentInitialized: Boolean((_a2 = props.editor) == null ? void 0 : _a2.contentComponent)
@@ -27336,17 +28231,17 @@ var PureEditorContent = class extends React50__default.Component {
27336
28231
  };
27337
28232
  var EditorContentWithKey = forwardRef(
27338
28233
  (props, ref) => {
27339
- const key = React50__default.useMemo(() => {
28234
+ const key = React55__default.useMemo(() => {
27340
28235
  return Math.floor(Math.random() * 4294967295).toString();
27341
28236
  }, [props.editor]);
27342
- return React50__default.createElement(PureEditorContent, {
28237
+ return React55__default.createElement(PureEditorContent, {
27343
28238
  key,
27344
28239
  innerRef: ref,
27345
28240
  ...props
27346
28241
  });
27347
28242
  }
27348
28243
  );
27349
- var EditorContent = React50__default.memo(EditorContentWithKey);
28244
+ var EditorContent = React55__default.memo(EditorContentWithKey);
27350
28245
  var useIsomorphicLayoutEffect2 = typeof window !== "undefined" ? useLayoutEffect : useEffect;
27351
28246
  var EditorStateManager = class {
27352
28247
  constructor(initialEditor) {
@@ -27413,7 +28308,7 @@ function useEditorState(options) {
27413
28308
  editorStateManager.getSnapshot,
27414
28309
  editorStateManager.getServerSnapshot,
27415
28310
  options.selector,
27416
- (_a2 = options.equalityFn) != null ? _a2 : import_react33.default
28311
+ (_a2 = options.equalityFn) != null ? _a2 : import_react40.default
27417
28312
  );
27418
28313
  useIsomorphicLayoutEffect2(() => {
27419
28314
  return editorStateManager.watch(options.editor);
@@ -27690,7 +28585,7 @@ var ReactNodeViewContext = createContext({
27690
28585
  }
27691
28586
  });
27692
28587
  var useReactNodeView = () => useContext(ReactNodeViewContext);
27693
- React50__default.forwardRef((props, ref) => {
28588
+ React55__default.forwardRef((props, ref) => {
27694
28589
  const { onDragStart } = useReactNodeView();
27695
28590
  const Tag = props.as || "div";
27696
28591
  return (
@@ -27710,7 +28605,7 @@ React50__default.forwardRef((props, ref) => {
27710
28605
  )
27711
28606
  );
27712
28607
  });
27713
- React50__default.createContext({
28608
+ React55__default.createContext({
27714
28609
  markViewContentRef: () => {
27715
28610
  }
27716
28611
  });
@@ -49244,14 +50139,14 @@ function createCollection(name) {
49244
50139
  );
49245
50140
  const CollectionProvider = (props) => {
49246
50141
  const { scope, children } = props;
49247
- const ref = React50__default.useRef(null);
49248
- const itemMap = React50__default.useRef(/* @__PURE__ */ new Map()).current;
50142
+ const ref = React55__default.useRef(null);
50143
+ const itemMap = React55__default.useRef(/* @__PURE__ */ new Map()).current;
49249
50144
  return /* @__PURE__ */ jsx(CollectionProviderImpl, { scope, itemMap, collectionRef: ref, children });
49250
50145
  };
49251
50146
  CollectionProvider.displayName = PROVIDER_NAME2;
49252
50147
  const COLLECTION_SLOT_NAME = name + "CollectionSlot";
49253
50148
  const CollectionSlotImpl = createSlot(COLLECTION_SLOT_NAME);
49254
- const CollectionSlot = React50__default.forwardRef(
50149
+ const CollectionSlot = React55__default.forwardRef(
49255
50150
  (props, forwardedRef) => {
49256
50151
  const { scope, children } = props;
49257
50152
  const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);
@@ -49263,13 +50158,13 @@ function createCollection(name) {
49263
50158
  const ITEM_SLOT_NAME = name + "CollectionItemSlot";
49264
50159
  const ITEM_DATA_ATTR = "data-radix-collection-item";
49265
50160
  const CollectionItemSlotImpl = createSlot(ITEM_SLOT_NAME);
49266
- const CollectionItemSlot = React50__default.forwardRef(
50161
+ const CollectionItemSlot = React55__default.forwardRef(
49267
50162
  (props, forwardedRef) => {
49268
50163
  const { scope, children, ...itemData } = props;
49269
- const ref = React50__default.useRef(null);
50164
+ const ref = React55__default.useRef(null);
49270
50165
  const composedRefs = useComposedRefs(forwardedRef, ref);
49271
50166
  const context = useCollectionContext(ITEM_SLOT_NAME, scope);
49272
- React50__default.useEffect(() => {
50167
+ React55__default.useEffect(() => {
49273
50168
  context.itemMap.set(ref, { ref, ...itemData });
49274
50169
  return () => void context.itemMap.delete(ref);
49275
50170
  });
@@ -49279,7 +50174,7 @@ function createCollection(name) {
49279
50174
  CollectionItemSlot.displayName = ITEM_SLOT_NAME;
49280
50175
  function useCollection4(scope) {
49281
50176
  const context = useCollectionContext(name + "CollectionConsumer", scope);
49282
- const getItems = React50__default.useCallback(() => {
50177
+ const getItems = React55__default.useCallback(() => {
49283
50178
  const collectionNode = context.collectionRef.current;
49284
50179
  if (!collectionNode)
49285
50180
  return [];
@@ -49298,13 +50193,13 @@ function createCollection(name) {
49298
50193
  createCollectionScope4
49299
50194
  ];
49300
50195
  }
49301
- var DirectionContext = React50.createContext(void 0);
50196
+ var DirectionContext = React55.createContext(void 0);
49302
50197
  function useDirection(localDir) {
49303
- const globalDir = React50.useContext(DirectionContext);
50198
+ const globalDir = React55.useContext(DirectionContext);
49304
50199
  return localDir || globalDir || "ltr";
49305
50200
  }
49306
50201
  var NAME2 = "Arrow";
49307
- var Arrow = React50.forwardRef((props, forwardedRef) => {
50202
+ var Arrow = React55.forwardRef((props, forwardedRef) => {
49308
50203
  const { children, width = 10, height = 5, ...arrowProps } = props;
49309
50204
  return /* @__PURE__ */ jsx(
49310
50205
  Primitive.svg,
@@ -49322,7 +50217,7 @@ var Arrow = React50.forwardRef((props, forwardedRef) => {
49322
50217
  Arrow.displayName = NAME2;
49323
50218
  var Root5 = Arrow;
49324
50219
  function useSize(element) {
49325
- const [size4, setSize] = React50.useState(void 0);
50220
+ const [size4, setSize] = React55.useState(void 0);
49326
50221
  useLayoutEffect22(() => {
49327
50222
  if (element) {
49328
50223
  setSize({ width: element.offsetWidth, height: element.offsetHeight });
@@ -49360,18 +50255,18 @@ var [createPopperContext, createPopperScope] = createContextScope(POPPER_NAME);
49360
50255
  var [PopperProvider, usePopperContext] = createPopperContext(POPPER_NAME);
49361
50256
  var Popper = (props) => {
49362
50257
  const { __scopePopper, children } = props;
49363
- const [anchor, setAnchor] = React50.useState(null);
50258
+ const [anchor, setAnchor] = React55.useState(null);
49364
50259
  return /* @__PURE__ */ jsx(PopperProvider, { scope: __scopePopper, anchor, onAnchorChange: setAnchor, children });
49365
50260
  };
49366
50261
  Popper.displayName = POPPER_NAME;
49367
50262
  var ANCHOR_NAME = "PopperAnchor";
49368
- var PopperAnchor = React50.forwardRef(
50263
+ var PopperAnchor = React55.forwardRef(
49369
50264
  (props, forwardedRef) => {
49370
50265
  const { __scopePopper, virtualRef, ...anchorProps } = props;
49371
50266
  const context = usePopperContext(ANCHOR_NAME, __scopePopper);
49372
- const ref = React50.useRef(null);
50267
+ const ref = React55.useRef(null);
49373
50268
  const composedRefs = useComposedRefs(forwardedRef, ref);
49374
- React50.useEffect(() => {
50269
+ React55.useEffect(() => {
49375
50270
  context.onAnchorChange(virtualRef?.current || ref.current);
49376
50271
  });
49377
50272
  return virtualRef ? null : /* @__PURE__ */ jsx(Primitive.div, { ...anchorProps, ref: composedRefs });
@@ -49380,7 +50275,7 @@ var PopperAnchor = React50.forwardRef(
49380
50275
  PopperAnchor.displayName = ANCHOR_NAME;
49381
50276
  var CONTENT_NAME2 = "PopperContent";
49382
50277
  var [PopperContentProvider, useContentContext] = createPopperContext(CONTENT_NAME2);
49383
- var PopperContent = React50.forwardRef(
50278
+ var PopperContent = React55.forwardRef(
49384
50279
  (props, forwardedRef) => {
49385
50280
  const {
49386
50281
  __scopePopper,
@@ -49399,9 +50294,9 @@ var PopperContent = React50.forwardRef(
49399
50294
  ...contentProps
49400
50295
  } = props;
49401
50296
  const context = usePopperContext(CONTENT_NAME2, __scopePopper);
49402
- const [content, setContent2] = React50.useState(null);
50297
+ const [content, setContent2] = React55.useState(null);
49403
50298
  const composedRefs = useComposedRefs(forwardedRef, (node) => setContent2(node));
49404
- const [arrow6, setArrow] = React50.useState(null);
50299
+ const [arrow6, setArrow] = React55.useState(null);
49405
50300
  const arrowSize = useSize(arrow6);
49406
50301
  const arrowWidth = arrowSize?.width ?? 0;
49407
50302
  const arrowHeight = arrowSize?.height ?? 0;
@@ -49463,7 +50358,7 @@ var PopperContent = React50.forwardRef(
49463
50358
  const arrowX = middlewareData.arrow?.x;
49464
50359
  const arrowY = middlewareData.arrow?.y;
49465
50360
  const cannotCenterArrow = middlewareData.arrow?.centerOffset !== 0;
49466
- const [contentZIndex, setContentZIndex] = React50.useState();
50361
+ const [contentZIndex, setContentZIndex] = React55.useState();
49467
50362
  useLayoutEffect22(() => {
49468
50363
  if (content)
49469
50364
  setContentZIndex(window.getComputedStyle(content).zIndex);
@@ -49530,7 +50425,7 @@ var OPPOSITE_SIDE = {
49530
50425
  bottom: "top",
49531
50426
  left: "right"
49532
50427
  };
49533
- var PopperArrow = React50.forwardRef(function PopperArrow2(props, forwardedRef) {
50428
+ var PopperArrow = React55.forwardRef(function PopperArrow2(props, forwardedRef) {
49534
50429
  const { __scopePopper, ...arrowProps } = props;
49535
50430
  const contentContext = useContentContext(ARROW_NAME, __scopePopper);
49536
50431
  const baseSide = OPPOSITE_SIDE[contentContext.placedSide];
@@ -49629,13 +50524,13 @@ var [createRovingFocusGroupContext, createRovingFocusGroupScope] = createContext
49629
50524
  [createCollectionScope]
49630
50525
  );
49631
50526
  var [RovingFocusProvider, useRovingFocusContext] = createRovingFocusGroupContext(GROUP_NAME);
49632
- var RovingFocusGroup = React50.forwardRef(
50527
+ var RovingFocusGroup = React55.forwardRef(
49633
50528
  (props, forwardedRef) => {
49634
50529
  return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(RovingFocusGroupImpl, { ...props, ref: forwardedRef }) }) });
49635
50530
  }
49636
50531
  );
49637
50532
  RovingFocusGroup.displayName = GROUP_NAME;
49638
- var RovingFocusGroupImpl = React50.forwardRef((props, forwardedRef) => {
50533
+ var RovingFocusGroupImpl = React55.forwardRef((props, forwardedRef) => {
49639
50534
  const {
49640
50535
  __scopeRovingFocusGroup,
49641
50536
  orientation,
@@ -49648,7 +50543,7 @@ var RovingFocusGroupImpl = React50.forwardRef((props, forwardedRef) => {
49648
50543
  preventScrollOnEntryFocus = false,
49649
50544
  ...groupProps
49650
50545
  } = props;
49651
- const ref = React50.useRef(null);
50546
+ const ref = React55.useRef(null);
49652
50547
  const composedRefs = useComposedRefs(forwardedRef, ref);
49653
50548
  const direction = useDirection(dir);
49654
50549
  const [currentTabStopId, setCurrentTabStopId] = useControllableState({
@@ -49657,12 +50552,12 @@ var RovingFocusGroupImpl = React50.forwardRef((props, forwardedRef) => {
49657
50552
  onChange: onCurrentTabStopIdChange,
49658
50553
  caller: GROUP_NAME
49659
50554
  });
49660
- const [isTabbingBackOut, setIsTabbingBackOut] = React50.useState(false);
50555
+ const [isTabbingBackOut, setIsTabbingBackOut] = React55.useState(false);
49661
50556
  const handleEntryFocus = useCallbackRef2(onEntryFocus);
49662
50557
  const getItems = useCollection(__scopeRovingFocusGroup);
49663
- const isClickFocusRef = React50.useRef(false);
49664
- const [focusableItemsCount, setFocusableItemsCount] = React50.useState(0);
49665
- React50.useEffect(() => {
50558
+ const isClickFocusRef = React55.useRef(false);
50559
+ const [focusableItemsCount, setFocusableItemsCount] = React55.useState(0);
50560
+ React55.useEffect(() => {
49666
50561
  const node = ref.current;
49667
50562
  if (node) {
49668
50563
  node.addEventListener(ENTRY_FOCUS, handleEntryFocus);
@@ -49677,16 +50572,16 @@ var RovingFocusGroupImpl = React50.forwardRef((props, forwardedRef) => {
49677
50572
  dir: direction,
49678
50573
  loop,
49679
50574
  currentTabStopId,
49680
- onItemFocus: React50.useCallback(
50575
+ onItemFocus: React55.useCallback(
49681
50576
  (tabStopId) => setCurrentTabStopId(tabStopId),
49682
50577
  [setCurrentTabStopId]
49683
50578
  ),
49684
- onItemShiftTab: React50.useCallback(() => setIsTabbingBackOut(true), []),
49685
- onFocusableItemAdd: React50.useCallback(
50579
+ onItemShiftTab: React55.useCallback(() => setIsTabbingBackOut(true), []),
50580
+ onFocusableItemAdd: React55.useCallback(
49686
50581
  () => setFocusableItemsCount((prevCount) => prevCount + 1),
49687
50582
  []
49688
50583
  ),
49689
- onFocusableItemRemove: React50.useCallback(
50584
+ onFocusableItemRemove: React55.useCallback(
49690
50585
  () => setFocusableItemsCount((prevCount) => prevCount - 1),
49691
50586
  []
49692
50587
  ),
@@ -49726,7 +50621,7 @@ var RovingFocusGroupImpl = React50.forwardRef((props, forwardedRef) => {
49726
50621
  );
49727
50622
  });
49728
50623
  var ITEM_NAME = "RovingFocusGroupItem";
49729
- var RovingFocusGroupItem = React50.forwardRef(
50624
+ var RovingFocusGroupItem = React55.forwardRef(
49730
50625
  (props, forwardedRef) => {
49731
50626
  const {
49732
50627
  __scopeRovingFocusGroup,
@@ -49742,7 +50637,7 @@ var RovingFocusGroupItem = React50.forwardRef(
49742
50637
  const isCurrentTabStop = context.currentTabStopId === id;
49743
50638
  const getItems = useCollection(__scopeRovingFocusGroup);
49744
50639
  const { onFocusableItemAdd, onFocusableItemRemove, currentTabStopId } = context;
49745
- React50.useEffect(() => {
50640
+ React55.useEffect(() => {
49746
50641
  if (focusable) {
49747
50642
  onFocusableItemAdd();
49748
50643
  return () => onFocusableItemRemove();
@@ -49866,11 +50761,11 @@ var [MenuRootProvider, useMenuRootContext] = createMenuContext(MENU_NAME);
49866
50761
  var Menu = (props) => {
49867
50762
  const { __scopeMenu, open = false, children, dir, onOpenChange, modal = true } = props;
49868
50763
  const popperScope = usePopperScope(__scopeMenu);
49869
- const [content, setContent2] = React50.useState(null);
49870
- const isUsingKeyboardRef = React50.useRef(false);
50764
+ const [content, setContent2] = React55.useState(null);
50765
+ const isUsingKeyboardRef = React55.useRef(false);
49871
50766
  const handleOpenChange = useCallbackRef2(onOpenChange);
49872
50767
  const direction = useDirection(dir);
49873
- React50.useEffect(() => {
50768
+ React55.useEffect(() => {
49874
50769
  const handleKeyDown3 = () => {
49875
50770
  isUsingKeyboardRef.current = true;
49876
50771
  document.addEventListener("pointerdown", handlePointer, { capture: true, once: true });
@@ -49896,7 +50791,7 @@ var Menu = (props) => {
49896
50791
  MenuRootProvider,
49897
50792
  {
49898
50793
  scope: __scopeMenu,
49899
- onClose: React50.useCallback(() => handleOpenChange(false), [handleOpenChange]),
50794
+ onClose: React55.useCallback(() => handleOpenChange(false), [handleOpenChange]),
49900
50795
  isUsingKeyboardRef,
49901
50796
  dir: direction,
49902
50797
  modal,
@@ -49908,7 +50803,7 @@ var Menu = (props) => {
49908
50803
  };
49909
50804
  Menu.displayName = MENU_NAME;
49910
50805
  var ANCHOR_NAME2 = "MenuAnchor";
49911
- var MenuAnchor = React50.forwardRef(
50806
+ var MenuAnchor = React55.forwardRef(
49912
50807
  (props, forwardedRef) => {
49913
50808
  const { __scopeMenu, ...anchorProps } = props;
49914
50809
  const popperScope = usePopperScope(__scopeMenu);
@@ -49928,7 +50823,7 @@ var MenuPortal = (props) => {
49928
50823
  MenuPortal.displayName = PORTAL_NAME3;
49929
50824
  var CONTENT_NAME3 = "MenuContent";
49930
50825
  var [MenuContentProvider, useMenuContentContext] = createMenuContext(CONTENT_NAME3);
49931
- var MenuContent = React50.forwardRef(
50826
+ var MenuContent = React55.forwardRef(
49932
50827
  (props, forwardedRef) => {
49933
50828
  const portalContext = usePortalContext2(CONTENT_NAME3, props.__scopeMenu);
49934
50829
  const { forceMount = portalContext.forceMount, ...contentProps } = props;
@@ -49937,12 +50832,12 @@ var MenuContent = React50.forwardRef(
49937
50832
  return /* @__PURE__ */ jsx(Collection2.Provider, { scope: props.__scopeMenu, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(Collection2.Slot, { scope: props.__scopeMenu, children: rootContext.modal ? /* @__PURE__ */ jsx(MenuRootContentModal, { ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(MenuRootContentNonModal, { ...contentProps, ref: forwardedRef }) }) }) });
49938
50833
  }
49939
50834
  );
49940
- var MenuRootContentModal = React50.forwardRef(
50835
+ var MenuRootContentModal = React55.forwardRef(
49941
50836
  (props, forwardedRef) => {
49942
50837
  const context = useMenuContext(CONTENT_NAME3, props.__scopeMenu);
49943
- const ref = React50.useRef(null);
50838
+ const ref = React55.useRef(null);
49944
50839
  const composedRefs = useComposedRefs(forwardedRef, ref);
49945
- React50.useEffect(() => {
50840
+ React55.useEffect(() => {
49946
50841
  const content = ref.current;
49947
50842
  if (content)
49948
50843
  return hideOthers(content);
@@ -49965,7 +50860,7 @@ var MenuRootContentModal = React50.forwardRef(
49965
50860
  );
49966
50861
  }
49967
50862
  );
49968
- var MenuRootContentNonModal = React50.forwardRef((props, forwardedRef) => {
50863
+ var MenuRootContentNonModal = React55.forwardRef((props, forwardedRef) => {
49969
50864
  const context = useMenuContext(CONTENT_NAME3, props.__scopeMenu);
49970
50865
  return /* @__PURE__ */ jsx(
49971
50866
  MenuContentImpl,
@@ -49980,7 +50875,7 @@ var MenuRootContentNonModal = React50.forwardRef((props, forwardedRef) => {
49980
50875
  );
49981
50876
  });
49982
50877
  var Slot2 = createSlot("MenuContent.ScrollLock");
49983
- var MenuContentImpl = React50.forwardRef(
50878
+ var MenuContentImpl = React55.forwardRef(
49984
50879
  (props, forwardedRef) => {
49985
50880
  const {
49986
50881
  __scopeMenu,
@@ -50003,16 +50898,16 @@ var MenuContentImpl = React50.forwardRef(
50003
50898
  const popperScope = usePopperScope(__scopeMenu);
50004
50899
  const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeMenu);
50005
50900
  const getItems = useCollection2(__scopeMenu);
50006
- const [currentItemId, setCurrentItemId] = React50.useState(null);
50007
- const contentRef = React50.useRef(null);
50901
+ const [currentItemId, setCurrentItemId] = React55.useState(null);
50902
+ const contentRef = React55.useRef(null);
50008
50903
  const composedRefs = useComposedRefs(forwardedRef, contentRef, context.onContentChange);
50009
- const timerRef = React50.useRef(0);
50010
- const searchRef = React50.useRef("");
50011
- const pointerGraceTimerRef = React50.useRef(0);
50012
- const pointerGraceIntentRef = React50.useRef(null);
50013
- const pointerDirRef = React50.useRef("right");
50014
- const lastPointerXRef = React50.useRef(0);
50015
- const ScrollLockWrapper = disableOutsideScroll ? Combination_default2 : React50.Fragment;
50904
+ const timerRef = React55.useRef(0);
50905
+ const searchRef = React55.useRef("");
50906
+ const pointerGraceTimerRef = React55.useRef(0);
50907
+ const pointerGraceIntentRef = React55.useRef(null);
50908
+ const pointerDirRef = React55.useRef("right");
50909
+ const lastPointerXRef = React55.useRef(0);
50910
+ const ScrollLockWrapper = disableOutsideScroll ? Combination_default2 : React55.Fragment;
50016
50911
  const scrollLockWrapperProps = disableOutsideScroll ? { as: Slot2, allowPinchZoom: true } : void 0;
50017
50912
  const handleTypeaheadSearch = (key) => {
50018
50913
  const search = searchRef.current + key;
@@ -50032,11 +50927,11 @@ var MenuContentImpl = React50.forwardRef(
50032
50927
  setTimeout(() => newItem.focus());
50033
50928
  }
50034
50929
  };
50035
- React50.useEffect(() => {
50930
+ React55.useEffect(() => {
50036
50931
  return () => window.clearTimeout(timerRef.current);
50037
50932
  }, []);
50038
50933
  useFocusGuards();
50039
- const isPointerMovingToSubmenu = React50.useCallback((event) => {
50934
+ const isPointerMovingToSubmenu = React55.useCallback((event) => {
50040
50935
  const isMovingTowards = pointerDirRef.current === pointerGraceIntentRef.current?.side;
50041
50936
  return isMovingTowards && isPointerInGraceArea(event, pointerGraceIntentRef.current?.area);
50042
50937
  }, []);
@@ -50045,14 +50940,14 @@ var MenuContentImpl = React50.forwardRef(
50045
50940
  {
50046
50941
  scope: __scopeMenu,
50047
50942
  searchRef,
50048
- onItemEnter: React50.useCallback(
50943
+ onItemEnter: React55.useCallback(
50049
50944
  (event) => {
50050
50945
  if (isPointerMovingToSubmenu(event))
50051
50946
  event.preventDefault();
50052
50947
  },
50053
50948
  [isPointerMovingToSubmenu]
50054
50949
  ),
50055
- onItemLeave: React50.useCallback(
50950
+ onItemLeave: React55.useCallback(
50056
50951
  (event) => {
50057
50952
  if (isPointerMovingToSubmenu(event))
50058
50953
  return;
@@ -50061,7 +50956,7 @@ var MenuContentImpl = React50.forwardRef(
50061
50956
  },
50062
50957
  [isPointerMovingToSubmenu]
50063
50958
  ),
50064
- onTriggerLeave: React50.useCallback(
50959
+ onTriggerLeave: React55.useCallback(
50065
50960
  (event) => {
50066
50961
  if (isPointerMovingToSubmenu(event))
50067
50962
  event.preventDefault();
@@ -50069,7 +50964,7 @@ var MenuContentImpl = React50.forwardRef(
50069
50964
  [isPointerMovingToSubmenu]
50070
50965
  ),
50071
50966
  pointerGraceTimerRef,
50072
- onPointerGraceIntentChange: React50.useCallback((intent) => {
50967
+ onPointerGraceIntentChange: React55.useCallback((intent) => {
50073
50968
  pointerGraceIntentRef.current = intent;
50074
50969
  }, []),
50075
50970
  children: /* @__PURE__ */ jsx(ScrollLockWrapper, { ...scrollLockWrapperProps, children: /* @__PURE__ */ jsx(
@@ -50174,7 +51069,7 @@ var MenuContentImpl = React50.forwardRef(
50174
51069
  );
50175
51070
  MenuContent.displayName = CONTENT_NAME3;
50176
51071
  var GROUP_NAME2 = "MenuGroup";
50177
- var MenuGroup = React50.forwardRef(
51072
+ var MenuGroup = React55.forwardRef(
50178
51073
  (props, forwardedRef) => {
50179
51074
  const { __scopeMenu, ...groupProps } = props;
50180
51075
  return /* @__PURE__ */ jsx(Primitive.div, { role: "group", ...groupProps, ref: forwardedRef });
@@ -50182,7 +51077,7 @@ var MenuGroup = React50.forwardRef(
50182
51077
  );
50183
51078
  MenuGroup.displayName = GROUP_NAME2;
50184
51079
  var LABEL_NAME = "MenuLabel";
50185
- var MenuLabel = React50.forwardRef(
51080
+ var MenuLabel = React55.forwardRef(
50186
51081
  (props, forwardedRef) => {
50187
51082
  const { __scopeMenu, ...labelProps } = props;
50188
51083
  return /* @__PURE__ */ jsx(Primitive.div, { ...labelProps, ref: forwardedRef });
@@ -50191,14 +51086,14 @@ var MenuLabel = React50.forwardRef(
50191
51086
  MenuLabel.displayName = LABEL_NAME;
50192
51087
  var ITEM_NAME2 = "MenuItem";
50193
51088
  var ITEM_SELECT = "menu.itemSelect";
50194
- var MenuItem = React50.forwardRef(
51089
+ var MenuItem = React55.forwardRef(
50195
51090
  (props, forwardedRef) => {
50196
51091
  const { disabled = false, onSelect, ...itemProps } = props;
50197
- const ref = React50.useRef(null);
51092
+ const ref = React55.useRef(null);
50198
51093
  const rootContext = useMenuRootContext(ITEM_NAME2, props.__scopeMenu);
50199
51094
  const contentContext = useMenuContentContext(ITEM_NAME2, props.__scopeMenu);
50200
51095
  const composedRefs = useComposedRefs(forwardedRef, ref);
50201
- const isPointerDownRef = React50.useRef(false);
51096
+ const isPointerDownRef = React55.useRef(false);
50202
51097
  const handleSelect = () => {
50203
51098
  const menuItem = ref.current;
50204
51099
  if (!disabled && menuItem) {
@@ -50241,16 +51136,16 @@ var MenuItem = React50.forwardRef(
50241
51136
  }
50242
51137
  );
50243
51138
  MenuItem.displayName = ITEM_NAME2;
50244
- var MenuItemImpl = React50.forwardRef(
51139
+ var MenuItemImpl = React55.forwardRef(
50245
51140
  (props, forwardedRef) => {
50246
51141
  const { __scopeMenu, disabled = false, textValue, ...itemProps } = props;
50247
51142
  const contentContext = useMenuContentContext(ITEM_NAME2, __scopeMenu);
50248
51143
  const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeMenu);
50249
- const ref = React50.useRef(null);
51144
+ const ref = React55.useRef(null);
50250
51145
  const composedRefs = useComposedRefs(forwardedRef, ref);
50251
- const [isFocused, setIsFocused] = React50.useState(false);
50252
- const [textContent, setTextContent] = React50.useState("");
50253
- React50.useEffect(() => {
51146
+ const [isFocused, setIsFocused] = React55.useState(false);
51147
+ const [textContent, setTextContent] = React55.useState("");
51148
+ React55.useEffect(() => {
50254
51149
  const menuItem = ref.current;
50255
51150
  if (menuItem) {
50256
51151
  setTextContent((menuItem.textContent ?? "").trim());
@@ -50298,7 +51193,7 @@ var MenuItemImpl = React50.forwardRef(
50298
51193
  }
50299
51194
  );
50300
51195
  var CHECKBOX_ITEM_NAME = "MenuCheckboxItem";
50301
- var MenuCheckboxItem = React50.forwardRef(
51196
+ var MenuCheckboxItem = React55.forwardRef(
50302
51197
  (props, forwardedRef) => {
50303
51198
  const { checked = false, onCheckedChange, ...checkboxItemProps } = props;
50304
51199
  return /* @__PURE__ */ jsx(ItemIndicatorProvider, { scope: props.__scopeMenu, checked, children: /* @__PURE__ */ jsx(
@@ -50325,7 +51220,7 @@ var [RadioGroupProvider, useRadioGroupContext] = createMenuContext(
50325
51220
  { value: void 0, onValueChange: () => {
50326
51221
  } }
50327
51222
  );
50328
- var MenuRadioGroup = React50.forwardRef(
51223
+ var MenuRadioGroup = React55.forwardRef(
50329
51224
  (props, forwardedRef) => {
50330
51225
  const { value, onValueChange, ...groupProps } = props;
50331
51226
  const handleValueChange = useCallbackRef2(onValueChange);
@@ -50334,7 +51229,7 @@ var MenuRadioGroup = React50.forwardRef(
50334
51229
  );
50335
51230
  MenuRadioGroup.displayName = RADIO_GROUP_NAME;
50336
51231
  var RADIO_ITEM_NAME = "MenuRadioItem";
50337
- var MenuRadioItem = React50.forwardRef(
51232
+ var MenuRadioItem = React55.forwardRef(
50338
51233
  (props, forwardedRef) => {
50339
51234
  const { value, ...radioItemProps } = props;
50340
51235
  const context = useRadioGroupContext(RADIO_ITEM_NAME, props.__scopeMenu);
@@ -50362,7 +51257,7 @@ var [ItemIndicatorProvider, useItemIndicatorContext] = createMenuContext(
50362
51257
  ITEM_INDICATOR_NAME,
50363
51258
  { checked: false }
50364
51259
  );
50365
- var MenuItemIndicator = React50.forwardRef(
51260
+ var MenuItemIndicator = React55.forwardRef(
50366
51261
  (props, forwardedRef) => {
50367
51262
  const { __scopeMenu, forceMount, ...itemIndicatorProps } = props;
50368
51263
  const indicatorContext = useItemIndicatorContext(ITEM_INDICATOR_NAME, __scopeMenu);
@@ -50384,7 +51279,7 @@ var MenuItemIndicator = React50.forwardRef(
50384
51279
  );
50385
51280
  MenuItemIndicator.displayName = ITEM_INDICATOR_NAME;
50386
51281
  var SEPARATOR_NAME = "MenuSeparator";
50387
- var MenuSeparator = React50.forwardRef(
51282
+ var MenuSeparator = React55.forwardRef(
50388
51283
  (props, forwardedRef) => {
50389
51284
  const { __scopeMenu, ...separatorProps } = props;
50390
51285
  return /* @__PURE__ */ jsx(
@@ -50400,7 +51295,7 @@ var MenuSeparator = React50.forwardRef(
50400
51295
  );
50401
51296
  MenuSeparator.displayName = SEPARATOR_NAME;
50402
51297
  var ARROW_NAME2 = "MenuArrow";
50403
- var MenuArrow = React50.forwardRef(
51298
+ var MenuArrow = React55.forwardRef(
50404
51299
  (props, forwardedRef) => {
50405
51300
  const { __scopeMenu, ...arrowProps } = props;
50406
51301
  const popperScope = usePopperScope(__scopeMenu);
@@ -50411,22 +51306,22 @@ MenuArrow.displayName = ARROW_NAME2;
50411
51306
  var SUB_NAME = "MenuSub";
50412
51307
  var [MenuSubProvider, useMenuSubContext] = createMenuContext(SUB_NAME);
50413
51308
  var SUB_TRIGGER_NAME = "MenuSubTrigger";
50414
- var MenuSubTrigger = React50.forwardRef(
51309
+ var MenuSubTrigger = React55.forwardRef(
50415
51310
  (props, forwardedRef) => {
50416
51311
  const context = useMenuContext(SUB_TRIGGER_NAME, props.__scopeMenu);
50417
51312
  const rootContext = useMenuRootContext(SUB_TRIGGER_NAME, props.__scopeMenu);
50418
51313
  const subContext = useMenuSubContext(SUB_TRIGGER_NAME, props.__scopeMenu);
50419
51314
  const contentContext = useMenuContentContext(SUB_TRIGGER_NAME, props.__scopeMenu);
50420
- const openTimerRef = React50.useRef(null);
51315
+ const openTimerRef = React55.useRef(null);
50421
51316
  const { pointerGraceTimerRef, onPointerGraceIntentChange } = contentContext;
50422
51317
  const scope = { __scopeMenu: props.__scopeMenu };
50423
- const clearOpenTimer = React50.useCallback(() => {
51318
+ const clearOpenTimer = React55.useCallback(() => {
50424
51319
  if (openTimerRef.current)
50425
51320
  window.clearTimeout(openTimerRef.current);
50426
51321
  openTimerRef.current = null;
50427
51322
  }, []);
50428
- React50.useEffect(() => clearOpenTimer, [clearOpenTimer]);
50429
- React50.useEffect(() => {
51323
+ React55.useEffect(() => clearOpenTimer, [clearOpenTimer]);
51324
+ React55.useEffect(() => {
50430
51325
  const pointerGraceTimer = pointerGraceTimerRef.current;
50431
51326
  return () => {
50432
51327
  window.clearTimeout(pointerGraceTimer);
@@ -50518,14 +51413,14 @@ var MenuSubTrigger = React50.forwardRef(
50518
51413
  );
50519
51414
  MenuSubTrigger.displayName = SUB_TRIGGER_NAME;
50520
51415
  var SUB_CONTENT_NAME = "MenuSubContent";
50521
- var MenuSubContent = React50.forwardRef(
51416
+ var MenuSubContent = React55.forwardRef(
50522
51417
  (props, forwardedRef) => {
50523
51418
  const portalContext = usePortalContext2(CONTENT_NAME3, props.__scopeMenu);
50524
51419
  const { forceMount = portalContext.forceMount, ...subContentProps } = props;
50525
51420
  const context = useMenuContext(CONTENT_NAME3, props.__scopeMenu);
50526
51421
  const rootContext = useMenuRootContext(CONTENT_NAME3, props.__scopeMenu);
50527
51422
  const subContext = useMenuSubContext(SUB_CONTENT_NAME, props.__scopeMenu);
50528
- const ref = React50.useRef(null);
51423
+ const ref = React55.useRef(null);
50529
51424
  const composedRefs = useComposedRefs(forwardedRef, ref);
50530
51425
  return /* @__PURE__ */ jsx(Collection2.Provider, { scope: props.__scopeMenu, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(Collection2.Slot, { scope: props.__scopeMenu, children: /* @__PURE__ */ jsx(
50531
51426
  MenuContentImpl,
@@ -50660,7 +51555,7 @@ var DropdownMenu = (props) => {
50660
51555
  modal = true
50661
51556
  } = props;
50662
51557
  const menuScope = useMenuScope(__scopeDropdownMenu);
50663
- const triggerRef = React50.useRef(null);
51558
+ const triggerRef = React55.useRef(null);
50664
51559
  const [open, setOpen] = useControllableState({
50665
51560
  prop: openProp,
50666
51561
  defaultProp: defaultOpen ?? false,
@@ -50676,7 +51571,7 @@ var DropdownMenu = (props) => {
50676
51571
  contentId: useId(),
50677
51572
  open,
50678
51573
  onOpenChange: setOpen,
50679
- onOpenToggle: React50.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),
51574
+ onOpenToggle: React55.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),
50680
51575
  modal,
50681
51576
  children: /* @__PURE__ */ jsx(Root32, { ...menuScope, open, onOpenChange: setOpen, dir, modal, children })
50682
51577
  }
@@ -50684,7 +51579,7 @@ var DropdownMenu = (props) => {
50684
51579
  };
50685
51580
  DropdownMenu.displayName = DROPDOWN_MENU_NAME;
50686
51581
  var TRIGGER_NAME2 = "DropdownMenuTrigger";
50687
- var DropdownMenuTrigger = React50.forwardRef(
51582
+ var DropdownMenuTrigger = React55.forwardRef(
50688
51583
  (props, forwardedRef) => {
50689
51584
  const { __scopeDropdownMenu, disabled = false, ...triggerProps } = props;
50690
51585
  const context = useDropdownMenuContext(TRIGGER_NAME2, __scopeDropdownMenu);
@@ -50732,12 +51627,12 @@ var DropdownMenuPortal = (props) => {
50732
51627
  };
50733
51628
  DropdownMenuPortal.displayName = PORTAL_NAME4;
50734
51629
  var CONTENT_NAME4 = "DropdownMenuContent";
50735
- var DropdownMenuContent = React50.forwardRef(
51630
+ var DropdownMenuContent = React55.forwardRef(
50736
51631
  (props, forwardedRef) => {
50737
51632
  const { __scopeDropdownMenu, ...contentProps } = props;
50738
51633
  const context = useDropdownMenuContext(CONTENT_NAME4, __scopeDropdownMenu);
50739
51634
  const menuScope = useMenuScope(__scopeDropdownMenu);
50740
- const hasInteractedOutsideRef = React50.useRef(false);
51635
+ const hasInteractedOutsideRef = React55.useRef(false);
50741
51636
  return /* @__PURE__ */ jsx(
50742
51637
  Content22,
50743
51638
  {
@@ -50776,7 +51671,7 @@ var DropdownMenuContent = React50.forwardRef(
50776
51671
  );
50777
51672
  DropdownMenuContent.displayName = CONTENT_NAME4;
50778
51673
  var GROUP_NAME3 = "DropdownMenuGroup";
50779
- var DropdownMenuGroup = React50.forwardRef(
51674
+ var DropdownMenuGroup = React55.forwardRef(
50780
51675
  (props, forwardedRef) => {
50781
51676
  const { __scopeDropdownMenu, ...groupProps } = props;
50782
51677
  const menuScope = useMenuScope(__scopeDropdownMenu);
@@ -50785,7 +51680,7 @@ var DropdownMenuGroup = React50.forwardRef(
50785
51680
  );
50786
51681
  DropdownMenuGroup.displayName = GROUP_NAME3;
50787
51682
  var LABEL_NAME2 = "DropdownMenuLabel";
50788
- var DropdownMenuLabel = React50.forwardRef(
51683
+ var DropdownMenuLabel = React55.forwardRef(
50789
51684
  (props, forwardedRef) => {
50790
51685
  const { __scopeDropdownMenu, ...labelProps } = props;
50791
51686
  const menuScope = useMenuScope(__scopeDropdownMenu);
@@ -50794,7 +51689,7 @@ var DropdownMenuLabel = React50.forwardRef(
50794
51689
  );
50795
51690
  DropdownMenuLabel.displayName = LABEL_NAME2;
50796
51691
  var ITEM_NAME3 = "DropdownMenuItem";
50797
- var DropdownMenuItem = React50.forwardRef(
51692
+ var DropdownMenuItem = React55.forwardRef(
50798
51693
  (props, forwardedRef) => {
50799
51694
  const { __scopeDropdownMenu, ...itemProps } = props;
50800
51695
  const menuScope = useMenuScope(__scopeDropdownMenu);
@@ -50803,42 +51698,42 @@ var DropdownMenuItem = React50.forwardRef(
50803
51698
  );
50804
51699
  DropdownMenuItem.displayName = ITEM_NAME3;
50805
51700
  var CHECKBOX_ITEM_NAME2 = "DropdownMenuCheckboxItem";
50806
- var DropdownMenuCheckboxItem = React50.forwardRef((props, forwardedRef) => {
51701
+ var DropdownMenuCheckboxItem = React55.forwardRef((props, forwardedRef) => {
50807
51702
  const { __scopeDropdownMenu, ...checkboxItemProps } = props;
50808
51703
  const menuScope = useMenuScope(__scopeDropdownMenu);
50809
51704
  return /* @__PURE__ */ jsx(CheckboxItem, { ...menuScope, ...checkboxItemProps, ref: forwardedRef });
50810
51705
  });
50811
51706
  DropdownMenuCheckboxItem.displayName = CHECKBOX_ITEM_NAME2;
50812
51707
  var RADIO_GROUP_NAME2 = "DropdownMenuRadioGroup";
50813
- var DropdownMenuRadioGroup = React50.forwardRef((props, forwardedRef) => {
51708
+ var DropdownMenuRadioGroup = React55.forwardRef((props, forwardedRef) => {
50814
51709
  const { __scopeDropdownMenu, ...radioGroupProps } = props;
50815
51710
  const menuScope = useMenuScope(__scopeDropdownMenu);
50816
51711
  return /* @__PURE__ */ jsx(RadioGroup, { ...menuScope, ...radioGroupProps, ref: forwardedRef });
50817
51712
  });
50818
51713
  DropdownMenuRadioGroup.displayName = RADIO_GROUP_NAME2;
50819
51714
  var RADIO_ITEM_NAME2 = "DropdownMenuRadioItem";
50820
- var DropdownMenuRadioItem = React50.forwardRef((props, forwardedRef) => {
51715
+ var DropdownMenuRadioItem = React55.forwardRef((props, forwardedRef) => {
50821
51716
  const { __scopeDropdownMenu, ...radioItemProps } = props;
50822
51717
  const menuScope = useMenuScope(__scopeDropdownMenu);
50823
51718
  return /* @__PURE__ */ jsx(RadioItem, { ...menuScope, ...radioItemProps, ref: forwardedRef });
50824
51719
  });
50825
51720
  DropdownMenuRadioItem.displayName = RADIO_ITEM_NAME2;
50826
51721
  var INDICATOR_NAME = "DropdownMenuItemIndicator";
50827
- var DropdownMenuItemIndicator = React50.forwardRef((props, forwardedRef) => {
51722
+ var DropdownMenuItemIndicator = React55.forwardRef((props, forwardedRef) => {
50828
51723
  const { __scopeDropdownMenu, ...itemIndicatorProps } = props;
50829
51724
  const menuScope = useMenuScope(__scopeDropdownMenu);
50830
51725
  return /* @__PURE__ */ jsx(ItemIndicator, { ...menuScope, ...itemIndicatorProps, ref: forwardedRef });
50831
51726
  });
50832
51727
  DropdownMenuItemIndicator.displayName = INDICATOR_NAME;
50833
51728
  var SEPARATOR_NAME2 = "DropdownMenuSeparator";
50834
- var DropdownMenuSeparator = React50.forwardRef((props, forwardedRef) => {
51729
+ var DropdownMenuSeparator = React55.forwardRef((props, forwardedRef) => {
50835
51730
  const { __scopeDropdownMenu, ...separatorProps } = props;
50836
51731
  const menuScope = useMenuScope(__scopeDropdownMenu);
50837
51732
  return /* @__PURE__ */ jsx(Separator, { ...menuScope, ...separatorProps, ref: forwardedRef });
50838
51733
  });
50839
51734
  DropdownMenuSeparator.displayName = SEPARATOR_NAME2;
50840
51735
  var ARROW_NAME3 = "DropdownMenuArrow";
50841
- var DropdownMenuArrow = React50.forwardRef(
51736
+ var DropdownMenuArrow = React55.forwardRef(
50842
51737
  (props, forwardedRef) => {
50843
51738
  const { __scopeDropdownMenu, ...arrowProps } = props;
50844
51739
  const menuScope = useMenuScope(__scopeDropdownMenu);
@@ -50847,14 +51742,14 @@ var DropdownMenuArrow = React50.forwardRef(
50847
51742
  );
50848
51743
  DropdownMenuArrow.displayName = ARROW_NAME3;
50849
51744
  var SUB_TRIGGER_NAME2 = "DropdownMenuSubTrigger";
50850
- var DropdownMenuSubTrigger = React50.forwardRef((props, forwardedRef) => {
51745
+ var DropdownMenuSubTrigger = React55.forwardRef((props, forwardedRef) => {
50851
51746
  const { __scopeDropdownMenu, ...subTriggerProps } = props;
50852
51747
  const menuScope = useMenuScope(__scopeDropdownMenu);
50853
51748
  return /* @__PURE__ */ jsx(SubTrigger, { ...menuScope, ...subTriggerProps, ref: forwardedRef });
50854
51749
  });
50855
51750
  DropdownMenuSubTrigger.displayName = SUB_TRIGGER_NAME2;
50856
51751
  var SUB_CONTENT_NAME2 = "DropdownMenuSubContent";
50857
- var DropdownMenuSubContent = React50.forwardRef((props, forwardedRef) => {
51752
+ var DropdownMenuSubContent = React55.forwardRef((props, forwardedRef) => {
50858
51753
  const { __scopeDropdownMenu, ...subContentProps } = props;
50859
51754
  const menuScope = useMenuScope(__scopeDropdownMenu);
50860
51755
  return /* @__PURE__ */ jsx(
@@ -50892,7 +51787,7 @@ var SubTrigger2 = DropdownMenuSubTrigger;
50892
51787
  var SubContent2 = DropdownMenuSubContent;
50893
51788
  var DropdownMenu2 = Root23;
50894
51789
  var DropdownMenuTrigger2 = Trigger2;
50895
- var DropdownMenuSubTrigger2 = React50.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs(
51790
+ var DropdownMenuSubTrigger2 = React55.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs(
50896
51791
  SubTrigger2,
50897
51792
  {
50898
51793
  ref,
@@ -50909,7 +51804,7 @@ var DropdownMenuSubTrigger2 = React50.forwardRef(({ className, inset, children,
50909
51804
  }
50910
51805
  ));
50911
51806
  DropdownMenuSubTrigger2.displayName = SubTrigger2.displayName;
50912
- var DropdownMenuSubContent2 = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
51807
+ var DropdownMenuSubContent2 = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
50913
51808
  SubContent2,
50914
51809
  {
50915
51810
  ref,
@@ -50921,7 +51816,7 @@ var DropdownMenuSubContent2 = React50.forwardRef(({ className, ...props }, ref)
50921
51816
  }
50922
51817
  ));
50923
51818
  DropdownMenuSubContent2.displayName = SubContent2.displayName;
50924
- var DropdownMenuContent2 = React50.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(Portal22, { children: /* @__PURE__ */ jsx(
51819
+ var DropdownMenuContent2 = React55.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(Portal22, { children: /* @__PURE__ */ jsx(
50925
51820
  Content23,
50926
51821
  {
50927
51822
  ref,
@@ -50934,7 +51829,7 @@ var DropdownMenuContent2 = React50.forwardRef(({ className, sideOffset = 4, ...p
50934
51829
  }
50935
51830
  ) }));
50936
51831
  DropdownMenuContent2.displayName = Content23.displayName;
50937
- var DropdownMenuItem2 = React50.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
51832
+ var DropdownMenuItem2 = React55.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
50938
51833
  Item23,
50939
51834
  {
50940
51835
  ref,
@@ -50947,7 +51842,7 @@ var DropdownMenuItem2 = React50.forwardRef(({ className, inset, ...props }, ref)
50947
51842
  }
50948
51843
  ));
50949
51844
  DropdownMenuItem2.displayName = Item23.displayName;
50950
- var DropdownMenuCheckboxItem2 = React50.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs(
51845
+ var DropdownMenuCheckboxItem2 = React55.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs(
50951
51846
  CheckboxItem2,
50952
51847
  {
50953
51848
  ref,
@@ -50964,7 +51859,7 @@ var DropdownMenuCheckboxItem2 = React50.forwardRef(({ className, children, check
50964
51859
  }
50965
51860
  ));
50966
51861
  DropdownMenuCheckboxItem2.displayName = CheckboxItem2.displayName;
50967
- var DropdownMenuRadioItem2 = React50.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
51862
+ var DropdownMenuRadioItem2 = React55.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
50968
51863
  RadioItem2,
50969
51864
  {
50970
51865
  ref,
@@ -50980,7 +51875,7 @@ var DropdownMenuRadioItem2 = React50.forwardRef(({ className, children, ...props
50980
51875
  }
50981
51876
  ));
50982
51877
  DropdownMenuRadioItem2.displayName = RadioItem2.displayName;
50983
- var DropdownMenuLabel2 = React50.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
51878
+ var DropdownMenuLabel2 = React55.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
50984
51879
  Label22,
50985
51880
  {
50986
51881
  ref,
@@ -50993,7 +51888,7 @@ var DropdownMenuLabel2 = React50.forwardRef(({ className, inset, ...props }, ref
50993
51888
  }
50994
51889
  ));
50995
51890
  DropdownMenuLabel2.displayName = Label22.displayName;
50996
- var DropdownMenuSeparator2 = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
51891
+ var DropdownMenuSeparator2 = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
50997
51892
  Separator2,
50998
51893
  {
50999
51894
  ref,
@@ -51029,7 +51924,7 @@ var tooltipVariants = cva(
51029
51924
  );
51030
51925
  var Tooltip = TooltipPrimitive.Root;
51031
51926
  var TooltipTrigger = TooltipPrimitive.Trigger;
51032
- var TooltipArrow = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
51927
+ var TooltipArrow = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
51033
51928
  TooltipPrimitive.Arrow,
51034
51929
  {
51035
51930
  ref,
@@ -51038,7 +51933,7 @@ var TooltipArrow = React50.forwardRef(({ className, ...props }, ref) => /* @__PU
51038
51933
  }
51039
51934
  ));
51040
51935
  TooltipArrow.displayName = TooltipPrimitive.Arrow.displayName;
51041
- var TooltipContent = React50.forwardRef(({ className, variant, size: size4, showArrow = false, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxs(
51936
+ var TooltipContent = React55.forwardRef(({ className, variant, size: size4, showArrow = false, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxs(
51042
51937
  TooltipPrimitive.Content,
51043
51938
  {
51044
51939
  ref,
@@ -51052,7 +51947,7 @@ var TooltipContent = React50.forwardRef(({ className, variant, size: size4, show
51052
51947
  }
51053
51948
  ));
51054
51949
  TooltipContent.displayName = TooltipPrimitive.Content.displayName;
51055
- var SimpleTooltip = React50.forwardRef(
51950
+ var SimpleTooltip = React55.forwardRef(
51056
51951
  ({
51057
51952
  children,
51058
51953
  content,
@@ -51117,8 +52012,8 @@ var Popover = (props) => {
51117
52012
  modal = false
51118
52013
  } = props;
51119
52014
  const popperScope = usePopperScope2(__scopePopover);
51120
- const triggerRef = React50.useRef(null);
51121
- const [hasCustomAnchor, setHasCustomAnchor] = React50.useState(false);
52015
+ const triggerRef = React55.useRef(null);
52016
+ const [hasCustomAnchor, setHasCustomAnchor] = React55.useState(false);
51122
52017
  const [open, setOpen] = useControllableState({
51123
52018
  prop: openProp,
51124
52019
  defaultProp: defaultOpen ?? false,
@@ -51133,10 +52028,10 @@ var Popover = (props) => {
51133
52028
  triggerRef,
51134
52029
  open,
51135
52030
  onOpenChange: setOpen,
51136
- onOpenToggle: React50.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),
52031
+ onOpenToggle: React55.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),
51137
52032
  hasCustomAnchor,
51138
- onCustomAnchorAdd: React50.useCallback(() => setHasCustomAnchor(true), []),
51139
- onCustomAnchorRemove: React50.useCallback(() => setHasCustomAnchor(false), []),
52033
+ onCustomAnchorAdd: React55.useCallback(() => setHasCustomAnchor(true), []),
52034
+ onCustomAnchorRemove: React55.useCallback(() => setHasCustomAnchor(false), []),
51140
52035
  modal,
51141
52036
  children
51142
52037
  }
@@ -51144,13 +52039,13 @@ var Popover = (props) => {
51144
52039
  };
51145
52040
  Popover.displayName = POPOVER_NAME;
51146
52041
  var ANCHOR_NAME3 = "PopoverAnchor";
51147
- var PopoverAnchor = React50.forwardRef(
52042
+ var PopoverAnchor = React55.forwardRef(
51148
52043
  (props, forwardedRef) => {
51149
52044
  const { __scopePopover, ...anchorProps } = props;
51150
52045
  const context = usePopoverContext(ANCHOR_NAME3, __scopePopover);
51151
52046
  const popperScope = usePopperScope2(__scopePopover);
51152
52047
  const { onCustomAnchorAdd, onCustomAnchorRemove } = context;
51153
- React50.useEffect(() => {
52048
+ React55.useEffect(() => {
51154
52049
  onCustomAnchorAdd();
51155
52050
  return () => onCustomAnchorRemove();
51156
52051
  }, [onCustomAnchorAdd, onCustomAnchorRemove]);
@@ -51159,7 +52054,7 @@ var PopoverAnchor = React50.forwardRef(
51159
52054
  );
51160
52055
  PopoverAnchor.displayName = ANCHOR_NAME3;
51161
52056
  var TRIGGER_NAME3 = "PopoverTrigger";
51162
- var PopoverTrigger = React50.forwardRef(
52057
+ var PopoverTrigger = React55.forwardRef(
51163
52058
  (props, forwardedRef) => {
51164
52059
  const { __scopePopover, ...triggerProps } = props;
51165
52060
  const context = usePopoverContext(TRIGGER_NAME3, __scopePopover);
@@ -51187,7 +52082,7 @@ var [PortalProvider3, usePortalContext3] = createPopoverContext(PORTAL_NAME5, {
51187
52082
  forceMount: void 0
51188
52083
  });
51189
52084
  var CONTENT_NAME5 = "PopoverContent";
51190
- var PopoverContent = React50.forwardRef(
52085
+ var PopoverContent = React55.forwardRef(
51191
52086
  (props, forwardedRef) => {
51192
52087
  const portalContext = usePortalContext3(CONTENT_NAME5, props.__scopePopover);
51193
52088
  const { forceMount = portalContext.forceMount, ...contentProps } = props;
@@ -51197,13 +52092,13 @@ var PopoverContent = React50.forwardRef(
51197
52092
  );
51198
52093
  PopoverContent.displayName = CONTENT_NAME5;
51199
52094
  var Slot3 = createSlot("PopoverContent.RemoveScroll");
51200
- var PopoverContentModal = React50.forwardRef(
52095
+ var PopoverContentModal = React55.forwardRef(
51201
52096
  (props, forwardedRef) => {
51202
52097
  const context = usePopoverContext(CONTENT_NAME5, props.__scopePopover);
51203
- const contentRef = React50.useRef(null);
52098
+ const contentRef = React55.useRef(null);
51204
52099
  const composedRefs = useComposedRefs(forwardedRef, contentRef);
51205
- const isRightClickOutsideRef = React50.useRef(false);
51206
- React50.useEffect(() => {
52100
+ const isRightClickOutsideRef = React55.useRef(false);
52101
+ React55.useEffect(() => {
51207
52102
  const content = contentRef.current;
51208
52103
  if (content)
51209
52104
  return hideOthers(content);
@@ -51239,11 +52134,11 @@ var PopoverContentModal = React50.forwardRef(
51239
52134
  ) });
51240
52135
  }
51241
52136
  );
51242
- var PopoverContentNonModal = React50.forwardRef(
52137
+ var PopoverContentNonModal = React55.forwardRef(
51243
52138
  (props, forwardedRef) => {
51244
52139
  const context = usePopoverContext(CONTENT_NAME5, props.__scopePopover);
51245
- const hasInteractedOutsideRef = React50.useRef(false);
51246
- const hasPointerDownOutsideRef = React50.useRef(false);
52140
+ const hasInteractedOutsideRef = React55.useRef(false);
52141
+ const hasPointerDownOutsideRef = React55.useRef(false);
51247
52142
  return /* @__PURE__ */ jsx(
51248
52143
  PopoverContentImpl,
51249
52144
  {
@@ -51281,7 +52176,7 @@ var PopoverContentNonModal = React50.forwardRef(
51281
52176
  );
51282
52177
  }
51283
52178
  );
51284
- var PopoverContentImpl = React50.forwardRef(
52179
+ var PopoverContentImpl = React55.forwardRef(
51285
52180
  (props, forwardedRef) => {
51286
52181
  const {
51287
52182
  __scopePopover,
@@ -51345,7 +52240,7 @@ var PopoverContentImpl = React50.forwardRef(
51345
52240
  }
51346
52241
  );
51347
52242
  var CLOSE_NAME2 = "PopoverClose";
51348
- var PopoverClose = React50.forwardRef(
52243
+ var PopoverClose = React55.forwardRef(
51349
52244
  (props, forwardedRef) => {
51350
52245
  const { __scopePopover, ...closeProps } = props;
51351
52246
  const context = usePopoverContext(CLOSE_NAME2, __scopePopover);
@@ -51362,7 +52257,7 @@ var PopoverClose = React50.forwardRef(
51362
52257
  );
51363
52258
  PopoverClose.displayName = CLOSE_NAME2;
51364
52259
  var ARROW_NAME4 = "PopoverArrow";
51365
- var PopoverArrow = React50.forwardRef(
52260
+ var PopoverArrow = React55.forwardRef(
51366
52261
  (props, forwardedRef) => {
51367
52262
  const { __scopePopover, ...arrowProps } = props;
51368
52263
  const popperScope = usePopperScope2(__scopePopover);
@@ -51427,7 +52322,7 @@ var popoverContentVariants = cva(
51427
52322
  );
51428
52323
  var Popover2 = Root24;
51429
52324
  var PopoverTrigger2 = Trigger4;
51430
- var PopoverContent2 = React50.forwardRef(({
52325
+ var PopoverContent2 = React55.forwardRef(({
51431
52326
  className,
51432
52327
  variant,
51433
52328
  size: size4,
@@ -51550,7 +52445,7 @@ var sliderThumbVariants = cva(
51550
52445
  }
51551
52446
  }
51552
52447
  );
51553
- var Slider = React50.forwardRef(({
52448
+ var Slider = React55.forwardRef(({
51554
52449
  className,
51555
52450
  size: size4,
51556
52451
  trackVariant,
@@ -51566,10 +52461,10 @@ var Slider = React50.forwardRef(({
51566
52461
  disabled,
51567
52462
  ...props
51568
52463
  }, ref) => {
51569
- const [sliderValue, setSliderValue] = React50.useState(
52464
+ const [sliderValue, setSliderValue] = React55.useState(
51570
52465
  value || defaultValue || [0]
51571
52466
  );
51572
- React50.useEffect(() => {
52467
+ React55.useEffect(() => {
51573
52468
  if (value !== void 0) {
51574
52469
  setSliderValue(value);
51575
52470
  }
@@ -51584,7 +52479,7 @@ var Slider = React50.forwardRef(({
51584
52479
  const calculateThumbPercent = (value2, min3, max3) => {
51585
52480
  return (value2 - min3) / (max3 - min3) * 100;
51586
52481
  };
51587
- const trackRef = React50.useRef(null);
52482
+ const trackRef = React55.useRef(null);
51588
52483
  const min2 = props.min || 0;
51589
52484
  const max2 = props.max || 100;
51590
52485
  const step = props.step || 1;
@@ -51719,7 +52614,7 @@ var VISUALLY_HIDDEN_STYLES = Object.freeze({
51719
52614
  wordWrap: "normal"
51720
52615
  });
51721
52616
  var NAME3 = "VisuallyHidden";
51722
- var VisuallyHidden = React50.forwardRef(
52617
+ var VisuallyHidden = React55.forwardRef(
51723
52618
  (props, forwardedRef) => {
51724
52619
  return /* @__PURE__ */ jsx(
51725
52620
  Primitive.span,
@@ -51740,7 +52635,7 @@ var VIEWPORT_NAME = "ToastViewport";
51740
52635
  var VIEWPORT_DEFAULT_HOTKEY = ["F8"];
51741
52636
  var VIEWPORT_PAUSE = "toast.viewportPause";
51742
52637
  var VIEWPORT_RESUME = "toast.viewportResume";
51743
- var ToastViewport = React50.forwardRef(
52638
+ var ToastViewport = React55.forwardRef(
51744
52639
  (props, forwardedRef) => {
51745
52640
  const {
51746
52641
  __scopeToast,
@@ -51750,14 +52645,14 @@ var ToastViewport = React50.forwardRef(
51750
52645
  } = props;
51751
52646
  const context = useToastProviderContext(VIEWPORT_NAME, __scopeToast);
51752
52647
  const getItems = useCollection3(__scopeToast);
51753
- const wrapperRef = React50.useRef(null);
51754
- const headFocusProxyRef = React50.useRef(null);
51755
- const tailFocusProxyRef = React50.useRef(null);
51756
- const ref = React50.useRef(null);
52648
+ const wrapperRef = React55.useRef(null);
52649
+ const headFocusProxyRef = React55.useRef(null);
52650
+ const tailFocusProxyRef = React55.useRef(null);
52651
+ const ref = React55.useRef(null);
51757
52652
  const composedRefs = useComposedRefs(forwardedRef, ref, context.onViewportChange);
51758
52653
  const hotkeyLabel = hotkey.join("+").replace(/Key/g, "").replace(/Digit/g, "");
51759
52654
  const hasToasts = context.toastCount > 0;
51760
- React50.useEffect(() => {
52655
+ React55.useEffect(() => {
51761
52656
  const handleKeyDown3 = (event) => {
51762
52657
  const isHotkeyPressed = hotkey.length !== 0 && hotkey.every((key) => event[key] || event.code === key);
51763
52658
  if (isHotkeyPressed)
@@ -51766,7 +52661,7 @@ var ToastViewport = React50.forwardRef(
51766
52661
  document.addEventListener("keydown", handleKeyDown3);
51767
52662
  return () => document.removeEventListener("keydown", handleKeyDown3);
51768
52663
  }, [hotkey]);
51769
- React50.useEffect(() => {
52664
+ React55.useEffect(() => {
51770
52665
  const wrapper = wrapperRef.current;
51771
52666
  const viewport = ref.current;
51772
52667
  if (hasToasts && wrapper && viewport) {
@@ -51810,7 +52705,7 @@ var ToastViewport = React50.forwardRef(
51810
52705
  };
51811
52706
  }
51812
52707
  }, [hasToasts, context.isClosePausedRef]);
51813
- const getSortedTabbableCandidates = React50.useCallback(
52708
+ const getSortedTabbableCandidates = React55.useCallback(
51814
52709
  ({ tabbingDirection }) => {
51815
52710
  const toastItems = getItems();
51816
52711
  const tabbableCandidates = toastItems.map((toastItem) => {
@@ -51822,7 +52717,7 @@ var ToastViewport = React50.forwardRef(
51822
52717
  },
51823
52718
  [getItems]
51824
52719
  );
51825
- React50.useEffect(() => {
52720
+ React55.useEffect(() => {
51826
52721
  const viewport = ref.current;
51827
52722
  if (viewport) {
51828
52723
  const handleKeyDown3 = (event) => {
@@ -51891,7 +52786,7 @@ var ToastViewport = React50.forwardRef(
51891
52786
  );
51892
52787
  ToastViewport.displayName = VIEWPORT_NAME;
51893
52788
  var FOCUS_PROXY_NAME = "ToastFocusProxy";
51894
- var FocusProxy = React50.forwardRef(
52789
+ var FocusProxy = React55.forwardRef(
51895
52790
  (props, forwardedRef) => {
51896
52791
  const { __scopeToast, onFocusFromOutsideViewport, ...proxyProps } = props;
51897
52792
  const context = useToastProviderContext(FOCUS_PROXY_NAME, __scopeToast);
@@ -51919,7 +52814,7 @@ var TOAST_SWIPE_START = "toast.swipeStart";
51919
52814
  var TOAST_SWIPE_MOVE = "toast.swipeMove";
51920
52815
  var TOAST_SWIPE_CANCEL = "toast.swipeCancel";
51921
52816
  var TOAST_SWIPE_END = "toast.swipeEnd";
51922
- var Toast = React50.forwardRef(
52817
+ var Toast = React55.forwardRef(
51923
52818
  (props, forwardedRef) => {
51924
52819
  const { forceMount, open: openProp, defaultOpen, onOpenChange, ...toastProps } = props;
51925
52820
  const [open, setOpen] = useControllableState({
@@ -51971,7 +52866,7 @@ var [ToastInteractiveProvider, useToastInteractiveContext] = createToastContext(
51971
52866
  onClose() {
51972
52867
  }
51973
52868
  });
51974
- var ToastImpl = React50.forwardRef(
52869
+ var ToastImpl = React55.forwardRef(
51975
52870
  (props, forwardedRef) => {
51976
52871
  const {
51977
52872
  __scopeToast,
@@ -51989,14 +52884,14 @@ var ToastImpl = React50.forwardRef(
51989
52884
  ...toastProps
51990
52885
  } = props;
51991
52886
  const context = useToastProviderContext(TOAST_NAME, __scopeToast);
51992
- const [node, setNode2] = React50.useState(null);
52887
+ const [node, setNode2] = React55.useState(null);
51993
52888
  const composedRefs = useComposedRefs(forwardedRef, (node2) => setNode2(node2));
51994
- const pointerStartRef = React50.useRef(null);
51995
- const swipeDeltaRef = React50.useRef(null);
52889
+ const pointerStartRef = React55.useRef(null);
52890
+ const swipeDeltaRef = React55.useRef(null);
51996
52891
  const duration = durationProp || context.duration;
51997
- const closeTimerStartTimeRef = React50.useRef(0);
51998
- const closeTimerRemainingTimeRef = React50.useRef(duration);
51999
- const closeTimerRef = React50.useRef(0);
52892
+ const closeTimerStartTimeRef = React55.useRef(0);
52893
+ const closeTimerRemainingTimeRef = React55.useRef(duration);
52894
+ const closeTimerRef = React55.useRef(0);
52000
52895
  const { onToastAdd, onToastRemove } = context;
52001
52896
  const handleClose = useCallbackRef2(() => {
52002
52897
  const isFocusInToast = node?.contains(document.activeElement);
@@ -52004,7 +52899,7 @@ var ToastImpl = React50.forwardRef(
52004
52899
  context.viewport?.focus();
52005
52900
  onClose();
52006
52901
  });
52007
- const startTimer = React50.useCallback(
52902
+ const startTimer = React55.useCallback(
52008
52903
  (duration2) => {
52009
52904
  if (!duration2 || duration2 === Infinity)
52010
52905
  return;
@@ -52014,7 +52909,7 @@ var ToastImpl = React50.forwardRef(
52014
52909
  },
52015
52910
  [handleClose]
52016
52911
  );
52017
- React50.useEffect(() => {
52912
+ React55.useEffect(() => {
52018
52913
  const viewport = context.viewport;
52019
52914
  if (viewport) {
52020
52915
  const handleResume = () => {
@@ -52035,15 +52930,15 @@ var ToastImpl = React50.forwardRef(
52035
52930
  };
52036
52931
  }
52037
52932
  }, [context.viewport, duration, onPause, onResume, startTimer]);
52038
- React50.useEffect(() => {
52933
+ React55.useEffect(() => {
52039
52934
  if (open && !context.isClosePausedRef.current)
52040
52935
  startTimer(duration);
52041
52936
  }, [open, duration, context.isClosePausedRef, startTimer]);
52042
- React50.useEffect(() => {
52937
+ React55.useEffect(() => {
52043
52938
  onToastAdd();
52044
52939
  return () => onToastRemove();
52045
52940
  }, [onToastAdd, onToastRemove]);
52046
- const announceTextContent = React50.useMemo(() => {
52941
+ const announceTextContent = React55.useMemo(() => {
52047
52942
  return node ? getAnnounceTextContent(node) : null;
52048
52943
  }, [node]);
52049
52944
  if (!context.viewport)
@@ -52165,10 +53060,10 @@ var ToastImpl = React50.forwardRef(
52165
53060
  var ToastAnnounce = (props) => {
52166
53061
  const { __scopeToast, children, ...announceProps } = props;
52167
53062
  const context = useToastProviderContext(TOAST_NAME, __scopeToast);
52168
- const [renderAnnounceText, setRenderAnnounceText] = React50.useState(false);
52169
- const [isAnnounced, setIsAnnounced] = React50.useState(false);
53063
+ const [renderAnnounceText, setRenderAnnounceText] = React55.useState(false);
53064
+ const [isAnnounced, setIsAnnounced] = React55.useState(false);
52170
53065
  useNextFrame(() => setRenderAnnounceText(true));
52171
- React50.useEffect(() => {
53066
+ React55.useEffect(() => {
52172
53067
  const timer = window.setTimeout(() => setIsAnnounced(true), 1e3);
52173
53068
  return () => window.clearTimeout(timer);
52174
53069
  }, []);
@@ -52179,7 +53074,7 @@ var ToastAnnounce = (props) => {
52179
53074
  ] }) }) });
52180
53075
  };
52181
53076
  var TITLE_NAME2 = "ToastTitle";
52182
- var ToastTitle = React50.forwardRef(
53077
+ var ToastTitle = React55.forwardRef(
52183
53078
  (props, forwardedRef) => {
52184
53079
  const { __scopeToast, ...titleProps } = props;
52185
53080
  return /* @__PURE__ */ jsx(Primitive.div, { ...titleProps, ref: forwardedRef });
@@ -52187,7 +53082,7 @@ var ToastTitle = React50.forwardRef(
52187
53082
  );
52188
53083
  ToastTitle.displayName = TITLE_NAME2;
52189
53084
  var DESCRIPTION_NAME2 = "ToastDescription";
52190
- var ToastDescription = React50.forwardRef(
53085
+ var ToastDescription = React55.forwardRef(
52191
53086
  (props, forwardedRef) => {
52192
53087
  const { __scopeToast, ...descriptionProps } = props;
52193
53088
  return /* @__PURE__ */ jsx(Primitive.div, { ...descriptionProps, ref: forwardedRef });
@@ -52195,7 +53090,7 @@ var ToastDescription = React50.forwardRef(
52195
53090
  );
52196
53091
  ToastDescription.displayName = DESCRIPTION_NAME2;
52197
53092
  var ACTION_NAME = "ToastAction";
52198
- var ToastAction = React50.forwardRef(
53093
+ var ToastAction = React55.forwardRef(
52199
53094
  (props, forwardedRef) => {
52200
53095
  const { altText, ...actionProps } = props;
52201
53096
  if (!altText.trim()) {
@@ -52209,7 +53104,7 @@ var ToastAction = React50.forwardRef(
52209
53104
  );
52210
53105
  ToastAction.displayName = ACTION_NAME;
52211
53106
  var CLOSE_NAME3 = "ToastClose";
52212
- var ToastClose = React50.forwardRef(
53107
+ var ToastClose = React55.forwardRef(
52213
53108
  (props, forwardedRef) => {
52214
53109
  const { __scopeToast, ...closeProps } = props;
52215
53110
  const interactiveContext = useToastInteractiveContext(CLOSE_NAME3, __scopeToast);
@@ -52225,7 +53120,7 @@ var ToastClose = React50.forwardRef(
52225
53120
  }
52226
53121
  );
52227
53122
  ToastClose.displayName = CLOSE_NAME3;
52228
- var ToastAnnounceExclude = React50.forwardRef((props, forwardedRef) => {
53123
+ var ToastAnnounceExclude = React55.forwardRef((props, forwardedRef) => {
52229
53124
  const { __scopeToast, altText, ...announceExcludeProps } = props;
52230
53125
  return /* @__PURE__ */ jsx(
52231
53126
  Primitive.div,
@@ -52325,7 +53220,7 @@ var Title2 = ToastTitle;
52325
53220
  var Description2 = ToastDescription;
52326
53221
  var Action = ToastAction;
52327
53222
  var Close3 = ToastClose;
52328
- var ToastViewport2 = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
53223
+ var ToastViewport2 = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
52329
53224
  Viewport,
52330
53225
  {
52331
53226
  ref,
@@ -52354,7 +53249,7 @@ var toastVariants = cva(
52354
53249
  }
52355
53250
  }
52356
53251
  );
52357
- var Toast2 = React50.forwardRef(({ className, variant, ...props }, ref) => {
53252
+ var Toast2 = React55.forwardRef(({ className, variant, ...props }, ref) => {
52358
53253
  return /* @__PURE__ */ jsx(
52359
53254
  Root25,
52360
53255
  {
@@ -52365,7 +53260,7 @@ var Toast2 = React50.forwardRef(({ className, variant, ...props }, ref) => {
52365
53260
  );
52366
53261
  });
52367
53262
  Toast2.displayName = Root25.displayName;
52368
- var ToastAction2 = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
53263
+ var ToastAction2 = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
52369
53264
  Action,
52370
53265
  {
52371
53266
  ref,
@@ -52377,7 +53272,7 @@ var ToastAction2 = React50.forwardRef(({ className, ...props }, ref) => /* @__PU
52377
53272
  }
52378
53273
  ));
52379
53274
  ToastAction2.displayName = Action.displayName;
52380
- var ToastClose2 = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
53275
+ var ToastClose2 = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
52381
53276
  Close3,
52382
53277
  {
52383
53278
  ref,
@@ -52391,7 +53286,7 @@ var ToastClose2 = React50.forwardRef(({ className, ...props }, ref) => /* @__PUR
52391
53286
  }
52392
53287
  ));
52393
53288
  ToastClose2.displayName = Close3.displayName;
52394
- var ToastTitle2 = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
53289
+ var ToastTitle2 = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
52395
53290
  Title2,
52396
53291
  {
52397
53292
  ref,
@@ -52400,7 +53295,7 @@ var ToastTitle2 = React50.forwardRef(({ className, ...props }, ref) => /* @__PUR
52400
53295
  }
52401
53296
  ));
52402
53297
  ToastTitle2.displayName = Title2.displayName;
52403
- var ToastDescription2 = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
53298
+ var ToastDescription2 = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
52404
53299
  Description2,
52405
53300
  {
52406
53301
  ref,
@@ -53945,7 +54840,7 @@ function MemoryEfficientData({
53945
54840
  position: "absolute",
53946
54841
  width: "100%"
53947
54842
  },
53948
- children: visibleData.map((item, index2) => /* @__PURE__ */ jsx(React50__default.Fragment, { children: renderItem(item, visibleRange.start + index2) }, visibleRange.start + index2))
54843
+ children: visibleData.map((item, index2) => /* @__PURE__ */ jsx(React55__default.Fragment, { children: renderItem(item, visibleRange.start + index2) }, visibleRange.start + index2))
53949
54844
  }
53950
54845
  ) })
53951
54846
  }
@@ -54265,7 +55160,7 @@ function SelectableVirtualList({
54265
55160
  }, [originalRenderItem, selectable, selectedItems, handleItemClick]);
54266
55161
  return /* @__PURE__ */ jsx(VirtualList, { ...props, renderItem });
54267
55162
  }
54268
- var SwipeableCard = React50__default.forwardRef(
55163
+ var SwipeableCard = React55__default.forwardRef(
54269
55164
  ({
54270
55165
  children,
54271
55166
  onSwipeLeft,
@@ -54574,9 +55469,9 @@ function AdvancedChart({
54574
55469
  animated = true,
54575
55470
  responsive = true
54576
55471
  }) {
54577
- const [isFullscreen, setIsFullscreen] = React50__default.useState(false);
54578
- const chartRef = React50__default.useRef(null);
54579
- const trend = React50__default.useMemo(() => {
55472
+ const [isFullscreen, setIsFullscreen] = React55__default.useState(false);
55473
+ const chartRef = React55__default.useRef(null);
55474
+ const trend = React55__default.useMemo(() => {
54580
55475
  if (!data.length || !series.length)
54581
55476
  return null;
54582
55477
  const firstSeries = series[0];
@@ -54822,7 +55717,7 @@ function Dashboard({
54822
55717
  onRefresh,
54823
55718
  loading = false
54824
55719
  }) {
54825
- const [refreshing, setRefreshing] = React50__default.useState(false);
55720
+ const [refreshing, setRefreshing] = React55__default.useState(false);
54826
55721
  const handleRefresh = async () => {
54827
55722
  if (onRefresh) {
54828
55723
  setRefreshing(true);
@@ -55075,4 +55970,4 @@ function DraggableList({
55075
55970
  ) });
55076
55971
  }
55077
55972
 
55078
- export { AdvancedChart, Calendar2 as Calendar, Dashboard, DraggableList, Kanban, MemoryAnalytics, MemoryEfficientData, RichTextEditor, SelectableVirtualList, SwipeableCard, Timeline, VirtualList, useStreamingData, useVirtualList };
55973
+ export { AdvancedChart, AnimatedButton, Calendar2 as Calendar, Dashboard, DraggableList, ErrorBoundary, FloatingActionButton, HoverCard3D, Kanban, MagneticButton, MemoryAnalytics, MemoryEfficientData, PinchZoom, RichTextEditor, SelectableVirtualList, SpotlightCard, SwipeableCard, Timeline, VirtualList, animatedButtonVariants, useStreamingData, useVirtualList };