@api7/ui-components 0.1.0 → 0.2.0

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.
package/README.md CHANGED
@@ -1,48 +1,188 @@
1
1
  # @api7/ui-components
2
2
 
3
- API7 component library built on Base UI and Tailwind CSS v4.
3
+ API7 React component library built on [Base UI](https://base-ui.com) and Tailwind CSS v4. It ships a precompiled stylesheet, so an application does not need Tailwind CSS to use it.
4
4
 
5
- ## Setup
5
+ ## Installation
6
6
 
7
- Import the stylesheet once, before the app's own styles:
7
+ ```sh
8
+ npm install @api7/ui-components react-day-picker lucide-react
9
+ # or
10
+ pnpm add @api7/ui-components react-day-picker lucide-react
11
+ # or
12
+ yarn add @api7/ui-components react-day-picker lucide-react
13
+ ```
8
14
 
9
- import '@api7/ui-components/styles.css';
15
+ The package expects these peer dependencies in the application:
10
16
 
11
- The stylesheet is precompiled, so the app does not need Tailwind CSS. An app that uses Tailwind itself can load both: every library class carries the `asu:` prefix and every library variable the `--asu-` prefix.
17
+ | Package | Version | Needed for |
18
+ | ----------------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
19
+ | `react`, `react-dom` | `^19` | Everything |
20
+ | `lucide-react` | `^1` | Icons used inside components |
21
+ | `react-day-picker` | `^10.0.1` | Required. `Calendar`, `DatePicker` and `DateRangePicker` import it, and the package declares it as a required peer, so install it even if you do not use them |
22
+ | `@tanstack/react-form` | `^1.33.0` | `@api7/ui-components/form` (optional) |
23
+ | `@tanstack/react-table` | `^9.0.0` | `@api7/ui-components/data-table` (optional) |
12
24
 
13
- The CSS reset only applies inside library components (`[data-slot]` elements), so the rest of the page keeps its own styles. Load a font for `--asu-font-sans` (Inter by default, for example with `@fontsource-variable/inter`), or override the variable to use another font.
25
+ Add the optional ones only if you import those entry points.
14
26
 
15
- Theme colors are CSS variables such as `--asu-primary`. Override them on `:root` or `[data-theme=dark]` to change the palette. `className` on a component is passed through to the element for the app's own classes; it cannot restyle what the component already sets.
27
+ ## Quick start
16
28
 
17
- ## Peer dependencies
29
+ 1. Import the stylesheet once, in the entry file of the application, before your own styles:
18
30
 
19
- Install these in the application: `react` and `react-dom` 19, `lucide-react` 1, and `react-day-picker` 10 (the calendar and date pickers import it). `@tanstack/react-form` and `@tanstack/react-table` are optional and only needed for the `form` and `data-table` entry points.
31
+ ```ts
32
+ import '@api7/ui-components/styles.css';
33
+ ```
20
34
 
21
- ## Entry points
22
-
23
- - `@api7/ui-components`: components, hooks and `ConfigProvider`.
24
- - `@api7/ui-components/form`: form components built on TanStack Form. Needs the optional peer dependency `@tanstack/react-form`.
25
- - `@api7/ui-components/data-table`: the data table built on TanStack Table. Needs the optional peer dependency `@tanstack/react-table`.
26
- - `@api7/ui-components/tokens`: the design token data (`palette`, `themes`, `FAMILIES`, `STEPS` and the contrast helpers `AA`, `semanticPairs`, `badgePairs`) for documentation pages. The CSS generators stay internal.
27
- - `@api7/ui-components/styles.css`: the precompiled stylesheet.
35
+ 2. Load a font for `--asu-font-sans`. It is Inter by default. For example, install `@fontsource-variable/inter` (`npm install @fontsource-variable/inter`) and import it in the same entry file:
28
36
 
29
- ## Tokens
37
+ ```ts
38
+ import '@fontsource-variable/inter';
39
+ ```
30
40
 
31
- Token data lives in `src/tokens/`. After changing it, run `pnpm --filter @api7/ui-components tokens` to regenerate `src/theme.css` and `packages/storybook/.storybook/story-theme.css`. Never edit either file by hand; a test fails when one is out of date.
41
+ To use another font, override the variable:
32
42
 
33
- `culori` is a runtime dependency because the public tokens entry builds the palette with it when it is imported.
43
+ ```css
44
+ :root {
45
+ --asu-font-sans: 'Your Font', sans-serif;
46
+ }
47
+ ```
34
48
 
35
- ## Tests
49
+ 3. Use the components. Render `Toaster` once if you use `toast`, and wrap the application in `ConfigProvider` if you need a locale other than `en-US`:
36
50
 
37
- `vitest.config.ts` has two projects: `unit` (Node) and `browser` (every `*.test.tsx`, in headless Chromium through Playwright). Run one with `pnpm exec vitest run --project browser`. Install the browser once with `pnpm exec playwright install chromium`. The stories are tested in [`packages/storybook`](../storybook/README.md).
51
+ ```tsx
52
+ import { Button, ConfigProvider, Toaster, toast } from '@api7/ui-components';
38
53
 
39
- The browser project has a 30 second test timeout, and on CI (`CI` set) a failed test is retried twice. A test that passes only on a retry is reported as flaky in the run output, so treat that as a bug to fix, not as noise. A test file that cannot be imported is not retried.
54
+ export function App() {
55
+ return (
56
+ <ConfigProvider locale="zh-CN">
57
+ <Button onClick={() => toast.success('Saved', { description: 'Your changes were stored.' })}>Save</Button>
58
+ <Toaster />
59
+ </ConfigProvider>
60
+ );
61
+ }
62
+ ```
40
63
 
41
- Two things make browser tests slow or flaky:
64
+ `ConfigProvider` accepts `locale` (`en-US` or `zh-CN`) and `messages`, an object that overrides the built-in texts, such as the loading label of a button, the close buttons, the empty state of the data table and the pagination labels. Define `messages` at module scope or memoize it.
42
65
 
43
- - **Do not click an element that is meant to be disabled with a plain `userEvent.click`.** Playwright waits for the element to become enabled until the action timeout, and a `.catch` around it only hides the wait, so the test always takes as long as the timeout. Click with `{ force: true }` and assert that nothing happened.
44
- - A test that takes seconds on a workstation can fail on a slower runner. Check the slowest tests with `--reporter=verbose` after adding one, a good browser test finishes in well under a second, and only fuzz style tests run for a few seconds.
45
-
46
- ## Releasing
66
+ ## Entry points
47
67
 
48
- Releases are made with Changesets from the repository root. See [Releasing](../../CONTRIBUTING.md#releasing).
68
+ | Import | Contents |
69
+ | -------------------------------- | ------------------------------------------------------------------------------------------------------------- |
70
+ | `@api7/ui-components` | Components, `toast` and `Toaster`, `ConfigProvider`, `useLocale` and `useMessages` |
71
+ | `@api7/ui-components/form` | Form components built on TanStack Form |
72
+ | `@api7/ui-components/data-table` | The data table built on TanStack Table |
73
+ | `@api7/ui-components/tokens` | Design token data (`palette`, `themes`, `FAMILIES`, `STEPS` and the contrast helpers) for documentation pages |
74
+ | `@api7/ui-components/styles.css` | The precompiled stylesheet |
75
+
76
+ The package is ESM only. Component modules keep their `"use client"` directive, so the components work in a React Server Components setup such as the Next.js app router.
77
+
78
+ ## Buttons
79
+
80
+ `Button` takes a `variant`: `primary` (the default), `secondary`, `outline`, `ghost`, `destructive` or `link`. It takes a `size`: `sm`, `md` (the default), `lg` or `icon`. `loading` disables the button and shows a spinner, and `loadingLabel` sets the text that screen readers announce.
81
+
82
+ ```tsx
83
+ import { Button } from '@api7/ui-components';
84
+
85
+ export function Actions() {
86
+ return (
87
+ <>
88
+ <Button>Save</Button>
89
+ <Button variant="outline" size="sm">
90
+ Cancel
91
+ </Button>
92
+ <Button variant="destructive" loading loadingLabel="Deleting">
93
+ Delete
94
+ </Button>
95
+ </>
96
+ );
97
+ }
98
+ ```
99
+
100
+ A link that looks like a button is an ordinary anchor or router link styled with `buttonVariants`. Give it `data-slot="button"` so the library's CSS reset applies to it:
101
+
102
+ ```tsx
103
+ import { buttonVariants } from '@api7/ui-components';
104
+
105
+ export function DocsLink() {
106
+ return (
107
+ <a href="/docs" data-slot="button" className={buttonVariants({ variant: 'outline' })}>
108
+ Docs
109
+ </a>
110
+ );
111
+ }
112
+ ```
113
+
114
+ ## Forms
115
+
116
+ `@api7/ui-components/form` wraps TanStack Form. `useAppForm` returns a form whose `AppField` hands you ready made fields: `TextField`, `TextareaField`, `NumberField`, `SelectField`, `ComboboxField`, `DatePickerField`, `DateRangePickerField`, `CheckboxField`, `SwitchField` and `RadioGroupField`:
117
+
118
+ ```tsx
119
+ import { Button } from '@api7/ui-components';
120
+ import { useAppForm } from '@api7/ui-components/form';
121
+
122
+ export function NameForm({ onSave }: { onSave: (name: string) => void }) {
123
+ const form = useAppForm({
124
+ defaultValues: { name: '' },
125
+ onSubmit: ({ value }) => onSave(value.name),
126
+ });
127
+
128
+ return (
129
+ <form
130
+ noValidate
131
+ onSubmit={(event) => {
132
+ event.preventDefault();
133
+ void form.handleSubmit();
134
+ }}
135
+ >
136
+ <form.AppField name="name" validators={{ onChange: ({ value }) => (value ? undefined : 'Name is required') }}>
137
+ {(field) => <field.TextField label="Name" />}
138
+ </form.AppField>
139
+ <Button type="submit">Save</Button>
140
+ </form>
141
+ );
142
+ }
143
+ ```
144
+
145
+ Validators are the ones of TanStack Form, so a function or a Standard Schema such as a zod schema both work. A string returned by a validator is shown under the field.
146
+
147
+ ## Joining a field and a button
148
+
149
+ `InputGroup` joins an `Input` with a `Button` or an `InputGroupAddon` into one control. The group draws no border, ring or state of its own. Each part keeps its own border, hover, focus, invalid and disabled styling, and they touch with one divider between them, so the field and the button read as one. Only the outer corners of the group are round. An `Input` and a `Button` that stand alone are not changed.
150
+
151
+ ```tsx
152
+ import { Button, Input, InputGroup, InputGroupAddon } from '@api7/ui-components';
153
+
154
+ export function TokenField({ token, onCopy }: { token: string; onCopy: () => void }) {
155
+ return (
156
+ <InputGroup>
157
+ <Input aria-label="Token" readOnly value={token} />
158
+ <Button variant="outline" onClick={onCopy}>
159
+ Copy
160
+ </Button>
161
+ </InputGroup>
162
+ );
163
+ }
164
+
165
+ export function HostField() {
166
+ return (
167
+ <InputGroup>
168
+ <InputGroupAddon>https://</InputGroupAddon>
169
+ <Input aria-label="Host" />
170
+ <InputGroupAddon>.example.com</InputGroupAddon>
171
+ </InputGroup>
172
+ );
173
+ }
174
+ ```
175
+
176
+ The parts are the direct children of the group, in any order. An `InputGroupAddon` is a block with the muted background of the legacy console for text, an icon or a button, and a `Button` inside it loses its own surface. The state belongs to the part that has it: a focused field or button is framed alone, and an invalid field (`aria-invalid`, or a `Field` that is invalid) has the invalid border on the field only, as a disabled field has the disabled background on the field only. An outline button has the border colour and the focus of an input. A button with a fill (`primary`, `secondary` or `destructive`) keeps its own edge: at rest the border of the field toward it is transparent, so no line crosses the fill. The group is 32px high like an `Input`, and the parts stretch to that height, so they take no height of their own. Put the group inside a `Field` and a `FieldLabel` labels the field in it as it does any `Input`.
177
+
178
+ ## Theming
179
+
180
+ Theme colors, radii and the font are CSS variables with the `--asu-` prefix, for example `--asu-primary`. Override them on `:root` to change the palette. Only a light theme ships. The stylesheet also reads `[data-theme=dark]`, so a dark palette can be supplied by an application that sets those variables on that selector.
181
+
182
+ `className` on a component is passed to its element for your own classes. The library's component rules are not placed in a cascade layer, so styles of yours that are in a layer, such as the utilities of Tailwind CSS, cannot override what a component already sets. Your own rules that are not in a layer compete by specificity and source order as usual, so import the library stylesheet first, as the quick start says, and use a selector that is specific enough.
183
+
184
+ ### Using it next to Tailwind CSS
185
+
186
+ Every utility class in the library carries the `asu:` prefix and every variable the `--asu-` prefix, so an application that uses Tailwind itself can load both without clashes.
187
+
188
+ The CSS reset applies only inside library components (`[data-slot]` elements and their descendants), so the rest of the page keeps its own styles.
@@ -44,6 +44,7 @@ function Button$1({ className, variant, size, loading = false, loadingLabel, dis
44
44
  "aria-busy": loading || void 0,
45
45
  ...props,
46
46
  "data-slot": "button",
47
+ "data-variant": variant === null ? void 0 : variant ?? "primary",
47
48
  children: [
48
49
  loading && /* @__PURE__ */ jsx(LoaderCircle, {
49
50
  "aria-hidden": "true",
@@ -0,0 +1,13 @@
1
+ import { ComponentProps } from "react";
2
+ //#region src/components/input-group/input-group.d.ts
3
+ export type InputGroupProps = ComponentProps<'div'>;
4
+ /** Joins an `Input` and a `Button` or an `InputGroupAddon` into one control: they touch, share one divider, and each keeps its own hover and focus. */
5
+ declare function InputGroup({ className, ...props }: InputGroupProps): import("react").JSX.Element;
6
+ export type InputGroupAddonProps = ComponentProps<'div'>;
7
+ /**
8
+ * A block of text, an icon or a button at the side of the field, on the muted background of the legacy console. A `Button`
9
+ * inside it loses its own surface and fills the block. It is drawn with a divider on the side that faces the field.
10
+ */
11
+ declare function InputGroupAddon({ className, ...props }: InputGroupAddonProps): import("react").JSX.Element;
12
+ //#endregion
13
+ export { InputGroup, InputGroupAddon };
@@ -0,0 +1,36 @@
1
+ "use client";
2
+ import { cn } from "../../lib/cn.js";
3
+ import { jsx } from "react/jsx-runtime";
4
+ //#region src/components/input-group/input-group.tsx
5
+ const groupParts = [
6
+ "asu:isolate",
7
+ "asu:[&>[data-slot]]:h-auto asu:[&>[data-slot]]:rounded-none",
8
+ "asu:[&>[data-slot]:first-child]:rounded-l-sm asu:[&>[data-slot]:last-child]:rounded-r-sm asu:[&>[data-slot]:not(:first-child)]:-ml-px",
9
+ "asu:[&>[data-slot=input]]:relative asu:[&>[data-slot=input]]:flex-1 asu:[&>[data-slot=input]]:focus-visible:z-10",
10
+ "asu:[&>[data-slot=button]]:focus-visible:relative asu:[&>[data-slot=button]]:focus-visible:z-10",
11
+ "asu:[&>[data-slot=input]+[data-slot][data-slot]]:border-l-transparent asu:[&>[data-slot][data-slot]:has(+[data-slot=input])]:border-r-transparent",
12
+ "asu:[&>[data-slot=input]:not(:focus-visible):not([aria-invalid=true]):has(+[data-slot=button]:is([data-variant=primary],[data-variant=secondary],[data-variant=destructive]))]:border-r-transparent asu:[&>[data-slot=input]+[data-slot=button]:is([data-variant=primary],[data-variant=secondary],[data-variant=destructive])]:ml-0",
13
+ "asu:[&>[data-slot=button]:is([data-variant=primary],[data-variant=secondary],[data-variant=destructive])+[data-slot=input]:not(:focus-visible):not([aria-invalid=true])]:border-l-transparent asu:[&>[data-slot=button]:is([data-variant=primary],[data-variant=secondary],[data-variant=destructive])+[data-slot=input]]:ml-0",
14
+ "asu:[&>[data-slot=button][data-variant=outline]]:border-input asu:[&>[data-slot=button][data-variant=outline]]:focus-visible:border-ring asu:[&>[data-slot=button][data-variant=outline]]:focus-visible:ring-ring/30"
15
+ ].join(" ");
16
+ /** Joins an `Input` and a `Button` or an `InputGroupAddon` into one control: they touch, share one divider, and each keeps its own hover and focus. */
17
+ function InputGroup({ className, ...props }) {
18
+ return /* @__PURE__ */ jsx("div", {
19
+ className: cn("asu:flex asu:h-8 asu:w-full asu:items-stretch", groupParts, className),
20
+ ...props,
21
+ "data-slot": "input-group"
22
+ });
23
+ }
24
+ /**
25
+ * A block of text, an icon or a button at the side of the field, on the muted background of the legacy console. A `Button`
26
+ * inside it loses its own surface and fills the block. It is drawn with a divider on the side that faces the field.
27
+ */
28
+ function InputGroupAddon({ className, ...props }) {
29
+ return /* @__PURE__ */ jsx("div", {
30
+ className: cn("asu:flex asu:shrink-0 asu:items-center asu:border asu:border-input asu:bg-muted asu:px-3 asu:text-sm asu:text-muted-foreground", "asu:overflow-hidden asu:[&_[data-slot=button]]:-mx-3 asu:[&_[data-slot=button]]:h-full asu:[&_[data-slot=button]]:rounded-none asu:[&_[data-slot=button]]:border-0 asu:[&_[data-slot=button]]:focus-visible:ring-inset asu:[&_[data-slot=button]]:focus-visible:ring-ring asu:[&_[data-slot=button]]:bg-transparent asu:[&_[data-slot=button]]:text-foreground asu:[&_[data-slot=button]]:hover:bg-accent", className),
31
+ ...props,
32
+ "data-slot": "input-group-addon"
33
+ });
34
+ }
35
+ //#endregion
36
+ export { InputGroup, InputGroupAddon };
package/dist/index.d.ts CHANGED
@@ -17,6 +17,7 @@ import { Empty, EmptyContent, EmptyContentProps, EmptyDescription, EmptyDescript
17
17
  import { Field, FieldDescription, FieldDescriptionProps, FieldError, FieldErrorProps, FieldLabel, FieldLabelProps, FieldProps, Fieldset, FieldsetLegend, FieldsetLegendProps, FieldsetProps } from "./components/field/field.js";
18
18
  import { Dialog, DialogBody, DialogBodyProps, DialogClose, DialogCloseProps, DialogContent, DialogContentProps, DialogDescription, DialogDescriptionProps, DialogFooter, DialogFooterProps, DialogHeader, DialogHeaderProps, DialogProps, DialogTitle, DialogTitleProps, DialogTrigger, DialogTriggerProps } from "./components/dialog/dialog.js";
19
19
  import { Drawer, DrawerBody, DrawerBodyProps, DrawerClose, DrawerCloseProps, DrawerContent, DrawerContentProps, DrawerDescription, DrawerDescriptionProps, DrawerFooter, DrawerFooterProps, DrawerHeader, DrawerHeaderProps, DrawerProps, DrawerTitle, DrawerTitleProps, DrawerTrigger, DrawerTriggerProps } from "./components/drawer/drawer.js";
20
+ import { InputGroup, InputGroupAddon, InputGroupAddonProps, InputGroupProps } from "./components/input-group/input-group.js";
20
21
  import { Menu, MenuCheckboxItem, MenuCheckboxItemProps, MenuContent, MenuContentProps, MenuGroup, MenuGroupLabel, MenuGroupLabelProps, MenuGroupProps, MenuItem, MenuItemProps, MenuRadioGroup, MenuRadioGroupProps, MenuRadioItem, MenuRadioItemProps, MenuSeparator, MenuSeparatorProps, MenuSub, MenuSubContent, MenuSubContentProps, MenuSubTrigger, MenuSubTriggerProps, MenuTrigger, MenuTriggerProps } from "./components/menu/menu.js";
21
22
  import { Pagination, PaginationProps, getPageItems } from "./components/pagination/pagination.js";
22
23
  import { Popover, PopoverClose, PopoverCloseProps, PopoverContent, PopoverContentProps, PopoverDescription, PopoverDescriptionProps, PopoverTitle, PopoverTitleProps, PopoverTrigger, PopoverTriggerProps } from "./components/popover/popover.js";
@@ -28,4 +29,4 @@ import { Table, TableBody, TableBodyProps, TableCaption, TableCaptionProps, Tabl
28
29
  import { Tabs, TabsContent, TabsContentProps, TabsList, TabsListProps, TabsProps, TabsTrigger, TabsTriggerProps } from "./components/tabs/tabs.js";
29
30
  import { ToastActionOptions, ToastOptions, ToastPromiseMessage, Toaster, ToasterProps, toast } from "./components/toast/toast.js";
30
31
  import { Tooltip, TooltipContent, TooltipContentProps, TooltipProvider, TooltipProviderProps, TooltipTrigger, TooltipTriggerProps } from "./components/tooltip/tooltip.js";
31
- export { Alert, AlertDescription, type AlertDescriptionProps, type AlertProps, AlertTitle, type AlertTitleProps, Avatar, type AvatarProps, type AvatarSize, Badge, type BadgeColor, type BadgeProps, Button, type ButtonProps, Calendar, type CalendarProps, Checkbox, type CheckboxProps, Combobox, ComboboxChip, type ComboboxChipProps, ComboboxChips, ComboboxChipsInput, type ComboboxChipsInputProps, type ComboboxChipsProps, ComboboxContent, type ComboboxContentProps, ComboboxEmpty, type ComboboxEmptyProps, ComboboxGroup, ComboboxGroupLabel, type ComboboxGroupLabelProps, type ComboboxGroupProps, ComboboxInput, type ComboboxInputProps, ComboboxItem, type ComboboxItemProps, type ComboboxProps, ComboboxValue, type ComboboxValueProps, ConfigProvider, type ConfigProviderProps, DatePicker, type DatePickerProps, type DateRange, DateRangePicker, type DateRangePickerProps, type DateRangePreset, Dialog, DialogBody, type DialogBodyProps, DialogClose, type DialogCloseProps, DialogContent, type DialogContentProps, DialogDescription, type DialogDescriptionProps, DialogFooter, type DialogFooterProps, DialogHeader, type DialogHeaderProps, type DialogProps, DialogTitle, type DialogTitleProps, DialogTrigger, type DialogTriggerProps, Drawer, DrawerBody, type DrawerBodyProps, DrawerClose, type DrawerCloseProps, DrawerContent, type DrawerContentProps, DrawerDescription, type DrawerDescriptionProps, DrawerFooter, type DrawerFooterProps, DrawerHeader, type DrawerHeaderProps, type DrawerProps, DrawerTitle, type DrawerTitleProps, DrawerTrigger, type DrawerTriggerProps, Empty, EmptyContent, type EmptyContentProps, EmptyDescription, type EmptyDescriptionProps, EmptyHeader, type EmptyHeaderProps, EmptyMedia, type EmptyMediaProps, type EmptyProps, EmptyTitle, type EmptyTitleProps, Field, FieldDescription, type FieldDescriptionProps, FieldError, type FieldErrorProps, FieldLabel, type FieldLabelProps, type FieldProps, Fieldset, FieldsetLegend, type FieldsetLegendProps, type FieldsetProps, Input, type InputProps, type Locale, Menu, MenuCheckboxItem, type MenuCheckboxItemProps, MenuContent, type MenuContentProps, MenuGroup, MenuGroupLabel, type MenuGroupLabelProps, type MenuGroupProps, MenuItem, type MenuItemProps, MenuRadioGroup, type MenuRadioGroupProps, MenuRadioItem, type MenuRadioItemProps, MenuSeparator, type MenuSeparatorProps, MenuSub, MenuSubContent, type MenuSubContentProps, MenuSubTrigger, type MenuSubTriggerProps, MenuTrigger, type MenuTriggerProps, type Messages, type MessagesOverride, NumberField, type NumberFieldProps, Pagination, type PaginationProps, Popover, PopoverClose, type PopoverCloseProps, PopoverContent, type PopoverContentProps, PopoverDescription, type PopoverDescriptionProps, PopoverTitle, type PopoverTitleProps, PopoverTrigger, type PopoverTriggerProps, RadioGroup, RadioGroupItem, type RadioGroupItemProps, type RadioGroupProps, Select, SelectContent, type SelectContentProps, SelectGroup, SelectGroupLabel, type SelectGroupLabelProps, type SelectGroupProps, SelectItem, type SelectItemProps, type SelectProps, SelectSeparator, type SelectSeparatorProps, SelectTrigger, type SelectTriggerProps, SelectValue, type SelectValueProps, Separator, type SeparatorProps, Sidebar, SidebarGroup, type SidebarGroupProps, SidebarItem, type SidebarItemProps, type SidebarProps, Skeleton, type SkeletonProps, Switch, type SwitchProps, Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, type TableProps, TableRow, type TableRowProps, Tabs, TabsContent, type TabsContentProps, TabsList, type TabsListProps, type TabsProps, TabsTrigger, type TabsTriggerProps, Textarea, type TextareaProps, type ToastActionOptions, type ToastOptions, type ToastPromiseMessage, Toaster, type ToasterProps, Tooltip, TooltipContent, type TooltipContentProps, TooltipProvider, type TooltipProviderProps, TooltipTrigger, type TooltipTriggerProps, alertVariants, badgeVariants, buttonVariants, emptyMediaVariants, getPageItems, toast, useLocale, useMessages };
32
+ export { Alert, AlertDescription, type AlertDescriptionProps, type AlertProps, AlertTitle, type AlertTitleProps, Avatar, type AvatarProps, type AvatarSize, Badge, type BadgeColor, type BadgeProps, Button, type ButtonProps, Calendar, type CalendarProps, Checkbox, type CheckboxProps, Combobox, ComboboxChip, type ComboboxChipProps, ComboboxChips, ComboboxChipsInput, type ComboboxChipsInputProps, type ComboboxChipsProps, ComboboxContent, type ComboboxContentProps, ComboboxEmpty, type ComboboxEmptyProps, ComboboxGroup, ComboboxGroupLabel, type ComboboxGroupLabelProps, type ComboboxGroupProps, ComboboxInput, type ComboboxInputProps, ComboboxItem, type ComboboxItemProps, type ComboboxProps, ComboboxValue, type ComboboxValueProps, ConfigProvider, type ConfigProviderProps, DatePicker, type DatePickerProps, type DateRange, DateRangePicker, type DateRangePickerProps, type DateRangePreset, Dialog, DialogBody, type DialogBodyProps, DialogClose, type DialogCloseProps, DialogContent, type DialogContentProps, DialogDescription, type DialogDescriptionProps, DialogFooter, type DialogFooterProps, DialogHeader, type DialogHeaderProps, type DialogProps, DialogTitle, type DialogTitleProps, DialogTrigger, type DialogTriggerProps, Drawer, DrawerBody, type DrawerBodyProps, DrawerClose, type DrawerCloseProps, DrawerContent, type DrawerContentProps, DrawerDescription, type DrawerDescriptionProps, DrawerFooter, type DrawerFooterProps, DrawerHeader, type DrawerHeaderProps, type DrawerProps, DrawerTitle, type DrawerTitleProps, DrawerTrigger, type DrawerTriggerProps, Empty, EmptyContent, type EmptyContentProps, EmptyDescription, type EmptyDescriptionProps, EmptyHeader, type EmptyHeaderProps, EmptyMedia, type EmptyMediaProps, type EmptyProps, EmptyTitle, type EmptyTitleProps, Field, FieldDescription, type FieldDescriptionProps, FieldError, type FieldErrorProps, FieldLabel, type FieldLabelProps, type FieldProps, Fieldset, FieldsetLegend, type FieldsetLegendProps, type FieldsetProps, Input, InputGroup, InputGroupAddon, type InputGroupAddonProps, type InputGroupProps, type InputProps, type Locale, Menu, MenuCheckboxItem, type MenuCheckboxItemProps, MenuContent, type MenuContentProps, MenuGroup, MenuGroupLabel, type MenuGroupLabelProps, type MenuGroupProps, MenuItem, type MenuItemProps, MenuRadioGroup, type MenuRadioGroupProps, MenuRadioItem, type MenuRadioItemProps, MenuSeparator, type MenuSeparatorProps, MenuSub, MenuSubContent, type MenuSubContentProps, MenuSubTrigger, type MenuSubTriggerProps, MenuTrigger, type MenuTriggerProps, type Messages, type MessagesOverride, NumberField, type NumberFieldProps, Pagination, type PaginationProps, Popover, PopoverClose, type PopoverCloseProps, PopoverContent, type PopoverContentProps, PopoverDescription, type PopoverDescriptionProps, PopoverTitle, type PopoverTitleProps, PopoverTrigger, type PopoverTriggerProps, RadioGroup, RadioGroupItem, type RadioGroupItemProps, type RadioGroupProps, Select, SelectContent, type SelectContentProps, SelectGroup, SelectGroupLabel, type SelectGroupLabelProps, type SelectGroupProps, SelectItem, type SelectItemProps, type SelectProps, SelectSeparator, type SelectSeparatorProps, SelectTrigger, type SelectTriggerProps, SelectValue, type SelectValueProps, Separator, type SeparatorProps, Sidebar, SidebarGroup, type SidebarGroupProps, SidebarItem, type SidebarItemProps, type SidebarProps, Skeleton, type SkeletonProps, Switch, type SwitchProps, Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, type TableProps, TableRow, type TableRowProps, Tabs, TabsContent, type TabsContentProps, TabsList, type TabsListProps, type TabsProps, TabsTrigger, type TabsTriggerProps, Textarea, type TextareaProps, type ToastActionOptions, type ToastOptions, type ToastPromiseMessage, Toaster, type ToasterProps, Tooltip, TooltipContent, type TooltipContentProps, TooltipProvider, type TooltipProviderProps, TooltipTrigger, type TooltipTriggerProps, alertVariants, badgeVariants, buttonVariants, emptyMediaVariants, getPageItems, toast, useLocale, useMessages };
package/dist/index.js CHANGED
@@ -13,6 +13,7 @@ import { Field, FieldDescription, FieldError, FieldLabel, Fieldset, FieldsetLege
13
13
  import { Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger } from "./components/dialog/dialog.js";
14
14
  import { Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger } from "./components/drawer/drawer.js";
15
15
  import { Input } from "./components/input/input.js";
16
+ import { InputGroup, InputGroupAddon } from "./components/input-group/input-group.js";
16
17
  import { Menu, MenuCheckboxItem, MenuContent, MenuGroup, MenuGroupLabel, MenuItem, MenuRadioGroup, MenuRadioItem, MenuSeparator, MenuSub, MenuSubContent, MenuSubTrigger, MenuTrigger } from "./components/menu/menu.js";
17
18
  import { NumberField } from "./components/number-field/number-field.js";
18
19
  import { Select, SelectContent, SelectGroup, SelectGroupLabel, SelectItem, SelectSeparator, SelectTrigger, SelectValue } from "./components/select/select.js";
@@ -27,4 +28,4 @@ import { Table, TableBody, TableCaption, TableCell, TableHead, TableHeader, Tabl
27
28
  import { Tabs, TabsContent, TabsList, TabsTrigger } from "./components/tabs/tabs.js";
28
29
  import { Textarea } from "./components/textarea/textarea.js";
29
30
  import { Toaster, toast } from "./components/toast/toast.js";
30
- export { Alert, AlertDescription, AlertTitle, Avatar, Badge, Button, Calendar, Checkbox, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, ComboboxValue, ConfigProvider, DatePicker, DateRangePicker, Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyTitle, Field, FieldDescription, FieldError, FieldLabel, Fieldset, FieldsetLegend, Input, Menu, MenuCheckboxItem, MenuContent, MenuGroup, MenuGroupLabel, MenuItem, MenuRadioGroup, MenuRadioItem, MenuSeparator, MenuSub, MenuSubContent, MenuSubTrigger, MenuTrigger, NumberField, Pagination, Popover, PopoverClose, PopoverContent, PopoverDescription, PopoverTitle, PopoverTrigger, RadioGroup, RadioGroupItem, Select, SelectContent, SelectGroup, SelectGroupLabel, SelectItem, SelectSeparator, SelectTrigger, SelectValue, Separator, Sidebar, SidebarGroup, SidebarItem, Skeleton, Switch, Table, TableBody, TableCaption, TableCell, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, Toaster, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, alertVariants, badgeVariants, buttonVariants, emptyMediaVariants, getPageItems, toast, useLocale, useMessages };
31
+ export { Alert, AlertDescription, AlertTitle, Avatar, Badge, Button, Calendar, Checkbox, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, ComboboxValue, ConfigProvider, DatePicker, DateRangePicker, Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyTitle, Field, FieldDescription, FieldError, FieldLabel, Fieldset, FieldsetLegend, Input, InputGroup, InputGroupAddon, Menu, MenuCheckboxItem, MenuContent, MenuGroup, MenuGroupLabel, MenuItem, MenuRadioGroup, MenuRadioItem, MenuSeparator, MenuSub, MenuSubContent, MenuSubTrigger, MenuTrigger, NumberField, Pagination, Popover, PopoverClose, PopoverContent, PopoverDescription, PopoverTitle, PopoverTrigger, RadioGroup, RadioGroupItem, Select, SelectContent, SelectGroup, SelectGroupLabel, SelectItem, SelectSeparator, SelectTrigger, SelectValue, Separator, Sidebar, SidebarGroup, SidebarItem, Skeleton, Switch, Table, TableBody, TableCaption, TableCell, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, Toaster, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, alertVariants, badgeVariants, buttonVariants, emptyMediaVariants, getPageItems, toast, useLocale, useMessages };
package/dist/styles.css CHANGED
@@ -1,2 +1,2 @@
1
1
  /*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
2
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-duration:initial;--tw-content:"";--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}:root,:host{--asu-font-sans:"Inter Variable", "Inter", ui-sans-serif, system-ui, sans-serif;--asu-font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--asu-spacing:.25rem;--asu-container-xs:20rem;--asu-container-sm:24rem;--asu-container-md:28rem;--asu-container-xl:36rem;--asu-container-3xl:48rem;--asu-text-xs:.75rem;--asu-text-xs--line-height:calc(1 / .75);--asu-text-sm:.875rem;--asu-text-sm--line-height:calc(1.25 / .875);--asu-text-base:1rem;--asu-text-base--line-height:calc(1.5 / 1);--asu-text-lg:1.125rem;--asu-text-lg--line-height:calc(1.75 / 1.125);--asu-text-xl:1.25rem;--asu-text-xl--line-height:calc(1.75 / 1.25);--asu-text-4xl:2.25rem;--asu-text-4xl--line-height:calc(2.5 / 2.25);--asu-font-weight-normal:400;--asu-font-weight-medium:500;--asu-font-weight-semibold:600;--asu-animate-spin:spin 1s linear infinite;--asu-animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--asu-default-transition-duration:.15s;--asu-default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--asu-default-font-family:var(--asu-font-sans);--asu-default-mono-font-family:var(--asu-font-mono);--asu-color-white:#fff;--asu-color-black:#000;--asu-color-gray-50:#fcfcfc;--asu-color-gray-100:#f7f7f7;--asu-color-gray-200:#f0f0f0;--asu-color-gray-300:#e0e0e0;--asu-color-gray-400:silver;--asu-color-gray-500:#969696;--asu-color-gray-600:#686868;--asu-color-gray-700:#484848;--asu-color-gray-800:#2c2c2c;--asu-color-gray-900:#232323;--asu-color-gray-950:#1a1a1a;--asu-color-slate-50:#f5f6fa;--asu-color-slate-100:#eaecf3;--asu-color-slate-200:#dfe3ec;--asu-color-slate-300:#bfc7d8;--asu-color-slate-400:#a0abc5;--asu-color-slate-500:#818eb1;--asu-color-slate-600:#626e8f;--asu-color-slate-700:#44506f;--asu-color-slate-800:#3c4557;--asu-color-slate-900:#282f3d;--asu-color-slate-950:#151b25;--asu-color-blue-50:#ecf5fd;--asu-color-blue-100:#d6eaff;--asu-color-blue-200:#add0f8;--asu-color-blue-300:#84b6f0;--asu-color-blue-400:#5e9ae8;--asu-color-blue-500:#377ede;--asu-color-blue-600:#065fd4;--asu-color-blue-700:#084ba4;--asu-color-blue-800:#043566;--asu-color-blue-900:#01274f;--asu-color-blue-950:#001a39;--asu-color-green-50:#f7fff9;--asu-color-green-100:#e1fae5;--asu-color-green-200:#cbf5d1;--asu-color-green-300:#95eda3;--asu-color-green-400:#60e074;--asu-color-green-500:#32d74b;--asu-color-green-600:#1fa333;--asu-color-green-700:#11701f;--asu-color-green-800:#074210;--asu-color-green-900:#022408;--asu-color-green-950:#041907;--asu-color-red-50:#fff8f7;--asu-color-red-100:#ffe2e0;--asu-color-red-200:#fda19d;--asu-color-red-300:#fa7069;--asu-color-red-400:#f84037;--asu-color-red-500:#f80d05;--asu-color-red-600:#c40a04;--asu-color-red-700:#910601;--asu-color-red-800:#5e0401;--asu-color-red-900:#2b0100;--asu-color-red-950:#1a0201;--asu-color-yellow-50:#fdfbef;--asu-color-yellow-100:#fff8d6;--asu-color-yellow-200:#fff0a3;--asu-color-yellow-300:#ffe770;--asu-color-yellow-400:#ffdf3d;--asu-color-yellow-500:#ccab08;--asu-color-yellow-600:#998006;--asu-color-yellow-700:#665202;--asu-color-yellow-800:#4e3e00;--asu-color-yellow-900:#372b00;--asu-color-yellow-950:#221a00;--asu-color-orange-50:#fff9f0;--asu-color-orange-100:#ffefd6;--asu-color-orange-200:#feddaf;--asu-color-orange-300:#feca86;--asu-color-orange-400:#ffb559;--asu-color-orange-500:#ff9f0a;--asu-color-orange-600:#cc7f08;--asu-color-orange-700:#995f06;--asu-color-orange-800:#664004;--asu-color-orange-900:#462a00;--asu-color-orange-950:#281600;--asu-color-cyan-50:#eff9fd;--asu-color-cyan-100:#d6f3ff;--asu-color-cyan-200:#b8dcec;--asu-color-cyan-300:#9ac5d8;--asu-color-cyan-400:#7dafc6;--asu-color-cyan-500:#5f99b3;--asu-color-cyan-600:#4183a1;--asu-color-cyan-700:#1e6e8f;--asu-color-cyan-800:#0c445c;--asu-color-cyan-900:#023044;--asu-color-cyan-950:#001e2c;--asu-color-indigo-50:#f6f6fc;--asu-color-indigo-100:#e4e4f5;--asu-color-indigo-200:#c2c3f3;--asu-color-indigo-300:#a0a2f0;--asu-color-indigo-400:#7e80ec;--asu-color-indigo-500:#5e5ce6;--asu-color-indigo-600:#3d3fbf;--asu-color-indigo-700:#201f99;--asu-color-indigo-800:#161466;--asu-color-indigo-900:#0f0e51;--asu-color-indigo-950:#09083c;--asu-color-purple-50:#faf4fd;--asu-color-purple-100:#f4e3fd;--asu-color-purple-200:#dcc2ea;--asu-color-purple-300:#c4a1d7;--asu-color-purple-400:#ab81c5;--asu-color-purple-500:#9461b2;--asu-color-purple-600:#7c409f;--asu-color-purple-700:#65188c;--asu-color-purple-800:#460766;--asu-color-purple-900:#370551;--asu-color-purple-950:#29033d;--asu-color-pink-50:#fef3f8;--asu-color-pink-100:#ffe0ed;--asu-color-pink-200:#f0c0d2;--asu-color-pink-300:#e0a0b7;--asu-color-pink-400:#cf809b;--asu-color-pink-500:#be607f;--asu-color-pink-600:#ac3e63;--asu-color-pink-700:#991147;--asu-color-pink-800:#800a39;--asu-color-pink-900:#5c0026;--asu-color-pink-950:#380014;--asu-radius-sm:2px;--asu-radius-md:4px}@layer base{:where([data-slot],[data-slot] *),:where([data-slot],[data-slot] *):after,:where([data-slot],[data-slot] *):before,:where([data-slot],[data-slot] *)::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}:where([data-slot],[data-slot] *)::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:where([data-slot]):not(:where([data-slot] *)){-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--asu-default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--asu-default-font-feature-settings,normal);font-variation-settings:var(--asu-default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}:where(hr[data-slot],[data-slot] hr){height:0;color:inherit;border-top-width:1px}:where(abbr:where([title])[data-slot],[data-slot] abbr:where([title])){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}:where(h1[data-slot],[data-slot] h1),:where(h2[data-slot],[data-slot] h2),:where(h3[data-slot],[data-slot] h3),:where(h4[data-slot],[data-slot] h4),:where(h5[data-slot],[data-slot] h5),:where(h6[data-slot],[data-slot] h6){font-size:inherit;font-weight:inherit}:where(a[data-slot],[data-slot] a){color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}:where(b[data-slot],[data-slot] b),:where(strong[data-slot],[data-slot] strong){font-weight:bolder}:where(code[data-slot],[data-slot] code),:where(kbd[data-slot],[data-slot] kbd),:where(samp[data-slot],[data-slot] samp),:where(pre[data-slot],[data-slot] pre){font-family:var(--asu-default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--asu-default-mono-font-feature-settings,normal);font-variation-settings:var(--asu-default-mono-font-variation-settings,normal);font-size:1em}:where(small[data-slot],[data-slot] small){font-size:80%}:where(sub[data-slot],[data-slot] sub),:where(sup[data-slot],[data-slot] sup){vertical-align:baseline;font-size:75%;line-height:0;position:relative}:where(sub[data-slot],[data-slot] sub){bottom:-.25em}:where(sup[data-slot],[data-slot] sup){top:-.5em}:where(table[data-slot],[data-slot] table){text-indent:0;border-color:inherit;border-collapse:collapse}:where([data-slot],[data-slot] *):-moz-focusring:where(:not(iframe)){outline:auto}:where(progress[data-slot],[data-slot] progress){vertical-align:baseline}:where(summary[data-slot],[data-slot] summary){display:list-item}:where(ol[data-slot],[data-slot] ol),:where(ul[data-slot],[data-slot] ul),:where(menu[data-slot],[data-slot] menu){list-style:none}:where(img[data-slot],[data-slot] img),:where(svg[data-slot],[data-slot] svg),:where(video[data-slot],[data-slot] video),:where(canvas[data-slot],[data-slot] canvas),:where(audio[data-slot],[data-slot] audio),:where(iframe[data-slot],[data-slot] iframe),:where(embed[data-slot],[data-slot] embed),:where(object[data-slot],[data-slot] object){vertical-align:middle;display:block}:where(img[data-slot],[data-slot] img),:where(video[data-slot],[data-slot] video){max-width:100%;height:auto}:where([data-slot] button),:where([data-slot] input),:where([data-slot] select),:where([data-slot] optgroup),:where([data-slot] textarea){font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit}:where([data-slot],[data-slot] *)::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit}:where(button[data-slot],[data-slot] button),:where(input[data-slot],[data-slot] input),:where(select[data-slot],[data-slot] select),:where(optgroup[data-slot],[data-slot] optgroup),:where(textarea[data-slot],[data-slot] textarea){opacity:1;background-color:#0000;border-radius:0}:where([data-slot],[data-slot] *)::file-selector-button{opacity:1;background-color:#0000;border-radius:0}:where(:where(select:is([multiple],[size])) optgroup[data-slot],[data-slot] :where(select:is([multiple],[size])) optgroup){font-weight:bolder}:where(:where(select:is([multiple],[size])) optgroup option[data-slot],[data-slot] :where(select:is([multiple],[size])) optgroup option){padding-inline-start:20px}:where([data-slot],[data-slot] *)::file-selector-button{margin-inline-end:4px}:where([data-slot],[data-slot] *)::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){:where([data-slot],[data-slot] *)::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){:where([data-slot],[data-slot] *)::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}:where(textarea[data-slot],[data-slot] textarea){resize:vertical}:where([data-slot],[data-slot] *)::-webkit-search-decoration{-webkit-appearance:none}:where([data-slot],[data-slot] *)::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}:where([data-slot],[data-slot] *)::-webkit-datetime-edit{display:inline-flex}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-fields-wrapper{padding:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-year-field{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-month-field{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-day-field{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-hour-field{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-minute-field{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-second-field{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-millisecond-field{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-meridiem-field{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-calendar-picker-indicator{line-height:1}:where([data-slot],[data-slot] *):-moz-ui-invalid{box-shadow:none}:where(button[data-slot],[data-slot] button),:where(input:where([type=button],[type=reset],[type=submit])[data-slot],[data-slot] input:where([type=button],[type=reset],[type=submit])){appearance:button}:where([data-slot],[data-slot] *)::file-selector-button{appearance:button}:where([data-slot],[data-slot] *)::-webkit-inner-spin-button{height:auto}:where([data-slot],[data-slot] *)::-webkit-outer-spin-button{height:auto}:where([data-slot][hidden],[data-slot] [hidden]):where(:not([hidden=until-found])){display:none!important}:where([data-slot],[data-slot] *),:where([data-slot],[data-slot] *):before,:where([data-slot],[data-slot] *):after,:where([data-slot],[data-slot] *)::backdrop{border-color:var(--asu-border)}:where([data-slot],[data-slot] *)::file-selector-button{border-color:var(--asu-border)}:where([data-slot]):not(:where([data-slot] *)){color:var(--asu-foreground);font-family:var(--asu-font-sans);font-size:var(--asu-text-sm);line-height:var(--asu-text-sm--line-height)}}:root{--asu-background:#fff;--asu-foreground:#2c2c2c;--asu-card:#fff;--asu-card-foreground:#2c2c2c;--asu-popover:#fff;--asu-popover-foreground:#2c2c2c;--asu-primary:#065fd4;--asu-primary-hover:#084ba4;--asu-primary-foreground:#fff;--asu-secondary:#f7f7f7;--asu-secondary-foreground:#2c2c2c;--asu-muted:#f7f7f7;--asu-muted-foreground:#686868;--asu-accent:#f7f7f7;--asu-accent-foreground:#2c2c2c;--asu-destructive:#c40a04;--asu-destructive-hover:#910601;--asu-destructive-foreground:#fff;--asu-destructive-subtle:#fff8f7;--asu-success:#1fa333;--asu-success-foreground:#11701f;--asu-success-subtle:#f7fff9;--asu-warning:#cc7f08;--asu-warning-foreground:#995f06;--asu-warning-subtle:#fff9f0;--asu-info:#065fd4;--asu-info-foreground:#084ba4;--asu-info-subtle:#ecf5fd;--asu-border:#f0f0f0;--asu-input:#e0e0e0;--asu-ring:#065fd4;--asu-tooltip:#3c4557;--asu-tooltip-foreground:#fff;--asu-table-header:#f5f6fa;--asu-secondary-hover:#f0f0f0;--asu-accent-hover:#f0f0f0;--asu-accent-selected:#e0e0e0;--asu-overlay:#2c2c2c73;--asu-sidebar-accent:#f0f0f0;--asu-sidebar-indicator:#f84037}.asu\:pointer-events-auto{pointer-events:auto}.asu\:pointer-events-none{pointer-events:none}.asu\:invisible{visibility:hidden}.asu\:sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.asu\:absolute{position:absolute}.asu\:fixed{position:fixed}.asu\:relative{position:relative}.asu\:inset-0{inset:0}.asu\:inset-y-0{inset-block:0}.asu\:top-0{top:0}.asu\:top-1{top:var(--asu-spacing)}.asu\:top-1\/2{top:50%}.asu\:top-3{top:calc(var(--asu-spacing) * 3)}.asu\:top-4{top:calc(var(--asu-spacing) * 4)}.asu\:right-0{right:0}.asu\:right-1{right:var(--asu-spacing)}.asu\:right-2{right:calc(var(--asu-spacing) * 2)}.asu\:right-4{right:calc(var(--asu-spacing) * 4)}.asu\:right-6{right:calc(var(--asu-spacing) * 6)}.asu\:right-8{right:calc(var(--asu-spacing) * 8)}.asu\:left-0{left:0}.asu\:left-1\/2{left:50%}.asu\:z-10{z-index:10}.asu\:z-\[1010\]{z-index:1010}.asu\:m-0{margin:0}.asu\:m-auto{margin:auto}.asu\:my-1{margin-block:var(--asu-spacing)}.asu\:my-2{margin-block:calc(var(--asu-spacing) * 2)}.asu\:mt-1{margin-top:var(--asu-spacing)}.asu\:mt-3{margin-top:calc(var(--asu-spacing) * 3)}.asu\:mt-4{margin-top:calc(var(--asu-spacing) * 4)}.asu\:mb-1{margin-bottom:var(--asu-spacing)}.asu\:mb-2{margin-bottom:calc(var(--asu-spacing) * 2)}.asu\:-ml-px{margin-left:-1px}.asu\:ml-2\.5{margin-left:calc(var(--asu-spacing) * 2.5)}.asu\:ml-auto{margin-left:auto}.asu\:block{display:block}.asu\:flex{display:flex}.asu\:inline-block{display:inline-block}.asu\:inline-flex{display:inline-flex}.asu\:field-sizing-content{field-sizing:content}.asu\:size-1\.5{width:calc(var(--asu-spacing) * 1.5);height:calc(var(--asu-spacing) * 1.5)}.asu\:size-2{width:calc(var(--asu-spacing) * 2);height:calc(var(--asu-spacing) * 2)}.asu\:size-2\.5{width:calc(var(--asu-spacing) * 2.5);height:calc(var(--asu-spacing) * 2.5)}.asu\:size-3{width:calc(var(--asu-spacing) * 3);height:calc(var(--asu-spacing) * 3)}.asu\:size-3\.5{width:calc(var(--asu-spacing) * 3.5);height:calc(var(--asu-spacing) * 3.5)}.asu\:size-4{width:calc(var(--asu-spacing) * 4);height:calc(var(--asu-spacing) * 4)}.asu\:size-5{width:calc(var(--asu-spacing) * 5);height:calc(var(--asu-spacing) * 5)}.asu\:size-6{width:calc(var(--asu-spacing) * 6);height:calc(var(--asu-spacing) * 6)}.asu\:size-7{width:calc(var(--asu-spacing) * 7);height:calc(var(--asu-spacing) * 7)}.asu\:size-8{width:calc(var(--asu-spacing) * 8);height:calc(var(--asu-spacing) * 8)}.asu\:size-10{width:calc(var(--asu-spacing) * 10);height:calc(var(--asu-spacing) * 10)}.asu\:size-24{width:calc(var(--asu-spacing) * 24);height:calc(var(--asu-spacing) * 24)}.asu\:size-\[76px\]{width:76px;height:76px}.asu\:size-full{width:100%;height:100%}.asu\:h-4{height:calc(var(--asu-spacing) * 4)}.asu\:h-6{height:calc(var(--asu-spacing) * 6)}.asu\:h-7{height:calc(var(--asu-spacing) * 7)}.asu\:h-8{height:calc(var(--asu-spacing) * 8)}.asu\:h-10{height:calc(var(--asu-spacing) * 10)}.asu\:h-11{height:calc(var(--asu-spacing) * 11)}.asu\:h-13{height:calc(var(--asu-spacing) * 13)}.asu\:h-14{height:calc(var(--asu-spacing) * 14)}.asu\:h-\[200px\]{height:200px}.asu\:h-auto{height:auto}.asu\:h-full{height:100%}.asu\:h-px{height:1px}.asu\:max-h-\[300px\]{max-height:300px}.asu\:max-h-\[596px\]{max-height:596px}.asu\:max-h-\[calc\(100vh-4rem\)\]{max-height:calc(100vh - 4rem)}.asu\:min-h-5{min-height:calc(var(--asu-spacing) * 5)}.asu\:min-h-8{min-height:calc(var(--asu-spacing) * 8)}.asu\:min-h-16{min-height:calc(var(--asu-spacing) * 16)}.asu\:w-1{width:var(--asu-spacing)}.asu\:w-6{width:calc(var(--asu-spacing) * 6)}.asu\:w-72{width:calc(var(--asu-spacing) * 72)}.asu\:w-90{width:calc(var(--asu-spacing) * 90)}.asu\:w-\[90vw\]{width:90vw}.asu\:w-\[110px\]{width:110px}.asu\:w-\[226px\]{width:226px}.asu\:w-\[588px\]{width:588px}.asu\:w-\[748px\]{width:748px}.asu\:w-\[calc\(100vw-2rem\)\]{width:calc(100vw - 2rem)}.asu\:w-auto{width:auto}.asu\:w-fit{width:fit-content}.asu\:w-full{width:100%}.asu\:max-w-3xl{max-width:var(--asu-container-3xl)}.asu\:max-w-\[100vw\]{max-width:100vw}.asu\:max-w-\[500px\]{max-width:500px}.asu\:max-w-\[calc\(100vw-2rem\)\]{max-width:calc(100vw - 2rem)}.asu\:max-w-md{max-width:var(--asu-container-md)}.asu\:max-w-sm{max-width:var(--asu-container-sm)}.asu\:max-w-xl{max-width:var(--asu-container-xl)}.asu\:max-w-xs{max-width:var(--asu-container-xs)}.asu\:min-w-\(--anchor-width\){min-width:var(--anchor-width)}.asu\:min-w-0{min-width:0}.asu\:min-w-16{min-width:calc(var(--asu-spacing) * 16)}.asu\:min-w-40{min-width:calc(var(--asu-spacing) * 40)}.asu\:min-w-48{min-width:calc(var(--asu-spacing) * 48)}.asu\:min-w-\[75px\]{min-width:75px}.asu\:flex-1{flex:1}.asu\:shrink-0{flex-shrink:0}.asu\:grow-0{flex-grow:0}.asu\:basis-1\/2{flex-basis:50%}.asu\:caption-bottom{caption-side:bottom}.asu\:border-collapse{border-collapse:collapse}.asu\:-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:rotate-45{rotate:45deg}.asu\:animate-pulse{animation:var(--asu-animate-pulse)}.asu\:animate-spin{animation:var(--asu-animate-spin)}.asu\:cursor-default{cursor:default}.asu\:cursor-not-allowed{cursor:not-allowed}.asu\:flex-col{flex-direction:column}.asu\:flex-row{flex-direction:row}.asu\:flex-wrap{flex-wrap:wrap}.asu\:items-center{align-items:center}.asu\:items-start{align-items:flex-start}.asu\:justify-between{justify-content:space-between}.asu\:justify-center{justify-content:center}.asu\:justify-end{justify-content:flex-end}.asu\:gap-0\.5{gap:calc(var(--asu-spacing) * .5)}.asu\:gap-1{gap:var(--asu-spacing)}.asu\:gap-1\.5{gap:calc(var(--asu-spacing) * 1.5)}.asu\:gap-2{gap:calc(var(--asu-spacing) * 2)}.asu\:gap-2\.5{gap:calc(var(--asu-spacing) * 2.5)}.asu\:gap-3{gap:calc(var(--asu-spacing) * 3)}.asu\:gap-4{gap:calc(var(--asu-spacing) * 4)}.asu\:gap-6{gap:calc(var(--asu-spacing) * 6)}.asu\:gap-8{gap:calc(var(--asu-spacing) * 8)}.asu\:self-start{align-self:flex-start}.asu\:truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.asu\:overflow-hidden{overflow:hidden}.asu\:overflow-x-auto{overflow-x:auto}.asu\:overflow-y-auto{overflow-y:auto}.asu\:rounded-full{border-radius:3.40282e38px}.asu\:rounded-md{border-radius:var(--asu-radius-md)}.asu\:rounded-sm{border-radius:var(--asu-radius-sm)}.asu\:rounded-l-sm{border-top-left-radius:var(--asu-radius-sm);border-bottom-left-radius:var(--asu-radius-sm)}.asu\:rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.asu\:rounded-r-sm{border-top-right-radius:var(--asu-radius-sm);border-bottom-right-radius:var(--asu-radius-sm)}.asu\:border{border-style:var(--tw-border-style);border-width:1px}.asu\:border-0{border-style:var(--tw-border-style);border-width:0}.asu\:border-\[3px\]{border-style:var(--tw-border-style);border-width:3px}.asu\:border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.asu\:border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.asu\:border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.asu\:border-l-0{border-left-style:var(--tw-border-style);border-left-width:0}.asu\:border-dashed{--tw-border-style:dashed;border-style:dashed}.asu\:border-border{border-color:var(--asu-border)}.asu\:border-input{border-color:var(--asu-input)}.asu\:border-primary{border-color:var(--asu-primary)}.asu\:border-transparent{border-color:#0000}.asu\:bg-background{background-color:var(--asu-background)}.asu\:bg-blue-100{background-color:var(--asu-color-blue-100)}.asu\:bg-border{background-color:var(--asu-border)}.asu\:bg-current{background-color:currentColor}.asu\:bg-cyan-100{background-color:var(--asu-color-cyan-100)}.asu\:bg-destructive{background-color:var(--asu-destructive)}.asu\:bg-destructive-subtle{background-color:var(--asu-destructive-subtle)}.asu\:bg-gray-100{background-color:var(--asu-color-gray-100)}.asu\:bg-green-100{background-color:var(--asu-color-green-100)}.asu\:bg-indigo-100{background-color:var(--asu-color-indigo-100)}.asu\:bg-info-subtle{background-color:var(--asu-info-subtle)}.asu\:bg-muted{background-color:var(--asu-muted)}.asu\:bg-orange-100{background-color:var(--asu-color-orange-100)}.asu\:bg-overlay{background-color:var(--asu-overlay)}.asu\:bg-pink-100{background-color:var(--asu-color-pink-100)}.asu\:bg-popover{background-color:var(--asu-popover)}.asu\:bg-primary{background-color:var(--asu-primary)}.asu\:bg-primary-foreground{background-color:var(--asu-primary-foreground)}.asu\:bg-purple-100{background-color:var(--asu-color-purple-100)}.asu\:bg-red-100{background-color:var(--asu-color-red-100)}.asu\:bg-secondary{background-color:var(--asu-secondary)}.asu\:bg-sidebar-accent{background-color:var(--asu-sidebar-accent)}.asu\:bg-sidebar-indicator{background-color:var(--asu-sidebar-indicator)}.asu\:bg-slate-100{background-color:var(--asu-color-slate-100)}.asu\:bg-success-subtle{background-color:var(--asu-success-subtle)}.asu\:bg-table-header{background-color:var(--asu-table-header)}.asu\:bg-tooltip{background-color:var(--asu-tooltip)}.asu\:bg-transparent{background-color:#0000}.asu\:bg-warning-subtle{background-color:var(--asu-warning-subtle)}.asu\:bg-yellow-100{background-color:var(--asu-color-yellow-100)}.asu\:fill-current{fill:currentColor}.asu\:object-cover{object-fit:cover}.asu\:p-0{padding:0}.asu\:p-0\.5{padding:calc(var(--asu-spacing) * .5)}.asu\:p-2{padding:calc(var(--asu-spacing) * 2)}.asu\:p-3{padding:calc(var(--asu-spacing) * 3)}.asu\:p-4{padding:calc(var(--asu-spacing) * 4)}.asu\:p-6{padding:calc(var(--asu-spacing) * 6)}.asu\:px-0{padding-inline:0}.asu\:px-2{padding-inline:calc(var(--asu-spacing) * 2)}.asu\:px-3{padding-inline:calc(var(--asu-spacing) * 3)}.asu\:px-4{padding-inline:calc(var(--asu-spacing) * 4)}.asu\:px-6{padding-inline:calc(var(--asu-spacing) * 6)}.asu\:px-\[22px\]{padding-inline:22px}.asu\:py-1{padding-block:var(--asu-spacing)}.asu\:py-2{padding-block:calc(var(--asu-spacing) * 2)}.asu\:py-2\.5{padding-block:calc(var(--asu-spacing) * 2.5)}.asu\:py-3{padding-block:calc(var(--asu-spacing) * 3)}.asu\:py-4{padding-block:calc(var(--asu-spacing) * 4)}.asu\:pt-4{padding-top:calc(var(--asu-spacing) * 4)}.asu\:pt-5{padding-top:calc(var(--asu-spacing) * 5)}.asu\:pr-8{padding-right:calc(var(--asu-spacing) * 8)}.asu\:pr-12{padding-right:calc(var(--asu-spacing) * 12)}.asu\:pr-16{padding-right:calc(var(--asu-spacing) * 16)}.asu\:pb-3{padding-bottom:calc(var(--asu-spacing) * 3)}.asu\:pl-3{padding-left:calc(var(--asu-spacing) * 3)}.asu\:pl-4{padding-left:calc(var(--asu-spacing) * 4)}.asu\:text-center{text-align:center}.asu\:text-left{text-align:left}.asu\:align-middle{vertical-align:middle}.asu\:text-4xl{font-size:var(--asu-text-4xl);line-height:var(--tw-leading,var(--asu-text-4xl--line-height))}.asu\:text-base{font-size:var(--asu-text-base);line-height:var(--tw-leading,var(--asu-text-base--line-height))}.asu\:text-lg{font-size:var(--asu-text-lg);line-height:var(--tw-leading,var(--asu-text-lg--line-height))}.asu\:text-sm{font-size:var(--asu-text-sm);line-height:var(--tw-leading,var(--asu-text-sm--line-height))}.asu\:text-xl{font-size:var(--asu-text-xl);line-height:var(--tw-leading,var(--asu-text-xl--line-height))}.asu\:text-xs{font-size:var(--asu-text-xs);line-height:var(--tw-leading,var(--asu-text-xs--line-height))}.asu\:text-\[10px\]{font-size:10px}.asu\:leading-5{--tw-leading:calc(var(--asu-spacing) * 5);line-height:calc(var(--asu-spacing) * 5)}.asu\:leading-\[1\.75\]{--tw-leading:1.75;line-height:1.75}.asu\:font-medium{--tw-font-weight:var(--asu-font-weight-medium);font-weight:var(--asu-font-weight-medium)}.asu\:font-normal{--tw-font-weight:var(--asu-font-weight-normal);font-weight:var(--asu-font-weight-normal)}.asu\:font-semibold{--tw-font-weight:var(--asu-font-weight-semibold);font-weight:var(--asu-font-weight-semibold)}.asu\:whitespace-nowrap{white-space:nowrap}.asu\:text-blue-700{color:var(--asu-color-blue-700)}.asu\:text-cyan-700{color:var(--asu-color-cyan-700)}.asu\:text-destructive{color:var(--asu-destructive)}.asu\:text-destructive-foreground{color:var(--asu-destructive-foreground)}.asu\:text-foreground{color:var(--asu-foreground)}.asu\:text-gray-700{color:var(--asu-color-gray-700)}.asu\:text-green-700{color:var(--asu-color-green-700)}.asu\:text-indigo-700{color:var(--asu-color-indigo-700)}.asu\:text-info{color:var(--asu-info)}.asu\:text-muted-foreground{color:var(--asu-muted-foreground)}.asu\:text-orange-700{color:var(--asu-color-orange-700)}.asu\:text-pink-700{color:var(--asu-color-pink-700)}.asu\:text-popover-foreground{color:var(--asu-popover-foreground)}.asu\:text-primary{color:var(--asu-primary)}.asu\:text-primary-foreground{color:var(--asu-primary-foreground)}.asu\:text-purple-700{color:var(--asu-color-purple-700)}.asu\:text-red-700{color:var(--asu-color-red-700)}.asu\:text-secondary-foreground,.asu\:text-secondary-foreground\/70{color:var(--asu-secondary-foreground)}@supports (color:color-mix(in lab, red, red)){.asu\:text-secondary-foreground\/70{color:color-mix(in oklab, var(--asu-secondary-foreground) 70%, transparent)}}.asu\:text-slate-700{color:var(--asu-color-slate-700)}.asu\:text-success{color:var(--asu-success)}.asu\:text-tooltip-foreground{color:var(--asu-tooltip-foreground)}.asu\:text-warning{color:var(--asu-warning)}.asu\:text-white{color:var(--asu-color-white)}.asu\:text-yellow-700{color:var(--asu-color-yellow-700)}.asu\:tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.asu\:underline-offset-4{text-underline-offset:4px}.asu\:opacity-0{opacity:0}.asu\:opacity-50{opacity:.5}.asu\:shadow-\[inset_0_-1px_0_0_var\(--asu-border\)\]{--tw-shadow:inset 0 -1px 0 0 var(--tw-shadow-color,var(--asu-border));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.asu\:shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.asu\:shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.asu\:shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.asu\:transition-\[opacity\,scale\]{transition-property:opacity,scale;transition-timing-function:var(--tw-ease,var(--asu-default-transition-timing-function));transition-duration:var(--tw-duration,var(--asu-default-transition-duration))}.asu\:transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--asu-default-transition-timing-function));transition-duration:var(--tw-duration,var(--asu-default-transition-duration))}.asu\:transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--asu-default-transition-timing-function));transition-duration:var(--tw-duration,var(--asu-default-transition-duration))}.asu\:transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--asu-default-transition-timing-function));transition-duration:var(--tw-duration,var(--asu-default-transition-duration))}.asu\:duration-150{--tw-duration:.15s;transition-duration:.15s}.asu\:duration-200{--tw-duration:.2s;transition-duration:.2s}.asu\:outline-none{--tw-outline-style:none;outline-style:none}.asu\:select-none{-webkit-user-select:none;user-select:none}.asu\:group-focus-within\/row\:opacity-100:is(:where(.asu\:group\/row):focus-within *){opacity:1}@media (hover:hover){.asu\:group-hover\/row\:opacity-100:is(:where(.asu\:group\/row):hover *){opacity:1}}.asu\:group-data-disabled\/number-field\:opacity-50:is(:where(.asu\:group\/number-field)[data-disabled] *){opacity:.5}.asu\:group-data-\[size\=md\]\/switch\:size-4:is(:where(.asu\:group\/switch)[data-size=md] *){width:calc(var(--asu-spacing) * 4);height:calc(var(--asu-spacing) * 4)}.asu\:group-data-\[size\=sm\]\/switch\:size-3:is(:where(.asu\:group\/switch)[data-size=sm] *){width:calc(var(--asu-spacing) * 3);height:calc(var(--asu-spacing) * 3)}.asu\:peer-data-disabled\/select-trigger\:hidden:is(:where(.asu\:peer\/select-trigger)[data-disabled]~*){display:none}.asu\:placeholder\:text-muted-foreground::placeholder{color:var(--asu-muted-foreground)}.asu\:before\:absolute:before{content:var(--tw-content);position:absolute}.asu\:before\:inset-x-0:before{content:var(--tw-content);inset-inline:0}.asu\:before\:inset-y-1:before{content:var(--tw-content);inset-block:var(--asu-spacing)}.asu\:before\:bg-info-subtle:before{content:var(--tw-content);background-color:var(--asu-info-subtle)}.asu\:after\:pointer-events-none:after{content:var(--tw-content);pointer-events:none}.asu\:after\:absolute:after{content:var(--tw-content);position:absolute}.asu\:after\:inset-x-\[-10px\]:after{content:var(--tw-content);inset-inline:-10px}.asu\:after\:bottom-0:after{content:var(--tw-content);bottom:0}.asu\:after\:hidden:after{content:var(--tw-content);display:none}.asu\:after\:h-0\.5:after{content:var(--tw-content);height:calc(var(--asu-spacing) * .5)}.asu\:after\:bg-primary:after{content:var(--tw-content);background-color:var(--asu-primary)}.asu\:after\:content-\[\"\"\]:after{--tw-content:"";content:var(--tw-content)}.asu\:last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.asu\:empty\:p-0:empty{padding:0}.asu\:focus-within\:border-ring:focus-within{border-color:var(--asu-ring)}.asu\:focus-within\:ring-2:focus-within{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.asu\:focus-within\:ring-ring\/30:focus-within{--tw-ring-color:var(--asu-ring)}@supports (color:color-mix(in lab, red, red)){.asu\:focus-within\:ring-ring\/30:focus-within{--tw-ring-color:color-mix(in oklab, var(--asu-ring) 30%, transparent)}}@media (hover:hover){.asu\:hover\:bg-accent:hover{background-color:var(--asu-accent)}.asu\:hover\:bg-accent-hover:hover{background-color:var(--asu-accent-hover)}.asu\:hover\:bg-destructive-hover:hover{background-color:var(--asu-destructive-hover)}.asu\:hover\:bg-primary-hover:hover{background-color:var(--asu-primary-hover)}.asu\:hover\:bg-secondary-hover:hover{background-color:var(--asu-secondary-hover)}.asu\:hover\:bg-sidebar-accent:hover{background-color:var(--asu-sidebar-accent)}.asu\:hover\:text-accent-foreground:hover{color:var(--asu-accent-foreground)}.asu\:hover\:text-foreground:hover{color:var(--asu-foreground)}.asu\:hover\:text-secondary-foreground:hover{color:var(--asu-secondary-foreground)}.asu\:hover\:underline:hover{text-decoration-line:underline}.asu\:not-disabled\:not-data-disabled\:not-aria-invalid\:not-data-invalid\:hover\:border-primary-hover:not(:disabled):not([data-disabled]):not([aria-invalid=true]):not([data-invalid]):hover{border-color:var(--asu-primary-hover)}}.asu\:focus-visible\:border-ring:focus-visible{border-color:var(--asu-ring)}.asu\:focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.asu\:focus-visible\:ring-ring\/30:focus-visible{--tw-ring-color:var(--asu-ring)}@supports (color:color-mix(in lab, red, red)){.asu\:focus-visible\:ring-ring\/30:focus-visible{--tw-ring-color:color-mix(in oklab, var(--asu-ring) 30%, transparent)}}.asu\:focus-visible\:ring-ring\/40:focus-visible{--tw-ring-color:var(--asu-ring)}@supports (color:color-mix(in lab, red, red)){.asu\:focus-visible\:ring-ring\/40:focus-visible{--tw-ring-color:color-mix(in oklab, var(--asu-ring) 40%, transparent)}}.asu\:disabled\:pointer-events-none:disabled{pointer-events:none}.asu\:disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.asu\:disabled\:bg-muted:disabled{background-color:var(--asu-muted)}.asu\:disabled\:opacity-50:disabled{opacity:.5}.asu\:has-focus-visible\:ring-2:has(:focus-visible){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.asu\:has-focus-visible\:ring-ring\/40:has(:focus-visible){--tw-ring-color:var(--asu-ring)}@supports (color:color-mix(in lab, red, red)){.asu\:has-focus-visible\:ring-ring\/40:has(:focus-visible){--tw-ring-color:color-mix(in oklab, var(--asu-ring) 40%, transparent)}}.asu\:aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--asu-destructive)}.asu\:aria-invalid\:focus-within\:ring-destructive\/30[aria-invalid=true]:focus-within{--tw-ring-color:var(--asu-destructive)}@supports (color:color-mix(in lab, red, red)){.asu\:aria-invalid\:focus-within\:ring-destructive\/30[aria-invalid=true]:focus-within{--tw-ring-color:color-mix(in oklab, var(--asu-destructive) 30%, transparent)}}.asu\:aria-invalid\:focus-visible\:ring-destructive\/30[aria-invalid=true]:focus-visible{--tw-ring-color:var(--asu-destructive)}@supports (color:color-mix(in lab, red, red)){.asu\:aria-invalid\:focus-visible\:ring-destructive\/30[aria-invalid=true]:focus-visible{--tw-ring-color:color-mix(in oklab, var(--asu-destructive) 30%, transparent)}}.asu\:data-active\:text-primary[data-active]{color:var(--asu-primary)}.asu\:data-active\:after\:block[data-active]:after{content:var(--tw-content);display:block}.asu\:data-checked\:border-primary[data-checked]{border-color:var(--asu-primary)}.asu\:data-checked\:bg-primary[data-checked]{background-color:var(--asu-primary)}.asu\:group-data-\[size\=md\]\/switch\:data-checked\:translate-x-4:is(:where(.asu\:group\/switch)[data-size=md] *)[data-checked]{--tw-translate-x:calc(var(--asu-spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:group-data-\[size\=sm\]\/switch\:data-checked\:translate-x-3:is(:where(.asu\:group\/switch)[data-size=sm] *)[data-checked]{--tw-translate-x:calc(var(--asu-spacing) * 3);translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:data-disabled\:pointer-events-none[data-disabled]{pointer-events:none}.asu\:data-disabled\:cursor-not-allowed[data-disabled]{cursor:not-allowed}.asu\:data-disabled\:bg-muted[data-disabled]{background-color:var(--asu-muted)}.asu\:data-disabled\:text-muted-foreground[data-disabled]{color:var(--asu-muted-foreground)}.asu\:data-disabled\:opacity-50[data-disabled]{opacity:.5}.asu\:data-ending-style\:translate-x-full[data-ending-style]{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:data-ending-style\:scale-95[data-ending-style]{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.asu\:data-ending-style\:opacity-0[data-ending-style]{opacity:0}.asu\:data-highlighted\:bg-accent[data-highlighted]{background-color:var(--asu-accent)}.asu\:data-highlighted\:bg-accent-hover[data-highlighted]{background-color:var(--asu-accent-hover)}.asu\:data-highlighted\:bg-destructive-subtle[data-highlighted]{background-color:var(--asu-destructive-subtle)}.asu\:data-indeterminate\:border-primary[data-indeterminate]{border-color:var(--asu-primary)}.asu\:data-indeterminate\:bg-primary[data-indeterminate]{background-color:var(--asu-primary)}.asu\:data-invalid\:border-destructive[data-invalid]{border-color:var(--asu-destructive)}.asu\:data-invalid\:focus-within\:ring-destructive\/30[data-invalid]:focus-within{--tw-ring-color:var(--asu-destructive)}@supports (color:color-mix(in lab, red, red)){.asu\:data-invalid\:focus-within\:ring-destructive\/30[data-invalid]:focus-within{--tw-ring-color:color-mix(in oklab, var(--asu-destructive) 30%, transparent)}}.asu\:data-invalid\:focus-visible\:ring-destructive\/30[data-invalid]:focus-visible{--tw-ring-color:var(--asu-destructive)}@supports (color:color-mix(in lab, red, red)){.asu\:data-invalid\:focus-visible\:ring-destructive\/30[data-invalid]:focus-visible{--tw-ring-color:color-mix(in oklab, var(--asu-destructive) 30%, transparent)}}.asu\:data-join-next\:after\:absolute[data-join-next]:after{content:var(--tw-content);position:absolute}.asu\:data-join-next\:after\:top-1\/2[data-join-next]:after{content:var(--tw-content);top:50%}.asu\:data-join-next\:after\:right-0[data-join-next]:after{content:var(--tw-content);right:0}.asu\:data-join-next\:after\:h-6[data-join-next]:after{content:var(--tw-content);height:calc(var(--asu-spacing) * 6)}.asu\:data-join-next\:after\:w-1[data-join-next]:after{content:var(--tw-content);width:var(--asu-spacing)}.asu\:data-join-next\:after\:-translate-y-1\/2[data-join-next]:after{content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:data-join-next\:after\:bg-info-subtle[data-join-next]:after{content:var(--tw-content);background-color:var(--asu-info-subtle)}.asu\:data-join-prev\:after\:absolute[data-join-prev]:after{content:var(--tw-content);position:absolute}.asu\:data-join-prev\:after\:top-1\/2[data-join-prev]:after{content:var(--tw-content);top:50%}.asu\:data-join-prev\:after\:left-0[data-join-prev]:after{content:var(--tw-content);left:0}.asu\:data-join-prev\:after\:h-6[data-join-prev]:after{content:var(--tw-content);height:calc(var(--asu-spacing) * 6)}.asu\:data-join-prev\:after\:w-1[data-join-prev]:after{content:var(--tw-content);width:var(--asu-spacing)}.asu\:data-join-prev\:after\:-translate-y-1\/2[data-join-prev]:after{content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:data-join-prev\:after\:bg-info-subtle[data-join-prev]:after{content:var(--tw-content);background-color:var(--asu-info-subtle)}.asu\:data-limited\:hidden[data-limited]{display:none}.asu\:data-placeholder\:text-muted-foreground[data-placeholder]{color:var(--asu-muted-foreground)}.asu\:data-row-end\:before\:end-1[data-row-end]:before{content:var(--tw-content);inset-inline-end:calc(var(--asu-spacing) * 1)}.asu\:data-row-start\:before\:start-1[data-row-start]:before{content:var(--tw-content);inset-inline-start:calc(var(--asu-spacing) * 1)}.asu\:data-selected\:bg-accent-selected[data-selected]{background-color:var(--asu-accent-selected)}.asu\:data-starting-style\:translate-x-full[data-starting-style]{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:data-starting-style\:scale-95[data-starting-style]{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.asu\:data-starting-style\:opacity-0[data-starting-style]{opacity:0}.asu\:data-unchecked\:translate-x-0[data-unchecked]{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:data-unchecked\:bg-input[data-unchecked]{background-color:var(--asu-input)}.asu\:data-\[orientation\=horizontal\]\:h-px[data-orientation=horizontal]{height:1px}.asu\:data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}.asu\:data-\[orientation\=vertical\]\:w-px[data-orientation=vertical]{width:1px}.asu\:data-\[orientation\=vertical\]\:flex-col[data-orientation=vertical]{flex-direction:column}.asu\:data-\[orientation\=vertical\]\:flex-row[data-orientation=vertical]{flex-direction:row}.asu\:data-\[orientation\=vertical\]\:self-stretch[data-orientation=vertical]{align-self:stretch}.asu\:data-\[orientation\=vertical\]\:overflow-x-visible[data-orientation=vertical]{overflow-x:visible}.asu\:data-\[orientation\=vertical\]\:pt-0[data-orientation=vertical]{padding-top:0}.asu\:data-\[orientation\=vertical\]\:pl-4[data-orientation=vertical]{padding-left:calc(var(--asu-spacing) * 4)}.asu\:data-\[orientation\=vertical\]\:shadow-\[inset_-1px_0_0_0_var\(--asu-border\)\][data-orientation=vertical]{--tw-shadow:inset -1px 0 0 0 var(--tw-shadow-color,var(--asu-border));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.asu\:data-\[orientation\=vertical\]\:after\:inset-x-auto[data-orientation=vertical]:after{content:var(--tw-content);inset-inline:auto}.asu\:data-\[orientation\=vertical\]\:after\:inset-y-\[-10px\][data-orientation=vertical]:after{content:var(--tw-content);inset-block:-10px}.asu\:data-\[orientation\=vertical\]\:after\:right-\[-1px\][data-orientation=vertical]:after{content:var(--tw-content);right:-1px}.asu\:data-\[orientation\=vertical\]\:after\:bottom-auto[data-orientation=vertical]:after{content:var(--tw-content);bottom:auto}.asu\:data-\[orientation\=vertical\]\:after\:h-auto[data-orientation=vertical]:after{content:var(--tw-content);height:auto}.asu\:data-\[orientation\=vertical\]\:after\:w-0\.5[data-orientation=vertical]:after{content:var(--tw-content);width:calc(var(--asu-spacing) * .5)}.asu\:data-\[side\=bottom\]\:-top-1[data-side=bottom]{top:calc(var(--asu-spacing) * -1)}.asu\:data-\[side\=left\]\:-right-1[data-side=left]{right:calc(var(--asu-spacing) * -1)}.asu\:data-\[side\=right\]\:-left-1[data-side=right]{left:calc(var(--asu-spacing) * -1)}.asu\:data-\[side\=top\]\:-bottom-1[data-side=top]{bottom:calc(var(--asu-spacing) * -1)}.asu\:data-\[size\=md\]\:h-5[data-size=md]{height:calc(var(--asu-spacing) * 5)}.asu\:data-\[size\=md\]\:w-9[data-size=md]{width:calc(var(--asu-spacing) * 9)}.asu\:data-\[size\=sm\]\:h-4[data-size=sm]{height:calc(var(--asu-spacing) * 4)}.asu\:data-\[size\=sm\]\:w-7[data-size=sm]{width:calc(var(--asu-spacing) * 7)}@media (prefers-reduced-motion:reduce){.asu\:motion-reduce\:transition-none{transition-property:none}}@media (min-width:40rem){.asu\:sm\:flex-row{flex-direction:row}}.asu\:\[\&_img\]\:inline-block img{display:inline-block}.asu\:\[\&_img\]\:size-full img{width:100%;height:100%}.asu\:\[\&_img\]\:object-contain img{object-fit:contain}.asu\:\[\&_img\]\:align-text-bottom img{vertical-align:text-bottom}.asu\:\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.asu\:\[\&_svg\]\:inline-block svg{display:inline-block}.asu\:\[\&_svg\]\:size-3 svg{width:calc(var(--asu-spacing) * 3);height:calc(var(--asu-spacing) * 3)}.asu\:\[\&_svg\]\:size-4 svg{width:calc(var(--asu-spacing) * 4);height:calc(var(--asu-spacing) * 4)}.asu\:\[\&_svg\]\:size-full svg{width:100%;height:100%}.asu\:\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.asu\:\[\&_svg\]\:align-text-bottom svg{vertical-align:text-bottom}.asu\:\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:calc(var(--asu-spacing) * 3.5);height:calc(var(--asu-spacing) * 3.5)}.asu\:\[\&_svg\:not\(\[class\*\=size-\]\)\]\:size-5 svg:not([class*=size-]){width:calc(var(--asu-spacing) * 5);height:calc(var(--asu-spacing) * 5)}.asu\:\[\&_tr\:hover\]\:bg-muted\/50 tr:hover{background-color:var(--asu-muted)}@supports (color:color-mix(in lab, red, red)){.asu\:\[\&_tr\:hover\]\:bg-muted\/50 tr:hover{background-color:color-mix(in oklab, var(--asu-muted) 50%, transparent)}}.asu\:\[\&\:not\(\[data-range-middle\]\)\>button\]\:bg-primary:not([data-range-middle])>button{background-color:var(--asu-primary)}.asu\:\[\&\:not\(\[data-range-middle\]\)\>button\]\:text-primary-foreground:not([data-range-middle])>button{color:var(--asu-primary-foreground)}@media (hover:hover){.asu\:\[\&\:not\(\[data-range-middle\]\)\>button\]\:hover\:bg-primary:not([data-range-middle])>button:hover{background-color:var(--asu-primary)}}.asu\:\[\&\>button\]\:pointer-events-none>button{pointer-events:none}.asu\:\[\&\>button\]\:text-muted-foreground>button{color:var(--asu-muted-foreground)}.asu\:\[\&\>button\]\:opacity-50>button{opacity:.5}.asu\:\[\&\>img\:first-child\]\:me-1\.5>img:first-child{margin-inline-end:calc(var(--asu-spacing) * 1.5)}.asu\:\[\&\>svg\]\:mt-0\.5>svg{margin-top:calc(var(--asu-spacing) * .5)}.asu\:\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--asu-spacing) * 3.5);height:calc(var(--asu-spacing) * 3.5)}.asu\:\[\&\>svg\]\:size-4>svg{width:calc(var(--asu-spacing) * 4);height:calc(var(--asu-spacing) * 4)}.asu\:\[\&\>svg\]\:size-5>svg{width:calc(var(--asu-spacing) * 5);height:calc(var(--asu-spacing) * 5)}.asu\:\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.asu\:\[\&\>svg\]\:text-destructive>svg{color:var(--asu-destructive)}.asu\:\[\&\>svg\]\:text-info>svg{color:var(--asu-info)}.asu\:\[\&\>svg\]\:text-muted-foreground>svg{color:var(--asu-muted-foreground)}.asu\:\[\&\>svg\]\:text-success>svg{color:var(--asu-success)}.asu\:\[\&\>svg\]\:text-warning>svg{color:var(--asu-warning)}.asu\:\[\&\>svg\:first-child\]\:me-1\.5>svg:first-child{margin-inline-end:calc(var(--asu-spacing) * 1.5)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-duration{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}
2
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-duration:initial;--tw-content:"";--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}:root,:host{--asu-font-sans:"Inter Variable", "Inter", ui-sans-serif, system-ui, sans-serif;--asu-font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--asu-spacing:.25rem;--asu-container-xs:20rem;--asu-container-sm:24rem;--asu-container-md:28rem;--asu-container-xl:36rem;--asu-container-3xl:48rem;--asu-text-xs:.75rem;--asu-text-xs--line-height:calc(1 / .75);--asu-text-sm:.875rem;--asu-text-sm--line-height:calc(1.25 / .875);--asu-text-base:1rem;--asu-text-base--line-height:calc(1.5 / 1);--asu-text-lg:1.125rem;--asu-text-lg--line-height:calc(1.75 / 1.125);--asu-text-xl:1.25rem;--asu-text-xl--line-height:calc(1.75 / 1.25);--asu-text-4xl:2.25rem;--asu-text-4xl--line-height:calc(2.5 / 2.25);--asu-font-weight-normal:400;--asu-font-weight-medium:500;--asu-font-weight-semibold:600;--asu-animate-spin:spin 1s linear infinite;--asu-animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--asu-default-transition-duration:.15s;--asu-default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--asu-default-font-family:var(--asu-font-sans);--asu-default-mono-font-family:var(--asu-font-mono);--asu-color-white:#fff;--asu-color-black:#000;--asu-color-gray-50:#fcfcfc;--asu-color-gray-100:#f7f7f7;--asu-color-gray-200:#f0f0f0;--asu-color-gray-300:#e0e0e0;--asu-color-gray-400:silver;--asu-color-gray-500:#969696;--asu-color-gray-600:#686868;--asu-color-gray-700:#484848;--asu-color-gray-800:#2c2c2c;--asu-color-gray-900:#232323;--asu-color-gray-950:#1a1a1a;--asu-color-slate-50:#f5f6fa;--asu-color-slate-100:#eaecf3;--asu-color-slate-200:#dfe3ec;--asu-color-slate-300:#bfc7d8;--asu-color-slate-400:#a0abc5;--asu-color-slate-500:#818eb1;--asu-color-slate-600:#626e8f;--asu-color-slate-700:#44506f;--asu-color-slate-800:#3c4557;--asu-color-slate-900:#282f3d;--asu-color-slate-950:#151b25;--asu-color-blue-50:#ecf5fd;--asu-color-blue-100:#d6eaff;--asu-color-blue-200:#add0f8;--asu-color-blue-300:#84b6f0;--asu-color-blue-400:#5e9ae8;--asu-color-blue-500:#377ede;--asu-color-blue-600:#065fd4;--asu-color-blue-700:#084ba4;--asu-color-blue-800:#043566;--asu-color-blue-900:#01274f;--asu-color-blue-950:#001a39;--asu-color-green-50:#f7fff9;--asu-color-green-100:#e1fae5;--asu-color-green-200:#cbf5d1;--asu-color-green-300:#95eda3;--asu-color-green-400:#60e074;--asu-color-green-500:#32d74b;--asu-color-green-600:#1fa333;--asu-color-green-700:#11701f;--asu-color-green-800:#074210;--asu-color-green-900:#022408;--asu-color-green-950:#041907;--asu-color-red-50:#fff8f7;--asu-color-red-100:#ffe2e0;--asu-color-red-200:#fda19d;--asu-color-red-300:#fa7069;--asu-color-red-400:#f84037;--asu-color-red-500:#f80d05;--asu-color-red-600:#c40a04;--asu-color-red-700:#910601;--asu-color-red-800:#5e0401;--asu-color-red-900:#2b0100;--asu-color-red-950:#1a0201;--asu-color-yellow-50:#fdfbef;--asu-color-yellow-100:#fff8d6;--asu-color-yellow-200:#fff0a3;--asu-color-yellow-300:#ffe770;--asu-color-yellow-400:#ffdf3d;--asu-color-yellow-500:#ccab08;--asu-color-yellow-600:#998006;--asu-color-yellow-700:#665202;--asu-color-yellow-800:#4e3e00;--asu-color-yellow-900:#372b00;--asu-color-yellow-950:#221a00;--asu-color-orange-50:#fff9f0;--asu-color-orange-100:#ffefd6;--asu-color-orange-200:#feddaf;--asu-color-orange-300:#feca86;--asu-color-orange-400:#ffb559;--asu-color-orange-500:#ff9f0a;--asu-color-orange-600:#cc7f08;--asu-color-orange-700:#995f06;--asu-color-orange-800:#664004;--asu-color-orange-900:#462a00;--asu-color-orange-950:#281600;--asu-color-cyan-50:#eff9fd;--asu-color-cyan-100:#d6f3ff;--asu-color-cyan-200:#b8dcec;--asu-color-cyan-300:#9ac5d8;--asu-color-cyan-400:#7dafc6;--asu-color-cyan-500:#5f99b3;--asu-color-cyan-600:#4183a1;--asu-color-cyan-700:#1e6e8f;--asu-color-cyan-800:#0c445c;--asu-color-cyan-900:#023044;--asu-color-cyan-950:#001e2c;--asu-color-indigo-50:#f6f6fc;--asu-color-indigo-100:#e4e4f5;--asu-color-indigo-200:#c2c3f3;--asu-color-indigo-300:#a0a2f0;--asu-color-indigo-400:#7e80ec;--asu-color-indigo-500:#5e5ce6;--asu-color-indigo-600:#3d3fbf;--asu-color-indigo-700:#201f99;--asu-color-indigo-800:#161466;--asu-color-indigo-900:#0f0e51;--asu-color-indigo-950:#09083c;--asu-color-purple-50:#faf4fd;--asu-color-purple-100:#f4e3fd;--asu-color-purple-200:#dcc2ea;--asu-color-purple-300:#c4a1d7;--asu-color-purple-400:#ab81c5;--asu-color-purple-500:#9461b2;--asu-color-purple-600:#7c409f;--asu-color-purple-700:#65188c;--asu-color-purple-800:#460766;--asu-color-purple-900:#370551;--asu-color-purple-950:#29033d;--asu-color-pink-50:#fef3f8;--asu-color-pink-100:#ffe0ed;--asu-color-pink-200:#f0c0d2;--asu-color-pink-300:#e0a0b7;--asu-color-pink-400:#cf809b;--asu-color-pink-500:#be607f;--asu-color-pink-600:#ac3e63;--asu-color-pink-700:#991147;--asu-color-pink-800:#800a39;--asu-color-pink-900:#5c0026;--asu-color-pink-950:#380014;--asu-radius-sm:2px;--asu-radius-md:4px}@layer base{:where([data-slot],[data-slot] *),:where([data-slot],[data-slot] *):after,:where([data-slot],[data-slot] *):before,:where([data-slot],[data-slot] *)::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}:where([data-slot],[data-slot] *)::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:where([data-slot]):not(:where([data-slot] *)){-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--asu-default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--asu-default-font-feature-settings,normal);font-variation-settings:var(--asu-default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}:where(hr[data-slot],[data-slot] hr){height:0;color:inherit;border-top-width:1px}:where(abbr:where([title])[data-slot],[data-slot] abbr:where([title])){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}:where(h1[data-slot],[data-slot] h1),:where(h2[data-slot],[data-slot] h2),:where(h3[data-slot],[data-slot] h3),:where(h4[data-slot],[data-slot] h4),:where(h5[data-slot],[data-slot] h5),:where(h6[data-slot],[data-slot] h6){font-size:inherit;font-weight:inherit}:where(a[data-slot],[data-slot] a){color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}:where(b[data-slot],[data-slot] b),:where(strong[data-slot],[data-slot] strong){font-weight:bolder}:where(code[data-slot],[data-slot] code),:where(kbd[data-slot],[data-slot] kbd),:where(samp[data-slot],[data-slot] samp),:where(pre[data-slot],[data-slot] pre){font-family:var(--asu-default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--asu-default-mono-font-feature-settings,normal);font-variation-settings:var(--asu-default-mono-font-variation-settings,normal);font-size:1em}:where(small[data-slot],[data-slot] small){font-size:80%}:where(sub[data-slot],[data-slot] sub),:where(sup[data-slot],[data-slot] sup){vertical-align:baseline;font-size:75%;line-height:0;position:relative}:where(sub[data-slot],[data-slot] sub){bottom:-.25em}:where(sup[data-slot],[data-slot] sup){top:-.5em}:where(table[data-slot],[data-slot] table){text-indent:0;border-color:inherit;border-collapse:collapse}:where([data-slot],[data-slot] *):-moz-focusring:where(:not(iframe)){outline:auto}:where(progress[data-slot],[data-slot] progress){vertical-align:baseline}:where(summary[data-slot],[data-slot] summary){display:list-item}:where(ol[data-slot],[data-slot] ol),:where(ul[data-slot],[data-slot] ul),:where(menu[data-slot],[data-slot] menu){list-style:none}:where(img[data-slot],[data-slot] img),:where(svg[data-slot],[data-slot] svg),:where(video[data-slot],[data-slot] video),:where(canvas[data-slot],[data-slot] canvas),:where(audio[data-slot],[data-slot] audio),:where(iframe[data-slot],[data-slot] iframe),:where(embed[data-slot],[data-slot] embed),:where(object[data-slot],[data-slot] object){vertical-align:middle;display:block}:where(img[data-slot],[data-slot] img),:where(video[data-slot],[data-slot] video){max-width:100%;height:auto}:where([data-slot] button),:where([data-slot] input),:where([data-slot] select),:where([data-slot] optgroup),:where([data-slot] textarea){font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit}:where([data-slot],[data-slot] *)::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit}:where(button[data-slot],[data-slot] button),:where(input[data-slot],[data-slot] input),:where(select[data-slot],[data-slot] select),:where(optgroup[data-slot],[data-slot] optgroup),:where(textarea[data-slot],[data-slot] textarea){opacity:1;background-color:#0000;border-radius:0}:where([data-slot],[data-slot] *)::file-selector-button{opacity:1;background-color:#0000;border-radius:0}:where(:where(select:is([multiple],[size])) optgroup[data-slot],[data-slot] :where(select:is([multiple],[size])) optgroup){font-weight:bolder}:where(:where(select:is([multiple],[size])) optgroup option[data-slot],[data-slot] :where(select:is([multiple],[size])) optgroup option){padding-inline-start:20px}:where([data-slot],[data-slot] *)::file-selector-button{margin-inline-end:4px}:where([data-slot],[data-slot] *)::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){:where([data-slot],[data-slot] *)::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){:where([data-slot],[data-slot] *)::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}:where(textarea[data-slot],[data-slot] textarea){resize:vertical}:where([data-slot],[data-slot] *)::-webkit-search-decoration{-webkit-appearance:none}:where([data-slot],[data-slot] *)::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}:where([data-slot],[data-slot] *)::-webkit-datetime-edit{display:inline-flex}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-fields-wrapper{padding:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-year-field{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-month-field{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-day-field{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-hour-field{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-minute-field{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-second-field{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-millisecond-field{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-datetime-edit-meridiem-field{padding-block:0}:where([data-slot],[data-slot] *)::-webkit-calendar-picker-indicator{line-height:1}:where([data-slot],[data-slot] *):-moz-ui-invalid{box-shadow:none}:where(button[data-slot],[data-slot] button),:where(input:where([type=button],[type=reset],[type=submit])[data-slot],[data-slot] input:where([type=button],[type=reset],[type=submit])){appearance:button}:where([data-slot],[data-slot] *)::file-selector-button{appearance:button}:where([data-slot],[data-slot] *)::-webkit-inner-spin-button{height:auto}:where([data-slot],[data-slot] *)::-webkit-outer-spin-button{height:auto}:where([data-slot][hidden],[data-slot] [hidden]):where(:not([hidden=until-found])){display:none!important}:where([data-slot],[data-slot] *),:where([data-slot],[data-slot] *):before,:where([data-slot],[data-slot] *):after,:where([data-slot],[data-slot] *)::backdrop{border-color:var(--asu-border)}:where([data-slot],[data-slot] *)::file-selector-button{border-color:var(--asu-border)}:where([data-slot]):not(:where([data-slot] *)){color:var(--asu-foreground);font-family:var(--asu-font-sans);font-size:var(--asu-text-sm);line-height:var(--asu-text-sm--line-height)}}:root{--asu-background:#fff;--asu-foreground:#2c2c2c;--asu-card:#fff;--asu-card-foreground:#2c2c2c;--asu-popover:#fff;--asu-popover-foreground:#2c2c2c;--asu-primary:#065fd4;--asu-primary-hover:#084ba4;--asu-primary-foreground:#fff;--asu-secondary:#f7f7f7;--asu-secondary-foreground:#2c2c2c;--asu-muted:#f7f7f7;--asu-muted-foreground:#686868;--asu-accent:#f7f7f7;--asu-accent-foreground:#2c2c2c;--asu-destructive:#c40a04;--asu-destructive-hover:#910601;--asu-destructive-foreground:#fff;--asu-destructive-subtle:#fff8f7;--asu-success:#1fa333;--asu-success-foreground:#11701f;--asu-success-subtle:#f7fff9;--asu-warning:#cc7f08;--asu-warning-foreground:#995f06;--asu-warning-subtle:#fff9f0;--asu-info:#065fd4;--asu-info-foreground:#084ba4;--asu-info-subtle:#ecf5fd;--asu-border:#f0f0f0;--asu-input:#e0e0e0;--asu-ring:#065fd4;--asu-tooltip:#3c4557;--asu-tooltip-foreground:#fff;--asu-table-header:#f5f6fa;--asu-secondary-hover:#f0f0f0;--asu-accent-hover:#f0f0f0;--asu-accent-selected:#e0e0e0;--asu-overlay:#2c2c2c73;--asu-sidebar-accent:#f0f0f0;--asu-sidebar-indicator:#f84037}.asu\:pointer-events-auto{pointer-events:auto}.asu\:pointer-events-none{pointer-events:none}.asu\:invisible{visibility:hidden}.asu\:sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.asu\:absolute{position:absolute}.asu\:fixed{position:fixed}.asu\:relative{position:relative}.asu\:inset-0{inset:0}.asu\:inset-y-0{inset-block:0}.asu\:top-0{top:0}.asu\:top-1{top:var(--asu-spacing)}.asu\:top-1\/2{top:50%}.asu\:top-3{top:calc(var(--asu-spacing) * 3)}.asu\:top-4{top:calc(var(--asu-spacing) * 4)}.asu\:right-0{right:0}.asu\:right-1{right:var(--asu-spacing)}.asu\:right-2{right:calc(var(--asu-spacing) * 2)}.asu\:right-4{right:calc(var(--asu-spacing) * 4)}.asu\:right-6{right:calc(var(--asu-spacing) * 6)}.asu\:right-8{right:calc(var(--asu-spacing) * 8)}.asu\:left-0{left:0}.asu\:left-1\/2{left:50%}.asu\:isolate{isolation:isolate}.asu\:z-10{z-index:10}.asu\:z-\[1010\]{z-index:1010}.asu\:m-0{margin:0}.asu\:m-auto{margin:auto}.asu\:my-1{margin-block:var(--asu-spacing)}.asu\:my-2{margin-block:calc(var(--asu-spacing) * 2)}.asu\:mt-1{margin-top:var(--asu-spacing)}.asu\:mt-3{margin-top:calc(var(--asu-spacing) * 3)}.asu\:mt-4{margin-top:calc(var(--asu-spacing) * 4)}.asu\:mb-1{margin-bottom:var(--asu-spacing)}.asu\:mb-2{margin-bottom:calc(var(--asu-spacing) * 2)}.asu\:-ml-px{margin-left:-1px}.asu\:ml-2\.5{margin-left:calc(var(--asu-spacing) * 2.5)}.asu\:ml-auto{margin-left:auto}.asu\:block{display:block}.asu\:flex{display:flex}.asu\:inline-block{display:inline-block}.asu\:inline-flex{display:inline-flex}.asu\:field-sizing-content{field-sizing:content}.asu\:size-1\.5{width:calc(var(--asu-spacing) * 1.5);height:calc(var(--asu-spacing) * 1.5)}.asu\:size-2{width:calc(var(--asu-spacing) * 2);height:calc(var(--asu-spacing) * 2)}.asu\:size-2\.5{width:calc(var(--asu-spacing) * 2.5);height:calc(var(--asu-spacing) * 2.5)}.asu\:size-3{width:calc(var(--asu-spacing) * 3);height:calc(var(--asu-spacing) * 3)}.asu\:size-3\.5{width:calc(var(--asu-spacing) * 3.5);height:calc(var(--asu-spacing) * 3.5)}.asu\:size-4{width:calc(var(--asu-spacing) * 4);height:calc(var(--asu-spacing) * 4)}.asu\:size-5{width:calc(var(--asu-spacing) * 5);height:calc(var(--asu-spacing) * 5)}.asu\:size-6{width:calc(var(--asu-spacing) * 6);height:calc(var(--asu-spacing) * 6)}.asu\:size-7{width:calc(var(--asu-spacing) * 7);height:calc(var(--asu-spacing) * 7)}.asu\:size-8{width:calc(var(--asu-spacing) * 8);height:calc(var(--asu-spacing) * 8)}.asu\:size-10{width:calc(var(--asu-spacing) * 10);height:calc(var(--asu-spacing) * 10)}.asu\:size-24{width:calc(var(--asu-spacing) * 24);height:calc(var(--asu-spacing) * 24)}.asu\:size-\[76px\]{width:76px;height:76px}.asu\:size-full{width:100%;height:100%}.asu\:h-4{height:calc(var(--asu-spacing) * 4)}.asu\:h-6{height:calc(var(--asu-spacing) * 6)}.asu\:h-7{height:calc(var(--asu-spacing) * 7)}.asu\:h-8{height:calc(var(--asu-spacing) * 8)}.asu\:h-10{height:calc(var(--asu-spacing) * 10)}.asu\:h-11{height:calc(var(--asu-spacing) * 11)}.asu\:h-13{height:calc(var(--asu-spacing) * 13)}.asu\:h-14{height:calc(var(--asu-spacing) * 14)}.asu\:h-\[200px\]{height:200px}.asu\:h-auto{height:auto}.asu\:h-full{height:100%}.asu\:h-px{height:1px}.asu\:max-h-\[300px\]{max-height:300px}.asu\:max-h-\[596px\]{max-height:596px}.asu\:max-h-\[calc\(100vh-4rem\)\]{max-height:calc(100vh - 4rem)}.asu\:min-h-5{min-height:calc(var(--asu-spacing) * 5)}.asu\:min-h-8{min-height:calc(var(--asu-spacing) * 8)}.asu\:min-h-16{min-height:calc(var(--asu-spacing) * 16)}.asu\:w-1{width:var(--asu-spacing)}.asu\:w-6{width:calc(var(--asu-spacing) * 6)}.asu\:w-72{width:calc(var(--asu-spacing) * 72)}.asu\:w-90{width:calc(var(--asu-spacing) * 90)}.asu\:w-\[90vw\]{width:90vw}.asu\:w-\[110px\]{width:110px}.asu\:w-\[226px\]{width:226px}.asu\:w-\[588px\]{width:588px}.asu\:w-\[748px\]{width:748px}.asu\:w-\[calc\(100vw-2rem\)\]{width:calc(100vw - 2rem)}.asu\:w-auto{width:auto}.asu\:w-fit{width:fit-content}.asu\:w-full{width:100%}.asu\:max-w-3xl{max-width:var(--asu-container-3xl)}.asu\:max-w-\[100vw\]{max-width:100vw}.asu\:max-w-\[500px\]{max-width:500px}.asu\:max-w-\[calc\(100vw-2rem\)\]{max-width:calc(100vw - 2rem)}.asu\:max-w-md{max-width:var(--asu-container-md)}.asu\:max-w-sm{max-width:var(--asu-container-sm)}.asu\:max-w-xl{max-width:var(--asu-container-xl)}.asu\:max-w-xs{max-width:var(--asu-container-xs)}.asu\:min-w-\(--anchor-width\){min-width:var(--anchor-width)}.asu\:min-w-0{min-width:0}.asu\:min-w-16{min-width:calc(var(--asu-spacing) * 16)}.asu\:min-w-40{min-width:calc(var(--asu-spacing) * 40)}.asu\:min-w-48{min-width:calc(var(--asu-spacing) * 48)}.asu\:min-w-\[75px\]{min-width:75px}.asu\:flex-1{flex:1}.asu\:shrink-0{flex-shrink:0}.asu\:grow-0{flex-grow:0}.asu\:basis-1\/2{flex-basis:50%}.asu\:caption-bottom{caption-side:bottom}.asu\:border-collapse{border-collapse:collapse}.asu\:-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:rotate-45{rotate:45deg}.asu\:animate-pulse{animation:var(--asu-animate-pulse)}.asu\:animate-spin{animation:var(--asu-animate-spin)}.asu\:cursor-default{cursor:default}.asu\:cursor-not-allowed{cursor:not-allowed}.asu\:flex-col{flex-direction:column}.asu\:flex-row{flex-direction:row}.asu\:flex-wrap{flex-wrap:wrap}.asu\:items-center{align-items:center}.asu\:items-start{align-items:flex-start}.asu\:items-stretch{align-items:stretch}.asu\:justify-between{justify-content:space-between}.asu\:justify-center{justify-content:center}.asu\:justify-end{justify-content:flex-end}.asu\:gap-0\.5{gap:calc(var(--asu-spacing) * .5)}.asu\:gap-1{gap:var(--asu-spacing)}.asu\:gap-1\.5{gap:calc(var(--asu-spacing) * 1.5)}.asu\:gap-2{gap:calc(var(--asu-spacing) * 2)}.asu\:gap-2\.5{gap:calc(var(--asu-spacing) * 2.5)}.asu\:gap-3{gap:calc(var(--asu-spacing) * 3)}.asu\:gap-4{gap:calc(var(--asu-spacing) * 4)}.asu\:gap-6{gap:calc(var(--asu-spacing) * 6)}.asu\:gap-8{gap:calc(var(--asu-spacing) * 8)}.asu\:self-start{align-self:flex-start}.asu\:truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.asu\:overflow-hidden{overflow:hidden}.asu\:overflow-x-auto{overflow-x:auto}.asu\:overflow-y-auto{overflow-y:auto}.asu\:rounded-full{border-radius:3.40282e38px}.asu\:rounded-md{border-radius:var(--asu-radius-md)}.asu\:rounded-sm{border-radius:var(--asu-radius-sm)}.asu\:rounded-l-sm{border-top-left-radius:var(--asu-radius-sm);border-bottom-left-radius:var(--asu-radius-sm)}.asu\:rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.asu\:rounded-r-sm{border-top-right-radius:var(--asu-radius-sm);border-bottom-right-radius:var(--asu-radius-sm)}.asu\:border{border-style:var(--tw-border-style);border-width:1px}.asu\:border-0{border-style:var(--tw-border-style);border-width:0}.asu\:border-\[3px\]{border-style:var(--tw-border-style);border-width:3px}.asu\:border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.asu\:border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.asu\:border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.asu\:border-l-0{border-left-style:var(--tw-border-style);border-left-width:0}.asu\:border-dashed{--tw-border-style:dashed;border-style:dashed}.asu\:border-border{border-color:var(--asu-border)}.asu\:border-input{border-color:var(--asu-input)}.asu\:border-primary{border-color:var(--asu-primary)}.asu\:border-transparent{border-color:#0000}.asu\:bg-background{background-color:var(--asu-background)}.asu\:bg-blue-100{background-color:var(--asu-color-blue-100)}.asu\:bg-border{background-color:var(--asu-border)}.asu\:bg-current{background-color:currentColor}.asu\:bg-cyan-100{background-color:var(--asu-color-cyan-100)}.asu\:bg-destructive{background-color:var(--asu-destructive)}.asu\:bg-destructive-subtle{background-color:var(--asu-destructive-subtle)}.asu\:bg-gray-100{background-color:var(--asu-color-gray-100)}.asu\:bg-green-100{background-color:var(--asu-color-green-100)}.asu\:bg-indigo-100{background-color:var(--asu-color-indigo-100)}.asu\:bg-info-subtle{background-color:var(--asu-info-subtle)}.asu\:bg-muted{background-color:var(--asu-muted)}.asu\:bg-orange-100{background-color:var(--asu-color-orange-100)}.asu\:bg-overlay{background-color:var(--asu-overlay)}.asu\:bg-pink-100{background-color:var(--asu-color-pink-100)}.asu\:bg-popover{background-color:var(--asu-popover)}.asu\:bg-primary{background-color:var(--asu-primary)}.asu\:bg-primary-foreground{background-color:var(--asu-primary-foreground)}.asu\:bg-purple-100{background-color:var(--asu-color-purple-100)}.asu\:bg-red-100{background-color:var(--asu-color-red-100)}.asu\:bg-secondary{background-color:var(--asu-secondary)}.asu\:bg-sidebar-accent{background-color:var(--asu-sidebar-accent)}.asu\:bg-sidebar-indicator{background-color:var(--asu-sidebar-indicator)}.asu\:bg-slate-100{background-color:var(--asu-color-slate-100)}.asu\:bg-success-subtle{background-color:var(--asu-success-subtle)}.asu\:bg-table-header{background-color:var(--asu-table-header)}.asu\:bg-tooltip{background-color:var(--asu-tooltip)}.asu\:bg-transparent{background-color:#0000}.asu\:bg-warning-subtle{background-color:var(--asu-warning-subtle)}.asu\:bg-yellow-100{background-color:var(--asu-color-yellow-100)}.asu\:fill-current{fill:currentColor}.asu\:object-cover{object-fit:cover}.asu\:p-0{padding:0}.asu\:p-0\.5{padding:calc(var(--asu-spacing) * .5)}.asu\:p-2{padding:calc(var(--asu-spacing) * 2)}.asu\:p-3{padding:calc(var(--asu-spacing) * 3)}.asu\:p-4{padding:calc(var(--asu-spacing) * 4)}.asu\:p-6{padding:calc(var(--asu-spacing) * 6)}.asu\:px-0{padding-inline:0}.asu\:px-2{padding-inline:calc(var(--asu-spacing) * 2)}.asu\:px-3{padding-inline:calc(var(--asu-spacing) * 3)}.asu\:px-4{padding-inline:calc(var(--asu-spacing) * 4)}.asu\:px-6{padding-inline:calc(var(--asu-spacing) * 6)}.asu\:px-\[22px\]{padding-inline:22px}.asu\:py-1{padding-block:var(--asu-spacing)}.asu\:py-2{padding-block:calc(var(--asu-spacing) * 2)}.asu\:py-2\.5{padding-block:calc(var(--asu-spacing) * 2.5)}.asu\:py-3{padding-block:calc(var(--asu-spacing) * 3)}.asu\:py-4{padding-block:calc(var(--asu-spacing) * 4)}.asu\:pt-4{padding-top:calc(var(--asu-spacing) * 4)}.asu\:pt-5{padding-top:calc(var(--asu-spacing) * 5)}.asu\:pr-8{padding-right:calc(var(--asu-spacing) * 8)}.asu\:pr-12{padding-right:calc(var(--asu-spacing) * 12)}.asu\:pr-16{padding-right:calc(var(--asu-spacing) * 16)}.asu\:pb-3{padding-bottom:calc(var(--asu-spacing) * 3)}.asu\:pl-3{padding-left:calc(var(--asu-spacing) * 3)}.asu\:pl-4{padding-left:calc(var(--asu-spacing) * 4)}.asu\:text-center{text-align:center}.asu\:text-left{text-align:left}.asu\:align-middle{vertical-align:middle}.asu\:text-4xl{font-size:var(--asu-text-4xl);line-height:var(--tw-leading,var(--asu-text-4xl--line-height))}.asu\:text-base{font-size:var(--asu-text-base);line-height:var(--tw-leading,var(--asu-text-base--line-height))}.asu\:text-lg{font-size:var(--asu-text-lg);line-height:var(--tw-leading,var(--asu-text-lg--line-height))}.asu\:text-sm{font-size:var(--asu-text-sm);line-height:var(--tw-leading,var(--asu-text-sm--line-height))}.asu\:text-xl{font-size:var(--asu-text-xl);line-height:var(--tw-leading,var(--asu-text-xl--line-height))}.asu\:text-xs{font-size:var(--asu-text-xs);line-height:var(--tw-leading,var(--asu-text-xs--line-height))}.asu\:text-\[10px\]{font-size:10px}.asu\:leading-5{--tw-leading:calc(var(--asu-spacing) * 5);line-height:calc(var(--asu-spacing) * 5)}.asu\:leading-\[1\.75\]{--tw-leading:1.75;line-height:1.75}.asu\:font-medium{--tw-font-weight:var(--asu-font-weight-medium);font-weight:var(--asu-font-weight-medium)}.asu\:font-normal{--tw-font-weight:var(--asu-font-weight-normal);font-weight:var(--asu-font-weight-normal)}.asu\:font-semibold{--tw-font-weight:var(--asu-font-weight-semibold);font-weight:var(--asu-font-weight-semibold)}.asu\:whitespace-nowrap{white-space:nowrap}.asu\:text-blue-700{color:var(--asu-color-blue-700)}.asu\:text-cyan-700{color:var(--asu-color-cyan-700)}.asu\:text-destructive{color:var(--asu-destructive)}.asu\:text-destructive-foreground{color:var(--asu-destructive-foreground)}.asu\:text-foreground{color:var(--asu-foreground)}.asu\:text-gray-700{color:var(--asu-color-gray-700)}.asu\:text-green-700{color:var(--asu-color-green-700)}.asu\:text-indigo-700{color:var(--asu-color-indigo-700)}.asu\:text-info{color:var(--asu-info)}.asu\:text-muted-foreground{color:var(--asu-muted-foreground)}.asu\:text-orange-700{color:var(--asu-color-orange-700)}.asu\:text-pink-700{color:var(--asu-color-pink-700)}.asu\:text-popover-foreground{color:var(--asu-popover-foreground)}.asu\:text-primary{color:var(--asu-primary)}.asu\:text-primary-foreground{color:var(--asu-primary-foreground)}.asu\:text-purple-700{color:var(--asu-color-purple-700)}.asu\:text-red-700{color:var(--asu-color-red-700)}.asu\:text-secondary-foreground,.asu\:text-secondary-foreground\/70{color:var(--asu-secondary-foreground)}@supports (color:color-mix(in lab, red, red)){.asu\:text-secondary-foreground\/70{color:color-mix(in oklab, var(--asu-secondary-foreground) 70%, transparent)}}.asu\:text-slate-700{color:var(--asu-color-slate-700)}.asu\:text-success{color:var(--asu-success)}.asu\:text-tooltip-foreground{color:var(--asu-tooltip-foreground)}.asu\:text-warning{color:var(--asu-warning)}.asu\:text-white{color:var(--asu-color-white)}.asu\:text-yellow-700{color:var(--asu-color-yellow-700)}.asu\:tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.asu\:underline-offset-4{text-underline-offset:4px}.asu\:opacity-0{opacity:0}.asu\:opacity-50{opacity:.5}.asu\:shadow-\[inset_0_-1px_0_0_var\(--asu-border\)\]{--tw-shadow:inset 0 -1px 0 0 var(--tw-shadow-color,var(--asu-border));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.asu\:shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.asu\:shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.asu\:shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.asu\:transition-\[opacity\,scale\]{transition-property:opacity,scale;transition-timing-function:var(--tw-ease,var(--asu-default-transition-timing-function));transition-duration:var(--tw-duration,var(--asu-default-transition-duration))}.asu\:transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--asu-default-transition-timing-function));transition-duration:var(--tw-duration,var(--asu-default-transition-duration))}.asu\:transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--asu-default-transition-timing-function));transition-duration:var(--tw-duration,var(--asu-default-transition-duration))}.asu\:transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--asu-default-transition-timing-function));transition-duration:var(--tw-duration,var(--asu-default-transition-duration))}.asu\:duration-150{--tw-duration:.15s;transition-duration:.15s}.asu\:duration-200{--tw-duration:.2s;transition-duration:.2s}.asu\:outline-none{--tw-outline-style:none;outline-style:none}.asu\:select-none{-webkit-user-select:none;user-select:none}.asu\:group-focus-within\/row\:opacity-100:is(:where(.asu\:group\/row):focus-within *){opacity:1}@media (hover:hover){.asu\:group-hover\/row\:opacity-100:is(:where(.asu\:group\/row):hover *){opacity:1}}.asu\:group-data-disabled\/number-field\:opacity-50:is(:where(.asu\:group\/number-field)[data-disabled] *){opacity:.5}.asu\:group-data-\[size\=md\]\/switch\:size-4:is(:where(.asu\:group\/switch)[data-size=md] *){width:calc(var(--asu-spacing) * 4);height:calc(var(--asu-spacing) * 4)}.asu\:group-data-\[size\=sm\]\/switch\:size-3:is(:where(.asu\:group\/switch)[data-size=sm] *){width:calc(var(--asu-spacing) * 3);height:calc(var(--asu-spacing) * 3)}.asu\:peer-data-disabled\/select-trigger\:hidden:is(:where(.asu\:peer\/select-trigger)[data-disabled]~*){display:none}.asu\:placeholder\:text-muted-foreground::placeholder{color:var(--asu-muted-foreground)}.asu\:before\:absolute:before{content:var(--tw-content);position:absolute}.asu\:before\:inset-x-0:before{content:var(--tw-content);inset-inline:0}.asu\:before\:inset-y-1:before{content:var(--tw-content);inset-block:var(--asu-spacing)}.asu\:before\:bg-info-subtle:before{content:var(--tw-content);background-color:var(--asu-info-subtle)}.asu\:after\:pointer-events-none:after{content:var(--tw-content);pointer-events:none}.asu\:after\:absolute:after{content:var(--tw-content);position:absolute}.asu\:after\:inset-x-\[-10px\]:after{content:var(--tw-content);inset-inline:-10px}.asu\:after\:bottom-0:after{content:var(--tw-content);bottom:0}.asu\:after\:hidden:after{content:var(--tw-content);display:none}.asu\:after\:h-0\.5:after{content:var(--tw-content);height:calc(var(--asu-spacing) * .5)}.asu\:after\:bg-primary:after{content:var(--tw-content);background-color:var(--asu-primary)}.asu\:after\:content-\[\"\"\]:after{--tw-content:"";content:var(--tw-content)}.asu\:last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.asu\:empty\:p-0:empty{padding:0}.asu\:focus-within\:border-ring:focus-within{border-color:var(--asu-ring)}.asu\:focus-within\:ring-2:focus-within{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.asu\:focus-within\:ring-ring\/30:focus-within{--tw-ring-color:var(--asu-ring)}@supports (color:color-mix(in lab, red, red)){.asu\:focus-within\:ring-ring\/30:focus-within{--tw-ring-color:color-mix(in oklab, var(--asu-ring) 30%, transparent)}}@media (hover:hover){.asu\:hover\:bg-accent:hover{background-color:var(--asu-accent)}.asu\:hover\:bg-accent-hover:hover{background-color:var(--asu-accent-hover)}.asu\:hover\:bg-destructive-hover:hover{background-color:var(--asu-destructive-hover)}.asu\:hover\:bg-primary-hover:hover{background-color:var(--asu-primary-hover)}.asu\:hover\:bg-secondary-hover:hover{background-color:var(--asu-secondary-hover)}.asu\:hover\:bg-sidebar-accent:hover{background-color:var(--asu-sidebar-accent)}.asu\:hover\:text-accent-foreground:hover{color:var(--asu-accent-foreground)}.asu\:hover\:text-foreground:hover{color:var(--asu-foreground)}.asu\:hover\:text-secondary-foreground:hover{color:var(--asu-secondary-foreground)}.asu\:hover\:underline:hover{text-decoration-line:underline}.asu\:not-disabled\:not-data-disabled\:not-aria-invalid\:not-data-invalid\:hover\:border-primary-hover:not(:disabled):not([data-disabled]):not([aria-invalid=true]):not([data-invalid]):hover{border-color:var(--asu-primary-hover)}}.asu\:focus-visible\:border-ring:focus-visible{border-color:var(--asu-ring)}.asu\:focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.asu\:focus-visible\:ring-ring\/30:focus-visible{--tw-ring-color:var(--asu-ring)}@supports (color:color-mix(in lab, red, red)){.asu\:focus-visible\:ring-ring\/30:focus-visible{--tw-ring-color:color-mix(in oklab, var(--asu-ring) 30%, transparent)}}.asu\:focus-visible\:ring-ring\/40:focus-visible{--tw-ring-color:var(--asu-ring)}@supports (color:color-mix(in lab, red, red)){.asu\:focus-visible\:ring-ring\/40:focus-visible{--tw-ring-color:color-mix(in oklab, var(--asu-ring) 40%, transparent)}}.asu\:disabled\:pointer-events-none:disabled{pointer-events:none}.asu\:disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.asu\:disabled\:bg-muted:disabled{background-color:var(--asu-muted)}.asu\:disabled\:opacity-50:disabled{opacity:.5}.asu\:has-focus-visible\:ring-2:has(:focus-visible){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.asu\:has-focus-visible\:ring-ring\/40:has(:focus-visible){--tw-ring-color:var(--asu-ring)}@supports (color:color-mix(in lab, red, red)){.asu\:has-focus-visible\:ring-ring\/40:has(:focus-visible){--tw-ring-color:color-mix(in oklab, var(--asu-ring) 40%, transparent)}}.asu\:aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--asu-destructive)}.asu\:aria-invalid\:focus-within\:ring-destructive\/30[aria-invalid=true]:focus-within{--tw-ring-color:var(--asu-destructive)}@supports (color:color-mix(in lab, red, red)){.asu\:aria-invalid\:focus-within\:ring-destructive\/30[aria-invalid=true]:focus-within{--tw-ring-color:color-mix(in oklab, var(--asu-destructive) 30%, transparent)}}.asu\:aria-invalid\:focus-visible\:ring-destructive\/30[aria-invalid=true]:focus-visible{--tw-ring-color:var(--asu-destructive)}@supports (color:color-mix(in lab, red, red)){.asu\:aria-invalid\:focus-visible\:ring-destructive\/30[aria-invalid=true]:focus-visible{--tw-ring-color:color-mix(in oklab, var(--asu-destructive) 30%, transparent)}}.asu\:data-active\:text-primary[data-active]{color:var(--asu-primary)}.asu\:data-active\:after\:block[data-active]:after{content:var(--tw-content);display:block}.asu\:data-checked\:border-primary[data-checked]{border-color:var(--asu-primary)}.asu\:data-checked\:bg-primary[data-checked]{background-color:var(--asu-primary)}.asu\:group-data-\[size\=md\]\/switch\:data-checked\:translate-x-4:is(:where(.asu\:group\/switch)[data-size=md] *)[data-checked]{--tw-translate-x:calc(var(--asu-spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:group-data-\[size\=sm\]\/switch\:data-checked\:translate-x-3:is(:where(.asu\:group\/switch)[data-size=sm] *)[data-checked]{--tw-translate-x:calc(var(--asu-spacing) * 3);translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:data-disabled\:pointer-events-none[data-disabled]{pointer-events:none}.asu\:data-disabled\:cursor-not-allowed[data-disabled]{cursor:not-allowed}.asu\:data-disabled\:bg-muted[data-disabled]{background-color:var(--asu-muted)}.asu\:data-disabled\:text-muted-foreground[data-disabled]{color:var(--asu-muted-foreground)}.asu\:data-disabled\:opacity-50[data-disabled]{opacity:.5}.asu\:data-ending-style\:translate-x-full[data-ending-style]{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:data-ending-style\:scale-95[data-ending-style]{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.asu\:data-ending-style\:opacity-0[data-ending-style]{opacity:0}.asu\:data-highlighted\:bg-accent[data-highlighted]{background-color:var(--asu-accent)}.asu\:data-highlighted\:bg-accent-hover[data-highlighted]{background-color:var(--asu-accent-hover)}.asu\:data-highlighted\:bg-destructive-subtle[data-highlighted]{background-color:var(--asu-destructive-subtle)}.asu\:data-indeterminate\:border-primary[data-indeterminate]{border-color:var(--asu-primary)}.asu\:data-indeterminate\:bg-primary[data-indeterminate]{background-color:var(--asu-primary)}.asu\:data-invalid\:border-destructive[data-invalid]{border-color:var(--asu-destructive)}.asu\:data-invalid\:focus-within\:ring-destructive\/30[data-invalid]:focus-within{--tw-ring-color:var(--asu-destructive)}@supports (color:color-mix(in lab, red, red)){.asu\:data-invalid\:focus-within\:ring-destructive\/30[data-invalid]:focus-within{--tw-ring-color:color-mix(in oklab, var(--asu-destructive) 30%, transparent)}}.asu\:data-invalid\:focus-visible\:ring-destructive\/30[data-invalid]:focus-visible{--tw-ring-color:var(--asu-destructive)}@supports (color:color-mix(in lab, red, red)){.asu\:data-invalid\:focus-visible\:ring-destructive\/30[data-invalid]:focus-visible{--tw-ring-color:color-mix(in oklab, var(--asu-destructive) 30%, transparent)}}.asu\:data-join-next\:after\:absolute[data-join-next]:after{content:var(--tw-content);position:absolute}.asu\:data-join-next\:after\:top-1\/2[data-join-next]:after{content:var(--tw-content);top:50%}.asu\:data-join-next\:after\:right-0[data-join-next]:after{content:var(--tw-content);right:0}.asu\:data-join-next\:after\:h-6[data-join-next]:after{content:var(--tw-content);height:calc(var(--asu-spacing) * 6)}.asu\:data-join-next\:after\:w-1[data-join-next]:after{content:var(--tw-content);width:var(--asu-spacing)}.asu\:data-join-next\:after\:-translate-y-1\/2[data-join-next]:after{content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:data-join-next\:after\:bg-info-subtle[data-join-next]:after{content:var(--tw-content);background-color:var(--asu-info-subtle)}.asu\:data-join-prev\:after\:absolute[data-join-prev]:after{content:var(--tw-content);position:absolute}.asu\:data-join-prev\:after\:top-1\/2[data-join-prev]:after{content:var(--tw-content);top:50%}.asu\:data-join-prev\:after\:left-0[data-join-prev]:after{content:var(--tw-content);left:0}.asu\:data-join-prev\:after\:h-6[data-join-prev]:after{content:var(--tw-content);height:calc(var(--asu-spacing) * 6)}.asu\:data-join-prev\:after\:w-1[data-join-prev]:after{content:var(--tw-content);width:var(--asu-spacing)}.asu\:data-join-prev\:after\:-translate-y-1\/2[data-join-prev]:after{content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:data-join-prev\:after\:bg-info-subtle[data-join-prev]:after{content:var(--tw-content);background-color:var(--asu-info-subtle)}.asu\:data-limited\:hidden[data-limited]{display:none}.asu\:data-placeholder\:text-muted-foreground[data-placeholder]{color:var(--asu-muted-foreground)}.asu\:data-row-end\:before\:end-1[data-row-end]:before{content:var(--tw-content);inset-inline-end:calc(var(--asu-spacing) * 1)}.asu\:data-row-start\:before\:start-1[data-row-start]:before{content:var(--tw-content);inset-inline-start:calc(var(--asu-spacing) * 1)}.asu\:data-selected\:bg-accent-selected[data-selected]{background-color:var(--asu-accent-selected)}.asu\:data-starting-style\:translate-x-full[data-starting-style]{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:data-starting-style\:scale-95[data-starting-style]{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.asu\:data-starting-style\:opacity-0[data-starting-style]{opacity:0}.asu\:data-unchecked\:translate-x-0[data-unchecked]{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.asu\:data-unchecked\:bg-input[data-unchecked]{background-color:var(--asu-input)}.asu\:data-\[orientation\=horizontal\]\:h-px[data-orientation=horizontal]{height:1px}.asu\:data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}.asu\:data-\[orientation\=vertical\]\:w-px[data-orientation=vertical]{width:1px}.asu\:data-\[orientation\=vertical\]\:flex-col[data-orientation=vertical]{flex-direction:column}.asu\:data-\[orientation\=vertical\]\:flex-row[data-orientation=vertical]{flex-direction:row}.asu\:data-\[orientation\=vertical\]\:self-stretch[data-orientation=vertical]{align-self:stretch}.asu\:data-\[orientation\=vertical\]\:overflow-x-visible[data-orientation=vertical]{overflow-x:visible}.asu\:data-\[orientation\=vertical\]\:pt-0[data-orientation=vertical]{padding-top:0}.asu\:data-\[orientation\=vertical\]\:pl-4[data-orientation=vertical]{padding-left:calc(var(--asu-spacing) * 4)}.asu\:data-\[orientation\=vertical\]\:shadow-\[inset_-1px_0_0_0_var\(--asu-border\)\][data-orientation=vertical]{--tw-shadow:inset -1px 0 0 0 var(--tw-shadow-color,var(--asu-border));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.asu\:data-\[orientation\=vertical\]\:after\:inset-x-auto[data-orientation=vertical]:after{content:var(--tw-content);inset-inline:auto}.asu\:data-\[orientation\=vertical\]\:after\:inset-y-\[-10px\][data-orientation=vertical]:after{content:var(--tw-content);inset-block:-10px}.asu\:data-\[orientation\=vertical\]\:after\:right-\[-1px\][data-orientation=vertical]:after{content:var(--tw-content);right:-1px}.asu\:data-\[orientation\=vertical\]\:after\:bottom-auto[data-orientation=vertical]:after{content:var(--tw-content);bottom:auto}.asu\:data-\[orientation\=vertical\]\:after\:h-auto[data-orientation=vertical]:after{content:var(--tw-content);height:auto}.asu\:data-\[orientation\=vertical\]\:after\:w-0\.5[data-orientation=vertical]:after{content:var(--tw-content);width:calc(var(--asu-spacing) * .5)}.asu\:data-\[side\=bottom\]\:-top-1[data-side=bottom]{top:calc(var(--asu-spacing) * -1)}.asu\:data-\[side\=left\]\:-right-1[data-side=left]{right:calc(var(--asu-spacing) * -1)}.asu\:data-\[side\=right\]\:-left-1[data-side=right]{left:calc(var(--asu-spacing) * -1)}.asu\:data-\[side\=top\]\:-bottom-1[data-side=top]{bottom:calc(var(--asu-spacing) * -1)}.asu\:data-\[size\=md\]\:h-5[data-size=md]{height:calc(var(--asu-spacing) * 5)}.asu\:data-\[size\=md\]\:w-9[data-size=md]{width:calc(var(--asu-spacing) * 9)}.asu\:data-\[size\=sm\]\:h-4[data-size=sm]{height:calc(var(--asu-spacing) * 4)}.asu\:data-\[size\=sm\]\:w-7[data-size=sm]{width:calc(var(--asu-spacing) * 7)}@media (prefers-reduced-motion:reduce){.asu\:motion-reduce\:transition-none{transition-property:none}}@media (min-width:40rem){.asu\:sm\:flex-row{flex-direction:row}}.asu\:\[\&_\[data-slot\=button\]\]\:-mx-3 [data-slot=button]{margin-inline:calc(var(--asu-spacing) * -3)}.asu\:\[\&_\[data-slot\=button\]\]\:h-full [data-slot=button]{height:100%}.asu\:\[\&_\[data-slot\=button\]\]\:rounded-none [data-slot=button]{border-radius:0}.asu\:\[\&_\[data-slot\=button\]\]\:border-0 [data-slot=button]{border-style:var(--tw-border-style);border-width:0}.asu\:\[\&_\[data-slot\=button\]\]\:bg-transparent [data-slot=button]{background-color:#0000}.asu\:\[\&_\[data-slot\=button\]\]\:text-foreground [data-slot=button]{color:var(--asu-foreground)}@media (hover:hover){.asu\:\[\&_\[data-slot\=button\]\]\:hover\:bg-accent [data-slot=button]:hover{background-color:var(--asu-accent)}}.asu\:\[\&_\[data-slot\=button\]\]\:focus-visible\:ring-ring [data-slot=button]:focus-visible{--tw-ring-color:var(--asu-ring)}.asu\:\[\&_\[data-slot\=button\]\]\:focus-visible\:ring-inset [data-slot=button]:focus-visible{--tw-ring-inset:inset}.asu\:\[\&_img\]\:inline-block img{display:inline-block}.asu\:\[\&_img\]\:size-full img{width:100%;height:100%}.asu\:\[\&_img\]\:object-contain img{object-fit:contain}.asu\:\[\&_img\]\:align-text-bottom img{vertical-align:text-bottom}.asu\:\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.asu\:\[\&_svg\]\:inline-block svg{display:inline-block}.asu\:\[\&_svg\]\:size-3 svg{width:calc(var(--asu-spacing) * 3);height:calc(var(--asu-spacing) * 3)}.asu\:\[\&_svg\]\:size-4 svg{width:calc(var(--asu-spacing) * 4);height:calc(var(--asu-spacing) * 4)}.asu\:\[\&_svg\]\:size-full svg{width:100%;height:100%}.asu\:\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.asu\:\[\&_svg\]\:align-text-bottom svg{vertical-align:text-bottom}.asu\:\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:calc(var(--asu-spacing) * 3.5);height:calc(var(--asu-spacing) * 3.5)}.asu\:\[\&_svg\:not\(\[class\*\=size-\]\)\]\:size-5 svg:not([class*=size-]){width:calc(var(--asu-spacing) * 5);height:calc(var(--asu-spacing) * 5)}.asu\:\[\&_tr\:hover\]\:bg-muted\/50 tr:hover{background-color:var(--asu-muted)}@supports (color:color-mix(in lab, red, red)){.asu\:\[\&_tr\:hover\]\:bg-muted\/50 tr:hover{background-color:color-mix(in oklab, var(--asu-muted) 50%, transparent)}}.asu\:\[\&\:not\(\[data-range-middle\]\)\>button\]\:bg-primary:not([data-range-middle])>button{background-color:var(--asu-primary)}.asu\:\[\&\:not\(\[data-range-middle\]\)\>button\]\:text-primary-foreground:not([data-range-middle])>button{color:var(--asu-primary-foreground)}@media (hover:hover){.asu\:\[\&\:not\(\[data-range-middle\]\)\>button\]\:hover\:bg-primary:not([data-range-middle])>button:hover{background-color:var(--asu-primary)}}.asu\:\[\&\>\[data-slot\=button\]\]\:focus-visible\:relative>[data-slot=button]:focus-visible{position:relative}.asu\:\[\&\>\[data-slot\=button\]\]\:focus-visible\:z-10>[data-slot=button]:focus-visible{z-index:10}.asu\:\[\&\>\[data-slot\=button\]\:is\(\[data-variant\=primary\]\,\[data-variant\=secondary\]\,\[data-variant\=destructive\]\)\+\[data-slot\=input\]\]\:ml-0>[data-slot=button]:is([data-variant=primary],[data-variant=secondary],[data-variant=destructive])+[data-slot=input]{margin-left:0}.asu\:\[\&\>\[data-slot\=button\]\:is\(\[data-variant\=primary\]\,\[data-variant\=secondary\]\,\[data-variant\=destructive\]\)\+\[data-slot\=input\]\:not\(\:focus-visible\)\:not\(\[aria-invalid\=true\]\)\]\:border-l-transparent>[data-slot=button]:is([data-variant=primary],[data-variant=secondary],[data-variant=destructive])+[data-slot=input]:not(:focus-visible):not([aria-invalid=true]){border-left-color:#0000}.asu\:\[\&\>\[data-slot\=button\]\[data-variant\=outline\]\]\:border-input>[data-slot=button][data-variant=outline]{border-color:var(--asu-input)}.asu\:\[\&\>\[data-slot\=button\]\[data-variant\=outline\]\]\:focus-visible\:border-ring>[data-slot=button][data-variant=outline]:focus-visible{border-color:var(--asu-ring)}.asu\:\[\&\>\[data-slot\=button\]\[data-variant\=outline\]\]\:focus-visible\:ring-ring\/30>[data-slot=button][data-variant=outline]:focus-visible{--tw-ring-color:var(--asu-ring)}@supports (color:color-mix(in lab, red, red)){.asu\:\[\&\>\[data-slot\=button\]\[data-variant\=outline\]\]\:focus-visible\:ring-ring\/30>[data-slot=button][data-variant=outline]:focus-visible{--tw-ring-color:color-mix(in oklab, var(--asu-ring) 30%, transparent)}}.asu\:\[\&\>\[data-slot\=input\]\]\:relative>[data-slot=input]{position:relative}.asu\:\[\&\>\[data-slot\=input\]\]\:flex-1>[data-slot=input]{flex:1}.asu\:\[\&\>\[data-slot\=input\]\]\:focus-visible\:z-10>[data-slot=input]:focus-visible{z-index:10}.asu\:\[\&\>\[data-slot\=input\]\+\[data-slot\=button\]\:is\(\[data-variant\=primary\]\,\[data-variant\=secondary\]\,\[data-variant\=destructive\]\)\]\:ml-0>[data-slot=input]+[data-slot=button]:is([data-variant=primary],[data-variant=secondary],[data-variant=destructive]){margin-left:0}.asu\:\[\&\>\[data-slot\=input\]\+\[data-slot\]\[data-slot\]\]\:border-l-transparent>[data-slot=input]+[data-slot][data-slot]{border-left-color:#0000}.asu\:\[\&\>\[data-slot\=input\]\:not\(\:focus-visible\)\:not\(\[aria-invalid\=true\]\)\:has\(\+\[data-slot\=button\]\:is\(\[data-variant\=primary\]\,\[data-variant\=secondary\]\,\[data-variant\=destructive\]\)\)\]\:border-r-transparent>[data-slot=input]:not(:focus-visible):not([aria-invalid=true]):has(+[data-slot=button]:is([data-variant=primary],[data-variant=secondary],[data-variant=destructive])){border-right-color:#0000}.asu\:\[\&\>\[data-slot\]\]\:h-auto>[data-slot]{height:auto}.asu\:\[\&\>\[data-slot\]\]\:rounded-none>[data-slot]{border-radius:0}.asu\:\[\&\>\[data-slot\]\:first-child\]\:rounded-l-sm>[data-slot]:first-child{border-top-left-radius:var(--asu-radius-sm);border-bottom-left-radius:var(--asu-radius-sm)}.asu\:\[\&\>\[data-slot\]\:last-child\]\:rounded-r-sm>[data-slot]:last-child{border-top-right-radius:var(--asu-radius-sm);border-bottom-right-radius:var(--asu-radius-sm)}.asu\:\[\&\>\[data-slot\]\:not\(\:first-child\)\]\:-ml-px>[data-slot]:not(:first-child){margin-left:-1px}.asu\:\[\&\>\[data-slot\]\[data-slot\]\:has\(\+\[data-slot\=input\]\)\]\:border-r-transparent>[data-slot][data-slot]:has(+[data-slot=input]){border-right-color:#0000}.asu\:\[\&\>button\]\:pointer-events-none>button{pointer-events:none}.asu\:\[\&\>button\]\:text-muted-foreground>button{color:var(--asu-muted-foreground)}.asu\:\[\&\>button\]\:opacity-50>button{opacity:.5}.asu\:\[\&\>img\:first-child\]\:me-1\.5>img:first-child{margin-inline-end:calc(var(--asu-spacing) * 1.5)}.asu\:\[\&\>svg\]\:mt-0\.5>svg{margin-top:calc(var(--asu-spacing) * .5)}.asu\:\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--asu-spacing) * 3.5);height:calc(var(--asu-spacing) * 3.5)}.asu\:\[\&\>svg\]\:size-4>svg{width:calc(var(--asu-spacing) * 4);height:calc(var(--asu-spacing) * 4)}.asu\:\[\&\>svg\]\:size-5>svg{width:calc(var(--asu-spacing) * 5);height:calc(var(--asu-spacing) * 5)}.asu\:\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.asu\:\[\&\>svg\]\:text-destructive>svg{color:var(--asu-destructive)}.asu\:\[\&\>svg\]\:text-info>svg{color:var(--asu-info)}.asu\:\[\&\>svg\]\:text-muted-foreground>svg{color:var(--asu-muted-foreground)}.asu\:\[\&\>svg\]\:text-success>svg{color:var(--asu-success)}.asu\:\[\&\>svg\]\:text-warning>svg{color:var(--asu-warning)}.asu\:\[\&\>svg\:first-child\]\:me-1\.5>svg:first-child{margin-inline-end:calc(var(--asu-spacing) * 1.5)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-duration{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@api7/ui-components",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "API7 React component library",
5
5
  "type": "module",
6
6
  "sideEffects": [