gemini-uis 0.4.0 → 0.5.1

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/dist/index.d.ts CHANGED
@@ -321,6 +321,52 @@ export declare type DrawerRef = HTMLDivElement;
321
321
  */
322
322
  export declare type DrawerSize = 'sm' | 'md' | 'lg' | 'full';
323
323
 
324
+ export declare const EmptyState: ForwardRefExoticComponent<EmptyStateProps & RefAttributes<HTMLDivElement>>;
325
+
326
+ /**
327
+ * 空状态组件的图标类型
328
+ */
329
+ export declare type EmptyStateIconType = 'search' | 'folder' | 'document' | 'users' | 'settings' | 'warning' | 'info' | 'success' | 'error';
330
+
331
+ /**
332
+ * 空状态组件的属性接口
333
+ */
334
+ export declare interface EmptyStateProps {
335
+ /** 图标类型 */
336
+ icon?: EmptyStateIconType | ReactNode;
337
+ /** 标题 */
338
+ title?: string;
339
+ /** 描述文本 */
340
+ description?: string;
341
+ /** 操作按钮 */
342
+ action?: ReactNode;
343
+ /** 尺寸 */
344
+ size?: EmptyStateSize;
345
+ /** 变体 */
346
+ variant?: EmptyStateVariant;
347
+ /** 自定义类名 */
348
+ className?: string;
349
+ /** 是否显示图标 */
350
+ showIcon?: boolean;
351
+ /** 自定义样式 */
352
+ style?: React.CSSProperties;
353
+ }
354
+
355
+ /**
356
+ * 空状态组件的引用类型
357
+ */
358
+ export declare type EmptyStateRef = HTMLDivElement;
359
+
360
+ /**
361
+ * 空状态组件的尺寸类型
362
+ */
363
+ export declare type EmptyStateSize = 'sm' | 'md' | 'lg';
364
+
365
+ /**
366
+ * 空状态组件的变体类型
367
+ */
368
+ export declare type EmptyStateVariant = 'default' | 'minimal' | 'card';
369
+
324
370
  export declare interface IconProps extends SVGProps<SVGSVGElement> {
325
371
  size?: number | string;
326
372
  className?: string;
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { cloneElement, forwardRef, isValidElement, startTransition, useCallback, useEffect, useMemo, useState } from "react";
2
2
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
3
3
  const getVariantStyles = (e) => {
4
- let v = {
4
+ let b = {
5
5
  primary: "bg-blue-600 text-white hover:bg-blue-700 focus:ring-blue-500",
6
6
  default: "bg-white text-gray-700 hover:bg-gray-50 focus:ring-gray-500 border border-gray-300",
7
7
  secondary: "bg-gray-100 text-gray-900 hover:bg-gray-200 focus:ring-gray-500 border border-gray-300",
@@ -10,36 +10,36 @@ const getVariantStyles = (e) => {
10
10
  text: "bg-transparent text-gray-700 focus:ring-gray-500",
11
11
  danger: "bg-red-600 text-white hover:bg-red-700 focus:ring-red-500"
12
12
  };
13
- return v[e] || v.primary;
13
+ return b[e] || b.primary;
14
14
  }, getSizeStyles = (e) => {
15
- let v = {
15
+ let b = {
16
16
  xs: "px-2 py-1 text-xs min-h-[1.5rem]",
17
17
  sm: "px-3 py-1.5 text-sm min-h-[2rem]",
18
18
  md: "px-4 py-2 text-sm min-h-[2.5rem]",
19
19
  lg: "px-6 py-3 text-base min-h-[3rem]",
20
20
  xl: "px-8 py-4 text-lg min-h-[3.5rem]"
21
21
  };
22
- return v[e] || v.md;
23
- }, getRoundedStyles$2 = (e) => e ? "rounded-lg" : "rounded-none", getButtonStyles = (e = "primary", v = "md", y = !1, b = !1, x = !1, S) => [
22
+ return b[e] || b.md;
23
+ }, getRoundedStyles$2 = (e) => e ? "rounded-lg" : "rounded-none", getButtonStyles = (e = "primary", b = "md", x = !1, S = !1, C = !1, w) => [
24
24
  "inline-flex items-center justify-center font-medium text-center transition-all duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-offset-2 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed",
25
25
  getVariantStyles(e),
26
- getSizeStyles(v),
27
- getRoundedStyles$2(y),
28
- b ? "opacity-50 cursor-not-allowed" : "",
29
- x ? "cursor-wait" : "",
30
- S
26
+ getSizeStyles(b),
27
+ getRoundedStyles$2(x),
28
+ S ? "opacity-50 cursor-not-allowed" : "",
29
+ C ? "cursor-wait" : "",
30
+ w
31
31
  ].filter(Boolean).join(" ").replace(/\s+/g, " ").trim();
32
32
  function cn(...e) {
33
33
  return e.filter(Boolean).join(" ");
34
34
  }
35
- var cn_default = cn, LoadingIcon_default = ({ size: e = 16, className: v = "animate-spin", ...y }) => /* @__PURE__ */ jsxs("svg", {
35
+ var cn_default = cn, LoadingIcon_default = ({ size: e = 16, className: b = "animate-spin", ...x }) => /* @__PURE__ */ jsxs("svg", {
36
36
  width: e,
37
37
  height: e,
38
38
  xmlns: "http://www.w3.org/2000/svg",
39
39
  fill: "none",
40
40
  viewBox: "0 0 24 24",
41
- className: v,
42
- ...y,
41
+ className: b,
42
+ ...x,
43
43
  children: [/* @__PURE__ */ jsx("circle", {
44
44
  className: "opacity-25",
45
45
  cx: "12",
@@ -52,39 +52,39 @@ var cn_default = cn, LoadingIcon_default = ({ size: e = 16, className: v = "anim
52
52
  fill: "currentColor",
53
53
  d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"
54
54
  })]
55
- }), CloseIcon_default = ({ className: e = "w-6 h-6", size: v, strokeWidth: y = 2 }) => /* @__PURE__ */ jsx("svg", {
55
+ }), CloseIcon_default = ({ className: e = "w-6 h-6", size: b, strokeWidth: x = 2 }) => /* @__PURE__ */ jsx("svg", {
56
56
  className: e,
57
- width: v,
58
- height: v,
57
+ width: b,
58
+ height: b,
59
59
  fill: "none",
60
60
  stroke: "currentColor",
61
61
  viewBox: "0 0 24 24",
62
62
  children: /* @__PURE__ */ jsx("path", {
63
63
  strokeLinecap: "round",
64
64
  strokeLinejoin: "round",
65
- strokeWidth: y,
65
+ strokeWidth: x,
66
66
  d: "M6 18L18 6M6 6l12 12"
67
67
  })
68
- }), Button_default = forwardRef(({ type: e = "primary", size: v = "md", rounded: y = !1, disabled: b = !1, loading: x = !1, className: S, children: C, htmlType: w = "button", onClick: T, ...D }, O) => {
69
- let k = b || x;
68
+ }), Button_default = forwardRef(({ type: e = "primary", size: b = "md", rounded: x = !1, disabled: S = !1, loading: C = !1, className: w, children: T, htmlType: E = "button", onClick: D, ...k }, A) => {
69
+ let j = S || C;
70
70
  return /* @__PURE__ */ jsxs("button", {
71
- ref: O,
72
- type: w,
73
- disabled: k,
71
+ ref: A,
72
+ type: E,
73
+ disabled: j,
74
74
  onClick: (e) => {
75
- if (k) {
75
+ if (j) {
76
76
  e.preventDefault();
77
77
  return;
78
78
  }
79
- T?.(e);
79
+ D?.(e);
80
80
  },
81
- className: cn_default(getButtonStyles(e, v, y, k, x, S)),
82
- ...D,
83
- children: [x && /* @__PURE__ */ jsx(LoadingIcon_default, { className: "animate-spin w-4 h-4 mr-2" }), C]
81
+ className: cn_default(getButtonStyles(e, b, x, j, C, w)),
82
+ ...k,
83
+ children: [C && /* @__PURE__ */ jsx(LoadingIcon_default, { className: "animate-spin w-4 h-4 mr-2" }), T]
84
84
  });
85
85
  });
86
86
  const getShadowStyles = (e) => {
87
- let v = {
87
+ let b = {
88
88
  none: "",
89
89
  sm: "shadow-sm",
90
90
  md: "shadow-md",
@@ -92,9 +92,9 @@ const getShadowStyles = (e) => {
92
92
  xl: "shadow-xl",
93
93
  "2xl": "shadow-2xl"
94
94
  };
95
- return v[e] || v.none;
95
+ return b[e] || b.none;
96
96
  }, getBorderStyles = (e) => {
97
- let v = {
97
+ let b = {
98
98
  none: "",
99
99
  sm: "border border-gray-200",
100
100
  md: "border-2 border-gray-200",
@@ -102,40 +102,40 @@ const getShadowStyles = (e) => {
102
102
  xl: "border-8 border-gray-200",
103
103
  "2xl": "border-16 border-gray-200"
104
104
  };
105
- return v[e] || v.none;
106
- }, getRoundedStyles$1 = (e) => e ? "rounded-lg" : "rounded-none", getHoverStyles = (e = !1) => e ? "" : "hover:shadow-xl hover:scale-101 hover:-translate-y-1 hover:translate-x-1 origin-bottom-left", getCardStyles = (e = "none", v = "none", y = !1, b = !1, x) => {
107
- let S = getShadowStyles(e), C = getBorderStyles(v), w = getRoundedStyles$1(y), T = getHoverStyles(b);
105
+ return b[e] || b.none;
106
+ }, getRoundedStyles$1 = (e) => e ? "rounded-lg" : "rounded-none", getHoverStyles = (e = !1) => e ? "" : "hover:shadow-xl hover:scale-101 hover:-translate-y-1 hover:translate-x-1 origin-bottom-left", getCardStyles = (e = "none", b = "none", x = !1, S = !1, C) => {
107
+ let w = getShadowStyles(e), T = getBorderStyles(b), E = getRoundedStyles$1(x), D = getHoverStyles(S);
108
108
  return [
109
109
  "block p-4 bg-white transition-all duration-300 ease-in-out cursor-pointer",
110
- x && /\bw-\w+/.test(x) ? "" : "w-full",
111
- S,
112
- C,
110
+ C && /\bw-\w+/.test(C) ? "" : "w-full",
113
111
  w,
114
112
  T,
115
- x
113
+ E,
114
+ D,
115
+ C
116
116
  ].filter(Boolean).join(" ").replace(/\s+/g, " ").trim();
117
117
  };
118
- var Card_default = forwardRef(({ shadow: e = "md", border: v = "sm", rounded: y = !1, disabledHover: b = !1, className: x, children: S, ...C }, w) => /* @__PURE__ */ jsx("div", {
119
- ref: w,
120
- className: cn_default(getCardStyles(e, v, y, b, x)),
121
- ...C,
122
- children: S
118
+ var Card_default = forwardRef(({ shadow: e = "md", border: b = "sm", rounded: x = !1, disabledHover: S = !1, className: C, children: w, ...T }, E) => /* @__PURE__ */ jsx("div", {
119
+ ref: E,
120
+ className: cn_default(getCardStyles(e, b, x, S, C)),
121
+ ...T,
122
+ children: w
123
123
  }));
124
124
  const getCollapseSizeStyles = (e) => {
125
- let v = {
125
+ let b = {
126
126
  sm: "text-sm",
127
127
  md: "text-base",
128
128
  lg: "text-lg"
129
129
  };
130
- return v[e] || v.md;
131
- }, getCollapseVariantStyles = (e, v, y) => y ? "bg-transparent" : v || e === "bordered" ? "border border-gray-200 rounded-lg overflow-hidden" : "bg-white rounded-lg", getCollapseStyles = (e = "md", v = "default", y = !1, b = !1, x) => [
130
+ return b[e] || b.md;
131
+ }, getCollapseVariantStyles = (e, b, x) => x ? "bg-transparent" : b || e === "bordered" ? "border border-gray-200 rounded-lg overflow-hidden" : "bg-white rounded-lg", getCollapseStyles = (e = "md", b = "default", x = !1, S = !1, C) => [
132
132
  "w-full",
133
133
  getCollapseSizeStyles(e),
134
- getCollapseVariantStyles(v, y, b),
135
- x
134
+ getCollapseVariantStyles(b, x, S),
135
+ C
136
136
  ].filter(Boolean).join(" ").replace(/\s+/g, " ").trim();
137
- var DefaultArrowIcon = ({ isActive: e, disabled: v }) => /* @__PURE__ */ jsx("svg", {
138
- className: cn_default("shrink-0 size-4 transition-transform duration-200 ease-in-out", e ? "rotate-180" : "rotate-0", v ? "opacity-50" : ""),
137
+ var DefaultArrowIcon = ({ isActive: e, disabled: b }) => /* @__PURE__ */ jsx("svg", {
138
+ className: cn_default("shrink-0 size-4 transition-transform duration-200 ease-in-out", e ? "rotate-180" : "rotate-0", b ? "opacity-50" : ""),
139
139
  fill: "none",
140
140
  stroke: "currentColor",
141
141
  viewBox: "0 0 24 24",
@@ -146,81 +146,81 @@ var DefaultArrowIcon = ({ isActive: e, disabled: v }) => /* @__PURE__ */ jsx("sv
146
146
  strokeWidth: 2,
147
147
  d: "M19 9l-7 7-7-7"
148
148
  })
149
- }), CollapseCore = forwardRef(({ activeKey: v, defaultActiveKey: b, collapsible: S = "header", accordion: T = !1, bordered: E = !1, ghost: D = !1, size: O = "md", variant: k = "default", className: A, children: j, onChange: M, onExpand: N, onCollapse: P, ...F }, I) => {
150
- let [L, R] = useState(() => {
151
- let e = v || b;
149
+ }), CollapseCore = forwardRef(({ activeKey: b, defaultActiveKey: S, collapsible: w = "header", accordion: D = !1, bordered: O = !1, ghost: k = !1, size: A = "md", variant: j = "default", className: M, children: N, onChange: F, onExpand: I, onCollapse: L, ...R }, z) => {
150
+ let [B, V] = useState(() => {
151
+ let e = b || S;
152
152
  return Array.isArray(e) ? e : e ? [e] : [];
153
- }), z = useMemo(() => v === void 0 ? L : Array.isArray(v) ? v : [v], [v, L]), B = useCallback((e) => {
154
- if (S === "disabled") return;
155
- let y;
156
- y = T ? z.includes(e) ? [] : [e] : z.includes(e) ? z.filter((v) => v !== e) : [...z, e], v === void 0 && R(y), M?.(T ? y[0] || "" : y), y.includes(e) ? N?.(e) : P?.(e);
153
+ }), H = useMemo(() => b === void 0 ? B : Array.isArray(b) ? b : [b], [b, B]), U = useCallback((e) => {
154
+ if (w === "disabled") return;
155
+ let x;
156
+ x = D ? H.includes(e) ? [] : [e] : H.includes(e) ? H.filter((b) => b !== e) : [...H, e], b === void 0 && V(x), F?.(D ? x[0] || "" : x), x.includes(e) ? I?.(e) : L?.(e);
157
157
  }, [
158
- v,
159
- z,
160
- T,
161
- S,
162
- M,
163
- N,
164
- P
165
- ]), V = getCollapseStyles(O, k, E, D, A), H = useMemo(() => j ? Array.isArray(j) ? j.map((v, b) => {
166
- if (!isValidElement(v)) return v;
167
- let { ...x } = v.props, C = v.key || String(b), w = z.includes(C);
168
- return cloneElement(v, {
169
- ...x,
170
- isActive: w,
171
- onToggle: () => B(C),
172
- collapsible: S
158
+ b,
159
+ H,
160
+ D,
161
+ w,
162
+ F,
163
+ I,
164
+ L
165
+ ]), W = getCollapseStyles(A, j, O, k, M), G = useMemo(() => N ? Array.isArray(N) ? N.map((b, S) => {
166
+ if (!isValidElement(b)) return b;
167
+ let { ...C } = b.props, T = b.key || String(S), E = H.includes(T);
168
+ return cloneElement(b, {
169
+ ...C,
170
+ isActive: E,
171
+ onToggle: () => U(T),
172
+ collapsible: w
173
173
  });
174
- }) : isValidElement(j) ? cloneElement(j, {
175
- ...j.props,
176
- isActive: z.includes(j.key || "filter"),
177
- onToggle: () => B(j.key || "filter"),
178
- collapsible: S
179
- }) : j : null, [
180
- j,
181
- z,
182
- B,
183
- S
174
+ }) : isValidElement(N) ? cloneElement(N, {
175
+ ...N.props,
176
+ isActive: H.includes(N.key || "filter"),
177
+ onToggle: () => U(N.key || "filter"),
178
+ collapsible: w
179
+ }) : N : null, [
180
+ N,
181
+ H,
182
+ U,
183
+ w
184
184
  ]);
185
185
  return /* @__PURE__ */ jsx("div", {
186
- ref: I,
187
- className: cn_default(V),
188
- ...F,
189
- children: H
186
+ ref: z,
187
+ className: cn_default(W),
188
+ ...R,
189
+ children: G
190
190
  });
191
- }), CollapsePanel = forwardRef(({ key: e, header: v, children: y, disabled: b = !1, showArrow: x = !0, arrow: S, className: C, headerContainerClassName: w, headerContentClassName: T, contentClassName: D, onHeaderClick: O, isActive: k = !1, onToggle: A, collapsible: j = "header", ...M }, N) => {
192
- let P = () => {
193
- b || j === "disabled" || (O?.(e), A?.());
194
- }, F = (e) => {
195
- j !== "header" && (e.stopPropagation(), b || A?.());
196
- }, I = () => x ? S ? /* @__PURE__ */ jsx("span", {
197
- className: cn_default("shrink-0 transition-transform duration-200 ease-in-out", k ? "rotate-180" : "rotate-0", b ? "opacity-50" : "", j === "icon" ? "cursor-pointer" : ""),
198
- onClick: F,
199
- children: S
191
+ }), CollapsePanel = forwardRef(({ key: e, header: b, children: x, disabled: S = !1, showArrow: C = !0, arrow: w, className: T, headerContainerClassName: E, headerContentClassName: D, contentClassName: k, onHeaderClick: A, isActive: j = !1, onToggle: M, collapsible: N = "header", ...F }, I) => {
192
+ let L = () => {
193
+ S || N === "disabled" || (A?.(e), M?.());
194
+ }, R = (e) => {
195
+ N !== "header" && (e.stopPropagation(), S || M?.());
196
+ }, z = () => C ? w ? /* @__PURE__ */ jsx("span", {
197
+ className: cn_default("shrink-0 transition-transform duration-200 ease-in-out", j ? "rotate-180" : "rotate-0", S ? "opacity-50" : "", N === "icon" ? "cursor-pointer" : ""),
198
+ onClick: R,
199
+ children: w
200
200
  }) : /* @__PURE__ */ jsx(DefaultArrowIcon, {
201
- isActive: k,
202
- disabled: b
201
+ isActive: j,
202
+ disabled: S
203
203
  }) : null;
204
204
  return /* @__PURE__ */ jsxs("div", {
205
- ref: N,
206
- className: cn_default("border-b border-gray-200 last:border-b-0", C),
207
- ...M,
205
+ ref: I,
206
+ className: cn_default("border-b border-gray-200 last:border-b-0", T),
207
+ ...F,
208
208
  children: [/* @__PURE__ */ jsxs("div", {
209
- className: cn_default("flex items-center justify-between w-full text-left font-medium transition-colors duration-200", "px-4 py-3", b ? "opacity-50 cursor-not-allowed" : "cursor-pointer hover:bg-gray-50", "focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-inset", w),
210
- onClick: P,
211
- tabIndex: b ? -1 : 0,
209
+ className: cn_default("flex items-center justify-between w-full text-left font-medium transition-colors duration-200", "px-4 py-3", S ? "opacity-50 cursor-not-allowed" : "cursor-pointer hover:bg-gray-50", "focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-inset", E),
210
+ onClick: L,
211
+ tabIndex: S ? -1 : 0,
212
212
  role: "button",
213
- "aria-expanded": k,
214
- "aria-disabled": b,
213
+ "aria-expanded": j,
214
+ "aria-disabled": S,
215
215
  children: [/* @__PURE__ */ jsx("div", {
216
- className: cn_default("flex-1 pr-2", T),
217
- children: v
218
- }), I()]
216
+ className: cn_default("flex-1 pr-2", D),
217
+ children: b
218
+ }), z()]
219
219
  }), /* @__PURE__ */ jsx("div", {
220
- className: cn_default("overflow-hidden transition-all duration-300 ease-in-out", k ? "max-h-none opacity-100" : "max-h-0 opacity-0"),
220
+ className: cn_default("overflow-hidden transition-all duration-300 ease-in-out", j ? "max-h-none opacity-100" : "max-h-0 opacity-0"),
221
221
  children: /* @__PURE__ */ jsx("div", {
222
- className: cn_default("px-4 pb-4 text-gray-700", D),
223
- children: y
222
+ className: cn_default("px-4 pb-4 text-gray-700", k),
223
+ children: x
224
224
  })
225
225
  })]
226
226
  });
@@ -230,144 +230,144 @@ var Collapse_default = Object.assign(CollapseCore, { Panel: CollapsePanel });
230
230
  const getOrientationStyles = (e) => ({
231
231
  horizontal: "w-full h-0",
232
232
  vertical: "h-full w-0"
233
- })[e], getThicknessStyles = (e, v) => ({
234
- thin: v === "horizontal" ? "h-px" : "w-px",
235
- medium: v === "horizontal" ? "h-0.5" : "w-0.5",
236
- thick: v === "horizontal" ? "h-1" : "w-1",
237
- "extra-thick": v === "horizontal" ? "h-1.5" : "w-1.5"
238
- })[e], getRoundedStyles = (e) => e ? "rounded-full" : "rounded-none", getColorStyles = (e) => e ? `bg-[${e}]` : "bg-gray-200", getDashedStyles = (e) => e ? "border-dashed" : "border-solid", getLengthStyles = (e, v = "horizontal") => e && v === "horizontal" ? `w-[${e}%]` : "", getDividerStyles = (e = "horizontal", v = "medium", y = !1, b, x = !1, S, C) => C ? ["block", C].filter(Boolean).join(" ").trim() : [
233
+ })[e], getThicknessStyles = (e, b) => ({
234
+ thin: b === "horizontal" ? "h-px" : "w-px",
235
+ medium: b === "horizontal" ? "h-0.5" : "w-0.5",
236
+ thick: b === "horizontal" ? "h-1" : "w-1",
237
+ "extra-thick": b === "horizontal" ? "h-1.5" : "w-1.5"
238
+ })[e], getRoundedStyles = (e) => e ? "rounded-full" : "rounded-none", getColorStyles = (e) => e ? `bg-[${e}]` : "bg-gray-200", getDashedStyles = (e) => e ? "border-dashed" : "border-solid", getLengthStyles = (e, b = "horizontal") => e && b === "horizontal" ? `w-[${e}%]` : "", getDividerStyles = (e = "horizontal", b = "medium", x = !1, S, C = !1, w, T) => T ? ["block", T].filter(Boolean).join(" ").trim() : [
239
239
  e === "vertical" ? "bg-gray-200" : "border-0",
240
240
  getOrientationStyles(e),
241
- getThicknessStyles(v, e),
242
- getRoundedStyles(y),
243
- getColorStyles(b),
244
- getDashedStyles(x),
245
- getLengthStyles(S, e)
241
+ getThicknessStyles(b, e),
242
+ getRoundedStyles(x),
243
+ getColorStyles(S),
244
+ getDashedStyles(C),
245
+ getLengthStyles(w, e)
246
246
  ].filter(Boolean).join(" ").replace(/\s+/g, " ").trim();
247
- var Divider_default = forwardRef(({ orientation: e = "horizontal", thickness: v = "medium", rounded: y = !1, color: b, dashed: x = !1, length: S, className: C, ...w }, T) => /* @__PURE__ */ jsx("div", {
248
- ref: T,
249
- className: cn_default(getDividerStyles(e, v, y ?? !1, b, x, S, C), C),
250
- ...w
247
+ var Divider_default = forwardRef(({ orientation: e = "horizontal", thickness: b = "medium", rounded: x = !1, color: S, dashed: C = !1, length: w, className: T, ...E }, D) => /* @__PURE__ */ jsx("div", {
248
+ ref: D,
249
+ className: cn_default(getDividerStyles(e, b, x ?? !1, S, C, w, T), T),
250
+ ...E
251
251
  }));
252
252
  const getDrawerPlacementStyles = (e) => {
253
- let v = {
253
+ let b = {
254
254
  top: "top-0 left-0 right-0",
255
255
  right: "top-0 right-0 bottom-0",
256
256
  bottom: "bottom-0 left-0 right-0",
257
257
  left: "top-0 left-0 bottom-0"
258
258
  };
259
- return v[e] || v.right;
260
- }, getDrawerSizeStyles = (e, v) => {
261
- let y = v === "left" || v === "right";
259
+ return b[e] || b.right;
260
+ }, getDrawerSizeStyles = (e, b) => {
261
+ let x = b === "left" || b === "right";
262
262
  if (e === "full") return "w-screen h-screen";
263
- let b = {
264
- sm: y ? "w-64" : "h-64",
265
- md: y ? "w-96" : "h-96",
266
- lg: y ? "w-[46rem]" : "h-[46rem]"
263
+ let S = {
264
+ sm: x ? "w-64" : "h-64",
265
+ md: x ? "w-96" : "h-96",
266
+ lg: x ? "w-[46rem]" : "h-[46rem]"
267
267
  };
268
- return b[e] || b.md;
269
- }, getDrawerTransformStyles = (e, v) => {
270
- if (v) return "translate-x-0 translate-y-0";
271
- let y = {
268
+ return S[e] || S.md;
269
+ }, getDrawerTransformStyles = (e, b) => {
270
+ if (b) return "translate-x-0 translate-y-0";
271
+ let x = {
272
272
  top: "-translate-y-full",
273
273
  right: "translate-x-full",
274
274
  bottom: "translate-y-full",
275
275
  left: "-translate-x-full"
276
276
  };
277
- return y[e] || y.right;
278
- }, getDrawerStyles = (e, v, y, b) => [
277
+ return x[e] || x.right;
278
+ }, getDrawerStyles = (e, b, x, S) => [
279
279
  "fixed bg-white shadow-xl transition-transform duration-300 ease-out z-50 flex flex-col will-change-transform",
280
280
  getDrawerPlacementStyles(e),
281
- getDrawerSizeStyles(v, e),
282
- getDrawerTransformStyles(e, y),
283
- y ? "pointer-events-auto" : "pointer-events-none",
284
- b
285
- ].filter(Boolean).join(" ").replace(/\s+/g, " ").trim(), getMaskStyles = (e, v) => [
281
+ getDrawerSizeStyles(b, e),
282
+ getDrawerTransformStyles(e, x),
283
+ x ? "pointer-events-auto" : "pointer-events-none",
284
+ S
285
+ ].filter(Boolean).join(" ").replace(/\s+/g, " ").trim(), getMaskStyles = (e, b) => [
286
286
  "fixed inset-0 h-screen bg-black/50 transition-opacity duration-300 ease-out z-40",
287
287
  e ? "opacity-100" : "opacity-0",
288
288
  e ? "pointer-events-auto" : "pointer-events-none",
289
- v
289
+ b
290
290
  ].filter(Boolean).join(" ").replace(/\s+/g, " ").trim(), getHeaderStyles = (e) => ["flex items-center justify-between px-6 py-4 border-b border-gray-200 flex-shrink-0", e].filter(Boolean).join(" ").replace(/\s+/g, " ").trim(), getBodyStyles = (e) => ["min-h-0 flex-1 overflow-y-auto", e].filter(Boolean).join(" ").replace(/\s+/g, " ").trim(), getFooterStyles = (e) => ["flex items-center justify-end px-6 py-4 border-t border-gray-200 flex-shrink-0 gap-2", e].filter(Boolean).join(" ").replace(/\s+/g, " ").trim();
291
- var DefaultCloseIcon = () => /* @__PURE__ */ jsx(CloseIcon_default, { className: "w-5 h-5" }), Drawer_default = forwardRef(({ open: e = !1, title: v, placement: y = "right", size: C = "md", mask: D = !0, maskClosable: O = !0, closable: k = !0, closeIcon: A, destroyOnClose: j = !1, className: M, maskClassName: N, bodyClassName: P, headerClassName: F, footerClassName: I, children: L, footer: R, extra: z, onClose: B, afterOpenChange: V, zIndex: H = 1e3, ...U }, W) => {
292
- let [G, K] = useState(e), [q, J] = useState(!1);
291
+ var DefaultCloseIcon = () => /* @__PURE__ */ jsx(CloseIcon_default, { className: "w-5 h-5" }), Drawer_default = forwardRef(({ open: e = !1, title: b, placement: x = "right", size: T = "md", mask: k = !0, maskClosable: A = !0, closable: j = !0, closeIcon: M, destroyOnClose: N = !1, className: F, maskClassName: I, bodyClassName: L, headerClassName: R, footerClassName: z, children: B, footer: V, extra: H, onClose: U, afterOpenChange: W, zIndex: G = 1e3, ...K }, q) => {
292
+ let [J, Y] = useState(e), [X, Z] = useState(!1);
293
293
  useEffect(() => {
294
294
  if (e) startTransition(() => {
295
- K(!0);
295
+ Y(!0);
296
296
  }), requestAnimationFrame(() => {
297
297
  requestAnimationFrame(() => {
298
- J(!0);
298
+ Z(!0);
299
299
  });
300
300
  });
301
301
  else {
302
302
  startTransition(() => {
303
- J(!1);
303
+ Z(!1);
304
304
  });
305
305
  let e = setTimeout(() => {
306
- K(!1);
306
+ Y(!1);
307
307
  }, 300);
308
308
  return () => clearTimeout(e);
309
309
  }
310
310
  }, [e]), useEffect(() => {
311
311
  if (!e) return;
312
- let v = (e) => {
313
- e.key === "Escape" && B && B();
312
+ let b = (e) => {
313
+ e.key === "Escape" && U && U();
314
314
  };
315
- return document.addEventListener("keydown", v), () => document.removeEventListener("keydown", v);
316
- }, [e, B]);
317
- let Y = useCallback(() => {
318
- O && B && B();
319
- }, [O, B]), X = useCallback(() => {
320
- B && B();
321
- }, [B]);
315
+ return document.addEventListener("keydown", b), () => document.removeEventListener("keydown", b);
316
+ }, [e, U]);
317
+ let Q = useCallback(() => {
318
+ A && U && U();
319
+ }, [A, U]), $ = useCallback(() => {
320
+ U && U();
321
+ }, [U]);
322
322
  return useEffect(() => {
323
- V && V(e);
324
- }, [e, V]), useEffect(() => {
323
+ W && W(e);
324
+ }, [e, W]), useEffect(() => {
325
325
  if (!e) return;
326
- let v = window.scrollY || 0, { style: y } = document.body, { style: b } = document.documentElement;
327
- y.position = "fixed", y.top = `-${v}px`, y.left = "0", y.right = "0", y.width = "100%", y.overflow = "hidden", b.overflow = "hidden", b.overscrollBehavior = "none";
328
- let x = (e) => e.preventDefault();
329
- return window.addEventListener("touchmove", x, { passive: !1 }), window.addEventListener("wheel", x, { passive: !1 }), () => {
330
- window.removeEventListener("touchmove", x), window.removeEventListener("wheel", x), y.position = "", y.top = "", y.left = "", y.right = "", y.width = "", y.overflow = "", b.overflow = "", b.overscrollBehavior = "", window.scrollTo(0, v);
326
+ let b = window.scrollY || 0, { style: x } = document.body, { style: S } = document.documentElement;
327
+ x.position = "fixed", x.top = `-${b}px`, x.left = "0", x.right = "0", x.width = "100%", x.overflow = "hidden", S.overflow = "hidden", S.overscrollBehavior = "none";
328
+ let C = (e) => e.preventDefault();
329
+ return window.addEventListener("touchmove", C, { passive: !1 }), window.addEventListener("wheel", C, { passive: !1 }), () => {
330
+ window.removeEventListener("touchmove", C), window.removeEventListener("wheel", C), x.position = "", x.top = "", x.left = "", x.right = "", x.width = "", x.overflow = "", S.overflow = "", S.overscrollBehavior = "", window.scrollTo(0, b);
331
331
  };
332
- }, [e]), !G && j || !G ? null : /* @__PURE__ */ jsxs(Fragment, { children: [D && /* @__PURE__ */ jsx("div", {
333
- className: cn_default(getMaskStyles(q, N)),
334
- style: { zIndex: H - 1 },
335
- onClick: Y,
332
+ }, [e]), !J && N || !J ? null : /* @__PURE__ */ jsxs(Fragment, { children: [k && /* @__PURE__ */ jsx("div", {
333
+ className: cn_default(getMaskStyles(X, I)),
334
+ style: { zIndex: G - 1 },
335
+ onClick: Q,
336
336
  "aria-hidden": "true"
337
337
  }), /* @__PURE__ */ jsxs("div", {
338
- ref: W,
339
- className: cn_default(getDrawerStyles(y, C, q, M)),
338
+ ref: q,
339
+ className: cn_default(getDrawerStyles(x, T, X, F)),
340
340
  style: {
341
- zIndex: H,
342
- height: C === "full" && (y === "left" || y === "right") ? "100vh" : void 0
341
+ zIndex: G,
342
+ height: T === "full" && (x === "left" || x === "right") ? "100vh" : void 0
343
343
  },
344
344
  role: "dialog",
345
345
  "aria-modal": "true",
346
- "aria-labelledby": v ? "drawer-title" : void 0,
347
- ...U,
346
+ "aria-labelledby": b ? "drawer-title" : void 0,
347
+ ...K,
348
348
  children: [
349
- (v || k || z) && /* @__PURE__ */ jsxs("div", {
350
- className: cn_default(getHeaderStyles(F)),
349
+ (b || j || H) && /* @__PURE__ */ jsxs("div", {
350
+ className: cn_default(getHeaderStyles(R)),
351
351
  children: [/* @__PURE__ */ jsxs("div", {
352
352
  className: "flex items-center gap-4 flex-1",
353
- children: [v && /* @__PURE__ */ jsx("h2", {
353
+ children: [b && /* @__PURE__ */ jsx("h2", {
354
354
  id: "drawer-title",
355
355
  className: "text-lg font-semibold text-gray-900 flex-1",
356
- children: v
357
- }), z && /* @__PURE__ */ jsx("div", {
356
+ children: b
357
+ }), H && /* @__PURE__ */ jsx("div", {
358
358
  className: "flex items-center gap-2",
359
- children: z
359
+ children: H
360
360
  })]
361
- }), k && /* @__PURE__ */ jsx("button", {
361
+ }), j && /* @__PURE__ */ jsx("button", {
362
362
  type: "button",
363
- onClick: X,
363
+ onClick: $,
364
364
  className: "p-2 rounded-lg text-gray-500 hover:text-gray-700 hover:bg-gray-100 transition-all duration-200 focus:outline-none focus:ring-2 focus:ring-gray-500 focus:ring-offset-2",
365
365
  "aria-label": "关闭抽屉",
366
- children: A || /* @__PURE__ */ jsx(DefaultCloseIcon, {})
366
+ children: M || /* @__PURE__ */ jsx(DefaultCloseIcon, {})
367
367
  })]
368
368
  }),
369
369
  /* @__PURE__ */ jsx("div", {
370
- className: cn_default(getBodyStyles(P), "min-h-0 flex-1 overflow-y-auto"),
370
+ className: cn_default(getBodyStyles(L), "min-h-0 flex-1 overflow-y-auto"),
371
371
  style: { overscrollBehavior: "contain" },
372
372
  onWheel: (e) => {
373
373
  e.stopPropagation();
@@ -375,13 +375,243 @@ var DefaultCloseIcon = () => /* @__PURE__ */ jsx(CloseIcon_default, { className:
375
375
  onTouchMove: (e) => {
376
376
  e.stopPropagation();
377
377
  },
378
- children: L
378
+ children: B
379
379
  }),
380
- R && /* @__PURE__ */ jsx("div", {
381
- className: cn_default(getFooterStyles(I)),
382
- children: R
380
+ V && /* @__PURE__ */ jsx("div", {
381
+ className: cn_default(getFooterStyles(z)),
382
+ children: V
383
383
  })
384
384
  ]
385
385
  })] });
386
386
  });
387
- export { Button_default as Button, Card_default as Card, CloseIcon_default as CloseIcon, Collapse_default as Collapse, Divider_default as Divider, Drawer_default as Drawer, LoadingIcon_default as LoadingIcon, cn_default as cn };
387
+ function getEmptyStateStyles(e = "md", b = "default", x) {
388
+ return cn_default("flex flex-col items-center justify-center text-center", {
389
+ sm: "py-8 px-4",
390
+ md: "py-12 px-6",
391
+ lg: "py-16 px-8"
392
+ }[e], {
393
+ default: "bg-gray-50 rounded-lg",
394
+ minimal: "bg-transparent",
395
+ card: "bg-white border border-gray-200 rounded-lg shadow-sm"
396
+ }[b], x);
397
+ }
398
+ function getIconContainerStyles(e = "md") {
399
+ return cn_default("flex items-center justify-center text-gray-400", {
400
+ sm: "w-12 h-12 mb-3",
401
+ md: "w-16 h-16 mb-4",
402
+ lg: "w-20 h-20 mb-6"
403
+ }[e]);
404
+ }
405
+ function getTitleStyles(e = "md") {
406
+ return cn_default("text-gray-900 mb-2", {
407
+ sm: "text-lg font-semibold",
408
+ md: "text-xl font-semibold",
409
+ lg: "text-2xl font-semibold"
410
+ }[e]);
411
+ }
412
+ function getDescriptionStyles(e = "md") {
413
+ return cn_default("text-gray-600 mb-4 max-w-md", {
414
+ sm: "text-sm",
415
+ md: "text-base",
416
+ lg: "text-lg"
417
+ }[e]);
418
+ }
419
+ function getActionStyles() {
420
+ return "mt-2";
421
+ }
422
+ function EmptyStateIcon({ type: e, className: b }) {
423
+ let x = {
424
+ search: /* @__PURE__ */ jsxs("svg", {
425
+ viewBox: "0 0 24 24",
426
+ fill: "none",
427
+ stroke: "currentColor",
428
+ strokeWidth: "1.5",
429
+ className: b,
430
+ children: [/* @__PURE__ */ jsx("circle", {
431
+ cx: "11",
432
+ cy: "11",
433
+ r: "8"
434
+ }), /* @__PURE__ */ jsx("path", { d: "m21 21-4.35-4.35" })]
435
+ }),
436
+ folder: /* @__PURE__ */ jsx("svg", {
437
+ viewBox: "0 0 24 24",
438
+ fill: "none",
439
+ stroke: "currentColor",
440
+ strokeWidth: "1.5",
441
+ className: b,
442
+ children: /* @__PURE__ */ jsx("path", { d: "M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z" })
443
+ }),
444
+ document: /* @__PURE__ */ jsxs("svg", {
445
+ viewBox: "0 0 24 24",
446
+ fill: "none",
447
+ stroke: "currentColor",
448
+ strokeWidth: "1.5",
449
+ className: b,
450
+ children: [
451
+ /* @__PURE__ */ jsx("path", { d: "M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z" }),
452
+ /* @__PURE__ */ jsx("polyline", { points: "14,2 14,8 20,8" }),
453
+ /* @__PURE__ */ jsx("line", {
454
+ x1: "16",
455
+ y1: "13",
456
+ x2: "8",
457
+ y2: "13"
458
+ }),
459
+ /* @__PURE__ */ jsx("line", {
460
+ x1: "16",
461
+ y1: "17",
462
+ x2: "8",
463
+ y2: "17"
464
+ }),
465
+ /* @__PURE__ */ jsx("polyline", { points: "10,9 9,9 8,9" })
466
+ ]
467
+ }),
468
+ users: /* @__PURE__ */ jsxs("svg", {
469
+ viewBox: "0 0 24 24",
470
+ fill: "none",
471
+ stroke: "currentColor",
472
+ strokeWidth: "1.5",
473
+ className: b,
474
+ children: [
475
+ /* @__PURE__ */ jsx("path", { d: "M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2" }),
476
+ /* @__PURE__ */ jsx("circle", {
477
+ cx: "9",
478
+ cy: "7",
479
+ r: "4"
480
+ }),
481
+ /* @__PURE__ */ jsx("path", { d: "m22 21-2-2" }),
482
+ /* @__PURE__ */ jsx("path", { d: "m16 16 2 2" })
483
+ ]
484
+ }),
485
+ settings: /* @__PURE__ */ jsxs("svg", {
486
+ viewBox: "0 0 24 24",
487
+ fill: "none",
488
+ stroke: "currentColor",
489
+ strokeWidth: "1.5",
490
+ className: b,
491
+ children: [/* @__PURE__ */ jsx("circle", {
492
+ cx: "12",
493
+ cy: "12",
494
+ r: "3"
495
+ }), /* @__PURE__ */ jsx("path", { d: "M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1 1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z" })]
496
+ }),
497
+ warning: /* @__PURE__ */ jsxs("svg", {
498
+ viewBox: "0 0 24 24",
499
+ fill: "none",
500
+ stroke: "currentColor",
501
+ strokeWidth: "1.5",
502
+ className: b,
503
+ children: [
504
+ /* @__PURE__ */ jsx("path", { d: "m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z" }),
505
+ /* @__PURE__ */ jsx("line", {
506
+ x1: "12",
507
+ y1: "9",
508
+ x2: "12",
509
+ y2: "13"
510
+ }),
511
+ /* @__PURE__ */ jsx("line", {
512
+ x1: "12",
513
+ y1: "17",
514
+ x2: "12.01",
515
+ y2: "17"
516
+ })
517
+ ]
518
+ }),
519
+ info: /* @__PURE__ */ jsxs("svg", {
520
+ viewBox: "0 0 24 24",
521
+ fill: "none",
522
+ stroke: "currentColor",
523
+ strokeWidth: "1.5",
524
+ className: b,
525
+ children: [
526
+ /* @__PURE__ */ jsx("circle", {
527
+ cx: "12",
528
+ cy: "12",
529
+ r: "10"
530
+ }),
531
+ /* @__PURE__ */ jsx("line", {
532
+ x1: "12",
533
+ y1: "16",
534
+ x2: "12",
535
+ y2: "12"
536
+ }),
537
+ /* @__PURE__ */ jsx("line", {
538
+ x1: "12",
539
+ y1: "8",
540
+ x2: "12.01",
541
+ y2: "8"
542
+ })
543
+ ]
544
+ }),
545
+ success: /* @__PURE__ */ jsxs("svg", {
546
+ viewBox: "0 0 24 24",
547
+ fill: "none",
548
+ stroke: "currentColor",
549
+ strokeWidth: "1.5",
550
+ className: b,
551
+ children: [/* @__PURE__ */ jsx("path", { d: "M22 11.08V12a10 10 0 1 1-5.93-9.14" }), /* @__PURE__ */ jsx("polyline", { points: "22,4 12,14.01 9,11.01" })]
552
+ }),
553
+ error: /* @__PURE__ */ jsxs("svg", {
554
+ viewBox: "0 0 24 24",
555
+ fill: "none",
556
+ stroke: "currentColor",
557
+ strokeWidth: "1.5",
558
+ className: b,
559
+ children: [
560
+ /* @__PURE__ */ jsx("circle", {
561
+ cx: "12",
562
+ cy: "12",
563
+ r: "10"
564
+ }),
565
+ /* @__PURE__ */ jsx("line", {
566
+ x1: "15",
567
+ y1: "9",
568
+ x2: "9",
569
+ y2: "15"
570
+ }),
571
+ /* @__PURE__ */ jsx("line", {
572
+ x1: "9",
573
+ y1: "9",
574
+ x2: "15",
575
+ y2: "15"
576
+ })
577
+ ]
578
+ })
579
+ };
580
+ return x[e] || x.search;
581
+ }
582
+ const EmptyState = forwardRef(({ icon: e = "search", title: b, description: x, action: S, size: C = "md", variant: w = "default", className: T, showIcon: E = !0, style: D, ...k }, A) => {
583
+ let j = getEmptyStateStyles(C, w, T), M = getIconContainerStyles(C), N = getTitleStyles(C), P = getDescriptionStyles(C), F = getActionStyles(), I = () => E ? typeof e == "string" ? /* @__PURE__ */ jsx("div", {
584
+ className: M,
585
+ children: /* @__PURE__ */ jsx(EmptyStateIcon, {
586
+ type: e,
587
+ className: "w-full h-full"
588
+ })
589
+ }) : /* @__PURE__ */ jsx("div", {
590
+ className: M,
591
+ children: e
592
+ }) : null;
593
+ return /* @__PURE__ */ jsxs("div", {
594
+ ref: A,
595
+ className: j,
596
+ style: D,
597
+ ...k,
598
+ children: [
599
+ I(),
600
+ b && /* @__PURE__ */ jsx("h3", {
601
+ className: N,
602
+ children: b
603
+ }),
604
+ x && /* @__PURE__ */ jsx("p", {
605
+ className: P,
606
+ children: x
607
+ }),
608
+ S && /* @__PURE__ */ jsx("div", {
609
+ className: F,
610
+ children: S
611
+ })
612
+ ]
613
+ });
614
+ });
615
+ EmptyState.displayName = "EmptyState";
616
+ var EmptyState_default = EmptyState;
617
+ export { Button_default as Button, Card_default as Card, CloseIcon_default as CloseIcon, Collapse_default as Collapse, Divider_default as Divider, Drawer_default as Drawer, EmptyState_default as EmptyState, LoadingIcon_default as LoadingIcon, cn_default as cn };
package/dist/style.css CHANGED
@@ -1,3 +1,3 @@
1
1
  /*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
2
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-500:#fb2c36;--color-red-600:#e40014;--color-red-700:#bf000f;--color-blue-50:#eff6ff;--color-blue-400:#54a2ff;--color-blue-500:#3080ff;--color-blue-600:#155dfc;--color-blue-700:#1447e6;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5dc;--color-gray-500:#6a7282;--color-gray-600:#4a5565;--color-gray-700:#364153;--color-gray-900:#101828;--color-black:#000;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height:calc(1.5/1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--font-weight-medium:500;--font-weight-semibold:600;--radius-lg:.5rem;--radius-xl:.75rem;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-red-500:lab(55.4814% 75.0732 48.8528);--color-red-600:lab(48.4493% 77.4328 61.5452);--color-red-700:lab(40.4273% 67.2623 53.7441);--color-blue-50:lab(96.492% -1.14644 -5.11479);--color-blue-400:lab(65.0361% -1.42065 -56.9802);--color-blue-500:lab(54.1736% 13.3369 -74.6839);--color-blue-600:lab(44.0605% 29.0279 -86.0352);--color-blue-700:lab(36.9089% 35.0961 -85.6872);--color-gray-50:lab(98.2596% -.247031 -.706708);--color-gray-100:lab(96.1596% -.0823438 -1.13575);--color-gray-200:lab(91.6229% -.159115 -2.26791);--color-gray-300:lab(85.1236% -.612259 -3.7138);--color-gray-500:lab(47.7841% -.393182 -10.0268);--color-gray-600:lab(35.6337% -1.58697 -10.8425);--color-gray-700:lab(27.1134% -.956401 -12.3224);--color-gray-900:lab(8.11897% .811279 -12.254)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.inset-0{inset:calc(var(--spacing)*0)}.top-0{top:calc(var(--spacing)*0)}.right-0{right:calc(var(--spacing)*0)}.bottom-0{bottom:calc(var(--spacing)*0)}.left-0{left:calc(var(--spacing)*0)}.z-40{z-index:40}.z-50{z-index:50}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.size-4{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.h-0{height:calc(var(--spacing)*0)}.h-0\.5{height:calc(var(--spacing)*.5)}.h-1{height:calc(var(--spacing)*1)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-24{height:calc(var(--spacing)*24)}.h-64{height:calc(var(--spacing)*64)}.h-96{height:calc(var(--spacing)*96)}.h-\[46rem\]{height:46rem}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-0{max-height:calc(var(--spacing)*0)}.max-h-none{max-height:none}.max-h-screen{max-height:100vh}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-\[1\.5rem\]{min-height:1.5rem}.min-h-\[2\.5rem\]{min-height:2.5rem}.min-h-\[2rem\]{min-height:2rem}.min-h-\[3\.5rem\]{min-height:3.5rem}.min-h-\[3rem\]{min-height:3rem}.w-0{width:calc(var(--spacing)*0)}.w-0\.5{width:calc(var(--spacing)*.5)}.w-1{width:calc(var(--spacing)*1)}.w-1\.5{width:calc(var(--spacing)*1.5)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-64{width:calc(var(--spacing)*64)}.w-96{width:calc(var(--spacing)*96)}.w-\[46rem\]{width:46rem}.w-full{width:100%}.w-px{width:1px}.w-screen{width:100vw}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.origin-bottom-left{transform-origin:0 100%}.-translate-x-full{--tw-translate-x:-100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-full{--tw-translate-y:-100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-0{--tw-translate-y:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-full{--tw-translate-y:100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.rotate-0{rotate:none}.rotate-180{rotate:180deg}.animate-spin{animation:var(--animate-spin)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-wait{cursor:wait}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-2{gap:calc(var(--spacing)*2)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-none{border-radius:0}.rounded-l-xl{border-top-left-radius:var(--radius-xl);border-bottom-left-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-8{border-style:var(--tw-border-style);border-width:8px}.border-16{border-style:var(--tw-border-style);border-width:16px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-solid{--tw-border-style:solid;border-style:solid}.border-blue-400{border-color:var(--color-blue-400)}.border-blue-600{border-color:var(--color-blue-600)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.bg-black\/40{background-color:#0006}@supports (color:color-mix(in lab, red, red)){.bg-black\/40{background-color:color-mix(in oklab,var(--color-black)40%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-red-600{background-color:var(--color-red-600)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.p-2{padding:calc(var(--spacing)*2)}.p-4{padding:calc(var(--spacing)*4)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.px-8{padding-inline:calc(var(--spacing)*8)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.pr-2{padding-right:calc(var(--spacing)*2)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.text-center{text-align:center}.text-left{text-align:left}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.will-change-transform{will-change:transform}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:translate-x-1:hover{--tw-translate-x:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\:-translate-y-1:hover{--tw-translate-y:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\:scale-101:hover{--tw-scale-x:101%;--tw-scale-y:101%;--tw-scale-z:101%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:bg-blue-50:hover{background-color:var(--color-blue-50)}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-gray-200:hover{background-color:var(--color-gray-200)}.hover\:bg-red-700:hover{background-color:var(--color-red-700)}.hover\:bg-transparent:hover{background-color:#0000}.hover\:text-gray-700:hover{color:var(--color-gray-700)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-blue-500:focus{--tw-ring-color:var(--color-blue-500)}.focus\:ring-gray-500:focus{--tw-ring-color:var(--color-gray-500)}.focus\:ring-red-500:focus{--tw-ring-color:var(--color-red-500)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus\:ring-inset:focus{--tw-ring-inset:inset}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes spin{to{transform:rotate(360deg)}}
2
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-500:#fb2c36;--color-red-600:#e40014;--color-red-700:#bf000f;--color-blue-50:#eff6ff;--color-blue-200:#bedbff;--color-blue-400:#54a2ff;--color-blue-500:#3080ff;--color-blue-600:#155dfc;--color-blue-700:#1447e6;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5dc;--color-gray-400:#99a1af;--color-gray-500:#6a7282;--color-gray-600:#4a5565;--color-gray-700:#364153;--color-gray-900:#101828;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height:calc(1.5/1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--font-weight-medium:500;--font-weight-semibold:600;--radius-lg:.5rem;--radius-xl:.75rem;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-red-500:lab(55.4814% 75.0732 48.8528);--color-red-600:lab(48.4493% 77.4328 61.5452);--color-red-700:lab(40.4273% 67.2623 53.7441);--color-blue-50:lab(96.492% -1.14644 -5.11479);--color-blue-200:lab(86.15% -4.04379 -21.0797);--color-blue-400:lab(65.0361% -1.42065 -56.9802);--color-blue-500:lab(54.1736% 13.3369 -74.6839);--color-blue-600:lab(44.0605% 29.0279 -86.0352);--color-blue-700:lab(36.9089% 35.0961 -85.6872);--color-gray-50:lab(98.2596% -.247031 -.706708);--color-gray-100:lab(96.1596% -.0823438 -1.13575);--color-gray-200:lab(91.6229% -.159115 -2.26791);--color-gray-300:lab(85.1236% -.612259 -3.7138);--color-gray-400:lab(65.9269% -.832707 -8.17473);--color-gray-500:lab(47.7841% -.393182 -10.0268);--color-gray-600:lab(35.6337% -1.58697 -10.8425);--color-gray-700:lab(27.1134% -.956401 -12.3224);--color-gray-900:lab(8.11897% .811279 -12.254)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.inset-0{inset:calc(var(--spacing)*0)}.top-0{top:calc(var(--spacing)*0)}.right-0{right:calc(var(--spacing)*0)}.bottom-0{bottom:calc(var(--spacing)*0)}.left-0{left:calc(var(--spacing)*0)}.z-40{z-index:40}.z-50{z-index:50}.mt-2{margin-top:calc(var(--spacing)*2)}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.size-4{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.h-0{height:calc(var(--spacing)*0)}.h-0\.5{height:calc(var(--spacing)*.5)}.h-1{height:calc(var(--spacing)*1)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-12{height:calc(var(--spacing)*12)}.h-16{height:calc(var(--spacing)*16)}.h-20{height:calc(var(--spacing)*20)}.h-24{height:calc(var(--spacing)*24)}.h-64{height:calc(var(--spacing)*64)}.h-96{height:calc(var(--spacing)*96)}.h-\[46rem\]{height:46rem}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-0{max-height:calc(var(--spacing)*0)}.max-h-none{max-height:none}.max-h-screen{max-height:100vh}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-\[1\.5rem\]{min-height:1.5rem}.min-h-\[2\.5rem\]{min-height:2.5rem}.min-h-\[2rem\]{min-height:2rem}.min-h-\[3\.5rem\]{min-height:3.5rem}.min-h-\[3rem\]{min-height:3rem}.w-0{width:calc(var(--spacing)*0)}.w-0\.5{width:calc(var(--spacing)*.5)}.w-1{width:calc(var(--spacing)*1)}.w-1\.5{width:calc(var(--spacing)*1.5)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-12{width:calc(var(--spacing)*12)}.w-16{width:calc(var(--spacing)*16)}.w-20{width:calc(var(--spacing)*20)}.w-64{width:calc(var(--spacing)*64)}.w-96{width:calc(var(--spacing)*96)}.w-\[46rem\]{width:46rem}.w-full{width:100%}.w-px{width:1px}.w-screen{width:100vw}.max-w-md{max-width:var(--container-md)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.origin-bottom-left{transform-origin:0 100%}.-translate-x-full{--tw-translate-x:-100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-full{--tw-translate-y:-100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-0{--tw-translate-y:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-full{--tw-translate-y:100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.rotate-0{rotate:none}.rotate-180{rotate:180deg}.animate-spin{animation:var(--animate-spin)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-wait{cursor:wait}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-2{gap:calc(var(--spacing)*2)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}.gap-8{gap:calc(var(--spacing)*8)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-none{border-radius:0}.rounded-l-xl{border-top-left-radius:var(--radius-xl);border-bottom-left-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-8{border-style:var(--tw-border-style);border-width:8px}.border-16{border-style:var(--tw-border-style);border-width:16px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-solid{--tw-border-style:solid;border-style:solid}.border-blue-200{border-color:var(--color-blue-200)}.border-blue-400{border-color:var(--color-blue-400)}.border-blue-600{border-color:var(--color-blue-600)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.bg-black\/40{background-color:#0006}@supports (color:color-mix(in lab, red, red)){.bg-black\/40{background-color:color-mix(in oklab,var(--color-black)40%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-red-600{background-color:var(--color-red-600)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.p-2{padding:calc(var(--spacing)*2)}.p-4{padding:calc(var(--spacing)*4)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.px-8{padding-inline:calc(var(--spacing)*8)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-8{padding-block:calc(var(--spacing)*8)}.py-12{padding-block:calc(var(--spacing)*12)}.py-16{padding-block:calc(var(--spacing)*16)}.pr-2{padding-right:calc(var(--spacing)*2)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.text-center{text-align:center}.text-left{text-align:left}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.will-change-transform{will-change:transform}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:translate-x-1:hover{--tw-translate-x:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\:-translate-y-1:hover{--tw-translate-y:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\:scale-101:hover{--tw-scale-x:101%;--tw-scale-y:101%;--tw-scale-z:101%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:bg-blue-50:hover{background-color:var(--color-blue-50)}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-gray-200:hover{background-color:var(--color-gray-200)}.hover\:bg-red-700:hover{background-color:var(--color-red-700)}.hover\:bg-transparent:hover{background-color:#0000}.hover\:text-gray-700:hover{color:var(--color-gray-700)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-blue-500:focus{--tw-ring-color:var(--color-blue-500)}.focus\:ring-gray-500:focus{--tw-ring-color:var(--color-gray-500)}.focus\:ring-red-500:focus{--tw-ring-color:var(--color-red-500)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus\:ring-inset:focus{--tw-ring-inset:inset}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes spin{to{transform:rotate(360deg)}}
3
3
  /*$vite$:1*/
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gemini-uis",
3
- "version": "0.4.0",
3
+ "version": "0.5.1",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",