@worldcoin/mini-apps-ui-kit-react 1.0.0-canary.1 → 1.0.0-canary.10

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
@@ -7,11 +7,11 @@ React components UI Kit library for Mini Apps
7
7
  ## Getting Started
8
8
 
9
9
  - [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/README.md) uses [Babel](https://babeljs.io/) for Fast Refresh
10
- - [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh
10
+ - [@vitejs/plugin-react-swc](https://github.com/vitejs**/**vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh
11
11
 
12
- ## Tailwind Configuration
12
+ ## Tailwind **Configuration**
13
13
 
14
- - `./styles/globals.css`: is the main entrypoint for the tailwind css styles
14
+ - `./**styles**/globals.css`: is the main entrypoint for the tailwind css styles
15
15
  - `./public/globals.css`: compiled tailwind css styles
16
16
  - `./src/tailwind`: tailwind plugin with uiKit tailwind presets
17
17
 
@@ -107,32 +107,30 @@ This method enables tree-shaking and reduces your final bundle size by only incl
107
107
 
108
108
  ## Icons
109
109
 
110
- The library uses [Hugeicons](https://hugeicons.com/) for its icon system. To use icons in your project, you'll need to install the [React package](https://www.npmjs.com/package/@hugeicons/react):
110
+ The library uses [Iconoir](https://iconoir.com/) for its icon system. To use icons in your project, you'll need to install the [React package](https://www.npmjs.com/package/iconoir-react):
111
111
 
112
112
  ```bash
113
- npm install @hugeicons/react
113
+ npm install iconoir-react
114
114
  # or
115
- yarn add @hugeicons/react
115
+ yarn add iconoir-react
116
116
  ```
117
117
 
118
118
  Then you can import and use icons in your components:
119
119
 
120
120
  ```jsx
121
- import { HomeIcon } from '@hugeicons/react';
121
+ import { Home } from 'iconoir-react';
122
122
 
123
123
  function MyComponent() {
124
- return <HomeIcon size={24} />;
124
+ return <Home width={24} height={24} />;
125
125
  }
126
126
  ```
127
127
 
128
- Hugeicons provides a comprehensive set of icons across various categories including:
129
- - Navigation & UI elements
130
- - Social media
131
- - Business & Finance
132
- - Communication
133
- - Technology
134
- - And many more...
128
+ Iconoir provides a comprehensive set of 1,600+ unique SVG icons, designed on a 24x24 pixels grid. The icons are:
129
+ - 100% free and open source
130
+ - Available in SVG, React, React Native, Flutter, Figma and Framer
131
+ - Optimized for performance
132
+ - Customizable with different sizes, colors, and styles
135
133
 
136
- You can browse the complete icon set at [hugeicons.com](https://hugeicons.com/).
134
+ You can browse the complete icon set at [iconoir.com](https://iconoir.com/).
137
135
 
138
- Hugeicons is available under various license options. Please refer to their [website](https://hugeicons.com/) for detailed licensing information.
136
+ Iconoir is available under the MIT License. Please refer to their [website](https://iconoir.com/) for more details.
@@ -0,0 +1,22 @@
1
+ import { BottomBarProps } from '../BottomBar';
2
+ import { AlertDialogCloseProps, AlertDialogContentProps, AlertDialogDescriptionProps, AlertDialogHeaderProps, AlertDialogProps, AlertDialogTitleProps, AlertDialogTriggerProps } from './types';
3
+ import * as React from "react";
4
+ declare const AlertDialog: {
5
+ ({ dismissible, modal, ...props }: AlertDialogProps): import("react/jsx-runtime").JSX.Element;
6
+ displayName: string;
7
+ };
8
+ declare const AlertDialogTrigger: React.ForwardRefExoticComponent<AlertDialogTriggerProps & React.RefAttributes<HTMLButtonElement>>;
9
+ declare const AlertDialogPortal: typeof import('vaul').Portal;
10
+ declare const AlertDialogClose: React.ForwardRefExoticComponent<AlertDialogCloseProps & React.RefAttributes<HTMLButtonElement>>;
11
+ declare const AlertDialogContent: React.ForwardRefExoticComponent<AlertDialogContentProps & React.RefAttributes<HTMLDivElement>>;
12
+ declare const AlertDialogHeader: {
13
+ ({ icon, children, ...props }: AlertDialogHeaderProps): import("react/jsx-runtime").JSX.Element;
14
+ displayName: string;
15
+ };
16
+ declare const AlertDialogFooter: {
17
+ (props: BottomBarProps): import("react/jsx-runtime").JSX.Element;
18
+ displayName: string;
19
+ };
20
+ declare const AlertDialogTitle: React.ForwardRefExoticComponent<AlertDialogTitleProps & React.RefAttributes<HTMLHeadingElement>>;
21
+ declare const AlertDialogDescription: React.ForwardRefExoticComponent<AlertDialogDescriptionProps & React.RefAttributes<HTMLParagraphElement>>;
22
+ export { AlertDialog, AlertDialogPortal, AlertDialogTrigger, AlertDialogClose, AlertDialogContent, AlertDialogHeader, AlertDialogFooter, AlertDialogTitle, AlertDialogDescription, };
@@ -2,50 +2,48 @@
2
2
  import { jsx as r, jsxs as n } from "react/jsx-runtime";
3
3
  import { cn as s } from "../../lib/utils.js";
4
4
  import * as i from "react";
5
- import { Drawer as t } from "../../node_modules/.pnpm/vaul@1.1.2_@types_react-dom@18.3.5_@types_react@18.3.18__@types_react@18.3.18_react-dom@18.3._7iqkcrcg5qjc3n2ixm6rnrnx3e/node_modules/vaul/dist/index.js";
6
- import { BottomBar as g } from "../BottomBar/BottomBar.js";
7
- import { Button as f } from "../Button/Button.js";
8
- import { XMark as p } from "../Icons/XMark.js";
5
+ import { Drawer as o } from "../../node_modules/.pnpm/vaul@1.1.2_@types_react-dom@18.3.5_@types_react@18.3.18__@types_react@18.3.18_react-dom@18.3._7iqkcrcg5qjc3n2ixm6rnrnx3e/node_modules/vaul/dist/index.js";
6
+ import { BottomBar as c } from "../BottomBar/BottomBar.js";
7
+ import { Button as g } from "../Button/Button.js";
8
+ import { XMark as f } from "../Icons/XMark.js";
9
9
  import { Typography as m } from "../Typography/Typography.js";
10
- import { AlertDialogContext as D, useAlertDialog as A } from "./use-alert-dialog.js";
11
- const y = ({ dismissible: e = !0, modal: l = !0, ...a }) => /* @__PURE__ */ r(D.Provider, { value: { dismissible: e }, children: /* @__PURE__ */ r(
12
- t.Root,
10
+ import { AlertDialogContext as p, useAlertDialog as D } from "./use-alert-dialog.js";
11
+ const A = ({ dismissible: e = !0, modal: l = !0, ...t }) => /* @__PURE__ */ r(p.Provider, { value: { dismissible: e }, children: /* @__PURE__ */ r(
12
+ o.Root,
13
13
  {
14
14
  shouldScaleBackground: !1,
15
15
  dismissible: e,
16
16
  modal: l,
17
- ...a
17
+ ...t
18
18
  }
19
19
  ) });
20
- y.displayName = "AlertDialog";
21
- const h = i.forwardRef((e, l) => /* @__PURE__ */ r(t.Trigger, { ref: l, ...e }));
20
+ A.displayName = "AlertDialog";
21
+ const h = i.forwardRef((e, l) => /* @__PURE__ */ r(o.Trigger, { ref: l, ...e }));
22
22
  h.displayName = "AlertDialogTrigger";
23
- const N = t.Portal, d = i.forwardRef((e, l) => /* @__PURE__ */ r(t.Close, { ref: l, ...e }));
23
+ const u = o.Portal, d = i.forwardRef((e, l) => /* @__PURE__ */ r(o.Close, { ref: l, ...e }));
24
24
  d.displayName = "AlertDialogClose";
25
- const c = i.forwardRef(({ className: e, ...l }, a) => /* @__PURE__ */ r(
26
- t.Overlay,
27
- {
28
- ref: a,
29
- className: s("fixed inset-0 z-50 bg-gray-900/40", e),
30
- ...l
31
- }
32
- ));
33
- c.displayName = "AlertDialogOverlay";
34
- const u = i.forwardRef(({ className: e, children: l, ...a }, o) => /* @__PURE__ */ n(N, { children: [
35
- /* @__PURE__ */ r(c, {}),
25
+ const y = i.forwardRef(({ className: e, children: l, ...t }, a) => /* @__PURE__ */ n(u, { children: [
36
26
  /* @__PURE__ */ r(
37
- t.Content,
27
+ o.Overlay,
38
28
  {
39
- ref: o,
29
+ ref: a,
30
+ className: s("fixed inset-0 z-50 bg-gray-900/40", e),
31
+ ...t
32
+ }
33
+ ),
34
+ /* @__PURE__ */ r(
35
+ o.Content,
36
+ {
37
+ ref: a,
40
38
  className: s("fixed inset-x-0 bottom-0 z-50 mt-24 h-auto", e),
41
- ...a,
39
+ ...t,
42
40
  children: /* @__PURE__ */ r("div", { className: "flex flex-col rounded-[1.75rem] bg-gray-0 m-3 p-8", children: l })
43
41
  }
44
42
  )
45
43
  ] }));
46
- u.displayName = "AlertDialogContent";
47
- const x = ({ icon: e, children: l, ...a }) => {
48
- const { dismissible: o } = A();
44
+ y.displayName = "AlertDialogContent";
45
+ const N = ({ icon: e, children: l, ...t }) => {
46
+ const { dismissible: a } = D();
49
47
  return /* @__PURE__ */ n(
50
48
  "div",
51
49
  {
@@ -53,42 +51,41 @@ const x = ({ icon: e, children: l, ...a }) => {
53
51
  "flex justify-between gap-4 mb-4 w-full",
54
52
  e ? "items-start" : "items-center"
55
53
  ),
56
- ...a,
54
+ ...t,
57
55
  children: [
58
56
  /* @__PURE__ */ n("div", { className: "flex flex-col gap-6", children: [
59
57
  e,
60
58
  l
61
59
  ] }),
62
- o && /* @__PURE__ */ r("div", { className: "shrink-0", children: /* @__PURE__ */ r(d, { asChild: !0, children: /* @__PURE__ */ r(f, { variant: "tertiary", size: "icon", children: /* @__PURE__ */ r(p, {}) }) }) })
60
+ a && /* @__PURE__ */ r("div", { className: "shrink-0", children: /* @__PURE__ */ r(d, { asChild: !0, children: /* @__PURE__ */ r(g, { variant: "tertiary", size: "icon", children: /* @__PURE__ */ r(f, {}) }) }) })
63
61
  ]
64
62
  }
65
63
  );
66
64
  };
67
- x.displayName = "AlertDialogHeader";
68
- const v = (e) => /* @__PURE__ */ r(g, { ...e });
69
- v.displayName = "AlertDialogFooter";
70
- const C = i.forwardRef(({ className: e, children: l, ...a }, o) => /* @__PURE__ */ r(t.Title, { ref: o, ...a, asChild: !0, children: /* @__PURE__ */ r(m, { variant: "heading", level: 2, children: l }) }));
71
- C.displayName = "AlertDialogTitle";
72
- const w = i.forwardRef(({ className: e, children: l, ...a }, o) => /* @__PURE__ */ r(
73
- t.Description,
65
+ N.displayName = "AlertDialogHeader";
66
+ const x = (e) => /* @__PURE__ */ r(c, { ...e });
67
+ x.displayName = "AlertDialogFooter";
68
+ const v = i.forwardRef(({ className: e, children: l, ...t }, a) => /* @__PURE__ */ r(o.Title, { ref: a, ...t, asChild: !0, children: /* @__PURE__ */ r(m, { variant: "heading", level: 2, children: l }) }));
69
+ v.displayName = "AlertDialogTitle";
70
+ const C = i.forwardRef(({ className: e, children: l, ...t }, a) => /* @__PURE__ */ r(
71
+ o.Description,
74
72
  {
75
- ref: o,
73
+ ref: a,
76
74
  className: s("text-gray-500 mb-8", e),
77
- ...a,
75
+ ...t,
78
76
  asChild: !0,
79
77
  children: /* @__PURE__ */ r(m, { children: l })
80
78
  }
81
79
  ));
82
- w.displayName = "AlertDialogDescription";
80
+ C.displayName = "AlertDialogDescription";
83
81
  export {
84
- y as AlertDialog,
82
+ A as AlertDialog,
85
83
  d as AlertDialogClose,
86
- u as AlertDialogContent,
87
- w as AlertDialogDescription,
88
- v as AlertDialogFooter,
89
- x as AlertDialogHeader,
90
- c as AlertDialogOverlay,
91
- N as AlertDialogPortal,
92
- C as AlertDialogTitle,
84
+ y as AlertDialogContent,
85
+ C as AlertDialogDescription,
86
+ x as AlertDialogFooter,
87
+ N as AlertDialogHeader,
88
+ u as AlertDialogPortal,
89
+ v as AlertDialogTitle,
93
90
  h as AlertDialogTrigger
94
91
  };
@@ -1,13 +1,12 @@
1
- import { AlertDialog as r, AlertDialogClose as o, AlertDialogContent as t, AlertDialogDescription as i, AlertDialogFooter as a, AlertDialogHeader as g, AlertDialogOverlay as D, AlertDialogPortal as A, AlertDialogTitle as n, AlertDialogTrigger as p } from "./AlertDialog.js";
1
+ import { AlertDialog as o, AlertDialogClose as r, AlertDialogContent as t, AlertDialogDescription as i, AlertDialogFooter as a, AlertDialogHeader as g, AlertDialogPortal as D, AlertDialogTitle as A, AlertDialogTrigger as n } from "./AlertDialog.js";
2
2
  export {
3
- r as AlertDialog,
4
- o as AlertDialogClose,
3
+ o as AlertDialog,
4
+ r as AlertDialogClose,
5
5
  t as AlertDialogContent,
6
6
  i as AlertDialogDescription,
7
7
  a as AlertDialogFooter,
8
8
  g as AlertDialogHeader,
9
- D as AlertDialogOverlay,
10
- A as AlertDialogPortal,
11
- n as AlertDialogTitle,
12
- p as AlertDialogTrigger
9
+ D as AlertDialogPortal,
10
+ A as AlertDialogTitle,
11
+ n as AlertDialogTrigger
13
12
  };
@@ -3,10 +3,9 @@ import { ButtonHTMLAttributes } from 'react';
3
3
  declare const buttonVariants: (props?: ({
4
4
  variant?: "primary" | "secondary" | "tertiary" | null | undefined;
5
5
  size?: "sm" | "lg" | "icon" | null | undefined;
6
- stateful?: boolean | null | undefined;
7
6
  fullWidth?: boolean | null | undefined;
8
7
  } & import('class-variance-authority/types').ClassProp) | undefined) => string;
9
- export interface ButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, "className">, VariantProps<typeof buttonVariants> {
8
+ export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
10
9
  /**
11
10
  * The variant style to use
12
11
  * @default "primary"
@@ -17,11 +16,6 @@ export interface ButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement
17
16
  * @default "lg"
18
17
  */
19
18
  size?: "sm" | "lg" | "icon";
20
- /**
21
- * The state of the button
22
- * @default undefined
23
- */
24
- state?: "pending" | "success" | "failed";
25
19
  /**
26
20
  * Whether the button should take up the full width of its container
27
21
  * @default false
@@ -1,14 +1,11 @@
1
1
  "use client";
2
- import { jsxs as g, jsx as a } from "react/jsx-runtime";
3
- import { cn as b } from "../../lib/utils.js";
4
- import { Slot as d } from "../../node_modules/.pnpm/@radix-ui_react-slot@1.1.1_@types_react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-slot/dist/index.js";
5
- import { cva as m } from "../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js";
6
- import { forwardRef as p } from "react";
7
- import { Fail as f } from "../Icons/Fail.js";
8
- import { Success as c } from "../Icons/Success.js";
9
- import { Spinner as y } from "../Spinner/Spinner.js";
10
- import { typographyVariants as u } from "../Typography/Typography.js";
11
- const v = m(
2
+ import { jsx as l } from "react/jsx-runtime";
3
+ import { cn as n } from "../../lib/utils.js";
4
+ import { Slot as s } from "../../node_modules/.pnpm/@radix-ui_react-slot@1.1.1_@types_react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-slot/dist/index.js";
5
+ import { cva as y } from "../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js";
6
+ import { forwardRef as d } from "react";
7
+ import { typographyVariants as m } from "../Typography/Typography.js";
8
+ const b = y(
12
9
  "flex items-center justify-center rounded-full gap-2 font-sans leading-[1.2] tracking-normal transition-colors",
13
10
  {
14
11
  variants: {
@@ -22,10 +19,6 @@ const v = m(
22
19
  lg: "h-14 min-w-14 px-4",
23
20
  icon: "size-10"
24
21
  },
25
- stateful: {
26
- true: "border-none bg-transparent fill-transparent text-transparent hover:bg-transparent active:bg-transparent disabled:bg-transparent disabled:text-transparent",
27
- false: ""
28
- },
29
22
  fullWidth: {
30
23
  true: "w-full",
31
24
  false: ""
@@ -37,35 +30,30 @@ const v = m(
37
30
  fullWidth: !1
38
31
  }
39
32
  }
40
- ), x = p(
41
- ({ variant: e, size: t = "lg", fullWidth: s, asChild: i, state: r, children: n, ...o }, l) => /* @__PURE__ */ g(
42
- i ? d : "button",
33
+ ), f = d(
34
+ ({ variant: t = "primary", size: r = "lg", fullWidth: e, asChild: i, children: o, ...a }, g) => /* @__PURE__ */ l(
35
+ i ? s : "button",
43
36
  {
44
- ref: l,
45
- className: b(
46
- v({
47
- variant: e,
48
- size: t,
49
- stateful: !!r,
50
- fullWidth: s
37
+ ref: g,
38
+ ...a,
39
+ className: n(
40
+ b({
41
+ variant: t,
42
+ size: r,
43
+ fullWidth: e
51
44
  }),
52
- u({
45
+ m({
53
46
  variant: "label",
54
- level: t === "lg" ? 1 : 2
55
- })
47
+ level: r === "lg" ? 1 : 2
48
+ }),
49
+ a.className
56
50
  ),
57
- ...o,
58
- children: [
59
- !r && n,
60
- r === "pending" && /* @__PURE__ */ a(y, { className: "absolute size-6" }),
61
- r === "success" && /* @__PURE__ */ a(c, { className: "absolute size-6" }),
62
- r === "failed" && /* @__PURE__ */ a(f, { className: "absolute size-6" })
63
- ]
51
+ children: o
64
52
  }
65
53
  )
66
54
  );
67
- x.displayName = "Button";
55
+ f.displayName = "Button";
68
56
  export {
69
- x as Button,
70
- x as default
57
+ f as Button,
58
+ f as default
71
59
  };
@@ -1,7 +1,7 @@
1
1
  import { VariantProps } from 'class-variance-authority';
2
- import { ReactNode } from 'react';
2
+ import { HTMLAttributes, ReactNode } from 'react';
3
3
  type ChipVariant = "default" | "success" | "warning" | "error" | "important";
4
- export interface ChipProps {
4
+ export interface ChipProps extends HTMLAttributes<HTMLDivElement> {
5
5
  /**
6
6
  * The variant of the chip. Default value is "default".
7
7
  */
@@ -20,7 +20,7 @@ export interface ChipProps {
20
20
  className?: string;
21
21
  }
22
22
  export declare const Chip: import('react').ForwardRefExoticComponent<ChipProps & VariantProps<(props?: ({
23
- variant?: "error" | "success" | "default" | "warning" | "important" | null | undefined;
23
+ variant?: "error" | "default" | "success" | "warning" | "important" | null | undefined;
24
24
  isIcon?: boolean | null | undefined;
25
25
  } & import('class-variance-authority/types').ClassProp) | undefined) => string> & import('react').RefAttributes<HTMLDivElement>>;
26
26
  export default Chip;
@@ -1,9 +1,9 @@
1
- import { jsxs as s, jsx as t } from "react/jsx-runtime";
2
- import { Slot as o } from "../../node_modules/.pnpm/@radix-ui_react-slot@1.1.1_@types_react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-slot/dist/index.js";
3
- import { cva as l } from "../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js";
4
- import { forwardRef as f } from "react";
5
- import { Typography as m } from "../Typography/Typography.js";
6
- const c = l(
1
+ import { jsxs as o, jsx as t } from "react/jsx-runtime";
2
+ import { Slot as l } from "../../node_modules/.pnpm/@radix-ui_react-slot@1.1.1_@types_react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-slot/dist/index.js";
3
+ import { cva as f } from "../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js";
4
+ import { forwardRef as m } from "react";
5
+ import { Typography as c } from "../Typography/Typography.js";
6
+ const d = f(
7
7
  "inline-flex h-7 items-center gap-2 rounded-full px-4 font-sans text-sm font-medium leading-none",
8
8
  {
9
9
  variants: {
@@ -24,14 +24,22 @@ const c = l(
24
24
  isIcon: !1
25
25
  }
26
26
  }
27
- ), d = f(
28
- ({ className: e = "", icon: r, label: a, variant: i = "default" }, n) => /* @__PURE__ */ s("div", { ref: n, className: c({ variant: i, className: e, isIcon: !!r }), children: [
29
- r && /* @__PURE__ */ t(o, { style: { width: "1rem", height: "1rem" }, children: r }),
30
- /* @__PURE__ */ t(m, { variant: "subtitle", level: 4, children: a })
31
- ] })
27
+ ), p = m(
28
+ ({ icon: r, label: e, variant: a = "default", className: i, ...n }, s) => /* @__PURE__ */ o(
29
+ "div",
30
+ {
31
+ ref: s,
32
+ className: d({ variant: a, className: i, isIcon: !!r }),
33
+ ...n,
34
+ children: [
35
+ r && /* @__PURE__ */ t(l, { style: { width: "1rem", height: "1rem" }, children: r }),
36
+ /* @__PURE__ */ t(c, { variant: "subtitle", level: 4, children: e })
37
+ ]
38
+ }
39
+ )
32
40
  );
33
- d.displayName = "Chip";
41
+ p.displayName = "Chip";
34
42
  export {
35
- d as Chip,
36
- d as default
43
+ p as Chip,
44
+ p as default
37
45
  };
@@ -0,0 +1,8 @@
1
+ import { ReactNode } from 'react';
2
+ export type CircularIconSize = "xs" | "sm" | "md" | "lg" | "xl";
3
+ export interface CircularIconProps {
4
+ children?: ReactNode;
5
+ className?: string;
6
+ size?: CircularIconSize;
7
+ }
8
+ export declare function CircularIcon({ children, className, size }: CircularIconProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,32 @@
1
+ import { jsx as s } from "react/jsx-runtime";
2
+ import { Slot as m } from "../../node_modules/.pnpm/@radix-ui_react-slot@1.1.1_@types_react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-slot/dist/index.js";
3
+ import { cn as l } from "../../lib/utils.js";
4
+ const o = {
5
+ xs: "size-6",
6
+ sm: "size-11",
7
+ md: "size-12",
8
+ lg: "size-16",
9
+ xl: "size-[5.5rem]"
10
+ }, t = {
11
+ xs: "size-[0.875rem]",
12
+ sm: "size-[1.5rem]",
13
+ md: "size-[1.625rem]",
14
+ lg: "size-[2.125rem]",
15
+ xl: "size-12"
16
+ };
17
+ function a({ children: i, className: r, size: e = "md" }) {
18
+ return /* @__PURE__ */ s(
19
+ "div",
20
+ {
21
+ className: l(
22
+ "rounded-full flex items-center justify-center",
23
+ o[e],
24
+ r
25
+ ),
26
+ children: /* @__PURE__ */ s(m, { className: t[e], children: i })
27
+ }
28
+ );
29
+ }
30
+ export {
31
+ a as CircularIcon
32
+ };
@@ -0,0 +1 @@
1
+ export * from './CircularIcon';
@@ -0,0 +1,4 @@
1
+ import { CircularIcon as c } from "./CircularIcon.js";
2
+ export {
3
+ c as CircularIcon
4
+ };
@@ -1,35 +1,29 @@
1
1
  import { jsx as t } from "react/jsx-runtime";
2
- import { Item as n, Indicator as i, Root as c } from "../../node_modules/.pnpm/@radix-ui_react-radio-group@1.2.2_@types_react-dom@18.3.5_@types_react@18.3.18__@types_react@_2u6lfd2xt65wmbxn7lgvaxqbmy/node_modules/@radix-ui/react-radio-group/dist/index.js";
3
- import { forwardRef as s } from "react";
4
- const f = s(
2
+ import { Item as n, Indicator as d, Root as i } from "../../node_modules/.pnpm/@radix-ui_react-radio-group@1.2.2_@types_react-dom@18.3.5_@types_react@18.3.18__@types_react@_2u6lfd2xt65wmbxn7lgvaxqbmy/node_modules/@radix-ui/react-radio-group/dist/index.js";
3
+ import { forwardRef as a } from "react";
4
+ const f = a(
5
5
  ({ value: e, ...r }, o) => /* @__PURE__ */ t(
6
6
  n,
7
7
  {
8
8
  ref: o,
9
9
  value: e,
10
- className: "size-[2.5rem] cursor-default rounded-full outline-none flex items-center justify-center relative disabled:opacity-90 disabled:cursor-not-allowed",
10
+ className: "size-[3.25rem] cursor-default rounded-full outline-none flex items-center justify-center relative disabled:opacity-90 disabled:cursor-not-allowed",
11
11
  style: {
12
12
  background: e
13
13
  },
14
14
  ...r,
15
- children: /* @__PURE__ */ t(
16
- i,
17
- {
18
- className: "absolute flex size-[2.75rem] items-center rounded-full justify-center",
19
- style: { boxShadow: `0px 0px 0px 4px ${e}` }
20
- }
21
- )
15
+ children: /* @__PURE__ */ t(d, { className: "size-11 rounded-full bg-transparent border-2 border-gray-0" })
22
16
  }
23
17
  )
24
- ), p = s(
25
- ({ value: e, onChange: r, children: o, ...l }, a) => /* @__PURE__ */ t(
26
- c,
18
+ ), p = a(
19
+ ({ value: e, onChange: r, children: o, ...s }, l) => /* @__PURE__ */ t(
20
+ i,
27
21
  {
28
- ref: a,
22
+ ref: l,
29
23
  value: e,
30
24
  onValueChange: r,
31
25
  className: "flex gap-4 items-center",
32
- ...l,
26
+ ...s,
33
27
  children: o
34
28
  }
35
29
  )
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { jsxs as l, jsx as e } from "react/jsx-runtime";
2
3
  import { useState as i, useRef as S } from "react";
3
4
  import { Button as w } from "../Button/Button.js";
@@ -0,0 +1,20 @@
1
+ import { default as React } from 'react';
2
+ interface LiveFeedbackProps {
3
+ /** The current state of the feedback. Controls which icon and label are shown. */
4
+ state?: "pending" | "success" | "failed";
5
+ /** The content to wrap with live feedback, typically a button or form element */
6
+ children: React.ReactNode;
7
+ /** Optional className to apply to the wrapper div */
8
+ className?: string;
9
+ /** Optional labels to show next to the icons for each state */
10
+ label?: {
11
+ /** Text to show during the pending state */
12
+ pending: string;
13
+ /** Text to show when operation succeeds */
14
+ success: string;
15
+ /** Text to show when operation fails */
16
+ failed: string;
17
+ };
18
+ }
19
+ declare function LiveFeedback({ state, children, className, label }: LiveFeedbackProps): import("react/jsx-runtime").JSX.Element;
20
+ export default LiveFeedback;
@@ -0,0 +1,48 @@
1
+ import { jsxs as s, jsx as r, Fragment as c } from "react/jsx-runtime";
2
+ import { cn as n } from "../../lib/utils.js";
3
+ import { Fail as f } from "../Icons/Fail.js";
4
+ import { Success as p } from "../Icons/Success.js";
5
+ import { Spinner as t } from "../Spinner/Spinner.js";
6
+ import { Typography as d } from "../Typography/Typography.js";
7
+ function x({ state: e, children: m, className: o, label: i }) {
8
+ return /* @__PURE__ */ s("div", { className: n("relative", o), children: [
9
+ /* @__PURE__ */ r(
10
+ "div",
11
+ {
12
+ className: n(
13
+ "w-full h-full",
14
+ e && "invisible"
15
+ // Hide children but preserve space
16
+ ),
17
+ children: m
18
+ }
19
+ ),
20
+ e && /* @__PURE__ */ s(
21
+ "div",
22
+ {
23
+ className: n(
24
+ "absolute inset-0 flex items-center justify-center gap-2",
25
+ e === "success" && "text-success-600",
26
+ e === "failed" && "text-error-600"
27
+ ),
28
+ children: [
29
+ e === "pending" && /* @__PURE__ */ s(c, { children: [
30
+ /* @__PURE__ */ r(t, { className: "size-6" }),
31
+ (i == null ? void 0 : i.pending) && /* @__PURE__ */ r(d, { variant: "label", level: 2, children: i.pending })
32
+ ] }),
33
+ e === "success" && /* @__PURE__ */ s(c, { children: [
34
+ /* @__PURE__ */ r(p, { className: "size-6" }),
35
+ (i == null ? void 0 : i.success) && /* @__PURE__ */ r(d, { variant: "label", level: 2, children: i.success })
36
+ ] }),
37
+ e === "failed" && /* @__PURE__ */ s(c, { children: [
38
+ /* @__PURE__ */ r(f, { className: "size-6" }),
39
+ (i == null ? void 0 : i.failed) && /* @__PURE__ */ r(d, { variant: "label", level: 2, children: i.failed })
40
+ ] })
41
+ ]
42
+ }
43
+ )
44
+ ] });
45
+ }
46
+ export {
47
+ x as default
48
+ };
@@ -0,0 +1 @@
1
+ export * from './LiveFeedback';
@@ -0,0 +1,2 @@
1
+ import "react/jsx-runtime";
2
+ import "../Typography/Typography.js";
@@ -1,17 +1,17 @@
1
1
  "use client";
2
- import { jsx as i } from "react/jsx-runtime";
3
- import { forwardRef as B, useMemo as R, useImperativeHandle as W } from "react";
4
- import { usePhoneInput as _ } from "../../node_modules/.pnpm/react-international-phone@4.4.0_react@18.3.1/node_modules/react-international-phone/dist/index.js";
5
- import { CountryDrawer as $ } from "../CountryDrawer/CountryDrawer.js";
6
- import { Input as b } from "../Input/Input.js";
7
- import j from "./CountrySelectorButton.js";
8
- import { DIAL_CODE_PREFIX as q, startAdornmentWidthByDialCodeLength as H } from "./constants.js";
9
- import { getCountryDataListByCodes as M, getValidatedCountryCode as d } from "./utils.js";
10
- const N = B(
2
+ import { jsx as a } from "react/jsx-runtime";
3
+ import { forwardRef as x, useImperativeHandle as B } from "react";
4
+ import { usePhoneInput as R } from "../../node_modules/.pnpm/react-international-phone@4.4.0_react@18.3.1/node_modules/react-international-phone/dist/index.js";
5
+ import { CountryDrawer as W } from "../CountryDrawer/CountryDrawer.js";
6
+ import { Input as _ } from "../Input/Input.js";
7
+ import $ from "./CountrySelectorButton.js";
8
+ import { DIAL_CODE_PREFIX as b, startAdornmentWidthByDialCodeLength as j } from "./constants.js";
9
+ import { getCountryDataListByCodes as q, getValidatedCountryCode as d } from "./utils.js";
10
+ const H = x(
11
11
  ({
12
12
  value: m,
13
13
  onChange: o,
14
- countries: r,
14
+ countries: i,
15
15
  label: f = "Phone",
16
16
  defaultCountryCode: t = "US",
17
17
  disableDialCodePrefill: c = !0,
@@ -24,16 +24,16 @@ const N = B(
24
24
  inputMode: A = "tel",
25
25
  autoComplete: w = "tel",
26
26
  autoCapitalize: P = "off",
27
- autoCorrect: L = "off",
28
- ...v
29
- }, E) => {
30
- const I = R(() => M(r), [r]), { inputValue: S, country: n, inputRef: a, handlePhoneValueChange: g, setCountry: F } = _(
27
+ autoCorrect: v = "off",
28
+ ...E
29
+ }, I) => {
30
+ const { inputValue: L, country: r, inputRef: n, handlePhoneValueChange: S, setCountry: g } = R(
31
31
  {
32
32
  defaultCountry: t.toLowerCase(),
33
33
  disableDialCodePrefill: c,
34
34
  disableDialCodeAndPrefix: !0,
35
35
  value: m,
36
- countries: I,
36
+ countries: q(i),
37
37
  onChange: (e) => {
38
38
  o == null || o(
39
39
  e.phone,
@@ -41,52 +41,52 @@ const N = B(
41
41
  );
42
42
  }
43
43
  }
44
- ), s = d(n.iso2, t), V = `${q}${n.dialCode}`, x = H[n.dialCode.length];
45
- return W(E, () => a.current), /* @__PURE__ */ i(
46
- b,
44
+ ), u = d(r.iso2, t), F = `${b}${r.dialCode}`, V = j[r.dialCode.length];
45
+ return B(I, () => n.current), /* @__PURE__ */ a(
46
+ _,
47
47
  {
48
- ...v,
49
- ref: a,
48
+ ...E,
49
+ ref: n,
50
50
  type: D,
51
51
  inputMode: A,
52
52
  autoComplete: w,
53
53
  autoCapitalize: P,
54
- autoCorrect: L,
55
- value: S,
56
- onChange: g,
54
+ autoCorrect: v,
55
+ value: L,
56
+ onChange: S,
57
57
  label: f,
58
58
  disabled: l,
59
59
  error: h,
60
60
  isValid: p,
61
61
  endAdornment: C,
62
62
  endAdornmentWidth: y,
63
- startAdornmentWidth: x,
63
+ startAdornmentWidth: V,
64
64
  showStartDivider: !0,
65
- startAdornment: /* @__PURE__ */ i(
66
- $,
65
+ startAdornment: /* @__PURE__ */ a(
66
+ W,
67
67
  {
68
- value: s,
68
+ value: u,
69
69
  defaultValue: t,
70
- countries: r,
70
+ countries: i,
71
71
  onAnimationEnd: (e) => {
72
72
  e || requestAnimationFrame(() => {
73
- var u;
74
- (u = a.current) == null || u.focus();
73
+ var s;
74
+ (s = n.current) == null || s.focus();
75
75
  });
76
76
  },
77
77
  onChange: (e) => {
78
- F(e.toLowerCase());
78
+ g(e.toLowerCase());
79
79
  },
80
80
  disabled: l,
81
- children: /* @__PURE__ */ i(j, { value: s, label: V })
81
+ children: /* @__PURE__ */ a($, { value: u, label: F })
82
82
  }
83
83
  )
84
84
  }
85
85
  );
86
86
  }
87
87
  );
88
- N.displayName = "PhoneField";
88
+ H.displayName = "PhoneField";
89
89
  export {
90
- N as PhoneField,
91
- N as default
90
+ H as PhoneField,
91
+ H as default
92
92
  };
@@ -1,50 +1,47 @@
1
1
  "use client";
2
- import { jsx as t, jsxs as m } from "react/jsx-runtime";
2
+ import { jsx as a, jsxs as c } from "react/jsx-runtime";
3
3
  import { Slot as s } from "../../node_modules/.pnpm/@radix-ui_react-slot@1.1.1_@types_react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-slot/dist/index.js";
4
- import { Root as c, Item as f } from "../../node_modules/.pnpm/@radix-ui_react-toggle-group@1.1.2_@types_react-dom@18.3.5_@types_react@18.3.18__@types_react_3smwloudr6a3igss4kifyxcwju/node_modules/@radix-ui/react-toggle-group/dist/index.js";
5
- import * as n from "react";
6
- import { cn as o } from "../../lib/utils.js";
4
+ import { Root as p, Item as f } from "../../node_modules/.pnpm/@radix-ui_react-toggle-group@1.1.2_@types_react-dom@18.3.5_@types_react@18.3.18__@types_react_3smwloudr6a3igss4kifyxcwju/node_modules/@radix-ui/react-toggle-group/dist/index.js";
5
+ import * as o from "react";
6
+ import { cn as n } from "../../lib/utils.js";
7
7
  import { Typography as d } from "../Typography/Typography.js";
8
- const p = n.forwardRef(
9
- ({ children: r, ...a }, e) => /* @__PURE__ */ t(
10
- c,
8
+ const u = o.forwardRef(
9
+ ({ children: t, ...r }, e) => /* @__PURE__ */ a(
10
+ p,
11
11
  {
12
12
  ref: e,
13
13
  type: "single",
14
- className: "flex w-full justify-between px-5 items-center",
15
- ...a,
16
- children: /* @__PURE__ */ t("div", { className: "flex w-full", children: r })
14
+ className: "grid w-full px-5 items-center auto-cols-fr",
15
+ style: {
16
+ gridTemplateColumns: `repeat(${o.Children.count(t)}, 1fr)`
17
+ },
18
+ ...r,
19
+ children: t
17
20
  }
18
21
  )
19
22
  );
20
- p.displayName = "Tabs";
21
- const x = n.forwardRef(
22
- ({ icon: r, label: a, activeIcon: e, ...l }, i) => /* @__PURE__ */ m(
23
+ u.displayName = "Tabs";
24
+ const x = o.forwardRef(
25
+ ({ icon: t, label: r, altIcon: e, className: i, ...l }, m) => /* @__PURE__ */ c(
23
26
  f,
24
27
  {
25
- ref: i,
26
- className: o(
27
- "flex-1 flex flex-col items-center gap-1 relative min-w-0 group",
28
+ ref: m,
29
+ className: (n(
30
+ "w-full flex-1 flex flex-col items-center justify-center gap-1 relative min-w-0 group",
28
31
  "focus:outline-none transition-colors duration-200",
29
32
  "text-gray-350 hover:text-gray-500 data-[state=on]:text-gray-900"
30
- ),
33
+ ), i),
31
34
  ...l,
32
35
  children: [
33
- /* @__PURE__ */ t(
34
- s,
35
- {
36
- className: o("h-[1.625rem] shrink-0", e && "group-data-[state=on]:hidden"),
37
- children: r
38
- }
39
- ),
40
- e && /* @__PURE__ */ t(s, { className: "h-[1.625rem] shrink-0 hidden group-data-[state=on]:block", children: e }),
41
- a && /* @__PURE__ */ t(
36
+ /* @__PURE__ */ a(s, { className: n("h-[1.625rem] shrink-0", e && "group-data-[state=on]:hidden"), children: t }),
37
+ e && /* @__PURE__ */ a(s, { className: "h-[1.625rem] shrink-0 hidden group-data-[state=on]:block", children: e }),
38
+ r && /* @__PURE__ */ a(
42
39
  d,
43
40
  {
44
41
  as: "span",
45
42
  variant: "subtitle",
46
43
  className: "text-2xs truncate w-full text-center px-1 leading-none",
47
- children: a
44
+ children: r
48
45
  }
49
46
  )
50
47
  ]
@@ -54,5 +51,5 @@ const x = n.forwardRef(
54
51
  x.displayName = "TabItem";
55
52
  export {
56
53
  x as TabItem,
57
- p as Tabs
54
+ u as Tabs
58
55
  };
@@ -28,7 +28,7 @@ export interface TabsProps extends Omit<BaseToggleGroupProps, "type" | "size" |
28
28
  */
29
29
  children?: ReactNode;
30
30
  }
31
- export interface TabItemProps extends Omit<BaseToggleGroupItemProps, "className" | "children"> {
31
+ export interface TabItemProps extends Omit<BaseToggleGroupItemProps, "children"> {
32
32
  /**
33
33
  * The icon to display
34
34
  */
@@ -36,7 +36,7 @@ export interface TabItemProps extends Omit<BaseToggleGroupItemProps, "className"
36
36
  /**
37
37
  * The icon to display when the tab item is active
38
38
  */
39
- activeIcon?: ReactNode;
39
+ altIcon?: ReactNode;
40
40
  /**
41
41
  * The label text
42
42
  */
@@ -11,7 +11,7 @@ const b = p, x = l.forwardRef(({ className: r, ...a }, t) => /* @__PURE__ */ e(
11
11
  {
12
12
  ref: t,
13
13
  className: s(
14
- "fixed top-0 z-[100] flex max-h-screen w-full p-4 right-0 left-0 flex-col",
14
+ "fixed top-0 z-[100] flex max-h-screen w-full p-6 right-0 left-0 flex-col",
15
15
  r
16
16
  ),
17
17
  ...a
@@ -1,7 +1,7 @@
1
1
  import { default as React } from 'react';
2
2
  interface TopBarProps {
3
3
  /** Title displayed in the center */
4
- title: string;
4
+ title?: string;
5
5
  /** Element rendered on the left side */
6
6
  startAdornment?: React.ReactNode;
7
7
  /** Element rendered on the right side */
package/dist/index.d.ts CHANGED
@@ -32,4 +32,6 @@ export * from './components/Marble';
32
32
  export * from './components/TopBar';
33
33
  export * from './components/CountryDrawer';
34
34
  export * from './components/ToggleGroup';
35
+ export * from './components/Tabs';
36
+ export * from './components/LiveFeedback';
35
37
  export { default as uiKitTailwindPlugin } from './tailwind';
package/dist/index.js CHANGED
@@ -1,103 +1,106 @@
1
1
  import { Button as a } from "./components/Button/Button.js";
2
2
  import { Checkbox as l } from "./components/Checkbox/Checkbox.js";
3
- import { Chip as f } from "./components/Chip/Chip.js";
4
- import { ColorPickerGroup as g, ColorPickerItem as s } from "./components/ColorPicker/ColorPicker.js";
5
- import { Flag as d } from "./components/Flag/Flag.js";
3
+ import { Chip as x } from "./components/Chip/Chip.js";
4
+ import { ColorPickerGroup as g, ColorPickerItem as n } from "./components/ColorPicker/ColorPicker.js";
5
+ import { Flag as u } from "./components/Flag/Flag.js";
6
6
  import { LazyFlag as D } from "./components/Flag/LazyFlag.js";
7
- import { isSupportedCountryCode as C } from "./components/Flag/utils.js";
7
+ import { isSupportedCountryCode as c } from "./components/Flag/utils.js";
8
8
  import * as r from "./components/Form/Form.js";
9
- import { Input as c, iconVariants as w, inputVariants as F } from "./components/Input/Input.js";
10
- import { ListItem as y } from "./components/ListItem/ListItem.js";
9
+ import { Input as A, iconVariants as F, inputVariants as P } from "./components/Input/Input.js";
10
+ import { ListItem as h } from "./components/ListItem/ListItem.js";
11
11
  import { NumberPad as B } from "./components/NumberPad/NumberPad.js";
12
12
  import { OTPField as G } from "./components/OTPField/OTPField.js";
13
13
  import { Pill as V } from "./components/Pill/Pill.js";
14
14
  import { RadioGroup as L } from "./components/RadioGroup/RadioGroup.js";
15
- import { RadioGroupItem as R } from "./components/RadioGroup/RadioGroupItem.js";
16
- import { Select as H } from "./components/Select/Select.js";
17
- import { SearchField as _ } from "./components/SearchField/SearchField.js";
18
- import { PhoneField as K } from "./components/PhoneField/PhoneField.js";
19
- import { getValidatedCountryCode as N } from "./components/PhoneField/utils.js";
20
- import { Spinner as j } from "./components/Spinner/Spinner.js";
21
- import { Switch as E } from "./components/Switch/Switch.js";
22
- import { Token as Q } from "./components/Token/Token.js";
23
- import { Toast as X, ToastProvider as Y, ToastViewport as Z } from "./components/Toast/Toast.js";
24
- import { Toaster as rr } from "./components/Toast/Toaster.js";
25
- import { reducer as er, toast as tr, useToast as pr } from "./components/Toast/use-toast.js";
26
- import { Typography as mr, typographyVariants as lr } from "./components/Typography/Typography.js";
27
- import { Drawer as fr, DrawerClose as xr, DrawerContent as gr, DrawerHeader as sr, DrawerTitle as nr, DrawerTrigger as dr } from "./components/Drawer/Drawer.js";
15
+ import { RadioGroupItem as H } from "./components/RadioGroup/RadioGroupItem.js";
16
+ import { Select as v } from "./components/Select/Select.js";
17
+ import { SearchField as K } from "./components/SearchField/SearchField.js";
18
+ import { PhoneField as N } from "./components/PhoneField/PhoneField.js";
19
+ import { getValidatedCountryCode as W } from "./components/PhoneField/utils.js";
20
+ import { Spinner as q } from "./components/Spinner/Spinner.js";
21
+ import { Switch as J } from "./components/Switch/Switch.js";
22
+ import { Token as U } from "./components/Token/Token.js";
23
+ import { Toast as Y, ToastProvider as Z, ToastViewport as $ } from "./components/Toast/Toast.js";
24
+ import { Toaster as or } from "./components/Toast/Toaster.js";
25
+ import { reducer as tr, toast as pr, useToast as mr } from "./components/Toast/use-toast.js";
26
+ import { Typography as ir, typographyVariants as lr } from "./components/Typography/Typography.js";
27
+ import { Drawer as xr, DrawerClose as sr, DrawerContent as gr, DrawerHeader as nr, DrawerTitle as dr, DrawerTrigger as ur } from "./components/Drawer/Drawer.js";
28
28
  import { Progress as Dr } from "./components/Progress/Progress.js";
29
29
  import "./components/TextArea/TextArea.js";
30
- import { WalletAddressField as Cr } from "./components/WalletAddressField/WalletAddressField.js";
31
- import { AlertDialog as cr, AlertDialogClose as wr, AlertDialogContent as Fr, AlertDialogDescription as Pr, AlertDialogFooter as yr, AlertDialogHeader as hr, AlertDialogOverlay as Br, AlertDialogPortal as Ir, AlertDialogTitle as Gr, AlertDialogTrigger as Sr } from "./components/AlertDialog/AlertDialog.js";
32
- import { BottomBar as kr } from "./components/BottomBar/BottomBar.js";
33
- import { BulletList as br } from "./components/BulletList/BulletList.js";
34
- import { BulletListItem as vr } from "./components/BulletListItem/BulletListItem.js";
30
+ import { WalletAddressField as cr } from "./components/WalletAddressField/WalletAddressField.js";
31
+ import { AlertDialog as Ar, AlertDialogClose as Fr, AlertDialogContent as Pr, AlertDialogDescription as yr, AlertDialogFooter as hr, AlertDialogHeader as Ir, AlertDialogPortal as Br, AlertDialogTitle as br, AlertDialogTrigger as Gr } from "./components/AlertDialog/AlertDialog.js";
32
+ import { BottomBar as Vr } from "./components/BottomBar/BottomBar.js";
33
+ import { BulletList as Lr } from "./components/BulletList/BulletList.js";
34
+ import { BulletListItem as Hr } from "./components/BulletListItem/BulletListItem.js";
35
35
  import "./components/BulletPoint/BulletPoint.js";
36
- import { Marble as Or } from "./components/Marble/Marble.js";
37
- import { TopBar as zr } from "./components/TopBar/TopBar.js";
38
- import { CountryDrawer as Mr } from "./components/CountryDrawer/CountryDrawer.js";
36
+ import { Marble as vr } from "./components/Marble/Marble.js";
37
+ import { TopBar as Kr } from "./components/TopBar/TopBar.js";
38
+ import { CountryDrawer as Nr } from "./components/CountryDrawer/CountryDrawer.js";
39
39
  import { ToggleGroupItem as Wr, ToggleGroupRoot as jr } from "./components/ToggleGroup/ToggleGroup.js";
40
- import { default as Er } from "./tailwind/index.js";
40
+ import { TabItem as Er, Tabs as Jr } from "./components/Tabs/Tabs.js";
41
+ import "react/jsx-runtime";
42
+ import { default as Ur } from "./tailwind/index.js";
41
43
  export {
42
- cr as AlertDialog,
43
- wr as AlertDialogClose,
44
- Fr as AlertDialogContent,
45
- Pr as AlertDialogDescription,
46
- yr as AlertDialogFooter,
47
- hr as AlertDialogHeader,
48
- Br as AlertDialogOverlay,
49
- Ir as AlertDialogPortal,
50
- Gr as AlertDialogTitle,
51
- Sr as AlertDialogTrigger,
52
- kr as BottomBar,
53
- br as BulletList,
54
- vr as BulletListItem,
44
+ Ar as AlertDialog,
45
+ Fr as AlertDialogClose,
46
+ Pr as AlertDialogContent,
47
+ yr as AlertDialogDescription,
48
+ hr as AlertDialogFooter,
49
+ Ir as AlertDialogHeader,
50
+ Br as AlertDialogPortal,
51
+ br as AlertDialogTitle,
52
+ Gr as AlertDialogTrigger,
53
+ Vr as BottomBar,
54
+ Lr as BulletList,
55
+ Hr as BulletListItem,
55
56
  a as Button,
56
57
  l as Checkbox,
57
- f as Chip,
58
+ x as Chip,
58
59
  g as ColorPickerGroup,
59
- s as ColorPickerItem,
60
- Mr as CountryDrawer,
61
- fr as Drawer,
62
- xr as DrawerClose,
60
+ n as ColorPickerItem,
61
+ Nr as CountryDrawer,
62
+ xr as Drawer,
63
+ sr as DrawerClose,
63
64
  gr as DrawerContent,
64
- sr as DrawerHeader,
65
- nr as DrawerTitle,
66
- dr as DrawerTrigger,
67
- d as Flag,
65
+ nr as DrawerHeader,
66
+ dr as DrawerTitle,
67
+ ur as DrawerTrigger,
68
+ u as Flag,
68
69
  r as Form,
69
- c as Input,
70
+ A as Input,
70
71
  D as LazyFlag,
71
- y as ListItem,
72
- Or as Marble,
72
+ h as ListItem,
73
+ vr as Marble,
73
74
  B as NumberPad,
74
75
  G as OTPField,
75
- K as PhoneField,
76
+ N as PhoneField,
76
77
  V as Pill,
77
78
  Dr as Progress,
78
79
  L as RadioGroup,
79
- R as RadioGroupItem,
80
- _ as SearchField,
81
- H as Select,
82
- j as Spinner,
83
- E as Switch,
84
- X as Toast,
85
- Y as ToastProvider,
86
- Z as ToastViewport,
87
- rr as Toaster,
80
+ H as RadioGroupItem,
81
+ K as SearchField,
82
+ v as Select,
83
+ q as Spinner,
84
+ J as Switch,
85
+ Er as TabItem,
86
+ Jr as Tabs,
87
+ Y as Toast,
88
+ Z as ToastProvider,
89
+ $ as ToastViewport,
90
+ or as Toaster,
88
91
  Wr as ToggleGroupItem,
89
92
  jr as ToggleGroupRoot,
90
- Q as Token,
91
- zr as TopBar,
92
- mr as Typography,
93
- Cr as WalletAddressField,
94
- N as getValidatedCountryCode,
95
- w as iconVariants,
96
- F as inputVariants,
97
- C as isSupportedCountryCode,
98
- er as reducer,
99
- tr as toast,
93
+ U as Token,
94
+ Kr as TopBar,
95
+ ir as Typography,
96
+ cr as WalletAddressField,
97
+ W as getValidatedCountryCode,
98
+ F as iconVariants,
99
+ P as inputVariants,
100
+ c as isSupportedCountryCode,
101
+ tr as reducer,
102
+ pr as toast,
100
103
  lr as typographyVariants,
101
- Er as uiKitTailwindPlugin,
102
- pr as useToast
104
+ Ur as uiKitTailwindPlugin,
105
+ mr as useToast
103
106
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@worldcoin/mini-apps-ui-kit-react",
3
- "version": "1.0.0-canary.1",
3
+ "version": "1.0.0-canary.10",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -161,6 +161,14 @@
161
161
  "types": "./dist/components/TabItem/index.d.ts",
162
162
  "default": "./dist/components/TabItem/index.js"
163
163
  },
164
+ "./CircularIcon": {
165
+ "types": "./dist/components/CircularIcon/index.d.ts",
166
+ "default": "./dist/components/CircularIcon/index.js"
167
+ },
168
+ "./LiveFeedback": {
169
+ "types": "./dist/components/LiveFeedback/index.d.ts",
170
+ "default": "./dist/components/LiveFeedback/index.js"
171
+ },
164
172
  "./tailwind": {
165
173
  "types": "./dist/tailwind/index.d.ts",
166
174
  "default": "./dist/tailwind/index.js"
@@ -1 +1,3 @@
1
- .react-international-phone-country-selector{position:relative}.react-international-phone-country-selector-button{display:flex;height:var(--react-international-phone-height,36px);box-sizing:border-box;align-items:center;justify-content:center;padding:0;border:1px solid var(--react-international-phone-country-selector-border-color,var(--react-international-phone-border-color,#dcdcdc));margin:0;-moz-appearance:button;appearance:button;-webkit-appearance:button;background-color:var(--react-international-phone-country-selector-background-color,var(--react-international-phone-background-color,#fff));cursor:pointer;text-transform:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-international-phone-country-selector-button:hover{background-color:var(--react-international-phone-country-selector-background-color-hover,#f5f5f5)}.react-international-phone-country-selector-button--hide-dropdown{cursor:auto}.react-international-phone-country-selector-button--hide-dropdown:hover{background-color:transparent}.react-international-phone-country-selector-button__button-content{display:flex;align-items:center;justify-content:center}.react-international-phone-country-selector-button__flag-emoji{margin:0 4px}.react-international-phone-country-selector-button__flag-emoji--disabled{opacity:.75}.react-international-phone-country-selector-button__dropdown-arrow{border-top:var(--react-international-phone-country-selector-arrow-size,4px) solid var(--react-international-phone-country-selector-arrow-color,#777);border-right:var(--react-international-phone-country-selector-arrow-size,4px) solid transparent;border-left:var(--react-international-phone-country-selector-arrow-size,4px) solid transparent;margin-right:4px;transition:all .1s ease-out}.react-international-phone-country-selector-button__dropdown-arrow--active{transform:rotateX(180deg)}.react-international-phone-country-selector-button__dropdown-arrow--disabled{border-top-color:var(--react-international-phone-disabled-country-selector-arrow-color,#999)}.react-international-phone-country-selector-button--disabled{cursor:auto}.react-international-phone-country-selector-button--disabled,.react-international-phone-country-selector-button--disabled:hover{background-color:var(--react-international-phone-disabled-country-selector-background-color,var(--react-international-phone-disabled-background-color,#f5f5f5))}.react-international-phone-flag-emoji{width:var(--react-international-phone-flag-width,24px);height:var(--react-international-phone-flag-height,24px);box-sizing:border-box}.react-international-phone-country-selector-dropdown{position:absolute;z-index:1;top:var(--react-international-phone-dropdown-top,44px);left:var(--react-international-phone-dropdown-left,0);display:flex;width:300px;max-height:200px;flex-direction:column;padding:4px 0;margin:0;background-color:var(--react-international-phone-dropdown-item-background-color,var(--react-international-phone-background-color,#fff));box-shadow:var(--react-international-phone-dropdown-shadow,2px 2px 16px rgba(0,0,0,.25));color:var(--react-international-phone-dropdown-item-text-color,var(--react-international-phone-text-color,#222));list-style:none;overflow-y:scroll}.react-international-phone-country-selector-dropdown__preferred-list-divider{height:1px;border:none;margin:var(--react-international-phone-dropdown-preferred-list-divider-margin,0);background:var(--react-international-phone-dropdown-preferred-list-divider-color,var(--react-international-phone-border-color,#dcdcdc))}.react-international-phone-country-selector-dropdown__list-item{display:flex;min-height:var(--react-international-phone-dropdown-item-height,28px);box-sizing:border-box;align-items:center;padding:2px 8px}.react-international-phone-country-selector-dropdown__list-item-flag-emoji{margin-right:8px}.react-international-phone-country-selector-dropdown__list-item-country-name{overflow:hidden;margin-right:8px;font-size:var(--react-international-phone-dropdown-item-font-size,14px);text-overflow:ellipsis;white-space:nowrap}.react-international-phone-country-selector-dropdown__list-item-dial-code{color:var(--react-international-phone-dropdown-item-dial-code-color,gray);font-size:var(--react-international-phone-dropdown-item-font-size,14px)}.react-international-phone-country-selector-dropdown__list-item:hover{background-color:var(--react-international-phone-selected-dropdown-item-background-color,var(--react-international-phone-selected-dropdown-item-background-color,#f5f5f5));cursor:pointer}.react-international-phone-country-selector-dropdown__list-item--focused,.react-international-phone-country-selector-dropdown__list-item--selected{background-color:var(--react-international-phone-selected-dropdown-item-background-color,#f5f5f5);color:var(--react-international-phone-selected-dropdown-item-text-color,var(--react-international-phone-text-color,#222))}.react-international-phone-country-selector-dropdown__list-item--focused .react-international-phone-country-selector-dropdown__list-item-dial-code,.react-international-phone-country-selector-dropdown__list-item--selected .react-international-phone-country-selector-dropdown__list-item-dial-code{color:var(--react-international-phone-selected-dropdown-item-dial-code-color,var(--react-international-phone-dropdown-item-dial-code-color,gray))}.react-international-phone-country-selector-dropdown__list-item--focused{background-color:var(--react-international-phone-selected-dropdown-item-background-color,var(--react-international-phone-selected-dropdown-item-background-color,#f5f5f5))}.react-international-phone-dial-code-preview{display:flex;align-items:center;justify-content:center;padding:0 8px;border:1px solid var(--react-international-phone-dial-code-preview-border-color,var(--react-international-phone-border-color,#dcdcdc));margin-right:-1px;background-color:var(--react-international-phone-dial-code-preview-background-color,var(--react-international-phone-background-color,#fff));color:var(--react-international-phone-dial-code-preview-text-color,var(--react-international-phone-text-color,#222));font-size:var(--react-international-phone-dial-code-preview-font-size,var(--react-international-phone-font-size,13px))}.react-international-phone-dial-code-preview--disabled{background-color:var(--react-international-phone-dial-code-preview-disabled-background-color,var(--react-international-phone-disabled-background-color,#f5f5f5));color:var(--react-international-phone-dial-code-preview-disabled-text-color,var(--react-international-phone-disabled-text-color,#666))}.react-international-phone-input-container{display:flex}.react-international-phone-input-container .react-international-phone-country-selector-button{border-radius:var(--react-international-phone-border-radius,4px);margin-right:-1px;border-bottom-right-radius:0;border-top-right-radius:0}.react-international-phone-input-container .react-international-phone-input{overflow:visible;height:var(--react-international-phone-height,36px);box-sizing:border-box;padding:0 8px;border:1px solid var(--react-international-phone-border-color,#dcdcdc);border-radius:var(--react-international-phone-border-radius,4px);margin:0;background-color:var(--react-international-phone-background-color,#fff);border-bottom-left-radius:0;border-top-left-radius:0;color:var(--react-international-phone-text-color,#222);font-family:inherit;font-size:var(--react-international-phone-font-size,13px)}.react-international-phone-input-container .react-international-phone-input:focus{outline:none}.react-international-phone-input-container .react-international-phone-input--disabled{background-color:var(--react-international-phone-disabled-background-color,#f5f5f5);color:var(--react-international-phone-disabled-text-color,#666)}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-results-button,input[type=search]::-webkit-search-results-decoration{display:none}input::-webkit-clear-button{display:none}input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{display:none}input::-webkit-calendar-picker-indicator{display:none}input::-webkit-datetime-edit,input::-webkit-datetime-edit-ampm-field,input::-webkit-datetime-edit-day-field,input::-webkit-datetime-edit-fields-wrapper,input::-webkit-datetime-edit-hour-field,input::-webkit-datetime-edit-minute-field,input::-webkit-datetime-edit-month-field,input::-webkit-datetime-edit-second-field,input::-webkit-datetime-edit-text,input::-webkit-datetime-edit-year-field{display:none}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border-width:0;border-style:solid;border-color:rgb(var(--gray-200)/1)}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-sans);font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:rgb(var(--gray-400)/1)}input::placeholder,textarea::placeholder{opacity:1;color:rgb(var(--gray-400)/1)}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--font-sans:TWK Lausanne;--gray-0:255 255 255;--gray-50:249 250 251;--gray-100:243 244 245;--gray-200:235 236 239;--gray-300:214 217 221;--gray-350:177 184 194;--gray-400:155 163 174;--gray-500:113 118 128;--gray-700:60 66 75;--gray-900:24 24 24;--success-100:230 249 236;--success-200:204 243 217;--success-300:153 232 179;--success-400:102 220 141;--success-500:51 209 103;--success-600:0 194 48;--success-700:0 155 38;--success-800:0 116 29;--success-900:0 77 19;--error-100:254 233 231;--error-200:253 211 207;--error-300:251 167 159;--error-400:249 123 111;--error-500:247 80 63;--error-600:242 40 13;--error-700:194 32 10;--error-800:145 24 8;--error-900:97 16 5;--warning-100:255 246 230;--warning-200:255 237 204;--warning-300:255 219 153;--warning-400:255 201 102;--warning-500:255 184 51;--warning-600:255 174 0;--warning-700:204 139 0;--warning-800:153 104 0;--warning-900:102 70 0;--info-100:230 240 255;--info-200:204 224 255;--info-300:153 194 255;--info-400:102 163 255;--info-500:51 133 255;--info-600:0 92 255;--info-700:0 74 204;--info-800:0 55 153;--info-900:0 36 102}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.bottom-0{bottom:0}.bottom-1{bottom:.25rem}.left-0{left:0}.right-0{right:0}.top-0{top:0}.top-1{top:.25rem}.z-10{z-index:10}.z-50{z-index:50}.z-\[100\]{z-index:100}.m-3{margin:.75rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-top:1rem;margin-bottom:1rem}.my-8{margin-top:2rem;margin-bottom:2rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.ml-4{margin-left:1rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-1{margin-top:.25rem}.mt-24{margin-top:6rem}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1/1}.size-10{width:2.5rem;height:2.5rem}.size-12{width:3rem;height:3rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.size-9{width:2.25rem;height:2.25rem}.size-\[2\.5rem\]{width:2.5rem;height:2.5rem}.size-\[2\.75rem\]{width:2.75rem;height:2.75rem}.size-full{width:100%;height:100%}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-20{height:5rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-9{height:2.25rem}.h-\[1\.625rem\]{height:1.625rem}.h-\[1px\]{height:1px}.h-\[3\.125rem\]{height:3.125rem}.h-\[3\.5rem\]{height:3.5rem}.h-\[3\.75rem\]{height:3.75rem}.h-\[4\.25rem\]{height:4.25rem}.h-\[4\.5rem\]{height:4.5rem}.h-\[4\.75rem\]{height:4.75rem}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-screen{height:100vh}.max-h-\[11\.75rem\]{max-height:11.75rem}.max-h-screen{max-height:100vh}.min-h-14{min-height:3.5rem}.min-h-\[7\.5rem\]{min-height:7.5rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-24{width:6rem}.w-32{width:8rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-80{width:20rem}.w-\[300px\]{width:300px}.w-\[400px\]{width:400px}.w-\[7\.5rem\]{width:7.5rem}.w-full{width:100%}.min-w-0{min-width:0}.min-w-10{min-width:2.5rem}.min-w-14{min-width:3.5rem}.min-w-28{min-width:7rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.-translate-y-\[0\.6rem\]{--tw-translate-y:-0.6rem}.-translate-y-\[0\.6rem\],.translate-x-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x:0px}.translate-x-4{--tw-translate-x:1rem}.transform,.translate-x-4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-none{animation:none}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-y{resize:vertical}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.content-start{align-content:flex-start}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-5{row-gap:1.25rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.truncate{overflow:hidden;white-space:nowrap}.text-ellipsis,.truncate{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[0\.625rem\]{border-radius:.625rem}.rounded-\[1\.75rem\]{border-radius:1.75rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.rounded-t-\[0\.625rem\]{border-top-left-radius:.625rem;border-top-right-radius:.625rem}.rounded-t-\[1\.75rem\]{border-top-left-radius:1.75rem;border-top-right-radius:1.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-\[0\.09375rem\]{border-width:.09375rem}.border-x{border-left-width:1px}.border-r,.border-x{border-right-width:1px}.border-t{border-top-width:1px}.border-none{border-style:none}.border-error-600{--tw-border-opacity:1;border-color:rgb(var(--error-600)/var(--tw-border-opacity,1))}.border-error-700{--tw-border-opacity:1;border-color:rgb(var(--error-700)/var(--tw-border-opacity,1))}.border-gray-100{--tw-border-opacity:1;border-color:rgb(var(--gray-100)/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(var(--gray-200)/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.border-gray-400{--tw-border-opacity:1;border-color:rgb(var(--gray-400)/var(--tw-border-opacity,1))}.border-gray-900{--tw-border-opacity:1;border-color:rgb(var(--gray-900)/var(--tw-border-opacity,1))}.bg-current{background-color:currentColor}.bg-error-100{--tw-bg-opacity:1;background-color:rgb(var(--error-100)/var(--tw-bg-opacity,1))}.bg-error-500{--tw-bg-opacity:1;background-color:rgb(var(--error-500)/var(--tw-bg-opacity,1))}.bg-gray-0{--tw-bg-opacity:1;background-color:rgb(var(--gray-0)/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(var(--gray-100)/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(var(--gray-200)/var(--tw-bg-opacity,1))}.bg-gray-300{--tw-bg-opacity:1;background-color:rgb(var(--gray-300)/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(var(--gray-50)/var(--tw-bg-opacity,1))}.bg-gray-900{--tw-bg-opacity:1;background-color:rgb(var(--gray-900)/var(--tw-bg-opacity,1))}.bg-gray-900\/40{background-color:rgb(var(--gray-900)/.4)}.bg-info-100{--tw-bg-opacity:1;background-color:rgb(var(--info-100)/var(--tw-bg-opacity,1))}.bg-success-100{--tw-bg-opacity:1;background-color:rgb(var(--success-100)/var(--tw-bg-opacity,1))}.bg-success-500{--tw-bg-opacity:1;background-color:rgb(var(--success-500)/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-warning-100{--tw-bg-opacity:1;background-color:rgb(var(--warning-100)/var(--tw-bg-opacity,1))}.fill-current{fill:currentColor}.fill-gray-0{fill:rgb(var(--gray-0)/1)}.fill-gray-100{fill:rgb(var(--gray-100)/1)}.fill-gray-350{fill:rgb(var(--gray-350)/1)}.fill-gray-900{fill:rgb(var(--gray-900)/1)}.fill-transparent{fill:transparent}.object-cover{-o-object-fit:cover;object-fit:cover}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[3px\]{padding:3px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem}.pb-2,.py-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:1.625rem}.text-2xs{font-size:.6875rem}.text-3xl{font-size:1.875rem}.text-4xl{font-size:2.125rem}.text-5xl{font-size:2.5rem}.text-6xl{font-size:2.75rem}.text-7xl{font-size:3.5rem}.text-\[1\.375rem\]{font-size:1.375rem}.text-\[15px\]{font-size:15px}.text-\[17px\]{font-size:17px}.text-\[3\.5rem\]{font-size:3.5rem}.text-base{font-size:1.0625rem}.text-lg{font-size:1.1875rem}.text-sm{font-size:.9375rem}.text-xl{font-size:1.3125rem}.text-xs{font-size:.8125rem}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.leading-\[1\.2\]{line-height:1.2}.leading-compact{line-height:1.3}.leading-narrow{line-height:1.2}.leading-none{line-height:1}.tracking-\[-0\.01em\]{letter-spacing:-.01em}.tracking-\[-0\.02em\]{letter-spacing:-.02em}.tracking-normal{letter-spacing:0}.text-error-600{--tw-text-opacity:1;color:rgb(var(--error-600)/var(--tw-text-opacity,1))}.text-error-700{--tw-text-opacity:1;color:rgb(var(--error-700)/var(--tw-text-opacity,1))}.text-gray-0{--tw-text-opacity:1;color:rgb(var(--gray-0)/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(var(--gray-300)/var(--tw-text-opacity,1))}.text-gray-350{--tw-text-opacity:1;color:rgb(var(--gray-350)/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(var(--gray-400)/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(var(--gray-900)/var(--tw-text-opacity,1))}.text-info-700{--tw-text-opacity:1;color:rgb(var(--info-700)/var(--tw-text-opacity,1))}.text-success-600{--tw-text-opacity:1;color:rgb(var(--success-600)/var(--tw-text-opacity,1))}.text-success-700{--tw-text-opacity:1;color:rgb(var(--success-700)/var(--tw-text-opacity,1))}.text-transparent{color:transparent}.text-warning-700{--tw-text-opacity:1;color:rgb(var(--warning-700)/var(--tw-text-opacity,1))}.opacity-20{opacity:.2}.opacity-40{opacity:.4}.shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.file\:hidden::file-selector-button{display:none}.placeholder\:text-gray-500::-moz-placeholder{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.placeholder\:text-gray-500::placeholder{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.placeholder\:text-transparent::-moz-placeholder{color:transparent}.placeholder\:text-transparent::placeholder{color:transparent}.invalid\:border-error-600:invalid{--tw-border-opacity:1;border-color:rgb(var(--error-600)/var(--tw-border-opacity,1))}.invalid\:bg-gray-0:invalid{--tw-bg-opacity:1;background-color:rgb(var(--gray-0)/var(--tw-bg-opacity,1))}.hover\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:rgb(var(--gray-200)/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(var(--gray-50)/var(--tw-bg-opacity,1))}.hover\:bg-gray-700:hover{--tw-bg-opacity:1;background-color:rgb(var(--gray-700)/var(--tw-bg-opacity,1))}.hover\:bg-transparent:hover{background-color:transparent}.hover\:text-gray-500:hover{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.focus\:border-error-600:focus{--tw-border-opacity:1;border-color:rgb(var(--error-600)/var(--tw-border-opacity,1))}.focus\:border-gray-300:focus{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.focus\:bg-gray-0:focus{--tw-bg-opacity:1;background-color:rgb(var(--gray-0)/var(--tw-bg-opacity,1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.invalid\:focus\:border-error-600:focus:invalid{--tw-border-opacity:1;border-color:rgb(var(--error-600)/var(--tw-border-opacity,1))}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.active\:bg-gray-200:active{--tw-bg-opacity:1;background-color:rgb(var(--gray-200)/var(--tw-bg-opacity,1))}.active\:bg-gray-50:active{--tw-bg-opacity:1;background-color:rgb(var(--gray-50)/var(--tw-bg-opacity,1))}.active\:bg-gray-700:active{--tw-bg-opacity:1;background-color:rgb(var(--gray-700)/var(--tw-bg-opacity,1))}.active\:bg-transparent:active{background-color:transparent}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:border-gray-100:disabled{--tw-border-opacity:1;border-color:rgb(var(--gray-100)/var(--tw-border-opacity,1))}.disabled\:bg-gray-100:disabled{--tw-bg-opacity:1;background-color:rgb(var(--gray-100)/var(--tw-bg-opacity,1))}.disabled\:bg-gray-50:disabled{--tw-bg-opacity:1;background-color:rgb(var(--gray-50)/var(--tw-bg-opacity,1))}.disabled\:bg-transparent:disabled{background-color:transparent}.disabled\:text-gray-300:disabled{--tw-text-opacity:1;color:rgb(var(--gray-300)/var(--tw-text-opacity,1))}.disabled\:text-gray-400:disabled{--tw-text-opacity:1;color:rgb(var(--gray-400)/var(--tw-text-opacity,1))}.disabled\:text-transparent:disabled{color:transparent}.disabled\:opacity-20:disabled{opacity:.2}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-90:disabled{opacity:.9}.disabled\:active\:bg-transparent:active:disabled{background-color:transparent}.group:last-child .group-last\:hidden{display:none}.group:active .group-active\:bg-gray-50{--tw-bg-opacity:1;background-color:rgb(var(--gray-50)/var(--tw-bg-opacity,1))}.peer:-moz-placeholder-shown~.peer-placeholder-shown\:translate-y-0{--tw-translate-y:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:placeholder-shown~.peer-placeholder-shown\:translate-y-0{--tw-translate-y:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:-moz-placeholder-shown~.peer-placeholder-shown\:text-sm{font-size:.9375rem}.peer:placeholder-shown~.peer-placeholder-shown\:text-sm{font-size:.9375rem}.peer:focus~.peer-focus\:-translate-y-\[0\.6rem\]{--tw-translate-y:-0.6rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:focus~.peer-focus\:border-gray-300{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.peer:focus~.peer-focus\:bg-gray-0{--tw-bg-opacity:1;background-color:rgb(var(--gray-0)/var(--tw-bg-opacity,1))}.peer:focus~.peer-focus\:text-xs{font-size:.8125rem}.has-\[\:disabled\]\:opacity-50:has(:disabled){opacity:.5}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked],.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x:var(--radix-toast-swipe-end-x)}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end],.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x:var(--radix-toast-swipe-move-x)}.data-\[state\=checked\]\:border-gray-900[data-state=checked]{--tw-border-opacity:1;border-color:rgb(var(--gray-900)/var(--tw-border-opacity,1))}.data-\[state\=closed\]\:border-gray-100[data-state=closed]{--tw-border-opacity:1;border-color:rgb(var(--gray-100)/var(--tw-border-opacity,1))}.data-\[state\=unchecked\]\:border-gray-200[data-state=unchecked]{--tw-border-opacity:1;border-color:rgb(var(--gray-200)/var(--tw-border-opacity,1))}.data-\[state\=unchecked\]\:border-gray-300[data-state=unchecked]{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.data-\[state\=checked\]\:bg-gray-900[data-state=checked]{--tw-bg-opacity:1;background-color:rgb(var(--gray-900)/var(--tw-bg-opacity,1))}.data-\[state\=closed\]\:bg-gray-100[data-state=closed],.data-\[state\=on\]\:bg-gray-100[data-state=on]{--tw-bg-opacity:1;background-color:rgb(var(--gray-100)/var(--tw-bg-opacity,1))}.data-\[state\=unchecked\]\:bg-gray-300[data-state=unchecked]{--tw-bg-opacity:1;background-color:rgb(var(--gray-300)/var(--tw-bg-opacity,1))}.data-\[state\=unchecked\]\:bg-transparent[data-state=unchecked]{background-color:transparent}.data-\[placeholder\]\:text-gray-500[data-placeholder]{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.data-\[state\=on\]\:text-gray-900[data-state=on]{--tw-text-opacity:1;color:rgb(var(--gray-900)/var(--tw-text-opacity,1))}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial}.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial}.data-\[state\=closed\]\:fade-out-50[data-state=closed]{--tw-exit-opacity:0.5}.data-\[state\=closed\]\:slide-out-to-top-full[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y:-100%}.group[data-state=on] .group-data-\[state\=on\]\:block{display:block}.group[data-state=on] .group-data-\[state\=on\]\:hidden{display:none}@media (min-width:768px){.md\:grid-cols-\[1fr_2fr\]{grid-template-columns:1fr 2fr}}.\[\&\:has\(\>\*\:nth-child\(2\)\)\]\:grid-cols-2:has(>:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}.\[\&\>\*\]\:col-span-1>*{grid-column:span 1/span 1}.\[\&\>span\:first-of-type\]\:line-clamp-1>span:first-of-type{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}
1
+ @font-face{font-family:TWK Lausanne;src:url(../public/fonts/TWKLausanne-350.woff) format("woff");font-weight:350;font-style:normal;font-display:swap}@font-face{font-family:TWK Lausanne;src:url(../public/fonts/TWKLausanne-350Italic.woff) format("woff");font-weight:350;font-style:italic;font-display:swap}@font-face{font-family:TWK Lausanne;src:url(../public/fonts/TWKLausanne-500.woff) format("woff");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:TWK Lausanne;src:url(../public/fonts/TWKLausanne-500Italic.woff) format("woff");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:TWK Lausanne;src:url(../public/fonts/TWKLausanne-600.woff) format("woff");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:TWK Lausanne;src:url(../public/fonts/TWKLausanne-600Italic.woff) format("woff");font-weight:600;font-style:italic;font-display:swap}:root{--font-sans:"TWK Lausanne",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-results-button,input[type=search]::-webkit-search-results-decoration{display:none}input::-webkit-clear-button{display:none}input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{display:none}input::-webkit-calendar-picker-indicator{display:none}input::-webkit-datetime-edit,input::-webkit-datetime-edit-ampm-field,input::-webkit-datetime-edit-day-field,input::-webkit-datetime-edit-fields-wrapper,input::-webkit-datetime-edit-hour-field,input::-webkit-datetime-edit-minute-field,input::-webkit-datetime-edit-month-field,input::-webkit-datetime-edit-second-field,input::-webkit-datetime-edit-text,input::-webkit-datetime-edit-year-field{display:none}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }
2
+
3
+ /*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border-width:0;border-style:solid;border-color:rgb(var(--gray-200)/1)}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-sans);font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:rgb(var(--gray-400)/1)}input::placeholder,textarea::placeholder{opacity:1;color:rgb(var(--gray-400)/1)}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--font-sans:TWK Lausanne;--gray-0:255 255 255;--gray-50:249 250 251;--gray-100:243 244 245;--gray-200:235 236 239;--gray-300:214 217 221;--gray-350:177 184 194;--gray-400:155 163 174;--gray-500:113 118 128;--gray-700:60 66 75;--gray-900:24 24 24;--success-100:230 249 236;--success-200:204 243 217;--success-300:153 232 179;--success-400:102 220 141;--success-500:51 209 103;--success-600:0 194 48;--success-700:0 155 38;--success-800:0 116 29;--success-900:0 77 19;--error-100:254 233 231;--error-200:253 211 207;--error-300:251 167 159;--error-400:249 123 111;--error-500:247 80 63;--error-600:242 40 13;--error-700:194 32 10;--error-800:145 24 8;--error-900:97 16 5;--warning-100:255 246 230;--warning-200:255 237 204;--warning-300:255 219 153;--warning-400:255 201 102;--warning-500:255 184 51;--warning-600:255 174 0;--warning-700:204 139 0;--warning-800:153 104 0;--warning-900:102 70 0;--info-100:230 240 255;--info-200:204 224 255;--info-300:153 194 255;--info-400:102 163 255;--info-500:51 133 255;--info-600:0 92 255;--info-700:0 74 204;--info-800:0 55 153;--info-900:0 36 102}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.bottom-0{bottom:0}.bottom-1{bottom:.25rem}.left-0{left:0}.right-0{right:0}.top-0{top:0}.top-1{top:.25rem}.z-10{z-index:10}.z-50{z-index:50}.z-\[100\]{z-index:100}.m-3{margin:.75rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-top:1rem;margin-bottom:1rem}.my-8{margin-top:2rem;margin-bottom:2rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.ml-4{margin-left:1rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-1{margin-top:.25rem}.mt-24{margin-top:6rem}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1/1}.size-10{width:2.5rem;height:2.5rem}.size-11{width:2.75rem;height:2.75rem}.size-12{width:3rem;height:3rem}.size-16{width:4rem;height:4rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.size-9{width:2.25rem;height:2.25rem}.size-\[0\.875rem\]{width:.875rem;height:.875rem}.size-\[1\.5rem\]{width:1.5rem;height:1.5rem}.size-\[1\.625rem\]{width:1.625rem;height:1.625rem}.size-\[2\.125rem\]{width:2.125rem;height:2.125rem}.size-\[3\.25rem\]{width:3.25rem;height:3.25rem}.size-\[5\.5rem\]{width:5.5rem;height:5.5rem}.size-full{width:100%;height:100%}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-20{height:5rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-9{height:2.25rem}.h-\[1\.625rem\]{height:1.625rem}.h-\[1px\]{height:1px}.h-\[3\.125rem\]{height:3.125rem}.h-\[3\.5rem\]{height:3.5rem}.h-\[3\.75rem\]{height:3.75rem}.h-\[4\.25rem\]{height:4.25rem}.h-\[4\.5rem\]{height:4.5rem}.h-\[4\.75rem\]{height:4.75rem}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-screen{height:100vh}.max-h-\[11\.75rem\]{max-height:11.75rem}.max-h-screen{max-height:100vh}.min-h-14{min-height:3.5rem}.min-h-\[7\.5rem\]{min-height:7.5rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-24{width:6rem}.w-32{width:8rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-80{width:20rem}.w-\[300px\]{width:300px}.w-\[400px\]{width:400px}.w-\[7\.5rem\]{width:7.5rem}.w-full{width:100%}.min-w-0{min-width:0}.min-w-10{min-width:2.5rem}.min-w-14{min-width:3.5rem}.min-w-28{min-width:7rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.-translate-y-\[0\.6rem\]{--tw-translate-y:-0.6rem}.-translate-y-\[0\.6rem\],.translate-x-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x:0px}.translate-x-4{--tw-translate-x:1rem}.transform,.translate-x-4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-none{animation:none}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-y{resize:vertical}.auto-cols-fr{grid-auto-columns:minmax(0,1fr)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.content-start{align-content:flex-start}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-5{row-gap:1.25rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.overflow-auto{overflow:auto}.overflow-hidden,.truncate{overflow:hidden}.truncate{white-space:nowrap}.text-ellipsis,.truncate{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[0\.625rem\]{border-radius:.625rem}.rounded-\[1\.75rem\]{border-radius:1.75rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.rounded-t-\[0\.625rem\]{border-top-left-radius:.625rem;border-top-right-radius:.625rem}.rounded-t-\[1\.75rem\]{border-top-left-radius:1.75rem;border-top-right-radius:1.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-\[0\.09375rem\]{border-width:.09375rem}.border-x{border-left-width:1px}.border-r,.border-x{border-right-width:1px}.border-t{border-top-width:1px}.border-error-600{--tw-border-opacity:1;border-color:rgb(var(--error-600)/var(--tw-border-opacity,1))}.border-error-700{--tw-border-opacity:1;border-color:rgb(var(--error-700)/var(--tw-border-opacity,1))}.border-gray-0{--tw-border-opacity:1;border-color:rgb(var(--gray-0)/var(--tw-border-opacity,1))}.border-gray-100{--tw-border-opacity:1;border-color:rgb(var(--gray-100)/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(var(--gray-200)/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.border-gray-400{--tw-border-opacity:1;border-color:rgb(var(--gray-400)/var(--tw-border-opacity,1))}.border-gray-900{--tw-border-opacity:1;border-color:rgb(var(--gray-900)/var(--tw-border-opacity,1))}.bg-current{background-color:currentColor}.bg-error-100{--tw-bg-opacity:1;background-color:rgb(var(--error-100)/var(--tw-bg-opacity,1))}.bg-error-500{--tw-bg-opacity:1;background-color:rgb(var(--error-500)/var(--tw-bg-opacity,1))}.bg-gray-0{--tw-bg-opacity:1;background-color:rgb(var(--gray-0)/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(var(--gray-100)/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(var(--gray-200)/var(--tw-bg-opacity,1))}.bg-gray-300{--tw-bg-opacity:1;background-color:rgb(var(--gray-300)/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(var(--gray-50)/var(--tw-bg-opacity,1))}.bg-gray-900{--tw-bg-opacity:1;background-color:rgb(var(--gray-900)/var(--tw-bg-opacity,1))}.bg-gray-900\/40{background-color:rgb(var(--gray-900)/.4)}.bg-info-100{--tw-bg-opacity:1;background-color:rgb(var(--info-100)/var(--tw-bg-opacity,1))}.bg-success-100{--tw-bg-opacity:1;background-color:rgb(var(--success-100)/var(--tw-bg-opacity,1))}.bg-success-500{--tw-bg-opacity:1;background-color:rgb(var(--success-500)/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-warning-100{--tw-bg-opacity:1;background-color:rgb(var(--warning-100)/var(--tw-bg-opacity,1))}.fill-current{fill:currentColor}.fill-gray-0{fill:rgb(var(--gray-0)/1)}.fill-gray-100{fill:rgb(var(--gray-100)/1)}.fill-gray-350{fill:rgb(var(--gray-350)/1)}.fill-gray-900{fill:rgb(var(--gray-900)/1)}.object-cover{-o-object-fit:cover;object-fit:cover}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[3px\]{padding:3px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem}.pb-2,.py-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:1.625rem}.text-2xs{font-size:.6875rem}.text-3xl{font-size:1.875rem}.text-4xl{font-size:2.125rem}.text-5xl{font-size:2.5rem}.text-6xl{font-size:2.75rem}.text-7xl{font-size:3.5rem}.text-\[1\.375rem\]{font-size:1.375rem}.text-\[15px\]{font-size:15px}.text-\[17px\]{font-size:17px}.text-\[3\.5rem\]{font-size:3.5rem}.text-base{font-size:1.0625rem}.text-lg{font-size:1.1875rem}.text-sm{font-size:.9375rem}.text-xl{font-size:1.3125rem}.text-xs{font-size:.8125rem}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.leading-\[1\.2\]{line-height:1.2}.leading-compact{line-height:1.3}.leading-narrow{line-height:1.2}.leading-none{line-height:1}.tracking-\[-0\.01em\]{letter-spacing:-.01em}.tracking-\[-0\.02em\]{letter-spacing:-.02em}.tracking-normal{letter-spacing:0}.text-error-600{--tw-text-opacity:1;color:rgb(var(--error-600)/var(--tw-text-opacity,1))}.text-error-700{--tw-text-opacity:1;color:rgb(var(--error-700)/var(--tw-text-opacity,1))}.text-gray-0{--tw-text-opacity:1;color:rgb(var(--gray-0)/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(var(--gray-300)/var(--tw-text-opacity,1))}.text-gray-350{--tw-text-opacity:1;color:rgb(var(--gray-350)/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(var(--gray-400)/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(var(--gray-900)/var(--tw-text-opacity,1))}.text-info-700{--tw-text-opacity:1;color:rgb(var(--info-700)/var(--tw-text-opacity,1))}.text-success-600{--tw-text-opacity:1;color:rgb(var(--success-600)/var(--tw-text-opacity,1))}.text-success-700{--tw-text-opacity:1;color:rgb(var(--success-700)/var(--tw-text-opacity,1))}.text-warning-700{--tw-text-opacity:1;color:rgb(var(--warning-700)/var(--tw-text-opacity,1))}.opacity-20{opacity:.2}.opacity-40{opacity:.4}.shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.file\:hidden::file-selector-button{display:none}.placeholder\:text-gray-500::-moz-placeholder{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.placeholder\:text-gray-500::placeholder{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.placeholder\:text-transparent::-moz-placeholder{color:transparent}.placeholder\:text-transparent::placeholder{color:transparent}.invalid\:border-error-600:invalid{--tw-border-opacity:1;border-color:rgb(var(--error-600)/var(--tw-border-opacity,1))}.invalid\:bg-gray-0:invalid{--tw-bg-opacity:1;background-color:rgb(var(--gray-0)/var(--tw-bg-opacity,1))}.hover\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:rgb(var(--gray-200)/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(var(--gray-50)/var(--tw-bg-opacity,1))}.hover\:bg-gray-700:hover{--tw-bg-opacity:1;background-color:rgb(var(--gray-700)/var(--tw-bg-opacity,1))}.hover\:text-gray-500:hover{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.focus\:border-error-600:focus{--tw-border-opacity:1;border-color:rgb(var(--error-600)/var(--tw-border-opacity,1))}.focus\:border-gray-300:focus{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.focus\:bg-gray-0:focus{--tw-bg-opacity:1;background-color:rgb(var(--gray-0)/var(--tw-bg-opacity,1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.invalid\:focus\:border-error-600:focus:invalid{--tw-border-opacity:1;border-color:rgb(var(--error-600)/var(--tw-border-opacity,1))}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.active\:bg-gray-200:active{--tw-bg-opacity:1;background-color:rgb(var(--gray-200)/var(--tw-bg-opacity,1))}.active\:bg-gray-50:active{--tw-bg-opacity:1;background-color:rgb(var(--gray-50)/var(--tw-bg-opacity,1))}.active\:bg-gray-700:active{--tw-bg-opacity:1;background-color:rgb(var(--gray-700)/var(--tw-bg-opacity,1))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:border-gray-100:disabled{--tw-border-opacity:1;border-color:rgb(var(--gray-100)/var(--tw-border-opacity,1))}.disabled\:bg-gray-100:disabled{--tw-bg-opacity:1;background-color:rgb(var(--gray-100)/var(--tw-bg-opacity,1))}.disabled\:bg-gray-50:disabled{--tw-bg-opacity:1;background-color:rgb(var(--gray-50)/var(--tw-bg-opacity,1))}.disabled\:text-gray-300:disabled{--tw-text-opacity:1;color:rgb(var(--gray-300)/var(--tw-text-opacity,1))}.disabled\:text-gray-400:disabled{--tw-text-opacity:1;color:rgb(var(--gray-400)/var(--tw-text-opacity,1))}.disabled\:opacity-20:disabled{opacity:.2}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-90:disabled{opacity:.9}.disabled\:active\:bg-transparent:active:disabled{background-color:transparent}.group:last-child .group-last\:hidden{display:none}.group:active .group-active\:bg-gray-50{--tw-bg-opacity:1;background-color:rgb(var(--gray-50)/var(--tw-bg-opacity,1))}.peer:-moz-placeholder-shown~.peer-placeholder-shown\:translate-y-0{--tw-translate-y:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:placeholder-shown~.peer-placeholder-shown\:translate-y-0{--tw-translate-y:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:-moz-placeholder-shown~.peer-placeholder-shown\:text-sm{font-size:.9375rem}.peer:placeholder-shown~.peer-placeholder-shown\:text-sm{font-size:.9375rem}.peer:focus~.peer-focus\:-translate-y-\[0\.6rem\]{--tw-translate-y:-0.6rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:focus~.peer-focus\:border-gray-300{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.peer:focus~.peer-focus\:bg-gray-0{--tw-bg-opacity:1;background-color:rgb(var(--gray-0)/var(--tw-bg-opacity,1))}.peer:focus~.peer-focus\:text-xs{font-size:.8125rem}.has-\[\:disabled\]\:opacity-50:has(:disabled){opacity:.5}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked],.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x:var(--radix-toast-swipe-end-x)}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end],.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x:var(--radix-toast-swipe-move-x)}.data-\[state\=checked\]\:border-gray-900[data-state=checked]{--tw-border-opacity:1;border-color:rgb(var(--gray-900)/var(--tw-border-opacity,1))}.data-\[state\=closed\]\:border-gray-100[data-state=closed]{--tw-border-opacity:1;border-color:rgb(var(--gray-100)/var(--tw-border-opacity,1))}.data-\[state\=unchecked\]\:border-gray-200[data-state=unchecked]{--tw-border-opacity:1;border-color:rgb(var(--gray-200)/var(--tw-border-opacity,1))}.data-\[state\=unchecked\]\:border-gray-300[data-state=unchecked]{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.data-\[state\=checked\]\:bg-gray-900[data-state=checked]{--tw-bg-opacity:1;background-color:rgb(var(--gray-900)/var(--tw-bg-opacity,1))}.data-\[state\=closed\]\:bg-gray-100[data-state=closed],.data-\[state\=on\]\:bg-gray-100[data-state=on]{--tw-bg-opacity:1;background-color:rgb(var(--gray-100)/var(--tw-bg-opacity,1))}.data-\[state\=unchecked\]\:bg-gray-300[data-state=unchecked]{--tw-bg-opacity:1;background-color:rgb(var(--gray-300)/var(--tw-bg-opacity,1))}.data-\[state\=unchecked\]\:bg-transparent[data-state=unchecked]{background-color:transparent}.data-\[placeholder\]\:text-gray-500[data-placeholder]{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.data-\[state\=on\]\:text-gray-900[data-state=on]{--tw-text-opacity:1;color:rgb(var(--gray-900)/var(--tw-text-opacity,1))}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial}.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial}.data-\[state\=closed\]\:fade-out-50[data-state=closed]{--tw-exit-opacity:0.5}.data-\[state\=closed\]\:slide-out-to-top-full[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y:-100%}.group[data-state=on] .group-data-\[state\=on\]\:block{display:block}.group[data-state=on] .group-data-\[state\=on\]\:hidden{display:none}@media (min-width:768px){.md\:grid-cols-\[1fr_2fr\]{grid-template-columns:1fr 2fr}}.\[\&\:has\(\>\*\:nth-child\(2\)\)\]\:grid-cols-2:has(>:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}.\[\&\>\*\]\:col-span-1>*{grid-column:span 1/span 1}.\[\&\>span\:first-of-type\]\:line-clamp-1>span:first-of-type{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}