@datatechsolutions/ui 2.7.127 → 2.7.128

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.
@@ -9959,7 +9959,7 @@ var Textarea = React11__namespace.forwardRef(({ className, ...props }, ref) => {
9959
9959
  "textarea",
9960
9960
  {
9961
9961
  className: clsx__default.default(
9962
- "flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",
9962
+ "flex min-h-[80px] w-full rounded-xl liquid-surface border border-white/50 dark:border-white/10 px-3 py-2.5 text-sm text-slate-900 dark:text-white outline-none placeholder:text-slate-400 dark:placeholder:text-slate-500 focus-visible:ring-2 focus-visible:ring-indigo-500 focus-visible:ring-offset-0 disabled:cursor-not-allowed disabled:opacity-50",
9963
9963
  className
9964
9964
  ),
9965
9965
  ref,
@@ -12577,51 +12577,96 @@ var Link4 = React11.forwardRef(function Link5(props, ref) {
12577
12577
  });
12578
12578
  var styles2 = {
12579
12579
  base: [
12580
- "relative inline-flex items-center justify-center gap-x-2 rounded-lg border text-sm font-semibold",
12581
- "px-3.5 py-2.5 transition-colors",
12582
- "focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 dark:focus:ring-indigo-400 dark:focus:ring-offset-zinc-900",
12580
+ "relative inline-flex items-center justify-center gap-x-2 rounded-xl text-sm font-semibold",
12581
+ "px-3.5 py-2.5 transition-all duration-200",
12582
+ "focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 dark:focus:ring-indigo-400 dark:focus:ring-offset-slate-900",
12583
12583
  "disabled:opacity-50 disabled:pointer-events-none",
12584
12584
  "[&>svg]:size-4 [&>svg]:shrink-0"
12585
12585
  ],
12586
- solid: ["border-transparent shadow-sm"],
12586
+ solid: ["liquid-button-primary rounded-xl"],
12587
12587
  outline: [
12588
- "border-zinc-300 bg-transparent hover:bg-zinc-50 text-zinc-900",
12589
- "dark:border-zinc-600 dark:hover:bg-zinc-800 dark:text-zinc-100"
12588
+ "liquid-button rounded-xl"
12590
12589
  ],
12591
12590
  plain: [
12592
- "border-transparent text-zinc-700 hover:bg-zinc-100",
12593
- "dark:text-zinc-300 dark:hover:bg-zinc-800"
12591
+ "border-transparent text-slate-700 hover:bg-white/30 dark:hover:bg-white/[0.08]",
12592
+ "dark:text-slate-300"
12594
12593
  ],
12595
12594
  colors: {
12596
- "dark/zinc": ["bg-zinc-900 text-white hover:bg-zinc-800"],
12595
+ "dark/zinc": [
12596
+ "bg-slate-900/80 text-white backdrop-blur-xl border border-white/10 hover:bg-slate-800/80"
12597
+ ],
12597
12598
  light: [
12598
- "bg-white text-zinc-900 hover:bg-zinc-50 dark:bg-zinc-800 dark:text-white dark:hover:bg-zinc-700"
12599
+ "bg-white/60 text-slate-900 backdrop-blur-xl border border-white/30 hover:bg-white/80 dark:bg-white/10 dark:text-white dark:border-white/20 dark:hover:bg-white/20"
12599
12600
  ],
12600
12601
  "dark/white": [
12601
- "bg-zinc-900 text-white hover:bg-zinc-800 dark:bg-white dark:text-zinc-900 dark:hover:bg-zinc-100"
12602
+ "bg-slate-900/80 text-white backdrop-blur-xl border border-white/10 hover:bg-slate-800/80 dark:bg-white/90 dark:text-slate-900 dark:border-white/30 dark:hover:bg-white/80"
12603
+ ],
12604
+ dark: [
12605
+ "bg-slate-900/80 text-white backdrop-blur-xl border border-white/10 hover:bg-slate-800/80"
12606
+ ],
12607
+ white: [
12608
+ "bg-white/60 text-slate-900 backdrop-blur-xl border border-white/30 hover:bg-white/80"
12609
+ ],
12610
+ zinc: [
12611
+ "bg-slate-600/80 text-white backdrop-blur-xl border border-white/10 hover:bg-slate-700/80"
12612
+ ],
12613
+ indigo: [
12614
+ "bg-indigo-500/80 text-white backdrop-blur-xl border border-indigo-400/30 hover:bg-indigo-600/80"
12615
+ ],
12616
+ cyan: [
12617
+ "bg-cyan-300/80 text-cyan-950 backdrop-blur-xl border border-cyan-200/30 hover:bg-cyan-400/80"
12618
+ ],
12619
+ red: [
12620
+ "bg-red-600/80 text-white backdrop-blur-xl border border-red-500/30 hover:bg-red-700/80"
12621
+ ],
12622
+ orange: [
12623
+ "bg-orange-500/80 text-white backdrop-blur-xl border border-orange-400/30 hover:bg-orange-600/80"
12624
+ ],
12625
+ amber: [
12626
+ "bg-amber-400/80 text-amber-950 backdrop-blur-xl border border-amber-300/30 hover:bg-amber-500/80"
12627
+ ],
12628
+ yellow: [
12629
+ "bg-yellow-300/80 text-yellow-950 backdrop-blur-xl border border-yellow-200/30 hover:bg-yellow-400/80"
12630
+ ],
12631
+ lime: [
12632
+ "bg-lime-300/80 text-lime-950 backdrop-blur-xl border border-lime-200/30 hover:bg-lime-400/80"
12633
+ ],
12634
+ green: [
12635
+ "bg-green-600/80 text-white backdrop-blur-xl border border-green-500/30 hover:bg-green-700/80"
12636
+ ],
12637
+ emerald: [
12638
+ "bg-emerald-600/80 text-white backdrop-blur-xl border border-emerald-500/30 hover:bg-emerald-700/80"
12639
+ ],
12640
+ teal: [
12641
+ "bg-teal-600/80 text-white backdrop-blur-xl border border-teal-500/30 hover:bg-teal-700/80"
12642
+ ],
12643
+ sky: [
12644
+ "bg-sky-500/80 text-white backdrop-blur-xl border border-sky-400/30 hover:bg-sky-600/80"
12645
+ ],
12646
+ blue: [
12647
+ "bg-blue-600/80 text-white backdrop-blur-xl border border-blue-500/30 hover:bg-blue-700/80"
12648
+ ],
12649
+ brand: [
12650
+ "bg-brand-600/80 text-white backdrop-blur-xl border border-brand-500/30 hover:bg-brand-700/80"
12651
+ ],
12652
+ accent: [
12653
+ "bg-accent/80 text-accent-foreground backdrop-blur-xl border border-accent/30 hover:bg-accent/70"
12654
+ ],
12655
+ violet: [
12656
+ "bg-violet-500/80 text-white backdrop-blur-xl border border-violet-400/30 hover:bg-violet-600/80"
12602
12657
  ],
12603
- dark: ["bg-zinc-900 text-white hover:bg-zinc-800"],
12604
- white: ["bg-white text-zinc-900 hover:bg-zinc-50"],
12605
- zinc: ["bg-zinc-600 text-white hover:bg-zinc-700"],
12606
- indigo: ["bg-indigo-500 text-white hover:bg-indigo-600"],
12607
- cyan: ["bg-cyan-300 text-cyan-950 hover:bg-cyan-400"],
12608
- red: ["bg-red-600 text-white hover:bg-red-700"],
12609
- orange: ["bg-orange-500 text-white hover:bg-orange-600"],
12610
- amber: ["bg-amber-400 text-amber-950 hover:bg-amber-500"],
12611
- yellow: ["bg-yellow-300 text-yellow-950 hover:bg-yellow-400"],
12612
- lime: ["bg-lime-300 text-lime-950 hover:bg-lime-400"],
12613
- green: ["bg-green-600 text-white hover:bg-green-700"],
12614
- emerald: ["bg-emerald-600 text-white hover:bg-emerald-700"],
12615
- teal: ["bg-teal-600 text-white hover:bg-teal-700"],
12616
- sky: ["bg-sky-500 text-white hover:bg-sky-600"],
12617
- blue: ["bg-blue-600 text-white hover:bg-blue-700"],
12618
- brand: ["bg-brand-600 text-white hover:bg-brand-700"],
12619
- accent: ["bg-accent text-accent-foreground hover:bg-accent/90"],
12620
- violet: ["bg-violet-500 text-white hover:bg-violet-600"],
12621
- purple: ["bg-purple-500 text-white hover:bg-purple-600"],
12622
- fuchsia: ["bg-fuchsia-500 text-white hover:bg-fuchsia-600"],
12623
- pink: ["bg-pink-500 text-white hover:bg-pink-600"],
12624
- rose: ["bg-rose-500 text-white hover:bg-rose-600"]
12658
+ purple: [
12659
+ "bg-purple-500/80 text-white backdrop-blur-xl border border-purple-400/30 hover:bg-purple-600/80"
12660
+ ],
12661
+ fuchsia: [
12662
+ "bg-fuchsia-500/80 text-white backdrop-blur-xl border border-fuchsia-400/30 hover:bg-fuchsia-600/80"
12663
+ ],
12664
+ pink: [
12665
+ "bg-pink-500/80 text-white backdrop-blur-xl border border-pink-400/30 hover:bg-pink-600/80"
12666
+ ],
12667
+ rose: [
12668
+ "bg-rose-500/80 text-white backdrop-blur-xl border border-rose-400/30 hover:bg-rose-600/80"
12669
+ ]
12625
12670
  }
12626
12671
  };
12627
12672
  var Button6 = React11.forwardRef(function Button7({
@@ -12709,14 +12754,14 @@ function InputGroup({
12709
12754
  "has-[[data-slot=icon]:first-child]:[&_input]:pl-10 has-[[data-slot=icon]:last-child]:[&_input]:pr-10 sm:has-[[data-slot=icon]:first-child]:[&_input]:pl-8 sm:has-[[data-slot=icon]:last-child]:[&_input]:pr-8",
12710
12755
  "*:data-[slot=icon]:pointer-events-none *:data-[slot=icon]:absolute *:data-[slot=icon]:top-3 *:data-[slot=icon]:z-10 *:data-[slot=icon]:size-5 sm:*:data-[slot=icon]:top-2.5 sm:*:data-[slot=icon]:size-4",
12711
12756
  "[&>[data-slot=icon]:first-child]:left-3 sm:[&>[data-slot=icon]:first-child]:left-2.5 [&>[data-slot=icon]:last-child]:right-3 sm:[&>[data-slot=icon]:last-child]:right-2.5",
12712
- "*:data-[slot=icon]:text-zinc-500"
12757
+ "*:data-[slot=icon]:text-slate-500"
12713
12758
  ),
12714
12759
  children
12715
12760
  }
12716
12761
  );
12717
12762
  }
12718
12763
  var dateTypes = ["date", "datetime-local", "month", "time", "week"];
12719
- var Input3 = React11.forwardRef(function Input4({
12764
+ React11.forwardRef(function Input4({
12720
12765
  className,
12721
12766
  "aria-label": ariaLabel,
12722
12767
  "aria-describedby": ariaDescribedBy,
@@ -12735,7 +12780,7 @@ var Input3 = React11.forwardRef(function Input4({
12735
12780
  // Basic layout
12736
12781
  "relative block w-full",
12737
12782
  // Focus ring
12738
- "after:pointer-events-none after:absolute after:inset-0 after:rounded-lg after:ring-transparent after:ring-inset sm:focus-within:after:ring-2 sm:focus-within:after:ring-blue-500",
12783
+ "after:pointer-events-none after:absolute after:inset-0 after:rounded-xl after:ring-transparent after:ring-inset sm:focus-within:after:ring-2 sm:focus-within:after:ring-indigo-500",
12739
12784
  // Disabled state
12740
12785
  "has-data-disabled:opacity-50"
12741
12786
  ]),
@@ -12771,19 +12816,19 @@ var Input3 = React11.forwardRef(function Input4({
12771
12816
  "[&::-webkit-datetime-edit-meridiem-field]:p-0"
12772
12817
  ],
12773
12818
  // Basic layout
12774
- "relative block w-full appearance-none rounded-lg px-3.5 py-2.5 sm:px-3 sm:py-1.5",
12819
+ "relative block w-full appearance-none rounded-xl px-3 py-2.5",
12775
12820
  // Typography
12776
- "text-base/6 text-zinc-950 dark:text-zinc-100 placeholder:text-zinc-500 dark:placeholder:text-zinc-400 sm:text-sm/6",
12821
+ "text-sm text-slate-900 dark:text-white placeholder:text-slate-400 dark:placeholder:text-slate-500",
12777
12822
  // Border
12778
- "border border-zinc-950/10 data-hover:border-zinc-950/20 dark:border-white/10 dark:data-hover:border-white/20",
12779
- // Background color
12780
- "bg-transparent dark:bg-white/5",
12823
+ "border border-white/50 data-hover:border-white/70 dark:border-white/10 dark:data-hover:border-white/20",
12824
+ // Background color — glass surface
12825
+ "liquid-surface",
12781
12826
  // Hide default focus styles
12782
12827
  "focus:outline-none",
12783
12828
  // Invalid state
12784
12829
  "data-invalid:border-red-500 data-invalid:data-hover:border-red-500 dark:data-invalid:border-red-500 dark:data-invalid:data-hover:border-red-500",
12785
12830
  // Disabled state
12786
- "data-disabled:border-zinc-950/20 dark:data-disabled:border-white/15 dark:data-disabled:bg-white/2.5 dark:data-hover:data-disabled:border-white/15",
12831
+ "data-disabled:border-white/30 dark:data-disabled:border-white/15 dark:data-disabled:bg-white/2.5 dark:data-hover:data-disabled:border-white/15",
12787
12832
  // System icons
12788
12833
  "dark:scheme-dark",
12789
12834
  // Autofill override styles
@@ -12791,10 +12836,10 @@ var Input3 = React11.forwardRef(function Input4({
12791
12836
  "[&:-webkit-autofill:hover]:!shadow-[inset_0_0_0_1000px_white] [&:-webkit-autofill:hover]:!text-black",
12792
12837
  "[&:-webkit-autofill:focus]:!shadow-[inset_0_0_0_1000px_white] [&:-webkit-autofill:focus]:!text-black",
12793
12838
  "[&:-webkit-autofill:active]:!shadow-[inset_0_0_0_1000px_white] [&:-webkit-autofill:active]:!text-black",
12794
- "dark:[&:-webkit-autofill]:!shadow-[inset_0_0_0_1000px_rgb(24,24,27)] dark:[&:-webkit-autofill]:!text-zinc-200",
12795
- "dark:[&:-webkit-autofill:hover]:!shadow-[inset_0_0_0_1000px_rgb(24,24,27)] dark:[&:-webkit-autofill:hover]:!text-zinc-200",
12796
- "dark:[&:-webkit-autofill:focus]:!shadow-[inset_0_0_0_1000px_rgb(24,24,27)] dark:[&:-webkit-autofill:focus]:!text-zinc-200",
12797
- "dark:[&:-webkit-autofill:active]:!shadow-[inset_0_0_0_1000px_rgb(24,24,27)] dark:[&:-webkit-autofill:active]:!text-zinc-200"
12839
+ "dark:[&:-webkit-autofill]:!shadow-[inset_0_0_0_1000px_rgb(15,23,42)] dark:[&:-webkit-autofill]:!text-slate-200",
12840
+ "dark:[&:-webkit-autofill:hover]:!shadow-[inset_0_0_0_1000px_rgb(15,23,42)] dark:[&:-webkit-autofill:hover]:!text-slate-200",
12841
+ "dark:[&:-webkit-autofill:focus]:!shadow-[inset_0_0_0_1000px_rgb(15,23,42)] dark:[&:-webkit-autofill:focus]:!text-slate-200",
12842
+ "dark:[&:-webkit-autofill:active]:!shadow-[inset_0_0_0_1000px_rgb(15,23,42)] dark:[&:-webkit-autofill:active]:!text-slate-200"
12798
12843
  ])
12799
12844
  }
12800
12845
  )
@@ -12901,7 +12946,7 @@ var Label3 = React11__namespace.default.forwardRef(
12901
12946
  "label",
12902
12947
  {
12903
12948
  ref,
12904
- className: `block text-sm font-medium text-gray-700 ${className}`,
12949
+ className: `block text-sm font-medium text-slate-800 dark:text-slate-200 ${className}`,
12905
12950
  ...props,
12906
12951
  children: [
12907
12952
  children,
@@ -13309,12 +13354,12 @@ var Card2 = React11.memo(function Card3({
13309
13354
  lg: "p-6 sm:p-8"
13310
13355
  };
13311
13356
  const variantClasses2 = {
13312
- default: "bg-white dark:bg-zinc-800 border border-zinc-200 dark:border-zinc-700 shadow-sm",
13313
- elevated: "bg-white dark:bg-zinc-800 border border-zinc-200 dark:border-zinc-700 shadow-md",
13314
- outlined: "bg-transparent border-2 border-zinc-300 dark:border-zinc-600",
13315
- flat: "bg-zinc-50 dark:bg-zinc-800/50"
13357
+ default: "liquid-surface border border-white/30 dark:border-white/10",
13358
+ elevated: "liquid-surface-strong border border-white/30 dark:border-white/10",
13359
+ outlined: "bg-transparent border-2 border-white/30 dark:border-white/10 backdrop-blur-sm",
13360
+ flat: "liquid-surface"
13316
13361
  };
13317
- const hoverClasses = hover || onClick ? "hover:shadow-lg transition-shadow duration-200" : "";
13362
+ const hoverClasses = hover || onClick ? "hover:shadow-md transition-shadow duration-200" : "";
13318
13363
  const clickableClasses = onClick ? "cursor-pointer" : "";
13319
13364
  const loadingClasses = loading ? "opacity-75 pointer-events-none" : "";
13320
13365
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -13323,7 +13368,7 @@ var Card2 = React11.memo(function Card3({
13323
13368
  role: onClick ? "button" : void 0,
13324
13369
  tabIndex: onClick ? 0 : void 0,
13325
13370
  className: clsx__default.default(
13326
- "rounded-lg",
13371
+ "rounded-2xl",
13327
13372
  variantClasses2[variant],
13328
13373
  paddingClasses[padding],
13329
13374
  hoverClasses,
@@ -13352,8 +13397,8 @@ var CardHeader2 = React11.memo(function CardHeader3({
13352
13397
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx__default.default("mb-4", className), children: [
13353
13398
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col sm:flex-row sm:items-center sm:justify-between gap-2", children: [
13354
13399
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1", children: [
13355
- /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-lg font-semibold text-zinc-900 dark:text-zinc-100 truncate", children: title }),
13356
- subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-sm text-zinc-600 dark:text-zinc-400 line-clamp-2", children: subtitle })
13400
+ /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-lg font-semibold text-slate-900 dark:text-slate-100 truncate", children: title }),
13401
+ subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-sm text-slate-600 dark:text-slate-400 line-clamp-2", children: subtitle })
13357
13402
  ] }),
13358
13403
  actions && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-shrink-0 flex items-center gap-2", children: actions })
13359
13404
  ] }),
@@ -13368,7 +13413,7 @@ var CardTitle2 = React11.memo(function CardTitle3({
13368
13413
  "h3",
13369
13414
  {
13370
13415
  className: clsx__default.default(
13371
- "text-lg font-semibold text-zinc-900 dark:text-zinc-100",
13416
+ "text-lg font-semibold text-slate-900 dark:text-slate-100",
13372
13417
  className
13373
13418
  ),
13374
13419
  children
@@ -13379,13 +13424,13 @@ var CardDescription2 = React11.memo(function CardDescription3({
13379
13424
  children,
13380
13425
  className
13381
13426
  }) {
13382
- return /* @__PURE__ */ jsxRuntime.jsx("p", { className: clsx__default.default("text-sm text-zinc-600 dark:text-zinc-400", className), children });
13427
+ return /* @__PURE__ */ jsxRuntime.jsx("p", { className: clsx__default.default("text-sm text-slate-600 dark:text-slate-400", className), children });
13383
13428
  });
13384
13429
  var CardContent2 = React11.memo(function CardContent3({
13385
13430
  children,
13386
13431
  className
13387
13432
  }) {
13388
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx__default.default("text-zinc-600 dark:text-zinc-400", className), children });
13433
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx__default.default("text-slate-600 dark:text-slate-400", className), children });
13389
13434
  });
13390
13435
  var CardFooter2 = React11.memo(function CardFooter3({
13391
13436
  children,
@@ -13402,7 +13447,7 @@ var CardFooter2 = React11.memo(function CardFooter3({
13402
13447
  "div",
13403
13448
  {
13404
13449
  className: clsx__default.default(
13405
- "mt-4 pt-4 border-t border-zinc-200 dark:border-zinc-700 flex items-center gap-2",
13450
+ "mt-4 pt-4 border-t border-white/30 dark:border-white/10 flex items-center gap-2",
13406
13451
  justifyClasses[justify],
13407
13452
  className
13408
13453
  ),
@@ -13422,14 +13467,14 @@ var StatCard2 = React11.memo(function StatCard3({
13422
13467
  const trendColors = {
13423
13468
  up: "text-green-600 dark:text-green-400",
13424
13469
  down: "text-red-600 dark:text-red-400",
13425
- neutral: "text-zinc-600 dark:text-zinc-400"
13470
+ neutral: "text-slate-600 dark:text-slate-400"
13426
13471
  };
13427
13472
  return /* @__PURE__ */ jsxRuntime.jsx(Card2, { variant: "elevated", hover: true, className, loading, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start", children: [
13428
- icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-shrink-0 mr-4", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-12 h-12 rounded-lg bg-zinc-100 dark:bg-zinc-700 flex items-center justify-center", children: icon }) }),
13473
+ icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-shrink-0 mr-4", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-12 h-12 rounded-lg bg-white/20 dark:bg-white/[0.08] flex items-center justify-center", children: icon }) }),
13429
13474
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-1 min-w-0", children: [
13430
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm font-medium text-zinc-600 dark:text-zinc-400 truncate", children: title }),
13475
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm font-medium text-slate-600 dark:text-slate-400 truncate", children: title }),
13431
13476
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-1 flex items-baseline", children: [
13432
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-2xl font-bold text-zinc-900 dark:text-zinc-100", children: loading ? "..." : value }),
13477
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-2xl font-bold text-slate-900 dark:text-slate-100", children: loading ? "..." : value }),
13433
13478
  trend && !loading && /* @__PURE__ */ jsxRuntime.jsxs(
13434
13479
  "div",
13435
13480
  {
@@ -13447,8 +13492,8 @@ var StatCard2 = React11.memo(function StatCard3({
13447
13492
  }
13448
13493
  )
13449
13494
  ] }),
13450
- subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-sm text-zinc-600 dark:text-zinc-400", children: subtitle }),
13451
- trend && !loading && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-xs text-zinc-500 dark:text-zinc-500", children: trend.label })
13495
+ subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-sm text-slate-600 dark:text-slate-400", children: subtitle }),
13496
+ trend && !loading && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-xs text-slate-500 dark:text-slate-500", children: trend.label })
13452
13497
  ] })
13453
13498
  ] }) });
13454
13499
  });
@@ -13488,14 +13533,14 @@ function RequirementCheck({
13488
13533
  /* @__PURE__ */ jsxRuntime.jsx(
13489
13534
  "span",
13490
13535
  {
13491
- className: `flex-shrink-0 w-3.5 h-3.5 rounded-full flex items-center justify-center text-[10px] font-bold ${met ? "bg-emerald-500 text-white" : "bg-zinc-200 dark:bg-zinc-700 text-zinc-400 dark:text-zinc-500"}`,
13536
+ className: `flex-shrink-0 w-3.5 h-3.5 rounded-full flex items-center justify-center text-[10px] font-bold ${met ? "bg-emerald-500 text-white" : "bg-slate-200 dark:bg-slate-700 text-slate-400 dark:text-slate-500"}`,
13492
13537
  children: met ? "\u2713" : ""
13493
13538
  }
13494
13539
  ),
13495
13540
  /* @__PURE__ */ jsxRuntime.jsx(
13496
13541
  "span",
13497
13542
  {
13498
- className: met ? "text-emerald-600 dark:text-emerald-400" : "text-zinc-500 dark:text-zinc-400",
13543
+ className: met ? "text-emerald-600 dark:text-emerald-400" : "text-slate-500 dark:text-slate-400",
13499
13544
  children: label
13500
13545
  }
13501
13546
  )
@@ -13533,9 +13578,9 @@ var PasswordInput2 = React11.forwardRef(
13533
13578
  medium: "w-2/3",
13534
13579
  strong: "w-full"
13535
13580
  }[strengthLevel];
13536
- const baseInputClasses = variant === "apple" ? "w-full px-4 py-3 pr-12 text-[17px] bg-white dark:bg-zinc-800 border border-[#d2d2d7] dark:border-zinc-700 text-[#1d1d1f] dark:text-white placeholder-[#86868b] dark:placeholder-zinc-500 rounded-xl focus:outline-none focus:ring-2 focus:ring-[#0071e3] transition-all" : "w-full px-4 py-3.5 pr-12 text-base rounded-xl border transition-all duration-300 text-zinc-900 dark:text-white placeholder-zinc-500 dark:placeholder-zinc-500 focus:outline-none focus:ring-2 focus:border-transparent";
13537
- const buttonClasses = variant === "apple" ? "absolute top-1/2 -translate-y-1/2 right-3 p-1.5 hover:bg-[#f5f5f7] dark:hover:bg-zinc-700 rounded-lg transition-colors" : "absolute top-1/2 -translate-y-1/2 right-3 p-2 hover:bg-zinc-200/50 dark:hover:bg-zinc-700/50 rounded-lg transition-all duration-200";
13538
- const iconClasses = variant === "apple" ? "h-5 w-5 text-[#86868b] dark:text-zinc-400" : "h-5 w-5 text-zinc-500 hover:text-zinc-700 dark:text-zinc-400 dark:hover:text-zinc-200";
13581
+ const baseInputClasses = variant === "apple" ? "w-full px-4 py-3 pr-12 text-[17px] bg-white/60 dark:bg-white/10 backdrop-blur-xl border border-white/30 dark:border-white/20 text-slate-900 dark:text-white placeholder-slate-400 dark:placeholder-slate-500 rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500 transition-all" : "w-full px-4 py-3.5 pr-12 text-base rounded-xl border transition-all duration-300 bg-white/60 dark:bg-white/10 backdrop-blur-xl border-white/30 dark:border-white/20 text-slate-900 dark:text-white placeholder-slate-400 dark:placeholder-slate-500 focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:border-transparent";
13582
+ const buttonClasses = variant === "apple" ? "absolute top-1/2 -translate-y-1/2 right-3 p-1.5 hover:bg-white/30 dark:hover:bg-white/[0.08] rounded-lg transition-colors" : "absolute top-1/2 -translate-y-1/2 right-3 p-2 hover:bg-white/30 dark:hover:bg-white/[0.08] rounded-lg transition-all duration-200";
13583
+ const iconClasses = variant === "apple" ? "h-5 w-5 text-slate-400 dark:text-slate-400" : "h-5 w-5 text-slate-500 hover:text-slate-700 dark:text-slate-400 dark:hover:text-slate-200";
13539
13584
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
13540
13585
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative", children: [
13541
13586
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -13561,7 +13606,7 @@ var PasswordInput2 = React11.forwardRef(
13561
13606
  ] }),
13562
13607
  showStrength && internalValue.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-2 space-y-2", children: [
13563
13608
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
13564
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-1 h-1.5 bg-zinc-200 dark:bg-zinc-700 rounded-full overflow-hidden", children: /* @__PURE__ */ jsxRuntime.jsx(
13609
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-1 h-1.5 bg-slate-200 dark:bg-slate-700 rounded-full overflow-hidden", children: /* @__PURE__ */ jsxRuntime.jsx(
13565
13610
  "div",
13566
13611
  {
13567
13612
  className: `h-full rounded-full transition-all duration-300 ${strengthBarColor} ${strengthBarWidth}`
@@ -13772,222 +13817,101 @@ var SliderInput = ({
13772
13817
  };
13773
13818
  function DataPagination({
13774
13819
  pagination,
13775
- params,
13776
13820
  onUpdate,
13777
13821
  loading = false,
13778
- showSearch = true,
13779
- searchPlaceholder,
13780
- showPageSize = true,
13781
- pageSizeOptions = [10, 20, 50, 100]
13822
+ showPageSize = false,
13823
+ pageSizeOptions = [10, 20, 50],
13824
+ params
13782
13825
  }) {
13783
- const tSearch = nextIntl.useTranslations("search");
13784
- const tPagination = nextIntl.useTranslations("pagination");
13785
- const tCommon = nextIntl.useTranslations("common");
13786
- const tAria = nextIntl.useTranslations("aria");
13787
- const [localSearchValue, setLocalSearchValue] = React11.useState(params.search || "");
13788
- React11.useEffect(() => {
13789
- const timeoutId = setTimeout(() => {
13790
- if (localSearchValue !== params.search) {
13791
- onUpdate({ search: localSearchValue, page: 1 });
13792
- }
13793
- }, 500);
13794
- return () => clearTimeout(timeoutId);
13795
- }, [localSearchValue, onUpdate, params.search]);
13796
- React11.useEffect(() => {
13797
- if (localSearchValue !== params.search) {
13798
- setLocalSearchValue(params.search || "");
13799
- }
13800
- }, [params.search, localSearchValue]);
13801
- const handleSearchChange = (value) => {
13802
- setLocalSearchValue(value);
13803
- };
13804
- const handlePageSizeChange = (value) => {
13805
- onUpdate({ limit: parseInt(value), page: 1 });
13806
- };
13807
- const handlePageChange = (page) => {
13808
- onUpdate({ page });
13809
- };
13810
13826
  const effectivePageSize = pagination.pageSize ?? pagination.limit ?? 10;
13811
- const skip = (pagination.page - 1) * effectivePageSize;
13812
- const startItem = skip + 1;
13813
- const endItem = Math.min(skip + effectivePageSize, pagination.total);
13814
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "w-full space-y-4", children: [
13815
- showSearch && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "w-full flex flex-col sm:flex-row sm:items-center sm:justify-between space-y-3 sm:space-y-0", children: [
13816
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-1 max-w-full sm:max-w-sm", children: /* @__PURE__ */ jsxRuntime.jsx(
13817
- Input3,
13827
+ const from = (pagination.page - 1) * effectivePageSize + 1;
13828
+ const to = Math.min(pagination.page * effectivePageSize, pagination.total);
13829
+ const handlePageChange = (page) => onUpdate({ page });
13830
+ const handlePageSizeChange = (value) => onUpdate({ limit: parseInt(value), page: 1 });
13831
+ if (pagination.totalPages <= 1 && !showPageSize) return null;
13832
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center justify-between gap-3 rounded-2xl liquid-surface px-4 py-3", children: [
13833
+ /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "text-sm tabular-nums text-slate-600 dark:text-slate-400", children: [
13834
+ from,
13835
+ "\u2013",
13836
+ to,
13837
+ " / ",
13838
+ pagination.total
13839
+ ] }),
13840
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
13841
+ showPageSize && /* @__PURE__ */ jsxRuntime.jsx(
13842
+ "select",
13818
13843
  {
13819
- type: "text",
13820
- placeholder: searchPlaceholder || tSearch("placeholder"),
13821
- value: localSearchValue,
13822
- onChange: (e) => handleSearchChange(e.target.value),
13844
+ value: params?.limit ?? effectivePageSize,
13845
+ onChange: (event) => handlePageSizeChange(event.target.value),
13823
13846
  disabled: loading,
13824
- className: "w-full min-h-[44px] text-base sm:text-sm"
13847
+ className: "rounded-xl liquid-surface px-2 py-1.5 text-xs font-medium text-slate-700 outline-none dark:text-slate-300",
13848
+ children: pageSizeOptions.map((size) => /* @__PURE__ */ jsxRuntime.jsx("option", { value: size, children: size }, size))
13825
13849
  }
13826
- ) }),
13827
- showPageSize && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-center gap-2 sm:hidden", children: [
13828
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-medium text-zinc-700 dark:text-zinc-300 whitespace-nowrap", children: tPagination("itemsPerPage") }),
13850
+ ),
13851
+ pagination.totalPages > 1 && /* @__PURE__ */ jsxRuntime.jsxs("nav", { className: "flex items-center gap-1", "aria-label": "Pagination", children: [
13829
13852
  /* @__PURE__ */ jsxRuntime.jsx(
13830
- "select",
13853
+ "button",
13831
13854
  {
13832
- value: params.limit,
13833
- onChange: (e) => handlePageSizeChange(e.target.value),
13834
- disabled: loading,
13835
- className: "rounded-md border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-800 px-3 py-2 min-h-[44px] text-sm font-medium text-zinc-700 dark:text-zinc-300 focus:outline-none focus:ring-2 focus:ring-indigo-500 touch-manipulation",
13836
- children: pageSizeOptions.map((size) => /* @__PURE__ */ jsxRuntime.jsx("option", { value: size, children: size }, size))
13855
+ type: "button",
13856
+ disabled: pagination.page <= 1 || loading,
13857
+ onClick: () => handlePageChange(pagination.page - 1),
13858
+ className: "inline-flex h-9 w-9 items-center justify-center rounded-xl text-slate-500 transition hover:bg-white/40 disabled:opacity-30 dark:text-slate-400 dark:hover:bg-white/[0.08]",
13859
+ children: /* @__PURE__ */ jsxRuntime.jsx(solid.ChevronLeftIcon, { className: "h-5 w-5" })
13860
+ }
13861
+ ),
13862
+ getPageNumbers(pagination.page, pagination.totalPages).map(
13863
+ (page, index) => page === "..." ? /* @__PURE__ */ jsxRuntime.jsx(
13864
+ "span",
13865
+ {
13866
+ className: "inline-flex h-9 w-6 items-center justify-center text-xs text-slate-400",
13867
+ children: "\u2026"
13868
+ },
13869
+ `ellipsis-${index}`
13870
+ ) : /* @__PURE__ */ jsxRuntime.jsx(
13871
+ "button",
13872
+ {
13873
+ type: "button",
13874
+ disabled: loading,
13875
+ onClick: () => handlePageChange(page),
13876
+ "aria-current": page === pagination.page ? "page" : void 0,
13877
+ className: `inline-flex h-9 min-w-9 items-center justify-center rounded-xl px-2 text-sm font-medium transition ${page === pagination.page ? "liquid-surface liquid-surface-active text-slate-900 dark:text-white" : "text-slate-500 hover:bg-white/40 dark:text-slate-400 dark:hover:bg-white/[0.08]"}`,
13878
+ children: page
13879
+ },
13880
+ `page-${page}`
13881
+ )
13882
+ ),
13883
+ /* @__PURE__ */ jsxRuntime.jsx(
13884
+ "button",
13885
+ {
13886
+ type: "button",
13887
+ disabled: pagination.page >= pagination.totalPages || loading,
13888
+ onClick: () => handlePageChange(pagination.page + 1),
13889
+ className: "inline-flex h-9 w-9 items-center justify-center rounded-xl text-slate-500 transition hover:bg-white/40 disabled:opacity-30 dark:text-slate-400 dark:hover:bg-white/[0.08]",
13890
+ children: /* @__PURE__ */ jsxRuntime.jsx(solid.ChevronRightIcon, { className: "h-5 w-5" })
13837
13891
  }
13838
13892
  )
13839
13893
  ] })
13840
- ] }),
13841
- /* @__PURE__ */ jsxRuntime.jsxs(
13842
- "div",
13843
- {
13844
- className: `flex items-center justify-between bg-white dark:bg-zinc-800 rounded-lg shadow hover:shadow-md transition-all duration-200 px-6 py-4 ${loading ? "opacity-75 pointer-events-none" : "opacity-100"}`,
13845
- children: [
13846
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-1 justify-between items-center sm:hidden", children: [
13847
- /* @__PURE__ */ jsxRuntime.jsxs(
13848
- "button",
13849
- {
13850
- onClick: () => handlePageChange(pagination.page - 1),
13851
- disabled: !pagination.hasPrev || loading,
13852
- className: "relative inline-flex items-center rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-800 px-6 py-3 min-h-[44px] text-sm font-medium text-zinc-700 dark:text-zinc-300 hover:bg-zinc-50 dark:hover:bg-zinc-700 disabled:opacity-50 disabled:cursor-not-allowed touch-manipulation",
13853
- children: [
13854
- /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ChevronLeftIcon, { className: "h-5 w-5 mr-1" }),
13855
- tPagination("previous")
13856
- ]
13857
- }
13858
- ),
13859
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center text-xs text-zinc-600 dark:text-zinc-400", children: [
13860
- /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "font-medium", children: [
13861
- pagination.page,
13862
- " / ",
13863
- pagination.totalPages
13864
- ] }),
13865
- /* @__PURE__ */ jsxRuntime.jsxs("span", { children: [
13866
- pagination.total,
13867
- " ",
13868
- tCommon("items")
13869
- ] })
13870
- ] }),
13871
- /* @__PURE__ */ jsxRuntime.jsxs(
13872
- "button",
13873
- {
13874
- onClick: () => handlePageChange(pagination.page + 1),
13875
- disabled: !pagination.hasNext || loading,
13876
- className: "relative inline-flex items-center rounded-lg border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-800 px-6 py-3 min-h-[44px] text-sm font-medium text-zinc-700 dark:text-zinc-300 hover:bg-zinc-50 dark:hover:bg-zinc-700 disabled:opacity-50 disabled:cursor-not-allowed touch-manipulation",
13877
- children: [
13878
- tPagination("next"),
13879
- /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ChevronRightIcon, { className: "h-5 w-5 ml-1" })
13880
- ]
13881
- }
13882
- )
13883
- ] }),
13884
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "hidden sm:flex sm:flex-1 sm:items-center sm:justify-between", children: [
13885
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-4", children: [
13886
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
13887
- loading && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "animate-spin rounded-full h-4 w-4 border-b-2 border-indigo-600" }),
13888
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-zinc-700 dark:text-zinc-300", children: tPagination("showing", {
13889
- start: String(startItem),
13890
- end: String(endItem),
13891
- total: String(pagination.total)
13892
- }) })
13893
- ] }),
13894
- showPageSize && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "hidden sm:flex items-center gap-2", children: [
13895
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-medium text-zinc-700 dark:text-zinc-300 whitespace-nowrap", children: tPagination("itemsPerPage") }),
13896
- /* @__PURE__ */ jsxRuntime.jsx(
13897
- "select",
13898
- {
13899
- value: params.limit,
13900
- onChange: (e) => handlePageSizeChange(e.target.value),
13901
- disabled: loading,
13902
- className: "rounded-md border border-zinc-300 dark:border-zinc-600 bg-white dark:bg-zinc-800 px-3 py-1 text-sm font-medium text-zinc-700 dark:text-zinc-300 focus:outline-none focus:ring-2 focus:ring-indigo-500",
13903
- children: pageSizeOptions.map((size) => /* @__PURE__ */ jsxRuntime.jsx("option", { value: size, children: size }, size))
13904
- }
13905
- )
13906
- ] })
13907
- ] }),
13908
- pagination.totalPages > 1 && /* @__PURE__ */ jsxRuntime.jsxs(
13909
- "nav",
13910
- {
13911
- "aria-label": tAria("pagination"),
13912
- className: "isolate inline-flex -space-x-px rounded-md shadow-sm",
13913
- children: [
13914
- /* @__PURE__ */ jsxRuntime.jsxs(
13915
- "button",
13916
- {
13917
- onClick: () => handlePageChange(pagination.page - 1),
13918
- disabled: !pagination.hasPrev || loading,
13919
- className: "relative inline-flex items-center justify-center rounded-l-md px-3 py-2 min-h-[44px] min-w-[44px] text-zinc-400 ring-1 ring-zinc-300 dark:ring-zinc-600 ring-inset hover:bg-zinc-50 dark:hover:bg-zinc-700 focus:z-20 focus:outline-offset-0 disabled:opacity-50 disabled:cursor-not-allowed touch-manipulation",
13920
- children: [
13921
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: tPagination("previous") }),
13922
- /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ChevronLeftIcon, { "aria-hidden": "true", className: "h-5 w-5" })
13923
- ]
13924
- }
13925
- ),
13926
- getPageNumbers(pagination.page, pagination.totalPages).map(
13927
- (page, index) => page === "..." ? /* @__PURE__ */ jsxRuntime.jsx(
13928
- "span",
13929
- {
13930
- className: "relative inline-flex items-center px-4 py-2 text-sm font-semibold text-zinc-700 dark:text-zinc-300 ring-1 ring-zinc-300 dark:ring-zinc-600 ring-inset focus:outline-offset-0",
13931
- children: "..."
13932
- },
13933
- `ellipsis-${index}`
13934
- ) : /* @__PURE__ */ jsxRuntime.jsx(
13935
- "button",
13936
- {
13937
- onClick: () => handlePageChange(page),
13938
- disabled: loading,
13939
- "aria-current": page === pagination.page ? "page" : void 0,
13940
- className: `relative inline-flex items-center justify-center px-4 py-2 min-h-[44px] min-w-[44px] text-sm font-semibold focus:z-20 focus:outline-offset-0 touch-manipulation ${page === pagination.page ? "z-10 bg-indigo-600 text-white focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-indigo-600" : "text-zinc-900 dark:text-zinc-300 ring-1 ring-zinc-300 dark:ring-zinc-600 ring-inset hover:bg-zinc-50 dark:hover:bg-zinc-700"}`,
13941
- children: page
13942
- },
13943
- `page-${page}`
13944
- )
13945
- ),
13946
- /* @__PURE__ */ jsxRuntime.jsxs(
13947
- "button",
13948
- {
13949
- onClick: () => handlePageChange(pagination.page + 1),
13950
- disabled: !pagination.hasNext || loading,
13951
- className: "relative inline-flex items-center justify-center rounded-r-md px-3 py-2 min-h-[44px] min-w-[44px] text-zinc-400 ring-1 ring-zinc-300 dark:ring-zinc-600 ring-inset hover:bg-zinc-50 dark:hover:bg-zinc-700 focus:z-20 focus:outline-offset-0 disabled:opacity-50 disabled:cursor-not-allowed touch-manipulation",
13952
- children: [
13953
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: tPagination("next") }),
13954
- /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ChevronRightIcon, { "aria-hidden": "true", className: "h-5 w-5" })
13955
- ]
13956
- }
13957
- )
13958
- ]
13959
- }
13960
- )
13961
- ] })
13962
- ]
13963
- }
13964
- )
13894
+ ] })
13965
13895
  ] });
13966
13896
  }
13967
13897
  function getPageNumbers(currentPage, totalPages) {
13968
13898
  if (totalPages <= 7) {
13969
13899
  return Array.from({ length: totalPages }, (_, i) => i + 1);
13970
13900
  }
13971
- const pages = [];
13972
- pages.push(1);
13901
+ const pages = [1];
13973
13902
  if (currentPage <= 4) {
13974
- for (let i = 2; i <= Math.min(5, totalPages); i++) {
13975
- pages.push(i);
13976
- }
13903
+ for (let i = 2; i <= Math.min(5, totalPages); i++) pages.push(i);
13977
13904
  if (totalPages > 5) {
13978
13905
  pages.push("...");
13979
13906
  pages.push(totalPages);
13980
13907
  }
13981
13908
  } else if (currentPage >= totalPages - 3) {
13982
13909
  pages.push("...");
13983
- for (let i = Math.max(totalPages - 4, 2); i <= totalPages; i++) {
13910
+ for (let i = Math.max(totalPages - 4, 2); i <= totalPages; i++)
13984
13911
  pages.push(i);
13985
- }
13986
13912
  } else {
13987
13913
  pages.push("...");
13988
- for (let i = currentPage - 1; i <= currentPage + 1; i++) {
13989
- pages.push(i);
13990
- }
13914
+ for (let i = currentPage - 1; i <= currentPage + 1; i++) pages.push(i);
13991
13915
  pages.push("...");
13992
13916
  pages.push(totalPages);
13993
13917
  }
@@ -14052,13 +13976,13 @@ var PageHeader = React11.memo(function PageHeader2({
14052
13976
  "h1",
14053
13977
  {
14054
13978
  className: clsx__default.default(
14055
- "font-bold text-zinc-900 dark:text-zinc-100 truncate",
13979
+ "font-bold text-slate-900 dark:text-slate-100 truncate",
14056
13980
  size === "large" ? "text-3xl" : "text-2xl"
14057
13981
  ),
14058
13982
  children: title
14059
13983
  }
14060
13984
  ),
14061
- subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-2 text-sm text-zinc-600 dark:text-zinc-400 line-clamp-2", children: subtitle })
13985
+ subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-2 text-sm text-slate-600 dark:text-slate-400 line-clamp-2", children: subtitle })
14062
13986
  ] }),
14063
13987
  actions && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-shrink-0 flex items-center gap-2 flex-wrap", children: actions })
14064
13988
  ] }),
@@ -14075,8 +13999,8 @@ var PageSectionHeader = React11.memo(function PageSectionHeader2({
14075
13999
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx__default.default("mb-4", className), children: [
14076
14000
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col sm:flex-row sm:items-center sm:justify-between gap-3", children: [
14077
14001
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1", children: [
14078
- /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "text-lg sm:text-xl font-semibold text-zinc-900 dark:text-zinc-100", children: title }),
14079
- subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-sm text-zinc-600 dark:text-zinc-400 line-clamp-2", children: subtitle })
14002
+ /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "text-lg sm:text-xl font-semibold text-slate-900 dark:text-slate-100", children: title }),
14003
+ subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-sm text-slate-600 dark:text-slate-400 line-clamp-2", children: subtitle })
14080
14004
  ] }),
14081
14005
  actions && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-shrink-0 flex items-center gap-2 flex-wrap", children: actions })
14082
14006
  ] }),
@@ -14093,8 +14017,8 @@ var CardSectionHeader = React11.memo(function CardSectionHeader2({
14093
14017
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx__default.default("mb-3", className), children: [
14094
14018
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col sm:flex-row sm:items-center sm:justify-between gap-2", children: [
14095
14019
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1", children: [
14096
- /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-base sm:text-lg font-medium text-zinc-900 dark:text-zinc-100", children: title }),
14097
- subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-xs sm:text-sm text-zinc-600 dark:text-zinc-400 line-clamp-1", children: subtitle })
14020
+ /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-base sm:text-lg font-medium text-slate-900 dark:text-slate-100", children: title }),
14021
+ subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-xs sm:text-sm text-slate-600 dark:text-slate-400 line-clamp-1", children: subtitle })
14098
14022
  ] }),
14099
14023
  actions && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-shrink-0 flex items-center gap-1 flex-wrap", children: actions })
14100
14024
  ] }),
@@ -14113,10 +14037,10 @@ var MetricCard2 = ({
14113
14037
  return /* @__PURE__ */ jsxRuntime.jsxs(
14114
14038
  "div",
14115
14039
  {
14116
- className: `bg-zinc-50 dark:bg-zinc-800/50 rounded-2xl border border-zinc-200/50 dark:border-zinc-700/50 p-5 hover:border-zinc-300 dark:hover:border-zinc-600 transition-colors ${className}`,
14040
+ className: `liquid-surface rounded-2xl border border-white/30 dark:border-white/10 p-5 hover:bg-white/40 dark:hover:bg-white/[0.08] transition-colors ${className}`,
14117
14041
  children: [
14118
14042
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start justify-between mb-3", children: [
14119
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs font-medium text-zinc-500 dark:text-zinc-400", children: title }),
14043
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs font-medium text-slate-500 dark:text-slate-400", children: title }),
14120
14044
  tooltip && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative", children: [
14121
14045
  /* @__PURE__ */ jsxRuntime.jsx(
14122
14046
  "button",
@@ -14124,20 +14048,20 @@ var MetricCard2 = ({
14124
14048
  type: "button",
14125
14049
  onMouseEnter: () => setShowTooltip(true),
14126
14050
  onMouseLeave: () => setShowTooltip(false),
14127
- className: "w-4 h-4 rounded-full bg-zinc-200 dark:bg-zinc-700 text-zinc-600 dark:text-zinc-400 text-xs flex items-center justify-center hover:bg-zinc-300 dark:hover:bg-zinc-600 transition-colors",
14051
+ className: "w-4 h-4 rounded-full bg-white/30 dark:bg-white/10 text-slate-600 dark:text-slate-400 text-xs flex items-center justify-center hover:bg-white/40 dark:hover:bg-white/[0.08] transition-colors",
14128
14052
  "aria-label": "Info",
14129
14053
  children: "?"
14130
14054
  }
14131
14055
  ),
14132
- showTooltip && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "absolute right-0 top-6 z-10 w-64 p-3 bg-zinc-900 dark:bg-zinc-100 text-white dark:text-zinc-900 text-xs rounded-lg shadow-lg", children: [
14056
+ showTooltip && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "absolute right-0 top-6 z-10 w-64 p-3 liquid-surface-strong text-slate-900 dark:text-slate-100 text-xs rounded-lg", children: [
14133
14057
  tooltip,
14134
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute right-2 top-0 -translate-y-1 w-2 h-2 bg-zinc-900 dark:bg-zinc-100 rotate-45" })
14058
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute right-2 top-0 -translate-y-1 w-2 h-2 bg-white/60 dark:bg-white/20 rotate-45" })
14135
14059
  ] })
14136
14060
  ] })
14137
14061
  ] }),
14138
14062
  children ? children : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
14139
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-2xl font-semibold text-zinc-900 dark:text-zinc-100 mb-1", children: value }),
14140
- subtitle && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-xs text-zinc-500 dark:text-zinc-400", children: subtitle })
14063
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-2xl font-semibold text-slate-900 dark:text-slate-100 mb-1", children: value }),
14064
+ subtitle && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-xs text-slate-500 dark:text-slate-400", children: subtitle })
14141
14065
  ] })
14142
14066
  ]
14143
14067
  }
@@ -14152,14 +14076,14 @@ var MetricTooltip = ({ text }) => {
14152
14076
  type: "button",
14153
14077
  onMouseEnter: () => setShow(true),
14154
14078
  onMouseLeave: () => setShow(false),
14155
- className: "w-4 h-4 rounded-full bg-zinc-200 dark:bg-zinc-700 text-zinc-600 dark:text-zinc-400 text-xs flex items-center justify-center hover:bg-zinc-300 dark:hover:bg-zinc-600 transition-colors",
14079
+ className: "w-4 h-4 rounded-full bg-white/30 dark:bg-white/10 text-slate-600 dark:text-slate-400 text-xs flex items-center justify-center hover:bg-white/40 dark:hover:bg-white/[0.08] transition-colors",
14156
14080
  "aria-label": "Info",
14157
14081
  children: "?"
14158
14082
  }
14159
14083
  ),
14160
- show && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "absolute right-0 top-6 z-10 w-64 p-3 bg-zinc-900 dark:bg-zinc-100 text-white dark:text-zinc-900 text-xs rounded-lg shadow-lg", children: [
14084
+ show && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "absolute right-0 top-6 z-10 w-64 p-3 liquid-surface-strong text-slate-900 dark:text-slate-100 text-xs rounded-lg", children: [
14161
14085
  text,
14162
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute right-2 top-0 -translate-y-1 w-2 h-2 bg-zinc-900 dark:bg-zinc-100 rotate-45" })
14086
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute right-2 top-0 -translate-y-1 w-2 h-2 bg-white/60 dark:bg-white/20 rotate-45" })
14163
14087
  ] })
14164
14088
  ] });
14165
14089
  };
@@ -15259,5 +15183,5 @@ exports.useGeoMapState = useGeoMapState;
15259
15183
  exports.useNotifications = useNotifications;
15260
15184
  exports.usePlatformShellStore = usePlatformShellStore;
15261
15185
  exports.usePullToRefresh = usePullToRefresh;
15262
- //# sourceMappingURL=chunk-S4MECSAK.js.map
15263
- //# sourceMappingURL=chunk-S4MECSAK.js.map
15186
+ //# sourceMappingURL=chunk-IMLJ5FAZ.js.map
15187
+ //# sourceMappingURL=chunk-IMLJ5FAZ.js.map