@datatechsolutions/ui 3.13.0 → 3.14.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.
Files changed (135) hide show
  1. package/dist/astrlabe/graph-node.js +6 -6
  2. package/dist/astrlabe/graph-node.mjs +2 -2
  3. package/dist/astrlabe/index.js +114 -114
  4. package/dist/astrlabe/index.mjs +6 -6
  5. package/dist/astrlabe/workflow-canvas.js +6 -6
  6. package/dist/astrlabe/workflow-canvas.mjs +5 -5
  7. package/dist/{chunk-AMCFAGK3.js → chunk-2II2NLAZ.js} +42 -41
  8. package/dist/chunk-2II2NLAZ.js.map +1 -0
  9. package/dist/{chunk-WR55H7DH.mjs → chunk-2SBVFLPZ.mjs} +19 -2
  10. package/dist/chunk-2SBVFLPZ.mjs.map +1 -0
  11. package/dist/{chunk-UXHJS2SH.mjs → chunk-33ZWFDVG.mjs} +282 -331
  12. package/dist/chunk-33ZWFDVG.mjs.map +1 -0
  13. package/dist/{chunk-2ECLDHAT.js → chunk-4HZ55YKZ.js} +9 -9
  14. package/dist/{chunk-2ECLDHAT.js.map → chunk-4HZ55YKZ.js.map} +1 -1
  15. package/dist/{chunk-VI4IUTMX.js → chunk-4P72IJOM.js} +6 -6
  16. package/dist/{chunk-VI4IUTMX.js.map → chunk-4P72IJOM.js.map} +1 -1
  17. package/dist/{chunk-D5OTZGA2.js → chunk-5SCZB5UI.js} +382 -431
  18. package/dist/chunk-5SCZB5UI.js.map +1 -0
  19. package/dist/{chunk-4VHFGW7I.mjs → chunk-5YCH7FHT.mjs} +3 -3
  20. package/dist/{chunk-4VHFGW7I.mjs.map → chunk-5YCH7FHT.mjs.map} +1 -1
  21. package/dist/{chunk-P4RVGMZL.js → chunk-6NBQTIXX.js} +9 -37
  22. package/dist/chunk-6NBQTIXX.js.map +1 -0
  23. package/dist/{chunk-EZQ2D47U.js → chunk-6NEESZVO.js} +4 -4
  24. package/dist/{chunk-EZQ2D47U.js.map → chunk-6NEESZVO.js.map} +1 -1
  25. package/dist/{chunk-N4YT3QA5.js → chunk-72XZ7DSF.js} +13 -13
  26. package/dist/{chunk-N4YT3QA5.js.map → chunk-72XZ7DSF.js.map} +1 -1
  27. package/dist/{chunk-QGRTV35L.mjs → chunk-7NHJSD4A.mjs} +6 -6
  28. package/dist/{chunk-QGRTV35L.mjs.map → chunk-7NHJSD4A.mjs.map} +1 -1
  29. package/dist/{chunk-PPIUMCUZ.js → chunk-7SDB2VC2.js} +4 -4
  30. package/dist/{chunk-PPIUMCUZ.js.map → chunk-7SDB2VC2.js.map} +1 -1
  31. package/dist/{chunk-QGLGQXJE.js → chunk-A5OMGPMR.js} +10 -10
  32. package/dist/chunk-A5OMGPMR.js.map +1 -0
  33. package/dist/{chunk-K5567JM5.js → chunk-AUCS2KF4.js} +26 -26
  34. package/dist/{chunk-K5567JM5.js.map → chunk-AUCS2KF4.js.map} +1 -1
  35. package/dist/{chunk-MSKKNPRE.mjs → chunk-F4KHAKTP.mjs} +172 -116
  36. package/dist/chunk-F4KHAKTP.mjs.map +1 -0
  37. package/dist/{chunk-SDYKXLCU.js → chunk-FHGWXWVZ.js} +67 -67
  38. package/dist/{chunk-SDYKXLCU.js.map → chunk-FHGWXWVZ.js.map} +1 -1
  39. package/dist/{chunk-5ETT54QS.js → chunk-FZUV7GNB.js} +241 -184
  40. package/dist/chunk-FZUV7GNB.js.map +1 -0
  41. package/dist/{chunk-6KDTVSZT.mjs → chunk-HQNIETHV.mjs} +11 -10
  42. package/dist/chunk-HQNIETHV.mjs.map +1 -0
  43. package/dist/{chunk-PLTLRL2V.mjs → chunk-KDDXDQR2.mjs} +3 -3
  44. package/dist/{chunk-PLTLRL2V.mjs.map → chunk-KDDXDQR2.mjs.map} +1 -1
  45. package/dist/{chunk-6YTYD4P5.js → chunk-LJGPMMKB.js} +156 -193
  46. package/dist/chunk-LJGPMMKB.js.map +1 -0
  47. package/dist/{chunk-BHOT22QL.js → chunk-MXQ2EYG2.js} +19 -2
  48. package/dist/chunk-MXQ2EYG2.js.map +1 -0
  49. package/dist/{chunk-ANFSQJNI.mjs → chunk-N6SGVUTR.mjs} +17 -20
  50. package/dist/chunk-N6SGVUTR.mjs.map +1 -0
  51. package/dist/{chunk-IIRS5XZY.js → chunk-NIZSQJRW.js} +33 -33
  52. package/dist/{chunk-IIRS5XZY.js.map → chunk-NIZSQJRW.js.map} +1 -1
  53. package/dist/{chunk-AKWCT53S.mjs → chunk-NXWIT4YQ.mjs} +47 -50
  54. package/dist/chunk-NXWIT4YQ.mjs.map +1 -0
  55. package/dist/{chunk-OC4AOYU5.mjs → chunk-OTQXU4WG.mjs} +83 -120
  56. package/dist/chunk-OTQXU4WG.mjs.map +1 -0
  57. package/dist/{chunk-CSOMZ5UM.mjs → chunk-PO66V2PN.mjs} +9 -9
  58. package/dist/{chunk-CSOMZ5UM.mjs.map → chunk-PO66V2PN.mjs.map} +1 -1
  59. package/dist/{chunk-OY5HUZSD.js → chunk-PXGESUKI.js} +94 -97
  60. package/dist/chunk-PXGESUKI.js.map +1 -0
  61. package/dist/{chunk-7TYNV6SY.mjs → chunk-Q2FUNDCP.mjs} +14 -14
  62. package/dist/{chunk-7TYNV6SY.mjs.map → chunk-Q2FUNDCP.mjs.map} +1 -1
  63. package/dist/{chunk-KWH7JIRP.mjs → chunk-Q5TZTA6H.mjs} +9 -8
  64. package/dist/chunk-Q5TZTA6H.mjs.map +1 -0
  65. package/dist/{chunk-ZRCXDKBE.mjs → chunk-T7DROKWJ.mjs} +4 -4
  66. package/dist/{chunk-ZRCXDKBE.mjs.map → chunk-T7DROKWJ.mjs.map} +1 -1
  67. package/dist/{chunk-3VYD7QL2.mjs → chunk-TQADF23S.mjs} +9 -9
  68. package/dist/chunk-TQADF23S.mjs.map +1 -0
  69. package/dist/{chunk-VIB42VMZ.mjs → chunk-U7VMFQFN.mjs} +5 -5
  70. package/dist/{chunk-VIB42VMZ.mjs.map → chunk-U7VMFQFN.mjs.map} +1 -1
  71. package/dist/{chunk-AHNH2PMI.mjs → chunk-WE35EV7J.mjs} +3 -3
  72. package/dist/{chunk-AHNH2PMI.mjs.map → chunk-WE35EV7J.mjs.map} +1 -1
  73. package/dist/{chunk-UPYACFZJ.mjs → chunk-WTSMTLSP.mjs} +303 -347
  74. package/dist/chunk-WTSMTLSP.mjs.map +1 -0
  75. package/dist/{chunk-WOTKBKS6.js → chunk-YFMMZHL5.js} +47 -50
  76. package/dist/chunk-YFMMZHL5.js.map +1 -0
  77. package/dist/{chunk-DJ33CSGJ.mjs → chunk-ZBX7UCAP.mjs} +9 -37
  78. package/dist/chunk-ZBX7UCAP.mjs.map +1 -0
  79. package/dist/{chunk-NF5DDM5V.js → chunk-ZE6U4N4Q.js} +44 -43
  80. package/dist/chunk-ZE6U4N4Q.js.map +1 -0
  81. package/dist/{chunk-MQDCUBVW.js → chunk-ZIRD3X6G.js} +459 -503
  82. package/dist/chunk-ZIRD3X6G.js.map +1 -0
  83. package/dist/index.d.mts +77 -7
  84. package/dist/index.d.ts +77 -7
  85. package/dist/index.js +708 -704
  86. package/dist/index.mjs +3 -3
  87. package/dist/platform/admin/index.js +12 -12
  88. package/dist/platform/admin/index.mjs +6 -6
  89. package/dist/platform/agents-workspace.js +9 -9
  90. package/dist/platform/agents-workspace.mjs +8 -8
  91. package/dist/platform/app-shell.js +5 -5
  92. package/dist/platform/app-shell.mjs +4 -4
  93. package/dist/platform/auth/index.js +29 -29
  94. package/dist/platform/auth/index.mjs +6 -6
  95. package/dist/platform/billing/index.js +7 -7
  96. package/dist/platform/billing/index.mjs +5 -5
  97. package/dist/platform/impersonation/index.js +5 -5
  98. package/dist/platform/impersonation/index.mjs +4 -4
  99. package/dist/platform/index.js +99 -99
  100. package/dist/platform/index.js.map +1 -1
  101. package/dist/platform/index.mjs +30 -30
  102. package/dist/platform/index.mjs.map +1 -1
  103. package/dist/platform/pages/index.d.mts +115 -3
  104. package/dist/platform/pages/index.d.ts +115 -3
  105. package/dist/platform/pages/index.js +966 -519
  106. package/dist/platform/pages/index.js.map +1 -1
  107. package/dist/platform/pages/index.mjs +562 -121
  108. package/dist/platform/pages/index.mjs.map +1 -1
  109. package/dist/platform/settings/index.js +9 -9
  110. package/dist/platform/settings/index.mjs +8 -8
  111. package/dist/platform/workflow-canvas-shell.js +7 -7
  112. package/dist/platform/workflow-canvas-shell.mjs +6 -6
  113. package/package.json +1 -1
  114. package/dist/chunk-3VYD7QL2.mjs.map +0 -1
  115. package/dist/chunk-5ETT54QS.js.map +0 -1
  116. package/dist/chunk-6KDTVSZT.mjs.map +0 -1
  117. package/dist/chunk-6YTYD4P5.js.map +0 -1
  118. package/dist/chunk-AKWCT53S.mjs.map +0 -1
  119. package/dist/chunk-AMCFAGK3.js.map +0 -1
  120. package/dist/chunk-ANFSQJNI.mjs.map +0 -1
  121. package/dist/chunk-BHOT22QL.js.map +0 -1
  122. package/dist/chunk-D5OTZGA2.js.map +0 -1
  123. package/dist/chunk-DJ33CSGJ.mjs.map +0 -1
  124. package/dist/chunk-KWH7JIRP.mjs.map +0 -1
  125. package/dist/chunk-MQDCUBVW.js.map +0 -1
  126. package/dist/chunk-MSKKNPRE.mjs.map +0 -1
  127. package/dist/chunk-NF5DDM5V.js.map +0 -1
  128. package/dist/chunk-OC4AOYU5.mjs.map +0 -1
  129. package/dist/chunk-OY5HUZSD.js.map +0 -1
  130. package/dist/chunk-P4RVGMZL.js.map +0 -1
  131. package/dist/chunk-QGLGQXJE.js.map +0 -1
  132. package/dist/chunk-UPYACFZJ.mjs.map +0 -1
  133. package/dist/chunk-UXHJS2SH.mjs.map +0 -1
  134. package/dist/chunk-WOTKBKS6.js.map +0 -1
  135. package/dist/chunk-WR55H7DH.mjs.map +0 -1
@@ -1,9 +1,9 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkY5VN4SPH_js = require('./chunk-Y5VN4SPH.js');
5
4
  var chunk22XPYFHJ_js = require('./chunk-22XPYFHJ.js');
6
- var chunkBHOT22QL_js = require('./chunk-BHOT22QL.js');
5
+ var chunkY5VN4SPH_js = require('./chunk-Y5VN4SPH.js');
6
+ var chunkMXQ2EYG2_js = require('./chunk-MXQ2EYG2.js');
7
7
  var chunkUZ3CMNUJ_js = require('./chunk-UZ3CMNUJ.js');
8
8
  var chunkS7KHTUHA_js = require('./chunk-S7KHTUHA.js');
9
9
  var React9 = require('react');
@@ -435,7 +435,7 @@ var Input = React9.forwardRef(
435
435
  initial: { opacity: 0, scale: 0.8 },
436
436
  animate: { opacity: 1, scale: 1 },
437
437
  exit: { opacity: 0, scale: 0.8 },
438
- transition: chunkBHOT22QL_js.getTransition(chunkBHOT22QL_js.springPresets.bouncy),
438
+ transition: chunkMXQ2EYG2_js.getTransition(chunkMXQ2EYG2_js.springPresets.bouncy),
439
439
  children: /* @__PURE__ */ jsxRuntime.jsx(solid.CheckCircleIcon, { className: "h-5 w-5 text-ios-green dark:text-ios-green-dark" })
440
440
  }
441
441
  ) }),
@@ -1217,7 +1217,7 @@ function ToggleSwitch({
1217
1217
  children: /* @__PURE__ */ jsxRuntime.jsx(
1218
1218
  framerMotion.motion.span,
1219
1219
  {
1220
- transition: chunkBHOT22QL_js.springPresets.bouncy,
1220
+ transition: chunkMXQ2EYG2_js.springPresets.bouncy,
1221
1221
  className: `
1222
1222
  pointer-events-none inline-block rounded-full
1223
1223
  bg-white shadow-lg shadow-black/10
@@ -3117,7 +3117,7 @@ function SearchBar({
3117
3117
  }
3118
3118
  ),
3119
3119
  filtersModal && /* @__PURE__ */ jsxRuntime.jsxs(
3120
- chunkBHOT22QL_js.Button,
3120
+ chunkMXQ2EYG2_js.Button,
3121
3121
  {
3122
3122
  type: "button",
3123
3123
  onClick: filtersModal.onOpen,
@@ -3183,7 +3183,7 @@ function SearchBar({
3183
3183
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "max-h-[72vh] overflow-y-auto p-4 sm:p-5", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-6", children: filtersModal.children }) }),
3184
3184
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-end gap-2 border-t liquid-divider p-4", children: [
3185
3185
  filtersModal.onClear && filtersModalCount > 0 && /* @__PURE__ */ jsxRuntime.jsx(
3186
- chunkBHOT22QL_js.Button,
3186
+ chunkMXQ2EYG2_js.Button,
3187
3187
  {
3188
3188
  type: "button",
3189
3189
  onClick: filtersModal.onClear,
@@ -3193,7 +3193,7 @@ function SearchBar({
3193
3193
  }
3194
3194
  ),
3195
3195
  /* @__PURE__ */ jsxRuntime.jsx(
3196
- chunkBHOT22QL_js.Button,
3196
+ chunkMXQ2EYG2_js.Button,
3197
3197
  {
3198
3198
  type: "button",
3199
3199
  onClick: filtersModal.onClose,
@@ -3960,7 +3960,7 @@ function SegmentedControl({
3960
3960
  left: indicatorStyle.left,
3961
3961
  width: indicatorStyle.width
3962
3962
  },
3963
- transition: chunkBHOT22QL_js.springPresets.default
3963
+ transition: chunkMXQ2EYG2_js.springPresets.default
3964
3964
  }
3965
3965
  ),
3966
3966
  normalizedSegments.map((segment) => {
@@ -4018,15 +4018,15 @@ var sizeConfig2 = {
4018
4018
  var variantConfig = {
4019
4019
  default: {
4020
4020
  active: "bg-[#007AFF]",
4021
- inactive: "bg-gray-300 dark:bg-gray-600"
4021
+ inactive: "bg-slate-300 dark:bg-slate-600"
4022
4022
  },
4023
4023
  light: {
4024
4024
  active: "bg-white",
4025
4025
  inactive: "bg-white/40"
4026
4026
  },
4027
4027
  dark: {
4028
- active: "bg-gray-900",
4029
- inactive: "bg-gray-900/30"
4028
+ active: "bg-slate-900",
4029
+ inactive: "bg-slate-900/30"
4030
4030
  }
4031
4031
  };
4032
4032
  function PageIndicator({
@@ -4159,7 +4159,7 @@ function ProgressIndicator({
4159
4159
  ${showNumbers ? "w-8 h-8 text-sm font-medium" : "w-3 h-3"}
4160
4160
  ${isCompleted ? "bg-[#34C759] text-white" : ""}
4161
4161
  ${isCurrent ? "bg-[#007AFF] text-white ring-4 ring-indigo-500/70/20" : ""}
4162
- ${isPending ? "bg-gray-200 dark:bg-gray-700 text-gray-500" : ""}
4162
+ ${isPending ? "bg-slate-200 dark:bg-slate-700 text-slate-500" : ""}
4163
4163
  `,
4164
4164
  animate: {
4165
4165
  scale: isCurrent ? 1.1 : 1
@@ -4177,7 +4177,7 @@ function ProgressIndicator({
4177
4177
  {
4178
4178
  className: `
4179
4179
  w-8 h-0.5 mx-1
4180
- ${isCompleted ? "bg-[#34C759]" : "bg-gray-200 dark:bg-gray-700"}
4180
+ ${isCompleted ? "bg-[#34C759]" : "bg-slate-200 dark:bg-slate-700"}
4181
4181
  `
4182
4182
  }
4183
4183
  )
@@ -4559,15 +4559,15 @@ function PullToRefreshIndicator({
4559
4559
  "div",
4560
4560
  {
4561
4561
  className: `
4562
- h-8 w-8 rounded-full bg-white dark:bg-gray-800
4563
- shadow-lg border border-gray-200 dark:border-gray-700
4562
+ h-8 w-8 rounded-full bg-white dark:bg-slate-800
4563
+ shadow-lg border border-slate-200 dark:border-slate-700
4564
4564
  flex items-center justify-center
4565
4565
  transition-transform duration-200
4566
4566
  `,
4567
- children: isRefreshing ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-5 w-5 animate-spin motion-reduce:animate-none rounded-full border-2 border-gray-300 border-t-blue-500" }) : /* @__PURE__ */ jsxRuntime.jsx(
4567
+ children: isRefreshing ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-5 w-5 animate-spin motion-reduce:animate-none rounded-full border-2 border-slate-300 border-t-blue-500" }) : /* @__PURE__ */ jsxRuntime.jsx(
4568
4568
  "svg",
4569
4569
  {
4570
- className: "h-5 w-5 text-gray-600 dark:text-gray-400",
4570
+ className: "h-5 w-5 text-slate-600 dark:text-slate-400",
4571
4571
  style: { transform: `rotate(${rotation}deg)` },
4572
4572
  fill: "none",
4573
4573
  viewBox: "0 0 24 24",
@@ -4982,7 +4982,7 @@ function TableCell({ className, children, ...props }) {
4982
4982
  ),
4983
4983
  children: [
4984
4984
  href && /* @__PURE__ */ jsxRuntime.jsx(
4985
- chunkBHOT22QL_js.Link,
4985
+ chunkMXQ2EYG2_js.Link,
4986
4986
  {
4987
4987
  "data-row-link": true,
4988
4988
  href,
@@ -5039,7 +5039,7 @@ function SortableTableHeader({
5039
5039
  {
5040
5040
  initial: false,
5041
5041
  animate: { opacity: 1 },
5042
- transition: chunkBHOT22QL_js.getTransition(chunkBHOT22QL_js.springPresets.stiff),
5042
+ transition: chunkMXQ2EYG2_js.getTransition(chunkMXQ2EYG2_js.springPresets.stiff),
5043
5043
  className: "flex-shrink-0",
5044
5044
  children: direction === "asc" ? /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ChevronUpIcon, { className: "h-4 w-4" }) : direction === "desc" ? /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ChevronDownIcon, { className: "h-4 w-4" }) : /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ChevronUpDownIcon, { className: "h-4 w-4 opacity-40" })
5045
5045
  }
@@ -5092,7 +5092,7 @@ function TableEmptyState({
5092
5092
  {
5093
5093
  initial: { opacity: 0, y: 10 },
5094
5094
  animate: { opacity: 1, y: 0 },
5095
- transition: chunkBHOT22QL_js.getTransition(chunkBHOT22QL_js.springPresets.gentle),
5095
+ transition: chunkMXQ2EYG2_js.getTransition(chunkMXQ2EYG2_js.springPresets.gentle),
5096
5096
  className: "flex flex-col items-center gap-3",
5097
5097
  children: [
5098
5098
  icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-12 w-12 rounded-full bg-white/40 dark:bg-white/[0.04] flex items-center justify-center text-slate-400 dark:text-slate-500", children: icon }),
@@ -5122,7 +5122,7 @@ function AnimatedTableRow({
5122
5122
  animate: { opacity: 1, y: 0 },
5123
5123
  exit: { opacity: 0, x: -20 },
5124
5124
  transition: {
5125
- ...chunkBHOT22QL_js.getTransition(chunkBHOT22QL_js.springPresets.gentle),
5125
+ ...chunkMXQ2EYG2_js.getTransition(chunkMXQ2EYG2_js.springPresets.gentle),
5126
5126
  delay: index * 0.03
5127
5127
  },
5128
5128
  ...restProps,
@@ -5181,7 +5181,7 @@ function SelectableTableRow({
5181
5181
  "aria-label": "Select row",
5182
5182
  onClick: handleSelect,
5183
5183
  whileTap: { scale: 0.9 },
5184
- transition: chunkBHOT22QL_js.getTransition(chunkBHOT22QL_js.springPresets.stiff),
5184
+ transition: chunkMXQ2EYG2_js.getTransition(chunkMXQ2EYG2_js.springPresets.stiff),
5185
5185
  className: clsx4__default.default(
5186
5186
  "h-5 w-5 rounded-full border-2 flex items-center justify-center transition-colors",
5187
5187
  selected ? "bg-[#007AFF] dark:bg-[#0A84FF] border-[#007AFF] dark:border-[#0A84FF]" : "border-slate-300 dark:border-slate-600"
@@ -5192,7 +5192,7 @@ function SelectableTableRow({
5192
5192
  initial: { scale: 0 },
5193
5193
  animate: { scale: 1 },
5194
5194
  exit: { scale: 0 },
5195
- transition: chunkBHOT22QL_js.getTransition(chunkBHOT22QL_js.springPresets.bouncy),
5195
+ transition: chunkMXQ2EYG2_js.getTransition(chunkMXQ2EYG2_js.springPresets.bouncy),
5196
5196
  className: "h-3 w-3 text-white",
5197
5197
  fill: "none",
5198
5198
  viewBox: "0 0 24 24",
@@ -5236,7 +5236,7 @@ function EmptyState({
5236
5236
  {
5237
5237
  initial: { scale: 0.8, opacity: 0 },
5238
5238
  animate: { scale: 1, opacity: 1 },
5239
- transition: chunkBHOT22QL_js.springPresets.bouncy,
5239
+ transition: chunkMXQ2EYG2_js.springPresets.bouncy,
5240
5240
  className: "mx-auto mb-4",
5241
5241
  children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "inline-flex h-16 w-16 items-center justify-center rounded-full border border-white/60 bg-white/75 shadow-sm backdrop-blur-xl dark:border-white/12 dark:bg-white/8", children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { className: "h-8 w-8 text-slate-600 dark:text-slate-300" }) })
5242
5242
  }
@@ -5246,7 +5246,7 @@ function EmptyState({
5246
5246
  {
5247
5247
  initial: { y: 10, opacity: 0 },
5248
5248
  animate: { y: 0, opacity: 1 },
5249
- transition: { ...chunkBHOT22QL_js.springPresets.default, delay: 0.1 },
5249
+ transition: { ...chunkMXQ2EYG2_js.springPresets.default, delay: 0.1 },
5250
5250
  children: [
5251
5251
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-base font-semibold text-slate-900 dark:text-white", children: message }),
5252
5252
  description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-2 text-sm text-slate-500 dark:text-slate-400 max-w-sm mx-auto", children: description })
@@ -5258,9 +5258,9 @@ function EmptyState({
5258
5258
  {
5259
5259
  initial: { y: 10, opacity: 0 },
5260
5260
  animate: { y: 0, opacity: 1 },
5261
- transition: { ...chunkBHOT22QL_js.springPresets.default, delay: 0.2 },
5261
+ transition: { ...chunkMXQ2EYG2_js.springPresets.default, delay: 0.2 },
5262
5262
  className: "mt-6",
5263
- children: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { color: "ios-glass-blue", onClick: handleActionClick, children: action.label })
5263
+ children: /* @__PURE__ */ jsxRuntime.jsx(chunkMXQ2EYG2_js.Button, { color: "ios-glass-blue", onClick: handleActionClick, children: action.label })
5264
5264
  }
5265
5265
  )
5266
5266
  ]
@@ -5348,7 +5348,7 @@ function ErrorState({
5348
5348
  {
5349
5349
  initial: { scale: 0.8, opacity: 0 },
5350
5350
  animate: { scale: 1, opacity: 1 },
5351
- transition: chunkBHOT22QL_js.getTransition(chunkBHOT22QL_js.springPresets.bouncy),
5351
+ transition: chunkMXQ2EYG2_js.getTransition(chunkMXQ2EYG2_js.springPresets.bouncy),
5352
5352
  className: "mx-auto mb-4",
5353
5353
  children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: `inline-flex h-16 w-16 items-center justify-center rounded-full ${config.iconBg}`, children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { className: `h-8 w-8 ${config.iconColor}` }) })
5354
5354
  }
@@ -5358,7 +5358,7 @@ function ErrorState({
5358
5358
  {
5359
5359
  initial: { y: 10, opacity: 0 },
5360
5360
  animate: { y: 0, opacity: 1 },
5361
- transition: { ...chunkBHOT22QL_js.getTransition(chunkBHOT22QL_js.springPresets.default), delay: 0.1 },
5361
+ transition: { ...chunkMXQ2EYG2_js.getTransition(chunkMXQ2EYG2_js.springPresets.default), delay: 0.1 },
5362
5362
  children: [
5363
5363
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-lg font-semibold text-slate-900 dark:text-white", children: title || t(config.titleKey) }),
5364
5364
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-2 text-sm text-slate-500 dark:text-slate-400 max-w-sm mx-auto", children: message || t(config.messageKey) }),
@@ -5371,11 +5371,11 @@ function ErrorState({
5371
5371
  {
5372
5372
  initial: { y: 10, opacity: 0 },
5373
5373
  animate: { y: 0, opacity: 1 },
5374
- transition: { ...chunkBHOT22QL_js.getTransition(chunkBHOT22QL_js.springPresets.default), delay: 0.2 },
5374
+ transition: { ...chunkMXQ2EYG2_js.getTransition(chunkMXQ2EYG2_js.springPresets.default), delay: 0.2 },
5375
5375
  className: "mt-6 flex flex-col sm:flex-row items-center justify-center gap-3",
5376
5376
  children: [
5377
5377
  onRetry && /* @__PURE__ */ jsxRuntime.jsxs(
5378
- chunkBHOT22QL_js.Button,
5378
+ chunkMXQ2EYG2_js.Button,
5379
5379
  {
5380
5380
  color: "ios-glass-blue",
5381
5381
  onClick: handleRetry,
@@ -5389,7 +5389,7 @@ function ErrorState({
5389
5389
  }
5390
5390
  ),
5391
5391
  secondaryAction && /* @__PURE__ */ jsxRuntime.jsx(
5392
- chunkBHOT22QL_js.Button,
5392
+ chunkMXQ2EYG2_js.Button,
5393
5393
  {
5394
5394
  plain: true,
5395
5395
  onClick: () => {
@@ -5407,14 +5407,16 @@ function ErrorState({
5407
5407
  {
5408
5408
  initial: { y: 10, opacity: 0 },
5409
5409
  animate: { y: 0, opacity: 1 },
5410
- transition: { ...chunkBHOT22QL_js.getTransition(chunkBHOT22QL_js.springPresets.default), delay: 0.3 },
5410
+ transition: { ...chunkMXQ2EYG2_js.getTransition(chunkMXQ2EYG2_js.springPresets.default), delay: 0.3 },
5411
5411
  className: "mt-6",
5412
5412
  children: [
5413
5413
  /* @__PURE__ */ jsxRuntime.jsx(
5414
- "button",
5414
+ chunkMXQ2EYG2_js.Button,
5415
5415
  {
5416
+ type: "button",
5417
+ plain: true,
5418
+ size: "xs",
5416
5419
  onClick: toggleDetails,
5417
- className: "text-xs text-slate-400 dark:text-slate-500 hover:text-slate-600 dark:hover:text-slate-400 transition-colors",
5418
5420
  children: showErrorDetails ? t("hideDetails") : t("showDetails")
5419
5421
  }
5420
5422
  ),
@@ -5424,7 +5426,7 @@ function ErrorState({
5424
5426
  initial: { height: 0, opacity: 0 },
5425
5427
  animate: { height: "auto", opacity: 1 },
5426
5428
  exit: { height: 0, opacity: 0 },
5427
- transition: chunkBHOT22QL_js.getTransition(chunkBHOT22QL_js.springPresets.gentle),
5429
+ transition: chunkMXQ2EYG2_js.getTransition(chunkMXQ2EYG2_js.springPresets.gentle),
5428
5430
  className: "overflow-hidden",
5429
5431
  children: /* @__PURE__ */ jsxRuntime.jsx("pre", { className: "mt-3 p-3 bg-white/40 dark:bg-white/[0.04] rounded-lg text-xs text-left text-slate-600 dark:text-slate-400 font-mono overflow-x-auto max-h-32", children: details })
5430
5432
  }
@@ -5476,7 +5478,7 @@ function NoResultsState({
5476
5478
  {
5477
5479
  initial: { scale: 0.8, opacity: 0 },
5478
5480
  animate: { scale: 1, opacity: 1 },
5479
- transition: chunkBHOT22QL_js.getTransition(chunkBHOT22QL_js.springPresets.bouncy),
5481
+ transition: chunkMXQ2EYG2_js.getTransition(chunkMXQ2EYG2_js.springPresets.bouncy),
5480
5482
  className: "mx-auto mb-4",
5481
5483
  children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "inline-flex h-16 w-16 items-center justify-center rounded-full border border-white/60 bg-white/75 shadow-sm backdrop-blur-xl dark:border-white/12 dark:bg-white/8", children: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.DocumentMagnifyingGlassIcon, { className: "h-8 w-8 text-slate-600 dark:text-slate-300" }) })
5482
5484
  }
@@ -5486,7 +5488,7 @@ function NoResultsState({
5486
5488
  {
5487
5489
  initial: { y: 10, opacity: 0 },
5488
5490
  animate: { y: 0, opacity: 1 },
5489
- transition: { ...chunkBHOT22QL_js.getTransition(chunkBHOT22QL_js.springPresets.default), delay: 0.1 },
5491
+ transition: { ...chunkMXQ2EYG2_js.getTransition(chunkMXQ2EYG2_js.springPresets.default), delay: 0.1 },
5490
5492
  children: [
5491
5493
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-lg font-semibold text-slate-900 dark:text-white", children: t("noResultsFound") }),
5492
5494
  searchTerm && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-2 text-sm text-slate-500 dark:text-slate-400", children: t("noResultsFor", { searchTerm }) }),
@@ -5506,10 +5508,10 @@ function NoResultsState({
5506
5508
  {
5507
5509
  initial: { y: 10, opacity: 0 },
5508
5510
  animate: { y: 0, opacity: 1 },
5509
- transition: { ...chunkBHOT22QL_js.getTransition(chunkBHOT22QL_js.springPresets.default), delay: 0.2 },
5511
+ transition: { ...chunkMXQ2EYG2_js.getTransition(chunkMXQ2EYG2_js.springPresets.default), delay: 0.2 },
5510
5512
  className: "mt-6",
5511
5513
  children: /* @__PURE__ */ jsxRuntime.jsx(
5512
- chunkBHOT22QL_js.Button,
5514
+ chunkMXQ2EYG2_js.Button,
5513
5515
  {
5514
5516
  color: "ios-glass-blue",
5515
5517
  onClick: () => {
@@ -5544,7 +5546,7 @@ function NoDataState({
5544
5546
  {
5545
5547
  initial: { scale: 0.8, opacity: 0 },
5546
5548
  animate: { scale: 1, opacity: 1 },
5547
- transition: chunkBHOT22QL_js.getTransition(chunkBHOT22QL_js.springPresets.bouncy),
5549
+ transition: chunkMXQ2EYG2_js.getTransition(chunkMXQ2EYG2_js.springPresets.bouncy),
5548
5550
  className: "mx-auto mb-4",
5549
5551
  children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "inline-flex h-16 w-16 items-center justify-center rounded-full border border-white/60 bg-white/75 shadow-sm backdrop-blur-xl dark:border-white/12 dark:bg-white/8", children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { className: "h-8 w-8 text-slate-600 dark:text-slate-300" }) })
5550
5552
  }
@@ -5554,7 +5556,7 @@ function NoDataState({
5554
5556
  {
5555
5557
  initial: { y: 10, opacity: 0 },
5556
5558
  animate: { y: 0, opacity: 1 },
5557
- transition: { ...chunkBHOT22QL_js.getTransition(chunkBHOT22QL_js.springPresets.default), delay: 0.1 },
5559
+ transition: { ...chunkMXQ2EYG2_js.getTransition(chunkMXQ2EYG2_js.springPresets.default), delay: 0.1 },
5558
5560
  children: [
5559
5561
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-base font-semibold text-slate-900 dark:text-white", children: resolvedTitle }),
5560
5562
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-2 text-sm text-slate-500 dark:text-slate-400 max-w-sm mx-auto", children: resolvedMessage })
@@ -5566,10 +5568,10 @@ function NoDataState({
5566
5568
  {
5567
5569
  initial: { y: 10, opacity: 0 },
5568
5570
  animate: { y: 0, opacity: 1 },
5569
- transition: { ...chunkBHOT22QL_js.getTransition(chunkBHOT22QL_js.springPresets.default), delay: 0.2 },
5571
+ transition: { ...chunkMXQ2EYG2_js.getTransition(chunkMXQ2EYG2_js.springPresets.default), delay: 0.2 },
5570
5572
  className: "mt-6",
5571
5573
  children: /* @__PURE__ */ jsxRuntime.jsx(
5572
- chunkBHOT22QL_js.Button,
5574
+ chunkMXQ2EYG2_js.Button,
5573
5575
  {
5574
5576
  color: "ios-glass-blue",
5575
5577
  onClick: () => {
@@ -5642,7 +5644,7 @@ function DynamicIsland({
5642
5644
  layout: true,
5643
5645
  initial: false,
5644
5646
  animate: sizeVariants[internalState],
5645
- transition: chunkBHOT22QL_js.springPresets.bouncy,
5647
+ transition: chunkMXQ2EYG2_js.springPresets.bouncy,
5646
5648
  onClick: handleTap,
5647
5649
  children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-full w-full overflow-hidden bg-black rounded-[inherit]", children: /* @__PURE__ */ jsxRuntime.jsx(framerMotion.AnimatePresence, { mode: "wait", children: /* @__PURE__ */ jsxRuntime.jsx(
5648
5650
  framerMotion.motion.div,
@@ -5936,8 +5938,8 @@ function NotificationDrawer({
5936
5938
  ] }),
5937
5939
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mx-5 h-px bg-gradient-to-r from-transparent via-gray-200/80 to-transparent dark:via-white/10" }),
5938
5940
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-1 overflow-y-auto px-5 py-4", children: history.length === 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center justify-center py-20 text-center", children: [
5939
- /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.BellIcon, { className: "h-12 w-12 text-gray-300 dark:text-gray-600 mb-3" }),
5940
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm font-medium text-gray-400 dark:text-gray-500", children: t("empty") })
5941
+ /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.BellIcon, { className: "h-12 w-12 text-slate-300 dark:text-slate-600 mb-3" }),
5942
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm font-medium text-slate-400 dark:text-slate-500", children: t("empty") })
5941
5943
  ] }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-2.5", children: /* @__PURE__ */ jsxRuntime.jsx(framerMotion.AnimatePresence, { initial: false, children: history.map((item) => {
5942
5944
  const style = NOTIFICATION_TYPE_STYLES[item.type];
5943
5945
  const Icon = style.icon;
@@ -5952,16 +5954,16 @@ function NotificationDrawer({
5952
5954
  children: [
5953
5955
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: `mt-0.5 flex-shrink-0 ${style.color}`, children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { className: "h-5 w-5" }) }),
5954
5956
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-1 min-w-0", children: [
5955
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm font-medium text-gray-900 dark:text-white truncate", children: item.title }),
5956
- item.message ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-0.5 text-xs text-gray-500 dark:text-gray-400 line-clamp-2", children: item.message }) : null,
5957
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1.5 text-[11px] text-gray-400 dark:text-gray-500", children: formatTimeAgo(item.timestamp, t) })
5957
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm font-medium text-slate-900 dark:text-white truncate", children: item.title }),
5958
+ item.message ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-0.5 text-xs text-slate-500 dark:text-slate-400 line-clamp-2", children: item.message }) : null,
5959
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1.5 text-[11px] text-slate-400 dark:text-slate-500", children: formatTimeAgo(item.timestamp, t) })
5958
5960
  ] }),
5959
5961
  /* @__PURE__ */ jsxRuntime.jsx(
5960
5962
  "button",
5961
5963
  {
5962
5964
  type: "button",
5963
5965
  onClick: () => onRemove(item.id),
5964
- className: "absolute right-2.5 top-2.5 rounded-lg p-1 text-gray-300 opacity-0 transition-all group-hover:opacity-100 group-focus-within:opacity-100 hover:text-gray-500 active:scale-95 dark:text-gray-600 dark:hover:text-gray-400",
5966
+ className: "absolute right-2.5 top-2.5 rounded-lg p-1 text-slate-300 opacity-0 transition-all group-hover:opacity-100 group-focus-within:opacity-100 hover:text-slate-500 active:scale-95 dark:text-slate-600 dark:hover:text-slate-400",
5965
5967
  "aria-label": t("dismiss"),
5966
5968
  children: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.XMarkIcon, { className: "h-3.5 w-3.5" })
5967
5969
  }
@@ -6171,17 +6173,16 @@ function AccentBar({ gradient, className }) {
6171
6173
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `h-1.5 w-full bg-gradient-to-r ${gradient} ${className ?? ""}` });
6172
6174
  }
6173
6175
  function CloseBtn({ onClick, label }) {
6174
- return /* @__PURE__ */ jsxRuntime.jsx(
6175
- "button",
6176
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute right-4 top-4 z-10", "data-testid": "modal-close", children: /* @__PURE__ */ jsxRuntime.jsx(
6177
+ chunkMXQ2EYG2_js.IconButton,
6176
6178
  {
6177
- type: "button",
6179
+ label,
6180
+ variant: "ghost",
6181
+ size: "sm",
6178
6182
  onClick,
6179
- "aria-label": label,
6180
- "data-testid": "modal-close",
6181
- className: "absolute right-4 top-4 z-10 inline-flex h-9 w-9 items-center justify-center rounded-xl text-slate-500 transition hover:bg-white/40 hover:text-slate-700 dark:text-slate-300 dark:hover:bg-white/[0.08] dark:hover:text-white focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-2",
6182
- children: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.XMarkIcon, { className: "h-5 w-5" })
6183
+ icon: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.XMarkIcon, { className: "h-5 w-5" })
6183
6184
  }
6184
- );
6185
+ ) });
6185
6186
  }
6186
6187
  function SidebarLayout({
6187
6188
  sidebarElement,
@@ -6392,30 +6393,33 @@ function GlassModal({
6392
6393
  panelClassName,
6393
6394
  contentClassName,
6394
6395
  overlayTestId,
6395
- panelTestId
6396
+ panelTestId,
6397
+ closeOnBackdrop = true
6396
6398
  }) {
6397
6399
  const hasTitle = !!title;
6400
+ const dialogOnClose = closeOnBackdrop ? onClose : () => {
6401
+ };
6398
6402
  const sidebarElement = React9.Children.toArray(children).find(
6399
6403
  (c) => React9.isValidElement(c) && isSlotType(c, SIDEBAR_TYPE)
6400
6404
  );
6401
6405
  const footerElement = findSlot(children, FOOTER_TYPE);
6402
6406
  const nonSlotChildren = filterNonSlots(children);
6403
6407
  const resolvedFooter = footer ?? (footerElement ? footerElement.props.children : void 0) ?? (showFormFooter ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col sm:flex-row justify-end gap-2 sm:gap-3", children: [
6404
- /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", onClick: onClose, disabled: isLoading, outline: true, className: "w-full sm:w-auto", "data-testid": "form-modal-cancel", children: cancelLabel ?? "Cancel" }),
6405
- /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "submit", disabled: submitDisabled, loading: isLoading, loadingText: submitLabel, color: "ios-glass-blue", className: "w-full sm:w-auto", "data-testid": "form-modal-submit", children: submitLabel ?? "Save" })
6408
+ /* @__PURE__ */ jsxRuntime.jsx(chunkMXQ2EYG2_js.Button, { type: "button", onClick: onClose, disabled: isLoading, outline: true, className: "w-full sm:w-auto", "data-testid": "form-modal-cancel", children: cancelLabel ?? "Cancel" }),
6409
+ /* @__PURE__ */ jsxRuntime.jsx(chunkMXQ2EYG2_js.Button, { type: "submit", disabled: submitDisabled, loading: isLoading, loadingText: submitLabel, color: "ios-glass-blue", className: "w-full sm:w-auto", "data-testid": "form-modal-submit", children: submitLabel ?? "Save" })
6406
6410
  ] }) : void 0);
6407
6411
  const handleSubmit = React9.useCallback((event) => {
6408
6412
  event.preventDefault();
6409
6413
  onSubmit?.(event);
6410
6414
  }, [onSubmit]);
6411
6415
  if (!hasTitle) {
6412
- return /* @__PURE__ */ jsxRuntime.jsxs(Headless3.Dialog, { open, onClose, className: `relative ${zIndex}`, children: [
6416
+ return /* @__PURE__ */ jsxRuntime.jsxs(Headless3.Dialog, { open, onClose: dialogOnClose, className: `relative ${zIndex}`, children: [
6413
6417
  /* @__PURE__ */ jsxRuntime.jsx(Headless3.DialogBackdrop, { className: "fixed inset-0 bg-slate-900/40 backdrop-blur-md dark:bg-black/50", "data-testid": overlayTestId }),
6414
6418
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: contentClassName ?? "fixed inset-0 flex items-center justify-center overflow-y-auto p-3 sm:p-5 lg:p-6", children: /* @__PURE__ */ jsxRuntime.jsx(Headless3.DialogPanel, { className: panelClassName ?? "rounded-2xl", "data-testid": panelTestId, children }) })
6415
6419
  ] });
6416
6420
  }
6417
6421
  if (sidebar && !sidebarElement) {
6418
- return /* @__PURE__ */ jsxRuntime.jsxs(Headless3.Dialog, { open, onClose, className: `relative ${zIndex}`, "aria-labelledby": "modal-title", children: [
6422
+ return /* @__PURE__ */ jsxRuntime.jsxs(Headless3.Dialog, { open, onClose: dialogOnClose, className: `relative ${zIndex}`, "aria-labelledby": "modal-title", children: [
6419
6423
  /* @__PURE__ */ jsxRuntime.jsx(Headless3.DialogBackdrop, { className: "fixed inset-0 bg-slate-900/40 backdrop-blur-md dark:bg-black/50", "data-testid": overlayTestId }),
6420
6424
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "fixed inset-0 flex items-center justify-center overflow-y-auto p-2 sm:p-4 lg:p-6", children: /* @__PURE__ */ jsxRuntime.jsx(Headless3.DialogPanel, { className: `w-full max-w-[90vw] xl:max-w-[1400px] overflow-hidden rounded-2xl liquid-surface-strong shadow-[0_40px_100px_-30px_rgba(0,0,0,0.55)] ${className}`, "data-testid": panelTestId, children: /* @__PURE__ */ jsxRuntime.jsx(
6421
6425
  PropBasedSidebarLayout,
@@ -6435,7 +6439,7 @@ function GlassModal({
6435
6439
  ] });
6436
6440
  }
6437
6441
  if (sidebarElement) {
6438
- return /* @__PURE__ */ jsxRuntime.jsxs(Headless3.Dialog, { open, onClose, className: `relative ${zIndex}`, "aria-labelledby": "modal-title", children: [
6442
+ return /* @__PURE__ */ jsxRuntime.jsxs(Headless3.Dialog, { open, onClose: dialogOnClose, className: `relative ${zIndex}`, "aria-labelledby": "modal-title", children: [
6439
6443
  /* @__PURE__ */ jsxRuntime.jsx(Headless3.DialogBackdrop, { className: "fixed inset-0 bg-slate-900/40 backdrop-blur-md dark:bg-black/50", "data-testid": overlayTestId }),
6440
6444
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "fixed inset-0 flex items-center justify-center overflow-y-auto p-2 sm:p-4 lg:p-6", children: /* @__PURE__ */ jsxRuntime.jsx(Headless3.DialogPanel, { className: `w-full max-w-[90vw] xl:max-w-[1400px] overflow-hidden rounded-2xl liquid-surface-strong shadow-[0_40px_100px_-30px_rgba(0,0,0,0.55)] ${className}`, "data-testid": panelTestId, children: /* @__PURE__ */ jsxRuntime.jsx(
6441
6445
  SidebarLayout,
@@ -6473,7 +6477,7 @@ function GlassModal({
6473
6477
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "max-h-[72vh] overflow-y-auto px-5 pb-5 sm:px-8 sm:pb-8", children: nonSlotChildren }),
6474
6478
  resolvedFooter && /* @__PURE__ */ jsxRuntime.jsx("div", { "data-testid": "modal-footer", className: "border-t border-white/20 px-5 py-4 dark:border-white/10 sm:px-8", children: resolvedFooter })
6475
6479
  ] });
6476
- return /* @__PURE__ */ jsxRuntime.jsxs(Headless3.Dialog, { open, onClose, className: `relative ${zIndex}`, "aria-labelledby": "modal-title", children: [
6480
+ return /* @__PURE__ */ jsxRuntime.jsxs(Headless3.Dialog, { open, onClose: dialogOnClose, className: `relative ${zIndex}`, "aria-labelledby": "modal-title", children: [
6477
6481
  /* @__PURE__ */ jsxRuntime.jsx(Headless3.DialogBackdrop, { className: "fixed inset-0 bg-slate-900/40 backdrop-blur-md dark:bg-black/50", "data-testid": overlayTestId }),
6478
6482
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "fixed inset-0 overflow-y-auto p-3 sm:p-6", children: /* @__PURE__ */ jsxRuntime.jsx(Headless3.DialogPanel, { className: `liquid-surface-strong w-full overflow-hidden rounded-2xl mx-auto mt-[4vh] sm:mt-[8vh] ${SIZE_CLASSES[maxWidth]} ${className}`, "data-testid": panelTestId, children: onSubmit ? /* @__PURE__ */ jsxRuntime.jsx("form", { onSubmit: handleSubmit, children: inner }) : inner }) })
6479
6483
  ] });
@@ -6496,7 +6500,7 @@ function Text({ className, ...props }) {
6496
6500
  }
6497
6501
  function TextLink({ className, ...props }) {
6498
6502
  return /* @__PURE__ */ jsxRuntime.jsx(
6499
- chunkBHOT22QL_js.Link,
6503
+ chunkMXQ2EYG2_js.Link,
6500
6504
  {
6501
6505
  ...props,
6502
6506
  className: clsx4__default.default(
@@ -7050,8 +7054,8 @@ function DatePicker({
7050
7054
  type: "button",
7051
7055
  onClick: handlePrevMonth,
7052
7056
  "aria-label": t("previousMonth"),
7053
- className: "p-1.5 rounded-lg hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors",
7054
- children: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ChevronLeftIcon, { className: "h-5 w-5 text-gray-500 dark:text-gray-400" })
7057
+ className: "p-1.5 rounded-lg hover:bg-white/40 dark:hover:bg-white/[0.04] transition-colors",
7058
+ children: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ChevronLeftIcon, { className: "h-5 w-5 text-slate-500 dark:text-slate-400" })
7055
7059
  }
7056
7060
  ),
7057
7061
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -7059,7 +7063,7 @@ function DatePicker({
7059
7063
  {
7060
7064
  type: "button",
7061
7065
  onClick: () => setViewMode("year-month"),
7062
- className: "px-3 py-1 rounded-lg font-semibold text-gray-900 dark:text-white hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors capitalize",
7066
+ className: "px-3 py-1 rounded-lg font-semibold text-slate-900 dark:text-white hover:bg-white/40 dark:hover:bg-white/[0.04] transition-colors capitalize",
7063
7067
  children: monthYearLabel
7064
7068
  }
7065
7069
  ),
@@ -7069,15 +7073,15 @@ function DatePicker({
7069
7073
  type: "button",
7070
7074
  onClick: handleNextMonth,
7071
7075
  "aria-label": t("nextMonth"),
7072
- className: "p-1.5 rounded-lg hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors",
7073
- children: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ChevronRightIcon, { className: "h-5 w-5 text-gray-500 dark:text-gray-400" })
7076
+ className: "p-1.5 rounded-lg hover:bg-white/40 dark:hover:bg-white/[0.04] transition-colors",
7077
+ children: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ChevronRightIcon, { className: "h-5 w-5 text-slate-500 dark:text-slate-400" })
7074
7078
  }
7075
7079
  )
7076
7080
  ] }),
7077
7081
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-7 gap-0.5 mb-1", children: dayNames.map((name, i) => /* @__PURE__ */ jsxRuntime.jsx(
7078
7082
  "div",
7079
7083
  {
7080
- className: "text-center text-xs font-medium text-gray-400 dark:text-gray-500 uppercase py-1",
7084
+ className: "text-center text-xs font-medium text-slate-400 dark:text-slate-500 uppercase py-1",
7081
7085
  children: name
7082
7086
  },
7083
7087
  `${name}-${i}`
@@ -7098,9 +7102,9 @@ function DatePicker({
7098
7102
  onClick: () => handleSelectDay(day),
7099
7103
  className: `
7100
7104
  h-9 w-full rounded-lg text-sm font-medium transition-colors
7101
- ${disabled ? "text-gray-300 dark:text-gray-600 cursor-not-allowed" : ""}
7102
- ${!disabled && !isSelected && isCurrentMonth ? "text-gray-800 dark:text-gray-200 hover:bg-indigo-500/10 hover:text-indigo-600 dark:hover:text-indigo-400" : ""}
7103
- ${!disabled && !isSelected && !isCurrentMonth ? "text-gray-400 dark:text-gray-500 hover:bg-gray-100 dark:hover:bg-gray-700" : ""}
7105
+ ${disabled ? "text-slate-300 dark:text-slate-600 cursor-not-allowed" : ""}
7106
+ ${!disabled && !isSelected && isCurrentMonth ? "text-slate-800 dark:text-slate-200 hover:bg-indigo-500/10 hover:text-indigo-600 dark:hover:text-indigo-400" : ""}
7107
+ ${!disabled && !isSelected && !isCurrentMonth ? "text-slate-400 dark:text-slate-500 hover:bg-white/40 dark:hover:bg-white/[0.04]" : ""}
7104
7108
  ${isSelected ? "bg-indigo-500 text-white hover:bg-indigo-600" : ""}
7105
7109
  ${isToday && !isSelected ? "ring-1 ring-indigo-400 dark:ring-indigo-500" : ""}
7106
7110
  `,
@@ -7109,7 +7113,7 @@ function DatePicker({
7109
7113
  day.toISOString()
7110
7114
  );
7111
7115
  }) }),
7112
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-3 pt-3 border-t border-gray-200/60 dark:border-gray-700/60 text-center", children: /* @__PURE__ */ jsxRuntime.jsx(
7116
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-3 pt-3 liquid-divider border-t text-center", children: /* @__PURE__ */ jsxRuntime.jsx(
7113
7117
  "button",
7114
7118
  {
7115
7119
  type: "button",
@@ -7130,19 +7134,19 @@ function DatePicker({
7130
7134
  type: "button",
7131
7135
  onClick: () => handleSelectYear(viewDate.getFullYear() - 1),
7132
7136
  "aria-label": t("previousYear"),
7133
- className: "p-1.5 rounded-lg hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors",
7134
- children: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ChevronLeftIcon, { className: "h-5 w-5 text-gray-500 dark:text-gray-400" })
7137
+ className: "p-1.5 rounded-lg hover:bg-white/40 dark:hover:bg-white/[0.04] transition-colors",
7138
+ children: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ChevronLeftIcon, { className: "h-5 w-5 text-slate-500 dark:text-slate-400" })
7135
7139
  }
7136
7140
  ),
7137
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-semibold text-lg text-gray-900 dark:text-white", children: viewDate.getFullYear() }),
7141
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-semibold text-lg text-slate-900 dark:text-white", children: viewDate.getFullYear() }),
7138
7142
  /* @__PURE__ */ jsxRuntime.jsx(
7139
7143
  "button",
7140
7144
  {
7141
7145
  type: "button",
7142
7146
  onClick: () => handleSelectYear(viewDate.getFullYear() + 1),
7143
7147
  "aria-label": t("nextYear"),
7144
- className: "p-1.5 rounded-lg hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors",
7145
- children: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ChevronRightIcon, { className: "h-5 w-5 text-gray-500 dark:text-gray-400" })
7148
+ className: "p-1.5 rounded-lg hover:bg-white/40 dark:hover:bg-white/[0.04] transition-colors",
7149
+ children: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ChevronRightIcon, { className: "h-5 w-5 text-slate-500 dark:text-slate-400" })
7146
7150
  }
7147
7151
  )
7148
7152
  ] }),
@@ -7157,23 +7161,23 @@ function DatePicker({
7157
7161
  onClick: () => handleSelectMonth(index),
7158
7162
  className: `
7159
7163
  px-2 py-2.5 text-sm rounded-lg transition-colors capitalize font-medium
7160
- ${isFutureMonth ? "text-gray-300 dark:text-gray-600 cursor-not-allowed" : ""}
7164
+ ${isFutureMonth ? "text-slate-300 dark:text-slate-600 cursor-not-allowed" : ""}
7161
7165
  ${!isFutureMonth && isSelectedMonth ? "bg-indigo-500 text-white" : ""}
7162
- ${!isFutureMonth && !isSelectedMonth ? "text-gray-700 dark:text-gray-200 hover:bg-indigo-500/10 hover:text-indigo-600 dark:hover:text-indigo-400" : ""}
7166
+ ${!isFutureMonth && !isSelectedMonth ? "text-slate-700 dark:text-slate-200 hover:bg-indigo-500/10 hover:text-indigo-600 dark:hover:text-indigo-400" : ""}
7163
7167
  `,
7164
7168
  children: name
7165
7169
  },
7166
7170
  name
7167
7171
  );
7168
7172
  }) }),
7169
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-4 pt-3 border-t border-gray-200/60 dark:border-gray-700/60", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap gap-1 justify-center", children: yearRange.slice(-7).map((year) => /* @__PURE__ */ jsxRuntime.jsx(
7173
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-4 pt-3 liquid-divider border-t", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap gap-1 justify-center", children: yearRange.slice(-7).map((year) => /* @__PURE__ */ jsxRuntime.jsx(
7170
7174
  "button",
7171
7175
  {
7172
7176
  type: "button",
7173
7177
  onClick: () => handleSelectYear(year),
7174
7178
  className: `
7175
7179
  px-2 py-1 text-xs rounded-lg transition-colors
7176
- ${viewDate.getFullYear() === year ? "bg-indigo-100 dark:bg-indigo-900/50 text-indigo-700 dark:text-indigo-300 font-medium" : "text-gray-500 dark:text-gray-400 hover:bg-gray-100 dark:hover:bg-gray-700"}
7180
+ ${viewDate.getFullYear() === year ? "bg-indigo-100 dark:bg-indigo-900/50 text-indigo-700 dark:text-indigo-300 font-medium" : "text-slate-500 dark:text-slate-400 hover:bg-white/40 dark:hover:bg-white/[0.04]"}
7177
7181
  `,
7178
7182
  children: year
7179
7183
  },
@@ -7189,7 +7193,7 @@ function DatePicker({
7189
7193
  }
7190
7194
  ) })
7191
7195
  ] }),
7192
- /* @__PURE__ */ jsxRuntime.jsx(Popover__namespace.Arrow, { className: "fill-white/70 dark:fill-gray-800/70" })
7196
+ /* @__PURE__ */ jsxRuntime.jsx(Popover__namespace.Arrow, { className: "fill-white/70 dark:fill-slate-800/70" })
7193
7197
  ]
7194
7198
  }
7195
7199
  ) })
@@ -7419,7 +7423,7 @@ function PageHeading({
7419
7423
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1", children: [
7420
7424
  breadcrumbs?.length ? /* @__PURE__ */ jsxRuntime.jsx("nav", { "aria-label": t("breadcrumb"), className: "mb-2", children: /* @__PURE__ */ jsxRuntime.jsx("ol", { className: "flex items-center gap-2 text-xs text-gray-500 dark:text-gray-400", children: breadcrumbs.map((crumb, index) => /* @__PURE__ */ jsxRuntime.jsxs("li", { className: "flex items-center gap-2", children: [
7421
7425
  index > 0 ? /* @__PURE__ */ jsxRuntime.jsx(solid.ChevronRightIcon, { className: "h-4 w-4", "aria-hidden": "true" }) : null,
7422
- /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Link, { href: crumb.href, className: "hover:text-gray-800 dark:hover:text-white", children: crumb.name })
7426
+ /* @__PURE__ */ jsxRuntime.jsx(chunkMXQ2EYG2_js.Link, { href: crumb.href, className: "hover:text-gray-800 dark:hover:text-white", children: crumb.name })
7423
7427
  ] }, `${crumb.href}-${crumb.name}`)) }) }) : null,
7424
7428
  /* @__PURE__ */ jsxRuntime.jsx(
7425
7429
  HeroBlock,
@@ -7490,7 +7494,7 @@ function FormInput({
7490
7494
  required ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ml-0.5 text-red-500", children: "*" }) : null
7491
7495
  ] }) : null,
7492
7496
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: wrapperClass(error), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `relative flex items-center ${sizeClasses2[inputSize]} ${className}`, children: [
7493
- icon ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "mr-2 text-gray-400 dark:text-gray-500", "aria-hidden": "true", children: icon }) : null,
7497
+ icon ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "mr-2 text-slate-400 dark:text-slate-500", "aria-hidden": "true", children: icon }) : null,
7494
7498
  /* @__PURE__ */ jsxRuntime.jsx(
7495
7499
  "input",
7496
7500
  {
@@ -7499,7 +7503,7 @@ function FormInput({
7499
7503
  required,
7500
7504
  "aria-invalid": error ? true : false,
7501
7505
  "aria-describedby": describedBy,
7502
- className: "w-full bg-transparent text-gray-900 placeholder:text-slate-500 focus:outline-none dark:text-white dark:placeholder:text-gray-500",
7506
+ className: "w-full bg-transparent text-slate-900 placeholder:text-slate-500 focus:outline-none dark:text-white dark:placeholder:text-slate-500",
7503
7507
  onChange: (event) => onValueChange?.(event.target.value)
7504
7508
  }
7505
7509
  )
@@ -7535,7 +7539,7 @@ function FormTextarea({
7535
7539
  required,
7536
7540
  "aria-invalid": error ? true : void 0,
7537
7541
  "aria-describedby": describedBy,
7538
- className: `w-full resize-y bg-transparent px-3.5 py-2.5 text-gray-900 placeholder:text-slate-500 focus:outline-none dark:text-white dark:placeholder:text-gray-500 ${className}`,
7542
+ className: `w-full resize-y bg-transparent px-3.5 py-2.5 text-slate-900 placeholder:text-slate-500 focus:outline-none dark:text-white dark:placeholder:text-slate-500 ${className}`,
7539
7543
  onChange: (event) => onValueChange?.(event.target.value)
7540
7544
  }
7541
7545
  ) }),
@@ -7586,7 +7590,7 @@ function FormPriceInput({
7586
7590
  /* @__PURE__ */ jsxRuntime.jsx(
7587
7591
  "span",
7588
7592
  {
7589
- className: `absolute top-1/2 -translate-y-1/2 text-gray-400 dark:text-gray-500 pointer-events-none select-none ${sizes3.symbol}`,
7593
+ className: `absolute top-1/2 -translate-y-1/2 text-slate-400 dark:text-slate-500 pointer-events-none select-none ${sizes3.symbol}`,
7590
7594
  "aria-hidden": "true",
7591
7595
  children: currencySymbol
7592
7596
  }
@@ -7607,7 +7611,7 @@ function FormPriceInput({
7607
7611
  "aria-invalid": error ? true : false,
7608
7612
  "aria-describedby": describedBy,
7609
7613
  "aria-label": label ? `${label} in ${currencySymbol}` : void 0,
7610
- className: `w-full bg-transparent tabular-nums ${sizes3.input} ${sizes3.padding} text-gray-900 placeholder:text-slate-500 focus:outline-none dark:text-white dark:placeholder:text-gray-500 ${colorClass ?? ""} ${className}`
7614
+ className: `w-full bg-transparent tabular-nums ${sizes3.input} ${sizes3.padding} text-slate-900 placeholder:text-slate-500 focus:outline-none dark:text-white dark:placeholder:text-slate-500 ${colorClass ?? ""} ${className}`
7611
7615
  }
7612
7616
  )
7613
7617
  ] }) }),
@@ -7643,7 +7647,7 @@ function FormSelect({
7643
7647
  required,
7644
7648
  "aria-invalid": error ? true : void 0,
7645
7649
  "aria-describedby": describedBy,
7646
- className: `w-full bg-transparent ${sizeClasses2[inputSize]} text-gray-900 focus:outline-none dark:text-white ${className}`,
7650
+ className: `w-full bg-transparent ${sizeClasses2[inputSize]} text-slate-900 focus:outline-none dark:text-white ${className}`,
7647
7651
  onChange: (event) => onValueChange?.(event.target.value),
7648
7652
  children: options.map((option) => /* @__PURE__ */ jsxRuntime.jsx("option", { value: option.value, children: option.label }, option.value))
7649
7653
  }
@@ -7684,8 +7688,8 @@ function FormActions({
7684
7688
  className
7685
7689
  }) {
7686
7690
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx4__default.default("flex justify-end gap-2 border-t border-gray-200 pt-4 dark:border-gray-700", className), children: [
7687
- /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", outline: true, onClick: onCancel, children: cancelLabel }),
7688
- /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { type: "button", onClick: onSave, disabled: saveDisabled, children: saveLabel })
7691
+ /* @__PURE__ */ jsxRuntime.jsx(chunkMXQ2EYG2_js.Button, { type: "button", outline: true, onClick: onCancel, children: cancelLabel }),
7692
+ /* @__PURE__ */ jsxRuntime.jsx(chunkMXQ2EYG2_js.Button, { type: "button", onClick: onSave, disabled: saveDisabled, children: saveLabel })
7689
7693
  ] });
7690
7694
  }
7691
7695
  function FormToggle({
@@ -7827,7 +7831,7 @@ function BaseForm({
7827
7831
  children,
7828
7832
  showFooter && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-2 pt-4", children: [
7829
7833
  /* @__PURE__ */ jsxRuntime.jsxs(
7830
- chunkBHOT22QL_js.Button,
7834
+ chunkMXQ2EYG2_js.Button,
7831
7835
  {
7832
7836
  type: "submit",
7833
7837
  color: "ios-glass-blue",
@@ -7839,7 +7843,7 @@ function BaseForm({
7839
7843
  }
7840
7844
  ),
7841
7845
  onCancel && /* @__PURE__ */ jsxRuntime.jsx(
7842
- chunkBHOT22QL_js.Button,
7846
+ chunkMXQ2EYG2_js.Button,
7843
7847
  {
7844
7848
  type: "button",
7845
7849
  outline: true,
@@ -7860,9 +7864,9 @@ function ExpandableHistoryList({
7860
7864
  className = "space-y-3"
7861
7865
  }) {
7862
7866
  const [expandedItemId, setExpandedItemId] = React9.useState(null);
7863
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className, children: isLoading ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "py-6 text-center text-sm text-gray-500 dark:text-gray-400", children: loadingLabel }) : items.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "py-6 text-center text-sm text-gray-500 dark:text-gray-400", children: emptyLabel }) : items.map((item) => {
7867
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className, children: isLoading ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "py-6 text-center text-sm text-slate-500 dark:text-slate-400", children: loadingLabel }) : items.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "py-6 text-center text-sm text-gray-500 dark:text-gray-400", children: emptyLabel }) : items.map((item) => {
7864
7868
  const isExpanded = expandedItemId === item.id;
7865
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-xl border border-gray-200/80 dark:border-gray-700/80", children: [
7869
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-xl border border-slate-200/80 dark:border-slate-700/80", children: [
7866
7870
  /* @__PURE__ */ jsxRuntime.jsxs(
7867
7871
  "button",
7868
7872
  {
@@ -7870,17 +7874,17 @@ function ExpandableHistoryList({
7870
7874
  onClick: () => setExpandedItemId(
7871
7875
  (previousExpandedItemId) => previousExpandedItemId === item.id ? null : item.id
7872
7876
  ),
7873
- className: "w-full px-4 py-3 text-left hover:bg-gray-50/80 dark:hover:bg-gray-800/40",
7877
+ className: "w-full px-4 py-3 text-left hover:bg-slate-50/80 dark:hover:bg-slate-800/40",
7874
7878
  children: [
7875
7879
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center justify-between gap-3", children: [
7876
7880
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-2", children: item.headerLeft }),
7877
- item.headerRight ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-xs text-gray-500 dark:text-gray-400", children: item.headerRight }) : null
7881
+ item.headerRight ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-xs text-slate-500 dark:text-slate-400", children: item.headerRight }) : null
7878
7882
  ] }),
7879
- item.summary ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 text-xs text-gray-500 dark:text-gray-400", children: item.summary }) : null
7883
+ item.summary ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 text-xs text-slate-500 dark:text-slate-400", children: item.summary }) : null
7880
7884
  ]
7881
7885
  }
7882
7886
  ),
7883
- isExpanded && item.details ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-3 border-t border-gray-200/80 px-4 py-3 dark:border-gray-700/80", children: item.details }) : null
7887
+ isExpanded && item.details ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-3 border-t border-slate-200/80 px-4 py-3 dark:border-slate-700/80", children: item.details }) : null
7884
7888
  ] }, item.id);
7885
7889
  }) });
7886
7890
  }
@@ -8087,7 +8091,7 @@ function StepFormPage({
8087
8091
  ) }),
8088
8092
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-6 flex items-center justify-between border-t border-white/30 pt-5 dark:border-white/10", children: [
8089
8093
  /* @__PURE__ */ jsxRuntime.jsx(
8090
- chunkBHOT22QL_js.Button,
8094
+ chunkMXQ2EYG2_js.Button,
8091
8095
  {
8092
8096
  type: "button",
8093
8097
  onClick: handleBack,
@@ -8096,7 +8100,7 @@ function StepFormPage({
8096
8100
  }
8097
8101
  ),
8098
8102
  /* @__PURE__ */ jsxRuntime.jsx(
8099
- chunkBHOT22QL_js.Button,
8103
+ chunkMXQ2EYG2_js.Button,
8100
8104
  {
8101
8105
  type: "button",
8102
8106
  onClick: handleNext,
@@ -8528,8 +8532,8 @@ function LaunchpadGrid({
8528
8532
  item.badge != null && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute -top-1.5 left-1/2 translate-x-8 lg:translate-x-10 z-10 inline-flex h-5 min-w-5 items-center justify-center rounded-full bg-white/95 px-1.5 text-[10px] font-bold text-blue-700 shadow-sm ring-1 ring-blue-200 dark:bg-slate-900/95 dark:text-blue-300 dark:ring-blue-400/40", children: item.badge > 99 ? "99+" : item.badge }),
8529
8533
  item.notification != null && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute -top-2 right-1/2 translate-x-9 lg:translate-x-11 z-10 flex h-8 min-w-8 items-center justify-center rounded-full bg-red-500 px-2 text-sm font-extrabold text-white shadow-lg ring-2 ring-white/70 dark:ring-slate-900/70", children: item.notification > 99 ? "99+" : item.notification }),
8530
8534
  /* @__PURE__ */ jsxRuntime.jsx(LaunchpadIcon, { item, userProfile, isHydrated }),
8531
- /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mt-3 text-sm font-medium text-gray-700 dark:text-gray-300 group-hover:text-gray-900 dark:group-hover:text-white transition-colors", children: item.name }),
8532
- item.subtitle && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "mt-0.5 text-xs text-gray-500 dark:text-gray-400", children: item.subtitle })
8535
+ /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mt-3 text-sm font-medium text-slate-700 dark:text-slate-300 group-hover:text-slate-900 dark:group-hover:text-white transition-colors", children: item.name }),
8536
+ item.subtitle && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "mt-0.5 text-xs text-slate-500 dark:text-slate-400", children: item.subtitle })
8533
8537
  ] })
8534
8538
  }
8535
8539
  ) : /* @__PURE__ */ jsxRuntime.jsxs(
@@ -8543,7 +8547,7 @@ function LaunchpadGrid({
8543
8547
  item.notification != null && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute -top-2 right-1/2 translate-x-9 lg:translate-x-11 z-10 flex h-8 min-w-8 items-center justify-center rounded-full bg-red-500 px-2 text-sm font-extrabold text-white shadow-lg ring-2 ring-white/70 dark:ring-slate-900/70", children: item.notification > 9 ? "9+" : item.notification }),
8544
8548
  /* @__PURE__ */ jsxRuntime.jsx(LaunchpadIcon, { item, userProfile, isHydrated }),
8545
8549
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mt-3 text-sm font-medium text-gray-700 dark:text-gray-300 group-hover:text-gray-900 dark:group-hover:text-white transition-colors", children: item.name }),
8546
- item.subtitle && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "mt-0.5 text-xs text-gray-500 dark:text-gray-400", children: item.subtitle })
8550
+ item.subtitle && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "mt-0.5 text-xs text-slate-500 dark:text-slate-400", children: item.subtitle })
8547
8551
  ]
8548
8552
  }
8549
8553
  ) }, `launchpad-${item.id}`), [actionItemIds, getForceTouchItems, tileClass, onItemClick, userProfile, isHydrated]);
@@ -8558,7 +8562,7 @@ function LaunchpadGrid({
8558
8562
  groupedActionItems.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
8559
8563
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "my-6", children: [
8560
8564
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-px w-full bg-slate-300/75 dark:bg-white/20" }),
8561
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-2 text-center text-xs font-medium uppercase tracking-wide text-gray-500 dark:text-gray-400", children: actionsLabel })
8565
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-2 text-center text-xs font-medium uppercase tracking-wide text-slate-500 dark:text-slate-400", children: actionsLabel })
8562
8566
  ] }),
8563
8567
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap justify-center gap-7 lg:gap-8", children: groupedActionItems.map(renderTile) })
8564
8568
  ] })
@@ -8754,8 +8758,8 @@ function CookieConsent({
8754
8758
  children: t("learnMore")
8755
8759
  }
8756
8760
  ),
8757
- /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { onClick: handleReject, outline: true, children: t("reject") }),
8758
- /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { onClick: handleAccept, color: "ios-glass-blue", children: t("accept") })
8761
+ /* @__PURE__ */ jsxRuntime.jsx(chunkMXQ2EYG2_js.Button, { onClick: handleReject, outline: true, children: t("reject") }),
8762
+ /* @__PURE__ */ jsxRuntime.jsx(chunkMXQ2EYG2_js.Button, { onClick: handleAccept, color: "ios-glass-blue", children: t("accept") })
8759
8763
  ] })
8760
8764
  ] }) })
8761
8765
  }
@@ -9286,9 +9290,9 @@ var AvatarButton = React9.forwardRef(function AvatarButton2({
9286
9290
  "focus:not-data-focus:outline-hidden data-focus:outline-2 data-focus:outline-offset-2 data-focus:outline-indigo-500/70"
9287
9291
  );
9288
9292
  if (typeof props.href === "string") {
9289
- return /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Link, { ...props, className: classes, ref, children: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.TouchTarget, { children: /* @__PURE__ */ jsxRuntime.jsx(Avatar, { src, square, initials, alt, tone }) }) });
9293
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkMXQ2EYG2_js.Link, { ...props, className: classes, ref, children: /* @__PURE__ */ jsxRuntime.jsx(chunkMXQ2EYG2_js.TouchTarget, { children: /* @__PURE__ */ jsxRuntime.jsx(Avatar, { src, square, initials, alt, tone }) }) });
9290
9294
  }
9291
- return /* @__PURE__ */ jsxRuntime.jsx(Headless3__namespace.Button, { ...props, className: classes, ref, children: /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.TouchTarget, { children: /* @__PURE__ */ jsxRuntime.jsx(Avatar, { src, square, initials, alt, tone }) }) });
9295
+ return /* @__PURE__ */ jsxRuntime.jsx(Headless3__namespace.Button, { ...props, className: classes, ref, children: /* @__PURE__ */ jsxRuntime.jsx(chunkMXQ2EYG2_js.TouchTarget, { children: /* @__PURE__ */ jsxRuntime.jsx(Avatar, { src, square, initials, alt, tone }) }) });
9292
9296
  });
9293
9297
  function ImageUpload({
9294
9298
  src,
@@ -9393,7 +9397,7 @@ function Breadcrumb({ pages, actions, centerContent, dashboardPath = "/dashboard
9393
9397
  className: "liquid-surface-strong sticky top-2 z-30 mx-4 rounded-2xl sm:mx-6 lg:mx-8",
9394
9398
  children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid w-full grid-cols-[1fr_auto_1fr] items-center gap-3 px-4 py-2.5 sm:px-6 lg:px-8", children: [
9395
9399
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "min-w-0", children: parentPage ? /* @__PURE__ */ jsxRuntime.jsxs(
9396
- chunkBHOT22QL_js.Link,
9400
+ chunkMXQ2EYG2_js.Link,
9397
9401
  {
9398
9402
  href: parentPage.href,
9399
9403
  className: "inline-flex max-w-full items-center gap-1 rounded-full px-2 py-1 text-sm font-medium text-slate-600 hover:bg-white/60 dark:text-slate-300 dark:hover:bg-white/10",
@@ -9403,7 +9407,7 @@ function Breadcrumb({ pages, actions, centerContent, dashboardPath = "/dashboard
9403
9407
  ]
9404
9408
  }
9405
9409
  ) : /* @__PURE__ */ jsxRuntime.jsxs(
9406
- chunkBHOT22QL_js.Link,
9410
+ chunkMXQ2EYG2_js.Link,
9407
9411
  {
9408
9412
  href: dashboardPath,
9409
9413
  className: "inline-flex items-center gap-1 rounded-full px-2 py-1 text-sm font-medium text-slate-600 hover:bg-white/60 dark:text-slate-300 dark:hover:bg-white/10",
@@ -9426,7 +9430,7 @@ function CreateActionButton({
9426
9430
  mode = "responsive"
9427
9431
  }) {
9428
9432
  const buttonContent = /* @__PURE__ */ jsxRuntime.jsxs(
9429
- chunkBHOT22QL_js.Button,
9433
+ chunkMXQ2EYG2_js.Button,
9430
9434
  {
9431
9435
  type: "button",
9432
9436
  onClick,
@@ -10165,7 +10169,7 @@ function PageEmptyState({ title, message, iconName, customIcon }) {
10165
10169
  {
10166
10170
  initial: prefersReducedMotion2 ? false : { opacity: 0, scale: 0.95 },
10167
10171
  animate: prefersReducedMotion2 ? noMotion : { opacity: 1, scale: 1 },
10168
- transition: prefersReducedMotion2 ? noTransition : chunkBHOT22QL_js.springPresets.gentle,
10172
+ transition: prefersReducedMotion2 ? noTransition : chunkMXQ2EYG2_js.springPresets.gentle,
10169
10173
  className: "liquid-surface w-full max-w-lg rounded-2xl px-8 py-14 text-center",
10170
10174
  children: [
10171
10175
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -10173,7 +10177,7 @@ function PageEmptyState({ title, message, iconName, customIcon }) {
10173
10177
  {
10174
10178
  initial: prefersReducedMotion2 ? false : { scale: 0.6, opacity: 0 },
10175
10179
  animate: prefersReducedMotion2 ? noMotion : { scale: 1, opacity: 1 },
10176
- transition: prefersReducedMotion2 ? noTransition : chunkBHOT22QL_js.springPresets.bouncy,
10180
+ transition: prefersReducedMotion2 ? noTransition : chunkMXQ2EYG2_js.springPresets.bouncy,
10177
10181
  className: "mx-auto mb-6",
10178
10182
  children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: `inline-flex h-20 w-20 items-center justify-center rounded-full backdrop-blur-md border ${accent.container}`, children: customIcon ?? /* @__PURE__ */ jsxRuntime.jsx(Icon, { className: `h-10 w-10 ${accent.icon}` }) })
10179
10183
  }
@@ -10184,7 +10188,7 @@ function PageEmptyState({ title, message, iconName, customIcon }) {
10184
10188
  "data-testid": "empty-state-title",
10185
10189
  initial: prefersReducedMotion2 ? false : { y: 12, opacity: 0 },
10186
10190
  animate: prefersReducedMotion2 ? noMotion : { y: 0, opacity: 1 },
10187
- transition: prefersReducedMotion2 ? noTransition : { ...chunkBHOT22QL_js.springPresets.default, delay: 0.1 },
10191
+ transition: prefersReducedMotion2 ? noTransition : { ...chunkMXQ2EYG2_js.springPresets.default, delay: 0.1 },
10188
10192
  className: "text-xl font-semibold text-gray-900 dark:text-white",
10189
10193
  children: title
10190
10194
  }
@@ -10195,7 +10199,7 @@ function PageEmptyState({ title, message, iconName, customIcon }) {
10195
10199
  "data-testid": "empty-state-message",
10196
10200
  initial: prefersReducedMotion2 ? false : { y: 12, opacity: 0 },
10197
10201
  animate: prefersReducedMotion2 ? noMotion : { y: 0, opacity: 1 },
10198
- transition: prefersReducedMotion2 ? noTransition : { ...chunkBHOT22QL_js.springPresets.default, delay: 0.15 },
10202
+ transition: prefersReducedMotion2 ? noTransition : { ...chunkMXQ2EYG2_js.springPresets.default, delay: 0.15 },
10199
10203
  className: "mt-3 text-sm text-gray-500 dark:text-gray-400 max-w-sm mx-auto leading-relaxed",
10200
10204
  children: message
10201
10205
  }
@@ -10212,7 +10216,7 @@ function PageEmptyState({ title, message, iconName, customIcon }) {
10212
10216
  {
10213
10217
  initial: prefersReducedMotion2 ? false : { scale: 0 },
10214
10218
  animate: prefersReducedMotion2 ? noMotion : { scale: 1 },
10215
- transition: prefersReducedMotion2 ? noTransition : { ...chunkBHOT22QL_js.springPresets.bouncy, delay: 0.35 + i * 0.08 },
10219
+ transition: prefersReducedMotion2 ? noTransition : { ...chunkMXQ2EYG2_js.springPresets.bouncy, delay: 0.35 + i * 0.08 },
10216
10220
  className: "h-1.5 w-1.5 rounded-full bg-gray-300 dark:bg-gray-600"
10217
10221
  },
10218
10222
  i
@@ -10248,7 +10252,7 @@ function PageErrorState({
10248
10252
  {
10249
10253
  initial: prefersReducedMotion2 ? false : { opacity: 0, scale: 0.95 },
10250
10254
  animate: prefersReducedMotion2 ? noMotion : { opacity: 1, scale: 1 },
10251
- transition: prefersReducedMotion2 ? noTransition : chunkBHOT22QL_js.springPresets.gentle,
10255
+ transition: prefersReducedMotion2 ? noTransition : chunkMXQ2EYG2_js.springPresets.gentle,
10252
10256
  className: "liquid-surface w-full max-w-2xl rounded-2xl px-12 py-14 text-center",
10253
10257
  children: [
10254
10258
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -10256,7 +10260,7 @@ function PageErrorState({
10256
10260
  {
10257
10261
  initial: prefersReducedMotion2 ? false : { scale: 0.6, opacity: 0 },
10258
10262
  animate: prefersReducedMotion2 ? noMotion : { scale: 1, opacity: 1 },
10259
- transition: prefersReducedMotion2 ? noTransition : chunkBHOT22QL_js.springPresets.bouncy,
10263
+ transition: prefersReducedMotion2 ? noTransition : chunkMXQ2EYG2_js.springPresets.bouncy,
10260
10264
  className: "mx-auto mb-6",
10261
10265
  children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "inline-flex h-20 w-20 items-center justify-center rounded-full backdrop-blur-md border bg-red-50/80 dark:bg-red-900/30 border-red-100/50 dark:border-red-800/30", children: customIcon ?? /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ExclamationTriangleIcon, { className: "h-10 w-10 text-red-500 dark:text-red-400" }) })
10262
10266
  }
@@ -10266,7 +10270,7 @@ function PageErrorState({
10266
10270
  {
10267
10271
  initial: prefersReducedMotion2 ? false : { y: 12, opacity: 0 },
10268
10272
  animate: prefersReducedMotion2 ? noMotion : { y: 0, opacity: 1 },
10269
- transition: prefersReducedMotion2 ? noTransition : { ...chunkBHOT22QL_js.springPresets.default, delay: 0.05 },
10273
+ transition: prefersReducedMotion2 ? noTransition : { ...chunkMXQ2EYG2_js.springPresets.default, delay: 0.05 },
10270
10274
  className: "mb-1 text-sm font-semibold tracking-widest text-red-500 dark:text-red-400",
10271
10275
  children: statusCode
10272
10276
  }
@@ -10277,7 +10281,7 @@ function PageErrorState({
10277
10281
  "data-testid": "error-state-title",
10278
10282
  initial: prefersReducedMotion2 ? false : { y: 12, opacity: 0 },
10279
10283
  animate: prefersReducedMotion2 ? noMotion : { y: 0, opacity: 1 },
10280
- transition: prefersReducedMotion2 ? noTransition : { ...chunkBHOT22QL_js.springPresets.default, delay: 0.1 },
10284
+ transition: prefersReducedMotion2 ? noTransition : { ...chunkMXQ2EYG2_js.springPresets.default, delay: 0.1 },
10281
10285
  className: "text-xl font-semibold text-gray-900 dark:text-white",
10282
10286
  children: title
10283
10287
  }
@@ -10288,7 +10292,7 @@ function PageErrorState({
10288
10292
  "data-testid": "error-state-message",
10289
10293
  initial: prefersReducedMotion2 ? false : { y: 12, opacity: 0 },
10290
10294
  animate: prefersReducedMotion2 ? noMotion : { y: 0, opacity: 1 },
10291
- transition: prefersReducedMotion2 ? noTransition : { ...chunkBHOT22QL_js.springPresets.default, delay: 0.15 },
10295
+ transition: prefersReducedMotion2 ? noTransition : { ...chunkMXQ2EYG2_js.springPresets.default, delay: 0.15 },
10292
10296
  className: "mt-3 text-sm text-gray-500 dark:text-gray-400 max-w-sm mx-auto leading-relaxed",
10293
10297
  children: message
10294
10298
  }
@@ -10298,15 +10302,15 @@ function PageErrorState({
10298
10302
  {
10299
10303
  initial: prefersReducedMotion2 ? false : { y: 12, opacity: 0 },
10300
10304
  animate: prefersReducedMotion2 ? noMotion : { y: 0, opacity: 1 },
10301
- transition: prefersReducedMotion2 ? noTransition : { ...chunkBHOT22QL_js.springPresets.default, delay: 0.25 },
10305
+ transition: prefersReducedMotion2 ? noTransition : { ...chunkMXQ2EYG2_js.springPresets.default, delay: 0.25 },
10302
10306
  className: "mt-8",
10303
10307
  children: /* @__PURE__ */ jsxRuntime.jsx(
10304
- "button",
10308
+ chunkMXQ2EYG2_js.Button,
10305
10309
  {
10306
10310
  type: "button",
10311
+ destructive: true,
10307
10312
  onClick: onRetry,
10308
10313
  "data-testid": "error-state-retry",
10309
- className: "rounded-xl bg-red-600 px-6 py-2.5 text-sm font-semibold text-white shadow-lg shadow-red-500/20 transition-all hover:bg-red-700 hover:shadow-red-500/30 active:scale-[0.97] dark:bg-red-500 dark:hover:bg-red-600 dark:shadow-red-500/10",
10310
10314
  children: retryLabel
10311
10315
  }
10312
10316
  )
@@ -10324,7 +10328,7 @@ function PageErrorState({
10324
10328
  {
10325
10329
  initial: prefersReducedMotion2 ? false : { scale: 0 },
10326
10330
  animate: prefersReducedMotion2 ? noMotion : { scale: 1 },
10327
- transition: prefersReducedMotion2 ? noTransition : { ...chunkBHOT22QL_js.springPresets.bouncy, delay: 0.35 + i * 0.08 },
10331
+ transition: prefersReducedMotion2 ? noTransition : { ...chunkMXQ2EYG2_js.springPresets.bouncy, delay: 0.35 + i * 0.08 },
10328
10332
  className: "h-1.5 w-1.5 rounded-full bg-red-300 dark:bg-red-700"
10329
10333
  },
10330
10334
  i
@@ -10527,8 +10531,8 @@ function NotFoundPage({ title = "Page not found", message = "The page you're loo
10527
10531
  return /* @__PURE__ */ jsxRuntime.jsxs(ErrorContainer, { className, children: [
10528
10532
  /* @__PURE__ */ jsxRuntime.jsx(NotFoundSvg, {}),
10529
10533
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: `mb-2 text-sm font-semibold tracking-widest ${accentColorClasses[accentColor]}`, children: "404" }),
10530
- /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "mb-3 text-3xl font-bold text-gray-900 dark:text-white", children: title }),
10531
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-8 max-w-md text-gray-500 dark:text-gray-400", children: message }),
10534
+ /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "mb-3 text-3xl font-bold text-slate-900 dark:text-white", children: title }),
10535
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-8 max-w-md text-slate-500 dark:text-slate-400", children: message }),
10532
10536
  action
10533
10537
  ] });
10534
10538
  }
@@ -10552,8 +10556,8 @@ function BadRequestPage({ title = "Bad request", message = "The request could no
10552
10556
  return /* @__PURE__ */ jsxRuntime.jsxs(ErrorContainer, { className, children: [
10553
10557
  /* @__PURE__ */ jsxRuntime.jsx(BadRequestSvg, {}),
10554
10558
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: `mb-2 text-sm font-semibold tracking-widest ${accentColorClasses[accentColor]}`, children: "400" }),
10555
- /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "mb-3 text-3xl font-bold text-gray-900 dark:text-white", children: title }),
10556
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-8 max-w-md text-gray-500 dark:text-gray-400", children: message }),
10559
+ /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "mb-3 text-3xl font-bold text-slate-900 dark:text-white", children: title }),
10560
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-8 max-w-md text-slate-500 dark:text-slate-400", children: message }),
10557
10561
  action
10558
10562
  ] });
10559
10563
  }
@@ -10588,8 +10592,8 @@ function ServerErrorPage({ title = "Something went wrong", message = "An unexpec
10588
10592
  return /* @__PURE__ */ jsxRuntime.jsxs(ErrorContainer, { className, children: [
10589
10593
  /* @__PURE__ */ jsxRuntime.jsx(ServerErrorSvg, {}),
10590
10594
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: `mb-2 text-sm font-semibold tracking-widest ${accentColorClasses[accentColor]}`, children: "500" }),
10591
- /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "mb-3 text-3xl font-bold text-gray-900 dark:text-white", children: title }),
10592
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-8 max-w-md text-gray-500 dark:text-gray-400", children: message }),
10595
+ /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "mb-3 text-3xl font-bold text-slate-900 dark:text-white", children: title }),
10596
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-8 max-w-md text-slate-500 dark:text-slate-400", children: message }),
10593
10597
  action
10594
10598
  ] });
10595
10599
  }
@@ -10742,19 +10746,28 @@ function SelectionCard({
10742
10746
  onClick,
10743
10747
  icon,
10744
10748
  label,
10749
+ description,
10750
+ layout = "tile",
10751
+ gradient,
10752
+ compatibility = "compatible",
10753
+ badge,
10745
10754
  className = ""
10746
10755
  }) {
10756
+ const isIncompatible = compatibility === "incompatible";
10757
+ const isCard = layout === "card";
10747
10758
  return /* @__PURE__ */ jsxRuntime.jsxs(
10748
10759
  "button",
10749
10760
  {
10750
10761
  type: "button",
10751
- onClick,
10762
+ onClick: isIncompatible ? void 0 : onClick,
10763
+ disabled: isIncompatible,
10752
10764
  "aria-pressed": selected,
10753
10765
  className: [
10754
- "liquid-surface group relative flex flex-col items-center gap-2.5 rounded-2xl p-4",
10755
- "transition-all duration-200",
10766
+ "liquid-surface group relative rounded-2xl transition-all duration-200",
10756
10767
  "focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1",
10768
+ isCard ? "flex items-center gap-3 px-3 py-2.5 text-left" : "flex flex-col items-center gap-2.5 p-4",
10757
10769
  selected ? "bg-indigo-500/15 ring-1 ring-inset ring-indigo-500/30 dark:bg-indigo-500/20" : "hover:bg-white/30 dark:hover:bg-white/[0.05]",
10770
+ isIncompatible && "cursor-not-allowed opacity-50",
10758
10771
  className
10759
10772
  ].join(" "),
10760
10773
  children: [
@@ -10762,10 +10775,11 @@ function SelectionCard({
10762
10775
  "span",
10763
10776
  {
10764
10777
  className: [
10765
- "inline-flex items-center justify-center rounded-xl p-2 transition-colors",
10778
+ "inline-flex shrink-0 items-center justify-center rounded-xl transition-colors",
10779
+ isCard ? "h-9 w-9" : "p-2",
10766
10780
  selected ? (
10767
- // Selected icon bubble — solid indigo with inner highlight
10768
- "bg-indigo-500/85 text-white shadow-[inset_0_1px_1px_rgba(255,255,255,0.4)]"
10781
+ // Selected icon bubble — solid indigo (or caller-provided gradient) with inner highlight
10782
+ gradient ? `bg-gradient-to-br ${gradient} text-white shadow-[inset_0_1px_1px_rgba(255,255,255,0.4)]` : "bg-indigo-500/85 text-white shadow-[inset_0_1px_1px_rgba(255,255,255,0.4)]"
10769
10783
  ) : (
10770
10784
  // Rest icon bubble — glass (same chrome as HeroBlock)
10771
10785
  "border border-white/60 bg-white/75 text-slate-700 dark:border-white/12 dark:bg-white/8 dark:text-slate-200"
@@ -10774,17 +10788,24 @@ function SelectionCard({
10774
10788
  children: icon
10775
10789
  }
10776
10790
  ) : null,
10777
- /* @__PURE__ */ jsxRuntime.jsx(
10778
- "span",
10779
- {
10780
- className: [
10781
- "text-center text-xs font-medium leading-tight",
10782
- selected ? "text-indigo-700 dark:text-indigo-200" : "text-slate-700 dark:text-slate-300"
10783
- ].join(" "),
10784
- children: label
10785
- }
10786
- ),
10787
- selected ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute -right-1 -top-1 flex h-5 w-5 items-center justify-center rounded-full bg-indigo-500 ring-2 ring-white dark:ring-slate-900 shadow-[inset_0_1px_1px_rgba(255,255,255,0.4)]", children: /* @__PURE__ */ jsxRuntime.jsx(solid.CheckIcon, { className: "h-3 w-3 text-white" }) }) : null
10791
+ /* @__PURE__ */ jsxRuntime.jsxs("span", { className: isCard ? "flex min-w-0 flex-1 flex-col gap-0.5" : "contents", children: [
10792
+ /* @__PURE__ */ jsxRuntime.jsxs("span", { className: isCard ? "flex items-center gap-2" : "contents", children: [
10793
+ /* @__PURE__ */ jsxRuntime.jsx(
10794
+ "span",
10795
+ {
10796
+ className: [
10797
+ isCard ? "flex-1 truncate text-sm font-medium leading-tight" : "text-center text-xs font-medium leading-tight",
10798
+ selected ? "text-indigo-700 dark:text-indigo-200" : "text-slate-700 dark:text-slate-300"
10799
+ ].join(" "),
10800
+ children: label
10801
+ }
10802
+ ),
10803
+ badge ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "shrink-0", children: badge }) : null
10804
+ ] }),
10805
+ description && isCard ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "truncate text-xs text-slate-500 dark:text-slate-400", children: description }) : null
10806
+ ] }),
10807
+ selected && !isCard ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute -right-1 -top-1 flex h-5 w-5 items-center justify-center rounded-full bg-indigo-500 ring-2 ring-white dark:ring-slate-900 shadow-[inset_0_1px_1px_rgba(255,255,255,0.4)]", children: /* @__PURE__ */ jsxRuntime.jsx(solid.CheckIcon, { className: "h-3 w-3 text-white" }) }) : null,
10808
+ selected && isCard ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "shrink-0", children: /* @__PURE__ */ jsxRuntime.jsx(solid.CheckIcon, { className: "h-4 w-4 text-indigo-500" }) }) : null
10788
10809
  ]
10789
10810
  }
10790
10811
  );
@@ -10862,16 +10883,16 @@ function FieldRenderer({ field }) {
10862
10883
  className: [GLASS_INPUT, field.copyable ? "pr-10" : ""].join(" ")
10863
10884
  }
10864
10885
  ),
10865
- field.copyable ? /* @__PURE__ */ jsxRuntime.jsx(
10866
- "button",
10886
+ field.copyable ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute right-3 top-1/2 -translate-y-1/2", children: /* @__PURE__ */ jsxRuntime.jsx(
10887
+ chunkMXQ2EYG2_js.IconButton,
10867
10888
  {
10868
- type: "button",
10889
+ label: `Copy ${field.label}`,
10890
+ variant: "ghost",
10891
+ size: "sm",
10869
10892
  onClick: () => navigator.clipboard.writeText(field.value),
10870
- className: "absolute right-3 top-1/2 -translate-y-1/2 rounded-lg p-1.5 text-slate-400 transition hover:bg-white/40 hover:text-slate-700 dark:hover:bg-white/[0.08] dark:hover:text-slate-200",
10871
- "aria-label": `Copy ${field.label}`,
10872
- children: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ClipboardDocumentIcon, { className: "h-4 w-4" })
10893
+ icon: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ClipboardDocumentIcon, { className: "h-4 w-4" })
10873
10894
  }
10874
- ) : null
10895
+ ) }) : null
10875
10896
  ] }),
10876
10897
  field.description ? /* @__PURE__ */ jsxRuntime.jsx(Description3, { className: "text-xs text-slate-500 dark:text-slate-400", children: field.description }) : null
10877
10898
  ] });
@@ -10908,7 +10929,7 @@ function ProfileContent({ config }) {
10908
10929
  ) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xl font-bold text-white", children: config.initials })
10909
10930
  }
10910
10931
  ),
10911
- /* @__PURE__ */ jsxRuntime.jsxs(chunkBHOT22QL_js.Button, { color: "zinc", onClick: config.onChangeAvatar, className: "flex items-center gap-2", children: [
10932
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkMXQ2EYG2_js.Button, { color: "zinc", onClick: config.onChangeAvatar, className: "flex items-center gap-2", children: [
10912
10933
  /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.UserIcon, { className: "h-4 w-4" }),
10913
10934
  config.changeAvatarLabel
10914
10935
  ] })
@@ -10957,7 +10978,7 @@ function ProfileContent({ config }) {
10957
10978
  )
10958
10979
  ] }),
10959
10980
  /* @__PURE__ */ jsxRuntime.jsx(
10960
- chunkBHOT22QL_js.Button,
10981
+ chunkMXQ2EYG2_js.Button,
10961
10982
  {
10962
10983
  color: "blue",
10963
10984
  className: "mt-2",
@@ -11158,7 +11179,7 @@ function SettingsModal({
11158
11179
  }
11159
11180
  return /* @__PURE__ */ jsxRuntime.jsx(PlaceholderContent, { message: placeholderMessage });
11160
11181
  };
11161
- const footer = signOut ? /* @__PURE__ */ jsxRuntime.jsxs(chunkBHOT22QL_js.Button, { type: "button", onClick: signOut.onClick, color: "ios-glass-red", fullWidth: true, children: [
11182
+ const footer = signOut ? /* @__PURE__ */ jsxRuntime.jsxs(chunkMXQ2EYG2_js.Button, { type: "button", onClick: signOut.onClick, color: "ios-glass-red", fullWidth: true, children: [
11162
11183
  signOut.icon,
11163
11184
  signOut.label
11164
11185
  ] }) : sidebarFooter;
@@ -11180,6 +11201,42 @@ function SettingsModal({
11180
11201
  }
11181
11202
  );
11182
11203
  }
11204
+ var PickerTile = React9.forwardRef(function PickerTile2({
11205
+ selected,
11206
+ onClick,
11207
+ label,
11208
+ disabled = false,
11209
+ children,
11210
+ className,
11211
+ style,
11212
+ ...rest
11213
+ }, ref) {
11214
+ const handleClick = () => {
11215
+ if (disabled) return;
11216
+ chunkUZ3CMNUJ_js.triggerHaptic("light");
11217
+ onClick?.();
11218
+ };
11219
+ return /* @__PURE__ */ jsxRuntime.jsx(
11220
+ "button",
11221
+ {
11222
+ ref,
11223
+ type: "button",
11224
+ onClick: handleClick,
11225
+ disabled,
11226
+ "aria-pressed": selected,
11227
+ "aria-label": label,
11228
+ style,
11229
+ className: clsx4__default.default(
11230
+ "focus:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500/70 focus-visible:ring-offset-1",
11231
+ disabled && "cursor-not-allowed opacity-50",
11232
+ className
11233
+ ),
11234
+ ...rest,
11235
+ children
11236
+ }
11237
+ );
11238
+ });
11239
+ PickerTile.displayName = "PickerTile";
11183
11240
  var WindsockIcon = (props) => /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: 512, height: 512, viewBox: "0 0 512 512", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...props, children: [
11184
11241
  /* @__PURE__ */ jsxRuntime.jsxs("defs", { children: [
11185
11242
  /* @__PURE__ */ jsxRuntime.jsxs("linearGradient", { id: "windsock-bg", x1: 48, y1: 48, x2: 464, y2: 464, gradientUnits: "userSpaceOnUse", children: [
@@ -11438,7 +11495,7 @@ function PasswordStrengthMeter({
11438
11495
  className: `h-1.5 flex-1 rounded-full ${index < strength ? STRENGTH_COLORS[strength - 1] : "bg-gray-200 dark:bg-gray-700"}`,
11439
11496
  initial: { scaleX: 0 },
11440
11497
  animate: { scaleX: index < strength ? 1 : 0.5 },
11441
- transition: chunkBHOT22QL_js.springPresets.stiff,
11498
+ transition: chunkMXQ2EYG2_js.springPresets.stiff,
11442
11499
  style: { transformOrigin: "left" }
11443
11500
  },
11444
11501
  index
@@ -11496,7 +11553,7 @@ function BackupCodeGrid({
11496
11553
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-3", children: [
11497
11554
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "liquid-surface-strong rounded-xl p-4", children: !revealed ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center justify-center py-8 gap-3", children: [
11498
11555
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-gray-500 dark:text-gray-400", children: t("backupCodesHidden") }),
11499
- onReveal && /* @__PURE__ */ jsxRuntime.jsx(chunkBHOT22QL_js.Button, { outline: true, onClick: onReveal, children: t("backupCodesReveal") })
11556
+ onReveal && /* @__PURE__ */ jsxRuntime.jsx(chunkMXQ2EYG2_js.Button, { outline: true, onClick: onReveal, children: t("backupCodesReveal") })
11500
11557
  ] }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-2 gap-2", children: codes.map((code, index) => /* @__PURE__ */ jsxRuntime.jsxs(
11501
11558
  "div",
11502
11559
  {
@@ -11512,11 +11569,11 @@ function BackupCodeGrid({
11512
11569
  index
11513
11570
  )) }) }),
11514
11571
  revealed && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-2", children: [
11515
- /* @__PURE__ */ jsxRuntime.jsxs(chunkBHOT22QL_js.Button, { outline: true, size: "sm", onClick: handleCopyAll, children: [
11572
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkMXQ2EYG2_js.Button, { outline: true, size: "sm", onClick: handleCopyAll, children: [
11516
11573
  /* @__PURE__ */ jsxRuntime.jsx(solid.ClipboardDocumentIcon, { className: "h-4 w-4" }),
11517
11574
  t("backupCodesCopyAll")
11518
11575
  ] }),
11519
- showDownload && /* @__PURE__ */ jsxRuntime.jsxs(chunkBHOT22QL_js.Button, { outline: true, size: "sm", onClick: handleDownload, children: [
11576
+ showDownload && /* @__PURE__ */ jsxRuntime.jsxs(chunkMXQ2EYG2_js.Button, { outline: true, size: "sm", onClick: handleDownload, children: [
11520
11577
  /* @__PURE__ */ jsxRuntime.jsx(solid.ArrowDownTrayIcon, { className: "h-4 w-4" }),
11521
11578
  t("backupCodesDownload")
11522
11579
  ] })
@@ -11555,7 +11612,7 @@ function SocialLoginButtons({
11555
11612
  const t = chunkY5VN4SPH_js.useTranslations("auth");
11556
11613
  const isColumn = layout === "column";
11557
11614
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `flex ${isColumn ? "flex-col" : "flex-row"} gap-2`, children: providers.map((provider) => /* @__PURE__ */ jsxRuntime.jsxs(
11558
- chunkBHOT22QL_js.Button,
11615
+ chunkMXQ2EYG2_js.Button,
11559
11616
  {
11560
11617
  outline: true,
11561
11618
  fullWidth: isColumn,
@@ -11866,7 +11923,7 @@ function RadiantHeading({
11866
11923
  ...props,
11867
11924
  className: clsx4.clsx(
11868
11925
  className,
11869
- "text-4xl font-bold tracking-tight text-gray-900 dark:text-white sm:text-5xl lg:text-6xl"
11926
+ "text-4xl font-bold tracking-tight text-slate-900 dark:text-white sm:text-5xl lg:text-6xl"
11870
11927
  )
11871
11928
  }
11872
11929
  );
@@ -11895,7 +11952,7 @@ function Lead({
11895
11952
  return /* @__PURE__ */ jsxRuntime.jsx(
11896
11953
  "p",
11897
11954
  {
11898
- className: clsx4.clsx(className, "text-xl text-gray-600 dark:text-gray-400 leading-relaxed"),
11955
+ className: clsx4.clsx(className, "text-xl text-slate-600 dark:text-slate-400 leading-relaxed"),
11899
11956
  ...props
11900
11957
  }
11901
11958
  );
@@ -11973,19 +12030,18 @@ function BentoCard({
11973
12030
  className: clsx4.clsx(
11974
12031
  className,
11975
12032
  "group relative flex flex-col overflow-hidden rounded-2xl",
11976
- "bg-white dark:bg-gray-800 shadow-lg hover:shadow-xl transition-shadow",
11977
- "border border-gray-200 dark:border-gray-700"
12033
+ "liquid-surface shadow-lg hover:shadow-xl transition-shadow"
11978
12034
  ),
11979
12035
  children: [
11980
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative h-80 shrink-0 overflow-hidden bg-gradient-to-br from-gray-100 to-gray-50 dark:from-gray-700 dark:to-gray-800", children: [
12036
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative h-80 shrink-0 overflow-hidden bg-gradient-to-br from-slate-100 to-slate-50 dark:from-slate-700 dark:to-slate-800", children: [
11981
12037
  graphic,
11982
- fade.includes("top") && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-0 bg-gradient-to-b from-white dark:from-gray-800 to-transparent opacity-40" }),
11983
- fade.includes("bottom") && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-0 bg-gradient-to-t from-white dark:from-gray-800 to-transparent opacity-40" })
12038
+ fade.includes("top") && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-0 bg-gradient-to-b from-white dark:from-slate-800 to-transparent opacity-40" }),
12039
+ fade.includes("bottom") && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-0 bg-gradient-to-t from-white dark:from-slate-800 to-transparent opacity-40" })
11984
12040
  ] }),
11985
12041
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative p-8 sm:p-10", children: [
11986
12042
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm font-semibold text-blue-600 dark:text-blue-400 uppercase tracking-wider mb-2", children: eyebrow }),
11987
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-2xl font-bold tracking-tight text-gray-900 dark:text-white", children: title }),
11988
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-3 max-w-xl text-base text-gray-600 dark:text-gray-400 leading-relaxed", children: description })
12043
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-2xl font-bold tracking-tight text-slate-900 dark:text-white", children: title }),
12044
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-3 max-w-xl text-base text-slate-600 dark:text-slate-400 leading-relaxed", children: description })
11989
12045
  ] })
11990
12046
  ]
11991
12047
  }
@@ -12056,14 +12112,14 @@ function FeatureCard({
12056
12112
  initial: { opacity: 0, y: 20 },
12057
12113
  whileInView: { opacity: 1, y: 0 },
12058
12114
  transition: { duration: 0.5 },
12059
- className: "group relative rounded-2xl overflow-hidden bg-white dark:bg-gray-800 p-8 shadow-md hover:shadow-xl transition-all duration-300 border border-gray-200 dark:border-gray-700",
12115
+ className: "group liquid-surface relative rounded-2xl overflow-hidden p-8 shadow-md hover:shadow-xl transition-all duration-300",
12060
12116
  children: [
12061
12117
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx4.clsx(
12062
12118
  "inline-flex rounded-xl p-3 mb-6",
12063
12119
  `bg-gradient-to-br ${gradient}`
12064
12120
  ), children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { className: "h-6 w-6 text-white" }) }),
12065
- /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-xl font-bold text-gray-900 dark:text-white mb-2", children: title }),
12066
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-gray-600 dark:text-gray-400 leading-relaxed", children: description })
12121
+ /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-xl font-bold text-slate-900 dark:text-white mb-2", children: title }),
12122
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-slate-600 dark:text-slate-400 leading-relaxed", children: description })
12067
12123
  ]
12068
12124
  }
12069
12125
  );
@@ -20060,7 +20116,7 @@ function SkipToContent({
20060
20116
  "a",
20061
20117
  {
20062
20118
  href: `#${targetId}`,
20063
- className: "sr-only focus:not-sr-only focus:fixed focus:top-4 focus:left-4 focus:z-[9999] focus:rounded-lg focus:bg-white focus:px-4 focus:py-2 focus:text-sm focus:font-semibold focus:text-indigo-600 focus:shadow-lg focus:ring-2 focus:ring-indigo-500 focus:outline-none dark:focus:bg-gray-800 dark:focus:text-indigo-400",
20119
+ className: "sr-only focus:not-sr-only focus:fixed focus:top-4 focus:left-4 focus:z-[9999] focus:rounded-lg focus:bg-white focus:px-4 focus:py-2 focus:text-sm focus:font-semibold focus:text-indigo-600 focus:shadow-lg focus:ring-2 focus:ring-indigo-500/70 focus:ring-offset-1 focus:outline-none dark:focus:bg-slate-800 dark:focus:text-indigo-400",
20064
20120
  "data-testid": "skip-to-content",
20065
20121
  children: label
20066
20122
  }
@@ -20432,6 +20488,7 @@ exports.PageSectionHeader = PageSectionHeader;
20432
20488
  exports.Pagination = Pagination;
20433
20489
  exports.PasswordInput = PasswordInput;
20434
20490
  exports.PasswordStrengthMeter = PasswordStrengthMeter;
20491
+ exports.PickerTile = PickerTile;
20435
20492
  exports.PlatformShell = PlatformShell;
20436
20493
  exports.PlusGrid = PlusGrid;
20437
20494
  exports.PlusGridItem = PlusGridItem;
@@ -20802,5 +20859,5 @@ exports.useSocialProviders = useSocialProviders;
20802
20859
  exports.validateDashboardSpec = validateDashboardSpec;
20803
20860
  exports.xScale = xScale;
20804
20861
  exports.yScale = yScale;
20805
- //# sourceMappingURL=chunk-5ETT54QS.js.map
20806
- //# sourceMappingURL=chunk-5ETT54QS.js.map
20862
+ //# sourceMappingURL=chunk-FZUV7GNB.js.map
20863
+ //# sourceMappingURL=chunk-FZUV7GNB.js.map