@marcoschwartz/lite-ui 0.22.0 → 0.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -8,32 +8,35 @@ var themes = {
8
8
  default: {
9
9
  name: "default",
10
10
  button: {
11
- base: "font-semibold rounded-lg transition-all duration-150 focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 active:scale-95 gap-2",
11
+ base: "font-medium rounded-md transition-all duration-150 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--ring))]/50 active:scale-[0.98] gap-2",
12
12
  variants: {
13
- primary: "bg-blue-600 hover:bg-blue-700 active:bg-blue-800 text-white shadow-sm hover:shadow-md dark:bg-blue-500 dark:hover:bg-blue-600 dark:active:bg-blue-700",
14
- secondary: "bg-gray-600 hover:bg-gray-700 active:bg-gray-800 text-white shadow-sm hover:shadow-md dark:bg-gray-500 dark:hover:bg-gray-600 dark:active:bg-gray-700",
15
- success: "bg-green-600 hover:bg-green-700 active:bg-green-800 text-white shadow-sm hover:shadow-md dark:bg-green-500 dark:hover:bg-green-600 dark:active:bg-green-700",
16
- danger: "bg-red-600 hover:bg-red-700 active:bg-red-800 text-white shadow-sm hover:shadow-md dark:bg-red-500 dark:hover:bg-red-600 dark:active:bg-red-700",
17
- warning: "bg-yellow-500 hover:bg-yellow-600 active:bg-yellow-700 text-white shadow-sm hover:shadow-md dark:bg-yellow-400 dark:hover:bg-yellow-500 dark:active:bg-yellow-600",
18
- info: "bg-cyan-600 hover:bg-cyan-700 active:bg-cyan-800 text-white shadow-sm hover:shadow-md dark:bg-cyan-500 dark:hover:bg-cyan-600 dark:active:bg-cyan-700"
13
+ primary: "bg-[hsl(var(--primary))] text-[hsl(var(--primary-foreground))] hover:bg-[hsl(var(--primary))]/90 shadow-sm",
14
+ secondary: "bg-[hsl(var(--secondary))] text-[hsl(var(--secondary-foreground))] hover:bg-[hsl(var(--secondary))]/80 border border-[hsl(var(--border))]",
15
+ success: "bg-[hsl(var(--success))] text-[hsl(var(--success-foreground))] hover:bg-[hsl(var(--success))]/90 shadow-sm",
16
+ danger: "bg-[hsl(var(--destructive))] text-[hsl(var(--destructive-foreground))] hover:bg-[hsl(var(--destructive))]/90 shadow-sm",
17
+ warning: "bg-[hsl(var(--warning))] text-[hsl(var(--warning-foreground))] hover:bg-[hsl(var(--warning))]/90 shadow-sm",
18
+ info: "bg-[hsl(var(--info))] text-[hsl(var(--info-foreground))] hover:bg-[hsl(var(--info))]/90 shadow-sm",
19
+ outline: "border border-[hsl(var(--border))] bg-transparent hover:bg-[hsl(var(--accent))] text-[hsl(var(--foreground))]",
20
+ ghost: "bg-transparent hover:bg-[hsl(var(--accent))] text-[hsl(var(--foreground))]",
21
+ link: "bg-transparent text-[hsl(var(--primary))] underline-offset-4 hover:underline !p-0 !h-auto !min-h-0 shadow-none"
19
22
  },
20
23
  sizes: {
21
- sm: "px-3 py-1.5 text-sm min-h-[30px]",
22
- md: "px-4 py-2 text-base min-h-[38px]",
23
- lg: "px-6 py-3 text-lg min-h-[48px]",
24
- xl: "px-8 py-4 text-xl min-h-[60px]"
24
+ sm: "px-3 py-1.5 text-sm h-8",
25
+ md: "px-4 py-2 text-sm h-9",
26
+ lg: "px-5 py-2.5 text-base h-10",
27
+ xl: "px-6 py-3 text-base h-11"
25
28
  },
26
- disabled: "opacity-50 cursor-not-allowed hover:shadow-sm active:scale-100"
29
+ disabled: "pointer-events-none opacity-50"
27
30
  },
28
31
  select: {
29
- base: "w-full appearance-none rounded-lg border border-gray-300 bg-white text-gray-900 text-left transition-all duration-150 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent shadow-sm hover:border-gray-400 pr-10 cursor-pointer dark:bg-gray-800 dark:border-gray-600 dark:text-gray-100 dark:hover:border-gray-500",
32
+ base: "w-full appearance-none rounded-md border border-[hsl(var(--input))] bg-transparent text-[hsl(var(--foreground))] text-left transition-colors duration-150 focus:outline-none focus:ring-1 focus:ring-[hsl(var(--ring))]/50 focus:border-[hsl(var(--ring))] hover:border-[hsl(var(--muted-foreground))] pr-10 cursor-pointer",
30
33
  sizes: {
31
34
  sm: "px-3 py-1.5 text-sm",
32
- md: "px-4 py-2.5 text-base",
33
- lg: "px-4 py-3 text-lg",
34
- xl: "px-5 py-4 text-xl"
35
+ md: "px-3 py-2.5 text-sm",
36
+ lg: "px-4 py-3 text-base",
37
+ xl: "px-4 py-3.5 text-lg"
35
38
  },
36
- disabled: "opacity-50 cursor-not-allowed bg-gray-50 dark:bg-gray-900"
39
+ disabled: "pointer-events-none opacity-50 bg-[hsl(var(--muted))]"
37
40
  }
38
41
  },
39
42
  minimalistic: {
@@ -46,7 +49,10 @@ var themes = {
46
49
  success: "bg-transparent border-green-400 text-green-400 hover:bg-green-400 hover:text-black",
47
50
  danger: "bg-transparent border-red-400 text-red-400 hover:bg-red-400 hover:text-black",
48
51
  warning: "bg-transparent border-yellow-400 text-yellow-400 hover:bg-yellow-400 hover:text-black",
49
- info: "bg-transparent border-blue-400 text-blue-400 hover:bg-blue-400 hover:text-black"
52
+ info: "bg-transparent border-blue-400 text-blue-400 hover:bg-blue-400 hover:text-black",
53
+ outline: "bg-transparent border-white text-white hover:bg-white hover:text-black",
54
+ ghost: "bg-transparent border-transparent text-white hover:bg-white/10",
55
+ link: "bg-transparent border-transparent text-white underline-offset-4 hover:underline !p-0 !h-auto !min-h-0"
50
56
  },
51
57
  sizes: {
52
58
  sm: "px-4 py-2 text-sm uppercase tracking-wide min-h-[36px]",
@@ -270,11 +276,11 @@ var Select = ({
270
276
  const baseStyles = theme.select.base;
271
277
  const sizeStyles2 = theme.select.sizes[size];
272
278
  const disabledStyles = disabled ? theme.select.disabled : "";
273
- const errorStyles = error ? "border-red-500 focus:ring-red-500 dark:border-red-500" : "";
279
+ const errorStyles = error ? "border-[hsl(var(--destructive))] focus:ring-[hsl(var(--destructive))]" : "";
274
280
  const buttonClasses = `${baseStyles} ${sizeStyles2} ${disabledStyles} ${errorStyles}`.trim();
275
- const iconColor = themeName === "minimalistic" ? disabled ? "text-gray-600" : "text-white" : disabled ? "text-gray-400" : "text-gray-500";
276
- const dropdownBaseStyles = themeName === "minimalistic" ? "bg-black border-2 border-white" : "bg-white border border-gray-300 shadow-lg dark:bg-gray-800 dark:border-gray-600";
277
- const optionBaseStyles = themeName === "minimalistic" ? "text-white hover:bg-white hover:text-black transition-colors duration-200" : "text-gray-900 hover:bg-blue-50 transition-colors duration-150 dark:text-gray-100 dark:hover:bg-gray-700";
281
+ const iconColor = themeName === "minimalistic" ? disabled ? "text-[hsl(var(--muted-foreground))]" : "text-white" : "text-[hsl(var(--muted-foreground))]";
282
+ const dropdownBaseStyles = themeName === "minimalistic" ? "bg-black border-2 border-white" : "bg-[hsl(var(--popover))] border border-[hsl(var(--border))] shadow-lg";
283
+ const optionBaseStyles = themeName === "minimalistic" ? "text-white hover:bg-white hover:text-black transition-colors duration-200" : "text-[hsl(var(--popover-foreground))] hover:bg-[hsl(var(--accent))] transition-colors duration-150";
278
284
  const optionSizeStyles = {
279
285
  sm: "px-4 py-2 text-sm",
280
286
  md: "px-4 py-2.5 text-base",
@@ -282,7 +288,7 @@ var Select = ({
282
288
  xl: "px-5 py-4 text-xl"
283
289
  }[size];
284
290
  return /* @__PURE__ */ jsxs2("div", { className: `w-full ${className}`, children: [
285
- label && /* @__PURE__ */ jsx3("label", { className: "block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1", children: label }),
291
+ label && /* @__PURE__ */ jsx3("label", { className: "block text-sm font-medium text-[hsl(var(--foreground))] mb-1.5", children: label }),
286
292
  /* @__PURE__ */ jsxs2("div", { className: "relative inline-block w-full", ref: dropdownRef, ...props, children: [
287
293
  /* @__PURE__ */ jsx3(
288
294
  "button",
@@ -315,14 +321,14 @@ var Select = ({
315
321
  isOpen && !disabled && /* @__PURE__ */ jsxs2(
316
322
  "div",
317
323
  {
318
- className: `absolute z-50 w-full mt-1 ${dropdownBaseStyles} rounded-lg overflow-hidden`,
324
+ className: `absolute z-50 w-full mt-1 ${dropdownBaseStyles} rounded-md overflow-hidden`,
319
325
  children: [
320
- searchable && /* @__PURE__ */ jsx3("div", { className: `sticky top-0 ${themeName === "minimalistic" ? "bg-black border-b-2 border-white" : "bg-white dark:bg-gray-800 border-b border-gray-200 dark:border-gray-700"}`, children: /* @__PURE__ */ jsx3(
326
+ searchable && /* @__PURE__ */ jsx3("div", { className: `sticky top-0 ${themeName === "minimalistic" ? "bg-black border-b-2 border-white" : "bg-[hsl(var(--popover))] border-b border-[hsl(var(--border))]"}`, children: /* @__PURE__ */ jsx3(
321
327
  "input",
322
328
  {
323
329
  ref: searchInputRef,
324
330
  type: "text",
325
- className: `w-full ${optionSizeStyles} ${themeName === "minimalistic" ? "bg-black text-white placeholder-gray-600 focus:outline-none" : "bg-transparent text-gray-900 dark:text-gray-100 placeholder-gray-400 focus:outline-none"}`,
331
+ className: `w-full ${optionSizeStyles} ${themeName === "minimalistic" ? "bg-black text-white placeholder-[hsl(var(--muted-foreground))] focus:outline-none" : "bg-transparent text-[hsl(var(--popover-foreground))] placeholder:text-[hsl(var(--muted-foreground))] focus:outline-none"}`,
326
332
  placeholder: searchPlaceholder,
327
333
  value: searchQuery,
328
334
  onChange: (e) => setSearchQuery(e.target.value),
@@ -367,20 +373,20 @@ var Select = ({
367
373
  children: filteredOptions.length > 0 ? filteredOptions.map((option) => /* @__PURE__ */ jsx3(
368
374
  "div",
369
375
  {
370
- className: `${optionBaseStyles} ${optionSizeStyles} cursor-pointer ${value === option.value ? themeName === "minimalistic" ? "bg-white text-black" : "bg-blue-50 dark:bg-gray-700" : ""}`,
376
+ className: `${optionBaseStyles} ${optionSizeStyles} cursor-pointer ${value === option.value ? themeName === "minimalistic" ? "bg-white text-black" : "bg-[hsl(var(--accent))]" : ""}`,
371
377
  onClick: () => handleSelect(option.value),
372
378
  children: option.label
373
379
  },
374
380
  option.value
375
- )) : /* @__PURE__ */ jsx3("div", { className: `${optionSizeStyles} ${themeName === "minimalistic" ? "text-gray-500" : "text-gray-500 dark:text-gray-400"} text-center`, children: "No results found" })
381
+ )) : /* @__PURE__ */ jsx3("div", { className: `${optionSizeStyles} ${themeName === "minimalistic" ? "text-[hsl(var(--muted-foreground))]" : "text-[hsl(var(--muted-foreground))]"} text-center`, children: "No results found" })
376
382
  }
377
383
  )
378
384
  ]
379
385
  }
380
386
  )
381
387
  ] }),
382
- error && /* @__PURE__ */ jsx3("p", { className: "mt-1 text-sm text-red-600 dark:text-red-400", children: error }),
383
- helperText && !error && /* @__PURE__ */ jsx3("p", { className: "mt-1 text-sm text-gray-500 dark:text-gray-400", children: helperText })
388
+ error && /* @__PURE__ */ jsx3("p", { className: "mt-1.5 text-sm text-[hsl(var(--destructive))]", children: error }),
389
+ helperText && !error && /* @__PURE__ */ jsx3("p", { className: "mt-1.5 text-sm text-[hsl(var(--muted-foreground))]", children: helperText })
384
390
  ] });
385
391
  };
386
392
 
@@ -401,7 +407,6 @@ var Modal = ({
401
407
  size = "md",
402
408
  showCloseButton = true
403
409
  }) => {
404
- const { theme } = useTheme();
405
410
  useEffect3(() => {
406
411
  const handleEscape = (e) => {
407
412
  if (e.key === "Escape" && isOpen) {
@@ -422,7 +427,7 @@ var Modal = ({
422
427
  return /* @__PURE__ */ jsx4(
423
428
  "div",
424
429
  {
425
- className: "fixed inset-0 z-50 flex items-center justify-center p-4 bg-black/60 backdrop-blur-sm transition-all duration-200",
430
+ className: "fixed inset-0 z-50 flex items-center justify-center p-4 bg-black/80 backdrop-blur-sm transition-all duration-200",
426
431
  onClick: onClose,
427
432
  role: "dialog",
428
433
  "aria-modal": "true",
@@ -430,18 +435,18 @@ var Modal = ({
430
435
  children: /* @__PURE__ */ jsxs3(
431
436
  "div",
432
437
  {
433
- className: `relative w-full ${sizeClass} bg-white dark:bg-gray-800 rounded-lg shadow-2xl transform transition-all duration-200 scale-100 animate-in`,
438
+ className: `relative w-full ${sizeClass} bg-[hsl(var(--card))] text-[hsl(var(--card-foreground))] rounded-[--radius] border border-[hsl(var(--border))] shadow-2xl transform transition-all duration-200 scale-100 animate-in`,
434
439
  onClick: (e) => e.stopPropagation(),
435
440
  children: [
436
- (title || showCloseButton) && /* @__PURE__ */ jsxs3("div", { className: "flex items-center justify-between p-6 border-b border-gray-200 dark:border-gray-700", children: [
437
- title && /* @__PURE__ */ jsx4("h3", { id: "modal-title", className: "text-xl font-semibold text-gray-900 dark:text-gray-100", children: title }),
441
+ (title || showCloseButton) && /* @__PURE__ */ jsxs3("div", { className: "flex items-center justify-between p-6 border-b border-[hsl(var(--border))]", children: [
442
+ title && /* @__PURE__ */ jsx4("h3", { id: "modal-title", className: "text-lg font-semibold", children: title }),
438
443
  showCloseButton && /* @__PURE__ */ jsx4(
439
444
  "button",
440
445
  {
441
446
  onClick: onClose,
442
- className: "ml-auto text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 transition-colors",
447
+ className: "ml-auto text-[hsl(var(--muted-foreground))] hover:text-[hsl(var(--foreground))] transition-colors rounded-[--radius] p-1 hover:bg-[hsl(var(--accent))]",
443
448
  "aria-label": "Close modal",
444
- children: /* @__PURE__ */ jsx4("svg", { className: "w-6 h-6", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: /* @__PURE__ */ jsx4("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M6 18L18 6M6 6l12 12" }) })
449
+ children: /* @__PURE__ */ jsx4("svg", { className: "w-5 h-5", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: /* @__PURE__ */ jsx4("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M6 18L18 6M6 6l12 12" }) })
445
450
  }
446
451
  )
447
452
  ] }),
@@ -462,17 +467,16 @@ var Navbar = ({
462
467
  sticky = false,
463
468
  variant = "solid"
464
469
  }) => {
465
- const { theme } = useTheme();
466
470
  const baseClasses = sticky ? "sticky top-0 z-40" : "";
467
471
  const getVariantClasses2 = () => {
468
472
  switch (variant) {
469
473
  case "glass":
470
- return "bg-transparent backdrop-blur-xl";
474
+ return "bg-[hsl(var(--background))]/80 backdrop-blur-xl border-b border-[hsl(var(--border))]";
471
475
  case "transparent":
472
476
  return "bg-transparent";
473
477
  case "solid":
474
478
  default:
475
- return "bg-white dark:bg-gray-800 border-b border-gray-200 dark:border-gray-700";
479
+ return "bg-[hsl(var(--background))] border-b border-[hsl(var(--border))]";
476
480
  }
477
481
  };
478
482
  return /* @__PURE__ */ jsx5("nav", { className: `${getVariantClasses2()} ${baseClasses} ${className}`, children: /* @__PURE__ */ jsx5("div", { className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: /* @__PURE__ */ jsxs4("div", { className: "flex justify-between items-center h-16", children: [
@@ -494,13 +498,12 @@ var Sidebar = ({
494
498
  width = "md",
495
499
  position = "left"
496
500
  }) => {
497
- const { theme } = useTheme();
498
501
  const widthClass = widthClasses[width];
499
502
  const borderClass = position === "left" ? "border-r" : "border-l";
500
503
  return /* @__PURE__ */ jsx6(
501
504
  "aside",
502
505
  {
503
- className: `${widthClass} bg-white dark:bg-gray-800 ${borderClass} border-gray-200 dark:border-gray-700 h-full overflow-y-auto ${className}`,
506
+ className: `${widthClass} bg-[hsl(var(--card))] ${borderClass} border-[hsl(var(--border))] h-full overflow-y-auto ${className}`,
504
507
  children
505
508
  }
506
509
  );
@@ -1097,12 +1100,12 @@ var breakpointClasses = {
1097
1100
  var getVariantClasses = (variant) => {
1098
1101
  switch (variant) {
1099
1102
  case "glass":
1100
- return "bg-transparent backdrop-blur-xl";
1103
+ return "bg-[hsl(var(--background))]/80 backdrop-blur-xl";
1101
1104
  case "transparent":
1102
1105
  return "bg-transparent";
1103
1106
  case "solid":
1104
1107
  default:
1105
- return "bg-white dark:bg-gray-800 border-b border-gray-200 dark:border-gray-700";
1108
+ return "bg-[hsl(var(--background))] border-b border-[hsl(var(--border))]";
1106
1109
  }
1107
1110
  };
1108
1111
  var AppShell = ({
@@ -1115,7 +1118,6 @@ var AppShell = ({
1115
1118
  responsive = true,
1116
1119
  className = ""
1117
1120
  }) => {
1118
- const { theme } = useTheme();
1119
1121
  const [isMobileNavbarOpen, setIsMobileNavbarOpen] = useState4(defaultNavbarOpen);
1120
1122
  const navbarWidth = navbar?.width || "md";
1121
1123
  const navbarBreakpoint = navbar?.breakpoint || "md";
@@ -1126,7 +1128,7 @@ var AppShell = ({
1126
1128
  return /* @__PURE__ */ jsxs9("div", { className: `min-h-screen flex flex-col ${className}`, children: [
1127
1129
  header && /* @__PURE__ */ jsx78("div", { className: "w-full", children: header }),
1128
1130
  /* @__PURE__ */ jsxs9("div", { className: "flex flex-1", children: [
1129
- /* @__PURE__ */ jsx78("aside", { className: `${widthClass} bg-white dark:bg-gray-800 border-r border-gray-200 dark:border-gray-700 h-full overflow-y-auto`, children: navbar.content }),
1131
+ /* @__PURE__ */ jsx78("aside", { className: `${widthClass} bg-[hsl(var(--card))] border-r border-[hsl(var(--border))] h-full overflow-y-auto`, children: navbar.content }),
1130
1132
  /* @__PURE__ */ jsx78("main", { className: "flex-1 overflow-y-auto", children })
1131
1133
  ] })
1132
1134
  ] });
@@ -1140,14 +1142,14 @@ var AppShell = ({
1140
1142
  if (navbar && navbarPosition === "top") {
1141
1143
  const mobileMenuClass = navbarBreakpoint === "sm" ? "sm:hidden" : navbarBreakpoint === "md" ? "md:hidden" : navbarBreakpoint === "lg" ? "lg:hidden" : "xl:hidden";
1142
1144
  const desktopNavClass = navbarBreakpoint === "sm" ? "sm:flex" : navbarBreakpoint === "md" ? "md:flex" : navbarBreakpoint === "lg" ? "lg:flex" : "xl:flex";
1143
- return /* @__PURE__ */ jsxs9("div", { className: `min-h-screen flex flex-col bg-gray-50 dark:bg-gray-900 ${className}`, children: [
1145
+ return /* @__PURE__ */ jsxs9("div", { className: `min-h-screen flex flex-col bg-[hsl(var(--background))] ${className}`, children: [
1144
1146
  /* @__PURE__ */ jsx78("nav", { className: `sticky top-0 z-30 ${getVariantClasses(navbar.variant)}`, children: /* @__PURE__ */ jsx78("div", { className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: /* @__PURE__ */ jsxs9("div", { className: "flex justify-between items-center h-16", children: [
1145
- /* @__PURE__ */ jsx78("div", { className: "flex items-center", children: navbarLogo ? /* @__PURE__ */ jsx78("div", { children: navbarLogo }) : navbarTitle ? /* @__PURE__ */ jsx78("span", { className: "text-xl font-bold text-gray-900 dark:text-gray-100", children: navbarTitle }) : null }),
1147
+ /* @__PURE__ */ jsx78("div", { className: "flex items-center", children: navbarLogo ? /* @__PURE__ */ jsx78("div", { children: navbarLogo }) : navbarTitle ? /* @__PURE__ */ jsx78("span", { className: "text-xl font-bold text-[hsl(var(--foreground))]", children: navbarTitle }) : null }),
1146
1148
  /* @__PURE__ */ jsx78("div", { className: `hidden ${desktopNavClass} items-center gap-6`, children: navbar.content }),
1147
1149
  /* @__PURE__ */ jsx78(
1148
1150
  "button",
1149
1151
  {
1150
- className: `${mobileMenuClass} p-2 rounded-lg hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors`,
1152
+ className: `${mobileMenuClass} p-2 rounded-lg hover:bg-[hsl(var(--accent))] transition-colors`,
1151
1153
  onClick: () => setIsMobileNavbarOpen(!isMobileNavbarOpen),
1152
1154
  "aria-label": "Toggle menu",
1153
1155
  children: /* @__PURE__ */ jsx78(MenuIcon, { size: "md" })
@@ -1163,13 +1165,13 @@ var AppShell = ({
1163
1165
  onClick: () => setIsMobileNavbarOpen(false)
1164
1166
  }
1165
1167
  ),
1166
- /* @__PURE__ */ jsxs9("div", { className: `${mobileMenuClass} fixed left-0 top-0 bottom-0 z-50 w-64 bg-white dark:bg-gray-800 shadow-2xl animate-in slide-in-from-left duration-300`, children: [
1167
- /* @__PURE__ */ jsxs9("div", { className: "p-4 border-b border-gray-200 dark:border-gray-700 flex items-center justify-between", children: [
1168
- navbarLogo ? /* @__PURE__ */ jsx78("div", { children: navbarLogo }) : navbarTitle ? /* @__PURE__ */ jsx78("span", { className: "text-xl font-bold text-gray-900 dark:text-gray-100", children: navbarTitle }) : null,
1168
+ /* @__PURE__ */ jsxs9("div", { className: `${mobileMenuClass} fixed left-0 top-0 bottom-0 z-50 w-64 bg-[hsl(var(--card))] shadow-2xl animate-in slide-in-from-left duration-300`, children: [
1169
+ /* @__PURE__ */ jsxs9("div", { className: "p-4 border-b border-[hsl(var(--border))] flex items-center justify-between", children: [
1170
+ navbarLogo ? /* @__PURE__ */ jsx78("div", { children: navbarLogo }) : navbarTitle ? /* @__PURE__ */ jsx78("span", { className: "text-xl font-bold text-[hsl(var(--foreground))]", children: navbarTitle }) : null,
1169
1171
  /* @__PURE__ */ jsx78(
1170
1172
  "button",
1171
1173
  {
1172
- className: "p-1 rounded hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors",
1174
+ className: "p-1 rounded hover:bg-[hsl(var(--accent))] transition-colors",
1173
1175
  onClick: () => setIsMobileNavbarOpen(false),
1174
1176
  "aria-label": "Close menu",
1175
1177
  children: /* @__PURE__ */ jsx78("svg", { className: "w-6 h-6", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx78("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M6 18L18 6M6 6l12 12" }) })
@@ -1194,13 +1196,13 @@ var AppShell = ({
1194
1196
  const desktopNavbarClass = navbarBreakpoint === "sm" ? "sm:block" : navbarBreakpoint === "md" ? "md:block" : navbarBreakpoint === "lg" ? "lg:block" : "xl:block";
1195
1197
  const mobileDrawerClass = navbarBreakpoint === "sm" ? "sm:hidden" : navbarBreakpoint === "md" ? "md:hidden" : navbarBreakpoint === "lg" ? "lg:hidden" : "xl:hidden";
1196
1198
  const sidebarWidthClass = navbarWidth === "sm" ? "w-48" : navbarWidth === "lg" ? "w-80" : "w-64";
1197
- return /* @__PURE__ */ jsxs9("div", { className: `min-h-screen flex flex-col bg-gray-50 dark:bg-gray-900 ${className}`, children: [
1199
+ return /* @__PURE__ */ jsxs9("div", { className: `min-h-screen flex flex-col bg-[hsl(var(--background))] ${className}`, children: [
1198
1200
  /* @__PURE__ */ jsxs9("div", { className: `${mobileHeaderClass} sticky top-0 z-30 ${getVariantClasses(navbar.variant)} px-4 py-3 flex items-center justify-between`, children: [
1199
- navbarLogo ? /* @__PURE__ */ jsx78("div", { children: navbarLogo }) : navbarTitle ? /* @__PURE__ */ jsx78("span", { className: "text-xl font-bold text-gray-900 dark:text-gray-100", children: navbarTitle }) : null,
1201
+ navbarLogo ? /* @__PURE__ */ jsx78("div", { children: navbarLogo }) : navbarTitle ? /* @__PURE__ */ jsx78("span", { className: "text-xl font-bold text-[hsl(var(--foreground))]", children: navbarTitle }) : null,
1200
1202
  /* @__PURE__ */ jsx78(
1201
1203
  "button",
1202
1204
  {
1203
- className: "p-2 rounded-lg hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors",
1205
+ className: "p-2 rounded-lg hover:bg-[hsl(var(--accent))] transition-colors",
1204
1206
  onClick: () => setIsMobileNavbarOpen(!isMobileNavbarOpen),
1205
1207
  "aria-label": "Toggle menu",
1206
1208
  children: /* @__PURE__ */ jsx78(MenuIcon, { size: "md" })
@@ -1209,7 +1211,7 @@ var AppShell = ({
1209
1211
  ] }),
1210
1212
  header && /* @__PURE__ */ jsx78("div", { className: "w-full", children: header }),
1211
1213
  /* @__PURE__ */ jsxs9("div", { className: "flex flex-1 min-h-0", children: [
1212
- /* @__PURE__ */ jsx78("aside", { className: `hidden ${desktopNavbarClass} ${sidebarWidthClass} ${navbar.variant === "glass" ? "bg-transparent backdrop-blur-xl" : navbar.variant === "transparent" ? "bg-transparent" : "bg-white dark:bg-gray-800 border-r border-gray-200 dark:border-gray-700"} overflow-y-auto shrink-0`, children: navbar.content }),
1214
+ /* @__PURE__ */ jsx78("aside", { className: `hidden ${desktopNavbarClass} ${sidebarWidthClass} ${navbar.variant === "glass" ? "bg-[hsl(var(--background))]/80 backdrop-blur-xl" : navbar.variant === "transparent" ? "bg-transparent" : "bg-[hsl(var(--card))] border-r border-[hsl(var(--border))]"} overflow-y-auto shrink-0`, children: navbar.content }),
1213
1215
  isMobileNavbarOpen && /* @__PURE__ */ jsxs9(Fragment11, { children: [
1214
1216
  /* @__PURE__ */ jsx78(
1215
1217
  "div",
@@ -1218,13 +1220,13 @@ var AppShell = ({
1218
1220
  onClick: () => setIsMobileNavbarOpen(false)
1219
1221
  }
1220
1222
  ),
1221
- /* @__PURE__ */ jsxs9("div", { className: `${mobileDrawerClass} fixed left-0 top-0 bottom-0 z-50 w-64 bg-white dark:bg-gray-800 shadow-2xl animate-in slide-in-from-left duration-300`, children: [
1222
- /* @__PURE__ */ jsxs9("div", { className: "p-4 border-b border-gray-200 dark:border-gray-700 flex items-center justify-between", children: [
1223
- navbarLogo ? /* @__PURE__ */ jsx78("div", { children: navbarLogo }) : navbarTitle ? /* @__PURE__ */ jsx78("span", { className: "text-xl font-bold text-gray-900 dark:text-gray-100", children: navbarTitle }) : null,
1223
+ /* @__PURE__ */ jsxs9("div", { className: `${mobileDrawerClass} fixed left-0 top-0 bottom-0 z-50 w-64 bg-[hsl(var(--card))] shadow-2xl animate-in slide-in-from-left duration-300`, children: [
1224
+ /* @__PURE__ */ jsxs9("div", { className: "p-4 border-b border-[hsl(var(--border))] flex items-center justify-between", children: [
1225
+ navbarLogo ? /* @__PURE__ */ jsx78("div", { children: navbarLogo }) : navbarTitle ? /* @__PURE__ */ jsx78("span", { className: "text-xl font-bold text-[hsl(var(--foreground))]", children: navbarTitle }) : null,
1224
1226
  /* @__PURE__ */ jsx78(
1225
1227
  "button",
1226
1228
  {
1227
- className: "p-1 rounded hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors",
1229
+ className: "p-1 rounded hover:bg-[hsl(var(--accent))] transition-colors",
1228
1230
  onClick: () => setIsMobileNavbarOpen(false),
1229
1231
  "aria-label": "Close menu",
1230
1232
  children: /* @__PURE__ */ jsx78("svg", { className: "w-6 h-6", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx78("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M6 18L18 6M6 6l12 12" }) })
@@ -1297,7 +1299,6 @@ var Drawer = ({
1297
1299
  size = "md",
1298
1300
  showCloseButton = true
1299
1301
  }) => {
1300
- const { theme } = useTheme();
1301
1302
  useEffect4(() => {
1302
1303
  const handleEscape = (e) => {
1303
1304
  if (e.key === "Escape" && isOpen) {
@@ -1320,24 +1321,24 @@ var Drawer = ({
1320
1321
  /* @__PURE__ */ jsx79(
1321
1322
  "div",
1322
1323
  {
1323
- className: "fixed inset-0 z-40 bg-black/60 backdrop-blur-sm transition-all duration-200",
1324
+ className: "fixed inset-0 z-40 bg-black/80 backdrop-blur-sm transition-all duration-200",
1324
1325
  onClick: onClose
1325
1326
  }
1326
1327
  ),
1327
1328
  /* @__PURE__ */ jsxs10(
1328
1329
  "div",
1329
1330
  {
1330
- className: `fixed z-50 ${positionClass} ${sizeClass} bg-white dark:bg-gray-800 shadow-2xl overflow-hidden flex flex-col ${slideClasses[position]}`,
1331
+ className: `fixed z-50 ${positionClass} ${sizeClass} bg-[hsl(var(--card))] text-[hsl(var(--card-foreground))] border-[hsl(var(--border))] shadow-2xl overflow-hidden flex flex-col ${slideClasses[position]} ${position === "left" ? "border-r" : position === "right" ? "border-l" : position === "top" ? "border-b" : "border-t"}`,
1331
1332
  children: [
1332
- (title || showCloseButton) && /* @__PURE__ */ jsxs10("div", { className: "flex items-center justify-between p-6 border-b border-gray-200 dark:border-gray-700", children: [
1333
- title && /* @__PURE__ */ jsx79("h3", { className: "text-xl font-semibold text-gray-900 dark:text-gray-100", children: title }),
1333
+ (title || showCloseButton) && /* @__PURE__ */ jsxs10("div", { className: "flex items-center justify-between p-6 border-b border-[hsl(var(--border))]", children: [
1334
+ title && /* @__PURE__ */ jsx79("h3", { className: "text-lg font-semibold", children: title }),
1334
1335
  showCloseButton && /* @__PURE__ */ jsx79(
1335
1336
  "button",
1336
1337
  {
1337
1338
  onClick: onClose,
1338
- className: "ml-auto text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 transition-colors",
1339
+ className: "ml-auto text-[hsl(var(--muted-foreground))] hover:text-[hsl(var(--foreground))] transition-colors rounded-[--radius] p-1 hover:bg-[hsl(var(--accent))]",
1339
1340
  "aria-label": "Close drawer",
1340
- children: /* @__PURE__ */ jsx79("svg", { className: "w-6 h-6", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: /* @__PURE__ */ jsx79("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M6 18L18 6M6 6l12 12" }) })
1341
+ children: /* @__PURE__ */ jsx79("svg", { className: "w-5 h-5", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: /* @__PURE__ */ jsx79("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M6 18L18 6M6 6l12 12" }) })
1341
1342
  }
1342
1343
  )
1343
1344
  ] }),
@@ -1370,16 +1371,16 @@ var TextInput = forwardRef(
1370
1371
  ...props
1371
1372
  }, ref) => {
1372
1373
  const { theme, themeName } = useTheme();
1373
- const baseStyles = theme.select?.base || "w-full appearance-none rounded-lg border border-gray-300 bg-white text-gray-900 transition-all duration-150 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent shadow-sm hover:border-gray-400 dark:bg-gray-800 dark:border-gray-600 dark:text-gray-100 dark:hover:border-gray-500";
1374
+ const baseStyles = "w-full appearance-none rounded-md border border-[hsl(var(--input))] bg-transparent text-[hsl(var(--foreground))] transition-colors duration-150 focus:outline-none focus:ring-1 focus:ring-[hsl(var(--ring))]/50 focus:border-[hsl(var(--ring))] hover:border-[hsl(var(--muted-foreground))] placeholder:text-[hsl(var(--muted-foreground))]";
1374
1375
  const sizeStyle = sizeClasses4[size];
1375
- const errorStyles = error ? "border-red-500 focus:ring-red-500 dark:border-red-500" : "";
1376
- const disabledStyles = disabled ? "opacity-50 cursor-not-allowed bg-gray-50 dark:bg-gray-900" : "";
1376
+ const errorStyles = error ? "border-[hsl(var(--destructive))] focus:ring-[hsl(var(--destructive))]" : "";
1377
+ const disabledStyles = disabled ? "pointer-events-none opacity-50 bg-[hsl(var(--muted))]" : "";
1377
1378
  const widthStyle = fullWidth ? "w-full" : "";
1378
1379
  const paddingWithIcon = leftIcon ? "pl-10" : rightIcon ? "pr-10" : "";
1379
1380
  return /* @__PURE__ */ jsxs11("div", { className: `${widthStyle} ${className}`, children: [
1380
- label && /* @__PURE__ */ jsx80("label", { className: "block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1", children: label }),
1381
+ label && /* @__PURE__ */ jsx80("label", { className: "block text-sm font-medium text-[hsl(var(--foreground))] mb-1.5", children: label }),
1381
1382
  /* @__PURE__ */ jsxs11("div", { className: "relative", children: [
1382
- leftIcon && /* @__PURE__ */ jsx80("div", { className: "absolute left-3 top-1/2 transform -translate-y-1/2 text-gray-400 dark:text-gray-500", children: leftIcon }),
1383
+ leftIcon && /* @__PURE__ */ jsx80("div", { className: "absolute left-3 top-1/2 transform -translate-y-1/2 text-[hsl(var(--muted-foreground))]", children: leftIcon }),
1383
1384
  /* @__PURE__ */ jsx80(
1384
1385
  "input",
1385
1386
  {
@@ -1389,10 +1390,10 @@ var TextInput = forwardRef(
1389
1390
  ...props
1390
1391
  }
1391
1392
  ),
1392
- rightIcon && /* @__PURE__ */ jsx80("div", { className: "absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-400 dark:text-gray-500", children: rightIcon })
1393
+ rightIcon && /* @__PURE__ */ jsx80("div", { className: "absolute right-3 top-1/2 transform -translate-y-1/2 text-[hsl(var(--muted-foreground))]", children: rightIcon })
1393
1394
  ] }),
1394
- error && /* @__PURE__ */ jsx80("p", { className: "mt-1 text-sm text-red-600 dark:text-red-400", children: error }),
1395
- helperText && !error && /* @__PURE__ */ jsx80("p", { className: "mt-1 text-sm text-gray-500 dark:text-gray-400", children: helperText })
1395
+ error && /* @__PURE__ */ jsx80("p", { className: "mt-1.5 text-sm text-[hsl(var(--destructive))]", children: error }),
1396
+ helperText && !error && /* @__PURE__ */ jsx80("p", { className: "mt-1.5 text-sm text-[hsl(var(--muted-foreground))]", children: helperText })
1396
1397
  ] });
1397
1398
  }
1398
1399
  );
@@ -1403,8 +1404,8 @@ import { useState as useState5, useRef as useRef2 } from "react";
1403
1404
  import { jsx as jsx81, jsxs as jsxs12 } from "react/jsx-runtime";
1404
1405
  var sizeClasses5 = {
1405
1406
  sm: "px-3 py-1.5 text-sm",
1406
- md: "px-4 py-2.5 text-base",
1407
- lg: "px-4 py-3 text-lg"
1407
+ md: "px-3 py-2.5 text-sm",
1408
+ lg: "px-4 py-3 text-base"
1408
1409
  };
1409
1410
  var NumberInput = ({
1410
1411
  label,
@@ -1423,7 +1424,6 @@ var NumberInput = ({
1423
1424
  placeholder,
1424
1425
  className = ""
1425
1426
  }) => {
1426
- const { theme } = useTheme();
1427
1427
  const inputRef = useRef2(null);
1428
1428
  const [isFocused, setIsFocused] = useState5(false);
1429
1429
  const clampValue = (val) => {
@@ -1468,15 +1468,15 @@ var NumberInput = ({
1468
1468
  handleDecrement();
1469
1469
  }
1470
1470
  };
1471
- const baseStyles = "w-full appearance-none rounded-lg border border-gray-300 bg-white text-gray-900 transition-all duration-150 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent shadow-sm hover:border-gray-400 dark:bg-gray-800 dark:border-gray-600 dark:text-gray-100 dark:hover:border-gray-500";
1471
+ const baseStyles = "w-full appearance-none rounded-md border border-[hsl(var(--input))] bg-transparent text-[hsl(var(--foreground))] transition-colors duration-150 focus:outline-none focus:ring-1 focus:ring-[hsl(var(--ring))]/50 focus:border-[hsl(var(--ring))] hover:border-[hsl(var(--muted-foreground))] placeholder:text-[hsl(var(--muted-foreground))]";
1472
1472
  const sizeStyle = sizeClasses5[size];
1473
- const errorStyles = error ? "border-red-500 focus:ring-red-500 dark:border-red-500" : "";
1474
- const disabledStyles = disabled ? "opacity-50 cursor-not-allowed bg-gray-50 dark:bg-gray-900" : "";
1473
+ const errorStyles = error ? "border-[hsl(var(--destructive))] focus:ring-[hsl(var(--destructive))]/50" : "";
1474
+ const disabledStyles = disabled ? "opacity-50 cursor-not-allowed bg-[hsl(var(--muted))]" : "";
1475
1475
  const widthStyle = fullWidth ? "w-full" : "";
1476
1476
  const paddingWithControls = !hideControls ? "pr-8" : "";
1477
1477
  const displayValue = value !== void 0 ? value.toString() : "";
1478
1478
  return /* @__PURE__ */ jsxs12("div", { className: `${widthStyle} ${className}`, children: [
1479
- label && /* @__PURE__ */ jsx81("label", { className: "block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1", children: label }),
1479
+ label && /* @__PURE__ */ jsx81("label", { className: "block text-sm font-medium text-[hsl(var(--foreground))] mb-1.5", children: label }),
1480
1480
  /* @__PURE__ */ jsxs12("div", { className: "relative", children: [
1481
1481
  /* @__PURE__ */ jsx81(
1482
1482
  "input",
@@ -1503,9 +1503,9 @@ var NumberInput = ({
1503
1503
  type: "button",
1504
1504
  onClick: handleIncrement,
1505
1505
  disabled: disabled || max !== void 0 && value !== void 0 && value >= max,
1506
- className: "px-2 py-0.5 hover:bg-gray-100 dark:hover:bg-gray-700 rounded transition-colors disabled:opacity-30 disabled:cursor-not-allowed",
1506
+ className: "px-2 py-0.5 hover:bg-[hsl(var(--accent))] rounded transition-colors disabled:opacity-30 disabled:cursor-not-allowed",
1507
1507
  tabIndex: -1,
1508
- children: /* @__PURE__ */ jsx81("svg", { className: "w-3 h-3 text-gray-600 dark:text-gray-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx81("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 3, d: "M5 15l7-7 7 7" }) })
1508
+ children: /* @__PURE__ */ jsx81("svg", { className: "w-3 h-3 text-[hsl(var(--muted-foreground))]", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx81("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 3, d: "M5 15l7-7 7 7" }) })
1509
1509
  }
1510
1510
  ),
1511
1511
  /* @__PURE__ */ jsx81(
@@ -1514,15 +1514,15 @@ var NumberInput = ({
1514
1514
  type: "button",
1515
1515
  onClick: handleDecrement,
1516
1516
  disabled: disabled || min !== void 0 && value !== void 0 && value <= min,
1517
- className: "px-2 py-0.5 hover:bg-gray-100 dark:hover:bg-gray-700 rounded transition-colors disabled:opacity-30 disabled:cursor-not-allowed",
1517
+ className: "px-2 py-0.5 hover:bg-[hsl(var(--accent))] rounded transition-colors disabled:opacity-30 disabled:cursor-not-allowed",
1518
1518
  tabIndex: -1,
1519
- children: /* @__PURE__ */ jsx81("svg", { className: "w-3 h-3 text-gray-600 dark:text-gray-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx81("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 3, d: "M19 9l-7 7-7-7" }) })
1519
+ children: /* @__PURE__ */ jsx81("svg", { className: "w-3 h-3 text-[hsl(var(--muted-foreground))]", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx81("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 3, d: "M19 9l-7 7-7-7" }) })
1520
1520
  }
1521
1521
  )
1522
1522
  ] })
1523
1523
  ] }),
1524
- error && /* @__PURE__ */ jsx81("p", { className: "mt-1 text-sm text-red-600 dark:text-red-400", children: error }),
1525
- helperText && !error && /* @__PURE__ */ jsx81("p", { className: "mt-1 text-sm text-gray-500 dark:text-gray-400", children: helperText })
1524
+ error && /* @__PURE__ */ jsx81("p", { className: "mt-1.5 text-sm text-[hsl(var(--destructive))]", children: error }),
1525
+ helperText && !error && /* @__PURE__ */ jsx81("p", { className: "mt-1.5 text-sm text-[hsl(var(--muted-foreground))]", children: helperText })
1526
1526
  ] });
1527
1527
  };
1528
1528
  NumberInput.displayName = "NumberInput";
@@ -1598,18 +1598,18 @@ var ActionMenu = ({
1598
1598
  const defaultTrigger = /* @__PURE__ */ jsx82(
1599
1599
  "button",
1600
1600
  {
1601
- className: "p-2 rounded-md hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors",
1601
+ className: "p-2 rounded-md hover:bg-[hsl(var(--accent))] transition-colors",
1602
1602
  "aria-label": "Open menu",
1603
- children: /* @__PURE__ */ jsx82("svg", { className: "w-5 h-5 text-gray-600 dark:text-gray-400", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: /* @__PURE__ */ jsx82("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M12 5v.01M12 12v.01M12 19v.01M12 6a1 1 0 110-2 1 1 0 010 2zm0 7a1 1 0 110-2 1 1 0 010 2zm0 7a1 1 0 110-2 1 1 0 010 2z" }) })
1603
+ children: /* @__PURE__ */ jsx82("svg", { className: "w-5 h-5 text-[hsl(var(--muted-foreground))]", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: /* @__PURE__ */ jsx82("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M12 5v.01M12 12v.01M12 19v.01M12 6a1 1 0 110-2 1 1 0 010 2zm0 7a1 1 0 110-2 1 1 0 010 2zm0 7a1 1 0 110-2 1 1 0 010 2z" }) })
1604
1604
  }
1605
1605
  );
1606
- const menuBaseStyles = themeName === "minimalistic" ? "bg-black border-2 border-white" : "bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-700 shadow-lg";
1607
- const itemBaseStyles = themeName === "minimalistic" ? "text-white hover:bg-white hover:text-black transition-colors duration-200" : "text-gray-700 dark:text-gray-200 hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors";
1606
+ const menuBaseStyles = themeName === "minimalistic" ? "bg-black border-2 border-white" : "bg-[hsl(var(--popover))] border border-[hsl(var(--border))] shadow-lg";
1607
+ const itemBaseStyles = themeName === "minimalistic" ? "text-white hover:bg-white hover:text-black transition-colors duration-200" : "text-[hsl(var(--popover-foreground))] hover:bg-[hsl(var(--accent))] transition-colors";
1608
1608
  const menu = isOpen && mounted && menuPosition ? /* @__PURE__ */ jsx82(
1609
1609
  "div",
1610
1610
  {
1611
1611
  ref: menuRef,
1612
- className: `fixed w-56 rounded-lg ${menuBaseStyles} z-[9999] max-h-[80vh] overflow-auto`,
1612
+ className: `fixed w-56 rounded-md ${menuBaseStyles} z-[9999] max-h-[80vh] overflow-auto`,
1613
1613
  style: {
1614
1614
  minWidth: "14rem",
1615
1615
  top: `${menuPosition.top}px`,
@@ -1620,7 +1620,7 @@ var ActionMenu = ({
1620
1620
  return /* @__PURE__ */ jsx82(
1621
1621
  "div",
1622
1622
  {
1623
- className: "my-1 border-t border-gray-200 dark:border-gray-700"
1623
+ className: "my-1 border-t border-[hsl(var(--border))]"
1624
1624
  },
1625
1625
  index
1626
1626
  );
@@ -1630,7 +1630,7 @@ var ActionMenu = ({
1630
1630
  {
1631
1631
  onClick: () => handleItemClick(item),
1632
1632
  disabled: item.disabled,
1633
- className: `w-full text-left px-4 py-3 flex items-center gap-3 ${itemBaseStyles} ${item.disabled ? "opacity-50 cursor-not-allowed" : "cursor-pointer"} ${item.variant === "danger" ? "text-red-600 dark:text-red-400 hover:bg-red-50 dark:hover:bg-red-900/20" : ""}`,
1633
+ className: `w-full text-left px-4 py-2.5 flex items-center gap-3 ${itemBaseStyles} ${item.disabled ? "opacity-50 cursor-not-allowed" : "cursor-pointer"} ${item.variant === "danger" ? "text-[hsl(var(--destructive))] hover:bg-[hsl(var(--destructive))]/10" : ""}`,
1634
1634
  children: [
1635
1635
  item.icon && /* @__PURE__ */ jsx82("span", { className: "flex-shrink-0", children: item.icon }),
1636
1636
  /* @__PURE__ */ jsx82("span", { className: "flex-1", children: item.label })
@@ -1662,13 +1662,12 @@ var Card = ({
1662
1662
  hover = false,
1663
1663
  ...props
1664
1664
  }) => {
1665
- const { theme } = useTheme();
1666
1665
  const paddingClass = paddingClasses[padding];
1667
- const hoverClass = hover ? "hover:shadow-xl hover:scale-[1.02] hover:border-blue-400 dark:hover:border-blue-500 cursor-pointer transition-all duration-200 ease-in-out" : "";
1666
+ const hoverClass = hover ? "hover:shadow-lg hover:border-[hsl(var(--ring))]/50 cursor-pointer transition-all duration-200 ease-in-out" : "";
1668
1667
  return /* @__PURE__ */ jsx83(
1669
1668
  "div",
1670
1669
  {
1671
- className: `bg-white dark:bg-gray-800 rounded-lg shadow-sm border border-gray-200 dark:border-gray-700 ${paddingClass} ${hoverClass} ${className}`,
1670
+ className: `bg-[hsl(var(--card))] text-[hsl(var(--card-foreground))] rounded-[--radius] border border-[hsl(var(--border))] shadow-sm ${paddingClass} ${hoverClass} ${className}`,
1672
1671
  ...props,
1673
1672
  children
1674
1673
  }
@@ -1678,16 +1677,16 @@ var Card = ({
1678
1677
  // src/components/Alert.tsx
1679
1678
  import { jsx as jsx84, jsxs as jsxs14 } from "react/jsx-runtime";
1680
1679
  var variantStyles = {
1681
- info: "bg-blue-50 dark:bg-blue-900/20 border-blue-200 dark:border-blue-800 text-blue-900 dark:text-blue-100",
1682
- success: "bg-green-50 dark:bg-green-900/20 border-green-200 dark:border-green-800 text-green-900 dark:text-green-100",
1683
- warning: "bg-yellow-50 dark:bg-yellow-900/20 border-yellow-200 dark:border-yellow-800 text-yellow-900 dark:text-yellow-100",
1684
- error: "bg-red-50 dark:bg-red-900/20 border-red-200 dark:border-red-800 text-red-900 dark:text-red-100"
1680
+ info: "bg-[hsl(var(--info))]/10 border-[hsl(var(--info))]/20 text-[hsl(var(--info))]",
1681
+ success: "bg-[hsl(var(--success))]/10 border-[hsl(var(--success))]/20 text-[hsl(var(--success))]",
1682
+ warning: "bg-[hsl(var(--warning))]/10 border-[hsl(var(--warning))]/20 text-[hsl(var(--warning))]",
1683
+ error: "bg-[hsl(var(--destructive))]/10 border-[hsl(var(--destructive))]/20 text-[hsl(var(--destructive))]"
1685
1684
  };
1686
1685
  var iconStyles = {
1687
- info: "text-blue-600 dark:text-blue-400",
1688
- success: "text-green-600 dark:text-green-400",
1689
- warning: "text-yellow-600 dark:text-yellow-400",
1690
- error: "text-red-600 dark:text-red-400"
1686
+ info: "text-[hsl(var(--info))]",
1687
+ success: "text-[hsl(var(--success))]",
1688
+ warning: "text-[hsl(var(--warning))]",
1689
+ error: "text-[hsl(var(--destructive))]"
1691
1690
  };
1692
1691
  var Alert = ({
1693
1692
  variant = "info",
@@ -1696,10 +1695,9 @@ var Alert = ({
1696
1695
  onClose,
1697
1696
  className = ""
1698
1697
  }) => {
1699
- const { theme } = useTheme();
1700
1698
  const variantClass = variantStyles[variant];
1701
1699
  const iconClass = iconStyles[variant];
1702
- return /* @__PURE__ */ jsx84("div", { className: `rounded-lg border p-4 ${variantClass} ${className}`, role: "alert", children: /* @__PURE__ */ jsxs14("div", { className: "flex items-start gap-3", children: [
1700
+ return /* @__PURE__ */ jsx84("div", { className: `rounded-[--radius] border p-4 ${variantClass} ${className}`, role: "alert", children: /* @__PURE__ */ jsxs14("div", { className: "flex items-start gap-3", children: [
1703
1701
  /* @__PURE__ */ jsxs14("div", { className: `flex-shrink-0 ${iconClass}`, children: [
1704
1702
  variant === "info" && /* @__PURE__ */ jsx84("svg", { className: "w-5 h-5", fill: "currentColor", viewBox: "0 0 20 20", children: /* @__PURE__ */ jsx84("path", { fillRule: "evenodd", d: "M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a1 1 0 000 2v3a1 1 0 001 1h1a1 1 0 100-2v-3a1 1 0 00-1-1H9z", clipRule: "evenodd" }) }),
1705
1703
  variant === "success" && /* @__PURE__ */ jsx84("svg", { className: "w-5 h-5", fill: "currentColor", viewBox: "0 0 20 20", children: /* @__PURE__ */ jsx84("path", { fillRule: "evenodd", d: "M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z", clipRule: "evenodd" }) }),
@@ -1727,7 +1725,6 @@ import { forwardRef as forwardRef2 } from "react";
1727
1725
  import { jsx as jsx85, jsxs as jsxs15 } from "react/jsx-runtime";
1728
1726
  var Checkbox = forwardRef2(
1729
1727
  ({ label, error, className = "", disabled, checked, ...props }, ref) => {
1730
- const { theme } = useTheme();
1731
1728
  return /* @__PURE__ */ jsxs15("div", { className, children: [
1732
1729
  /* @__PURE__ */ jsxs15("label", { className: "flex items-center gap-2 cursor-pointer group", children: [
1733
1730
  /* @__PURE__ */ jsxs15("div", { className: "relative inline-flex items-center", children: [
@@ -1742,11 +1739,11 @@ var Checkbox = forwardRef2(
1742
1739
  ...props
1743
1740
  }
1744
1741
  ),
1745
- /* @__PURE__ */ jsx85("div", { className: `w-4 h-4 border-2 rounded transition-all duration-200 flex items-center justify-center
1746
- ${error ? "border-red-500 dark:border-red-500" : "border-gray-300 dark:border-gray-600"}
1747
- ${disabled ? "opacity-50 cursor-not-allowed bg-gray-100 dark:bg-gray-800" : "peer-hover:border-gray-400 dark:peer-hover:border-gray-500"}
1748
- peer-checked:bg-blue-600 peer-checked:border-blue-600
1749
- peer-focus:ring-2 peer-focus:ring-blue-500 peer-focus:ring-offset-2
1742
+ /* @__PURE__ */ jsx85("div", { className: `w-4 h-4 border-2 rounded-sm transition-all duration-200 flex items-center justify-center
1743
+ ${error ? "border-[hsl(var(--destructive))]" : "border-[hsl(var(--input))]"}
1744
+ ${disabled ? "opacity-50 cursor-not-allowed bg-[hsl(var(--muted))]" : "peer-hover:border-[hsl(var(--ring))]"}
1745
+ peer-checked:bg-[hsl(var(--primary))] peer-checked:border-[hsl(var(--primary))]
1746
+ peer-focus:ring-1 peer-focus:ring-[hsl(var(--ring))]/50
1750
1747
  `, children: /* @__PURE__ */ jsx85(
1751
1748
  "svg",
1752
1749
  {
@@ -1767,9 +1764,9 @@ var Checkbox = forwardRef2(
1767
1764
  }
1768
1765
  ) })
1769
1766
  ] }),
1770
- label && /* @__PURE__ */ jsx85("span", { className: `text-sm text-gray-700 dark:text-gray-300 ${disabled ? "opacity-50 cursor-not-allowed" : "group-hover:text-gray-900 dark:group-hover:text-gray-100"}`, children: label })
1767
+ label && /* @__PURE__ */ jsx85("span", { className: `text-sm text-[hsl(var(--foreground))] ${disabled ? "opacity-50 cursor-not-allowed" : ""}`, children: label })
1771
1768
  ] }),
1772
- error && /* @__PURE__ */ jsx85("p", { className: "mt-1 text-sm text-red-600 dark:text-red-400", children: error })
1769
+ error && /* @__PURE__ */ jsx85("p", { className: "mt-1 text-sm text-[hsl(var(--destructive))]", children: error })
1773
1770
  ] });
1774
1771
  }
1775
1772
  );
@@ -1780,7 +1777,6 @@ import { forwardRef as forwardRef3 } from "react";
1780
1777
  import { jsx as jsx86, jsxs as jsxs16 } from "react/jsx-runtime";
1781
1778
  var Toggle = forwardRef3(
1782
1779
  ({ label, size = "md", className = "", disabled, checked, ...props }, ref) => {
1783
- const { theme } = useTheme();
1784
1780
  const toggleClasses = {
1785
1781
  sm: {
1786
1782
  switch: "w-9 h-5",
@@ -1812,7 +1808,7 @@ var Toggle = forwardRef3(
1812
1808
  /* @__PURE__ */ jsx86(
1813
1809
  "div",
1814
1810
  {
1815
- className: `${currentSize.switch} bg-gray-300 dark:bg-gray-700 peer-focus:ring-2 peer-focus:ring-blue-500 rounded-full peer peer-checked:bg-blue-600 dark:peer-checked:bg-blue-500 transition-colors`
1811
+ className: `${currentSize.switch} bg-[hsl(var(--input))] peer-focus:ring-1 peer-focus:ring-[hsl(var(--ring))]/50 rounded-full peer peer-checked:bg-[hsl(var(--primary))] transition-colors`
1816
1812
  }
1817
1813
  ),
1818
1814
  /* @__PURE__ */ jsx86(
@@ -1822,7 +1818,7 @@ var Toggle = forwardRef3(
1822
1818
  }
1823
1819
  )
1824
1820
  ] }),
1825
- label && /* @__PURE__ */ jsx86("span", { className: "text-sm font-medium text-gray-700 dark:text-gray-300", children: label })
1821
+ label && /* @__PURE__ */ jsx86("span", { className: "text-sm font-medium text-[hsl(var(--foreground))]", children: label })
1826
1822
  ] });
1827
1823
  }
1828
1824
  );
@@ -1831,12 +1827,12 @@ Toggle.displayName = "Toggle";
1831
1827
  // src/components/Badge.tsx
1832
1828
  import { jsx as jsx87 } from "react/jsx-runtime";
1833
1829
  var variantStyles2 = {
1834
- default: "bg-gray-100 dark:bg-gray-700 text-gray-800 dark:text-gray-200",
1835
- primary: "bg-blue-100 dark:bg-blue-900/30 text-blue-800 dark:text-blue-200",
1836
- success: "bg-green-100 dark:bg-green-900/30 text-green-800 dark:text-green-200",
1837
- warning: "bg-yellow-100 dark:bg-yellow-900/30 text-yellow-800 dark:text-yellow-200",
1838
- error: "bg-red-100 dark:bg-red-900/30 text-red-800 dark:text-red-200",
1839
- info: "bg-cyan-100 dark:bg-cyan-900/30 text-cyan-800 dark:text-cyan-200"
1830
+ default: "bg-[hsl(var(--secondary))] text-[hsl(var(--secondary-foreground))]",
1831
+ primary: "bg-[hsl(var(--primary))]/10 text-[hsl(var(--primary))]",
1832
+ success: "bg-[hsl(var(--success))]/10 text-[hsl(var(--success))]",
1833
+ warning: "bg-[hsl(var(--warning))]/10 text-[hsl(var(--warning))]",
1834
+ error: "bg-[hsl(var(--destructive))]/10 text-[hsl(var(--destructive))]",
1835
+ info: "bg-[hsl(var(--info))]/10 text-[hsl(var(--info))]"
1840
1836
  };
1841
1837
  var sizeStyles = {
1842
1838
  sm: "px-2 py-0.5 text-xs",
@@ -1849,7 +1845,6 @@ var Badge = ({
1849
1845
  size = "md",
1850
1846
  className = ""
1851
1847
  }) => {
1852
- const { theme } = useTheme();
1853
1848
  const variantClass = variantStyles2[variant];
1854
1849
  const sizeClass = sizeStyles[size];
1855
1850
  return /* @__PURE__ */ jsx87("span", { className: `inline-flex items-center font-medium rounded-full ${variantClass} ${sizeClass} ${className}`, children });
@@ -1864,8 +1859,8 @@ var sizeClasses6 = {
1864
1859
  xl: "w-16 h-16 border-4"
1865
1860
  };
1866
1861
  var colorClasses = {
1867
- primary: "border-blue-600 border-t-transparent",
1868
- secondary: "border-gray-600 border-t-transparent",
1862
+ primary: "border-[hsl(var(--primary))] border-t-transparent",
1863
+ secondary: "border-[hsl(var(--muted-foreground))] border-t-transparent",
1869
1864
  white: "border-white border-t-transparent"
1870
1865
  };
1871
1866
  var Spinner = ({
@@ -1873,7 +1868,6 @@ var Spinner = ({
1873
1868
  color = "primary",
1874
1869
  className = ""
1875
1870
  }) => {
1876
- const { theme } = useTheme();
1877
1871
  const sizeClass = sizeClasses6[size];
1878
1872
  const colorClass = colorClasses[color];
1879
1873
  return /* @__PURE__ */ jsx88(
@@ -1896,7 +1890,6 @@ var Tabs = ({
1896
1890
  onChange,
1897
1891
  className = ""
1898
1892
  }) => {
1899
- const { theme } = useTheme();
1900
1893
  const [activeIndex, setActiveIndex] = useState7(defaultIndex);
1901
1894
  const handleTabClick = (index) => {
1902
1895
  if (tabs[index].disabled) return;
@@ -1904,12 +1897,12 @@ var Tabs = ({
1904
1897
  onChange?.(index);
1905
1898
  };
1906
1899
  return /* @__PURE__ */ jsxs17("div", { className, children: [
1907
- /* @__PURE__ */ jsx89("div", { className: "border-b border-gray-200 dark:border-gray-700", children: /* @__PURE__ */ jsx89("nav", { className: "flex gap-8 px-6", "aria-label": "Tabs", children: tabs.map((tab, index) => /* @__PURE__ */ jsx89(
1900
+ /* @__PURE__ */ jsx89("div", { className: "border-b border-[hsl(var(--border))]", children: /* @__PURE__ */ jsx89("nav", { className: "flex gap-6", "aria-label": "Tabs", children: tabs.map((tab, index) => /* @__PURE__ */ jsx89(
1908
1901
  "button",
1909
1902
  {
1910
1903
  onClick: () => handleTabClick(index),
1911
1904
  disabled: tab.disabled,
1912
- className: `py-4 px-1 border-b-2 font-medium text-sm transition-colors ${activeIndex === index ? "border-blue-600 text-blue-600 dark:text-blue-400" : "border-transparent text-gray-600 dark:text-gray-400 hover:text-gray-900 dark:hover:text-gray-200 hover:border-gray-300 dark:hover:border-gray-600"} ${tab.disabled ? "opacity-50 cursor-not-allowed" : "cursor-pointer"}`,
1905
+ className: `py-3 px-1 border-b-2 font-medium text-sm transition-colors ${activeIndex === index ? "border-[hsl(var(--primary))] text-[hsl(var(--foreground))]" : "border-transparent text-[hsl(var(--muted-foreground))] hover:text-[hsl(var(--foreground))] hover:border-[hsl(var(--border))]"} ${tab.disabled ? "opacity-50 cursor-not-allowed" : "cursor-pointer"}`,
1913
1906
  "aria-current": activeIndex === index ? "page" : void 0,
1914
1907
  children: tab.label
1915
1908
  },
@@ -1930,26 +1923,25 @@ function Table({
1930
1923
  className = "",
1931
1924
  responsive = true
1932
1925
  }) {
1933
- const { theme } = useTheme();
1934
1926
  return /* @__PURE__ */ jsxs18("div", { className, children: [
1935
1927
  /* @__PURE__ */ jsxs18("div", { className: `${responsive ? "hidden md:block" : ""} overflow-x-auto`, children: [
1936
1928
  /* @__PURE__ */ jsxs18("table", { className: "w-full text-left", children: [
1937
- /* @__PURE__ */ jsx90("thead", { className: "bg-gray-50 dark:bg-gray-800 border-b border-gray-200 dark:border-gray-700", children: /* @__PURE__ */ jsx90("tr", { children: columns.map((column, colIndex) => {
1929
+ /* @__PURE__ */ jsx90("thead", { className: "bg-[hsl(var(--muted))] border-b border-[hsl(var(--border))]", children: /* @__PURE__ */ jsx90("tr", { children: columns.map((column, colIndex) => {
1938
1930
  const isLast = colIndex === columns.length - 1;
1939
1931
  return /* @__PURE__ */ jsx90(
1940
1932
  "th",
1941
1933
  {
1942
- className: isLast ? "px-6 py-3 text-xs font-medium text-gray-700 dark:text-gray-300 uppercase tracking-wider relative" : "px-6 py-3 text-xs font-medium text-gray-700 dark:text-gray-300 uppercase tracking-wider",
1934
+ className: isLast ? "px-6 py-3 text-xs font-medium text-[hsl(var(--muted-foreground))] uppercase tracking-wider relative" : "px-6 py-3 text-xs font-medium text-[hsl(var(--muted-foreground))] uppercase tracking-wider",
1943
1935
  style: { width: column.width },
1944
1936
  children: column.title
1945
1937
  },
1946
1938
  column.key
1947
1939
  );
1948
1940
  }) }) }),
1949
- /* @__PURE__ */ jsx90("tbody", { className: "bg-white dark:bg-gray-900 divide-y divide-gray-200 dark:divide-gray-700", children: data.map((row, rowIndex) => {
1941
+ /* @__PURE__ */ jsx90("tbody", { className: "bg-[hsl(var(--card))] divide-y divide-[hsl(var(--border))]", children: data.map((row, rowIndex) => {
1950
1942
  const rowClasses = [
1951
- striped && rowIndex % 2 === 1 ? "bg-gray-50 dark:bg-gray-800/50" : "",
1952
- hoverable ? "hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors" : ""
1943
+ striped && rowIndex % 2 === 1 ? "bg-[hsl(var(--muted))]/50" : "",
1944
+ hoverable ? "hover:bg-[hsl(var(--muted))] transition-colors" : ""
1953
1945
  ].filter(Boolean).join(" ");
1954
1946
  return /* @__PURE__ */ jsx90(
1955
1947
  "tr",
@@ -1960,7 +1952,7 @@ function Table({
1960
1952
  return /* @__PURE__ */ jsx90(
1961
1953
  "td",
1962
1954
  {
1963
- className: isLast ? "px-6 py-4 text-sm text-gray-900 dark:text-gray-100 overflow-visible" : "px-6 py-4 text-sm text-gray-900 dark:text-gray-100",
1955
+ className: isLast ? "px-6 py-4 text-sm text-[hsl(var(--foreground))] overflow-visible" : "px-6 py-4 text-sm text-[hsl(var(--foreground))]",
1964
1956
  children: column.render ? column.render(row[column.key], row, rowIndex) : row[column.key]
1965
1957
  },
1966
1958
  column.key
@@ -1971,12 +1963,12 @@ function Table({
1971
1963
  );
1972
1964
  }) })
1973
1965
  ] }),
1974
- data.length === 0 && /* @__PURE__ */ jsx90("div", { className: "text-center py-8 text-gray-500 dark:text-gray-400", children: "No data available" })
1966
+ data.length === 0 && /* @__PURE__ */ jsx90("div", { className: "text-center py-8 text-[hsl(var(--muted-foreground))]", children: "No data available" })
1975
1967
  ] }),
1976
1968
  responsive && /* @__PURE__ */ jsxs18("div", { className: "md:hidden space-y-3", children: [
1977
1969
  data.map((row, rowIndex) => {
1978
1970
  const cardClasses = [
1979
- "bg-white dark:bg-gray-900 border border-gray-200 dark:border-gray-700 rounded-lg p-4 shadow-sm",
1971
+ "bg-[hsl(var(--card))] border border-[hsl(var(--border))] rounded-[--radius] p-4 shadow-sm",
1980
1972
  hoverable ? "hover:shadow-md transition-shadow" : "",
1981
1973
  "relative isolate"
1982
1974
  // Ensure cards are isolated layers
@@ -1988,10 +1980,10 @@ function Table({
1988
1980
  children: columns.map((column) => /* @__PURE__ */ jsxs18(
1989
1981
  "div",
1990
1982
  {
1991
- className: "flex justify-between items-start py-2 border-b border-gray-100 dark:border-gray-800 last:border-b-0",
1983
+ className: "flex justify-between items-start py-2 border-b border-[hsl(var(--border))]/50 last:border-b-0",
1992
1984
  children: [
1993
- /* @__PURE__ */ jsx90("span", { className: "text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wider flex-shrink-0 mr-4", children: column.title }),
1994
- /* @__PURE__ */ jsx90("span", { className: "text-sm text-gray-900 dark:text-gray-100 text-right", children: column.render ? column.render(row[column.key], row, rowIndex) : row[column.key] })
1985
+ /* @__PURE__ */ jsx90("span", { className: "text-xs font-medium text-[hsl(var(--muted-foreground))] uppercase tracking-wider flex-shrink-0 mr-4", children: column.title }),
1986
+ /* @__PURE__ */ jsx90("span", { className: "text-sm text-[hsl(var(--foreground))] text-right", children: column.render ? column.render(row[column.key], row, rowIndex) : row[column.key] })
1995
1987
  ]
1996
1988
  },
1997
1989
  column.key
@@ -2000,7 +1992,7 @@ function Table({
2000
1992
  row[keyField] || rowIndex
2001
1993
  );
2002
1994
  }),
2003
- data.length === 0 && /* @__PURE__ */ jsx90("div", { className: "text-center py-8 text-gray-500 dark:text-gray-400", children: "No data available" })
1995
+ data.length === 0 && /* @__PURE__ */ jsx90("div", { className: "text-center py-8 text-[hsl(var(--muted-foreground))]", children: "No data available" })
2004
1996
  ] })
2005
1997
  ] });
2006
1998
  }
@@ -2014,7 +2006,6 @@ var Pagination = ({
2014
2006
  siblingCount = 1,
2015
2007
  className = ""
2016
2008
  }) => {
2017
- const { theme } = useTheme();
2018
2009
  const range = (start, end) => {
2019
2010
  const length = end - start + 1;
2020
2011
  return Array.from({ length }, (_, idx) => idx + start);
@@ -2053,7 +2044,7 @@ var Pagination = ({
2053
2044
  {
2054
2045
  onClick: () => onPageChange(currentPage - 1),
2055
2046
  disabled: currentPage === 1,
2056
- className: "px-3 py-2 rounded-md text-sm font-medium text-gray-700 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-800 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",
2047
+ className: "px-3 py-2 rounded-md text-sm font-medium text-[hsl(var(--foreground))] hover:bg-[hsl(var(--accent))] disabled:opacity-50 disabled:pointer-events-none transition-colors",
2057
2048
  "aria-label": "Previous page",
2058
2049
  children: "Previous"
2059
2050
  }
@@ -2063,7 +2054,7 @@ var Pagination = ({
2063
2054
  return /* @__PURE__ */ jsx91(
2064
2055
  "span",
2065
2056
  {
2066
- className: "px-3 py-2 text-gray-700 dark:text-gray-300",
2057
+ className: "px-3 py-2 text-[hsl(var(--muted-foreground))]",
2067
2058
  children: "..."
2068
2059
  },
2069
2060
  `dots-${index}`
@@ -2073,7 +2064,7 @@ var Pagination = ({
2073
2064
  "button",
2074
2065
  {
2075
2066
  onClick: () => onPageChange(page),
2076
- className: `px-3 py-2 rounded-md text-sm font-medium transition-colors ${currentPage === page ? "bg-blue-600 text-white" : "text-gray-700 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-800"}`,
2067
+ className: `px-3 py-2 rounded-md text-sm font-medium transition-colors ${currentPage === page ? "bg-[hsl(var(--primary))] text-[hsl(var(--primary-foreground))]" : "text-[hsl(var(--foreground))] hover:bg-[hsl(var(--accent))]"}`,
2077
2068
  "aria-label": `Page ${page}`,
2078
2069
  "aria-current": currentPage === page ? "page" : void 0,
2079
2070
  children: page
@@ -2086,7 +2077,7 @@ var Pagination = ({
2086
2077
  {
2087
2078
  onClick: () => onPageChange(currentPage + 1),
2088
2079
  disabled: currentPage === totalPages,
2089
- className: "px-3 py-2 rounded-md text-sm font-medium text-gray-700 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-800 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",
2080
+ className: "px-3 py-2 rounded-md text-sm font-medium text-[hsl(var(--foreground))] hover:bg-[hsl(var(--accent))] disabled:opacity-50 disabled:pointer-events-none transition-colors",
2090
2081
  "aria-label": "Next page",
2091
2082
  children: "Next"
2092
2083
  }
@@ -2125,7 +2116,6 @@ var DatePicker = ({
2125
2116
  className = "",
2126
2117
  placeholder = "Select date..."
2127
2118
  }) => {
2128
- const { theme } = useTheme();
2129
2119
  const [isOpen, setIsOpen] = useState8(false);
2130
2120
  const [viewDate, setViewDate] = useState8(value || /* @__PURE__ */ new Date());
2131
2121
  const [mounted, setMounted] = useState8(false);
@@ -2215,14 +2205,14 @@ var DatePicker = ({
2215
2205
  year: "numeric"
2216
2206
  });
2217
2207
  };
2218
- const baseStyles = "w-full appearance-none rounded-lg border border-gray-300 bg-white text-gray-900 px-4 py-2.5 text-base transition-all duration-150 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent shadow-sm hover:border-gray-400 dark:bg-gray-800 dark:border-gray-600 dark:text-gray-100 dark:hover:border-gray-500 cursor-pointer";
2219
- const errorStyles = error ? "border-red-500 focus:ring-red-500 dark:border-red-500" : "";
2220
- const disabledStyles = disabled ? "opacity-50 cursor-not-allowed bg-gray-50 dark:bg-gray-900" : "";
2208
+ const baseStyles = "w-full appearance-none rounded-md border border-[hsl(var(--input))] bg-transparent text-[hsl(var(--foreground))] px-4 py-2.5 text-sm transition-colors duration-150 focus:outline-none focus:ring-1 focus:ring-[hsl(var(--ring))]/50 focus:border-[hsl(var(--ring))] hover:border-[hsl(var(--muted-foreground))] cursor-pointer";
2209
+ const errorStyles = error ? "border-[hsl(var(--destructive))] focus:ring-[hsl(var(--destructive))]/50" : "";
2210
+ const disabledStyles = disabled ? "opacity-50 cursor-not-allowed bg-[hsl(var(--muted))]" : "";
2221
2211
  const calendar = isOpen && mounted && calendarPosition ? /* @__PURE__ */ jsxs20(
2222
2212
  "div",
2223
2213
  {
2224
2214
  ref: calendarRef,
2225
- className: "fixed z-[9999] bg-white dark:bg-gray-800 rounded-lg border border-gray-200 dark:border-gray-700 shadow-xl p-4",
2215
+ className: "fixed z-[9999] bg-[hsl(var(--popover))] rounded-md border border-[hsl(var(--border))] shadow-lg p-4",
2226
2216
  style: {
2227
2217
  top: `${calendarPosition.top}px`,
2228
2218
  left: `${calendarPosition.left}px`,
@@ -2234,13 +2224,13 @@ var DatePicker = ({
2234
2224
  "button",
2235
2225
  {
2236
2226
  onClick: handlePrevMonth,
2237
- className: "p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors",
2227
+ className: "p-2 hover:bg-[hsl(var(--accent))] rounded-md transition-colors",
2238
2228
  "aria-label": "Previous month",
2239
- children: /* @__PURE__ */ jsx92("svg", { className: "w-5 h-5 text-gray-600 dark:text-gray-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx92("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M15 19l-7-7 7-7" }) })
2229
+ children: /* @__PURE__ */ jsx92("svg", { className: "w-5 h-5 text-[hsl(var(--muted-foreground))]", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx92("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M15 19l-7-7 7-7" }) })
2240
2230
  }
2241
2231
  ),
2242
2232
  /* @__PURE__ */ jsxs20("div", { className: "flex items-center gap-2", children: [
2243
- /* @__PURE__ */ jsxs20("h2", { className: "text-base font-semibold text-gray-900 dark:text-gray-100", children: [
2233
+ /* @__PURE__ */ jsxs20("h2", { className: "text-base font-semibold text-[hsl(var(--foreground))]", children: [
2244
2234
  MONTHS[month],
2245
2235
  " ",
2246
2236
  year
@@ -2249,7 +2239,7 @@ var DatePicker = ({
2249
2239
  "button",
2250
2240
  {
2251
2241
  onClick: handleToday,
2252
- className: "px-2 py-1 text-xs bg-blue-600 text-white rounded hover:bg-blue-700 transition-colors",
2242
+ className: "px-2 py-1 text-xs bg-[hsl(var(--primary))] text-[hsl(var(--primary-foreground))] rounded-md hover:bg-[hsl(var(--primary))]/90 transition-colors",
2253
2243
  children: "Today"
2254
2244
  }
2255
2245
  )
@@ -2258,13 +2248,13 @@ var DatePicker = ({
2258
2248
  "button",
2259
2249
  {
2260
2250
  onClick: handleNextMonth,
2261
- className: "p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors",
2251
+ className: "p-2 hover:bg-[hsl(var(--accent))] rounded-md transition-colors",
2262
2252
  "aria-label": "Next month",
2263
- children: /* @__PURE__ */ jsx92("svg", { className: "w-5 h-5 text-gray-600 dark:text-gray-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx92("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M9 5l7 7-7 7" }) })
2253
+ children: /* @__PURE__ */ jsx92("svg", { className: "w-5 h-5 text-[hsl(var(--muted-foreground))]", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx92("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M9 5l7 7-7 7" }) })
2264
2254
  }
2265
2255
  )
2266
2256
  ] }),
2267
- /* @__PURE__ */ jsx92("div", { className: "grid grid-cols-7 gap-1 mb-2", children: DAYS.map((day) => /* @__PURE__ */ jsx92("div", { className: "text-center text-xs font-semibold text-gray-600 dark:text-gray-400 py-1", children: day }, day)) }),
2257
+ /* @__PURE__ */ jsx92("div", { className: "grid grid-cols-7 gap-1 mb-2", children: DAYS.map((day) => /* @__PURE__ */ jsx92("div", { className: "text-center text-xs font-semibold text-[hsl(var(--muted-foreground))] py-1", children: day }, day)) }),
2268
2258
  /* @__PURE__ */ jsx92("div", { className: "grid grid-cols-7 gap-1", children: calendarDays.map((date, index) => {
2269
2259
  const isCurrentMonthDay = isCurrentMonth(date);
2270
2260
  const isTodayDay = isToday(date);
@@ -2276,11 +2266,11 @@ var DatePicker = ({
2276
2266
  onClick: () => handleDateClick(date),
2277
2267
  disabled: isDisabledDay,
2278
2268
  className: `
2279
- aspect-square p-1 rounded-lg text-sm font-medium transition-all
2280
- ${!isCurrentMonthDay ? "text-gray-400 dark:text-gray-600" : "text-gray-900 dark:text-gray-100"}
2281
- ${isTodayDay && !isSelectedDay ? "bg-blue-50 dark:bg-blue-900/20 text-blue-600 dark:text-blue-400 font-bold" : ""}
2282
- ${isSelectedDay ? "bg-blue-600 text-white hover:bg-blue-700" : ""}
2283
- ${!isSelectedDay && !isDisabledDay ? "hover:bg-gray-100 dark:hover:bg-gray-700" : ""}
2269
+ aspect-square p-1 rounded-md text-sm font-medium transition-all
2270
+ ${!isCurrentMonthDay ? "text-[hsl(var(--muted-foreground))]/50" : "text-[hsl(var(--foreground))]"}
2271
+ ${isTodayDay && !isSelectedDay ? "bg-[hsl(var(--accent))] text-[hsl(var(--primary))] font-bold" : ""}
2272
+ ${isSelectedDay ? "bg-[hsl(var(--primary))] text-[hsl(var(--primary-foreground))] hover:bg-[hsl(var(--primary))]/90" : ""}
2273
+ ${!isSelectedDay && !isDisabledDay ? "hover:bg-[hsl(var(--accent))]" : ""}
2284
2274
  ${isDisabledDay ? "opacity-30 cursor-not-allowed" : "cursor-pointer"}
2285
2275
  `,
2286
2276
  children: date.getDate()
@@ -2292,7 +2282,7 @@ var DatePicker = ({
2292
2282
  }
2293
2283
  ) : null;
2294
2284
  return /* @__PURE__ */ jsxs20("div", { className, children: [
2295
- label && /* @__PURE__ */ jsx92("label", { className: "block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1", children: label }),
2285
+ label && /* @__PURE__ */ jsx92("label", { className: "block text-sm font-medium text-[hsl(var(--foreground))] mb-1.5", children: label }),
2296
2286
  /* @__PURE__ */ jsxs20(
2297
2287
  "div",
2298
2288
  {
@@ -2300,13 +2290,13 @@ var DatePicker = ({
2300
2290
  onClick: () => !disabled && setIsOpen(!isOpen),
2301
2291
  className: `${baseStyles} ${errorStyles} ${disabledStyles} flex items-center justify-between`.trim(),
2302
2292
  children: [
2303
- /* @__PURE__ */ jsx92("span", { className: !value ? "text-gray-500 dark:text-gray-400" : "", children: value ? formatDate2(value) : placeholder }),
2304
- /* @__PURE__ */ jsx92("svg", { className: "w-5 h-5 text-gray-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx92("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z" }) })
2293
+ /* @__PURE__ */ jsx92("span", { className: !value ? "text-[hsl(var(--muted-foreground))]" : "", children: value ? formatDate2(value) : placeholder }),
2294
+ /* @__PURE__ */ jsx92("svg", { className: "w-5 h-5 text-[hsl(var(--muted-foreground))]", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx92("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z" }) })
2305
2295
  ]
2306
2296
  }
2307
2297
  ),
2308
- error && /* @__PURE__ */ jsx92("p", { className: "mt-1 text-sm text-red-600 dark:text-red-400", children: error }),
2309
- helperText && !error && /* @__PURE__ */ jsx92("p", { className: "mt-1 text-sm text-gray-500 dark:text-gray-400", children: helperText }),
2298
+ error && /* @__PURE__ */ jsx92("p", { className: "mt-1.5 text-sm text-[hsl(var(--destructive))]", children: error }),
2299
+ helperText && !error && /* @__PURE__ */ jsx92("p", { className: "mt-1.5 text-sm text-[hsl(var(--muted-foreground))]", children: helperText }),
2310
2300
  mounted && createPortal2(calendar, document.body)
2311
2301
  ] });
2312
2302
  };
@@ -2317,12 +2307,11 @@ import { forwardRef as forwardRef4 } from "react";
2317
2307
  import { jsx as jsx93, jsxs as jsxs21 } from "react/jsx-runtime";
2318
2308
  var TimePicker = forwardRef4(
2319
2309
  ({ label, error, helperText, className = "", disabled, ...props }, ref) => {
2320
- const { theme } = useTheme();
2321
- const baseStyles = "w-full appearance-none rounded-lg border border-gray-300 bg-white text-gray-900 px-4 py-2.5 text-base transition-all duration-150 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent shadow-sm hover:border-gray-400 dark:bg-gray-800 dark:border-gray-600 dark:text-gray-100 dark:hover:border-gray-500";
2322
- const errorStyles = error ? "border-red-500 focus:ring-red-500 dark:border-red-500" : "";
2323
- const disabledStyles = disabled ? "opacity-50 cursor-not-allowed bg-gray-50 dark:bg-gray-900" : "";
2310
+ const baseStyles = "w-full appearance-none rounded-md border border-[hsl(var(--input))] bg-transparent text-[hsl(var(--foreground))] px-3 py-2.5 text-sm transition-colors duration-150 focus:outline-none focus:ring-1 focus:ring-[hsl(var(--ring))]/50 focus:border-[hsl(var(--ring))] hover:border-[hsl(var(--muted-foreground))]";
2311
+ const errorStyles = error ? "border-[hsl(var(--destructive))] focus:ring-[hsl(var(--destructive))]/50" : "";
2312
+ const disabledStyles = disabled ? "opacity-50 cursor-not-allowed bg-[hsl(var(--muted))]" : "";
2324
2313
  return /* @__PURE__ */ jsxs21("div", { className, children: [
2325
- label && /* @__PURE__ */ jsx93("label", { className: "block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1", children: label }),
2314
+ label && /* @__PURE__ */ jsx93("label", { className: "block text-sm font-medium text-[hsl(var(--foreground))] mb-1.5", children: label }),
2326
2315
  /* @__PURE__ */ jsx93(
2327
2316
  "input",
2328
2317
  {
@@ -2333,8 +2322,8 @@ var TimePicker = forwardRef4(
2333
2322
  ...props
2334
2323
  }
2335
2324
  ),
2336
- error && /* @__PURE__ */ jsx93("p", { className: "mt-1 text-sm text-red-600 dark:text-red-400", children: error }),
2337
- helperText && !error && /* @__PURE__ */ jsx93("p", { className: "mt-1 text-sm text-gray-500 dark:text-gray-400", children: helperText })
2325
+ error && /* @__PURE__ */ jsx93("p", { className: "mt-1.5 text-sm text-[hsl(var(--destructive))]", children: error }),
2326
+ helperText && !error && /* @__PURE__ */ jsx93("p", { className: "mt-1.5 text-sm text-[hsl(var(--muted-foreground))]", children: helperText })
2338
2327
  ] });
2339
2328
  }
2340
2329
  );
@@ -2359,6 +2348,7 @@ var MONTHS2 = [
2359
2348
  "November",
2360
2349
  "December"
2361
2350
  ];
2351
+ var SHORT_MONTHS = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
2362
2352
  var DateTimePicker = ({
2363
2353
  label,
2364
2354
  error,
@@ -2371,7 +2361,6 @@ var DateTimePicker = ({
2371
2361
  className = "",
2372
2362
  placeholder = "Select date and time..."
2373
2363
  }) => {
2374
- const { theme } = useTheme();
2375
2364
  const [isOpen, setIsOpen] = useState9(false);
2376
2365
  const [viewDate, setViewDate] = useState9(value || /* @__PURE__ */ new Date());
2377
2366
  const [selectedTime, setSelectedTime] = useState9(
@@ -2482,14 +2471,15 @@ var DateTimePicker = ({
2482
2471
  };
2483
2472
  const formatDateTime = (date) => {
2484
2473
  if (!date) return "";
2485
- return date.toLocaleString("en-US", {
2486
- month: "short",
2487
- day: "numeric",
2488
- year: "numeric",
2489
- hour: "numeric",
2490
- minute: "2-digit",
2491
- hour12: true
2492
- });
2474
+ const monthStr = SHORT_MONTHS[date.getMonth()];
2475
+ const day = date.getDate();
2476
+ const yearNum = date.getFullYear();
2477
+ const hours = date.getHours();
2478
+ const minutes = date.getMinutes();
2479
+ const period = hours >= 12 ? "PM" : "AM";
2480
+ const displayHours = hours % 12 || 12;
2481
+ const displayMinutes = minutes.toString().padStart(2, "0");
2482
+ return `${monthStr} ${day}, ${yearNum}, ${displayHours}:${displayMinutes} ${period}`;
2493
2483
  };
2494
2484
  const formatTime = (hours, minutes) => {
2495
2485
  const period = hours >= 12 ? "PM" : "AM";
@@ -2497,14 +2487,14 @@ var DateTimePicker = ({
2497
2487
  const displayMinutes = minutes.toString().padStart(2, "0");
2498
2488
  return `${displayHours}:${displayMinutes} ${period}`;
2499
2489
  };
2500
- const baseStyles = "w-full appearance-none rounded-lg border border-gray-300 bg-white text-gray-900 px-4 py-2.5 text-base transition-all duration-150 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent shadow-sm hover:border-gray-400 dark:bg-gray-800 dark:border-gray-600 dark:text-gray-100 dark:hover:border-gray-500 cursor-pointer";
2501
- const errorStyles = error ? "border-red-500 focus:ring-red-500 dark:border-red-500" : "";
2502
- const disabledStyles = disabled ? "opacity-50 cursor-not-allowed bg-gray-50 dark:bg-gray-900" : "";
2490
+ const baseStyles = "w-full appearance-none rounded-md border border-[hsl(var(--input))] bg-transparent text-[hsl(var(--foreground))] px-4 py-2.5 text-sm transition-colors duration-150 focus:outline-none focus:ring-1 focus:ring-[hsl(var(--ring))]/50 focus:border-[hsl(var(--ring))] hover:border-[hsl(var(--muted-foreground))] cursor-pointer";
2491
+ const errorStyles = error ? "border-[hsl(var(--destructive))] focus:ring-[hsl(var(--destructive))]/50" : "";
2492
+ const disabledStyles = disabled ? "opacity-50 cursor-not-allowed bg-[hsl(var(--muted))]" : "";
2503
2493
  const picker = isOpen && mounted && pickerPosition ? /* @__PURE__ */ jsxs22(
2504
2494
  "div",
2505
2495
  {
2506
2496
  ref: pickerRef,
2507
- className: "fixed z-[9999] bg-white dark:bg-gray-800 rounded-lg border border-gray-200 dark:border-gray-700 shadow-xl p-4",
2497
+ className: "fixed z-[9999] bg-[hsl(var(--popover))] rounded-md border border-[hsl(var(--border))] shadow-lg p-4",
2508
2498
  style: {
2509
2499
  top: `${pickerPosition.top}px`,
2510
2500
  left: `${pickerPosition.left}px`,
@@ -2516,13 +2506,13 @@ var DateTimePicker = ({
2516
2506
  "button",
2517
2507
  {
2518
2508
  onClick: handlePrevMonth,
2519
- className: "p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors",
2509
+ className: "p-2 hover:bg-[hsl(var(--accent))] rounded-md transition-colors",
2520
2510
  "aria-label": "Previous month",
2521
- children: /* @__PURE__ */ jsx94("svg", { className: "w-5 h-5 text-gray-600 dark:text-gray-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx94("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M15 19l-7-7 7-7" }) })
2511
+ children: /* @__PURE__ */ jsx94("svg", { className: "w-5 h-5 text-[hsl(var(--muted-foreground))]", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx94("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M15 19l-7-7 7-7" }) })
2522
2512
  }
2523
2513
  ),
2524
2514
  /* @__PURE__ */ jsxs22("div", { className: "flex items-center gap-2", children: [
2525
- /* @__PURE__ */ jsxs22("h2", { className: "text-base font-semibold text-gray-900 dark:text-gray-100", children: [
2515
+ /* @__PURE__ */ jsxs22("h2", { className: "text-base font-semibold text-[hsl(var(--foreground))]", children: [
2526
2516
  MONTHS2[month],
2527
2517
  " ",
2528
2518
  year
@@ -2531,7 +2521,7 @@ var DateTimePicker = ({
2531
2521
  "button",
2532
2522
  {
2533
2523
  onClick: handleToday,
2534
- className: "px-2 py-1 text-xs bg-blue-600 text-white rounded hover:bg-blue-700 transition-colors",
2524
+ className: "px-2 py-1 text-xs bg-[hsl(var(--primary))] text-[hsl(var(--primary-foreground))] rounded-md hover:bg-[hsl(var(--primary))]/90 transition-colors",
2535
2525
  children: "Now"
2536
2526
  }
2537
2527
  )
@@ -2540,13 +2530,13 @@ var DateTimePicker = ({
2540
2530
  "button",
2541
2531
  {
2542
2532
  onClick: handleNextMonth,
2543
- className: "p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors",
2533
+ className: "p-2 hover:bg-[hsl(var(--accent))] rounded-md transition-colors",
2544
2534
  "aria-label": "Next month",
2545
- children: /* @__PURE__ */ jsx94("svg", { className: "w-5 h-5 text-gray-600 dark:text-gray-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx94("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M9 5l7 7-7 7" }) })
2535
+ children: /* @__PURE__ */ jsx94("svg", { className: "w-5 h-5 text-[hsl(var(--muted-foreground))]", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx94("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M9 5l7 7-7 7" }) })
2546
2536
  }
2547
2537
  )
2548
2538
  ] }),
2549
- /* @__PURE__ */ jsx94("div", { className: "grid grid-cols-7 gap-1 mb-2", children: DAYS2.map((day) => /* @__PURE__ */ jsx94("div", { className: "text-center text-xs font-semibold text-gray-600 dark:text-gray-400 py-1", children: day }, day)) }),
2539
+ /* @__PURE__ */ jsx94("div", { className: "grid grid-cols-7 gap-1 mb-2", children: DAYS2.map((day) => /* @__PURE__ */ jsx94("div", { className: "text-center text-xs font-semibold text-[hsl(var(--muted-foreground))] py-1", children: day }, day)) }),
2550
2540
  /* @__PURE__ */ jsx94("div", { className: "grid grid-cols-7 gap-1 mb-4", children: calendarDays.map((date, index) => {
2551
2541
  const isCurrentMonthDay = isCurrentMonth(date);
2552
2542
  const isTodayDay = isToday(date);
@@ -2558,11 +2548,11 @@ var DateTimePicker = ({
2558
2548
  onClick: () => handleDateClick(date),
2559
2549
  disabled: isDisabledDay,
2560
2550
  className: `
2561
- aspect-square p-1 rounded-lg text-sm font-medium transition-all
2562
- ${!isCurrentMonthDay ? "text-gray-400 dark:text-gray-600" : "text-gray-900 dark:text-gray-100"}
2563
- ${isTodayDay && !isSelectedDay ? "bg-blue-50 dark:bg-blue-900/20 text-blue-600 dark:text-blue-400 font-bold" : ""}
2564
- ${isSelectedDay ? "bg-blue-600 text-white hover:bg-blue-700" : ""}
2565
- ${!isSelectedDay && !isDisabledDay ? "hover:bg-gray-100 dark:hover:bg-gray-700" : ""}
2551
+ aspect-square p-1 rounded-md text-sm font-medium transition-all
2552
+ ${!isCurrentMonthDay ? "text-[hsl(var(--muted-foreground))]/50" : "text-[hsl(var(--foreground))]"}
2553
+ ${isTodayDay && !isSelectedDay ? "bg-[hsl(var(--accent))] text-[hsl(var(--primary))] font-bold" : ""}
2554
+ ${isSelectedDay ? "bg-[hsl(var(--primary))] text-[hsl(var(--primary-foreground))] hover:bg-[hsl(var(--primary))]/90" : ""}
2555
+ ${!isSelectedDay && !isDisabledDay ? "hover:bg-[hsl(var(--accent))]" : ""}
2566
2556
  ${isDisabledDay ? "opacity-30 cursor-not-allowed" : "cursor-pointer"}
2567
2557
  `,
2568
2558
  children: date.getDate()
@@ -2570,18 +2560,18 @@ var DateTimePicker = ({
2570
2560
  index
2571
2561
  );
2572
2562
  }) }),
2573
- /* @__PURE__ */ jsxs22("div", { className: "border-t border-gray-200 dark:border-gray-700 pt-4", children: [
2563
+ /* @__PURE__ */ jsxs22("div", { className: "border-t border-[hsl(var(--border))] pt-4", children: [
2574
2564
  /* @__PURE__ */ jsxs22("div", { className: "flex items-center justify-center gap-4 mb-4", children: [
2575
2565
  /* @__PURE__ */ jsxs22("div", { className: "flex flex-col items-center", children: [
2576
- /* @__PURE__ */ jsx94("label", { className: "text-xs font-semibold text-gray-600 dark:text-gray-400 mb-2", children: "Hour" }),
2566
+ /* @__PURE__ */ jsx94("label", { className: "text-xs font-semibold text-[hsl(var(--muted-foreground))] mb-2", children: "Hour" }),
2577
2567
  /* @__PURE__ */ jsxs22("div", { className: "flex flex-col items-center gap-1", children: [
2578
2568
  /* @__PURE__ */ jsx94(
2579
2569
  "button",
2580
2570
  {
2581
2571
  type: "button",
2582
2572
  onClick: () => handleTimeChange((selectedTime.hours + 1) % 24, selectedTime.minutes),
2583
- className: "p-1 hover:bg-gray-100 dark:hover:bg-gray-700 rounded transition-colors",
2584
- children: /* @__PURE__ */ jsx94("svg", { className: "w-4 h-4 text-gray-600 dark:text-gray-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx94("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M5 15l7-7 7 7" }) })
2573
+ className: "p-1 hover:bg-[hsl(var(--accent))] rounded transition-colors",
2574
+ children: /* @__PURE__ */ jsx94("svg", { className: "w-4 h-4 text-[hsl(var(--muted-foreground))]", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx94("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M5 15l7-7 7 7" }) })
2585
2575
  }
2586
2576
  ),
2587
2577
  /* @__PURE__ */ jsx94(
@@ -2597,7 +2587,7 @@ var DateTimePicker = ({
2597
2587
  handleTimeChange(val, selectedTime.minutes);
2598
2588
  }
2599
2589
  },
2600
- className: "w-16 px-2 py-2 text-center border border-gray-300 dark:border-gray-600 rounded-lg bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100 focus:outline-none focus:ring-2 focus:ring-blue-500 text-lg font-semibold [appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none"
2590
+ className: "w-16 px-2 py-2 text-center border border-[hsl(var(--input))] rounded-md bg-transparent text-[hsl(var(--foreground))] focus:outline-none focus:ring-1 focus:ring-[hsl(var(--ring))]/50 text-lg font-semibold [appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none"
2601
2591
  }
2602
2592
  ),
2603
2593
  /* @__PURE__ */ jsx94(
@@ -2605,23 +2595,23 @@ var DateTimePicker = ({
2605
2595
  {
2606
2596
  type: "button",
2607
2597
  onClick: () => handleTimeChange((selectedTime.hours - 1 + 24) % 24, selectedTime.minutes),
2608
- className: "p-1 hover:bg-gray-100 dark:hover:bg-gray-700 rounded transition-colors",
2609
- children: /* @__PURE__ */ jsx94("svg", { className: "w-4 h-4 text-gray-600 dark:text-gray-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx94("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M19 9l-7 7-7-7" }) })
2598
+ className: "p-1 hover:bg-[hsl(var(--accent))] rounded transition-colors",
2599
+ children: /* @__PURE__ */ jsx94("svg", { className: "w-4 h-4 text-[hsl(var(--muted-foreground))]", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx94("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M19 9l-7 7-7-7" }) })
2610
2600
  }
2611
2601
  )
2612
2602
  ] })
2613
2603
  ] }),
2614
- /* @__PURE__ */ jsx94("span", { className: "text-2xl font-bold text-gray-600 dark:text-gray-400 mt-8", children: ":" }),
2604
+ /* @__PURE__ */ jsx94("span", { className: "text-2xl font-bold text-[hsl(var(--muted-foreground))] mt-8", children: ":" }),
2615
2605
  /* @__PURE__ */ jsxs22("div", { className: "flex flex-col items-center", children: [
2616
- /* @__PURE__ */ jsx94("label", { className: "text-xs font-semibold text-gray-600 dark:text-gray-400 mb-2", children: "Minute" }),
2606
+ /* @__PURE__ */ jsx94("label", { className: "text-xs font-semibold text-[hsl(var(--muted-foreground))] mb-2", children: "Minute" }),
2617
2607
  /* @__PURE__ */ jsxs22("div", { className: "flex flex-col items-center gap-1", children: [
2618
2608
  /* @__PURE__ */ jsx94(
2619
2609
  "button",
2620
2610
  {
2621
2611
  type: "button",
2622
2612
  onClick: () => handleTimeChange(selectedTime.hours, (selectedTime.minutes + 1) % 60),
2623
- className: "p-1 hover:bg-gray-100 dark:hover:bg-gray-700 rounded transition-colors",
2624
- children: /* @__PURE__ */ jsx94("svg", { className: "w-4 h-4 text-gray-600 dark:text-gray-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx94("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M5 15l7-7 7 7" }) })
2613
+ className: "p-1 hover:bg-[hsl(var(--accent))] rounded transition-colors",
2614
+ children: /* @__PURE__ */ jsx94("svg", { className: "w-4 h-4 text-[hsl(var(--muted-foreground))]", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx94("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M5 15l7-7 7 7" }) })
2625
2615
  }
2626
2616
  ),
2627
2617
  /* @__PURE__ */ jsx94(
@@ -2637,7 +2627,7 @@ var DateTimePicker = ({
2637
2627
  handleTimeChange(selectedTime.hours, val);
2638
2628
  }
2639
2629
  },
2640
- className: "w-16 px-2 py-2 text-center border border-gray-300 dark:border-gray-600 rounded-lg bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100 focus:outline-none focus:ring-2 focus:ring-blue-500 text-lg font-semibold [appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none"
2630
+ className: "w-16 px-2 py-2 text-center border border-[hsl(var(--input))] rounded-md bg-transparent text-[hsl(var(--foreground))] focus:outline-none focus:ring-1 focus:ring-[hsl(var(--ring))]/50 text-lg font-semibold [appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none"
2641
2631
  }
2642
2632
  ),
2643
2633
  /* @__PURE__ */ jsx94(
@@ -2645,19 +2635,19 @@ var DateTimePicker = ({
2645
2635
  {
2646
2636
  type: "button",
2647
2637
  onClick: () => handleTimeChange(selectedTime.hours, (selectedTime.minutes - 1 + 60) % 60),
2648
- className: "p-1 hover:bg-gray-100 dark:hover:bg-gray-700 rounded transition-colors",
2649
- children: /* @__PURE__ */ jsx94("svg", { className: "w-4 h-4 text-gray-600 dark:text-gray-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx94("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M19 9l-7 7-7-7" }) })
2638
+ className: "p-1 hover:bg-[hsl(var(--accent))] rounded transition-colors",
2639
+ children: /* @__PURE__ */ jsx94("svg", { className: "w-4 h-4 text-[hsl(var(--muted-foreground))]", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx94("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M19 9l-7 7-7-7" }) })
2650
2640
  }
2651
2641
  )
2652
2642
  ] })
2653
2643
  ] })
2654
2644
  ] }),
2655
- /* @__PURE__ */ jsx94("div", { className: "text-center text-sm text-gray-600 dark:text-gray-400 mb-4", children: formatTime(selectedTime.hours, selectedTime.minutes) }),
2645
+ /* @__PURE__ */ jsx94("div", { className: "text-center text-sm text-[hsl(var(--muted-foreground))] mb-4", children: formatTime(selectedTime.hours, selectedTime.minutes) }),
2656
2646
  /* @__PURE__ */ jsx94(
2657
2647
  "button",
2658
2648
  {
2659
2649
  onClick: handleDone,
2660
- className: "w-full px-4 py-2 bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition-colors font-medium",
2650
+ className: "w-full px-4 py-2 bg-[hsl(var(--primary))] text-[hsl(var(--primary-foreground))] rounded-md hover:bg-[hsl(var(--primary))]/90 transition-colors font-medium",
2661
2651
  children: "Done"
2662
2652
  }
2663
2653
  )
@@ -2666,7 +2656,7 @@ var DateTimePicker = ({
2666
2656
  }
2667
2657
  ) : null;
2668
2658
  return /* @__PURE__ */ jsxs22("div", { className, children: [
2669
- label && /* @__PURE__ */ jsx94("label", { className: "block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1", children: label }),
2659
+ label && /* @__PURE__ */ jsx94("label", { className: "block text-sm font-medium text-[hsl(var(--foreground))] mb-1.5", children: label }),
2670
2660
  /* @__PURE__ */ jsxs22(
2671
2661
  "div",
2672
2662
  {
@@ -2674,13 +2664,13 @@ var DateTimePicker = ({
2674
2664
  onClick: () => !disabled && setIsOpen(!isOpen),
2675
2665
  className: `${baseStyles} ${errorStyles} ${disabledStyles} flex items-center justify-between`.trim(),
2676
2666
  children: [
2677
- /* @__PURE__ */ jsx94("span", { className: !value ? "text-gray-500 dark:text-gray-400" : "", children: value ? formatDateTime(value) : placeholder }),
2678
- /* @__PURE__ */ jsx94("svg", { className: "w-5 h-5 text-gray-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx94("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z" }) })
2667
+ /* @__PURE__ */ jsx94("span", { className: !value ? "text-[hsl(var(--muted-foreground))]" : "", children: value ? formatDateTime(value) : placeholder }),
2668
+ /* @__PURE__ */ jsx94("svg", { className: "w-5 h-5 text-[hsl(var(--muted-foreground))]", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx94("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z" }) })
2679
2669
  ]
2680
2670
  }
2681
2671
  ),
2682
- error && /* @__PURE__ */ jsx94("p", { className: "mt-1 text-sm text-red-600 dark:text-red-400", children: error }),
2683
- helperText && !error && /* @__PURE__ */ jsx94("p", { className: "mt-1 text-sm text-gray-500 dark:text-gray-400", children: helperText }),
2672
+ error && /* @__PURE__ */ jsx94("p", { className: "mt-1.5 text-sm text-[hsl(var(--destructive))]", children: error }),
2673
+ helperText && !error && /* @__PURE__ */ jsx94("p", { className: "mt-1.5 text-sm text-[hsl(var(--muted-foreground))]", children: helperText }),
2684
2674
  mounted && createPortal3(picker, document.body)
2685
2675
  ] });
2686
2676
  };
@@ -2711,7 +2701,6 @@ var Calendar = ({
2711
2701
  maxDate,
2712
2702
  className = ""
2713
2703
  }) => {
2714
- const { theme } = useTheme();
2715
2704
  const [currentDate, setCurrentDate] = useState10(value || /* @__PURE__ */ new Date());
2716
2705
  const [viewDate, setViewDate] = useState10(value || /* @__PURE__ */ new Date());
2717
2706
  const year = viewDate.getFullYear();
@@ -2764,19 +2753,19 @@ var Calendar = ({
2764
2753
  setCurrentDate(today);
2765
2754
  onChange?.(today);
2766
2755
  };
2767
- return /* @__PURE__ */ jsxs23("div", { className: `bg-white dark:bg-gray-800 rounded-lg border border-gray-200 dark:border-gray-700 p-4 ${className}`, children: [
2756
+ return /* @__PURE__ */ jsxs23("div", { className: `bg-[hsl(var(--card))] rounded-md border border-[hsl(var(--border))] p-4 ${className}`, children: [
2768
2757
  /* @__PURE__ */ jsxs23("div", { className: "flex items-center justify-between mb-4", children: [
2769
2758
  /* @__PURE__ */ jsx95(
2770
2759
  "button",
2771
2760
  {
2772
2761
  onClick: handlePrevMonth,
2773
- className: "p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors",
2762
+ className: "p-2 hover:bg-[hsl(var(--accent))] rounded-md transition-colors",
2774
2763
  "aria-label": "Previous month",
2775
- children: /* @__PURE__ */ jsx95("svg", { className: "w-5 h-5 text-gray-600 dark:text-gray-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx95("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M15 19l-7-7 7-7" }) })
2764
+ children: /* @__PURE__ */ jsx95("svg", { className: "w-5 h-5 text-[hsl(var(--muted-foreground))]", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx95("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M15 19l-7-7 7-7" }) })
2776
2765
  }
2777
2766
  ),
2778
2767
  /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-2", children: [
2779
- /* @__PURE__ */ jsxs23("h2", { className: "text-lg font-semibold text-gray-900 dark:text-gray-100", children: [
2768
+ /* @__PURE__ */ jsxs23("h2", { className: "text-lg font-semibold text-[hsl(var(--foreground))]", children: [
2780
2769
  MONTHS3[month],
2781
2770
  " ",
2782
2771
  year
@@ -2785,7 +2774,7 @@ var Calendar = ({
2785
2774
  "button",
2786
2775
  {
2787
2776
  onClick: handleToday,
2788
- className: "px-3 py-1 text-sm bg-blue-600 text-white rounded hover:bg-blue-700 transition-colors",
2777
+ className: "px-3 py-1 text-sm bg-[hsl(var(--primary))] text-[hsl(var(--primary-foreground))] rounded-md hover:bg-[hsl(var(--primary))]/90 transition-colors",
2789
2778
  children: "Today"
2790
2779
  }
2791
2780
  )
@@ -2794,16 +2783,16 @@ var Calendar = ({
2794
2783
  "button",
2795
2784
  {
2796
2785
  onClick: handleNextMonth,
2797
- className: "p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors",
2786
+ className: "p-2 hover:bg-[hsl(var(--accent))] rounded-md transition-colors",
2798
2787
  "aria-label": "Next month",
2799
- children: /* @__PURE__ */ jsx95("svg", { className: "w-5 h-5 text-gray-600 dark:text-gray-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx95("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M9 5l7 7-7 7" }) })
2788
+ children: /* @__PURE__ */ jsx95("svg", { className: "w-5 h-5 text-[hsl(var(--muted-foreground))]", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx95("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M9 5l7 7-7 7" }) })
2800
2789
  }
2801
2790
  )
2802
2791
  ] }),
2803
2792
  /* @__PURE__ */ jsx95("div", { className: "grid grid-cols-7 gap-1 mb-2", children: DAYS3.map((day) => /* @__PURE__ */ jsx95(
2804
2793
  "div",
2805
2794
  {
2806
- className: "text-center text-xs font-semibold text-gray-600 dark:text-gray-400 py-2",
2795
+ className: "text-center text-xs font-semibold text-[hsl(var(--muted-foreground))] py-2",
2807
2796
  children: day
2808
2797
  },
2809
2798
  day
@@ -2820,11 +2809,11 @@ var Calendar = ({
2820
2809
  onClick: () => handleDateClick(date),
2821
2810
  disabled: isDisabledDay,
2822
2811
  className: `
2823
- aspect-square p-2 rounded-lg text-sm font-medium transition-all
2824
- ${!isCurrentMonthDay ? "text-gray-400 dark:text-gray-600" : "text-gray-900 dark:text-gray-100"}
2825
- ${isTodayDay && !isSelectedDay ? "bg-blue-50 dark:bg-blue-900/20 text-blue-600 dark:text-blue-400 font-bold" : ""}
2826
- ${isSelectedDay ? "bg-blue-600 text-white hover:bg-blue-700" : ""}
2827
- ${!isSelectedDay && !isDisabledDay ? "hover:bg-gray-100 dark:hover:bg-gray-700" : ""}
2812
+ aspect-square p-2 rounded-md text-sm font-medium transition-all
2813
+ ${!isCurrentMonthDay ? "text-[hsl(var(--muted-foreground))]/50" : "text-[hsl(var(--foreground))]"}
2814
+ ${isTodayDay && !isSelectedDay ? "bg-[hsl(var(--accent))] text-[hsl(var(--primary))] font-bold" : ""}
2815
+ ${isSelectedDay ? "bg-[hsl(var(--primary))] text-[hsl(var(--primary-foreground))] hover:bg-[hsl(var(--primary))]/90" : ""}
2816
+ ${!isSelectedDay && !isDisabledDay ? "hover:bg-[hsl(var(--accent))]" : ""}
2828
2817
  ${isDisabledDay ? "opacity-30 cursor-not-allowed" : "cursor-pointer"}
2829
2818
  `,
2830
2819
  children: date.getDate()
@@ -2881,13 +2870,13 @@ var Radio = ({
2881
2870
  }
2882
2871
  ),
2883
2872
  /* @__PURE__ */ jsx96("div", { className: `w-4 h-4 rounded-full border-2 transition-all duration-200 flex items-center justify-center
2884
- border-gray-300 dark:border-gray-600
2885
- ${isDisabled ? "bg-gray-100 dark:bg-gray-800" : "peer-hover:border-gray-400 dark:peer-hover:border-gray-500"}
2886
- ${isChecked ? "border-blue-600 bg-white dark:bg-gray-900" : ""}
2887
- peer-focus:ring-2 peer-focus:ring-blue-500 peer-focus:ring-offset-2
2888
- `, children: /* @__PURE__ */ jsx96("div", { className: `w-2 h-2 rounded-full bg-blue-600 transition-all duration-200 ${isChecked ? "scale-100" : "scale-0"}` }) })
2873
+ border-[hsl(var(--input))]
2874
+ ${isDisabled ? "bg-[hsl(var(--muted))]" : "peer-hover:border-[hsl(var(--ring))]"}
2875
+ ${isChecked ? "border-[hsl(var(--primary))] bg-[hsl(var(--background))]" : ""}
2876
+ peer-focus:ring-1 peer-focus:ring-[hsl(var(--ring))]/50
2877
+ `, children: /* @__PURE__ */ jsx96("div", { className: `w-2 h-2 rounded-full bg-[hsl(var(--primary))] transition-all duration-200 ${isChecked ? "scale-100" : "scale-0"}` }) })
2889
2878
  ] }),
2890
- /* @__PURE__ */ jsx96("span", { className: `text-sm font-medium text-gray-900 dark:text-gray-300 ${!isDisabled && "group-hover:text-gray-700 dark:group-hover:text-gray-100"}`, children: option.label })
2879
+ /* @__PURE__ */ jsx96("span", { className: `text-sm font-medium text-[hsl(var(--foreground))] ${!isDisabled && "group-hover:text-[hsl(var(--foreground))]"}`, children: option.label })
2891
2880
  ]
2892
2881
  },
2893
2882
  option.value
@@ -2913,15 +2902,15 @@ var ProgressBar = ({
2913
2902
  lg: "h-3"
2914
2903
  };
2915
2904
  const variantClasses = {
2916
- default: "bg-blue-600 dark:bg-blue-500",
2917
- success: "bg-green-600 dark:bg-green-500",
2918
- warning: "bg-yellow-500 dark:bg-yellow-400",
2919
- danger: "bg-red-600 dark:bg-red-500"
2905
+ default: "bg-[hsl(var(--primary))]",
2906
+ success: "bg-[hsl(var(--success))]",
2907
+ warning: "bg-[hsl(var(--warning))]",
2908
+ danger: "bg-[hsl(var(--destructive))]"
2920
2909
  };
2921
2910
  return /* @__PURE__ */ jsxs25("div", { className: `w-full ${className}`, children: [
2922
2911
  (showLabel || label) && /* @__PURE__ */ jsxs25("div", { className: "flex justify-between items-center mb-1", children: [
2923
- label && /* @__PURE__ */ jsx97("span", { className: "text-sm font-medium text-gray-700 dark:text-gray-300", children: label }),
2924
- showLabel && /* @__PURE__ */ jsxs25("span", { className: "text-sm font-medium text-gray-700 dark:text-gray-300", children: [
2912
+ label && /* @__PURE__ */ jsx97("span", { className: "text-sm font-medium text-[hsl(var(--foreground))]", children: label }),
2913
+ showLabel && /* @__PURE__ */ jsxs25("span", { className: "text-sm font-medium text-[hsl(var(--muted-foreground))]", children: [
2925
2914
  Math.round(percentage),
2926
2915
  "%"
2927
2916
  ] })
@@ -2929,7 +2918,7 @@ var ProgressBar = ({
2929
2918
  /* @__PURE__ */ jsx97(
2930
2919
  "div",
2931
2920
  {
2932
- className: `w-full bg-gray-200 dark:bg-gray-700 rounded-full overflow-hidden ${sizeClasses7[size]}`,
2921
+ className: `w-full bg-[hsl(var(--muted))] rounded-full overflow-hidden ${sizeClasses7[size]}`,
2933
2922
  role: "progressbar",
2934
2923
  "aria-valuenow": value,
2935
2924
  "aria-valuemin": 0,
@@ -3036,19 +3025,19 @@ var Slider = ({
3036
3025
  if (range) {
3037
3026
  return /* @__PURE__ */ jsxs26("div", { className: `w-full ${className}`, children: [
3038
3027
  (label || showValue) && /* @__PURE__ */ jsxs26("div", { className: "flex justify-between items-center mb-2", children: [
3039
- label && /* @__PURE__ */ jsx98("label", { className: "text-sm font-medium text-gray-700 dark:text-gray-300", children: label }),
3040
- showValue && /* @__PURE__ */ jsxs26("span", { className: "text-sm font-medium text-gray-700 dark:text-gray-300", children: [
3028
+ label && /* @__PURE__ */ jsx98("label", { className: "text-sm font-medium text-[hsl(var(--foreground))]", children: label }),
3029
+ showValue && /* @__PURE__ */ jsxs26("span", { className: "text-sm font-medium text-[hsl(var(--muted-foreground))]", children: [
3041
3030
  rangeValue[0],
3042
3031
  " - ",
3043
3032
  rangeValue[1]
3044
3033
  ] })
3045
3034
  ] }),
3046
3035
  /* @__PURE__ */ jsxs26("div", { className: "relative h-10 flex items-center", ref: trackRef, children: [
3047
- /* @__PURE__ */ jsx98("div", { className: "absolute w-full h-2 bg-gray-200 dark:bg-gray-700 rounded-full" }),
3036
+ /* @__PURE__ */ jsx98("div", { className: "absolute w-full h-2 bg-[hsl(var(--muted))] rounded-full" }),
3048
3037
  /* @__PURE__ */ jsx98(
3049
3038
  "div",
3050
3039
  {
3051
- className: "absolute h-2 bg-blue-600 dark:bg-blue-500 rounded-full pointer-events-none",
3040
+ className: "absolute h-2 bg-[hsl(var(--primary))] rounded-full pointer-events-none",
3052
3041
  style: {
3053
3042
  left: `${minPercentage}%`,
3054
3043
  width: `${maxPercentage - minPercentage}%`
@@ -3058,7 +3047,7 @@ var Slider = ({
3058
3047
  /* @__PURE__ */ jsx98(
3059
3048
  "div",
3060
3049
  {
3061
- className: `absolute w-4 h-4 -ml-2 rounded-sm bg-white dark:bg-gray-800 border-2 border-blue-600 shadow-md cursor-pointer z-10
3050
+ className: `absolute w-4 h-4 -ml-2 rounded-full bg-[hsl(var(--background))] border-2 border-[hsl(var(--primary))] shadow-md cursor-pointer z-10
3062
3051
  ${disabled ? "opacity-50 cursor-not-allowed" : ""}
3063
3052
  `,
3064
3053
  style: { left: `${minPercentage}%` },
@@ -3075,7 +3064,7 @@ var Slider = ({
3075
3064
  /* @__PURE__ */ jsx98(
3076
3065
  "div",
3077
3066
  {
3078
- className: `absolute w-4 h-4 -ml-2 rounded-sm bg-white dark:bg-gray-800 border-2 border-blue-600 shadow-md cursor-pointer z-10
3067
+ className: `absolute w-4 h-4 -ml-2 rounded-full bg-[hsl(var(--background))] border-2 border-[hsl(var(--primary))] shadow-md cursor-pointer z-10
3079
3068
  ${disabled ? "opacity-50 cursor-not-allowed" : ""}
3080
3069
  `,
3081
3070
  style: { left: `${maxPercentage}%` },
@@ -3094,22 +3083,22 @@ var Slider = ({
3094
3083
  }
3095
3084
  return /* @__PURE__ */ jsxs26("div", { className: `w-full ${className}`, children: [
3096
3085
  (label || showValue) && /* @__PURE__ */ jsxs26("div", { className: "flex justify-between items-center mb-2", children: [
3097
- label && /* @__PURE__ */ jsx98("label", { className: "text-sm font-medium text-gray-700 dark:text-gray-300", children: label }),
3098
- showValue && /* @__PURE__ */ jsx98("span", { className: "text-sm font-medium text-gray-700 dark:text-gray-300", children: value })
3086
+ label && /* @__PURE__ */ jsx98("label", { className: "text-sm font-medium text-[hsl(var(--foreground))]", children: label }),
3087
+ showValue && /* @__PURE__ */ jsx98("span", { className: "text-sm font-medium text-[hsl(var(--muted-foreground))]", children: value })
3099
3088
  ] }),
3100
3089
  /* @__PURE__ */ jsxs26("div", { className: "relative h-10 flex items-center", children: [
3101
- /* @__PURE__ */ jsx98("div", { className: "absolute w-full h-2 bg-gray-200 dark:bg-gray-700 rounded-full" }),
3090
+ /* @__PURE__ */ jsx98("div", { className: "absolute w-full h-2 bg-[hsl(var(--muted))] rounded-full" }),
3102
3091
  /* @__PURE__ */ jsx98(
3103
3092
  "div",
3104
3093
  {
3105
- className: "absolute h-2 bg-blue-600 dark:bg-blue-500 rounded-full pointer-events-none",
3094
+ className: "absolute h-2 bg-[hsl(var(--primary))] rounded-full pointer-events-none",
3106
3095
  style: { width: `${percentage}%` }
3107
3096
  }
3108
3097
  ),
3109
3098
  /* @__PURE__ */ jsx98(
3110
3099
  "div",
3111
3100
  {
3112
- className: `absolute w-4 h-4 -ml-2 rounded-sm bg-white dark:bg-gray-800 border-2 border-blue-600 shadow-md pointer-events-none z-10
3101
+ className: `absolute w-4 h-4 -ml-2 rounded-full bg-[hsl(var(--background))] border-2 border-[hsl(var(--primary))] shadow-md pointer-events-none z-10
3113
3102
  ${disabled ? "opacity-50" : ""}
3114
3103
  `,
3115
3104
  style: { left: `${percentage}%` }
@@ -3125,7 +3114,7 @@ var Slider = ({
3125
3114
  value,
3126
3115
  onChange: handleChange,
3127
3116
  disabled,
3128
- className: "relative w-full h-10 bg-transparent appearance-none cursor-pointer disabled:cursor-not-allowed z-20\n [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:w-4 [&::-webkit-slider-thumb]:h-4\n [&::-webkit-slider-thumb]:rounded-sm [&::-webkit-slider-thumb]:bg-transparent [&::-webkit-slider-thumb]:cursor-pointer\n [&::-moz-range-thumb]:w-4 [&::-moz-range-thumb]:h-4 [&::-moz-range-thumb]:rounded-sm\n [&::-moz-range-thumb]:bg-transparent [&::-moz-range-thumb]:cursor-pointer [&::-moz-range-thumb]:border-none",
3117
+ className: "relative w-full h-10 bg-transparent appearance-none cursor-pointer disabled:cursor-not-allowed z-20\n [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:w-4 [&::-webkit-slider-thumb]:h-4\n [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:bg-transparent [&::-webkit-slider-thumb]:cursor-pointer\n [&::-moz-range-thumb]:w-4 [&::-moz-range-thumb]:h-4 [&::-moz-range-thumb]:rounded-full\n [&::-moz-range-thumb]:bg-transparent [&::-moz-range-thumb]:cursor-pointer [&::-moz-range-thumb]:border-none",
3129
3118
  "aria-label": label,
3130
3119
  "aria-valuemin": min,
3131
3120
  "aria-valuemax": max,
@@ -3146,7 +3135,7 @@ var Avatar = ({
3146
3135
  size = "md",
3147
3136
  shape = "circle",
3148
3137
  className = "",
3149
- fallbackColor = "bg-blue-600"
3138
+ fallbackColor = "bg-[hsl(var(--primary))]"
3150
3139
  }) => {
3151
3140
  const [imageError, setImageError] = React19.useState(false);
3152
3141
  const sizeClasses7 = {
@@ -3169,7 +3158,7 @@ var Avatar = ({
3169
3158
  return /* @__PURE__ */ jsx99(
3170
3159
  "div",
3171
3160
  {
3172
- className: `${sizeClasses7[size]} ${shapeClass} flex items-center justify-center overflow-hidden ${showImage ? "bg-gray-200 dark:bg-gray-700" : `${fallbackColor} text-white`} ${className}`,
3161
+ className: `${sizeClasses7[size]} ${shapeClass} flex items-center justify-center overflow-hidden ${showImage ? "bg-[hsl(var(--muted))]" : `${fallbackColor} text-white`} ${className}`,
3173
3162
  children: showImage ? /* @__PURE__ */ jsx99(
3174
3163
  "img",
3175
3164
  {
@@ -3181,7 +3170,7 @@ var Avatar = ({
3181
3170
  ) : showInitials ? /* @__PURE__ */ jsx99("span", { className: "font-semibold select-none", children: getInitials(name) }) : /* @__PURE__ */ jsx99(
3182
3171
  "svg",
3183
3172
  {
3184
- className: "w-full h-full text-gray-400 dark:text-gray-600",
3173
+ className: "w-full h-full text-[hsl(var(--muted-foreground))]",
3185
3174
  fill: "currentColor",
3186
3175
  viewBox: "0 0 24 24",
3187
3176
  children: /* @__PURE__ */ jsx99("path", { d: "M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z" })
@@ -3205,8 +3194,8 @@ var Textarea = ({
3205
3194
  }) => {
3206
3195
  const sizeClasses7 = {
3207
3196
  sm: "px-3 py-1.5 text-sm min-h-[80px]",
3208
- md: "px-4 py-2 text-base min-h-[100px]",
3209
- lg: "px-4 py-3 text-lg min-h-[120px]"
3197
+ md: "px-3 py-2.5 text-sm min-h-[100px]",
3198
+ lg: "px-4 py-3 text-base min-h-[120px]"
3210
3199
  };
3211
3200
  const resizeClasses = {
3212
3201
  none: "resize-none",
@@ -3214,13 +3203,13 @@ var Textarea = ({
3214
3203
  horizontal: "resize-x",
3215
3204
  both: "resize"
3216
3205
  };
3217
- const baseClasses = `w-full rounded-lg border transition-colors duration-150 focus:outline-none focus:ring-2
3218
- ${error ? "border-red-500 focus:ring-red-500 focus:border-red-500 dark:border-red-400 dark:focus:ring-red-400" : "border-gray-300 focus:ring-blue-500 focus:border-blue-500 dark:border-gray-600 dark:focus:ring-blue-400"}
3219
- bg-white dark:bg-gray-800 text-gray-900 dark:text-gray-100
3220
- placeholder:text-gray-500 dark:placeholder:text-gray-400
3221
- disabled:opacity-50 disabled:cursor-not-allowed disabled:bg-gray-50 dark:disabled:bg-gray-900`;
3206
+ const baseClasses = `w-full rounded-md border transition-colors duration-150 focus:outline-none focus:ring-1 focus:ring-[hsl(var(--ring))]/50 focus:border-[hsl(var(--ring))]
3207
+ ${error ? "border-[hsl(var(--destructive))] focus:ring-[hsl(var(--destructive))]/50" : "border-[hsl(var(--input))] hover:border-[hsl(var(--muted-foreground))]"}
3208
+ bg-transparent text-[hsl(var(--foreground))]
3209
+ placeholder:text-[hsl(var(--muted-foreground))]
3210
+ disabled:opacity-50 disabled:cursor-not-allowed disabled:bg-[hsl(var(--muted))]`;
3222
3211
  return /* @__PURE__ */ jsxs27("div", { className: `w-full ${className}`, children: [
3223
- label && /* @__PURE__ */ jsx100("label", { className: "block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1", children: label }),
3212
+ label && /* @__PURE__ */ jsx100("label", { className: "block text-sm font-medium text-[hsl(var(--foreground))] mb-1.5", children: label }),
3224
3213
  /* @__PURE__ */ jsx100(
3225
3214
  "textarea",
3226
3215
  {
@@ -3229,8 +3218,8 @@ var Textarea = ({
3229
3218
  ...props
3230
3219
  }
3231
3220
  ),
3232
- error && /* @__PURE__ */ jsx100("p", { className: "mt-1 text-sm text-red-600 dark:text-red-400", children: error }),
3233
- helperText && !error && /* @__PURE__ */ jsx100("p", { className: "mt-1 text-sm text-gray-500 dark:text-gray-400", children: helperText })
3221
+ error && /* @__PURE__ */ jsx100("p", { className: "mt-1.5 text-sm text-[hsl(var(--destructive))]", children: error }),
3222
+ helperText && !error && /* @__PURE__ */ jsx100("p", { className: "mt-1.5 text-sm text-[hsl(var(--muted-foreground))]", children: helperText })
3234
3223
  ] });
3235
3224
  };
3236
3225
 
@@ -3468,7 +3457,7 @@ var RichTextEditor = ({
3468
3457
  if (selection && selection.rangeCount > 0) {
3469
3458
  const range = selection.getRangeAt(0);
3470
3459
  const code = document.createElement("code");
3471
- code.className = "bg-gray-100 dark:bg-gray-700 px-1.5 py-0.5 rounded text-sm font-mono";
3460
+ code.className = "bg-[hsl(var(--muted))] px-1.5 py-0.5 rounded text-sm font-mono";
3472
3461
  try {
3473
3462
  range.surroundContents(code);
3474
3463
  handleInput();
@@ -3557,17 +3546,17 @@ var RichTextEditor = ({
3557
3546
  handleInput();
3558
3547
  }, [imageUrl, imageAlt, handleInput]);
3559
3548
  const getButtonClass = (isActive) => {
3560
- const baseClass = themeName === "minimalistic" ? "border border-white text-white transition-colors" : "border border-gray-300 dark:border-gray-600 text-gray-700 dark:text-gray-300 transition-colors";
3561
- const activeClass = themeName === "minimalistic" ? "bg-white text-black" : "bg-blue-100 dark:bg-blue-900 border-blue-500 dark:border-blue-400";
3562
- const hoverClass = themeName === "minimalistic" ? "hover:bg-white hover:text-black" : "hover:bg-gray-100 dark:hover:bg-gray-700";
3549
+ const baseClass = themeName === "minimalistic" ? "border border-white text-white transition-colors" : "border border-[hsl(var(--input))] text-[hsl(var(--foreground))] transition-colors";
3550
+ const activeClass = themeName === "minimalistic" ? "bg-white text-black" : "bg-[hsl(var(--primary))]/20 border-[hsl(var(--primary))]";
3551
+ const hoverClass = themeName === "minimalistic" ? "hover:bg-white hover:text-black" : "hover:bg-[hsl(var(--accent))]";
3563
3552
  const disabledClass = disabled ? "opacity-50 cursor-not-allowed" : "cursor-pointer";
3564
3553
  return `px-2.5 py-1.5 rounded text-sm font-medium ${baseClass} ${isActive ? activeClass : hoverClass} ${disabledClass}`;
3565
3554
  };
3566
- const editorBaseClass = themeName === "minimalistic" ? "bg-transparent border-2 border-white text-white placeholder:text-gray-500" : "bg-white dark:bg-gray-800 border border-gray-300 dark:border-gray-600 text-gray-900 dark:text-gray-100";
3567
- const focusClass = isFocused && !disabled ? themeName === "minimalistic" ? "border-white" : "border-blue-500 dark:border-blue-400 ring-2 ring-blue-500/20" : "";
3555
+ const editorBaseClass = themeName === "minimalistic" ? "bg-transparent border-2 border-white text-white placeholder:text-[hsl(var(--muted-foreground))]" : "bg-[hsl(var(--card))] border border-[hsl(var(--input))] text-[hsl(var(--foreground))]";
3556
+ const focusClass = isFocused && !disabled ? themeName === "minimalistic" ? "border-white" : "border-[hsl(var(--primary))] ring-1 ring-[hsl(var(--ring))]/50" : "";
3568
3557
  const errorClass = error ? "border-red-500 dark:border-red-400" : "";
3569
3558
  return /* @__PURE__ */ jsxs28("div", { className: `w-full ${className}`, children: [
3570
- label && /* @__PURE__ */ jsx101("label", { className: "block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2", children: label }),
3559
+ label && /* @__PURE__ */ jsx101("label", { className: "block text-sm font-medium text-[hsl(var(--foreground))] mb-2", children: label }),
3571
3560
  /* @__PURE__ */ jsxs28("div", { className: `rounded-t-lg border-b ${editorBaseClass} p-2 flex flex-wrap gap-1`, children: [
3572
3561
  /* @__PURE__ */ jsxs28("div", { className: "flex gap-1", children: [
3573
3562
  /* @__PURE__ */ jsx101(
@@ -3615,7 +3604,7 @@ var RichTextEditor = ({
3615
3604
  }
3616
3605
  )
3617
3606
  ] }),
3618
- /* @__PURE__ */ jsx101("div", { className: "w-px bg-gray-300 dark:bg-gray-600 mx-1" }),
3607
+ /* @__PURE__ */ jsx101("div", { className: "w-px bg-[hsl(var(--border))] mx-1" }),
3619
3608
  /* @__PURE__ */ jsxs28("div", { className: "flex gap-1", children: [
3620
3609
  /* @__PURE__ */ jsx101(
3621
3610
  "button",
@@ -3651,7 +3640,7 @@ var RichTextEditor = ({
3651
3640
  }
3652
3641
  )
3653
3642
  ] }),
3654
- /* @__PURE__ */ jsx101("div", { className: "w-px bg-gray-300 dark:bg-gray-600 mx-1" }),
3643
+ /* @__PURE__ */ jsx101("div", { className: "w-px bg-[hsl(var(--border))] mx-1" }),
3655
3644
  /* @__PURE__ */ jsxs28("div", { className: "flex gap-1", children: [
3656
3645
  /* @__PURE__ */ jsx101(
3657
3646
  "button",
@@ -3676,7 +3665,7 @@ var RichTextEditor = ({
3676
3665
  }
3677
3666
  )
3678
3667
  ] }),
3679
- /* @__PURE__ */ jsx101("div", { className: "w-px bg-gray-300 dark:bg-gray-600 mx-1" }),
3668
+ /* @__PURE__ */ jsx101("div", { className: "w-px bg-[hsl(var(--border))] mx-1" }),
3680
3669
  /* @__PURE__ */ jsxs28("div", { className: "flex gap-1", children: [
3681
3670
  /* @__PURE__ */ jsx101(
3682
3671
  "button",
@@ -3738,7 +3727,7 @@ var RichTextEditor = ({
3738
3727
  }
3739
3728
  ),
3740
3729
  error && /* @__PURE__ */ jsx101("p", { className: "mt-1 text-sm text-red-600 dark:text-red-400", children: error }),
3741
- helperText && !error && /* @__PURE__ */ jsx101("p", { className: "mt-1 text-sm text-gray-500 dark:text-gray-400", children: helperText }),
3730
+ helperText && !error && /* @__PURE__ */ jsx101("p", { className: "mt-1 text-sm text-[hsl(var(--muted-foreground))]", children: helperText }),
3742
3731
  /* @__PURE__ */ jsx101(
3743
3732
  Modal,
3744
3733
  {
@@ -3897,31 +3886,31 @@ var ToastProvider = ({ children, position = "top-right" }) => {
3897
3886
  };
3898
3887
  var ToastItem = ({ toast: toast2, onClose }) => {
3899
3888
  const typeStyles = {
3900
- success: "bg-green-50 dark:bg-green-900/30 border-green-500 text-green-800 dark:text-green-200",
3901
- error: "bg-red-50 dark:bg-red-900/30 border-red-500 text-red-800 dark:text-red-200",
3902
- warning: "bg-yellow-50 dark:bg-yellow-900/30 border-yellow-500 text-yellow-800 dark:text-yellow-200",
3903
- info: "bg-blue-50 dark:bg-blue-900/30 border-blue-500 text-blue-800 dark:text-blue-200"
3889
+ success: "bg-[hsl(var(--success))]/10 border-[hsl(var(--success))] text-[hsl(var(--success))]",
3890
+ error: "bg-[hsl(var(--destructive))]/10 border-[hsl(var(--destructive))] text-[hsl(var(--destructive))]",
3891
+ warning: "bg-[hsl(var(--warning))]/10 border-[hsl(var(--warning))] text-[hsl(var(--warning))]",
3892
+ info: "bg-[hsl(var(--info))]/10 border-[hsl(var(--info))] text-[hsl(var(--info))]"
3904
3893
  };
3905
3894
  const typeIcons = {
3906
- success: /* @__PURE__ */ jsx102(CheckIcon, { size: "sm", className: "text-green-600 dark:text-green-400" }),
3907
- error: /* @__PURE__ */ jsx102(CloseIcon, { size: "sm", className: "text-red-600 dark:text-red-400" }),
3908
- warning: /* @__PURE__ */ jsx102("svg", { className: "w-4 h-4 text-yellow-600 dark:text-yellow-400", fill: "currentColor", viewBox: "0 0 20 20", children: /* @__PURE__ */ jsx102("path", { fillRule: "evenodd", d: "M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z", clipRule: "evenodd" }) }),
3909
- info: /* @__PURE__ */ jsx102("svg", { className: "w-4 h-4 text-blue-600 dark:text-blue-400", fill: "currentColor", viewBox: "0 0 20 20", children: /* @__PURE__ */ jsx102("path", { fillRule: "evenodd", d: "M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a1 1 0 000 2v3a1 1 0 001 1h1a1 1 0 100-2v-3a1 1 0 00-1-1H9z", clipRule: "evenodd" }) })
3895
+ success: /* @__PURE__ */ jsx102(CheckIcon, { size: "sm", className: "text-[hsl(var(--success))]" }),
3896
+ error: /* @__PURE__ */ jsx102(CloseIcon, { size: "sm", className: "text-[hsl(var(--destructive))]" }),
3897
+ warning: /* @__PURE__ */ jsx102("svg", { className: "w-4 h-4 text-[hsl(var(--warning))]", fill: "currentColor", viewBox: "0 0 20 20", children: /* @__PURE__ */ jsx102("path", { fillRule: "evenodd", d: "M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z", clipRule: "evenodd" }) }),
3898
+ info: /* @__PURE__ */ jsx102("svg", { className: "w-4 h-4 text-[hsl(var(--info))]", fill: "currentColor", viewBox: "0 0 20 20", children: /* @__PURE__ */ jsx102("path", { fillRule: "evenodd", d: "M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a1 1 0 000 2v3a1 1 0 001 1h1a1 1 0 100-2v-3a1 1 0 00-1-1H9z", clipRule: "evenodd" }) })
3910
3899
  };
3911
3900
  const type = toast2.type || "info";
3912
3901
  return /* @__PURE__ */ jsxs29(
3913
3902
  "div",
3914
3903
  {
3915
- className: `flex items-start gap-3 p-4 rounded-lg border-l-4 shadow-lg backdrop-blur-sm ${typeStyles[type]} animate-slide-in`,
3904
+ className: `flex items-start gap-3 p-4 rounded-md border-l-4 shadow-lg bg-[hsl(var(--card))] ${typeStyles[type]} animate-slide-in`,
3916
3905
  role: "alert",
3917
3906
  children: [
3918
3907
  /* @__PURE__ */ jsx102("div", { className: "flex-shrink-0 mt-0.5", children: typeIcons[type] }),
3919
- /* @__PURE__ */ jsx102("p", { className: "flex-1 text-sm font-medium", children: toast2.message }),
3908
+ /* @__PURE__ */ jsx102("p", { className: "flex-1 text-sm font-medium text-[hsl(var(--foreground))]", children: toast2.message }),
3920
3909
  /* @__PURE__ */ jsx102(
3921
3910
  "button",
3922
3911
  {
3923
3912
  onClick: onClose,
3924
- className: "flex-shrink-0 text-gray-400 hover:text-gray-600 dark:hover:text-gray-200 transition-colors",
3913
+ className: "flex-shrink-0 text-[hsl(var(--muted-foreground))] hover:text-[hsl(var(--foreground))] transition-colors",
3925
3914
  "aria-label": "Close",
3926
3915
  children: /* @__PURE__ */ jsx102(CloseIcon, { size: "sm" })
3927
3916
  }
@@ -3976,7 +3965,7 @@ var Stepper = ({
3976
3965
  };
3977
3966
  const shouldShowCounter = isHorizontal && steps.length > 3;
3978
3967
  return /* @__PURE__ */ jsxs30("div", { className: `${isHorizontal ? "flex items-start w-full" : "flex flex-col"} ${className}`, children: [
3979
- shouldShowCounter && /* @__PURE__ */ jsx103("div", { className: "md:hidden flex items-center mr-4 flex-shrink-0", children: /* @__PURE__ */ jsxs30("span", { className: "text-sm font-medium text-gray-600 dark:text-gray-400", children: [
3968
+ shouldShowCounter && /* @__PURE__ */ jsx103("div", { className: "md:hidden flex items-center mr-4 flex-shrink-0", children: /* @__PURE__ */ jsxs30("span", { className: "text-sm font-medium text-[hsl(var(--muted-foreground))]", children: [
3980
3969
  currentStep,
3981
3970
  "/",
3982
3971
  steps.length
@@ -4000,11 +3989,11 @@ var Stepper = ({
4000
3989
  /* @__PURE__ */ jsx103(
4001
3990
  "div",
4002
3991
  {
4003
- className: `flex items-center justify-center w-10 h-10 rounded-full border-2 transition-all ${isCompleted ? "bg-blue-600 border-blue-600 dark:bg-blue-500 dark:border-blue-500" : isActive ? "border-blue-600 bg-white dark:border-blue-500 dark:bg-gray-800" : "border-gray-300 bg-white dark:border-gray-600 dark:bg-gray-800"}`,
4004
- children: isCompleted ? /* @__PURE__ */ jsx103(CheckIcon, { size: "sm", className: "text-white" }) : /* @__PURE__ */ jsx103(
3992
+ className: `flex items-center justify-center w-10 h-10 rounded-full border-2 transition-all ${isCompleted ? "bg-[hsl(var(--primary))] border-[hsl(var(--primary))]" : isActive ? "border-[hsl(var(--primary))] bg-[hsl(var(--background))]" : "border-[hsl(var(--border))] bg-[hsl(var(--background))]"}`,
3993
+ children: isCompleted ? /* @__PURE__ */ jsx103(CheckIcon, { size: "sm", className: "text-[hsl(var(--primary-foreground))]" }) : /* @__PURE__ */ jsx103(
4005
3994
  "span",
4006
3995
  {
4007
- className: `text-sm font-semibold ${isActive ? "text-blue-600 dark:text-blue-400" : "text-gray-500 dark:text-gray-400"}`,
3996
+ className: `text-sm font-semibold ${isActive ? "text-[hsl(var(--primary))]" : "text-[hsl(var(--muted-foreground))]"}`,
4008
3997
  children: stepNumber
4009
3998
  }
4010
3999
  )
@@ -4013,7 +4002,7 @@ var Stepper = ({
4013
4002
  !isLast && !isHorizontal && /* @__PURE__ */ jsx103(
4014
4003
  "div",
4015
4004
  {
4016
- className: `w-0.5 flex-1 min-h-[24px] ${isCompleted ? "bg-blue-600 dark:bg-blue-500" : "bg-gray-300 dark:bg-gray-600"}`
4005
+ className: `w-0.5 flex-1 min-h-[24px] ${isCompleted ? "bg-[hsl(var(--primary))]" : "bg-[hsl(var(--border))]"}`
4017
4006
  }
4018
4007
  )
4019
4008
  ] }),
@@ -4021,11 +4010,11 @@ var Stepper = ({
4021
4010
  /* @__PURE__ */ jsx103(
4022
4011
  "p",
4023
4012
  {
4024
- className: `text-sm font-medium whitespace-nowrap ${isActive || isCompleted ? "text-gray-900 dark:text-gray-100" : "text-gray-500 dark:text-gray-400"}`,
4013
+ className: `text-sm font-medium whitespace-nowrap ${isActive || isCompleted ? "text-[hsl(var(--foreground))]" : "text-[hsl(var(--muted-foreground))]"}`,
4025
4014
  children: step.label
4026
4015
  }
4027
4016
  ),
4028
- step.description && /* @__PURE__ */ jsx103("p", { className: "text-xs text-gray-500 dark:text-gray-400 mt-1 whitespace-nowrap", children: step.description })
4017
+ step.description && /* @__PURE__ */ jsx103("p", { className: "text-xs text-[hsl(var(--muted-foreground))] mt-1 whitespace-nowrap", children: step.description })
4029
4018
  ] })
4030
4019
  ] }),
4031
4020
  !isLast && isHorizontal && /* @__PURE__ */ jsx103("div", { className: `
@@ -4035,7 +4024,7 @@ var Stepper = ({
4035
4024
  `, children: /* @__PURE__ */ jsx103(
4036
4025
  "div",
4037
4026
  {
4038
- className: `h-0.5 w-full ${isCompleted ? "bg-blue-600 dark:bg-blue-500" : "bg-gray-300 dark:bg-gray-600"}`
4027
+ className: `h-0.5 w-full ${isCompleted ? "bg-[hsl(var(--primary))]" : "bg-[hsl(var(--border))]"}`
4039
4028
  }
4040
4029
  ) })
4041
4030
  ] }, index);
@@ -4064,16 +4053,16 @@ var Divider = ({
4064
4053
  right: "justify-end"
4065
4054
  };
4066
4055
  return /* @__PURE__ */ jsxs31("div", { className: `flex items-center ${alignmentClasses[labelPosition]} ${className}`, role: "separator", children: [
4067
- labelPosition !== "left" && /* @__PURE__ */ jsx104("div", { className: `flex-1 border-t ${variantClasses[variant]} border-gray-300 dark:border-gray-600` }),
4068
- /* @__PURE__ */ jsx104("span", { className: "px-4 text-sm text-gray-500 dark:text-gray-400", children: label }),
4069
- labelPosition !== "right" && /* @__PURE__ */ jsx104("div", { className: `flex-1 border-t ${variantClasses[variant]} border-gray-300 dark:border-gray-600` })
4056
+ labelPosition !== "left" && /* @__PURE__ */ jsx104("div", { className: `flex-1 border-t ${variantClasses[variant]} border-[hsl(var(--input))]` }),
4057
+ /* @__PURE__ */ jsx104("span", { className: "px-4 text-sm text-[hsl(var(--muted-foreground))]", children: label }),
4058
+ labelPosition !== "right" && /* @__PURE__ */ jsx104("div", { className: `flex-1 border-t ${variantClasses[variant]} border-[hsl(var(--input))]` })
4070
4059
  ] });
4071
4060
  }
4072
4061
  if (orientation === "vertical") {
4073
4062
  return /* @__PURE__ */ jsx104(
4074
4063
  "div",
4075
4064
  {
4076
- className: `inline-block h-full border-l ${variantClasses[variant]} border-gray-300 dark:border-gray-600 ${className}`,
4065
+ className: `inline-block h-full border-l ${variantClasses[variant]} border-[hsl(var(--input))] ${className}`,
4077
4066
  role: "separator",
4078
4067
  "aria-orientation": "vertical"
4079
4068
  }
@@ -4082,7 +4071,7 @@ var Divider = ({
4082
4071
  return /* @__PURE__ */ jsx104(
4083
4072
  "hr",
4084
4073
  {
4085
- className: `border-t ${variantClasses[variant]} border-gray-300 dark:border-gray-600 ${className}`,
4074
+ className: `border-t ${variantClasses[variant]} border-[hsl(var(--input))] ${className}`,
4086
4075
  role: "separator"
4087
4076
  }
4088
4077
  );
@@ -4164,7 +4153,7 @@ var FileUpload = ({
4164
4153
  onChange?.(newFiles);
4165
4154
  };
4166
4155
  return /* @__PURE__ */ jsxs32("div", { className: `w-full ${className}`, children: [
4167
- label && /* @__PURE__ */ jsx105("label", { className: "block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2", children: label }),
4156
+ label && /* @__PURE__ */ jsx105("label", { className: "block text-sm font-medium text-[hsl(var(--foreground))] mb-2", children: label }),
4168
4157
  /* @__PURE__ */ jsxs32(
4169
4158
  "div",
4170
4159
  {
@@ -4172,7 +4161,7 @@ var FileUpload = ({
4172
4161
  onDragOver: handleDragOver,
4173
4162
  onDragLeave: handleDragLeave,
4174
4163
  onClick: handleClick,
4175
- className: `relative border-2 border-dashed rounded-lg p-8 text-center cursor-pointer transition-all ${isDragging ? "border-blue-500 bg-blue-50 dark:bg-blue-900/20" : "border-gray-300 dark:border-gray-600 hover:border-gray-400 dark:hover:border-gray-500"} ${disabled ? "opacity-50 cursor-not-allowed" : ""}`,
4164
+ className: `relative border-2 border-dashed rounded-lg p-8 text-center cursor-pointer transition-all ${isDragging ? "border-[hsl(var(--primary))] bg-[hsl(var(--primary))]/10" : "border-[hsl(var(--input))] hover:border-[hsl(var(--muted-foreground))]"} ${disabled ? "opacity-50 cursor-not-allowed" : ""}`,
4176
4165
  children: [
4177
4166
  /* @__PURE__ */ jsx105(
4178
4167
  "input",
@@ -4187,13 +4176,13 @@ var FileUpload = ({
4187
4176
  }
4188
4177
  ),
4189
4178
  /* @__PURE__ */ jsxs32("div", { className: "flex flex-col items-center gap-2", children: [
4190
- /* @__PURE__ */ jsx105("div", { className: "w-12 h-12 rounded-full bg-gray-100 dark:bg-gray-800 flex items-center justify-center", children: /* @__PURE__ */ jsx105(UploadIcon, { size: "lg", className: "text-gray-400 dark:text-gray-500" }) }),
4179
+ /* @__PURE__ */ jsx105("div", { className: "w-12 h-12 rounded-full bg-[hsl(var(--muted))] flex items-center justify-center", children: /* @__PURE__ */ jsx105(UploadIcon, { size: "lg", className: "text-[hsl(var(--muted-foreground))]" }) }),
4191
4180
  /* @__PURE__ */ jsxs32("div", { children: [
4192
- /* @__PURE__ */ jsxs32("p", { className: "text-sm font-medium text-gray-700 dark:text-gray-300", children: [
4193
- /* @__PURE__ */ jsx105("span", { className: "text-blue-600 dark:text-blue-400", children: "Click to upload" }),
4181
+ /* @__PURE__ */ jsxs32("p", { className: "text-sm font-medium text-[hsl(var(--foreground))]", children: [
4182
+ /* @__PURE__ */ jsx105("span", { className: "text-[hsl(var(--primary))]", children: "Click to upload" }),
4194
4183
  " or drag and drop"
4195
4184
  ] }),
4196
- /* @__PURE__ */ jsxs32("p", { className: "text-xs text-gray-500 dark:text-gray-400 mt-1", children: [
4185
+ /* @__PURE__ */ jsxs32("p", { className: "text-xs text-[hsl(var(--muted-foreground))] mt-1", children: [
4197
4186
  accept ? `Accepted: ${accept}` : "Any file type",
4198
4187
  maxSize && ` \u2022 Max size: ${formatFileSize(maxSize)}`
4199
4188
  ] })
@@ -4202,15 +4191,15 @@ var FileUpload = ({
4202
4191
  ]
4203
4192
  }
4204
4193
  ),
4205
- helperText && /* @__PURE__ */ jsx105("p", { className: "mt-2 text-sm text-gray-500 dark:text-gray-400", children: helperText }),
4194
+ helperText && /* @__PURE__ */ jsx105("p", { className: "mt-2 text-sm text-[hsl(var(--muted-foreground))]", children: helperText }),
4206
4195
  files.length > 0 && /* @__PURE__ */ jsx105("div", { className: "mt-4 space-y-2", children: files.map((file, index) => /* @__PURE__ */ jsxs32(
4207
4196
  "div",
4208
4197
  {
4209
- className: "flex items-center justify-between p-3 bg-gray-50 dark:bg-gray-800 rounded-lg border border-gray-200 dark:border-gray-700",
4198
+ className: "flex items-center justify-between p-3 bg-[hsl(var(--muted))] rounded-lg border border-[hsl(var(--border))]",
4210
4199
  children: [
4211
4200
  /* @__PURE__ */ jsxs32("div", { className: "flex-1 min-w-0", children: [
4212
- /* @__PURE__ */ jsx105("p", { className: "text-sm font-medium text-gray-900 dark:text-gray-100 truncate", children: file.name }),
4213
- /* @__PURE__ */ jsx105("p", { className: "text-xs text-gray-500 dark:text-gray-400", children: formatFileSize(file.size) })
4201
+ /* @__PURE__ */ jsx105("p", { className: "text-sm font-medium text-[hsl(var(--foreground))] truncate", children: file.name }),
4202
+ /* @__PURE__ */ jsx105("p", { className: "text-xs text-[hsl(var(--muted-foreground))]", children: formatFileSize(file.size) })
4214
4203
  ] }),
4215
4204
  /* @__PURE__ */ jsx105(
4216
4205
  "button",
@@ -4219,7 +4208,7 @@ var FileUpload = ({
4219
4208
  e.stopPropagation();
4220
4209
  handleRemoveFile(index);
4221
4210
  },
4222
- className: "ml-4 text-gray-400 hover:text-red-600 dark:hover:text-red-400 transition-colors",
4211
+ className: "ml-4 text-[hsl(var(--muted-foreground))] hover:text-[hsl(var(--destructive))] transition-colors",
4223
4212
  "aria-label": "Remove file",
4224
4213
  children: /* @__PURE__ */ jsx105(CloseIcon, { size: "sm" })
4225
4214
  }
@@ -4418,7 +4407,7 @@ var AudioPlayer = ({
4418
4407
  };
4419
4408
  const progress = duration > 0 ? currentTime / duration * 100 : 0;
4420
4409
  if (variant === "mini") {
4421
- return /* @__PURE__ */ jsxs33("div", { className: `flex items-center gap-2 p-2 bg-white dark:bg-gray-800 rounded-lg border border-gray-200 dark:border-gray-700 ${className}`, children: [
4410
+ return /* @__PURE__ */ jsxs33("div", { className: `flex items-center gap-2 p-2 bg-[hsl(var(--card))] rounded-lg border border-[hsl(var(--border))] ${className}`, children: [
4422
4411
  /* @__PURE__ */ jsx106("audio", { ref: audioRef, src, preload, loop, autoPlay }),
4423
4412
  /* @__PURE__ */ jsx106(
4424
4413
  Button,
@@ -4432,11 +4421,11 @@ var AudioPlayer = ({
4432
4421
  children: isPlaying ? /* @__PURE__ */ jsx106(PauseIcon, { size: "sm" }) : /* @__PURE__ */ jsx106(PlayIcon, { size: "sm" })
4433
4422
  }
4434
4423
  ),
4435
- title && /* @__PURE__ */ jsx106("span", { className: "text-sm font-medium text-gray-700 dark:text-gray-300 truncate", children: title })
4424
+ title && /* @__PURE__ */ jsx106("span", { className: "text-sm font-medium text-[hsl(var(--foreground))] truncate", children: title })
4436
4425
  ] });
4437
4426
  }
4438
4427
  if (variant === "compact") {
4439
- return /* @__PURE__ */ jsxs33("div", { className: `flex items-center gap-3 p-3 bg-white dark:bg-gray-800 rounded-lg border border-gray-200 dark:border-gray-700 shadow-sm ${className}`, children: [
4428
+ return /* @__PURE__ */ jsxs33("div", { className: `flex items-center gap-3 p-3 bg-[hsl(var(--card))] rounded-lg border border-[hsl(var(--border))] shadow-sm ${className}`, children: [
4440
4429
  /* @__PURE__ */ jsx106("audio", { ref: audioRef, src, preload, loop, autoPlay }),
4441
4430
  /* @__PURE__ */ jsx106(
4442
4431
  Button,
@@ -4451,16 +4440,16 @@ var AudioPlayer = ({
4451
4440
  }
4452
4441
  ),
4453
4442
  /* @__PURE__ */ jsxs33("div", { className: "flex-1 min-w-0", children: [
4454
- title && /* @__PURE__ */ jsx106("div", { className: "text-sm font-medium text-gray-900 dark:text-gray-100 truncate", children: title }),
4455
- artist && /* @__PURE__ */ jsx106("div", { className: "text-xs text-gray-500 dark:text-gray-400 truncate", children: artist })
4443
+ title && /* @__PURE__ */ jsx106("div", { className: "text-sm font-medium text-[hsl(var(--foreground))] truncate", children: title }),
4444
+ artist && /* @__PURE__ */ jsx106("div", { className: "text-xs text-[hsl(var(--muted-foreground))] truncate", children: artist })
4456
4445
  ] }),
4457
4446
  /* @__PURE__ */ jsxs33("div", { className: "flex items-center gap-2 flex-1", children: [
4458
- /* @__PURE__ */ jsx106("span", { className: "text-xs text-gray-500 dark:text-gray-400 tabular-nums", children: formatTime(currentTime) }),
4459
- /* @__PURE__ */ jsxs33("div", { className: "relative flex-1 h-1.5 bg-gray-200 dark:bg-gray-700 rounded-full overflow-visible", children: [
4447
+ /* @__PURE__ */ jsx106("span", { className: "text-xs text-[hsl(var(--muted-foreground))] tabular-nums", children: formatTime(currentTime) }),
4448
+ /* @__PURE__ */ jsxs33("div", { className: "relative flex-1 h-1.5 bg-[hsl(var(--muted))] rounded-full overflow-visible", children: [
4460
4449
  /* @__PURE__ */ jsx106(
4461
4450
  "div",
4462
4451
  {
4463
- className: "absolute h-full bg-blue-600 dark:bg-blue-500 rounded-full transition-all",
4452
+ className: "absolute h-full bg-[hsl(var(--primary))] rounded-full transition-all",
4464
4453
  style: { width: `${progress}%` }
4465
4454
  }
4466
4455
  ),
@@ -4469,7 +4458,7 @@ var AudioPlayer = ({
4469
4458
  return /* @__PURE__ */ jsx106(
4470
4459
  "div",
4471
4460
  {
4472
- className: "absolute top-0 bottom-0 w-1 -ml-0.5 bg-white dark:bg-gray-300 opacity-70 hover:opacity-100 hover:w-1.5 hover:-ml-0.5 cursor-pointer z-10 transition-all",
4461
+ className: "absolute top-0 bottom-0 w-1 -ml-0.5 bg-[hsl(var(--background))] opacity-70 hover:opacity-100 hover:w-1.5 hover:-ml-0.5 cursor-pointer z-10 transition-all",
4473
4462
  style: { left: `${markerPosition}%` },
4474
4463
  onClick: () => jumpToChapter(chapter),
4475
4464
  onMouseEnter: (e) => {
@@ -4496,8 +4485,8 @@ var AudioPlayer = ({
4496
4485
  }
4497
4486
  )
4498
4487
  ] }),
4499
- /* @__PURE__ */ jsx106("span", { className: "text-xs text-gray-500 dark:text-gray-400 tabular-nums", children: formatTime(duration) }),
4500
- currentChapter && showChapters && /* @__PURE__ */ jsxs33("span", { className: "text-xs text-blue-600 dark:text-blue-400 font-medium truncate max-w-[120px]", children: [
4488
+ /* @__PURE__ */ jsx106("span", { className: "text-xs text-[hsl(var(--muted-foreground))] tabular-nums", children: formatTime(duration) }),
4489
+ currentChapter && showChapters && /* @__PURE__ */ jsxs33("span", { className: "text-xs text-[hsl(var(--primary))] font-medium truncate max-w-[120px]", children: [
4501
4490
  "\u2022 ",
4502
4491
  currentChapter.title
4503
4492
  ] })
@@ -4507,7 +4496,7 @@ var AudioPlayer = ({
4507
4496
  "button",
4508
4497
  {
4509
4498
  onClick: toggleMute,
4510
- className: "text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200",
4499
+ className: "text-[hsl(var(--muted-foreground))] hover:text-[hsl(var(--foreground))]",
4511
4500
  "aria-label": isMuted ? "Unmute" : "Mute",
4512
4501
  children: isMuted ? /* @__PURE__ */ jsx106(VolumeOffIcon, { size: "sm" }) : /* @__PURE__ */ jsx106(VolumeUpIcon, { size: "sm" })
4513
4502
  }
@@ -4521,7 +4510,7 @@ var AudioPlayer = ({
4521
4510
  step: 0.01,
4522
4511
  value: isMuted ? 0 : volume,
4523
4512
  onChange: handleVolumeChange,
4524
- className: "w-16 h-1.5 bg-gray-200 dark:bg-gray-700 rounded-full appearance-none cursor-pointer\n [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:w-3 [&::-webkit-slider-thumb]:h-3\n [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:bg-blue-600 [&::-webkit-slider-thumb]:cursor-pointer\n [&::-moz-range-thumb]:w-3 [&::-moz-range-thumb]:h-3 [&::-moz-range-thumb]:rounded-full\n [&::-moz-range-thumb]:bg-blue-600 [&::-moz-range-thumb]:cursor-pointer [&::-moz-range-thumb]:border-none",
4513
+ className: "w-16 h-1.5 bg-[hsl(var(--muted))] rounded-full appearance-none cursor-pointer\n [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:w-3 [&::-webkit-slider-thumb]:h-3\n [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:bg-[hsl(var(--primary))] [&::-webkit-slider-thumb]:cursor-pointer\n [&::-moz-range-thumb]:w-3 [&::-moz-range-thumb]:h-3 [&::-moz-range-thumb]:rounded-full\n [&::-moz-range-thumb]:bg-[hsl(var(--primary))] [&::-moz-range-thumb]:cursor-pointer [&::-moz-range-thumb]:border-none",
4525
4514
  "aria-label": "Volume"
4526
4515
  }
4527
4516
  )
@@ -4529,21 +4518,21 @@ var AudioPlayer = ({
4529
4518
  hoveredChapter && showChapters && /* @__PURE__ */ jsxs33(
4530
4519
  "div",
4531
4520
  {
4532
- className: "fixed z-50 px-3 py-2 bg-gray-900 dark:bg-gray-800 text-white text-xs font-medium rounded shadow-lg pointer-events-none transform -translate-x-1/2 -translate-y-full",
4521
+ className: "fixed z-50 px-3 py-2 bg-[hsl(var(--popover))] text-white text-xs font-medium rounded shadow-lg pointer-events-none transform -translate-x-1/2 -translate-y-full",
4533
4522
  style: { left: hoverPosition.x, top: hoverPosition.y - 8 },
4534
4523
  children: [
4535
4524
  /* @__PURE__ */ jsx106("div", { className: "whitespace-nowrap", children: hoveredChapter.title }),
4536
- /* @__PURE__ */ jsx106("div", { className: "text-gray-300 text-[10px] mt-0.5", children: formatTime(hoveredChapter.startTime) }),
4537
- /* @__PURE__ */ jsx106("div", { className: "absolute left-1/2 -bottom-1 w-2 h-2 bg-gray-900 dark:bg-gray-800 transform -translate-x-1/2 rotate-45" })
4525
+ /* @__PURE__ */ jsx106("div", { className: "text-[hsl(var(--muted-foreground))] text-[10px] mt-0.5", children: formatTime(hoveredChapter.startTime) }),
4526
+ /* @__PURE__ */ jsx106("div", { className: "absolute left-1/2 -bottom-1 w-2 h-2 bg-[hsl(var(--popover))] transform -translate-x-1/2 rotate-45" })
4538
4527
  ]
4539
4528
  }
4540
4529
  )
4541
4530
  ] });
4542
4531
  }
4543
- return /* @__PURE__ */ jsxs33("div", { className: `bg-white dark:bg-gray-800 rounded-lg border border-gray-200 dark:border-gray-700 shadow-md overflow-hidden ${className}`, children: [
4532
+ return /* @__PURE__ */ jsxs33("div", { className: `bg-[hsl(var(--card))] rounded-lg border border-[hsl(var(--border))] shadow-md overflow-hidden ${className}`, children: [
4544
4533
  /* @__PURE__ */ jsx106("audio", { ref: audioRef, src, preload, loop, autoPlay }),
4545
- /* @__PURE__ */ jsxs33("div", { className: "flex items-center gap-4 p-4 border-b border-gray-200 dark:border-gray-700", children: [
4546
- coverArt && /* @__PURE__ */ jsx106("div", { className: "w-16 h-16 flex-shrink-0 rounded-md overflow-hidden bg-gray-100 dark:bg-gray-700", children: /* @__PURE__ */ jsx106(
4534
+ /* @__PURE__ */ jsxs33("div", { className: "flex items-center gap-4 p-4 border-b border-[hsl(var(--border))]", children: [
4535
+ coverArt && /* @__PURE__ */ jsx106("div", { className: "w-16 h-16 flex-shrink-0 rounded-md overflow-hidden bg-[hsl(var(--muted))]", children: /* @__PURE__ */ jsx106(
4547
4536
  "img",
4548
4537
  {
4549
4538
  src: coverArt,
@@ -4552,17 +4541,17 @@ var AudioPlayer = ({
4552
4541
  }
4553
4542
  ) }),
4554
4543
  /* @__PURE__ */ jsxs33("div", { className: "flex-1 min-w-0", children: [
4555
- title && /* @__PURE__ */ jsx106("h3", { className: "text-base font-semibold text-gray-900 dark:text-gray-100 truncate", children: title }),
4556
- artist && /* @__PURE__ */ jsx106("p", { className: "text-sm text-gray-600 dark:text-gray-400 truncate", children: artist }),
4557
- album && /* @__PURE__ */ jsx106("p", { className: "text-xs text-gray-500 dark:text-gray-500 truncate", children: album })
4544
+ title && /* @__PURE__ */ jsx106("h3", { className: "text-base font-semibold text-[hsl(var(--foreground))] truncate", children: title }),
4545
+ artist && /* @__PURE__ */ jsx106("p", { className: "text-sm text-[hsl(var(--muted-foreground))] truncate", children: artist }),
4546
+ album && /* @__PURE__ */ jsx106("p", { className: "text-xs text-[hsl(var(--muted-foreground))] truncate", children: album })
4558
4547
  ] })
4559
4548
  ] }),
4560
4549
  /* @__PURE__ */ jsxs33("div", { className: "px-4 pt-4", children: [
4561
- /* @__PURE__ */ jsxs33("div", { className: "relative h-2 bg-gray-200 dark:bg-gray-700 rounded-full overflow-visible", children: [
4550
+ /* @__PURE__ */ jsxs33("div", { className: "relative h-2 bg-[hsl(var(--muted))] rounded-full overflow-visible", children: [
4562
4551
  /* @__PURE__ */ jsx106(
4563
4552
  "div",
4564
4553
  {
4565
- className: "absolute h-full bg-blue-600 dark:bg-blue-500 rounded-full transition-all",
4554
+ className: "absolute h-full bg-[hsl(var(--primary))] rounded-full transition-all",
4566
4555
  style: { width: `${progress}%` }
4567
4556
  }
4568
4557
  ),
@@ -4571,7 +4560,7 @@ var AudioPlayer = ({
4571
4560
  return /* @__PURE__ */ jsx106(
4572
4561
  "div",
4573
4562
  {
4574
- className: "absolute top-0 bottom-0 w-1 -ml-0.5 bg-white dark:bg-gray-300 opacity-70 hover:opacity-100 hover:w-1.5 hover:-ml-0.5 cursor-pointer z-10 transition-all",
4563
+ className: "absolute top-0 bottom-0 w-1 -ml-0.5 bg-[hsl(var(--background))] opacity-70 hover:opacity-100 hover:w-1.5 hover:-ml-0.5 cursor-pointer z-10 transition-all",
4575
4564
  style: { left: `${markerPosition}%` },
4576
4565
  onClick: () => jumpToChapter(chapter),
4577
4566
  onMouseEnter: (e) => {
@@ -4587,12 +4576,12 @@ var AudioPlayer = ({
4587
4576
  hoveredChapter && showChapters && /* @__PURE__ */ jsxs33(
4588
4577
  "div",
4589
4578
  {
4590
- className: "fixed z-50 px-3 py-2 bg-gray-900 dark:bg-gray-800 text-white text-xs font-medium rounded shadow-lg pointer-events-none transform -translate-x-1/2 -translate-y-full",
4579
+ className: "fixed z-50 px-3 py-2 bg-[hsl(var(--popover))] text-white text-xs font-medium rounded shadow-lg pointer-events-none transform -translate-x-1/2 -translate-y-full",
4591
4580
  style: { left: hoverPosition.x, top: hoverPosition.y - 8 },
4592
4581
  children: [
4593
4582
  /* @__PURE__ */ jsx106("div", { className: "whitespace-nowrap", children: hoveredChapter.title }),
4594
- /* @__PURE__ */ jsx106("div", { className: "text-gray-300 text-[10px] mt-0.5", children: formatTime(hoveredChapter.startTime) }),
4595
- /* @__PURE__ */ jsx106("div", { className: "absolute left-1/2 -bottom-1 w-2 h-2 bg-gray-900 dark:bg-gray-800 transform -translate-x-1/2 rotate-45" })
4583
+ /* @__PURE__ */ jsx106("div", { className: "text-[hsl(var(--muted-foreground))] text-[10px] mt-0.5", children: formatTime(hoveredChapter.startTime) }),
4584
+ /* @__PURE__ */ jsx106("div", { className: "absolute left-1/2 -bottom-1 w-2 h-2 bg-[hsl(var(--popover))] transform -translate-x-1/2 rotate-45" })
4596
4585
  ]
4597
4586
  }
4598
4587
  ),
@@ -4610,9 +4599,9 @@ var AudioPlayer = ({
4610
4599
  }
4611
4600
  )
4612
4601
  ] }),
4613
- /* @__PURE__ */ jsxs33("div", { className: "flex justify-between items-center mt-1 text-xs text-gray-500 dark:text-gray-400 tabular-nums", children: [
4602
+ /* @__PURE__ */ jsxs33("div", { className: "flex justify-between items-center mt-1 text-xs text-[hsl(var(--muted-foreground))] tabular-nums", children: [
4614
4603
  /* @__PURE__ */ jsx106("span", { children: formatTime(currentTime) }),
4615
- currentChapter && showChapters && /* @__PURE__ */ jsx106("span", { className: "text-blue-600 dark:text-blue-400 font-medium truncate max-w-[200px]", children: currentChapter.title }),
4604
+ currentChapter && showChapters && /* @__PURE__ */ jsx106("span", { className: "text-[hsl(var(--primary))] font-medium truncate max-w-[200px]", children: currentChapter.title }),
4616
4605
  /* @__PURE__ */ jsx106("span", { children: formatTime(duration) })
4617
4606
  ] })
4618
4607
  ] }),
@@ -4622,7 +4611,7 @@ var AudioPlayer = ({
4622
4611
  "button",
4623
4612
  {
4624
4613
  onClick: toggleMute,
4625
- className: "text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200 transition-colors",
4614
+ className: "text-[hsl(var(--muted-foreground))] hover:text-[hsl(var(--foreground))] transition-colors",
4626
4615
  "aria-label": isMuted ? "Unmute" : "Mute",
4627
4616
  children: isMuted ? /* @__PURE__ */ jsx106(VolumeOffIcon, { size: "md" }) : /* @__PURE__ */ jsx106(VolumeUpIcon, { size: "md" })
4628
4617
  }
@@ -4636,7 +4625,7 @@ var AudioPlayer = ({
4636
4625
  step: 0.01,
4637
4626
  value: isMuted ? 0 : volume,
4638
4627
  onChange: handleVolumeChange,
4639
- className: "w-20 h-1.5 bg-gray-200 dark:bg-gray-700 rounded-full appearance-none cursor-pointer\n [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:w-3 [&::-webkit-slider-thumb]:h-3\n [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:bg-blue-600 [&::-webkit-slider-thumb]:cursor-pointer\n [&::-moz-range-thumb]:w-3 [&::-moz-range-thumb]:h-3 [&::-moz-range-thumb]:rounded-full\n [&::-moz-range-thumb]:bg-blue-600 [&::-moz-range-thumb]:cursor-pointer [&::-moz-range-thumb]:border-none",
4628
+ className: "w-20 h-1.5 bg-[hsl(var(--muted))] rounded-full appearance-none cursor-pointer\n [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:w-3 [&::-webkit-slider-thumb]:h-3\n [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:bg-[hsl(var(--primary))] [&::-webkit-slider-thumb]:cursor-pointer\n [&::-moz-range-thumb]:w-3 [&::-moz-range-thumb]:h-3 [&::-moz-range-thumb]:rounded-full\n [&::-moz-range-thumb]:bg-[hsl(var(--primary))] [&::-moz-range-thumb]:cursor-pointer [&::-moz-range-thumb]:border-none",
4640
4629
  "aria-label": "Volume"
4641
4630
  }
4642
4631
  )
@@ -4683,7 +4672,7 @@ var AudioPlayer = ({
4683
4672
  "button",
4684
4673
  {
4685
4674
  onClick: () => setShowChapterList(!showChapterList),
4686
- className: "text-sm text-gray-600 dark:text-gray-400 hover:text-gray-900 dark:hover:text-gray-100 transition-colors",
4675
+ className: "text-sm text-[hsl(var(--muted-foreground))] hover:text-[hsl(var(--foreground))] transition-colors",
4687
4676
  "aria-label": "Toggle chapters",
4688
4677
  children: [
4689
4678
  "Chapters (",
@@ -4693,16 +4682,16 @@ var AudioPlayer = ({
4693
4682
  }
4694
4683
  ) })
4695
4684
  ] }),
4696
- showChapters && showChapterList && chapters.length > 0 && /* @__PURE__ */ jsx106("div", { className: "border-t border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-900/50 max-h-48 overflow-y-auto", children: chapters.map((chapter, index) => {
4685
+ showChapters && showChapterList && chapters.length > 0 && /* @__PURE__ */ jsx106("div", { className: "border-t border-[hsl(var(--border))] bg-[hsl(var(--muted))]/50 max-h-48 overflow-y-auto", children: chapters.map((chapter, index) => {
4697
4686
  const isCurrentChapter = currentChapter?.startTime === chapter.startTime;
4698
4687
  return /* @__PURE__ */ jsx106(
4699
4688
  "button",
4700
4689
  {
4701
4690
  onClick: () => jumpToChapter(chapter),
4702
- className: `w-full text-left px-4 py-2 hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors ${isCurrentChapter ? "bg-blue-50 dark:bg-blue-900/20 border-l-2 border-blue-600" : ""}`,
4691
+ className: `w-full text-left px-4 py-2 hover:bg-[hsl(var(--accent))] transition-colors ${isCurrentChapter ? "bg-[hsl(var(--primary))]/10 border-l-2 border-[hsl(var(--primary))]" : ""}`,
4703
4692
  children: /* @__PURE__ */ jsxs33("div", { className: "flex items-center justify-between gap-2", children: [
4704
- /* @__PURE__ */ jsx106("span", { className: `text-sm font-medium ${isCurrentChapter ? "text-blue-600 dark:text-blue-400" : "text-gray-900 dark:text-gray-100"}`, children: chapter.title }),
4705
- /* @__PURE__ */ jsx106("span", { className: "text-xs text-gray-500 dark:text-gray-400 tabular-nums", children: formatTime(chapter.startTime) })
4693
+ /* @__PURE__ */ jsx106("span", { className: `text-sm font-medium ${isCurrentChapter ? "text-[hsl(var(--primary))]" : "text-[hsl(var(--foreground))]"}`, children: chapter.title }),
4694
+ /* @__PURE__ */ jsx106("span", { className: "text-xs text-[hsl(var(--muted-foreground))] tabular-nums", children: formatTime(chapter.startTime) })
4706
4695
  ] })
4707
4696
  },
4708
4697
  index
@@ -4981,7 +4970,7 @@ var VideoPlayer = ({
4981
4970
  /* @__PURE__ */ jsx107(
4982
4971
  "div",
4983
4972
  {
4984
- className: "absolute h-full bg-blue-600 rounded-full transition-all",
4973
+ className: "absolute h-full bg-[hsl(var(--primary))] rounded-full transition-all",
4985
4974
  style: { width: `${progress}%` }
4986
4975
  }
4987
4976
  ),
@@ -5034,7 +5023,7 @@ var VideoPlayer = ({
5034
5023
  "button",
5035
5024
  {
5036
5025
  onClick: toggleMute,
5037
- className: "text-white hover:text-gray-200 transition-colors",
5026
+ className: "text-white hover:text-[hsl(var(--foreground))] transition-colors",
5038
5027
  "aria-label": isMuted ? "Unmute" : "Mute",
5039
5028
  children: isMuted ? /* @__PURE__ */ jsx107(VolumeOffIcon, { size: "sm" }) : /* @__PURE__ */ jsx107(VolumeUpIcon, { size: "sm" })
5040
5029
  }
@@ -5043,7 +5032,7 @@ var VideoPlayer = ({
5043
5032
  "button",
5044
5033
  {
5045
5034
  onClick: toggleFullscreen,
5046
- className: "text-white hover:text-gray-200 transition-colors",
5035
+ className: "text-white hover:text-[hsl(var(--foreground))] transition-colors",
5047
5036
  "aria-label": isFullscreen ? "Exit fullscreen" : "Enter fullscreen",
5048
5037
  children: isFullscreen ? /* @__PURE__ */ jsx107(FullscreenExitIcon, { size: "sm" }) : /* @__PURE__ */ jsx107(FullscreenIcon, { size: "sm" })
5049
5038
  }
@@ -5055,12 +5044,12 @@ var VideoPlayer = ({
5055
5044
  hoveredChapter && showChapters && /* @__PURE__ */ jsxs34(
5056
5045
  "div",
5057
5046
  {
5058
- className: "fixed z-50 px-3 py-2 bg-gray-900 dark:bg-gray-800 text-white text-xs font-medium rounded shadow-lg pointer-events-none transform -translate-x-1/2 -translate-y-full",
5047
+ className: "fixed z-50 px-3 py-2 bg-[hsl(var(--popover))] text-white text-xs font-medium rounded shadow-lg pointer-events-none transform -translate-x-1/2 -translate-y-full",
5059
5048
  style: { left: hoverPosition.x, top: hoverPosition.y - 8 },
5060
5049
  children: [
5061
5050
  /* @__PURE__ */ jsx107("div", { className: "whitespace-nowrap", children: hoveredChapter.title }),
5062
- /* @__PURE__ */ jsx107("div", { className: "text-gray-300 text-[10px] mt-0.5", children: formatTime(hoveredChapter.startTime) }),
5063
- /* @__PURE__ */ jsx107("div", { className: "absolute left-1/2 -bottom-1 w-2 h-2 bg-gray-900 dark:bg-gray-800 transform -translate-x-1/2 rotate-45" })
5051
+ /* @__PURE__ */ jsx107("div", { className: "text-[hsl(var(--muted-foreground))] text-[10px] mt-0.5", children: formatTime(hoveredChapter.startTime) }),
5052
+ /* @__PURE__ */ jsx107("div", { className: "absolute left-1/2 -bottom-1 w-2 h-2 bg-[hsl(var(--popover))] transform -translate-x-1/2 rotate-45" })
5064
5053
  ]
5065
5054
  }
5066
5055
  )
@@ -5068,8 +5057,8 @@ var VideoPlayer = ({
5068
5057
  }
5069
5058
  );
5070
5059
  }
5071
- return /* @__PURE__ */ jsxs34("div", { className: `bg-white dark:bg-gray-800 rounded-lg border border-gray-200 dark:border-gray-700 shadow-md overflow-hidden ${className}`, children: [
5072
- title && /* @__PURE__ */ jsx107("div", { className: "px-4 py-3 border-b border-gray-200 dark:border-gray-700", children: /* @__PURE__ */ jsx107("h3", { className: "text-base font-semibold text-gray-900 dark:text-gray-100 truncate", children: title }) }),
5060
+ return /* @__PURE__ */ jsxs34("div", { className: `bg-[hsl(var(--card))] rounded-lg border border-[hsl(var(--border))] shadow-md overflow-hidden ${className}`, children: [
5061
+ title && /* @__PURE__ */ jsx107("div", { className: "px-4 py-3 border-b border-[hsl(var(--border))]", children: /* @__PURE__ */ jsx107("h3", { className: "text-base font-semibold text-[hsl(var(--foreground))] truncate", children: title }) }),
5073
5062
  /* @__PURE__ */ jsxs34(
5074
5063
  "div",
5075
5064
  {
@@ -5112,7 +5101,7 @@ var VideoPlayer = ({
5112
5101
  /* @__PURE__ */ jsx107(
5113
5102
  "div",
5114
5103
  {
5115
- className: "absolute h-full bg-blue-600 rounded-full transition-all",
5104
+ className: "absolute h-full bg-[hsl(var(--primary))] rounded-full transition-all",
5116
5105
  style: { width: `${progress}%` }
5117
5106
  }
5118
5107
  ),
@@ -5181,7 +5170,7 @@ var VideoPlayer = ({
5181
5170
  "button",
5182
5171
  {
5183
5172
  onClick: toggleMute,
5184
- className: "text-white hover:text-gray-200 transition-colors",
5173
+ className: "text-white hover:text-[hsl(var(--foreground))] transition-colors",
5185
5174
  "aria-label": isMuted ? "Unmute" : "Mute",
5186
5175
  children: isMuted ? /* @__PURE__ */ jsx107(VolumeOffIcon, { size: "md" }) : /* @__PURE__ */ jsx107(VolumeUpIcon, { size: "md" })
5187
5176
  }
@@ -5204,7 +5193,7 @@ var VideoPlayer = ({
5204
5193
  "button",
5205
5194
  {
5206
5195
  onClick: toggleFullscreen,
5207
- className: "text-white hover:text-gray-200 transition-colors",
5196
+ className: "text-white hover:text-[hsl(var(--foreground))] transition-colors",
5208
5197
  "aria-label": isFullscreen ? "Exit fullscreen" : "Enter fullscreen",
5209
5198
  children: isFullscreen ? /* @__PURE__ */ jsx107(FullscreenExitIcon, { size: "md" }) : /* @__PURE__ */ jsx107(FullscreenIcon, { size: "md" })
5210
5199
  }
@@ -5216,12 +5205,12 @@ var VideoPlayer = ({
5216
5205
  hoveredChapter && showChapters && /* @__PURE__ */ jsxs34(
5217
5206
  "div",
5218
5207
  {
5219
- className: "fixed z-50 px-3 py-2 bg-gray-900 dark:bg-gray-800 text-white text-xs font-medium rounded shadow-lg pointer-events-none transform -translate-x-1/2 -translate-y-full",
5208
+ className: "fixed z-50 px-3 py-2 bg-[hsl(var(--popover))] text-white text-xs font-medium rounded shadow-lg pointer-events-none transform -translate-x-1/2 -translate-y-full",
5220
5209
  style: { left: hoverPosition.x, top: hoverPosition.y - 8 },
5221
5210
  children: [
5222
5211
  /* @__PURE__ */ jsx107("div", { className: "whitespace-nowrap", children: hoveredChapter.title }),
5223
- /* @__PURE__ */ jsx107("div", { className: "text-gray-300 text-[10px] mt-0.5", children: formatTime(hoveredChapter.startTime) }),
5224
- /* @__PURE__ */ jsx107("div", { className: "absolute left-1/2 -bottom-1 w-2 h-2 bg-gray-900 dark:bg-gray-800 transform -translate-x-1/2 rotate-45" })
5212
+ /* @__PURE__ */ jsx107("div", { className: "text-[hsl(var(--muted-foreground))] text-[10px] mt-0.5", children: formatTime(hoveredChapter.startTime) }),
5213
+ /* @__PURE__ */ jsx107("div", { className: "absolute left-1/2 -bottom-1 w-2 h-2 bg-[hsl(var(--popover))] transform -translate-x-1/2 rotate-45" })
5225
5214
  ]
5226
5215
  }
5227
5216
  )
@@ -5561,8 +5550,8 @@ var DefaultTooltipContent = ({
5561
5550
  return null;
5562
5551
  }
5563
5552
  const formattedLabel = labelFormatter ? labelFormatter(label ?? "") : String(label ?? "");
5564
- return /* @__PURE__ */ jsxs35("div", { className: "bg-gray-900 dark:bg-gray-800 text-white rounded-lg shadow-xl border border-gray-700 overflow-hidden min-w-[120px]", children: [
5565
- formattedLabel && /* @__PURE__ */ jsx108("div", { className: "px-3 py-2 bg-gray-800 dark:bg-gray-700 border-b border-gray-700 dark:border-gray-600", children: /* @__PURE__ */ jsx108("span", { className: "text-sm font-medium text-gray-200", children: formattedLabel }) }),
5553
+ return /* @__PURE__ */ jsxs35("div", { className: "bg-[hsl(var(--popover))] text-white rounded-lg shadow-xl border border-[hsl(var(--border))] overflow-hidden min-w-[120px]", children: [
5554
+ formattedLabel && /* @__PURE__ */ jsx108("div", { className: "px-3 py-2 bg-[hsl(var(--popover))] border-b border-[hsl(var(--border))]", children: /* @__PURE__ */ jsx108("span", { className: "text-sm font-medium text-[hsl(var(--muted-foreground))]", children: formattedLabel }) }),
5566
5555
  /* @__PURE__ */ jsx108("div", { className: "px-3 py-2 space-y-1", children: payload.map((item, index) => {
5567
5556
  const formattedValue = formatter ? formatter(item.value, item.name, item) : String(item.value);
5568
5557
  return /* @__PURE__ */ jsxs35("div", { className: "flex items-center justify-between gap-4", children: [
@@ -5574,7 +5563,7 @@ var DefaultTooltipContent = ({
5574
5563
  style: { backgroundColor: item.color }
5575
5564
  }
5576
5565
  ),
5577
- /* @__PURE__ */ jsx108("span", { className: "text-xs text-gray-300", children: item.name })
5566
+ /* @__PURE__ */ jsx108("span", { className: "text-xs text-[hsl(var(--muted-foreground))]", children: item.name })
5578
5567
  ] }),
5579
5568
  /* @__PURE__ */ jsx108("span", { className: "text-sm font-semibold text-white", children: formattedValue })
5580
5569
  ] }, `${item.name}-${index}`);
@@ -5783,7 +5772,7 @@ var Legend = ({
5783
5772
  onMouseLeave,
5784
5773
  children: [
5785
5774
  renderIcon(item),
5786
- /* @__PURE__ */ jsx109("span", { className: "text-gray-700 dark:text-gray-300", children: formatter ? formatter(item.name, item, index) : item.name })
5775
+ /* @__PURE__ */ jsx109("span", { className: "text-[hsl(var(--foreground))]", children: formatter ? formatter(item.name, item, index) : item.name })
5787
5776
  ]
5788
5777
  },
5789
5778
  `${item.name}-${index}`
@@ -5927,7 +5916,7 @@ var ReferenceLine = ({
5927
5916
  dominantBaseline,
5928
5917
  fontSize: CHART_DEFAULTS.fontSize.gridLabel,
5929
5918
  fontWeight: "500",
5930
- className: "fill-gray-600 dark:fill-gray-400",
5919
+ className: "fill-[hsl(var(--muted-foreground))]",
5931
5920
  children: label
5932
5921
  }
5933
5922
  ) : /* @__PURE__ */ jsx110(
@@ -6075,7 +6064,7 @@ var ReferenceArea = ({
6075
6064
  dominantBaseline,
6076
6065
  fontSize: CHART_DEFAULTS.fontSize.gridLabel,
6077
6066
  fontWeight: "500",
6078
- className: "fill-gray-600 dark:fill-gray-400",
6067
+ className: "fill-[hsl(var(--muted-foreground))]",
6079
6068
  children: label
6080
6069
  }
6081
6070
  ) : /* @__PURE__ */ jsx111(
@@ -6132,7 +6121,7 @@ var CartesianGrid = ({
6132
6121
  strokeDasharray,
6133
6122
  strokeWidth,
6134
6123
  strokeOpacity,
6135
- className: !stroke ? "stroke-gray-200 dark:stroke-gray-700" : void 0
6124
+ className: !stroke ? "stroke-[hsl(var(--border))]" : void 0
6136
6125
  },
6137
6126
  `h-${i}`
6138
6127
  )),
@@ -6147,7 +6136,7 @@ var CartesianGrid = ({
6147
6136
  strokeDasharray,
6148
6137
  strokeWidth,
6149
6138
  strokeOpacity,
6150
- className: !stroke ? "stroke-gray-200 dark:stroke-gray-700" : void 0
6139
+ className: !stroke ? "stroke-[hsl(var(--border))]" : void 0
6151
6140
  },
6152
6141
  `v-${i}`
6153
6142
  ))
@@ -6402,7 +6391,7 @@ var LineChart = ({
6402
6391
  viewBox: `0 0 ${width} ${height}`,
6403
6392
  role: "img",
6404
6393
  "aria-label": accessibleDescription,
6405
- className: "bg-white dark:bg-gray-900",
6394
+ className: "bg-[hsl(var(--card))]",
6406
6395
  children: [
6407
6396
  /* @__PURE__ */ jsx113("defs", { children: animate && data.map((series, i) => /* @__PURE__ */ jsx113("style", { children: `
6408
6397
  @keyframes drawLine${i} {
@@ -6429,7 +6418,7 @@ var LineChart = ({
6429
6418
  stroke: "currentColor",
6430
6419
  strokeWidth: 1,
6431
6420
  strokeDasharray: "4 4",
6432
- className: "text-gray-400 dark:text-gray-500",
6421
+ className: "text-[hsl(var(--muted-foreground))]",
6433
6422
  pointerEvents: "none"
6434
6423
  }
6435
6424
  ),
@@ -6507,7 +6496,7 @@ var LineChart = ({
6507
6496
  dominantBaseline: "middle",
6508
6497
  fontSize: CHART_DEFAULTS.fontSize.gridLabel,
6509
6498
  fontWeight: "600",
6510
- className: "fill-gray-700 dark:fill-gray-300",
6499
+ className: "fill-[hsl(var(--foreground))]",
6511
6500
  children: yFormatter(lastPoint.y)
6512
6501
  }
6513
6502
  )
@@ -6521,21 +6510,21 @@ var LineChart = ({
6521
6510
  y1: 0,
6522
6511
  x2: chartWidth,
6523
6512
  y2: 0,
6524
- className: "stroke-gray-300 dark:stroke-gray-600",
6513
+ className: "stroke-[hsl(var(--border))]",
6525
6514
  strokeWidth: 1
6526
6515
  }
6527
6516
  ),
6528
6517
  xTicks.map((tick, i) => {
6529
6518
  const x = xValueType === "string" ? xScale(tick.value, tick.index) : xScale(xValueType === "date" ? new Date(tick.value) : tick.value, 0);
6530
6519
  return /* @__PURE__ */ jsxs40("g", { transform: `translate(${x}, 0)`, children: [
6531
- /* @__PURE__ */ jsx113("line", { y2: 6, className: "stroke-gray-300 dark:stroke-gray-600" }),
6520
+ /* @__PURE__ */ jsx113("line", { y2: 6, className: "stroke-[hsl(var(--border))]" }),
6532
6521
  /* @__PURE__ */ jsx113(
6533
6522
  "text",
6534
6523
  {
6535
6524
  y: 20,
6536
6525
  textAnchor: "middle",
6537
6526
  fontSize: CHART_DEFAULTS.fontSize.gridLabel,
6538
- className: "fill-gray-600 dark:fill-gray-400",
6527
+ className: "fill-[hsl(var(--muted-foreground))]",
6539
6528
  children: xFormatter(xValueType === "date" ? new Date(tick.value) : tick.value)
6540
6529
  }
6541
6530
  )
@@ -6549,7 +6538,7 @@ var LineChart = ({
6549
6538
  textAnchor: "middle",
6550
6539
  fontSize: CHART_DEFAULTS.fontSize.axisLabel,
6551
6540
  fontWeight: "500",
6552
- className: "fill-gray-700 dark:fill-gray-300",
6541
+ className: "fill-[hsl(var(--foreground))]",
6553
6542
  children: xAxisLabel
6554
6543
  }
6555
6544
  )
@@ -6562,12 +6551,12 @@ var LineChart = ({
6562
6551
  y1: 0,
6563
6552
  x2: 0,
6564
6553
  y2: chartHeight,
6565
- className: "stroke-gray-300 dark:stroke-gray-600",
6554
+ className: "stroke-[hsl(var(--border))]",
6566
6555
  strokeWidth: 1
6567
6556
  }
6568
6557
  ),
6569
6558
  yTicks.map((tick, i) => /* @__PURE__ */ jsxs40("g", { transform: `translate(0, ${yScale(tick)})`, children: [
6570
- /* @__PURE__ */ jsx113("line", { x2: -6, className: "stroke-gray-300 dark:stroke-gray-600" }),
6559
+ /* @__PURE__ */ jsx113("line", { x2: -6, className: "stroke-[hsl(var(--border))]" }),
6571
6560
  /* @__PURE__ */ jsx113(
6572
6561
  "text",
6573
6562
  {
@@ -6575,7 +6564,7 @@ var LineChart = ({
6575
6564
  textAnchor: "end",
6576
6565
  dominantBaseline: "middle",
6577
6566
  fontSize: CHART_DEFAULTS.fontSize.gridLabel,
6578
- className: "fill-gray-600 dark:fill-gray-400",
6567
+ className: "fill-[hsl(var(--muted-foreground))]",
6579
6568
  children: yFormatter(tick)
6580
6569
  }
6581
6570
  )
@@ -6589,7 +6578,7 @@ var LineChart = ({
6589
6578
  transform: "rotate(-90)",
6590
6579
  fontSize: CHART_DEFAULTS.fontSize.axisLabel,
6591
6580
  fontWeight: "500",
6592
- className: "fill-gray-700 dark:fill-gray-300",
6581
+ className: "fill-[hsl(var(--foreground))]",
6593
6582
  children: yAxisLabel
6594
6583
  }
6595
6584
  )
@@ -6834,7 +6823,7 @@ var BarChart = ({
6834
6823
  dominantBaseline: horizontal ? "middle" : "auto",
6835
6824
  fontSize: CHART_DEFAULTS.fontSize.gridLabel,
6836
6825
  fontWeight: "600",
6837
- className: "fill-gray-700 dark:fill-gray-300",
6826
+ className: "fill-[hsl(var(--foreground))]",
6838
6827
  style: animate ? {
6839
6828
  opacity: 0,
6840
6829
  animation: `fadeIn 200ms ease-out ${animationDuration + barIndex * 50}ms forwards`
@@ -6907,7 +6896,7 @@ var BarChart = ({
6907
6896
  viewBox: `0 0 ${width} ${height}`,
6908
6897
  role: "img",
6909
6898
  "aria-label": accessibleDescription,
6910
- className: "bg-white dark:bg-gray-900",
6899
+ className: "bg-[hsl(var(--card))]",
6911
6900
  children: [
6912
6901
  /* @__PURE__ */ jsx114("defs", { children: /* @__PURE__ */ jsx114("style", { children: `
6913
6902
  @keyframes growY {
@@ -6944,20 +6933,20 @@ var BarChart = ({
6944
6933
  y1: 0,
6945
6934
  x2: chartWidth,
6946
6935
  y2: 0,
6947
- className: "stroke-gray-300 dark:stroke-gray-600"
6936
+ className: "stroke-[hsl(var(--border))]"
6948
6937
  }
6949
6938
  ),
6950
6939
  categories.map((cat, i) => {
6951
6940
  const x = xBandScale.scale(cat) + bandwidth / 2;
6952
6941
  return /* @__PURE__ */ jsxs41("g", { transform: `translate(${x}, 0)`, children: [
6953
- /* @__PURE__ */ jsx114("line", { y2: 6, className: "stroke-gray-300 dark:stroke-gray-600" }),
6942
+ /* @__PURE__ */ jsx114("line", { y2: 6, className: "stroke-[hsl(var(--border))]" }),
6954
6943
  /* @__PURE__ */ jsx114(
6955
6944
  "text",
6956
6945
  {
6957
6946
  y: 20,
6958
6947
  textAnchor: "middle",
6959
6948
  fontSize: CHART_DEFAULTS.fontSize.gridLabel,
6960
- className: "fill-gray-600 dark:fill-gray-400",
6949
+ className: "fill-[hsl(var(--muted-foreground))]",
6961
6950
  children: cat
6962
6951
  }
6963
6952
  )
@@ -6971,7 +6960,7 @@ var BarChart = ({
6971
6960
  textAnchor: "middle",
6972
6961
  fontSize: CHART_DEFAULTS.fontSize.axisLabel,
6973
6962
  fontWeight: "500",
6974
- className: "fill-gray-700 dark:fill-gray-300",
6963
+ className: "fill-[hsl(var(--foreground))]",
6975
6964
  children: xAxisLabel
6976
6965
  }
6977
6966
  )
@@ -6984,11 +6973,11 @@ var BarChart = ({
6984
6973
  y1: 0,
6985
6974
  x2: 0,
6986
6975
  y2: chartHeight,
6987
- className: "stroke-gray-300 dark:stroke-gray-600"
6976
+ className: "stroke-[hsl(var(--border))]"
6988
6977
  }
6989
6978
  ),
6990
6979
  yTicks.map((tick, i) => /* @__PURE__ */ jsxs41("g", { transform: `translate(0, ${yScale(tick)})`, children: [
6991
- /* @__PURE__ */ jsx114("line", { x2: -6, className: "stroke-gray-300 dark:stroke-gray-600" }),
6980
+ /* @__PURE__ */ jsx114("line", { x2: -6, className: "stroke-[hsl(var(--border))]" }),
6992
6981
  /* @__PURE__ */ jsx114(
6993
6982
  "text",
6994
6983
  {
@@ -6996,7 +6985,7 @@ var BarChart = ({
6996
6985
  textAnchor: "end",
6997
6986
  dominantBaseline: "middle",
6998
6987
  fontSize: CHART_DEFAULTS.fontSize.gridLabel,
6999
- className: "fill-gray-600 dark:fill-gray-400",
6988
+ className: "fill-[hsl(var(--muted-foreground))]",
7000
6989
  children: yFormatter(tick)
7001
6990
  }
7002
6991
  )
@@ -7010,7 +6999,7 @@ var BarChart = ({
7010
6999
  transform: "rotate(-90)",
7011
7000
  fontSize: CHART_DEFAULTS.fontSize.axisLabel,
7012
7001
  fontWeight: "500",
7013
- className: "fill-gray-700 dark:fill-gray-300",
7002
+ className: "fill-[hsl(var(--foreground))]",
7014
7003
  children: yAxisLabel
7015
7004
  }
7016
7005
  )
@@ -7285,7 +7274,7 @@ var AreaChart = ({
7285
7274
  viewBox: `0 0 ${width} ${height}`,
7286
7275
  role: "img",
7287
7276
  "aria-label": accessibleDescription,
7288
- className: "bg-white dark:bg-gray-900",
7277
+ className: "bg-[hsl(var(--card))]",
7289
7278
  children: [
7290
7279
  /* @__PURE__ */ jsxs42("defs", { children: [
7291
7280
  data.map((series, i) => {
@@ -7397,20 +7386,20 @@ var AreaChart = ({
7397
7386
  y1: 0,
7398
7387
  x2: chartWidth,
7399
7388
  y2: 0,
7400
- className: "stroke-gray-300 dark:stroke-gray-600"
7389
+ className: "stroke-[hsl(var(--border))]"
7401
7390
  }
7402
7391
  ),
7403
7392
  xTicks.map((tick, i) => {
7404
7393
  const x = xValueType === "string" ? xScale(tick.value, tick.index) : xScale(xValueType === "date" ? new Date(tick.value) : tick.value, 0);
7405
7394
  return /* @__PURE__ */ jsxs42("g", { transform: `translate(${x}, 0)`, children: [
7406
- /* @__PURE__ */ jsx115("line", { y2: 6, className: "stroke-gray-300 dark:stroke-gray-600" }),
7395
+ /* @__PURE__ */ jsx115("line", { y2: 6, className: "stroke-[hsl(var(--border))]" }),
7407
7396
  /* @__PURE__ */ jsx115(
7408
7397
  "text",
7409
7398
  {
7410
7399
  y: 20,
7411
7400
  textAnchor: "middle",
7412
7401
  fontSize: CHART_DEFAULTS.fontSize.gridLabel,
7413
- className: "fill-gray-600 dark:fill-gray-400",
7402
+ className: "fill-[hsl(var(--muted-foreground))]",
7414
7403
  children: xFormatter(xValueType === "date" ? new Date(tick.value) : tick.value)
7415
7404
  }
7416
7405
  )
@@ -7424,7 +7413,7 @@ var AreaChart = ({
7424
7413
  textAnchor: "middle",
7425
7414
  fontSize: CHART_DEFAULTS.fontSize.axisLabel,
7426
7415
  fontWeight: "500",
7427
- className: "fill-gray-700 dark:fill-gray-300",
7416
+ className: "fill-[hsl(var(--foreground))]",
7428
7417
  children: xAxisLabel
7429
7418
  }
7430
7419
  )
@@ -7437,11 +7426,11 @@ var AreaChart = ({
7437
7426
  y1: 0,
7438
7427
  x2: 0,
7439
7428
  y2: chartHeight,
7440
- className: "stroke-gray-300 dark:stroke-gray-600"
7429
+ className: "stroke-[hsl(var(--border))]"
7441
7430
  }
7442
7431
  ),
7443
7432
  yTicks.map((tick, i) => /* @__PURE__ */ jsxs42("g", { transform: `translate(0, ${yScale(tick)})`, children: [
7444
- /* @__PURE__ */ jsx115("line", { x2: -6, className: "stroke-gray-300 dark:stroke-gray-600" }),
7433
+ /* @__PURE__ */ jsx115("line", { x2: -6, className: "stroke-[hsl(var(--border))]" }),
7445
7434
  /* @__PURE__ */ jsx115(
7446
7435
  "text",
7447
7436
  {
@@ -7449,7 +7438,7 @@ var AreaChart = ({
7449
7438
  textAnchor: "end",
7450
7439
  dominantBaseline: "middle",
7451
7440
  fontSize: CHART_DEFAULTS.fontSize.gridLabel,
7452
- className: "fill-gray-600 dark:fill-gray-400",
7441
+ className: "fill-[hsl(var(--muted-foreground))]",
7453
7442
  children: yFormatter(tick)
7454
7443
  }
7455
7444
  )
@@ -7463,7 +7452,7 @@ var AreaChart = ({
7463
7452
  transform: "rotate(-90)",
7464
7453
  fontSize: CHART_DEFAULTS.fontSize.axisLabel,
7465
7454
  fontWeight: "500",
7466
- className: "fill-gray-700 dark:fill-gray-300",
7455
+ className: "fill-[hsl(var(--foreground))]",
7467
7456
  children: yAxisLabel
7468
7457
  }
7469
7458
  )
@@ -7644,7 +7633,7 @@ var PieChart = ({
7644
7633
  viewBox: `0 0 ${width} ${height}`,
7645
7634
  role: "img",
7646
7635
  "aria-label": accessibleDescription,
7647
- className: "bg-white dark:bg-gray-900",
7636
+ className: "bg-[hsl(var(--card))]",
7648
7637
  children: [
7649
7638
  /* @__PURE__ */ jsx116("defs", { children: /* @__PURE__ */ jsx116("style", { children: `
7650
7639
  @keyframes rotateIn {
@@ -7714,7 +7703,7 @@ var PieChart = ({
7714
7703
  dominantBaseline: "middle",
7715
7704
  fontSize: CHART_DEFAULTS.fontSize.title,
7716
7705
  fontWeight: "700",
7717
- className: "fill-gray-900 dark:fill-gray-100",
7706
+ className: "fill-[hsl(var(--foreground))]",
7718
7707
  children: typeof centerValue === "number" ? formatNumber(centerValue) : centerValue
7719
7708
  }
7720
7709
  ),
@@ -7726,7 +7715,7 @@ var PieChart = ({
7726
7715
  textAnchor: "middle",
7727
7716
  dominantBaseline: "middle",
7728
7717
  fontSize: CHART_DEFAULTS.fontSize.gridLabel,
7729
- className: "fill-gray-500 dark:fill-gray-400",
7718
+ className: "fill-[hsl(var(--muted-foreground))]",
7730
7719
  children: centerLabel
7731
7720
  }
7732
7721
  ) : /* @__PURE__ */ jsx116(
@@ -8042,7 +8031,7 @@ var ScatterChart = ({
8042
8031
  viewBox: `0 0 ${width} ${height}`,
8043
8032
  role: "img",
8044
8033
  "aria-label": accessibleDescription,
8045
- className: "bg-white dark:bg-gray-900",
8034
+ className: "bg-[hsl(var(--card))]",
8046
8035
  children: [
8047
8036
  /* @__PURE__ */ jsx117("defs", { children: /* @__PURE__ */ jsx117("style", { children: `
8048
8037
  @keyframes popIn {
@@ -8119,18 +8108,18 @@ var ScatterChart = ({
8119
8108
  y1: 0,
8120
8109
  x2: chartWidth,
8121
8110
  y2: 0,
8122
- className: "stroke-gray-300 dark:stroke-gray-600"
8111
+ className: "stroke-[hsl(var(--border))]"
8123
8112
  }
8124
8113
  ),
8125
8114
  xTicks.map((tick, i) => /* @__PURE__ */ jsxs44("g", { transform: `translate(${xScale(tick)}, 0)`, children: [
8126
- /* @__PURE__ */ jsx117("line", { y2: 6, className: "stroke-gray-300 dark:stroke-gray-600" }),
8115
+ /* @__PURE__ */ jsx117("line", { y2: 6, className: "stroke-[hsl(var(--border))]" }),
8127
8116
  /* @__PURE__ */ jsx117(
8128
8117
  "text",
8129
8118
  {
8130
8119
  y: 20,
8131
8120
  textAnchor: "middle",
8132
8121
  fontSize: CHART_DEFAULTS.fontSize.gridLabel,
8133
- className: "fill-gray-600 dark:fill-gray-400",
8122
+ className: "fill-[hsl(var(--muted-foreground))]",
8134
8123
  children: xFormatter(tick)
8135
8124
  }
8136
8125
  )
@@ -8143,7 +8132,7 @@ var ScatterChart = ({
8143
8132
  textAnchor: "middle",
8144
8133
  fontSize: CHART_DEFAULTS.fontSize.axisLabel,
8145
8134
  fontWeight: "500",
8146
- className: "fill-gray-700 dark:fill-gray-300",
8135
+ className: "fill-[hsl(var(--foreground))]",
8147
8136
  children: xAxisLabel
8148
8137
  }
8149
8138
  )
@@ -8156,11 +8145,11 @@ var ScatterChart = ({
8156
8145
  y1: 0,
8157
8146
  x2: 0,
8158
8147
  y2: chartHeight,
8159
- className: "stroke-gray-300 dark:stroke-gray-600"
8148
+ className: "stroke-[hsl(var(--border))]"
8160
8149
  }
8161
8150
  ),
8162
8151
  yTicks.map((tick, i) => /* @__PURE__ */ jsxs44("g", { transform: `translate(0, ${yScale(tick)})`, children: [
8163
- /* @__PURE__ */ jsx117("line", { x2: -6, className: "stroke-gray-300 dark:stroke-gray-600" }),
8152
+ /* @__PURE__ */ jsx117("line", { x2: -6, className: "stroke-[hsl(var(--border))]" }),
8164
8153
  /* @__PURE__ */ jsx117(
8165
8154
  "text",
8166
8155
  {
@@ -8168,7 +8157,7 @@ var ScatterChart = ({
8168
8157
  textAnchor: "end",
8169
8158
  dominantBaseline: "middle",
8170
8159
  fontSize: CHART_DEFAULTS.fontSize.gridLabel,
8171
- className: "fill-gray-600 dark:fill-gray-400",
8160
+ className: "fill-[hsl(var(--muted-foreground))]",
8172
8161
  children: yFormatter(tick)
8173
8162
  }
8174
8163
  )
@@ -8182,7 +8171,7 @@ var ScatterChart = ({
8182
8171
  transform: "rotate(-90)",
8183
8172
  fontSize: CHART_DEFAULTS.fontSize.axisLabel,
8184
8173
  fontWeight: "500",
8185
- className: "fill-gray-700 dark:fill-gray-300",
8174
+ className: "fill-[hsl(var(--foreground))]",
8186
8175
  children: yAxisLabel
8187
8176
  }
8188
8177
  )
@@ -8433,7 +8422,7 @@ var Heatmap = ({
8433
8422
  x: labelWidth + i * (cellSize + cellGap) + cellSize / 2,
8434
8423
  y: labelHeight - 8,
8435
8424
  textAnchor: "middle",
8436
- className: "text-xs fill-gray-600 dark:fill-gray-400",
8425
+ className: "text-xs fill-[hsl(var(--muted-foreground))]",
8437
8426
  style: { fontSize: "11px" },
8438
8427
  children: label
8439
8428
  },
@@ -8445,7 +8434,7 @@ var Heatmap = ({
8445
8434
  x: labelWidth - 8,
8446
8435
  y: labelHeight + j * (cellSize + cellGap) + cellSize / 2 + 4,
8447
8436
  textAnchor: "end",
8448
- className: "text-xs fill-gray-600 dark:fill-gray-400",
8437
+ className: "text-xs fill-[hsl(var(--muted-foreground))]",
8449
8438
  style: { fontSize: "11px" },
8450
8439
  children: label
8451
8440
  },
@@ -8501,7 +8490,7 @@ var Heatmap = ({
8501
8490
  showTooltip && hoveredCell && /* @__PURE__ */ jsxs45(
8502
8491
  "div",
8503
8492
  {
8504
- className: "absolute z-50 px-3 py-2 text-sm bg-gray-900 dark:bg-gray-100 text-white dark:text-gray-900 rounded-lg shadow-lg pointer-events-none whitespace-nowrap",
8493
+ className: "absolute z-50 px-3 py-2 text-sm bg-[hsl(var(--popover))] text-[hsl(var(--popover-foreground))] border border-[hsl(var(--border))] rounded-lg shadow-lg pointer-events-none whitespace-nowrap",
8505
8494
  style: {
8506
8495
  left: labelWidth + hoveredCell.x * (cellSize + cellGap) + cellSize / 2,
8507
8496
  top: labelHeight + hoveredCell.y * (cellSize + cellGap) - 8,
@@ -8512,7 +8501,7 @@ var Heatmap = ({
8512
8501
  /* @__PURE__ */ jsx119(
8513
8502
  "div",
8514
8503
  {
8515
- className: "absolute w-2 h-2 bg-gray-900 dark:bg-gray-100 rotate-45",
8504
+ className: "absolute w-2 h-2 bg-[hsl(var(--popover))] rotate-45",
8516
8505
  style: {
8517
8506
  left: "50%",
8518
8507
  bottom: "-4px",
@@ -8618,7 +8607,7 @@ var CalendarHeatmap = ({
8618
8607
  {
8619
8608
  x: dayLabelWidth + weekIndex * (cellSize + cellGap),
8620
8609
  y: 12,
8621
- className: "text-xs fill-gray-600 dark:fill-gray-400",
8610
+ className: "text-xs fill-[hsl(var(--muted-foreground))]",
8622
8611
  style: { fontSize: "10px" },
8623
8612
  children: label
8624
8613
  },
@@ -8630,7 +8619,7 @@ var CalendarHeatmap = ({
8630
8619
  x: dayLabelWidth - 6,
8631
8620
  y: monthLabelHeight + dayIndex * (cellSize + cellGap) + cellSize / 2 + 3,
8632
8621
  textAnchor: "end",
8633
- className: "text-xs fill-gray-600 dark:fill-gray-400",
8622
+ className: "text-xs fill-[hsl(var(--muted-foreground))]",
8634
8623
  style: { fontSize: "9px" },
8635
8624
  children: DAY_LABELS[dayIndex]
8636
8625
  },
@@ -8670,7 +8659,7 @@ var CalendarHeatmap = ({
8670
8659
  hoveredCell && /* @__PURE__ */ jsxs45(
8671
8660
  "div",
8672
8661
  {
8673
- className: "absolute z-50 px-3 py-2 text-sm bg-gray-900 dark:bg-gray-100 text-white dark:text-gray-900 rounded-lg shadow-lg pointer-events-none whitespace-nowrap",
8662
+ className: "absolute z-50 px-3 py-2 text-sm bg-[hsl(var(--popover))] text-[hsl(var(--popover-foreground))] border border-[hsl(var(--border))] rounded-lg shadow-lg pointer-events-none whitespace-nowrap",
8674
8663
  style: {
8675
8664
  left: dayLabelWidth + hoveredCell.weekIndex * (cellSize + cellGap) + cellSize / 2,
8676
8665
  top: monthLabelHeight + hoveredCell.dayIndex * (cellSize + cellGap) - 8,
@@ -8681,7 +8670,7 @@ var CalendarHeatmap = ({
8681
8670
  /* @__PURE__ */ jsx119(
8682
8671
  "div",
8683
8672
  {
8684
- className: "absolute w-2 h-2 bg-gray-900 dark:bg-gray-100 rotate-45",
8673
+ className: "absolute w-2 h-2 bg-[hsl(var(--popover))] rotate-45",
8685
8674
  style: {
8686
8675
  left: "50%",
8687
8676
  bottom: "-4px",