@grazziotin/react-components-next 0.1.0 → 1.0.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.mjs CHANGED
@@ -1,400 +1,29 @@
1
- import { jsxs, jsx } from 'react/jsx-runtime';
2
- import React from 'react';
1
+ export { card_default as Card, data_table_default as DataTable, dialog_default as Dialog, Tab, Tabs } from './chunk-XNWAGZVV.mjs';
2
+ export { cn, formatCpfCnpj, formatPhoneBr, nvl } from './chunk-4DIPDYEU.mjs';
3
3
 
4
- var __defProp = Object.defineProperty;
5
- var __defProps = Object.defineProperties;
6
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
7
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
- var __hasOwnProp = Object.prototype.hasOwnProperty;
9
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
10
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
11
- var __spreadValues = (a, b) => {
12
- for (var prop in b || (b = {}))
13
- if (__hasOwnProp.call(b, prop))
14
- __defNormalProp(a, prop, b[prop]);
15
- if (__getOwnPropSymbols)
16
- for (var prop of __getOwnPropSymbols(b)) {
17
- if (__propIsEnum.call(b, prop))
18
- __defNormalProp(a, prop, b[prop]);
19
- }
20
- return a;
21
- };
22
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
23
- var __objRest = (source, exclude) => {
24
- var target = {};
25
- for (var prop in source)
26
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
27
- target[prop] = source[prop];
28
- if (source != null && __getOwnPropSymbols)
29
- for (var prop of __getOwnPropSymbols(source)) {
30
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
31
- target[prop] = source[prop];
32
- }
33
- return target;
34
- };
35
-
36
- // src/lib/utils.ts
37
- function cn(...inputs) {
38
- const result = [];
39
- for (const input of inputs) {
40
- if (!input && input !== 0) continue;
41
- if (typeof input === "string") {
42
- result.push(input);
43
- } else if (typeof input === "number" || typeof input === "bigint") {
44
- result.push(String(input));
45
- } else if (Array.isArray(input)) {
46
- const nested = cn(...input);
47
- if (nested) result.push(nested);
4
+ // #style-inject:#style-inject
5
+ function styleInject(css, { insertAt } = {}) {
6
+ if (typeof document === "undefined") return;
7
+ const head = document.head || document.getElementsByTagName("head")[0];
8
+ const style = document.createElement("style");
9
+ style.type = "text/css";
10
+ if (insertAt === "top") {
11
+ if (head.firstChild) {
12
+ head.insertBefore(style, head.firstChild);
13
+ } else {
14
+ head.appendChild(style);
48
15
  }
16
+ } else {
17
+ head.appendChild(style);
18
+ }
19
+ if (style.styleSheet) {
20
+ style.styleSheet.cssText = css;
21
+ } else {
22
+ style.appendChild(document.createTextNode(css));
49
23
  }
50
- return result.join(" ").replace(/\s+/g, " ").trim();
51
- }
52
- var variantStyles = {
53
- primary: "bg-blue-600 text-white hover:bg-blue-700 active:bg-blue-800 focus-visible:ring-blue-500",
54
- secondary: "bg-gray-100 text-gray-900 hover:bg-gray-200 active:bg-gray-300 focus-visible:ring-gray-400",
55
- outline: "border border-gray-300 bg-transparent text-gray-900 hover:bg-gray-50 active:bg-gray-100 focus-visible:ring-gray-400",
56
- ghost: "bg-transparent text-gray-700 hover:bg-gray-100 active:bg-gray-200 focus-visible:ring-gray-400",
57
- destructive: "bg-red-600 text-white hover:bg-red-700 active:bg-red-800 focus-visible:ring-red-500"
58
- };
59
- var sizeStyles = {
60
- sm: "h-8 px-3 text-sm gap-1.5",
61
- md: "h-10 px-4 text-sm gap-2",
62
- lg: "h-12 px-6 text-base gap-2.5"
63
- };
64
- function Button(_a) {
65
- var _b = _a, {
66
- variant = "primary",
67
- size = "md",
68
- loading = false,
69
- leftIcon,
70
- rightIcon,
71
- fullWidth = false,
72
- children,
73
- className,
74
- disabled
75
- } = _b, props = __objRest(_b, [
76
- "variant",
77
- "size",
78
- "loading",
79
- "leftIcon",
80
- "rightIcon",
81
- "fullWidth",
82
- "children",
83
- "className",
84
- "disabled"
85
- ]);
86
- const isDisabled = disabled || loading;
87
- return /* @__PURE__ */ jsxs(
88
- "button",
89
- __spreadProps(__spreadValues({
90
- className: cn(
91
- "inline-flex items-center justify-center rounded-md font-medium",
92
- "transition-colors duration-150 ease-in-out",
93
- "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2",
94
- "disabled:pointer-events-none disabled:opacity-50",
95
- variantStyles[variant],
96
- sizeStyles[size],
97
- fullWidth && "w-full",
98
- className
99
- ),
100
- disabled: isDisabled
101
- }, props), {
102
- children: [
103
- loading ? /* @__PURE__ */ jsx(Spinner, { size }) : leftIcon && /* @__PURE__ */ jsx("span", { className: "shrink-0", children: leftIcon }),
104
- children,
105
- !loading && rightIcon && /* @__PURE__ */ jsx("span", { className: "shrink-0", children: rightIcon })
106
- ]
107
- })
108
- );
109
- }
110
- function Spinner({ size }) {
111
- const spinnerSize = size === "sm" ? "h-3 w-3" : size === "lg" ? "h-5 w-5" : "h-4 w-4";
112
- return /* @__PURE__ */ jsxs(
113
- "svg",
114
- {
115
- className: cn("animate-spin shrink-0", spinnerSize),
116
- xmlns: "http://www.w3.org/2000/svg",
117
- fill: "none",
118
- viewBox: "0 0 24 24",
119
- children: [
120
- /* @__PURE__ */ jsx(
121
- "circle",
122
- {
123
- className: "opacity-25",
124
- cx: "12",
125
- cy: "12",
126
- r: "10",
127
- stroke: "currentColor",
128
- strokeWidth: "4"
129
- }
130
- ),
131
- /* @__PURE__ */ jsx(
132
- "path",
133
- {
134
- className: "opacity-75",
135
- fill: "currentColor",
136
- d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"
137
- }
138
- )
139
- ]
140
- }
141
- );
142
- }
143
- var sizeStyles2 = {
144
- sm: "h-8 px-2.5 text-sm",
145
- md: "h-10 px-3 text-sm",
146
- lg: "h-12 px-4 text-base"
147
- };
148
- function Input(_a) {
149
- var _b = _a, {
150
- label,
151
- hint,
152
- error,
153
- size = "md",
154
- leftAddon,
155
- rightAddon,
156
- fullWidth = false,
157
- className,
158
- id
159
- } = _b, props = __objRest(_b, [
160
- "label",
161
- "hint",
162
- "error",
163
- "size",
164
- "leftAddon",
165
- "rightAddon",
166
- "fullWidth",
167
- "className",
168
- "id"
169
- ]);
170
- const inputId = id != null ? id : label == null ? void 0 : label.toLowerCase().replace(/\s+/g, "-");
171
- return /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-1.5", fullWidth && "w-full"), children: [
172
- label && /* @__PURE__ */ jsx(
173
- "label",
174
- {
175
- htmlFor: inputId,
176
- className: "text-sm font-medium text-gray-700",
177
- children: label
178
- }
179
- ),
180
- /* @__PURE__ */ jsxs("div", { className: "relative flex items-center", children: [
181
- leftAddon && /* @__PURE__ */ jsx("span", { className: "absolute left-3 flex items-center text-gray-500", children: leftAddon }),
182
- /* @__PURE__ */ jsx(
183
- "input",
184
- __spreadValues({
185
- id: inputId,
186
- className: cn(
187
- "w-full rounded-md border bg-white text-gray-900 placeholder:text-gray-400",
188
- "transition-colors duration-150",
189
- "focus:outline-none focus:ring-2 focus:ring-offset-0",
190
- "disabled:cursor-not-allowed disabled:bg-gray-50 disabled:text-gray-500",
191
- sizeStyles2[size],
192
- error ? "border-red-400 focus:border-red-400 focus:ring-red-300" : "border-gray-300 focus:border-blue-500 focus:ring-blue-300",
193
- leftAddon && "pl-9",
194
- rightAddon && "pr-9",
195
- className
196
- )
197
- }, props)
198
- ),
199
- rightAddon && /* @__PURE__ */ jsx("span", { className: "absolute right-3 flex items-center text-gray-500", children: rightAddon })
200
- ] }),
201
- (hint || error) && /* @__PURE__ */ jsx("p", { className: cn("text-xs", error ? "text-red-500" : "text-gray-500"), children: error != null ? error : hint })
202
- ] });
203
- }
204
- var shadowStyles = {
205
- none: "",
206
- sm: "shadow-sm",
207
- md: "shadow-md",
208
- lg: "shadow-lg"
209
- };
210
- var paddingStyles = {
211
- none: "",
212
- sm: "p-4",
213
- md: "p-6",
214
- lg: "p-8"
215
- };
216
- function Card(_a) {
217
- var _b = _a, {
218
- shadow = "sm",
219
- hoverable = false,
220
- bordered = true,
221
- padding = "md",
222
- className,
223
- children
224
- } = _b, props = __objRest(_b, [
225
- "shadow",
226
- "hoverable",
227
- "bordered",
228
- "padding",
229
- "className",
230
- "children"
231
- ]);
232
- return /* @__PURE__ */ jsx(
233
- "div",
234
- __spreadProps(__spreadValues({
235
- className: cn(
236
- "rounded-xl bg-white",
237
- shadowStyles[shadow],
238
- paddingStyles[padding],
239
- bordered && "border border-gray-200",
240
- hoverable && "cursor-pointer transition-shadow duration-200 hover:shadow-md",
241
- className
242
- )
243
- }, props), {
244
- children
245
- })
246
- );
247
- }
248
- function CardHeader(_a) {
249
- var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
250
- return /* @__PURE__ */ jsx("div", __spreadProps(__spreadValues({ className: cn("mb-4 flex flex-col gap-1", className) }, props), { children }));
251
- }
252
- function CardTitle(_a) {
253
- var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
254
- return /* @__PURE__ */ jsx(
255
- "h3",
256
- __spreadProps(__spreadValues({
257
- className: cn("text-lg font-semibold text-gray-900", className)
258
- }, props), {
259
- children
260
- })
261
- );
262
- }
263
- function CardDescription(_a) {
264
- var _b = _a, {
265
- className,
266
- children
267
- } = _b, props = __objRest(_b, [
268
- "className",
269
- "children"
270
- ]);
271
- return /* @__PURE__ */ jsx("p", __spreadProps(__spreadValues({ className: cn("text-sm text-gray-500", className) }, props), { children }));
272
- }
273
- function CardContent(_a) {
274
- var _b = _a, {
275
- className,
276
- children
277
- } = _b, props = __objRest(_b, [
278
- "className",
279
- "children"
280
- ]);
281
- return /* @__PURE__ */ jsx("div", __spreadProps(__spreadValues({ className: cn("text-sm text-gray-700", className) }, props), { children }));
282
- }
283
- function CardFooter(_a) {
284
- var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
285
- return /* @__PURE__ */ jsx(
286
- "div",
287
- __spreadProps(__spreadValues({
288
- className: cn("mt-4 flex items-center gap-2", className)
289
- }, props), {
290
- children
291
- })
292
- );
293
- }
294
- var variantStyles2 = {
295
- default: "bg-gray-100 text-gray-700",
296
- primary: "bg-blue-100 text-blue-700",
297
- success: "bg-green-100 text-green-700",
298
- warning: "bg-yellow-100 text-yellow-700",
299
- danger: "bg-red-100 text-red-700",
300
- info: "bg-sky-100 text-sky-700"
301
- };
302
- var dotStyles = {
303
- default: "bg-gray-500",
304
- primary: "bg-blue-500",
305
- success: "bg-green-500",
306
- warning: "bg-yellow-500",
307
- danger: "bg-red-500",
308
- info: "bg-sky-500"
309
- };
310
- function Badge(_a) {
311
- var _b = _a, {
312
- variant = "default",
313
- dot = false,
314
- className,
315
- children
316
- } = _b, props = __objRest(_b, [
317
- "variant",
318
- "dot",
319
- "className",
320
- "children"
321
- ]);
322
- return /* @__PURE__ */ jsxs(
323
- "span",
324
- __spreadProps(__spreadValues({
325
- className: cn(
326
- "inline-flex items-center gap-1.5 rounded-full px-2.5 py-0.5 text-xs font-medium",
327
- variantStyles2[variant],
328
- className
329
- )
330
- }, props), {
331
- children: [
332
- dot && /* @__PURE__ */ jsx(
333
- "span",
334
- {
335
- className: cn("h-1.5 w-1.5 rounded-full", dotStyles[variant])
336
- }
337
- ),
338
- children
339
- ]
340
- })
341
- );
342
- }
343
- var sizeStyles3 = {
344
- xs: "h-6 w-6 text-xs",
345
- sm: "h-8 w-8 text-sm",
346
- md: "h-10 w-10 text-sm",
347
- lg: "h-12 w-12 text-base",
348
- xl: "h-16 w-16 text-lg"
349
- };
350
- function getInitials(name) {
351
- return name.split(" ").slice(0, 2).map((word) => {
352
- var _a, _b;
353
- return (_b = (_a = word[0]) == null ? void 0 : _a.toUpperCase()) != null ? _b : "";
354
- }).join("");
355
- }
356
- function Avatar(_a) {
357
- var _b = _a, {
358
- src,
359
- alt = "",
360
- fallback,
361
- size = "md",
362
- className
363
- } = _b, props = __objRest(_b, [
364
- "src",
365
- "alt",
366
- "fallback",
367
- "size",
368
- "className"
369
- ]);
370
- const [imgError, setImgError] = React.useState(false);
371
- const showFallback = !src || imgError;
372
- const initials = fallback ? getInitials(fallback) : alt ? getInitials(alt) : "?";
373
- return /* @__PURE__ */ jsx(
374
- "span",
375
- __spreadProps(__spreadValues({
376
- className: cn(
377
- "relative inline-flex shrink-0 items-center justify-center overflow-hidden rounded-full bg-gray-200",
378
- sizeStyles3[size],
379
- className
380
- )
381
- }, props), {
382
- children: !showFallback ? (
383
- // eslint-disable-next-line @next/next/no-img-element
384
- /* @__PURE__ */ jsx(
385
- "img",
386
- {
387
- src,
388
- alt,
389
- className: "h-full w-full object-cover",
390
- onError: () => setImgError(true)
391
- }
392
- )
393
- ) : /* @__PURE__ */ jsx("span", { className: "font-medium text-gray-600 select-none", children: initials })
394
- })
395
- );
396
24
  }
397
25
 
398
- export { Avatar, Badge, Button, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Input };
26
+ // src/styles/tailwind-output.css
27
+ styleInject('/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n@layer properties {\n @supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))) {\n *,\n :before,\n :after,\n ::backdrop {\n --tw-border-style:solid;\n --tw-font-weight:initial;\n --tw-shadow:0 0 #0000;\n --tw-shadow-color:initial;\n --tw-shadow-alpha:100%;\n --tw-inset-shadow:0 0 #0000;\n --tw-inset-shadow-color:initial;\n --tw-inset-shadow-alpha:100%;\n --tw-ring-color:initial;\n --tw-ring-shadow:0 0 #0000;\n --tw-inset-ring-color:initial;\n --tw-inset-ring-shadow:0 0 #0000;\n --tw-ring-inset:initial;\n --tw-ring-offset-width:0px;\n --tw-ring-offset-color:#fff;\n --tw-ring-offset-shadow:0 0 #0000;\n --tw-outline-style:solid;\n --tw-blur:initial;\n --tw-brightness:initial;\n --tw-contrast:initial;\n --tw-grayscale:initial;\n --tw-hue-rotate:initial;\n --tw-invert:initial;\n --tw-opacity:initial;\n --tw-saturate:initial;\n --tw-sepia:initial;\n --tw-drop-shadow:initial;\n --tw-drop-shadow-color:initial;\n --tw-drop-shadow-alpha:100%;\n --tw-drop-shadow-size:initial;\n }\n }\n}\n@layer theme {\n :root,\n :host {\n --font-sans:ui-sans-serif,\n system-ui,\n sans-serif,\n "Apple Color Emoji",\n "Segoe UI Emoji",\n "Segoe UI Symbol",\n "Noto Color Emoji";\n --font-mono:ui-monospace,\n SFMono-Regular,\n Menlo,\n Monaco,\n Consolas,\n "Liberation Mono",\n "Courier New",\n monospace;\n --color-red-600:oklch(57.7% .245 27.325);\n --color-green-50:oklch(98.2% .018 155.826);\n --color-green-100:oklch(96.2% .044 156.743);\n --color-green-400:oklch(79.2% .209 151.711);\n --color-green-500:oklch(72.3% .219 149.579);\n --color-green-800:oklch(44.8% .119 151.328);\n --color-teal-500:oklch(70.4% .14 182.503);\n --color-blue-500:oklch(62.3% .214 259.815);\n --color-gray-50:oklch(98.5% .002 247.839);\n --color-gray-100:oklch(96.7% .003 264.542);\n --color-gray-200:oklch(92.8% .006 264.531);\n --color-gray-500:oklch(55.1% .027 264.364);\n --color-gray-600:oklch(44.6% .03 256.802);\n --color-gray-700:oklch(37.3% .034 259.733);\n --color-gray-900:oklch(21% .034 264.665);\n --color-black:#000;\n --color-white:#fff;\n --spacing:.25rem;\n --container-3xl:48rem;\n --text-xs:.75rem;\n --text-xs--line-height:calc(1 / .75);\n --text-sm:.875rem;\n --text-sm--line-height:calc(1.25 / .875);\n --text-2xl:1.5rem;\n --text-2xl--line-height:calc(2 / 1.5);\n --font-weight-medium:500;\n --font-weight-semibold:600;\n --font-weight-bold:700;\n --radius-lg:.5rem;\n --default-transition-duration:.15s;\n --default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);\n --default-font-family:var(--font-sans);\n --default-mono-font-family:var(--font-mono);\n }\n}\n@layer base {\n *,\n :after,\n :before,\n ::backdrop {\n box-sizing: border-box;\n border: 0 solid;\n margin: 0;\n padding: 0;\n }\n ::file-selector-button {\n box-sizing: border-box;\n border: 0 solid;\n margin: 0;\n padding: 0;\n }\n html,\n :host {\n -webkit-text-size-adjust: 100%;\n tab-size: 4;\n line-height: 1.5;\n 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");\n font-feature-settings: var(--default-font-feature-settings,normal);\n font-variation-settings: var(--default-font-variation-settings,normal);\n -webkit-tap-highlight-color: transparent;\n }\n hr {\n height: 0;\n color: inherit;\n border-top-width: 1px;\n }\n abbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n }\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-size: inherit;\n font-weight: inherit;\n }\n a {\n color: inherit;\n -webkit-text-decoration: inherit;\n -webkit-text-decoration: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n }\n b,\n strong {\n font-weight: bolder;\n }\n code,\n kbd,\n samp,\n pre {\n font-family: var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);\n font-feature-settings: var(--default-mono-font-feature-settings,normal);\n font-variation-settings: var(--default-mono-font-variation-settings,normal);\n font-size: 1em;\n }\n small {\n font-size: 80%;\n }\n sub,\n sup {\n vertical-align: baseline;\n font-size: 75%;\n line-height: 0;\n position: relative;\n }\n sub {\n bottom: -.25em;\n }\n sup {\n top: -.5em;\n }\n table {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n }\n :-moz-focusring {\n outline: auto;\n }\n progress {\n vertical-align: baseline;\n }\n summary {\n display: list-item;\n }\n ol,\n ul,\n menu {\n list-style: none;\n }\n img,\n svg,\n video,\n canvas,\n audio,\n iframe,\n embed,\n object {\n vertical-align: middle;\n display: block;\n }\n img,\n video {\n max-width: 100%;\n height: auto;\n }\n button,\n input,\n select,\n optgroup,\n textarea {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n opacity: 1;\n background-color: #0000;\n border-radius: 0;\n }\n ::file-selector-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n opacity: 1;\n background-color: #0000;\n border-radius: 0;\n }\n :where(select:is([multiple], [size])) optgroup {\n font-weight: bolder;\n }\n :where(select:is([multiple], [size])) optgroup option {\n padding-inline-start: 20px;\n }\n ::file-selector-button {\n margin-inline-end: 4px;\n }\n ::placeholder {\n opacity: 1;\n }\n @supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px) {\n ::placeholder {\n color: currentColor;\n }\n @supports (color:color-mix(in lab, red, red)) {\n ::placeholder {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n }\n textarea {\n resize: vertical;\n }\n ::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n ::-webkit-date-and-time-value {\n min-height: 1lh;\n text-align: inherit;\n }\n ::-webkit-datetime-edit {\n display: inline-flex;\n }\n ::-webkit-datetime-edit-fields-wrapper {\n padding: 0;\n }\n ::-webkit-datetime-edit {\n padding-block: 0;\n }\n ::-webkit-datetime-edit-year-field {\n padding-block: 0;\n }\n ::-webkit-datetime-edit-month-field {\n padding-block: 0;\n }\n ::-webkit-datetime-edit-day-field {\n padding-block: 0;\n }\n ::-webkit-datetime-edit-hour-field {\n padding-block: 0;\n }\n ::-webkit-datetime-edit-minute-field {\n padding-block: 0;\n }\n ::-webkit-datetime-edit-second-field {\n padding-block: 0;\n }\n ::-webkit-datetime-edit-millisecond-field {\n padding-block: 0;\n }\n ::-webkit-datetime-edit-meridiem-field {\n padding-block: 0;\n }\n ::-webkit-calendar-picker-indicator {\n line-height: 1;\n }\n :-moz-ui-invalid {\n box-shadow: none;\n }\n button,\n input:where([type=button], [type=reset], [type=submit]) {\n appearance: button;\n }\n ::file-selector-button {\n appearance: button;\n }\n ::-webkit-inner-spin-button {\n height: auto;\n }\n ::-webkit-outer-spin-button {\n height: auto;\n }\n [hidden]:where(:not([hidden=until-found])) {\n display: none !important;\n }\n}\n@layer components;\n@layer utilities {\n .container {\n width: 100%;\n }\n @media (min-width: 40rem) {\n .container {\n max-width: 40rem;\n }\n }\n @media (min-width: 48rem) {\n .container {\n max-width: 48rem;\n }\n }\n @media (min-width: 64rem) {\n .container {\n max-width: 64rem;\n }\n }\n @media (min-width: 80rem) {\n .container {\n max-width: 80rem;\n }\n }\n @media (min-width: 96rem) {\n .container {\n max-width: 96rem;\n }\n }\n .mt-2 {\n margin-top: calc(var(--spacing) * 2);\n }\n .mt-4 {\n margin-top: calc(var(--spacing) * 4);\n }\n .block {\n display: block;\n }\n .block\\! {\n display: block !important;\n }\n .flex {\n display: flex;\n }\n .hidden {\n display: none;\n }\n .inline-block {\n display: inline-block;\n }\n .table {\n display: table;\n }\n .min-h-\\[210px\\]\\! {\n min-height: 210px !important;\n }\n .min-h-screen {\n min-height: 100vh;\n }\n .max-w-3xl {\n max-width: var(--container-3xl);\n }\n .min-w-0 {\n min-width: calc(var(--spacing) * 0);\n }\n .flex-1 {\n flex: 1;\n }\n .border-collapse {\n border-collapse: collapse;\n }\n .resize {\n resize: both;\n }\n .flex-col {\n flex-direction: column;\n }\n .items-center {\n align-items: center;\n }\n .justify-center {\n justify-content: center;\n }\n .gap-2 {\n gap: calc(var(--spacing) * 2);\n }\n .gap-3 {\n gap: calc(var(--spacing) * 3);\n }\n .truncate {\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n }\n .truncate\\! {\n text-overflow: ellipsis !important;\n white-space: nowrap !important;\n overflow: hidden !important;\n }\n .rounded {\n border-radius: .25rem;\n }\n .rounded-lg {\n border-radius: var(--radius-lg);\n }\n .border {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n .border-green-500 {\n border-color: var(--color-green-500);\n }\n .bg-blue-500 {\n background-color: var(--color-blue-500);\n }\n .bg-gray-50 {\n background-color: var(--color-gray-50);\n }\n .bg-gray-100 {\n background-color: var(--color-gray-100);\n }\n .bg-gray-200 {\n background-color: var(--color-gray-200);\n }\n .bg-gray-900 {\n background-color: var(--color-gray-900);\n }\n .bg-green-50 {\n background-color: var(--color-green-50);\n }\n .bg-green-100 {\n background-color: var(--color-green-100);\n }\n .bg-red-600 {\n background-color: var(--color-red-600);\n }\n .bg-teal-500 {\n background-color: var(--color-teal-500);\n }\n .p-4 {\n padding: calc(var(--spacing) * 4);\n }\n .px-2 {\n padding-inline: calc(var(--spacing) * 2);\n }\n .px-4 {\n padding-inline: calc(var(--spacing) * 4);\n }\n .px-6 {\n padding-inline: calc(var(--spacing) * 6);\n }\n .py-0 {\n padding-block: calc(var(--spacing) * 0);\n }\n .py-0\\.5 {\n padding-block: calc(var(--spacing) * .5);\n }\n .py-1 {\n padding-block: calc(var(--spacing) * 1);\n }\n .py-2 {\n padding-block: calc(var(--spacing) * 2);\n }\n .py-3 {\n padding-block: calc(var(--spacing) * 3);\n }\n .text-center {\n text-align: center;\n }\n .font-mono {\n font-family: var(--font-mono);\n }\n .text-2xl {\n font-size: var(--text-2xl);\n line-height: var(--tw-leading,var(--text-2xl--line-height));\n }\n .text-sm {\n font-size: var(--text-sm);\n line-height: var(--tw-leading,var(--text-sm--line-height));\n }\n .text-sm\\! {\n font-size: var(--text-sm) !important;\n line-height: var(--tw-leading,var(--text-sm--line-height)) !important;\n }\n .text-xs {\n font-size: var(--text-xs);\n line-height: var(--tw-leading,var(--text-xs--line-height));\n }\n .text-xs\\! {\n font-size: var(--text-xs) !important;\n line-height: var(--tw-leading,var(--text-xs--line-height)) !important;\n }\n .font-bold {\n --tw-font-weight:var(--font-weight-bold);\n font-weight: var(--font-weight-bold);\n }\n .font-medium {\n --tw-font-weight:var(--font-weight-medium);\n font-weight: var(--font-weight-medium);\n }\n .font-semibold {\n --tw-font-weight:var(--font-weight-semibold);\n font-weight: var(--font-weight-semibold);\n }\n .font-semibold\\! {\n --tw-font-weight:var(--font-weight-semibold) !important;\n font-weight: var(--font-weight-semibold) !important;\n }\n .text-black {\n color: var(--color-black);\n }\n .text-gray-500 {\n color: var(--color-gray-500);\n }\n .text-gray-600 {\n color: var(--color-gray-600);\n }\n .text-gray-700 {\n color: var(--color-gray-700);\n }\n .text-gray-900 {\n color: var(--color-gray-900);\n }\n .text-green-400 {\n color: var(--color-green-400);\n }\n .text-green-800 {\n color: var(--color-green-800);\n }\n .text-white {\n color: var(--color-white);\n }\n .uppercase {\n text-transform: uppercase;\n }\n .underline {\n text-decoration-line: underline;\n }\n .shadow {\n --tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);\n box-shadow:\n var(--tw-inset-shadow),\n var(--tw-inset-ring-shadow),\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow);\n }\n .outline {\n outline-style: var(--tw-outline-style);\n outline-width: 1px;\n }\n .blur {\n --tw-blur:blur(8px);\n filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);\n }\n .filter {\n filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);\n }\n .transition {\n transition-property:\n color,\n background-color,\n border-color,\n outline-color,\n text-decoration-color,\n fill,\n stroke,\n --tw-gradient-from,\n --tw-gradient-via,\n --tw-gradient-to,\n opacity,\n box-shadow,\n transform,\n translate,\n scale,\n rotate,\n filter,\n -webkit-backdrop-filter,\n backdrop-filter,\n display,\n content-visibility,\n overlay,\n pointer-events;\n transition-timing-function: var(--tw-ease,var(--default-transition-timing-function));\n transition-duration: var(--tw-duration,var(--default-transition-duration));\n }\n}\n@property --tw-border-style { syntax:"*";inherits:false;initial-value:solid }\n@property --tw-font-weight { syntax:"*";inherits:false }\n@property --tw-shadow { syntax:"*";inherits:false;initial-value:0 0 #0000 }\n@property --tw-shadow-color { syntax:"*";inherits:false }\n@property --tw-shadow-alpha { syntax:"<percentage>";inherits:false;initial-value:100% }\n@property --tw-inset-shadow { syntax:"*";inherits:false;initial-value:0 0 #0000 }\n@property --tw-inset-shadow-color { syntax:"*";inherits:false }\n@property --tw-inset-shadow-alpha { syntax:"<percentage>";inherits:false;initial-value:100% }\n@property --tw-ring-color { syntax:"*";inherits:false }\n@property --tw-ring-shadow { syntax:"*";inherits:false;initial-value:0 0 #0000 }\n@property --tw-inset-ring-color { syntax:"*";inherits:false }\n@property --tw-inset-ring-shadow { syntax:"*";inherits:false;initial-value:0 0 #0000 }\n@property --tw-ring-inset { syntax:"*";inherits:false }\n@property --tw-ring-offset-width { syntax:"<length>";inherits:false;initial-value:0 }\n@property --tw-ring-offset-color { syntax:"*";inherits:false;initial-value:#fff }\n@property --tw-ring-offset-shadow { syntax:"*";inherits:false;initial-value:0 0 #0000 }\n@property --tw-outline-style { syntax:"*";inherits:false;initial-value:solid }\n@property --tw-blur { syntax:"*";inherits:false }\n@property --tw-brightness { syntax:"*";inherits:false }\n@property --tw-contrast { syntax:"*";inherits:false }\n@property --tw-grayscale { syntax:"*";inherits:false }\n@property --tw-hue-rotate { syntax:"*";inherits:false }\n@property --tw-invert { syntax:"*";inherits:false }\n@property --tw-opacity { syntax:"*";inherits:false }\n@property --tw-saturate { syntax:"*";inherits:false }\n@property --tw-sepia { syntax:"*";inherits:false }\n@property --tw-drop-shadow { syntax:"*";inherits:false }\n@property --tw-drop-shadow-color { syntax:"*";inherits:false }\n@property --tw-drop-shadow-alpha { syntax:"<percentage>";inherits:false;initial-value:100% }\n@property --tw-drop-shadow-size { syntax:"*";inherits:false }\n');
399
28
  //# sourceMappingURL=index.mjs.map
400
29
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/lib/utils.ts","../src/components/ui/Button/Button.tsx","../src/components/ui/Input/Input.tsx","../src/components/ui/Card/Card.tsx","../src/components/ui/Badge/Badge.tsx","../src/components/ui/Avatar/Avatar.tsx"],"names":["sizeStyles","jsxs","jsx","variantStyles"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASO,SAAS,MAAM,MAAA,EAA8B;AAClD,EAAA,MAAM,SAAmB,EAAC;AAE1B,EAAA,KAAA,MAAW,SAAS,MAAA,EAAQ;AAC1B,IAAA,IAAI,CAAC,KAAA,IAAS,KAAA,KAAU,CAAA,EAAG;AAC3B,IAAA,IAAI,OAAO,UAAU,QAAA,EAAU;AAC7B,MAAA,MAAA,CAAO,KAAK,KAAK,CAAA;AAAA,IACnB,WAAW,OAAO,KAAA,KAAU,QAAA,IAAY,OAAO,UAAU,QAAA,EAAU;AACjE,MAAA,MAAA,CAAO,IAAA,CAAK,MAAA,CAAO,KAAK,CAAC,CAAA;AAAA,IAC3B,CAAA,MAAA,IAAW,KAAA,CAAM,OAAA,CAAQ,KAAK,CAAA,EAAG;AAC/B,MAAA,MAAM,MAAA,GAAS,EAAA,CAAG,GAAI,KAAsB,CAAA;AAC5C,MAAA,IAAI,MAAA,EAAQ,MAAA,CAAO,IAAA,CAAK,MAAM,CAAA;AAAA,IAChC;AAAA,EACF;AAEA,EAAA,OAAO,MAAA,CAAO,KAAK,GAAG,CAAA,CAAE,QAAQ,MAAA,EAAQ,GAAG,EAAE,IAAA,EAAK;AACpD;ACJA,IAAM,aAAA,GAA+C;AAAA,EACnD,OAAA,EACE,yFAAA;AAAA,EACF,SAAA,EACE,4FAAA;AAAA,EACF,OAAA,EACE,qHAAA;AAAA,EACF,KAAA,EACE,+FAAA;AAAA,EACF,WAAA,EACE;AACJ,CAAA;AAEA,IAAM,UAAA,GAAyC;AAAA,EAC7C,EAAA,EAAI,0BAAA;AAAA,EACJ,EAAA,EAAI,yBAAA;AAAA,EACJ,EAAA,EAAI;AACN,CAAA;AAEO,SAAS,OAAO,EAAA,EAWP;AAXO,EAAA,IAAA,EAAA,GAAA,EAAA,EACrB;AAAA,IAAA,OAAA,GAAU,SAAA;AAAA,IACV,IAAA,GAAO,IAAA;AAAA,IACP,OAAA,GAAU,KAAA;AAAA,IACV,QAAA;AAAA,IACA,SAAA;AAAA,IACA,SAAA,GAAY,KAAA;AAAA,IACZ,QAAA;AAAA,IACA,SAAA;AAAA,IACA;AAAA,GAjDF,GAwCuB,EAAA,EAUlB,KAAA,GAAA,SAAA,CAVkB,EAAA,EAUlB;AAAA,IATH,SAAA;AAAA,IACA,MAAA;AAAA,IACA,SAAA;AAAA,IACA,UAAA;AAAA,IACA,WAAA;AAAA,IACA,WAAA;AAAA,IACA,UAAA;AAAA,IACA,WAAA;AAAA,IACA;AAAA,GAAA,CAAA;AAGA,EAAA,MAAM,aAAa,QAAA,IAAY,OAAA;AAE/B,EAAA,uBACE,IAAA;AAAA,IAAC,QAAA;AAAA,IAAA,aAAA,CAAA,cAAA,CAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,gEAAA;AAAA,QACA,4CAAA;AAAA,QACA,6EAAA;AAAA,QACA,kDAAA;AAAA,QACA,cAAc,OAAO,CAAA;AAAA,QACrB,WAAW,IAAI,CAAA;AAAA,QACf,SAAA,IAAa,QAAA;AAAA,QACb;AAAA,OACF;AAAA,MACA,QAAA,EAAU;AAAA,KAAA,EACN,KAAA,CAAA,EAZL;AAAA,MAcE,QAAA,EAAA;AAAA,QAAA,OAAA,mBACC,GAAA,CAAC,WAAQ,IAAA,EAAY,CAAA,GAErB,4BAAY,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,UAAA,EAAY,QAAA,EAAA,QAAA,EAAS,CAAA;AAAA,QAElD,QAAA;AAAA,QACA,CAAC,OAAA,IAAW,SAAA,wBACV,MAAA,EAAA,EAAK,SAAA,EAAU,YAAY,QAAA,EAAA,SAAA,EAAU;AAAA;AAAA,KAAA;AAAA,GAE1C;AAEJ;AAEA,SAAS,OAAA,CAAQ,EAAE,IAAA,EAAK,EAAyB;AAC/C,EAAA,MAAM,cAAc,IAAA,KAAS,IAAA,GAAO,SAAA,GAAY,IAAA,KAAS,OAAO,SAAA,GAAY,SAAA;AAC5E,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,uBAAA,EAAyB,WAAW,CAAA;AAAA,MAClD,KAAA,EAAM,4BAAA;AAAA,MACN,IAAA,EAAK,MAAA;AAAA,MACL,OAAA,EAAQ,WAAA;AAAA,MAER,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAU,YAAA;AAAA,YACV,EAAA,EAAG,IAAA;AAAA,YACH,EAAA,EAAG,IAAA;AAAA,YACH,CAAA,EAAE,IAAA;AAAA,YACF,MAAA,EAAO,cAAA;AAAA,YACP,WAAA,EAAY;AAAA;AAAA,SACd;AAAA,wBACA,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAU,YAAA;AAAA,YACV,IAAA,EAAK,cAAA;AAAA,YACL,CAAA,EAAE;AAAA;AAAA;AACJ;AAAA;AAAA,GACF;AAEJ;AC1FA,IAAMA,WAAAA,GAAwC;AAAA,EAC5C,EAAA,EAAI,oBAAA;AAAA,EACJ,EAAA,EAAI,mBAAA;AAAA,EACJ,EAAA,EAAI;AACN,CAAA;AAEO,SAAS,MAAM,EAAA,EAWP;AAXO,EAAA,IAAA,EAAA,GAAA,EAAA,EACpB;AAAA,IAAA,KAAA;AAAA,IACA,IAAA;AAAA,IACA,KAAA;AAAA,IACA,IAAA,GAAO,IAAA;AAAA,IACP,SAAA;AAAA,IACA,UAAA;AAAA,IACA,SAAA,GAAY,KAAA;AAAA,IACZ,SAAA;AAAA,IACA;AAAA,GA/BF,GAsBsB,EAAA,EAUjB,KAAA,GAAA,SAAA,CAViB,EAAA,EAUjB;AAAA,IATH,OAAA;AAAA,IACA,MAAA;AAAA,IACA,OAAA;AAAA,IACA,MAAA;AAAA,IACA,WAAA;AAAA,IACA,YAAA;AAAA,IACA,WAAA;AAAA,IACA,WAAA;AAAA,IACA;AAAA,GAAA,CAAA;AAGA,EAAA,MAAM,OAAA,GAAU,EAAA,IAAA,IAAA,GAAA,EAAA,GAAM,KAAA,IAAA,IAAA,GAAA,MAAA,GAAA,KAAA,CAAO,WAAA,EAAA,CAAc,QAAQ,MAAA,EAAQ,GAAA,CAAA;AAE3D,EAAA,uBACEC,KAAC,KAAA,EAAA,EAAI,SAAA,EAAW,GAAG,uBAAA,EAAyB,SAAA,IAAa,QAAQ,CAAA,EAC9D,QAAA,EAAA;AAAA,IAAA,KAAA,oBACCC,GAAAA;AAAA,MAAC,OAAA;AAAA,MAAA;AAAA,QACC,OAAA,EAAS,OAAA;AAAA,QACT,SAAA,EAAU,mCAAA;AAAA,QAET,QAAA,EAAA;AAAA;AAAA,KACH;AAAA,oBAEFD,IAAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,4BAAA,EACZ,QAAA,EAAA;AAAA,MAAA,SAAA,oBACCC,GAAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,mDACb,QAAA,EAAA,SAAA,EACH,CAAA;AAAA,sBAEFA,GAAAA;AAAA,QAAC,OAAA;AAAA,QAAA,cAAA,CAAA;AAAA,UACC,EAAA,EAAI,OAAA;AAAA,UACJ,SAAA,EAAW,EAAA;AAAA,YACT,2EAAA;AAAA,YACA,gCAAA;AAAA,YACA,qDAAA;AAAA,YACA,wEAAA;AAAA,YACAF,YAAW,IAAI,CAAA;AAAA,YACf,QACI,wDAAA,GACA,2DAAA;AAAA,YACJ,SAAA,IAAa,MAAA;AAAA,YACb,UAAA,IAAc,MAAA;AAAA,YACd;AAAA;AACF,SAAA,EACI,KAAA;AAAA,OACN;AAAA,MACC,8BACCE,GAAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,oDACb,QAAA,EAAA,UAAA,EACH;AAAA,KAAA,EAEJ,CAAA;AAAA,IAAA,CACE,IAAA,IAAQ,KAAA,qBACRA,GAAAA,CAAC,GAAA,EAAA,EAAE,SAAA,EAAW,EAAA,CAAG,SAAA,EAAW,KAAA,GAAQ,cAAA,GAAiB,eAAe,CAAA,EACjE,kCAAS,IAAA,EACZ;AAAA,GAAA,EAEJ,CAAA;AAEJ;ACxEA,IAAM,YAAA,GAAe;AAAA,EACnB,IAAA,EAAM,EAAA;AAAA,EACN,EAAA,EAAI,WAAA;AAAA,EACJ,EAAA,EAAI,WAAA;AAAA,EACJ,EAAA,EAAI;AACN,CAAA;AAEA,IAAM,aAAA,GAAgB;AAAA,EACpB,IAAA,EAAM,EAAA;AAAA,EACN,EAAA,EAAI,KAAA;AAAA,EACJ,EAAA,EAAI,KAAA;AAAA,EACJ,EAAA,EAAI;AACN,CAAA;AAEO,SAAS,KAAK,EAAA,EAQP;AARO,EAAA,IAAA,EAAA,GAAA,EAAA,EACnB;AAAA,IAAA,MAAA,GAAS,IAAA;AAAA,IACT,SAAA,GAAY,KAAA;AAAA,IACZ,QAAA,GAAW,IAAA;AAAA,IACX,OAAA,GAAU,IAAA;AAAA,IACV,SAAA;AAAA,IACA;AAAA,GA9BF,GAwBqB,EAAA,EAOhB,KAAA,GAAA,SAAA,CAPgB,EAAA,EAOhB;AAAA,IANH,QAAA;AAAA,IACA,WAAA;AAAA,IACA,UAAA;AAAA,IACA,SAAA;AAAA,IACA,WAAA;AAAA,IACA;AAAA,GAAA,CAAA;AAGA,EAAA,uBACEA,GAAAA;AAAA,IAAC,KAAA;AAAA,IAAA,aAAA,CAAA,cAAA,CAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,qBAAA;AAAA,QACA,aAAa,MAAM,CAAA;AAAA,QACnB,cAAc,OAAO,CAAA;AAAA,QACrB,QAAA,IAAY,wBAAA;AAAA,QACZ,SAAA,IACE,+DAAA;AAAA,QACF;AAAA;AACF,KAAA,EACI,KAAA,CAAA,EAVL;AAAA,MAYE;AAAA,KAAA;AAAA,GACH;AAEJ;AAIO,SAAS,WAAW,EAAA,EAAoD;AAApD,EAAA,IAAA,EAAA,GAAA,EAAA,EAAE,aAAW,QAAA,EArDxC,GAqD2B,IAA0B,KAAA,GAAA,SAAA,CAA1B,EAAA,EAA0B,CAAxB,WAAA,EAAW,UAAA,CAAA,CAAA;AACtC,EAAA,uBACEA,GAAAA,CAAC,KAAA,EAAA,aAAA,CAAA,cAAA,CAAA,EAAI,SAAA,EAAW,EAAA,CAAG,4BAA4B,SAAS,CAAA,EAAA,EAAO,KAAA,CAAA,EAA9D,EACE,QAAA,EAAA,CACH,CAAA;AAEJ;AAIO,SAAS,UAAU,EAAA,EAAmD;AAAnD,EAAA,IAAA,EAAA,GAAA,EAAA,EAAE,aAAW,QAAA,EA/DvC,GA+D0B,IAA0B,KAAA,GAAA,SAAA,CAA1B,EAAA,EAA0B,CAAxB,WAAA,EAAW,UAAA,CAAA,CAAA;AACrC,EAAA,uBACEA,GAAAA;AAAA,IAAC,IAAA;AAAA,IAAA,aAAA,CAAA,cAAA,CAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,qCAAA,EAAuC,SAAS;AAAA,KAAA,EAC1D,KAAA,CAAA,EAFL;AAAA,MAIE;AAAA,KAAA;AAAA,GACH;AAEJ;AAKO,SAAS,gBAAgB,EAAA,EAIP;AAJO,EAAA,IAAA,EAAA,GAAA,EAAA,EAC9B;AAAA,IAAA,SAAA;AAAA,IACA;AAAA,GA/EF,GA6EgC,EAAA,EAG3B,KAAA,GAAA,SAAA,CAH2B,EAAA,EAG3B;AAAA,IAFH,WAAA;AAAA,IACA;AAAA,GAAA,CAAA;AAGA,EAAA,uBACEA,GAAAA,CAAC,GAAA,EAAA,aAAA,CAAA,cAAA,CAAA,EAAE,SAAA,EAAW,EAAA,CAAG,yBAAyB,SAAS,CAAA,EAAA,EAAO,KAAA,CAAA,EAAzD,EACE,QAAA,EAAA,CACH,CAAA;AAEJ;AAIO,SAAS,YAAY,EAAA,EAIP;AAJO,EAAA,IAAA,EAAA,GAAA,EAAA,EAC1B;AAAA,IAAA,SAAA;AAAA,IACA;AAAA,GA7FF,GA2F4B,EAAA,EAGvB,KAAA,GAAA,SAAA,CAHuB,EAAA,EAGvB;AAAA,IAFH,WAAA;AAAA,IACA;AAAA,GAAA,CAAA;AAGA,EAAA,uBACEA,GAAAA,CAAC,KAAA,EAAA,aAAA,CAAA,cAAA,CAAA,EAAI,SAAA,EAAW,EAAA,CAAG,yBAAyB,SAAS,CAAA,EAAA,EAAO,KAAA,CAAA,EAA3D,EACE,QAAA,EAAA,CACH,CAAA;AAEJ;AAIO,SAAS,WAAW,EAAA,EAAoD;AAApD,EAAA,IAAA,EAAA,GAAA,EAAA,EAAE,aAAW,QAAA,EAzGxC,GAyG2B,IAA0B,KAAA,GAAA,SAAA,CAA1B,EAAA,EAA0B,CAAxB,WAAA,EAAW,UAAA,CAAA,CAAA;AACtC,EAAA,uBACEA,GAAAA;AAAA,IAAC,KAAA;AAAA,IAAA,aAAA,CAAA,cAAA,CAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,8BAAA,EAAgC,SAAS;AAAA,KAAA,EACnD,KAAA,CAAA,EAFL;AAAA,MAIE;AAAA,KAAA;AAAA,GACH;AAEJ;AClGA,IAAMC,cAAAA,GAA8C;AAAA,EAClD,OAAA,EAAS,2BAAA;AAAA,EACT,OAAA,EAAS,2BAAA;AAAA,EACT,OAAA,EAAS,6BAAA;AAAA,EACT,OAAA,EAAS,+BAAA;AAAA,EACT,MAAA,EAAQ,yBAAA;AAAA,EACR,IAAA,EAAM;AACR,CAAA;AAEA,IAAM,SAAA,GAA0C;AAAA,EAC9C,OAAA,EAAS,aAAA;AAAA,EACT,OAAA,EAAS,aAAA;AAAA,EACT,OAAA,EAAS,cAAA;AAAA,EACT,OAAA,EAAS,eAAA;AAAA,EACT,MAAA,EAAQ,YAAA;AAAA,EACR,IAAA,EAAM;AACR,CAAA;AAEO,SAAS,MAAM,EAAA,EAMP;AANO,EAAA,IAAA,EAAA,GAAA,EAAA,EACpB;AAAA,IAAA,OAAA,GAAU,SAAA;AAAA,IACV,GAAA,GAAM,KAAA;AAAA,IACN,SAAA;AAAA,IACA;AAAA,GAtCF,GAkCsB,EAAA,EAKjB,KAAA,GAAA,SAAA,CALiB,EAAA,EAKjB;AAAA,IAJH,SAAA;AAAA,IACA,KAAA;AAAA,IACA,WAAA;AAAA,IACA;AAAA,GAAA,CAAA;AAGA,EAAA,uBACEF,IAAAA;AAAA,IAAC,MAAA;AAAA,IAAA,aAAA,CAAA,cAAA,CAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,iFAAA;AAAA,QACAE,eAAc,OAAO,CAAA;AAAA,QACrB;AAAA;AACF,KAAA,EACI,KAAA,CAAA,EANL;AAAA,MAQE,QAAA,EAAA;AAAA,QAAA,GAAA,oBACCD,GAAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAW,EAAA,CAAG,0BAAA,EAA4B,SAAA,CAAU,OAAO,CAAC;AAAA;AAAA,SAC9D;AAAA,QAED;AAAA;AAAA,KAAA;AAAA,GACH;AAEJ;AC5CA,IAAMF,WAAAA,GAAyC;AAAA,EAC7C,EAAA,EAAI,iBAAA;AAAA,EACJ,EAAA,EAAI,iBAAA;AAAA,EACJ,EAAA,EAAI,mBAAA;AAAA,EACJ,EAAA,EAAI,qBAAA;AAAA,EACJ,EAAA,EAAI;AACN,CAAA;AAEA,SAAS,YAAY,IAAA,EAAsB;AACzC,EAAA,OAAO,IAAA,CACJ,KAAA,CAAM,GAAG,CAAA,CACT,KAAA,CAAM,GAAG,CAAC,CAAA,CACV,GAAA,CAAI,CAAC,IAAA,KAAM;AA1BhB,IAAA,IAAA,EAAA,EAAA,EAAA;AA0BmB,IAAA,OAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,IAAA,CAAK,CAAC,CAAA,KAAN,IAAA,GAAA,MAAA,GAAA,EAAA,CAAS,WAAA,EAAA,KAAT,IAAA,GAAA,EAAA,GAA0B,EAAA;AAAA,EAAA,CAAE,CAAA,CAC1C,KAAK,EAAE,CAAA;AACZ;AAEO,SAAS,OAAO,EAAA,EAOP;AAPO,EAAA,IAAA,EAAA,GAAA,EAAA,EACrB;AAAA,IAAA,GAAA;AAAA,IACA,GAAA,GAAM,EAAA;AAAA,IACN,QAAA;AAAA,IACA,IAAA,GAAO,IAAA;AAAA,IACP;AAAA,GAnCF,GA8BuB,EAAA,EAMlB,KAAA,GAAA,SAAA,CANkB,EAAA,EAMlB;AAAA,IALH,KAAA;AAAA,IACA,KAAA;AAAA,IACA,UAAA;AAAA,IACA,MAAA;AAAA,IACA;AAAA,GAAA,CAAA;AAGA,EAAA,MAAM,CAAC,QAAA,EAAU,WAAW,CAAA,GAAI,KAAA,CAAM,SAAS,KAAK,CAAA;AACpD,EAAA,MAAM,YAAA,GAAe,CAAC,GAAA,IAAO,QAAA;AAC7B,EAAA,MAAM,QAAA,GAAW,WAAW,WAAA,CAAY,QAAQ,IAAI,GAAA,GAAM,WAAA,CAAY,GAAG,CAAA,GAAI,GAAA;AAE7E,EAAA,uBACEE,GAAAA;AAAA,IAAC,MAAA;AAAA,IAAA,aAAA,CAAA,cAAA,CAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,oGAAA;AAAA,QACAF,YAAW,IAAI,CAAA;AAAA,QACf;AAAA;AACF,KAAA,EACI,KAAA,CAAA,EANL;AAAA,MAQE,QAAA,EAAA,CAAC,YAAA;AAAA;AAAA,wBAEAE,GAAAA;AAAA,UAAC,KAAA;AAAA,UAAA;AAAA,YACC,GAAA;AAAA,YACA,GAAA;AAAA,YACA,SAAA,EAAU,4BAAA;AAAA,YACV,OAAA,EAAS,MAAM,WAAA,CAAY,IAAI;AAAA;AAAA;AACjC,0BAEAA,GAAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,yCACb,QAAA,EAAA,QAAA,EACH;AAAA,KAAA;AAAA,GAEJ;AAEJ","file":"index.mjs","sourcesContent":["export type ClassValue =\r\n | string\r\n | number\r\n | bigint\r\n | boolean\r\n | undefined\r\n | null\r\n | ClassValue[];\r\n\r\nexport function cn(...inputs: ClassValue[]): string {\r\n const result: string[] = [];\r\n\r\n for (const input of inputs) {\r\n if (!input && input !== 0) continue;\r\n if (typeof input === \"string\") {\r\n result.push(input);\r\n } else if (typeof input === \"number\" || typeof input === \"bigint\") {\r\n result.push(String(input));\r\n } else if (Array.isArray(input)) {\r\n const nested = cn(...(input as ClassValue[]));\r\n if (nested) result.push(nested);\r\n }\r\n }\r\n\r\n return result.join(\" \").replace(/\\s+/g, \" \").trim();\r\n}\r\n","import React from \"react\";\nimport { cn } from \"../../../lib/utils\";\n\nexport type ButtonVariant =\n | \"primary\"\n | \"secondary\"\n | \"outline\"\n | \"ghost\"\n | \"destructive\";\nexport type ButtonSize = \"sm\" | \"md\" | \"lg\";\n\nexport interface ButtonProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement> {\n variant?: ButtonVariant;\n size?: ButtonSize;\n loading?: boolean;\n leftIcon?: React.ReactNode;\n rightIcon?: React.ReactNode;\n fullWidth?: boolean;\n}\n\nconst variantStyles: Record<ButtonVariant, string> = {\n primary:\n \"bg-blue-600 text-white hover:bg-blue-700 active:bg-blue-800 focus-visible:ring-blue-500\",\n secondary:\n \"bg-gray-100 text-gray-900 hover:bg-gray-200 active:bg-gray-300 focus-visible:ring-gray-400\",\n outline:\n \"border border-gray-300 bg-transparent text-gray-900 hover:bg-gray-50 active:bg-gray-100 focus-visible:ring-gray-400\",\n ghost:\n \"bg-transparent text-gray-700 hover:bg-gray-100 active:bg-gray-200 focus-visible:ring-gray-400\",\n destructive:\n \"bg-red-600 text-white hover:bg-red-700 active:bg-red-800 focus-visible:ring-red-500\",\n};\n\nconst sizeStyles: Record<ButtonSize, string> = {\n sm: \"h-8 px-3 text-sm gap-1.5\",\n md: \"h-10 px-4 text-sm gap-2\",\n lg: \"h-12 px-6 text-base gap-2.5\",\n};\n\nexport function Button({\n variant = \"primary\",\n size = \"md\",\n loading = false,\n leftIcon,\n rightIcon,\n fullWidth = false,\n children,\n className,\n disabled,\n ...props\n}: ButtonProps) {\n const isDisabled = disabled || loading;\n\n return (\n <button\n className={cn(\n \"inline-flex items-center justify-center rounded-md font-medium\",\n \"transition-colors duration-150 ease-in-out\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2\",\n \"disabled:pointer-events-none disabled:opacity-50\",\n variantStyles[variant],\n sizeStyles[size],\n fullWidth && \"w-full\",\n className\n )}\n disabled={isDisabled}\n {...props}\n >\n {loading ? (\n <Spinner size={size} />\n ) : (\n leftIcon && <span className=\"shrink-0\">{leftIcon}</span>\n )}\n {children}\n {!loading && rightIcon && (\n <span className=\"shrink-0\">{rightIcon}</span>\n )}\n </button>\n );\n}\n\nfunction Spinner({ size }: { size: ButtonSize }) {\n const spinnerSize = size === \"sm\" ? \"h-3 w-3\" : size === \"lg\" ? \"h-5 w-5\" : \"h-4 w-4\";\n return (\n <svg\n className={cn(\"animate-spin shrink-0\", spinnerSize)}\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n >\n <circle\n className=\"opacity-25\"\n cx=\"12\"\n cy=\"12\"\n r=\"10\"\n stroke=\"currentColor\"\n strokeWidth=\"4\"\n />\n <path\n className=\"opacity-75\"\n fill=\"currentColor\"\n d=\"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z\"\n />\n </svg>\n );\n}\n","import React from \"react\";\nimport { cn } from \"../../../lib/utils\";\n\nexport type InputSize = \"sm\" | \"md\" | \"lg\";\n\nexport interface InputProps\n extends Omit<React.InputHTMLAttributes<HTMLInputElement>, \"size\"> {\n label?: string;\n hint?: string;\n error?: string;\n size?: InputSize;\n leftAddon?: React.ReactNode;\n rightAddon?: React.ReactNode;\n fullWidth?: boolean;\n}\n\nconst sizeStyles: Record<InputSize, string> = {\n sm: \"h-8 px-2.5 text-sm\",\n md: \"h-10 px-3 text-sm\",\n lg: \"h-12 px-4 text-base\",\n};\n\nexport function Input({\n label,\n hint,\n error,\n size = \"md\",\n leftAddon,\n rightAddon,\n fullWidth = false,\n className,\n id,\n ...props\n}: InputProps) {\n const inputId = id ?? label?.toLowerCase().replace(/\\s+/g, \"-\");\n\n return (\n <div className={cn(\"flex flex-col gap-1.5\", fullWidth && \"w-full\")}>\n {label && (\n <label\n htmlFor={inputId}\n className=\"text-sm font-medium text-gray-700\"\n >\n {label}\n </label>\n )}\n <div className=\"relative flex items-center\">\n {leftAddon && (\n <span className=\"absolute left-3 flex items-center text-gray-500\">\n {leftAddon}\n </span>\n )}\n <input\n id={inputId}\n className={cn(\n \"w-full rounded-md border bg-white text-gray-900 placeholder:text-gray-400\",\n \"transition-colors duration-150\",\n \"focus:outline-none focus:ring-2 focus:ring-offset-0\",\n \"disabled:cursor-not-allowed disabled:bg-gray-50 disabled:text-gray-500\",\n sizeStyles[size],\n error\n ? \"border-red-400 focus:border-red-400 focus:ring-red-300\"\n : \"border-gray-300 focus:border-blue-500 focus:ring-blue-300\",\n leftAddon && \"pl-9\",\n rightAddon && \"pr-9\",\n className\n )}\n {...props}\n />\n {rightAddon && (\n <span className=\"absolute right-3 flex items-center text-gray-500\">\n {rightAddon}\n </span>\n )}\n </div>\n {(hint || error) && (\n <p className={cn(\"text-xs\", error ? \"text-red-500\" : \"text-gray-500\")}>\n {error ?? hint}\n </p>\n )}\n </div>\n );\n}\n","import React from \"react\";\nimport { cn } from \"../../../lib/utils\";\n\nexport interface CardProps extends React.HTMLAttributes<HTMLDivElement> {\n shadow?: \"none\" | \"sm\" | \"md\" | \"lg\";\n hoverable?: boolean;\n bordered?: boolean;\n padding?: \"none\" | \"sm\" | \"md\" | \"lg\";\n}\n\nconst shadowStyles = {\n none: \"\",\n sm: \"shadow-sm\",\n md: \"shadow-md\",\n lg: \"shadow-lg\",\n};\n\nconst paddingStyles = {\n none: \"\",\n sm: \"p-4\",\n md: \"p-6\",\n lg: \"p-8\",\n};\n\nexport function Card({\n shadow = \"sm\",\n hoverable = false,\n bordered = true,\n padding = \"md\",\n className,\n children,\n ...props\n}: CardProps) {\n return (\n <div\n className={cn(\n \"rounded-xl bg-white\",\n shadowStyles[shadow],\n paddingStyles[padding],\n bordered && \"border border-gray-200\",\n hoverable &&\n \"cursor-pointer transition-shadow duration-200 hover:shadow-md\",\n className\n )}\n {...props}\n >\n {children}\n </div>\n );\n}\n\nexport interface CardHeaderProps extends React.HTMLAttributes<HTMLDivElement> {}\n\nexport function CardHeader({ className, children, ...props }: CardHeaderProps) {\n return (\n <div className={cn(\"mb-4 flex flex-col gap-1\", className)} {...props}>\n {children}\n </div>\n );\n}\n\nexport interface CardTitleProps extends React.HTMLAttributes<HTMLHeadingElement> {}\n\nexport function CardTitle({ className, children, ...props }: CardTitleProps) {\n return (\n <h3\n className={cn(\"text-lg font-semibold text-gray-900\", className)}\n {...props}\n >\n {children}\n </h3>\n );\n}\n\nexport interface CardDescriptionProps\n extends React.HTMLAttributes<HTMLParagraphElement> {}\n\nexport function CardDescription({\n className,\n children,\n ...props\n}: CardDescriptionProps) {\n return (\n <p className={cn(\"text-sm text-gray-500\", className)} {...props}>\n {children}\n </p>\n );\n}\n\nexport interface CardContentProps extends React.HTMLAttributes<HTMLDivElement> {}\n\nexport function CardContent({\n className,\n children,\n ...props\n}: CardContentProps) {\n return (\n <div className={cn(\"text-sm text-gray-700\", className)} {...props}>\n {children}\n </div>\n );\n}\n\nexport interface CardFooterProps extends React.HTMLAttributes<HTMLDivElement> {}\n\nexport function CardFooter({ className, children, ...props }: CardFooterProps) {\n return (\n <div\n className={cn(\"mt-4 flex items-center gap-2\", className)}\n {...props}\n >\n {children}\n </div>\n );\n}\n","import React from \"react\";\nimport { cn } from \"../../../lib/utils\";\n\nexport type BadgeVariant =\n | \"default\"\n | \"primary\"\n | \"success\"\n | \"warning\"\n | \"danger\"\n | \"info\";\n\nexport interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement> {\n variant?: BadgeVariant;\n dot?: boolean;\n}\n\nconst variantStyles: Record<BadgeVariant, string> = {\n default: \"bg-gray-100 text-gray-700\",\n primary: \"bg-blue-100 text-blue-700\",\n success: \"bg-green-100 text-green-700\",\n warning: \"bg-yellow-100 text-yellow-700\",\n danger: \"bg-red-100 text-red-700\",\n info: \"bg-sky-100 text-sky-700\",\n};\n\nconst dotStyles: Record<BadgeVariant, string> = {\n default: \"bg-gray-500\",\n primary: \"bg-blue-500\",\n success: \"bg-green-500\",\n warning: \"bg-yellow-500\",\n danger: \"bg-red-500\",\n info: \"bg-sky-500\",\n};\n\nexport function Badge({\n variant = \"default\",\n dot = false,\n className,\n children,\n ...props\n}: BadgeProps) {\n return (\n <span\n className={cn(\n \"inline-flex items-center gap-1.5 rounded-full px-2.5 py-0.5 text-xs font-medium\",\n variantStyles[variant],\n className\n )}\n {...props}\n >\n {dot && (\n <span\n className={cn(\"h-1.5 w-1.5 rounded-full\", dotStyles[variant])}\n />\n )}\n {children}\n </span>\n );\n}\n","\"use client\";\n\nimport React from \"react\";\nimport { cn } from \"../../../lib/utils\";\n\nexport type AvatarSize = \"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\";\n\nexport interface AvatarProps extends React.HTMLAttributes<HTMLSpanElement> {\n src?: string;\n alt?: string;\n fallback?: string;\n size?: AvatarSize;\n}\n\nconst sizeStyles: Record<AvatarSize, string> = {\n xs: \"h-6 w-6 text-xs\",\n sm: \"h-8 w-8 text-sm\",\n md: \"h-10 w-10 text-sm\",\n lg: \"h-12 w-12 text-base\",\n xl: \"h-16 w-16 text-lg\",\n};\n\nfunction getInitials(name: string): string {\n return name\n .split(\" \")\n .slice(0, 2)\n .map((word) => word[0]?.toUpperCase() ?? \"\")\n .join(\"\");\n}\n\nexport function Avatar({\n src,\n alt = \"\",\n fallback,\n size = \"md\",\n className,\n ...props\n}: AvatarProps) {\n const [imgError, setImgError] = React.useState(false);\n const showFallback = !src || imgError;\n const initials = fallback ? getInitials(fallback) : alt ? getInitials(alt) : \"?\";\n\n return (\n <span\n className={cn(\n \"relative inline-flex shrink-0 items-center justify-center overflow-hidden rounded-full bg-gray-200\",\n sizeStyles[size],\n className\n )}\n {...props}\n >\n {!showFallback ? (\n // eslint-disable-next-line @next/next/no-img-element\n <img\n src={src}\n alt={alt}\n className=\"h-full w-full object-cover\"\n onError={() => setImgError(true)}\n />\n ) : (\n <span className=\"font-medium text-gray-600 select-none\">\n {initials}\n </span>\n )}\n </span>\n );\n}\n"]}
1
+ {"version":3,"sources":["#style-inject:#style-inject","../src/styles/tailwind-output.css"],"names":[],"mappings":";;;;AACyB,SAAR,YAA6B,GAAA,EAAK,EAAE,QAAA,EAAS,GAAI,EAAC,EAAG;AAC1D,EAAA,IAAY,OAAO,QAAA,KAAa,WAAA,EAAa;AAE7C,EAAA,MAAM,OAAO,QAAA,CAAS,IAAA,IAAQ,SAAS,oBAAA,CAAqB,MAAM,EAAE,CAAC,CAAA;AACrE,EAAA,MAAM,KAAA,GAAQ,QAAA,CAAS,aAAA,CAAc,OAAO,CAAA;AAC5C,EAAA,KAAA,CAAM,IAAA,GAAO,UAAA;AAEb,EAAA,IAAI,aAAa,KAAA,EAAO;AACtB,IAAA,IAAI,KAAK,UAAA,EAAY;AACnB,MAAA,IAAA,CAAK,YAAA,CAAa,KAAA,EAAO,IAAA,CAAK,UAAU,CAAA;AAAA,IAC1C,CAAA,MAAO;AACL,MAAA,IAAA,CAAK,YAAY,KAAK,CAAA;AAAA,IACxB;AAAA,EACF,CAAA,MAAO;AACL,IAAA,IAAA,CAAK,YAAY,KAAK,CAAA;AAAA,EACxB;AAEA,EAAA,IAAI,MAAM,UAAA,EAAY;AACpB,IAAA,KAAA,CAAM,WAAW,OAAA,GAAU,GAAA;AAAA,EAC7B,CAAA,MAAO;AACL,IAAA,KAAA,CAAM,WAAA,CAAY,QAAA,CAAS,cAAA,CAAe,GAAG,CAAC,CAAA;AAAA,EAChD;AACF;;;ACvB8B,WAAA,CAAY,kpgBAAsugB,CAAA","file":"index.mjs","sourcesContent":["\n export default function styleInject(css, { insertAt } = {}) {\n if (!css || typeof document === 'undefined') return\n \n const head = document.head || document.getElementsByTagName('head')[0]\n const style = document.createElement('style')\n style.type = 'text/css'\n \n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild)\n } else {\n head.appendChild(style)\n }\n } else {\n head.appendChild(style)\n }\n \n if (style.styleSheet) {\n style.styleSheet.cssText = css\n } else {\n style.appendChild(document.createTextNode(css))\n }\n }\n ","import styleInject from '#style-inject';styleInject(\"/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\\n@layer properties {\\n @supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))) {\\n *,\\n :before,\\n :after,\\n ::backdrop {\\n --tw-border-style:solid;\\n --tw-font-weight:initial;\\n --tw-shadow:0 0 #0000;\\n --tw-shadow-color:initial;\\n --tw-shadow-alpha:100%;\\n --tw-inset-shadow:0 0 #0000;\\n --tw-inset-shadow-color:initial;\\n --tw-inset-shadow-alpha:100%;\\n --tw-ring-color:initial;\\n --tw-ring-shadow:0 0 #0000;\\n --tw-inset-ring-color:initial;\\n --tw-inset-ring-shadow:0 0 #0000;\\n --tw-ring-inset:initial;\\n --tw-ring-offset-width:0px;\\n --tw-ring-offset-color:#fff;\\n --tw-ring-offset-shadow:0 0 #0000;\\n --tw-outline-style:solid;\\n --tw-blur:initial;\\n --tw-brightness:initial;\\n --tw-contrast:initial;\\n --tw-grayscale:initial;\\n --tw-hue-rotate:initial;\\n --tw-invert:initial;\\n --tw-opacity:initial;\\n --tw-saturate:initial;\\n --tw-sepia:initial;\\n --tw-drop-shadow:initial;\\n --tw-drop-shadow-color:initial;\\n --tw-drop-shadow-alpha:100%;\\n --tw-drop-shadow-size:initial;\\n }\\n }\\n}\\n@layer theme {\\n :root,\\n :host {\\n --font-sans:ui-sans-serif,\\n system-ui,\\n sans-serif,\\n \\\"Apple Color Emoji\\\",\\n \\\"Segoe UI Emoji\\\",\\n \\\"Segoe UI Symbol\\\",\\n \\\"Noto Color Emoji\\\";\\n --font-mono:ui-monospace,\\n SFMono-Regular,\\n Menlo,\\n Monaco,\\n Consolas,\\n \\\"Liberation Mono\\\",\\n \\\"Courier New\\\",\\n monospace;\\n --color-red-600:oklch(57.7% .245 27.325);\\n --color-green-50:oklch(98.2% .018 155.826);\\n --color-green-100:oklch(96.2% .044 156.743);\\n --color-green-400:oklch(79.2% .209 151.711);\\n --color-green-500:oklch(72.3% .219 149.579);\\n --color-green-800:oklch(44.8% .119 151.328);\\n --color-teal-500:oklch(70.4% .14 182.503);\\n --color-blue-500:oklch(62.3% .214 259.815);\\n --color-gray-50:oklch(98.5% .002 247.839);\\n --color-gray-100:oklch(96.7% .003 264.542);\\n --color-gray-200:oklch(92.8% .006 264.531);\\n --color-gray-500:oklch(55.1% .027 264.364);\\n --color-gray-600:oklch(44.6% .03 256.802);\\n --color-gray-700:oklch(37.3% .034 259.733);\\n --color-gray-900:oklch(21% .034 264.665);\\n --color-black:#000;\\n --color-white:#fff;\\n --spacing:.25rem;\\n --container-3xl:48rem;\\n --text-xs:.75rem;\\n --text-xs--line-height:calc(1 / .75);\\n --text-sm:.875rem;\\n --text-sm--line-height:calc(1.25 / .875);\\n --text-2xl:1.5rem;\\n --text-2xl--line-height:calc(2 / 1.5);\\n --font-weight-medium:500;\\n --font-weight-semibold:600;\\n --font-weight-bold:700;\\n --radius-lg:.5rem;\\n --default-transition-duration:.15s;\\n --default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);\\n --default-font-family:var(--font-sans);\\n --default-mono-font-family:var(--font-mono);\\n }\\n}\\n@layer base {\\n *,\\n :after,\\n :before,\\n ::backdrop {\\n box-sizing: border-box;\\n border: 0 solid;\\n margin: 0;\\n padding: 0;\\n }\\n ::file-selector-button {\\n box-sizing: border-box;\\n border: 0 solid;\\n margin: 0;\\n padding: 0;\\n }\\n html,\\n :host {\\n -webkit-text-size-adjust: 100%;\\n tab-size: 4;\\n line-height: 1.5;\\n 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\\\");\\n font-feature-settings: var(--default-font-feature-settings,normal);\\n font-variation-settings: var(--default-font-variation-settings,normal);\\n -webkit-tap-highlight-color: transparent;\\n }\\n hr {\\n height: 0;\\n color: inherit;\\n border-top-width: 1px;\\n }\\n abbr:where([title]) {\\n -webkit-text-decoration: underline dotted;\\n text-decoration: underline dotted;\\n }\\n h1,\\n h2,\\n h3,\\n h4,\\n h5,\\n h6 {\\n font-size: inherit;\\n font-weight: inherit;\\n }\\n a {\\n color: inherit;\\n -webkit-text-decoration: inherit;\\n -webkit-text-decoration: inherit;\\n -webkit-text-decoration: inherit;\\n text-decoration: inherit;\\n }\\n b,\\n strong {\\n font-weight: bolder;\\n }\\n code,\\n kbd,\\n samp,\\n pre {\\n font-family: var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \\\"Liberation Mono\\\", \\\"Courier New\\\", monospace);\\n font-feature-settings: var(--default-mono-font-feature-settings,normal);\\n font-variation-settings: var(--default-mono-font-variation-settings,normal);\\n font-size: 1em;\\n }\\n small {\\n font-size: 80%;\\n }\\n sub,\\n sup {\\n vertical-align: baseline;\\n font-size: 75%;\\n line-height: 0;\\n position: relative;\\n }\\n sub {\\n bottom: -.25em;\\n }\\n sup {\\n top: -.5em;\\n }\\n table {\\n text-indent: 0;\\n border-color: inherit;\\n border-collapse: collapse;\\n }\\n :-moz-focusring {\\n outline: auto;\\n }\\n progress {\\n vertical-align: baseline;\\n }\\n summary {\\n display: list-item;\\n }\\n ol,\\n ul,\\n menu {\\n list-style: none;\\n }\\n img,\\n svg,\\n video,\\n canvas,\\n audio,\\n iframe,\\n embed,\\n object {\\n vertical-align: middle;\\n display: block;\\n }\\n img,\\n video {\\n max-width: 100%;\\n height: auto;\\n }\\n button,\\n input,\\n select,\\n optgroup,\\n textarea {\\n font: inherit;\\n font-feature-settings: inherit;\\n font-variation-settings: inherit;\\n letter-spacing: inherit;\\n color: inherit;\\n opacity: 1;\\n background-color: #0000;\\n border-radius: 0;\\n }\\n ::file-selector-button {\\n font: inherit;\\n font-feature-settings: inherit;\\n font-variation-settings: inherit;\\n letter-spacing: inherit;\\n color: inherit;\\n opacity: 1;\\n background-color: #0000;\\n border-radius: 0;\\n }\\n :where(select:is([multiple], [size])) optgroup {\\n font-weight: bolder;\\n }\\n :where(select:is([multiple], [size])) optgroup option {\\n padding-inline-start: 20px;\\n }\\n ::file-selector-button {\\n margin-inline-end: 4px;\\n }\\n ::placeholder {\\n opacity: 1;\\n }\\n @supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px) {\\n ::placeholder {\\n color: currentColor;\\n }\\n @supports (color:color-mix(in lab, red, red)) {\\n ::placeholder {\\n color: color-mix(in oklab, currentcolor 50%, transparent);\\n }\\n }\\n }\\n textarea {\\n resize: vertical;\\n }\\n ::-webkit-search-decoration {\\n -webkit-appearance: none;\\n }\\n ::-webkit-date-and-time-value {\\n min-height: 1lh;\\n text-align: inherit;\\n }\\n ::-webkit-datetime-edit {\\n display: inline-flex;\\n }\\n ::-webkit-datetime-edit-fields-wrapper {\\n padding: 0;\\n }\\n ::-webkit-datetime-edit {\\n padding-block: 0;\\n }\\n ::-webkit-datetime-edit-year-field {\\n padding-block: 0;\\n }\\n ::-webkit-datetime-edit-month-field {\\n padding-block: 0;\\n }\\n ::-webkit-datetime-edit-day-field {\\n padding-block: 0;\\n }\\n ::-webkit-datetime-edit-hour-field {\\n padding-block: 0;\\n }\\n ::-webkit-datetime-edit-minute-field {\\n padding-block: 0;\\n }\\n ::-webkit-datetime-edit-second-field {\\n padding-block: 0;\\n }\\n ::-webkit-datetime-edit-millisecond-field {\\n padding-block: 0;\\n }\\n ::-webkit-datetime-edit-meridiem-field {\\n padding-block: 0;\\n }\\n ::-webkit-calendar-picker-indicator {\\n line-height: 1;\\n }\\n :-moz-ui-invalid {\\n box-shadow: none;\\n }\\n button,\\n input:where([type=button], [type=reset], [type=submit]) {\\n appearance: button;\\n }\\n ::file-selector-button {\\n appearance: button;\\n }\\n ::-webkit-inner-spin-button {\\n height: auto;\\n }\\n ::-webkit-outer-spin-button {\\n height: auto;\\n }\\n [hidden]:where(:not([hidden=until-found])) {\\n display: none !important;\\n }\\n}\\n@layer components;\\n@layer utilities {\\n .container {\\n width: 100%;\\n }\\n @media (min-width: 40rem) {\\n .container {\\n max-width: 40rem;\\n }\\n }\\n @media (min-width: 48rem) {\\n .container {\\n max-width: 48rem;\\n }\\n }\\n @media (min-width: 64rem) {\\n .container {\\n max-width: 64rem;\\n }\\n }\\n @media (min-width: 80rem) {\\n .container {\\n max-width: 80rem;\\n }\\n }\\n @media (min-width: 96rem) {\\n .container {\\n max-width: 96rem;\\n }\\n }\\n .mt-2 {\\n margin-top: calc(var(--spacing) * 2);\\n }\\n .mt-4 {\\n margin-top: calc(var(--spacing) * 4);\\n }\\n .block {\\n display: block;\\n }\\n .block\\\\! {\\n display: block !important;\\n }\\n .flex {\\n display: flex;\\n }\\n .hidden {\\n display: none;\\n }\\n .inline-block {\\n display: inline-block;\\n }\\n .table {\\n display: table;\\n }\\n .min-h-\\\\[210px\\\\]\\\\! {\\n min-height: 210px !important;\\n }\\n .min-h-screen {\\n min-height: 100vh;\\n }\\n .max-w-3xl {\\n max-width: var(--container-3xl);\\n }\\n .min-w-0 {\\n min-width: calc(var(--spacing) * 0);\\n }\\n .flex-1 {\\n flex: 1;\\n }\\n .border-collapse {\\n border-collapse: collapse;\\n }\\n .resize {\\n resize: both;\\n }\\n .flex-col {\\n flex-direction: column;\\n }\\n .items-center {\\n align-items: center;\\n }\\n .justify-center {\\n justify-content: center;\\n }\\n .gap-2 {\\n gap: calc(var(--spacing) * 2);\\n }\\n .gap-3 {\\n gap: calc(var(--spacing) * 3);\\n }\\n .truncate {\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n overflow: hidden;\\n }\\n .truncate\\\\! {\\n text-overflow: ellipsis !important;\\n white-space: nowrap !important;\\n overflow: hidden !important;\\n }\\n .rounded {\\n border-radius: .25rem;\\n }\\n .rounded-lg {\\n border-radius: var(--radius-lg);\\n }\\n .border {\\n border-style: var(--tw-border-style);\\n border-width: 1px;\\n }\\n .border-green-500 {\\n border-color: var(--color-green-500);\\n }\\n .bg-blue-500 {\\n background-color: var(--color-blue-500);\\n }\\n .bg-gray-50 {\\n background-color: var(--color-gray-50);\\n }\\n .bg-gray-100 {\\n background-color: var(--color-gray-100);\\n }\\n .bg-gray-200 {\\n background-color: var(--color-gray-200);\\n }\\n .bg-gray-900 {\\n background-color: var(--color-gray-900);\\n }\\n .bg-green-50 {\\n background-color: var(--color-green-50);\\n }\\n .bg-green-100 {\\n background-color: var(--color-green-100);\\n }\\n .bg-red-600 {\\n background-color: var(--color-red-600);\\n }\\n .bg-teal-500 {\\n background-color: var(--color-teal-500);\\n }\\n .p-4 {\\n padding: calc(var(--spacing) * 4);\\n }\\n .px-2 {\\n padding-inline: calc(var(--spacing) * 2);\\n }\\n .px-4 {\\n padding-inline: calc(var(--spacing) * 4);\\n }\\n .px-6 {\\n padding-inline: calc(var(--spacing) * 6);\\n }\\n .py-0 {\\n padding-block: calc(var(--spacing) * 0);\\n }\\n .py-0\\\\.5 {\\n padding-block: calc(var(--spacing) * .5);\\n }\\n .py-1 {\\n padding-block: calc(var(--spacing) * 1);\\n }\\n .py-2 {\\n padding-block: calc(var(--spacing) * 2);\\n }\\n .py-3 {\\n padding-block: calc(var(--spacing) * 3);\\n }\\n .text-center {\\n text-align: center;\\n }\\n .font-mono {\\n font-family: var(--font-mono);\\n }\\n .text-2xl {\\n font-size: var(--text-2xl);\\n line-height: var(--tw-leading,var(--text-2xl--line-height));\\n }\\n .text-sm {\\n font-size: var(--text-sm);\\n line-height: var(--tw-leading,var(--text-sm--line-height));\\n }\\n .text-sm\\\\! {\\n font-size: var(--text-sm) !important;\\n line-height: var(--tw-leading,var(--text-sm--line-height)) !important;\\n }\\n .text-xs {\\n font-size: var(--text-xs);\\n line-height: var(--tw-leading,var(--text-xs--line-height));\\n }\\n .text-xs\\\\! {\\n font-size: var(--text-xs) !important;\\n line-height: var(--tw-leading,var(--text-xs--line-height)) !important;\\n }\\n .font-bold {\\n --tw-font-weight:var(--font-weight-bold);\\n font-weight: var(--font-weight-bold);\\n }\\n .font-medium {\\n --tw-font-weight:var(--font-weight-medium);\\n font-weight: var(--font-weight-medium);\\n }\\n .font-semibold {\\n --tw-font-weight:var(--font-weight-semibold);\\n font-weight: var(--font-weight-semibold);\\n }\\n .font-semibold\\\\! {\\n --tw-font-weight:var(--font-weight-semibold) !important;\\n font-weight: var(--font-weight-semibold) !important;\\n }\\n .text-black {\\n color: var(--color-black);\\n }\\n .text-gray-500 {\\n color: var(--color-gray-500);\\n }\\n .text-gray-600 {\\n color: var(--color-gray-600);\\n }\\n .text-gray-700 {\\n color: var(--color-gray-700);\\n }\\n .text-gray-900 {\\n color: var(--color-gray-900);\\n }\\n .text-green-400 {\\n color: var(--color-green-400);\\n }\\n .text-green-800 {\\n color: var(--color-green-800);\\n }\\n .text-white {\\n color: var(--color-white);\\n }\\n .uppercase {\\n text-transform: uppercase;\\n }\\n .underline {\\n text-decoration-line: underline;\\n }\\n .shadow {\\n --tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);\\n box-shadow:\\n var(--tw-inset-shadow),\\n var(--tw-inset-ring-shadow),\\n var(--tw-ring-offset-shadow),\\n var(--tw-ring-shadow),\\n var(--tw-shadow);\\n }\\n .outline {\\n outline-style: var(--tw-outline-style);\\n outline-width: 1px;\\n }\\n .blur {\\n --tw-blur:blur(8px);\\n filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);\\n }\\n .filter {\\n filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);\\n }\\n .transition {\\n transition-property:\\n color,\\n background-color,\\n border-color,\\n outline-color,\\n text-decoration-color,\\n fill,\\n stroke,\\n --tw-gradient-from,\\n --tw-gradient-via,\\n --tw-gradient-to,\\n opacity,\\n box-shadow,\\n transform,\\n translate,\\n scale,\\n rotate,\\n filter,\\n -webkit-backdrop-filter,\\n backdrop-filter,\\n display,\\n content-visibility,\\n overlay,\\n pointer-events;\\n transition-timing-function: var(--tw-ease,var(--default-transition-timing-function));\\n transition-duration: var(--tw-duration,var(--default-transition-duration));\\n }\\n}\\n@property --tw-border-style { syntax:\\\"*\\\";inherits:false;initial-value:solid }\\n@property --tw-font-weight { syntax:\\\"*\\\";inherits:false }\\n@property --tw-shadow { syntax:\\\"*\\\";inherits:false;initial-value:0 0 #0000 }\\n@property --tw-shadow-color { syntax:\\\"*\\\";inherits:false }\\n@property --tw-shadow-alpha { syntax:\\\"<percentage>\\\";inherits:false;initial-value:100% }\\n@property --tw-inset-shadow { syntax:\\\"*\\\";inherits:false;initial-value:0 0 #0000 }\\n@property --tw-inset-shadow-color { syntax:\\\"*\\\";inherits:false }\\n@property --tw-inset-shadow-alpha { syntax:\\\"<percentage>\\\";inherits:false;initial-value:100% }\\n@property --tw-ring-color { syntax:\\\"*\\\";inherits:false }\\n@property --tw-ring-shadow { syntax:\\\"*\\\";inherits:false;initial-value:0 0 #0000 }\\n@property --tw-inset-ring-color { syntax:\\\"*\\\";inherits:false }\\n@property --tw-inset-ring-shadow { syntax:\\\"*\\\";inherits:false;initial-value:0 0 #0000 }\\n@property --tw-ring-inset { syntax:\\\"*\\\";inherits:false }\\n@property --tw-ring-offset-width { syntax:\\\"<length>\\\";inherits:false;initial-value:0 }\\n@property --tw-ring-offset-color { syntax:\\\"*\\\";inherits:false;initial-value:#fff }\\n@property --tw-ring-offset-shadow { syntax:\\\"*\\\";inherits:false;initial-value:0 0 #0000 }\\n@property --tw-outline-style { syntax:\\\"*\\\";inherits:false;initial-value:solid }\\n@property --tw-blur { syntax:\\\"*\\\";inherits:false }\\n@property --tw-brightness { syntax:\\\"*\\\";inherits:false }\\n@property --tw-contrast { syntax:\\\"*\\\";inherits:false }\\n@property --tw-grayscale { syntax:\\\"*\\\";inherits:false }\\n@property --tw-hue-rotate { syntax:\\\"*\\\";inherits:false }\\n@property --tw-invert { syntax:\\\"*\\\";inherits:false }\\n@property --tw-opacity { syntax:\\\"*\\\";inherits:false }\\n@property --tw-saturate { syntax:\\\"*\\\";inherits:false }\\n@property --tw-sepia { syntax:\\\"*\\\";inherits:false }\\n@property --tw-drop-shadow { syntax:\\\"*\\\";inherits:false }\\n@property --tw-drop-shadow-color { syntax:\\\"*\\\";inherits:false }\\n@property --tw-drop-shadow-alpha { syntax:\\\"<percentage>\\\";inherits:false;initial-value:100% }\\n@property --tw-drop-shadow-size { syntax:\\\"*\\\";inherits:false }\\n\")"]}