lucent-ui 0.41.0 → 0.42.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,9 +1,9 @@
1
- import { jsxs as g, jsx as t, Fragment as J } from "react/jsx-runtime";
2
- import { T as U, I as Gt, B as fe, g as on, a as Ve } from "./LucentProvider-lGSitrJV.js";
3
- import { b as us, C as ps, c as hs, L as fs, S as ms, d as gs, e as vs, f as bs, h as ys, i as xs, j as ws, k as ks, l as Ss, m as Ts, n as Cs, o as Is, p as Ms, q as zs, r as As, s as Es, t as qs, u as Bs, v as Ds, w as Ps, x as Ls, y as Rs, z as $s, A as Fs, D as Ns, E as Ws, F as Vs, G as Os, H as Hs, J as Gs, K as Us, M as js, N as _s, O as Ys, P as Ks, Q as Xs, R as Js, U as Zs, V as Qs, W as el, X as tl, Y as nl, Z as rl, _ as al } from "./LucentProvider-lGSitrJV.js";
4
- import { forwardRef as Ut, useRef as V, useEffect as H, useState as q, useCallback as X, useContext as ne, createContext as Ce, useLayoutEffect as oe, useId as rt, Children as sn, isValidElement as ln, cloneElement as cn } from "react";
1
+ import { s as Ce, T as j, I as jt, B as fe, g as sn, a as Oe } from "./LucentProvider-tSCR4lQw.js";
2
+ import { b as ps, C as hs, c as fs, L as ms, S as gs, d as vs, e as bs, f as ys, h as xs, i as ws, j as ks, k as Ss, l as Ts, m as Cs, n as Is, o as Ms, p as zs, q as As, r as Es, t as qs, u as Bs, v as Ds, w as Ps, x as Ls, y as Rs, z as $s, A as Ns, D as Fs, E as Ws, F as Vs, G as Os, H as Hs, J as Us, K as js, M as Gs, N as _s, O as Ys, P as Ks, Q as Xs, R as Zs, U as Js, V as Qs, W as el, X as tl, Y as nl, Z as rl, _ as al, $ as ol } from "./LucentProvider-tSCR4lQw.js";
3
+ import { jsxs as g, jsx as t, Fragment as Z } from "react/jsx-runtime";
4
+ import { forwardRef as Gt, useRef as V, useEffect as H, useState as q, useCallback as X, useContext as ne, createContext as Ie, useLayoutEffect as oe, useId as at, Children as ln, isValidElement as cn, cloneElement as dn } from "react";
5
5
  import { createPortal as ie } from "react-dom";
6
- const Co = {
6
+ const Io = {
7
7
  id: "button",
8
8
  name: "Button",
9
9
  tier: "atom",
@@ -193,7 +193,7 @@ const Co = {
193
193
  ariaAttributes: ["aria-disabled", "aria-busy"],
194
194
  keyboardInteractions: ["Enter — activates the button", "Space — activates the button"]
195
195
  }
196
- }, Io = {
196
+ }, Mo = {
197
197
  id: "input",
198
198
  name: "Input",
199
199
  tier: "atom",
@@ -228,19 +228,19 @@ const Co = {
228
228
  ariaAttributes: ["aria-invalid", "aria-describedby", "aria-label"],
229
229
  keyboardInteractions: ["Tab — focuses the input"]
230
230
  }
231
- }, dn = {
231
+ }, un = {
232
232
  sm: "var(--lucent-font-size-sm)",
233
233
  md: "var(--lucent-font-size-md)",
234
234
  lg: "var(--lucent-font-size-md)"
235
- }, un = {
235
+ }, pn = {
236
236
  sm: "var(--lucent-font-size-sm)",
237
237
  md: "var(--lucent-font-size-sm)",
238
238
  lg: "var(--lucent-font-size-md)"
239
- }, pn = {
239
+ }, hn = {
240
240
  sm: "var(--lucent-space-3)",
241
241
  md: "var(--lucent-space-4)",
242
242
  lg: "var(--lucent-space-4)"
243
- }, hn = Ut(
243
+ }, fn = Gt(
244
244
  ({ label: e, helperText: r, errorText: n, autoResize: i = !1, maxLength: a, showCount: o = !1, size: l = "md", id: s, value: c, onChange: u, disabled: p, style: h, ...w }, b) => {
245
245
  const m = V(null), f = b ?? m, d = s ?? `lucent-textarea-${Math.random().toString(36).slice(2, 7)}`, y = !!n, x = !!p, T = typeof c == "string" ? c.length : 0;
246
246
  H(() => {
@@ -251,7 +251,7 @@ const Co = {
251
251
  const S = x ? "transparent" : y ? "var(--lucent-danger-default)" : "var(--lucent-border-default)";
252
252
  return /* @__PURE__ */ g("div", { style: { display: "flex", flexDirection: "column", gap: "var(--lucent-space-1)", width: "100%" }, children: [
253
253
  e && /* @__PURE__ */ t("label", { htmlFor: d, style: {
254
- fontSize: un[l],
254
+ fontSize: pn[l],
255
255
  fontWeight: "var(--lucent-font-weight-medium)",
256
256
  color: x ? "var(--lucent-text-disabled)" : "var(--lucent-text-primary)",
257
257
  fontFamily: "var(--lucent-font-family-base)"
@@ -270,8 +270,8 @@ const Co = {
270
270
  style: {
271
271
  width: "100%",
272
272
  minHeight: "100px",
273
- padding: pn[l],
274
- fontSize: dn[l],
273
+ padding: hn[l],
274
+ fontSize: un[l],
275
275
  fontFamily: "var(--lucent-font-family-base)",
276
276
  color: x ? "var(--lucent-text-disabled)" : "var(--lucent-text-primary)",
277
277
  background: x ? "color-mix(in srgb, var(--lucent-text-primary) 6%, transparent)" : "var(--lucent-surface)",
@@ -326,8 +326,8 @@ const Co = {
326
326
  ] });
327
327
  }
328
328
  );
329
- hn.displayName = "Textarea";
330
- const Mo = {
329
+ fn.displayName = "Textarea";
330
+ const zo = {
331
331
  id: "textarea",
332
332
  name: "Textarea",
333
333
  tier: "atom",
@@ -360,7 +360,7 @@ const Mo = {
360
360
  ariaAttributes: ["aria-multiline", "aria-invalid", "aria-describedby"],
361
361
  keyboardInteractions: ["Tab — focuses the textarea"]
362
362
  }
363
- }, zo = {
363
+ }, Ao = {
364
364
  id: "badge",
365
365
  name: "Badge",
366
366
  tier: "atom",
@@ -385,7 +385,7 @@ const Mo = {
385
385
  role: "status",
386
386
  notes: "Use aria-label on the parent element when badge meaning depends on context."
387
387
  }
388
- }, fn = {
388
+ }, mn = {
389
389
  neutral: {
390
390
  bg: "var(--lucent-surface-secondary)",
391
391
  color: "var(--lucent-text-secondary)",
@@ -428,7 +428,7 @@ const Mo = {
428
428
  hoverBg: "color-mix(in srgb, var(--lucent-info-default) 15%, var(--lucent-info-subtle))",
429
429
  hoverBorder: "var(--lucent-info-default)"
430
430
  }
431
- }, mn = {
431
+ }, gn = {
432
432
  sm: {
433
433
  fontSize: "var(--lucent-font-size-xs)",
434
434
  height: "calc(var(--lucent-space-5) * 0.5 + 10px)",
@@ -456,12 +456,12 @@ const Mo = {
456
456
  dotSize: 8,
457
457
  gap: "var(--lucent-space-2)"
458
458
  }
459
- }, gn = `
459
+ }, vn = `
460
460
  @keyframes lucent-chip-pulse {
461
461
  0% { transform: scale(1); opacity: 0.6; }
462
462
  100% { transform: scale(2.8); opacity: 0; }
463
463
  }`;
464
- function Pe({
464
+ function Le({
465
465
  children: e,
466
466
  variant: r = "neutral",
467
467
  size: n = "md",
@@ -476,7 +476,7 @@ function Pe({
476
476
  disabled: h = !1,
477
477
  style: w
478
478
  }) {
479
- const b = fn[r], m = mn[n], [f, d] = q(!1), y = s && c, x = s && !e, T = !h && (i || a), S = `color-mix(in srgb, ${b.color} 8%, transparent)`, k = m.dotSize * 3, v = {
479
+ const b = mn[r], m = gn[n], [f, d] = q(!1), y = s && c, x = s && !e, T = !h && (i || a), S = `color-mix(in srgb, ${b.color} 8%, transparent)`, k = m.dotSize * 3, v = {
480
480
  display: "inline-flex",
481
481
  alignItems: "center",
482
482
  justifyContent: x ? "center" : void 0,
@@ -507,8 +507,8 @@ function Pe({
507
507
  // Reset button styles when onClick
508
508
  ...a ? { outline: "none" } : {},
509
509
  ...w
510
- }, E = /* @__PURE__ */ g(J, { children: [
511
- y && /* @__PURE__ */ t("style", { children: gn }),
510
+ }, E = /* @__PURE__ */ g(Z, { children: [
511
+ y && /* @__PURE__ */ t("style", { children: vn }),
512
512
  l && /* @__PURE__ */ t("span", { style: {
513
513
  width: m.dotSize + 2,
514
514
  height: m.dotSize + 2,
@@ -591,7 +591,7 @@ function Pe({
591
591
  }
592
592
  ) : /* @__PURE__ */ t("span", { style: v, ...C, children: E });
593
593
  }
594
- const Ao = {
594
+ const Eo = {
595
595
  id: "chip",
596
596
  name: "Chip",
597
597
  tier: "atom",
@@ -636,27 +636,27 @@ const Ao = {
636
636
  notes: 'When onClick is provided, renders as <button> with native button semantics. Dismiss button has aria-label="Dismiss" and stopPropagation to prevent parent click handlers.',
637
637
  keyboardInteractions: ["Enter / Space — activates onClick or dismiss button when focused"]
638
638
  }
639
- }, vn = {
639
+ }, bn = {
640
640
  xs: 24,
641
641
  sm: 32,
642
642
  md: 40,
643
643
  lg: 56,
644
644
  xl: 80
645
- }, bn = {
645
+ }, yn = {
646
646
  xs: "var(--lucent-font-size-xs)",
647
647
  sm: "var(--lucent-font-size-xs)",
648
648
  md: "var(--lucent-font-size-sm)",
649
649
  lg: "var(--lucent-font-size-lg)",
650
650
  xl: "var(--lucent-font-size-xl)"
651
651
  };
652
- function yn(e, r) {
652
+ function xn(e, r) {
653
653
  var i, a, o;
654
654
  if (r) return r.slice(0, 2).toUpperCase();
655
655
  const n = e.trim().split(/\s+/);
656
656
  return n.length === 1 ? (((i = n[0]) == null ? void 0 : i[0]) ?? "").toUpperCase() : ((((a = n[0]) == null ? void 0 : a[0]) ?? "") + (((o = n[n.length - 1]) == null ? void 0 : o[0]) ?? "")).toUpperCase();
657
657
  }
658
- function Eo({ src: e, alt: r, size: n = "md", initials: i, style: a, ...o }) {
659
- const l = vn[n], s = yn(r, i), c = {
658
+ function qo({ src: e, alt: r, size: n = "md", initials: i, style: a, ...o }) {
659
+ const l = bn[n], s = xn(r, i), c = {
660
660
  width: l,
661
661
  height: l,
662
662
  borderRadius: "var(--lucent-radius-full)",
@@ -688,7 +688,7 @@ function Eo({ src: e, alt: r, size: n = "md", initials: i, style: a, ...o }) {
688
688
  ...c,
689
689
  background: "var(--lucent-accent-default)",
690
690
  color: "var(--lucent-accent-fg)",
691
- fontSize: bn[n],
691
+ fontSize: yn[n],
692
692
  fontWeight: "var(--lucent-font-weight-semibold)",
693
693
  fontFamily: "var(--lucent-font-family-base)"
694
694
  },
@@ -696,7 +696,7 @@ function Eo({ src: e, alt: r, size: n = "md", initials: i, style: a, ...o }) {
696
696
  }
697
697
  );
698
698
  }
699
- const qo = {
699
+ const Bo = {
700
700
  id: "avatar",
701
701
  name: "Avatar",
702
702
  tier: "atom",
@@ -722,19 +722,19 @@ const qo = {
722
722
  ariaAttributes: ["aria-label"],
723
723
  notes: 'When src is present, renders as <img> with alt. When showing initials, renders as <span role="img" aria-label>.'
724
724
  }
725
- }, xn = {
725
+ }, wn = {
726
726
  xs: 12,
727
727
  sm: 16,
728
728
  md: 24,
729
729
  lg: 36
730
- }, wn = {
730
+ }, kn = {
731
731
  xs: 2.5,
732
732
  sm: 2.5,
733
733
  md: 2,
734
734
  lg: 2
735
735
  };
736
- function kn({ size: e = "md", label: r = "Loading…", color: n }) {
737
- const i = xn[e], a = wn[e];
736
+ function Sn({ size: e = "md", label: r = "Loading…", color: n }) {
737
+ const i = wn[e], a = kn[e];
738
738
  return /* @__PURE__ */ g("span", { role: "status", "aria-label": r, style: { display: "inline-flex", alignItems: "center", justifyContent: "center" }, children: [
739
739
  /* @__PURE__ */ g(
740
740
  "svg",
@@ -763,7 +763,7 @@ function kn({ size: e = "md", label: r = "Loading…", color: n }) {
763
763
  /* @__PURE__ */ t("span", { style: { position: "absolute", width: 1, height: 1, overflow: "hidden", clip: "rect(0,0,0,0)", whiteSpace: "nowrap" }, children: r })
764
764
  ] });
765
765
  }
766
- const Bo = {
766
+ const Do = {
767
767
  id: "spinner",
768
768
  name: "Spinner",
769
769
  tier: "atom",
@@ -788,7 +788,7 @@ const Bo = {
788
788
  notes: 'The visible SVG is aria-hidden. The label is conveyed via a visually-hidden span inside role="status".'
789
789
  }
790
790
  };
791
- function Sn({ orientation: e = "horizontal", label: r, spacing: n = "0", style: i }) {
791
+ function Tn({ orientation: e = "horizontal", label: r, spacing: n = "0", style: i }) {
792
792
  return e === "vertical" ? /* @__PURE__ */ t(
793
793
  "span",
794
794
  {
@@ -843,7 +843,7 @@ function Sn({ orientation: e = "horizontal", label: r, spacing: n = "0", style:
843
843
  }
844
844
  );
845
845
  }
846
- const Do = {
846
+ const Po = {
847
847
  id: "divider",
848
848
  name: "Divider",
849
849
  tier: "atom",
@@ -866,7 +866,7 @@ const Do = {
866
866
  role: "separator",
867
867
  ariaAttributes: ["aria-orientation", "aria-label"]
868
868
  }
869
- }, Tn = { sm: 14, md: 16, lg: 20 }, Cn = { sm: "calc(var(--lucent-space-8) * 0.5 + 16px)", md: "calc(var(--lucent-space-10) * 0.5 + 20px)", lg: "calc(var(--lucent-space-12) * 0.5 + 24px)" }, In = `
869
+ }, Cn = { sm: 14, md: 16, lg: 20 }, In = { sm: "calc(var(--lucent-space-8) * 0.5 + 16px)", md: "calc(var(--lucent-space-10) * 0.5 + 20px)", lg: "calc(var(--lucent-space-12) * 0.5 + 24px)" }, Mn = `
870
870
  @keyframes lucent-cb-pop {
871
871
  0% { transform: scale(1); }
872
872
  35% { transform: scale(0.82); }
@@ -878,7 +878,7 @@ const Do = {
878
878
  60% { transform: scale(1.15) rotate(2deg); }
879
879
  100% { opacity: 1; transform: scale(1) rotate(0deg); }
880
880
  }
881
- `, ut = Ut(
881
+ `, pt = Gt(
882
882
  ({
883
883
  label: e,
884
884
  size: r = "md",
@@ -893,7 +893,7 @@ const Do = {
893
893
  style: p,
894
894
  ...h
895
895
  }, w) => {
896
- const b = V(null), m = c ?? `lucent-checkbox-${Math.random().toString(36).slice(2, 7)}`, f = Tn[r], d = o !== void 0, [y, x] = q(l ?? !1), T = d ? !!o : y, S = V(T), [k, v] = q(0);
896
+ const b = V(null), m = c ?? `lucent-checkbox-${Math.random().toString(36).slice(2, 7)}`, f = Cn[r], d = o !== void 0, [y, x] = q(l ?? !1), T = d ? !!o : y, S = V(T), [k, v] = q(0);
897
897
  H(() => {
898
898
  !s && S.current !== T && (S.current = T, v((M) => M + 1));
899
899
  }, [T, s]);
@@ -991,15 +991,15 @@ const Do = {
991
991
  ]
992
992
  }
993
993
  );
994
- return /* @__PURE__ */ g(J, { children: [
995
- /* @__PURE__ */ t("style", { children: In }),
994
+ return /* @__PURE__ */ g(Z, { children: [
995
+ /* @__PURE__ */ t("style", { children: Mn }),
996
996
  i ? /* @__PURE__ */ t(
997
997
  "div",
998
998
  {
999
999
  style: {
1000
1000
  border: "1px solid var(--lucent-border-strong)",
1001
1001
  borderRadius: "var(--lucent-radius-lg)",
1002
- ...a ? {} : { minHeight: Cn[r] },
1002
+ ...a ? {} : { minHeight: In[r] },
1003
1003
  padding: a ? "var(--lucent-space-3)" : "0 var(--lucent-space-3)",
1004
1004
  display: "flex",
1005
1005
  alignItems: a ? "flex-start" : "center",
@@ -1018,8 +1018,8 @@ const Do = {
1018
1018
  ] });
1019
1019
  }
1020
1020
  );
1021
- ut.displayName = "Checkbox";
1022
- const Po = {
1021
+ pt.displayName = "Checkbox";
1022
+ const Lo = {
1023
1023
  id: "checkbox",
1024
1024
  name: "Checkbox",
1025
1025
  tier: "atom",
@@ -1103,7 +1103,7 @@ const Po = {
1103
1103
  ariaAttributes: ["aria-checked", "aria-disabled"],
1104
1104
  keyboardInteractions: ["Space — toggles checked state"]
1105
1105
  }
1106
- }, Mn = `
1106
+ }, zn = `
1107
1107
  @keyframes lucent-radio-pop {
1108
1108
  0% { transform: scale(1); }
1109
1109
  35% { transform: scale(0.82); }
@@ -1115,8 +1115,8 @@ const Po = {
1115
1115
  60% { transform: scale(1.2); }
1116
1116
  100% { opacity: 1; transform: scale(1); }
1117
1117
  }
1118
- `, jt = Ce(null);
1119
- function zn({
1118
+ `, _t = Ie(null);
1119
+ function An({
1120
1120
  name: e,
1121
1121
  value: r,
1122
1122
  onChange: n,
@@ -1125,7 +1125,7 @@ function zn({
1125
1125
  label: o,
1126
1126
  children: l
1127
1127
  }) {
1128
- return /* @__PURE__ */ t(jt.Provider, { value: { name: e, value: r, onChange: n, disabled: i ?? !1 }, children: /* @__PURE__ */ t(
1128
+ return /* @__PURE__ */ t(_t.Provider, { value: { name: e, value: r, onChange: n, disabled: i ?? !1 }, children: /* @__PURE__ */ t(
1129
1129
  "div",
1130
1130
  {
1131
1131
  role: "radiogroup",
@@ -1140,13 +1140,13 @@ function zn({
1140
1140
  }
1141
1141
  ) });
1142
1142
  }
1143
- const An = { sm: 14, md: 16, lg: 20 }, En = { sm: "calc(var(--lucent-space-8) * 0.5 + 16px)", md: "calc(var(--lucent-space-10) * 0.5 + 20px)", lg: "calc(var(--lucent-space-12) * 0.5 + 24px)" }, qn = {
1143
+ const En = { sm: 14, md: 16, lg: 20 }, qn = { sm: "calc(var(--lucent-space-8) * 0.5 + 16px)", md: "calc(var(--lucent-space-10) * 0.5 + 20px)", lg: "calc(var(--lucent-space-12) * 0.5 + 24px)" }, Bn = {
1144
1144
  sm: "var(--lucent-font-size-sm)",
1145
1145
  md: "var(--lucent-font-size-md)",
1146
1146
  lg: "var(--lucent-font-size-md)"
1147
1147
  };
1148
- function Lo({ value: e, label: r, size: n = "md", contained: i = !1, helperText: a, disabled: o, id: l, onChange: s, checked: c, style: u, ...p }) {
1149
- const h = ne(jt), w = l ?? `lucent-radio-${Math.random().toString(36).slice(2, 7)}`, b = An[n], m = o ?? (h == null ? void 0 : h.disabled) ?? !1, f = h ? h.value === e : !!c, d = V(f), [y, x] = q(0);
1148
+ function Ro({ value: e, label: r, size: n = "md", contained: i = !1, helperText: a, disabled: o, id: l, onChange: s, checked: c, style: u, ...p }) {
1149
+ const h = ne(_t), w = l ?? `lucent-radio-${Math.random().toString(36).slice(2, 7)}`, b = En[n], m = o ?? (h == null ? void 0 : h.disabled) ?? !1, f = h ? h.value === e : !!c, d = V(f), [y, x] = q(0);
1150
1150
  H(() => {
1151
1151
  !m && d.current !== f && (d.current = f, x((E) => E + 1));
1152
1152
  }, [f, m]);
@@ -1180,7 +1180,7 @@ function Lo({ value: e, label: r, size: n = "md", contained: i = !1, helperText:
1180
1180
  gap: "var(--lucent-space-2)",
1181
1181
  cursor: m ? "not-allowed" : "pointer",
1182
1182
  fontFamily: "var(--lucent-font-family-base)",
1183
- fontSize: qn[n],
1183
+ fontSize: Bn[n],
1184
1184
  color: m ? "var(--lucent-text-disabled)" : "var(--lucent-text-primary)",
1185
1185
  userSelect: "none",
1186
1186
  ...i ? {} : u
@@ -1215,15 +1215,15 @@ function Lo({ value: e, label: r, size: n = "md", contained: i = !1, helperText:
1215
1215
  ]
1216
1216
  }
1217
1217
  );
1218
- return /* @__PURE__ */ g(J, { children: [
1219
- /* @__PURE__ */ t("style", { children: Mn }),
1218
+ return /* @__PURE__ */ g(Z, { children: [
1219
+ /* @__PURE__ */ t("style", { children: zn }),
1220
1220
  i ? /* @__PURE__ */ t(
1221
1221
  "div",
1222
1222
  {
1223
1223
  style: {
1224
1224
  border: "1px solid var(--lucent-border-strong)",
1225
1225
  borderRadius: "var(--lucent-radius-lg)",
1226
- ...a ? { padding: "var(--lucent-space-3)" } : { minHeight: En[n], padding: "0 var(--lucent-space-3)", display: "flex", alignItems: "center" },
1226
+ ...a ? { padding: "var(--lucent-space-3)" } : { minHeight: qn[n], padding: "0 var(--lucent-space-3)", display: "flex", alignItems: "center" },
1227
1227
  background: f && !m ? "color-mix(in srgb, var(--lucent-text-primary) 6%, transparent)" : "transparent",
1228
1228
  transition: "border-color var(--lucent-duration-fast) var(--lucent-easing-default), background var(--lucent-duration-fast) var(--lucent-easing-default)",
1229
1229
  cursor: m ? "not-allowed" : "pointer",
@@ -1240,14 +1240,14 @@ function Lo({ value: e, label: r, size: n = "md", contained: i = !1, helperText:
1240
1240
  ) : v
1241
1241
  ] });
1242
1242
  }
1243
- function Ro({
1243
+ function $o({
1244
1244
  defaultValue: e = "",
1245
1245
  onChange: r,
1246
1246
  ...n
1247
1247
  }) {
1248
1248
  const [i, a] = q(e);
1249
1249
  return /* @__PURE__ */ t(
1250
- zn,
1250
+ An,
1251
1251
  {
1252
1252
  ...n,
1253
1253
  value: i,
@@ -1257,7 +1257,7 @@ function Ro({
1257
1257
  }
1258
1258
  );
1259
1259
  }
1260
- const $o = {
1260
+ const No = {
1261
1261
  id: "radio",
1262
1262
  name: "Radio",
1263
1263
  tier: "atom",
@@ -1442,7 +1442,7 @@ const $o = {
1442
1442
  ariaAttributes: ["aria-checked", "aria-disabled"],
1443
1443
  keyboardInteractions: ["Space — toggles the switch state"]
1444
1444
  }
1445
- }, No = {
1445
+ }, Wo = {
1446
1446
  id: "select",
1447
1447
  name: "Select",
1448
1448
  tier: "atom",
@@ -1540,20 +1540,20 @@ const $o = {
1540
1540
  "Escape — closes the list"
1541
1541
  ]
1542
1542
  }
1543
- }, Bn = {
1543
+ }, Dn = {
1544
1544
  neutral: { bg: "var(--lucent-surface-secondary)", color: "var(--lucent-text-secondary)", border: "var(--lucent-border-default)", dismissHover: "var(--lucent-border-strong)" },
1545
1545
  accent: { bg: "var(--lucent-accent-subtle)", color: "var(--lucent-accent-default)", border: "var(--lucent-accent-subtle)", dismissHover: "var(--lucent-accent-default)" },
1546
1546
  success: { bg: "var(--lucent-success-subtle)", color: "var(--lucent-success-text)", border: "var(--lucent-success-subtle)", dismissHover: "var(--lucent-success-default)" },
1547
1547
  warning: { bg: "var(--lucent-warning-subtle)", color: "var(--lucent-warning-text)", border: "var(--lucent-warning-subtle)", dismissHover: "var(--lucent-warning-default)" },
1548
1548
  danger: { bg: "var(--lucent-danger-subtle)", color: "var(--lucent-danger-text)", border: "var(--lucent-danger-subtle)", dismissHover: "var(--lucent-danger-default)" },
1549
1549
  info: { bg: "var(--lucent-info-subtle)", color: "var(--lucent-info-text)", border: "var(--lucent-info-subtle)", dismissHover: "var(--lucent-info-default)" }
1550
- }, Dn = {
1550
+ }, Pn = {
1551
1551
  sm: { fontSize: "var(--lucent-font-size-xs)", height: "20px", padding: "0 var(--lucent-space-3)", iconSize: 10, gap: "var(--lucent-space-1)" },
1552
1552
  md: { fontSize: "var(--lucent-font-size-sm)", height: "24px", padding: "0 var(--lucent-space-3)", iconSize: 12, gap: "var(--lucent-space-1)" },
1553
1553
  lg: { fontSize: "var(--lucent-font-size-md)", height: "28px", padding: "0 var(--lucent-space-4)", iconSize: 14, gap: "var(--lucent-space-2)" }
1554
1554
  };
1555
- function Wo({ children: e, variant: r = "neutral", size: n = "md", onDismiss: i, disabled: a }) {
1556
- const o = Bn[r], l = Dn[n], [s, c] = q(!1), u = !a && i;
1555
+ function Vo({ children: e, variant: r = "neutral", size: n = "md", onDismiss: i, disabled: a }) {
1556
+ const o = Dn[r], l = Pn[n], [s, c] = q(!1), u = !a && i;
1557
1557
  return /* @__PURE__ */ g(
1558
1558
  "span",
1559
1559
  {
@@ -1622,7 +1622,7 @@ function Wo({ children: e, variant: r = "neutral", size: n = "md", onDismiss: i,
1622
1622
  }
1623
1623
  );
1624
1624
  }
1625
- const Vo = {
1625
+ const Oo = {
1626
1626
  id: "tag",
1627
1627
  name: "Tag",
1628
1628
  tier: "atom",
@@ -1679,37 +1679,37 @@ const Vo = {
1679
1679
  notes: 'The dismiss button has aria-label="Dismiss" and is keyboard-focusable.',
1680
1680
  keyboardInteractions: ["Enter / Space — activates the dismiss button when focused"]
1681
1681
  }
1682
- }, Z = 5, ze = Z + 3, Pn = {
1682
+ }, J = 5, Ae = J + 3, Ln = {
1683
1683
  top: {
1684
- bottom: -Z,
1684
+ bottom: -J,
1685
1685
  left: "50%",
1686
1686
  transform: "translateX(-50%)",
1687
- borderWidth: `${Z}px ${Z}px 0 ${Z}px`,
1687
+ borderWidth: `${J}px ${J}px 0 ${J}px`,
1688
1688
  borderColor: "var(--lucent-text-primary) transparent transparent transparent"
1689
1689
  },
1690
1690
  bottom: {
1691
- top: -Z,
1691
+ top: -J,
1692
1692
  left: "50%",
1693
1693
  transform: "translateX(-50%)",
1694
- borderWidth: `0 ${Z}px ${Z}px ${Z}px`,
1694
+ borderWidth: `0 ${J}px ${J}px ${J}px`,
1695
1695
  borderColor: "transparent transparent var(--lucent-text-primary) transparent"
1696
1696
  },
1697
1697
  left: {
1698
- right: -Z,
1698
+ right: -J,
1699
1699
  top: "50%",
1700
1700
  transform: "translateY(-50%)",
1701
- borderWidth: `${Z}px 0 ${Z}px ${Z}px`,
1701
+ borderWidth: `${J}px 0 ${J}px ${J}px`,
1702
1702
  borderColor: "transparent transparent transparent var(--lucent-text-primary)"
1703
1703
  },
1704
1704
  right: {
1705
- left: -Z,
1705
+ left: -J,
1706
1706
  top: "50%",
1707
1707
  transform: "translateY(-50%)",
1708
- borderWidth: `${Z}px ${Z}px ${Z}px 0`,
1708
+ borderWidth: `${J}px ${J}px ${J}px 0`,
1709
1709
  borderColor: "transparent var(--lucent-text-primary) transparent transparent"
1710
1710
  }
1711
1711
  };
1712
- function $e({ content: e, children: r, placement: n = "top", delay: i = 300, open: a, interactive: o = !1 }) {
1712
+ function Ne({ content: e, children: r, placement: n = "top", delay: i = 300, open: a, interactive: o = !1 }) {
1713
1713
  const [l, s] = q(!1), c = a !== void 0 ? a : l, u = V(null), p = V(null), h = V(null), [w, b] = q(null), m = () => {
1714
1714
  p.current && (clearTimeout(p.current), p.current = null);
1715
1715
  }, f = () => {
@@ -1722,22 +1722,22 @@ function $e({ content: e, children: r, placement: n = "top", delay: i = 300, ope
1722
1722
  const S = T.getBoundingClientRect(), k = S.left + S.width / 2, v = S.top + S.height / 2;
1723
1723
  switch (n) {
1724
1724
  case "top":
1725
- b({ top: S.top - ze, left: k });
1725
+ b({ top: S.top - Ae, left: k });
1726
1726
  break;
1727
1727
  case "bottom":
1728
- b({ top: S.bottom + ze, left: k });
1728
+ b({ top: S.bottom + Ae, left: k });
1729
1729
  break;
1730
1730
  case "left":
1731
- b({ top: v, left: S.left - ze });
1731
+ b({ top: v, left: S.left - Ae });
1732
1732
  break;
1733
1733
  case "right":
1734
- b({ top: v, left: S.right + ze });
1734
+ b({ top: v, left: S.right + Ae });
1735
1735
  break;
1736
1736
  }
1737
1737
  }, [n]);
1738
1738
  if (oe(() => {
1739
1739
  c && y();
1740
- }, [c, y]), !e) return /* @__PURE__ */ t(J, { children: r });
1740
+ }, [c, y]), !e) return /* @__PURE__ */ t(Z, { children: r });
1741
1741
  const x = {
1742
1742
  top: "translate(-50%, -100%)",
1743
1743
  bottom: "translate(-50%, 0)",
@@ -1791,7 +1791,7 @@ function $e({ content: e, children: r, placement: n = "top", delay: i = 300, ope
1791
1791
  width: 0,
1792
1792
  height: 0,
1793
1793
  borderStyle: "solid",
1794
- ...Pn[n]
1794
+ ...Ln[n]
1795
1795
  }
1796
1796
  }
1797
1797
  )
@@ -1804,7 +1804,7 @@ function $e({ content: e, children: r, placement: n = "top", delay: i = 300, ope
1804
1804
  }
1805
1805
  );
1806
1806
  }
1807
- const Oo = {
1807
+ const Ho = {
1808
1808
  id: "tooltip",
1809
1809
  name: "Tooltip",
1810
1810
  tier: "atom",
@@ -1853,15 +1853,15 @@ const Oo = {
1853
1853
  ariaAttributes: ['role="tooltip"'],
1854
1854
  notes: 'The tooltip is shown on both hover and focus, making it accessible to keyboard users. Content is exposed via role="tooltip".'
1855
1855
  }
1856
- }, Ln = {
1856
+ }, Rn = {
1857
1857
  xs: 12,
1858
1858
  sm: 14,
1859
1859
  md: 16,
1860
1860
  lg: 20,
1861
1861
  xl: 24
1862
1862
  };
1863
- function Ho({ children: e, size: r = "md", label: n, color: i, style: a }) {
1864
- const o = Ln[r];
1863
+ function Uo({ children: e, size: r = "md", label: n, color: i, style: a }) {
1864
+ const o = Rn[r];
1865
1865
  return /* @__PURE__ */ t(
1866
1866
  "span",
1867
1867
  {
@@ -1882,7 +1882,7 @@ function Ho({ children: e, size: r = "md", label: n, color: i, style: a }) {
1882
1882
  }
1883
1883
  );
1884
1884
  }
1885
- const Go = {
1885
+ const jo = {
1886
1886
  id: "icon",
1887
1887
  name: "Icon",
1888
1888
  tier: "atom",
@@ -1930,7 +1930,7 @@ const Go = {
1930
1930
  ariaAttributes: ["aria-label", "aria-hidden"],
1931
1931
  notes: 'aria-hidden="true" is applied automatically when no label is given, hiding the icon from screen readers.'
1932
1932
  }
1933
- }, Uo = {
1933
+ }, Go = {
1934
1934
  id: "text",
1935
1935
  name: "Text",
1936
1936
  tier: "atom",
@@ -2032,7 +2032,7 @@ const Go = {
2032
2032
  notes: 'The rendered element determines the implicit ARIA role. Use heading elements (h1–h6) for document headings so screen readers can navigate the page structure. Use `as="label"` with `htmlFor` to associate labels with form controls. Decorative text needs no additional ARIA.'
2033
2033
  }
2034
2034
  };
2035
- function jo({
2035
+ function _o({
2036
2036
  children: e,
2037
2037
  href: r,
2038
2038
  isActive: n = !1,
@@ -2046,7 +2046,7 @@ function jo({
2046
2046
  return /* @__PURE__ */ g(
2047
2047
  s ?? "a",
2048
2048
  {
2049
- href: a ? void 0 : r,
2049
+ href: a ? void 0 : Ce(r),
2050
2050
  onClick: a ? void 0 : l,
2051
2051
  "aria-current": n ? "page" : void 0,
2052
2052
  "aria-disabled": a || void 0,
@@ -2084,7 +2084,7 @@ function jo({
2084
2084
  }
2085
2085
  );
2086
2086
  }
2087
- const _o = {
2087
+ const Yo = {
2088
2088
  id: "slider",
2089
2089
  name: "Slider",
2090
2090
  tier: "atom",
@@ -2180,8 +2180,8 @@ const _o = {
2180
2180
  "End — jump to max"
2181
2181
  ]
2182
2182
  }
2183
- }, Rn = 2e3;
2184
- function $n() {
2183
+ }, $n = 2e3;
2184
+ function Nn() {
2185
2185
  return /* @__PURE__ */ g("svg", { width: 13, height: 13, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: 2, strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": !0, children: [
2186
2186
  /* @__PURE__ */ t("rect", { x: "9", y: "9", width: "13", height: "13", rx: "2", ry: "2" }),
2187
2187
  /* @__PURE__ */ t("path", { d: "M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1" })
@@ -2190,7 +2190,7 @@ function $n() {
2190
2190
  function Fn() {
2191
2191
  return /* @__PURE__ */ t("svg", { width: 13, height: 13, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: 2.5, strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": !0, children: /* @__PURE__ */ t("path", { d: "M20 6L9 17l-5-5" }) });
2192
2192
  }
2193
- function Yo({
2193
+ function Ko({
2194
2194
  code: e,
2195
2195
  language: r,
2196
2196
  tabs: n,
@@ -2204,7 +2204,7 @@ function Yo({
2204
2204
  var T, S;
2205
2205
  const u = !!(n != null && n.length), [p, h] = q(0), [w, b] = q(!1), m = u ? ((T = n[p]) == null ? void 0 : T.code) ?? "" : e ?? "", f = u ? (S = n[p]) == null ? void 0 : S.language : r, d = async () => {
2206
2206
  try {
2207
- await navigator.clipboard.writeText(m), b(!0), setTimeout(() => b(!1), Rn);
2207
+ await navigator.clipboard.writeText(m), b(!0), setTimeout(() => b(!1), $n);
2208
2208
  } catch {
2209
2209
  }
2210
2210
  }, y = {
@@ -2234,7 +2234,7 @@ function Yo({
2234
2234
  w || (k.currentTarget.style.background = "transparent", k.currentTarget.style.color = "var(--lucent-text-secondary)");
2235
2235
  },
2236
2236
  children: [
2237
- w ? /* @__PURE__ */ t(Fn, {}) : /* @__PURE__ */ t($n, {}),
2237
+ w ? /* @__PURE__ */ t(Fn, {}) : /* @__PURE__ */ t(Nn, {}),
2238
2238
  w ? "Copied!" : "Copy"
2239
2239
  ]
2240
2240
  }
@@ -2406,7 +2406,7 @@ function Yo({
2406
2406
  }
2407
2407
  );
2408
2408
  }
2409
- const Ko = {
2409
+ const Xo = {
2410
2410
  id: "code-block",
2411
2411
  name: "CodeBlock",
2412
2412
  tier: "atom",
@@ -2502,7 +2502,7 @@ const Ko = {
2502
2502
  "Enter / Space — copies the code"
2503
2503
  ]
2504
2504
  }
2505
- }, Nn = `
2505
+ }, Wn = `
2506
2506
  .lucent-table-row:hover > td,
2507
2507
  .lucent-table-row:hover > th {
2508
2508
  background: color-mix(in srgb, var(--lucent-text-primary) 5%, transparent) !important;
@@ -2512,7 +2512,7 @@ const Ko = {
2512
2512
  background: color-mix(in srgb, var(--lucent-text-primary) 4%, transparent);
2513
2513
  }
2514
2514
  `;
2515
- function Wn({ children: e, style: r, ...n }) {
2515
+ function Vn({ children: e, style: r, ...n }) {
2516
2516
  return /* @__PURE__ */ t(
2517
2517
  "thead",
2518
2518
  {
@@ -2525,10 +2525,10 @@ function Wn({ children: e, style: r, ...n }) {
2525
2525
  }
2526
2526
  );
2527
2527
  }
2528
- function Vn({ children: e, ...r }) {
2528
+ function On({ children: e, ...r }) {
2529
2529
  return /* @__PURE__ */ t("tbody", { ...r, children: e });
2530
2530
  }
2531
- function On({ children: e, style: r, ...n }) {
2531
+ function Hn({ children: e, style: r, ...n }) {
2532
2532
  return /* @__PURE__ */ t(
2533
2533
  "tfoot",
2534
2534
  {
@@ -2541,7 +2541,7 @@ function On({ children: e, style: r, ...n }) {
2541
2541
  }
2542
2542
  );
2543
2543
  }
2544
- function Hn({ children: e, className: r, ...n }) {
2544
+ function Un({ children: e, className: r, ...n }) {
2545
2545
  return /* @__PURE__ */ t(
2546
2546
  "tr",
2547
2547
  {
@@ -2551,7 +2551,7 @@ function Hn({ children: e, className: r, ...n }) {
2551
2551
  }
2552
2552
  );
2553
2553
  }
2554
- function Gn({ as: e, children: r, style: n, ...i }) {
2554
+ function jn({ as: e, children: r, style: n, ...i }) {
2555
2555
  const a = e === "th", o = {
2556
2556
  padding: "var(--lucent-space-3) var(--lucent-space-4)",
2557
2557
  fontFamily: "var(--lucent-font-family-base)",
@@ -2566,14 +2566,14 @@ function Gn({ as: e, children: r, style: n, ...i }) {
2566
2566
  };
2567
2567
  return a ? /* @__PURE__ */ t("th", { scope: "col", style: o, ...i, children: r }) : /* @__PURE__ */ t("td", { style: o, ...i, children: r });
2568
2568
  }
2569
- function Ie({ striped: e = !1, children: r, className: n, style: i, ...a }) {
2569
+ function Me({ striped: e = !1, children: r, className: n, style: i, ...a }) {
2570
2570
  const o = [
2571
2571
  "lucent-table",
2572
2572
  e && "lucent-table-striped",
2573
2573
  n
2574
2574
  ].filter(Boolean).join(" ");
2575
- return /* @__PURE__ */ g(J, { children: [
2576
- /* @__PURE__ */ t("style", { children: Nn }),
2575
+ return /* @__PURE__ */ g(Z, { children: [
2576
+ /* @__PURE__ */ t("style", { children: Wn }),
2577
2577
  /* @__PURE__ */ t("div", { style: { overflowX: "auto", width: "100%", background: "var(--lucent-surface)" }, children: /* @__PURE__ */ t(
2578
2578
  "table",
2579
2579
  {
@@ -2591,12 +2591,12 @@ function Ie({ striped: e = !1, children: r, className: n, style: i, ...a }) {
2591
2591
  ) })
2592
2592
  ] });
2593
2593
  }
2594
- Ie.Head = Wn;
2595
- Ie.Body = Vn;
2596
- Ie.Foot = On;
2597
- Ie.Row = Hn;
2598
- Ie.Cell = Gn;
2599
- const Xo = {
2594
+ Me.Head = Vn;
2595
+ Me.Body = On;
2596
+ Me.Foot = Hn;
2597
+ Me.Row = Un;
2598
+ Me.Cell = jn;
2599
+ const Zo = {
2600
2600
  id: "table",
2601
2601
  name: "Table",
2602
2602
  tier: "atom",
@@ -2794,7 +2794,7 @@ const Xo = {
2794
2794
  "Tab — moves through format tabs and input fields within the popover"
2795
2795
  ]
2796
2796
  }
2797
- }, Zo = {
2797
+ }, Qo = {
2798
2798
  id: "color-swatch",
2799
2799
  name: "ColorSwatch",
2800
2800
  tier: "atom",
@@ -2829,7 +2829,7 @@ const Xo = {
2829
2829
  ariaAttributes: ["title (tooltip)"],
2830
2830
  keyboardInteractions: ["Enter / Space — triggers onClick"]
2831
2831
  }
2832
- }, Qo = {
2832
+ }, ei = {
2833
2833
  id: "segmented-control",
2834
2834
  name: "SegmentedControl",
2835
2835
  tier: "atom",
@@ -2926,20 +2926,20 @@ const Xo = {
2926
2926
  "Click — selects an option"
2927
2927
  ]
2928
2928
  }
2929
- }, Un = {
2929
+ }, Gn = {
2930
2930
  start: "flex-start",
2931
2931
  center: "center",
2932
2932
  end: "flex-end",
2933
2933
  stretch: "stretch",
2934
2934
  baseline: "baseline"
2935
- }, jn = {
2935
+ }, _n = {
2936
2936
  start: "flex-start",
2937
2937
  center: "center",
2938
2938
  end: "flex-end",
2939
2939
  between: "space-between",
2940
2940
  around: "space-around"
2941
2941
  };
2942
- function bt({
2942
+ function yt({
2943
2943
  gap: e = "4",
2944
2944
  align: r = "stretch",
2945
2945
  justify: n = "start",
@@ -2953,15 +2953,15 @@ function bt({
2953
2953
  display: "flex",
2954
2954
  flexDirection: "column",
2955
2955
  gap: `var(--lucent-space-${e})`,
2956
- alignItems: Un[r],
2957
- justifyContent: jn[n],
2956
+ alignItems: Gn[r],
2957
+ justifyContent: _n[n],
2958
2958
  ...a && { flexWrap: "wrap" },
2959
2959
  ...c && { listStyle: "none", margin: 0, padding: 0 },
2960
2960
  ...l
2961
2961
  };
2962
2962
  return /* @__PURE__ */ t(i, { style: u, ...s, children: o });
2963
2963
  }
2964
- const ei = {
2964
+ const ti = {
2965
2965
  id: "stack",
2966
2966
  name: "Stack",
2967
2967
  tier: "atom",
@@ -3083,20 +3083,20 @@ const ei = {
3083
3083
  accessibility: {
3084
3084
  notes: "Stack renders a <div> by default, which has no implicit ARIA role. Use the `as` prop to render semantic elements (nav, section, form) when the content has a specific structural purpose. Add aria-label or aria-labelledby when using landmark elements."
3085
3085
  }
3086
- }, _n = {
3086
+ }, Yn = {
3087
3087
  start: "flex-start",
3088
3088
  center: "center",
3089
3089
  end: "flex-end",
3090
3090
  stretch: "stretch",
3091
3091
  baseline: "baseline"
3092
- }, Yn = {
3092
+ }, Kn = {
3093
3093
  start: "flex-start",
3094
3094
  center: "center",
3095
3095
  end: "flex-end",
3096
3096
  between: "space-between",
3097
3097
  around: "space-around"
3098
3098
  };
3099
- function yt({
3099
+ function xt({
3100
3100
  gap: e = "3",
3101
3101
  align: r = "center",
3102
3102
  justify: n = "start",
@@ -3110,15 +3110,15 @@ function yt({
3110
3110
  display: "flex",
3111
3111
  flexDirection: "row",
3112
3112
  gap: `var(--lucent-space-${e})`,
3113
- alignItems: _n[r],
3114
- justifyContent: Yn[n],
3113
+ alignItems: Yn[r],
3114
+ justifyContent: Kn[n],
3115
3115
  ...a && { flexWrap: "wrap" },
3116
3116
  ...c && { listStyle: "none", margin: 0, padding: 0 },
3117
3117
  ...l
3118
3118
  };
3119
3119
  return /* @__PURE__ */ t(i, { style: u, ...s, children: o });
3120
3120
  }
3121
- const ti = {
3121
+ const ni = {
3122
3122
  id: "row",
3123
3123
  name: "Row",
3124
3124
  tier: "atom",
@@ -3251,11 +3251,11 @@ const ti = {
3251
3251
  accessibility: {
3252
3252
  notes: 'Row renders a <div> by default, which has no implicit ARIA role. Use the `as` prop to render semantic elements (nav, section) when the content has a specific structural purpose. For toolbar patterns, consider adding role="toolbar" via the role prop.'
3253
3253
  }
3254
- }, Kn = {
3254
+ }, Xn = {
3255
3255
  sm: { height: 4, radius: "var(--lucent-radius-sm)" },
3256
3256
  md: { height: 8, radius: "var(--lucent-radius-md)" },
3257
3257
  lg: { height: 12, radius: "var(--lucent-radius-md)" }
3258
- }, Xn = {
3258
+ }, Zn = {
3259
3259
  accent: "var(--lucent-accent-default)",
3260
3260
  success: "var(--lucent-success-default)",
3261
3261
  warning: "var(--lucent-warning-default)",
@@ -3264,7 +3264,7 @@ const ti = {
3264
3264
  function Jn(e, r, n, i, a) {
3265
3265
  return i !== void 0 && a !== void 0 ? i <= a ? e >= a ? "danger" : e >= i ? "warning" : "success" : e <= a ? "danger" : e <= i ? "warning" : "success" : i !== void 0 ? i <= r / 2 ? e <= i ? "warning" : n ?? "accent" : e >= i ? "warning" : n ?? "accent" : a !== void 0 ? a <= r / 2 ? e <= a ? "danger" : n ?? "accent" : e >= a ? "danger" : n ?? "accent" : n ?? "accent";
3266
3266
  }
3267
- function ni({
3267
+ function ri({
3268
3268
  value: e,
3269
3269
  max: r = 100,
3270
3270
  variant: n,
@@ -3274,7 +3274,7 @@ function ni({
3274
3274
  label: l,
3275
3275
  style: s
3276
3276
  }) {
3277
- const c = Math.max(0, Math.min(e, r)), u = r > 0 ? c / r * 100 : 0, p = Jn(c, r, n, a, o), h = Kn[i], w = Xn[p], b = l === !0 ? `${Math.round(u)}%` : l || null;
3277
+ const c = Math.max(0, Math.min(e, r)), u = r > 0 ? c / r * 100 : 0, p = Jn(c, r, n, a, o), h = Xn[i], w = Zn[p], b = l === !0 ? `${Math.round(u)}%` : l || null;
3278
3278
  return /* @__PURE__ */ g(
3279
3279
  "div",
3280
3280
  {
@@ -3331,7 +3331,7 @@ function ni({
3331
3331
  }
3332
3332
  );
3333
3333
  }
3334
- const ri = {
3334
+ const ai = {
3335
3335
  id: "progress",
3336
3336
  name: "Progress",
3337
3337
  tier: "atom",
@@ -3360,7 +3360,7 @@ const ri = {
3360
3360
  ariaAttributes: ["aria-valuenow", "aria-valuemin", "aria-valuemax"],
3361
3361
  notes: "Uses native progressbar role. Add aria-label on the wrapping element for screen-reader context."
3362
3362
  }
3363
- }, Oe = 120, Zn = `
3363
+ }, He = 120, Qn = `
3364
3364
  @keyframes lucent-menu-in {
3365
3365
  from { opacity: 0; transform: scale(0.97) translateY(-2px); }
3366
3366
  to { opacity: 1; transform: scale(1) translateY(0); }
@@ -3369,37 +3369,37 @@ const ri = {
3369
3369
  from { opacity: 1; transform: scale(1) translateY(0); }
3370
3370
  to { opacity: 0; transform: scale(0.97) translateY(-2px); }
3371
3371
  }
3372
- `, pt = {
3372
+ `, ht = {
3373
3373
  sm: "var(--lucent-space-2)",
3374
3374
  md: "var(--lucent-space-2)",
3375
3375
  lg: "var(--lucent-space-3)"
3376
- }, Qn = {
3376
+ }, er = {
3377
3377
  sm: "sm",
3378
3378
  md: "md",
3379
3379
  lg: "lg"
3380
- }, er = {
3380
+ }, tr = {
3381
3381
  sm: "xs",
3382
3382
  md: "sm",
3383
3383
  lg: "md"
3384
- }, tr = {
3384
+ }, nr = {
3385
3385
  sm: 12,
3386
3386
  md: 14,
3387
3387
  lg: 16
3388
- }, ht = Ce(null), Ae = 4;
3389
- function nr(e, r, n) {
3388
+ }, ft = Ie(null), Ee = 4;
3389
+ function rr(e, r, n) {
3390
3390
  const i = r.offsetWidth, a = r.offsetHeight, o = window.innerWidth, l = window.innerHeight;
3391
3391
  let s = 0, c = 0, u = n;
3392
3392
  const p = {
3393
- top: e.top - a - Ae,
3394
- bottom: e.bottom + Ae,
3395
- left: e.left - i - Ae,
3396
- right: e.right + Ae
3393
+ top: e.top - a - Ee,
3394
+ bottom: e.bottom + Ee,
3395
+ left: e.left - i - Ee,
3396
+ right: e.right + Ee
3397
3397
  };
3398
3398
  u.startsWith("bottom") ? (s = p.bottom, s + a > l && p.top >= 0 && (s = p.top, u = u.replace("bottom", "top"))) : u.startsWith("top") ? (s = p.top, s < 0 && p.bottom + a <= l && (s = p.bottom, u = u.replace("top", "bottom"))) : u === "left" ? (s = e.top + e.height / 2 - a / 2, c = p.left, c < 0 && p.right + i <= o && (c = p.right, u = "right")) : u === "right" && (s = e.top + e.height / 2 - a / 2, c = p.right, c + i > o && p.left >= 0 && (c = p.left, u = "left")), (u.startsWith("top") || u.startsWith("bottom")) && (u.endsWith("-start") ? c = e.left : u.endsWith("-end") ? c = e.right - i : c = e.left + e.width / 2 - i / 2), c + i > o && (c = o - i - 8), c < 0 && (c = 8), s + a > l && (s = l - a - 8), s < 0 && (s = 8);
3399
3399
  let h = "top left";
3400
3400
  return u.startsWith("top") ? h = u.endsWith("-end") ? "bottom right" : u.endsWith("-start") ? "bottom left" : "bottom center" : u.startsWith("bottom") ? h = u.endsWith("-end") ? "top right" : u.endsWith("-start") ? "top left" : "top center" : u === "left" ? h = "center right" : u === "right" && (h = "center left"), { top: s, left: c, transformOrigin: h };
3401
3401
  }
3402
- function at({
3402
+ function ot({
3403
3403
  onSelect: e,
3404
3404
  children: r,
3405
3405
  icon: n,
@@ -3409,9 +3409,9 @@ function at({
3409
3409
  selected: l = !1,
3410
3410
  style: s
3411
3411
  }) {
3412
- const c = ne(ht), u = V(-1);
3412
+ const c = ne(ft), u = V(-1);
3413
3413
  u.current === -1 && c && (u.current = c.getItemIndex(), c.registerItem(u.current, a));
3414
- const p = c ? c.activeIndex === u.current : !1, h = (c == null ? void 0 : c.size) ?? "md", w = pt[h], b = Qn[h], m = tr[h], f = () => {
3414
+ const p = c ? c.activeIndex === u.current : !1, h = (c == null ? void 0 : c.size) ?? "md", w = ht[h], b = er[h], m = nr[h], f = () => {
3415
3415
  a || (e(), c == null || c.close());
3416
3416
  }, d = () => {
3417
3417
  !a && c && c.setActiveIndex(u.current);
@@ -3446,8 +3446,8 @@ function at({
3446
3446
  display: "flex",
3447
3447
  color: a ? "var(--lucent-text-disabled)" : o ? "var(--lucent-danger-text)" : "var(--lucent-text-secondary)"
3448
3448
  }, children: n }),
3449
- /* @__PURE__ */ t("span", { style: { flex: 1, minWidth: 0 }, children: /* @__PURE__ */ t(U, { size: b, style: { color: y }, children: r }) }),
3450
- i && /* @__PURE__ */ t(U, { size: h === "lg" ? "sm" : "xs", style: { color: "var(--lucent-text-secondary)", flexShrink: 0 }, children: i }),
3449
+ /* @__PURE__ */ t("span", { style: { flex: 1, minWidth: 0 }, children: /* @__PURE__ */ t(j, { size: b, style: { color: y }, children: r }) }),
3450
+ i && /* @__PURE__ */ t(j, { size: h === "lg" ? "sm" : "xs", style: { color: "var(--lucent-text-secondary)", flexShrink: 0 }, children: i }),
3451
3451
  l && /* @__PURE__ */ t("span", { style: {
3452
3452
  flexShrink: 0,
3453
3453
  display: "flex",
@@ -3457,7 +3457,7 @@ function at({
3457
3457
  }
3458
3458
  );
3459
3459
  }
3460
- function rr({ style: e }) {
3460
+ function ar({ style: e }) {
3461
3461
  return /* @__PURE__ */ t(
3462
3462
  "div",
3463
3463
  {
@@ -3471,14 +3471,14 @@ function rr({ style: e }) {
3471
3471
  }
3472
3472
  );
3473
3473
  }
3474
- function ai({ label: e, children: r, style: n }) {
3475
- const i = ne(ht), a = (i == null ? void 0 : i.size) ?? "md", o = pt[a];
3474
+ function oi({ label: e, children: r, style: n }) {
3475
+ const i = ne(ft), a = (i == null ? void 0 : i.size) ?? "md", o = ht[a];
3476
3476
  return /* @__PURE__ */ g("div", { role: "group", "aria-label": e, style: n, children: [
3477
- /* @__PURE__ */ t("div", { style: { padding: `${o} ${o} var(--lucent-space-1)` }, children: /* @__PURE__ */ t(U, { size: er[a], color: "secondary", weight: "medium", children: e }) }),
3477
+ /* @__PURE__ */ t("div", { style: { padding: `${o} ${o} var(--lucent-space-1)` }, children: /* @__PURE__ */ t(j, { size: tr[a], color: "secondary", weight: "medium", children: e }) }),
3478
3478
  r
3479
3479
  ] });
3480
3480
  }
3481
- function _t({
3481
+ function Yt({
3482
3482
  trigger: e,
3483
3483
  children: r,
3484
3484
  placement: n = "bottom-start",
@@ -3491,7 +3491,7 @@ function _t({
3491
3491
  const c = a !== void 0, [u, p] = q(!1), h = c ? a : u, [w, b] = q(!1), [m, f] = q("idle"), d = V(null), y = V(null), x = V(null), T = V(!1), [S, k] = q(null), v = V(0), E = V(/* @__PURE__ */ new Map()), [C, z] = q(-1);
3492
3492
  if (!T.current && typeof document < "u") {
3493
3493
  const L = document.createElement("style");
3494
- L.textContent = Zn, document.head.appendChild(L), T.current = !0;
3494
+ L.textContent = Qn, document.head.appendChild(L), T.current = !0;
3495
3495
  }
3496
3496
  H(() => {
3497
3497
  if (h)
@@ -3500,7 +3500,7 @@ function _t({
3500
3500
  f("exiting");
3501
3501
  const L = setTimeout(() => {
3502
3502
  b(!1), f("idle");
3503
- }, Oe);
3503
+ }, He);
3504
3504
  return () => clearTimeout(L);
3505
3505
  }
3506
3506
  }, [h]);
@@ -3517,23 +3517,23 @@ function _t({
3517
3517
  const L = requestAnimationFrame(() => {
3518
3518
  const A = y.current, I = d.current;
3519
3519
  if (!A || !I) return;
3520
- const N = I.getBoundingClientRect();
3521
- k(nr(N, A, n));
3520
+ const F = I.getBoundingClientRect();
3521
+ k(rr(F, A, n));
3522
3522
  });
3523
3523
  return () => cancelAnimationFrame(L);
3524
3524
  }, [w, m, n]), H(() => {
3525
3525
  if (!w || m !== "entering") return;
3526
3526
  const L = setTimeout(() => {
3527
- const I = Array.from(E.current.entries()).sort((N, G) => N[0] - G[0]).find(([, N]) => !N.disabled);
3527
+ const I = Array.from(E.current.entries()).sort((F, U) => F[0] - U[0]).find(([, F]) => !F.disabled);
3528
3528
  z(I ? I[0] : -1);
3529
3529
  }, 0);
3530
3530
  return () => clearTimeout(L);
3531
3531
  }, [w, m]), H(() => {
3532
3532
  if (!h) return;
3533
3533
  const L = (I) => {
3534
- var G, F;
3535
- const N = I.target;
3536
- (G = d.current) != null && G.contains(N) || (F = y.current) != null && F.contains(N) || M();
3534
+ var U, N;
3535
+ const F = I.target;
3536
+ (U = d.current) != null && U.contains(F) || (N = y.current) != null && N.contains(F) || M();
3537
3537
  }, A = requestAnimationFrame(() => {
3538
3538
  document.addEventListener("mousedown", L);
3539
3539
  });
@@ -3562,15 +3562,15 @@ function _t({
3562
3562
  break;
3563
3563
  case "ArrowDown": {
3564
3564
  L.preventDefault(), z((I) => {
3565
- const N = A.indexOf(I);
3566
- return N < A.length - 1 ? A[N + 1] : A[0];
3565
+ const F = A.indexOf(I);
3566
+ return F < A.length - 1 ? A[F + 1] : A[0];
3567
3567
  });
3568
3568
  break;
3569
3569
  }
3570
3570
  case "ArrowUp": {
3571
3571
  L.preventDefault(), z((I) => {
3572
- const N = A.indexOf(I);
3573
- return N > 0 ? A[N - 1] : A[A.length - 1];
3572
+ const F = A.indexOf(I);
3573
+ return F > 0 ? A[F - 1] : A[A.length - 1];
3574
3574
  });
3575
3575
  break;
3576
3576
  }
@@ -3587,8 +3587,8 @@ function _t({
3587
3587
  L.preventDefault();
3588
3588
  const I = y.current;
3589
3589
  if (I) {
3590
- const N = I.querySelector('[data-active="true"]');
3591
- N == null || N.click();
3590
+ const F = I.querySelector('[data-active="true"]');
3591
+ F == null || F.click();
3592
3592
  }
3593
3593
  break;
3594
3594
  }
@@ -3624,8 +3624,8 @@ function _t({
3624
3624
  close: M,
3625
3625
  getItemIndex: () => v.current++,
3626
3626
  size: i
3627
- }, Y = rt();
3628
- return /* @__PURE__ */ g(J, { children: [
3627
+ }, Y = at();
3628
+ return /* @__PURE__ */ g(Z, { children: [
3629
3629
  /* @__PURE__ */ t(
3630
3630
  "span",
3631
3631
  {
@@ -3647,7 +3647,7 @@ function _t({
3647
3647
  }
3648
3648
  ),
3649
3649
  w && ie(
3650
- /* @__PURE__ */ t(ht.Provider, { value: O, children: /* @__PURE__ */ t(
3650
+ /* @__PURE__ */ t(ft.Provider, { value: O, children: /* @__PURE__ */ t(
3651
3651
  "div",
3652
3652
  {
3653
3653
  ref: y,
@@ -3665,10 +3665,10 @@ function _t({
3665
3665
  border: "1px solid color-mix(in srgb, var(--lucent-accent-default) 15%, var(--lucent-border-default))",
3666
3666
  borderRadius: "var(--lucent-radius-lg)",
3667
3667
  boxShadow: "0 0 24px -4px color-mix(in srgb, var(--lucent-accent-default) 12%, transparent), var(--lucent-shadow-md)",
3668
- padding: pt[i],
3668
+ padding: ht[i],
3669
3669
  maxHeight: "min(320px, calc(100vh - 32px))",
3670
3670
  overflowY: "auto",
3671
- animation: m === "exiting" ? `lucent-menu-out ${Oe}ms var(--lucent-easing-default) forwards` : `lucent-menu-in ${Oe}ms var(--lucent-easing-decelerate)`,
3671
+ animation: m === "exiting" ? `lucent-menu-out ${He}ms var(--lucent-easing-default) forwards` : `lucent-menu-in ${He}ms var(--lucent-easing-decelerate)`,
3672
3672
  transformOrigin: (S == null ? void 0 : S.transformOrigin) ?? "top left",
3673
3673
  outline: "none",
3674
3674
  pointerEvents: m === "exiting" ? "none" : "auto",
@@ -3681,7 +3681,7 @@ function _t({
3681
3681
  )
3682
3682
  ] });
3683
3683
  }
3684
- const oi = {
3684
+ const ii = {
3685
3685
  id: "menu",
3686
3686
  name: "Menu",
3687
3687
  tier: "molecule",
@@ -3913,7 +3913,7 @@ const oi = {
3913
3913
  ],
3914
3914
  notes: 'Focus returns to the trigger element after the menu is dismissed via Escape or selection. Disabled items are skipped during keyboard navigation and have aria-disabled. Selected items use role="menuitemcheckbox" with aria-checked for screen reader announcement. The popover is portaled to document.body (or portalContainer) but remains semantically linked to the trigger via aria-controls.'
3915
3915
  }
3916
- }, Yt = {
3916
+ }, Kt = {
3917
3917
  primary: {
3918
3918
  background: "var(--lucent-accent-default)",
3919
3919
  color: "var(--lucent-accent-fg)",
@@ -3949,25 +3949,25 @@ const oi = {
3949
3949
  color: "var(--lucent-danger-text)",
3950
3950
  border: "1px solid transparent"
3951
3951
  }
3952
- }, ar = {
3952
+ }, or = {
3953
3953
  "2xs": { height: "22px", paddingOuter: "var(--lucent-space-2)", paddingInner: "var(--lucent-space-1)", fontSize: "var(--lucent-font-size-xs)", borderRadius: "var(--lucent-radius-md)" },
3954
3954
  xs: { height: "26px", paddingOuter: "var(--lucent-space-3)", paddingInner: "var(--lucent-space-1)", fontSize: "var(--lucent-font-size-xs)" },
3955
3955
  sm: { height: "calc(var(--lucent-space-8) * 0.5 + 18px)", paddingOuter: "var(--lucent-space-4)", paddingInner: "var(--lucent-space-2)", fontSize: "var(--lucent-font-size-sm)" },
3956
3956
  md: { height: "calc(var(--lucent-space-10) * 0.5 + 22px)", paddingOuter: "var(--lucent-space-5)", paddingInner: "var(--lucent-space-3)", fontSize: "var(--lucent-font-size-md)" },
3957
3957
  lg: { height: "calc(var(--lucent-space-12) * 0.5 + 26px)", paddingOuter: "var(--lucent-space-6)", paddingInner: "var(--lucent-space-3)", fontSize: "var(--lucent-font-size-lg)" }
3958
- }, or = { "2xs": 8, xs: 10, sm: 12, md: 14, lg: 16 }, ir = {
3958
+ }, ir = { "2xs": 8, xs: 10, sm: 12, md: 14, lg: 16 }, sr = {
3959
3959
  "2xs": "24px",
3960
3960
  xs: "30px",
3961
3961
  sm: "34px",
3962
3962
  md: "36px",
3963
3963
  lg: "42px"
3964
- }, sr = {
3964
+ }, lr = {
3965
3965
  "2xs": "sm",
3966
3966
  xs: "sm",
3967
3967
  sm: "sm",
3968
3968
  md: "md",
3969
3969
  lg: "lg"
3970
- }, lr = {
3970
+ }, cr = {
3971
3971
  primary: "var(--lucent-accent-hover)",
3972
3972
  secondary: "color-mix(in srgb, var(--lucent-accent-default) 22%, transparent)",
3973
3973
  outline: "color-mix(in srgb, var(--lucent-accent-default) 10%, transparent)",
@@ -3975,7 +3975,7 @@ const oi = {
3975
3975
  danger: "var(--lucent-danger-hover)",
3976
3976
  "danger-outline": "color-mix(in srgb, var(--lucent-danger-default) 10%, transparent)",
3977
3977
  "danger-ghost": "color-mix(in srgb, var(--lucent-danger-default) 8%, transparent)"
3978
- }, cr = {
3978
+ }, dr = {
3979
3979
  primary: "0 4px 14px -2px color-mix(in srgb, var(--lucent-accent-default) 25%, transparent)",
3980
3980
  secondary: "0 4px 14px -2px color-mix(in srgb, var(--lucent-accent-default) 20%, transparent)",
3981
3981
  outline: "0 4px 14px -2px color-mix(in srgb, var(--lucent-accent-default) 20%, transparent)",
@@ -3984,20 +3984,20 @@ const oi = {
3984
3984
  "danger-outline": "0 4px 14px -2px color-mix(in srgb, var(--lucent-danger-default) 20%, transparent)",
3985
3985
  "danger-ghost": "0 4px 14px -2px color-mix(in srgb, var(--lucent-danger-default) 15%, transparent)"
3986
3986
  };
3987
- function xt(e, r, n) {
3988
- e.style.transform = "translateY(-1px)", e.style.boxShadow = cr[r], e.style.background = lr[r], (r === "danger" && n !== !1 || r === "danger-outline" && n !== !1) && (e.style.borderColor = "var(--lucent-danger-hover)");
3989
- }
3990
3987
  function wt(e, r, n) {
3991
- e.style.transform = "", e.style.boxShadow = "", e.style.background = Yt[r].background, (r === "danger" && n !== !1 || r === "danger-outline" && n !== !1) && (e.style.borderColor = "var(--lucent-danger-default)");
3988
+ e.style.transform = "translateY(-1px)", e.style.boxShadow = dr[r], e.style.background = cr[r], (r === "danger" && n !== !1 || r === "danger-outline" && n !== !1) && (e.style.borderColor = "var(--lucent-danger-hover)");
3992
3989
  }
3993
- function kt(e, r) {
3990
+ function kt(e, r, n) {
3991
+ e.style.transform = "", e.style.boxShadow = "", e.style.background = Kt[r].background, (r === "danger" && n !== !1 || r === "danger-outline" && n !== !1) && (e.style.borderColor = "var(--lucent-danger-default)");
3992
+ }
3993
+ function St(e, r) {
3994
3994
  const i = r === "danger" || r === "danger-outline" || r === "danger-ghost" ? "color-mix(in srgb, var(--lucent-danger-default) 40%, transparent)" : "color-mix(in srgb, var(--lucent-accent-default) 40%, transparent)";
3995
3995
  e.style.transform = "translateY(1px)", e.style.boxShadow = `0 0 0 4px ${i}`, e.dataset.pressed = "1";
3996
3996
  }
3997
- function St(e) {
3997
+ function Tt(e) {
3998
3998
  e.style.transform = "", e.style.boxShadow = "", delete e.dataset.pressed;
3999
3999
  }
4000
- function dr({
4000
+ function ur({
4001
4001
  children: e,
4002
4002
  onClick: r,
4003
4003
  menuItems: n,
@@ -4010,7 +4010,7 @@ function dr({
4010
4010
  leftIcon: u,
4011
4011
  style: p
4012
4012
  }) {
4013
- const h = s ?? c, [w, b] = q(!1), m = ar[a], f = m.borderRadius ?? "var(--lucent-radius-lg)", d = or[a], y = h ? {
4013
+ const h = s ?? c, [w, b] = q(!1), m = or[a], f = m.borderRadius ?? "var(--lucent-radius-lg)", d = ir[a], y = h ? {
4014
4014
  background: "color-mix(in srgb, var(--lucent-text-primary) 6%, transparent)",
4015
4015
  color: "var(--lucent-text-disabled)",
4016
4016
  borderColor: "transparent"
@@ -4031,7 +4031,7 @@ function dr({
4031
4031
  transition: "background var(--lucent-duration-fast) var(--lucent-easing-default), border-color var(--lucent-duration-fast) var(--lucent-easing-default), box-shadow var(--lucent-duration-fast) var(--lucent-easing-default), transform 80ms var(--lucent-easing-default)",
4032
4032
  height: m.height,
4033
4033
  fontSize: m.fontSize,
4034
- ...Yt[i],
4034
+ ...Kt[i],
4035
4035
  ...o === !1 && { border: "none" },
4036
4036
  ...y
4037
4037
  }, T = "var(--lucent-radius-sm)", S = `${f} ${T} ${T} ${f}`, k = `${T} ${f} ${f} ${T}`;
@@ -4055,16 +4055,16 @@ function dr({
4055
4055
  "aria-busy": c,
4056
4056
  onClick: r,
4057
4057
  onMouseEnter: (v) => {
4058
- h || xt(v.currentTarget, i, o);
4058
+ h || wt(v.currentTarget, i, o);
4059
4059
  },
4060
4060
  onMouseLeave: (v) => {
4061
- h || wt(v.currentTarget, i, o);
4061
+ h || kt(v.currentTarget, i, o);
4062
4062
  },
4063
4063
  onMouseDown: (v) => {
4064
- h || kt(v.currentTarget, i);
4064
+ h || St(v.currentTarget, i);
4065
4065
  },
4066
4066
  onMouseUp: (v) => {
4067
- St(v.currentTarget);
4067
+ Tt(v.currentTarget);
4068
4068
  },
4069
4069
  onFocus: (v) => {
4070
4070
  v.currentTarget.dataset.pressed || (v.currentTarget.style.boxShadow = "0 0 0 3px var(--lucent-accent-subtle)");
@@ -4079,17 +4079,17 @@ function dr({
4079
4079
  },
4080
4080
  children: [
4081
4081
  u,
4082
- c ? /* @__PURE__ */ t(ur, {}) : e
4082
+ c ? /* @__PURE__ */ t(pr, {}) : e
4083
4083
  ]
4084
4084
  }
4085
4085
  ),
4086
4086
  /* @__PURE__ */ t(
4087
- _t,
4087
+ Yt,
4088
4088
  {
4089
4089
  open: w,
4090
4090
  onOpenChange: b,
4091
4091
  placement: l,
4092
- size: sr[a],
4092
+ size: lr[a],
4093
4093
  trigger: /* @__PURE__ */ t(
4094
4094
  "button",
4095
4095
  {
@@ -4097,16 +4097,16 @@ function dr({
4097
4097
  disabled: h,
4098
4098
  "aria-label": "More actions",
4099
4099
  onMouseEnter: (v) => {
4100
- h || xt(v.currentTarget, i, o);
4100
+ h || wt(v.currentTarget, i, o);
4101
4101
  },
4102
4102
  onMouseLeave: (v) => {
4103
- h || wt(v.currentTarget, i, o);
4103
+ h || kt(v.currentTarget, i, o);
4104
4104
  },
4105
4105
  onMouseDown: (v) => {
4106
- h || kt(v.currentTarget, i);
4106
+ h || St(v.currentTarget, i);
4107
4107
  },
4108
4108
  onMouseUp: (v) => {
4109
- St(v.currentTarget);
4109
+ Tt(v.currentTarget);
4110
4110
  },
4111
4111
  onFocus: (v) => {
4112
4112
  v.currentTarget.dataset.pressed || (v.currentTarget.style.boxShadow = "0 0 0 3px var(--lucent-accent-subtle)");
@@ -4118,13 +4118,13 @@ function dr({
4118
4118
  ...x,
4119
4119
  borderRadius: k,
4120
4120
  padding: 0,
4121
- width: ir[a]
4121
+ width: sr[a]
4122
4122
  },
4123
4123
  children: /* @__PURE__ */ t("svg", { width: d, height: d, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: 2.5, strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": !0, style: { flexShrink: 0, transition: "transform var(--lucent-duration-fast) var(--lucent-easing-default)", ...w && { transform: "rotate(180deg)" } }, children: /* @__PURE__ */ t("polyline", { points: "6 9 12 15 18 9" }) })
4124
4124
  }
4125
4125
  ),
4126
4126
  children: n.map((v, E) => /* @__PURE__ */ t(
4127
- at,
4127
+ ot,
4128
4128
  {
4129
4129
  onSelect: v.onSelect,
4130
4130
  ...v.disabled !== void 0 && { disabled: v.disabled },
@@ -4140,14 +4140,14 @@ function dr({
4140
4140
  }
4141
4141
  );
4142
4142
  }
4143
- dr.displayName = "SplitButton";
4144
- function ur() {
4143
+ ur.displayName = "SplitButton";
4144
+ function pr() {
4145
4145
  return /* @__PURE__ */ g("svg", { width: 14, height: 14, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: 2.5, strokeLinecap: "round", "aria-hidden": !0, style: { animation: "lucent-spin 0.7s linear infinite", flexShrink: 0 }, children: [
4146
4146
  /* @__PURE__ */ t("style", { children: "@keyframes lucent-spin { to { transform: rotate(360deg); } }" }),
4147
4147
  /* @__PURE__ */ t("path", { d: "M12 2a10 10 0 0 1 10 10" })
4148
4148
  ] });
4149
4149
  }
4150
- const ii = {
4150
+ const si = {
4151
4151
  id: "split-button",
4152
4152
  name: "SplitButton",
4153
4153
  tier: "atom",
@@ -4216,11 +4216,11 @@ const ii = {
4216
4216
  notes: 'The wrapper uses role="group" with aria-label derived from children. The chevron button carries aria-haspopup="menu" and aria-expanded via Menu. Primary button has aria-busy when loading.'
4217
4217
  }
4218
4218
  }, we = "var(--lucent-radius-sm)";
4219
- function pr({
4219
+ function hr({
4220
4220
  children: e,
4221
4221
  style: r
4222
4222
  }) {
4223
- const n = sn.toArray(e).filter(ln), i = n.length;
4223
+ const n = ln.toArray(e).filter(cn), i = n.length;
4224
4224
  return /* @__PURE__ */ t(
4225
4225
  "div",
4226
4226
  {
@@ -4236,7 +4236,7 @@ function pr({
4236
4236
  if (i === 1) return a;
4237
4237
  const u = a.props.style ?? {}, p = u.borderRadius ?? "var(--lucent-radius-lg)";
4238
4238
  let h;
4239
- return l ? h = `${p} ${we} ${we} ${p}` : s ? h = `${we} ${p} ${p} ${we}` : h = we, cn(a, {
4239
+ return l ? h = `${p} ${we} ${we} ${p}` : s ? h = `${we} ${p} ${p} ${we}` : h = we, dn(a, {
4240
4240
  key: o,
4241
4241
  style: {
4242
4242
  ...u,
@@ -4247,8 +4247,8 @@ function pr({
4247
4247
  }
4248
4248
  );
4249
4249
  }
4250
- pr.displayName = "ButtonGroup";
4251
- const si = {
4250
+ hr.displayName = "ButtonGroup";
4251
+ const li = {
4252
4252
  id: "button-group",
4253
4253
  name: "ButtonGroup",
4254
4254
  tier: "atom",
@@ -4297,7 +4297,7 @@ const si = {
4297
4297
  notes: 'Uses role="group" on the wrapper. Individual button accessibility is inherited from the children.'
4298
4298
  }
4299
4299
  };
4300
- function li({
4300
+ function ci({
4301
4301
  label: e,
4302
4302
  htmlFor: r,
4303
4303
  required: n = !1,
@@ -4309,14 +4309,14 @@ function li({
4309
4309
  const s = a ?? i, c = a ? "danger" : "secondary";
4310
4310
  return /* @__PURE__ */ g("div", { style: { display: "flex", flexDirection: "column", gap: "var(--lucent-space-2)", ...l }, children: [
4311
4311
  e && /* @__PURE__ */ g("div", { style: { display: "flex", alignItems: "baseline", gap: "var(--lucent-space-1)" }, children: [
4312
- /* @__PURE__ */ t(U, { as: "label", size: "sm", weight: "medium", lineHeight: "tight", ...r !== void 0 && { htmlFor: r }, children: e }),
4313
- n && /* @__PURE__ */ t(U, { as: "span", size: "sm", color: "danger", lineHeight: "tight", "aria-hidden": "true", children: "*" })
4312
+ /* @__PURE__ */ t(j, { as: "label", size: "sm", weight: "medium", lineHeight: "tight", ...r !== void 0 && { htmlFor: r }, children: e }),
4313
+ n && /* @__PURE__ */ t(j, { as: "span", size: "sm", color: "danger", lineHeight: "tight", "aria-hidden": "true", children: "*" })
4314
4314
  ] }),
4315
4315
  o,
4316
- s && /* @__PURE__ */ t(U, { size: "xs", color: c, lineHeight: "tight", children: s })
4316
+ s && /* @__PURE__ */ t(j, { size: "xs", color: c, lineHeight: "tight", children: s })
4317
4317
  ] });
4318
4318
  }
4319
- const ci = {
4319
+ const di = {
4320
4320
  id: "form-field",
4321
4321
  name: "FormField",
4322
4322
  tier: "molecule",
@@ -4402,11 +4402,11 @@ const ci = {
4402
4402
  ariaAttributes: ["aria-required", "aria-describedby"],
4403
4403
  notes: 'Link the wrapped control to an error message using aria-describedby on the control and a matching id on the error element for full screen reader support. The required asterisk is aria-hidden; set aria-required="true" on the control itself.'
4404
4404
  }
4405
- }, Tt = { sm: 14, md: 18, lg: 20 }, hr = { sm: "sm", md: "md", lg: "md" }, fr = { sm: "var(--lucent-space-1)", md: "var(--lucent-space-2)", lg: "var(--lucent-space-2)" }, mr = ({ size: e = 16 }) => /* @__PURE__ */ g("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
4405
+ }, Ct = { sm: 14, md: 18, lg: 20 }, fr = { sm: "sm", md: "md", lg: "md" }, mr = { sm: "var(--lucent-space-1)", md: "var(--lucent-space-2)", lg: "var(--lucent-space-2)" }, gr = ({ size: e = 16 }) => /* @__PURE__ */ g("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
4406
4406
  /* @__PURE__ */ t("circle", { cx: "6.5", cy: "6.5", r: "4", stroke: "currentColor", strokeWidth: "1.5" }),
4407
4407
  /* @__PURE__ */ t("path", { d: "M9.5 9.5L13 13", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" })
4408
- ] }), gr = ({ size: e = 16 }) => /* @__PURE__ */ t("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ t("path", { d: "M2 3h12M4 8h8M6 13h4", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }) }), vr = () => /* @__PURE__ */ t("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ t("path", { d: "M3 3L11 11M11 3L3 11", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }) });
4409
- function di({
4408
+ ] }), vr = ({ size: e = 16 }) => /* @__PURE__ */ t("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ t("path", { d: "M2 3h12M4 8h8M6 13h4", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }) }), br = () => /* @__PURE__ */ t("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ t("path", { d: "M3 3L11 11M11 3L3 11", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }) });
4409
+ function ui({
4410
4410
  value: e,
4411
4411
  onChange: r,
4412
4412
  mode: n = "search",
@@ -4436,7 +4436,7 @@ function di({
4436
4436
  T.current = setTimeout(() => d(!1), 150);
4437
4437
  }, M = () => {
4438
4438
  T.current && clearTimeout(T.current), d(!0);
4439
- }, $ = p ? /* @__PURE__ */ t(kn, { size: "sm" }) : e ? /* @__PURE__ */ t(
4439
+ }, $ = p ? /* @__PURE__ */ t(Sn, { size: "sm" }) : e ? /* @__PURE__ */ t(
4440
4440
  "button",
4441
4441
  {
4442
4442
  type: "button",
@@ -4458,12 +4458,12 @@ function di({
4458
4458
  onMouseLeave: (R) => {
4459
4459
  R.currentTarget.style.color = "var(--lucent-text-secondary)";
4460
4460
  },
4461
- children: /* @__PURE__ */ t(vr, {})
4461
+ children: /* @__PURE__ */ t(br, {})
4462
4462
  }
4463
4463
  ) : null;
4464
4464
  return /* @__PURE__ */ g("div", { ref: S, style: { ...b }, children: [
4465
4465
  /* @__PURE__ */ t(
4466
- Gt,
4466
+ jt,
4467
4467
  {
4468
4468
  id: w,
4469
4469
  type: "text",
@@ -4472,7 +4472,7 @@ function di({
4472
4472
  onChange: (R) => r(R.target.value),
4473
4473
  placeholder: m,
4474
4474
  disabled: h,
4475
- leftElement: n === "filter" ? /* @__PURE__ */ t(gr, { size: Tt[a] }) : /* @__PURE__ */ t(mr, { size: Tt[a] }),
4475
+ leftElement: n === "filter" ? /* @__PURE__ */ t(vr, { size: Ct[a] }) : /* @__PURE__ */ t(gr, { size: Ct[a] }),
4476
4476
  rightElement: $ ?? void 0,
4477
4477
  onFocus: M,
4478
4478
  onBlur: D,
@@ -4499,7 +4499,7 @@ function di({
4499
4499
  border: "1px solid color-mix(in srgb, var(--lucent-accent-default) 15%, var(--lucent-border-default))",
4500
4500
  borderRadius: "var(--lucent-radius-lg)",
4501
4501
  boxShadow: "0 0 24px -4px color-mix(in srgb, var(--lucent-accent-default) 12%, transparent), var(--lucent-shadow-md)",
4502
- padding: fr[a]
4502
+ padding: mr[a]
4503
4503
  },
4504
4504
  children: c.map((R, W) => /* @__PURE__ */ t(
4505
4505
  "div",
@@ -4516,7 +4516,7 @@ function di({
4516
4516
  background: y === W ? "color-mix(in srgb, var(--lucent-accent-default) 14%, transparent)" : "transparent",
4517
4517
  transition: "background var(--lucent-duration-fast) var(--lucent-easing-default)"
4518
4518
  },
4519
- children: /* @__PURE__ */ t(U, { as: "span", size: hr[a], children: R.label })
4519
+ children: /* @__PURE__ */ t(j, { as: "span", size: fr[a], children: R.label })
4520
4520
  },
4521
4521
  R.id
4522
4522
  ))
@@ -4526,7 +4526,7 @@ function di({
4526
4526
  )
4527
4527
  ] });
4528
4528
  }
4529
- const ui = {
4529
+ const pi = {
4530
4530
  id: "search-input",
4531
4531
  name: "SearchInput",
4532
4532
  tier: "molecule",
@@ -4660,27 +4660,27 @@ const [results, setResults] = useState([]);
4660
4660
  keyboardInteractions: ["Enter to select focused result", "Escape to close dropdown"],
4661
4661
  notes: 'The results list uses role="listbox" with role="option" items. For full keyboard navigation (arrow keys to move between results), wire up onKeyDown on the Input and manage an activeIndex state.'
4662
4662
  }
4663
- }, ft = Ce({ px: "0", py: "0" }), br = {
4663
+ }, mt = Ie({ px: "0", py: "0" }), yr = {
4664
4664
  none: { py: "0", px: "0" },
4665
4665
  sm: { py: "var(--lucent-space-2)", px: "var(--lucent-space-3)" },
4666
4666
  md: { py: "var(--lucent-space-4)", px: "var(--lucent-space-5)" },
4667
4667
  lg: { py: "var(--lucent-space-6)", px: "var(--lucent-space-8)" }
4668
- }, Ee = {
4668
+ }, qe = {
4669
4669
  none: "var(--lucent-shadow-none)",
4670
4670
  sm: "var(--lucent-shadow-sm)",
4671
4671
  md: "var(--lucent-shadow-md)",
4672
4672
  lg: "var(--lucent-shadow-lg)"
4673
- }, yr = {
4673
+ }, xr = {
4674
4674
  none: "var(--lucent-radius-none)",
4675
4675
  sm: "var(--lucent-radius-sm)",
4676
4676
  md: "var(--lucent-radius-md)",
4677
4677
  lg: "var(--lucent-radius-lg)"
4678
- }, xr = {
4678
+ }, wr = {
4679
4679
  success: "var(--lucent-success-default)",
4680
4680
  warning: "var(--lucent-warning-default)",
4681
4681
  danger: "var(--lucent-danger-default)",
4682
4682
  info: "var(--lucent-info-default)"
4683
- }, wr = {
4683
+ }, kr = {
4684
4684
  ghost: {
4685
4685
  background: "transparent",
4686
4686
  border: "none",
@@ -4711,22 +4711,22 @@ const [results, setResults] = useState([]);
4711
4711
  shadowDefault: "none",
4712
4712
  dividers: !1
4713
4713
  }
4714
- }, kr = [
4714
+ }, Sr = [
4715
4715
  "transform 80ms var(--lucent-easing-default)",
4716
4716
  "box-shadow var(--lucent-duration-fast) var(--lucent-easing-default)",
4717
4717
  "border-color var(--lucent-duration-fast) var(--lucent-easing-default)",
4718
4718
  "background var(--lucent-duration-fast) var(--lucent-easing-default)"
4719
- ].join(", "), Sr = "0 4px 14px -2px var(--lucent-accent-subtle)", Tr = "0 4px 14px -2px color-mix(in srgb, var(--lucent-text-primary) 12%, transparent)", Cr = "0 0 0 3px var(--lucent-accent-subtle)", Ir = "0 0 0 2px var(--lucent-surface), 0 0 0 4px var(--lucent-accent-default)", Mr = "0 0 0 3px var(--lucent-accent-subtle)";
4719
+ ].join(", "), Tr = "0 4px 14px -2px var(--lucent-accent-subtle)", Cr = "0 4px 14px -2px color-mix(in srgb, var(--lucent-text-primary) 12%, transparent)", Ir = "0 0 0 3px var(--lucent-accent-subtle)", Mr = "0 0 0 2px var(--lucent-surface), 0 0 0 4px var(--lucent-accent-default)", zr = "0 0 0 3px var(--lucent-accent-subtle)";
4720
4720
  function ge(...e) {
4721
4721
  const r = e.filter(
4722
4722
  (n) => n != null && n !== "none" && n !== "var(--lucent-shadow-none)"
4723
4723
  );
4724
4724
  return r.length > 0 ? r.join(", ") : void 0;
4725
4725
  }
4726
- function zr(e, r, n) {
4726
+ function Ar(e, r, n) {
4727
4727
  return !r || n ? e.background : "var(--lucent-accent-subtle)";
4728
4728
  }
4729
- function pi({
4729
+ function hi({
4730
4730
  variant: e = "outline",
4731
4731
  header: r,
4732
4732
  footer: n,
@@ -4745,10 +4745,10 @@ function pi({
4745
4745
  hoverable: f,
4746
4746
  media: d
4747
4747
  }) {
4748
- const y = wr[e], x = e === "combo", T = o ?? (x ? "md" : y.shadowDefault), { py: S, px: k } = br[a], v = `${S} ${k}`, E = yr[l], C = u != null, z = c != null || C, B = z || (f ?? !1), D = (w ?? !1) && z, M = C ? "a" : z ? "button" : "div", [$, R] = q(!1), [W, P] = q(!1), [O, Y] = q(!1), L = (m ?? !1) && !D, A = L ? Mr : void 0, I = zr(y, m ?? !1, D), N = b != null ? `inset 3px 0 0 ${xr[b]}` : void 0;
4749
- let G;
4750
- x ? G = ge(A, N) : B && !D ? O ? G = ge(Ir, A, N) : W ? G = ge(Cr, A, N) : $ ? G = ge(z ? Sr : Tr, Ee[T], A, N) : G = ge(Ee[T], A, N) : G = ge(Ee[T], A, N);
4751
- const F = {
4748
+ const y = kr[e], x = e === "combo", T = o ?? (x ? "md" : y.shadowDefault), { py: S, px: k } = yr[a], v = `${S} ${k}`, E = xr[l], C = u != null, z = c != null || C, B = z || (f ?? !1), D = (w ?? !1) && z, M = C ? "a" : z ? "button" : "div", [$, R] = q(!1), [W, P] = q(!1), [O, Y] = q(!1), L = (m ?? !1) && !D, A = L ? zr : void 0, I = Ar(y, m ?? !1, D), F = b != null ? `inset 3px 0 0 ${wr[b]}` : void 0;
4749
+ let U;
4750
+ x ? U = ge(A, F) : B && !D ? O ? U = ge(Mr, A, F) : W ? U = ge(Ir, A, F) : $ ? U = ge(z ? Tr : Cr, qe[T], A, F) : U = ge(qe[T], A, F) : U = ge(qe[T], A, F);
4751
+ const N = {
4752
4752
  display: "flex",
4753
4753
  flexDirection: "column",
4754
4754
  background: I,
@@ -4759,14 +4759,14 @@ function pi({
4759
4759
  overflow: d != null && !(L || B && W) ? "hidden" : "visible",
4760
4760
  boxSizing: "border-box",
4761
4761
  position: "relative",
4762
- ...G !== void 0 && { boxShadow: G },
4762
+ ...U !== void 0 && { boxShadow: U },
4763
4763
  // Hover/press transform
4764
4764
  ...B && !D && O && { transform: "translateY(1px)" },
4765
4765
  ...B && !D && $ && !O && { transform: "translateY(-1px)" },
4766
4766
  // Hover/interactive base styles
4767
4767
  ...B && {
4768
4768
  cursor: D ? "not-allowed" : "pointer",
4769
- transition: kr
4769
+ transition: Sr
4770
4770
  },
4771
4771
  // Button UA reset
4772
4772
  ...z && !C && {
@@ -4791,7 +4791,7 @@ function pi({
4791
4791
  return /* @__PURE__ */ g(
4792
4792
  M,
4793
4793
  {
4794
- style: F,
4794
+ style: N,
4795
4795
  ...B && !D ? {
4796
4796
  onMouseEnter: () => R(!0),
4797
4797
  onMouseLeave: () => {
@@ -4805,7 +4805,7 @@ function pi({
4805
4805
  }
4806
4806
  } : {},
4807
4807
  ...C && {
4808
- href: D ? void 0 : u,
4808
+ href: D ? void 0 : Ce(u),
4809
4809
  ...p !== void 0 && { target: p },
4810
4810
  ...h !== void 0 && { rel: h }
4811
4811
  },
@@ -4828,7 +4828,7 @@ function pi({
4828
4828
  children: r
4829
4829
  }
4830
4830
  ),
4831
- /* @__PURE__ */ t(ft.Provider, { value: { px: k, py: S }, children: /* @__PURE__ */ t(
4831
+ /* @__PURE__ */ t(mt.Provider, { value: { px: k, py: S }, children: /* @__PURE__ */ t(
4832
4832
  "div",
4833
4833
  {
4834
4834
  style: {
@@ -4838,7 +4838,7 @@ function pi({
4838
4838
  background: "var(--lucent-surface)",
4839
4839
  border: "1px solid var(--lucent-border-default)",
4840
4840
  borderRadius: E,
4841
- boxShadow: Ee[T],
4841
+ boxShadow: qe[T],
4842
4842
  marginLeft: `calc(${k} / 3)`,
4843
4843
  marginRight: `calc(${k} / 3)`,
4844
4844
  // When header/footer is absent, mirror the horizontal inset vertically
@@ -4864,8 +4864,8 @@ function pi({
4864
4864
  }
4865
4865
  );
4866
4866
  }
4867
- function hi({ children: e, style: r }) {
4868
- const { px: n } = ne(ft);
4867
+ function fi({ children: e, style: r }) {
4868
+ const { px: n } = ne(mt);
4869
4869
  return /* @__PURE__ */ t(
4870
4870
  "div",
4871
4871
  {
@@ -4880,7 +4880,7 @@ function hi({ children: e, style: r }) {
4880
4880
  }
4881
4881
  );
4882
4882
  }
4883
- const fi = {
4883
+ const mi = {
4884
4884
  id: "card",
4885
4885
  name: "Card",
4886
4886
  tier: "molecule",
@@ -5114,30 +5114,30 @@ const fi = {
5114
5114
  accessibility: {
5115
5115
  notes: "Non-interactive cards have no implicit ARIA role — wrap in <section> or <article> if needed. Interactive cards with onClick render as <button> with focus ring. Interactive cards with href render as <a> with focus ring. Selected cards set aria-pressed on the interactive element. The status accent bar is aria-hidden (decorative). Media slot images should include alt text."
5116
5116
  }
5117
- }, Ar = {
5117
+ }, Er = {
5118
5118
  info: { bg: "var(--lucent-info-subtle)", border: "var(--lucent-info-default)", iconColor: "var(--lucent-info-text)", textColor: "info" },
5119
5119
  success: { bg: "var(--lucent-success-subtle)", border: "var(--lucent-success-default)", iconColor: "var(--lucent-success-text)", textColor: "success" },
5120
5120
  warning: { bg: "var(--lucent-warning-subtle)", border: "var(--lucent-warning-default)", iconColor: "var(--lucent-warning-text)", textColor: "warning" },
5121
5121
  danger: { bg: "var(--lucent-danger-subtle)", border: "var(--lucent-danger-default)", iconColor: "var(--lucent-danger-text)", textColor: "danger" }
5122
- }, Er = () => /* @__PURE__ */ g("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
5122
+ }, qr = () => /* @__PURE__ */ g("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
5123
5123
  /* @__PURE__ */ t("circle", { cx: "8", cy: "8", r: "6.5", stroke: "currentColor", strokeWidth: "1.5" }),
5124
5124
  /* @__PURE__ */ t("path", { d: "M8 5.5V8.5M8 10.5V11", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" })
5125
- ] }), qr = () => /* @__PURE__ */ g("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
5125
+ ] }), Br = () => /* @__PURE__ */ g("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
5126
5126
  /* @__PURE__ */ t("circle", { cx: "8", cy: "8", r: "6.5", stroke: "currentColor", strokeWidth: "1.5" }),
5127
5127
  /* @__PURE__ */ t("path", { d: "M5 8L7 10L11 6", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" })
5128
- ] }), Br = () => /* @__PURE__ */ g("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
5128
+ ] }), Dr = () => /* @__PURE__ */ g("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
5129
5129
  /* @__PURE__ */ t("path", { d: "M8 2L14.5 13H1.5L8 2Z", stroke: "currentColor", strokeWidth: "1.5", strokeLinejoin: "round" }),
5130
5130
  /* @__PURE__ */ t("path", { d: "M8 6V9M8 11V11.5", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" })
5131
- ] }), Dr = () => /* @__PURE__ */ g("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
5131
+ ] }), Pr = () => /* @__PURE__ */ g("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
5132
5132
  /* @__PURE__ */ t("circle", { cx: "8", cy: "8", r: "6.5", stroke: "currentColor", strokeWidth: "1.5" }),
5133
5133
  /* @__PURE__ */ t("path", { d: "M5.5 5.5L10.5 10.5M10.5 5.5L5.5 10.5", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" })
5134
- ] }), Pr = {
5135
- info: /* @__PURE__ */ t(Er, {}),
5136
- success: /* @__PURE__ */ t(qr, {}),
5137
- warning: /* @__PURE__ */ t(Br, {}),
5138
- danger: /* @__PURE__ */ t(Dr, {})
5139
- }, Lr = () => /* @__PURE__ */ t("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ t("path", { d: "M3 3L11 11M11 3L3 11", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }) });
5140
- function mi({
5134
+ ] }), Lr = {
5135
+ info: /* @__PURE__ */ t(qr, {}),
5136
+ success: /* @__PURE__ */ t(Br, {}),
5137
+ warning: /* @__PURE__ */ t(Dr, {}),
5138
+ danger: /* @__PURE__ */ t(Pr, {})
5139
+ }, Rr = () => /* @__PURE__ */ t("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ t("path", { d: "M3 3L11 11M11 3L3 11", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }) });
5140
+ function gi({
5141
5141
  variant: e = "info",
5142
5142
  title: r,
5143
5143
  children: n,
@@ -5145,7 +5145,7 @@ function mi({
5145
5145
  icon: a,
5146
5146
  style: o
5147
5147
  }) {
5148
- const l = Ar[e], s = a ?? Pr[e];
5148
+ const l = Er[e], s = a ?? Lr[e];
5149
5149
  return /* @__PURE__ */ g(
5150
5150
  "div",
5151
5151
  {
@@ -5176,8 +5176,8 @@ function mi({
5176
5176
  }
5177
5177
  ),
5178
5178
  /* @__PURE__ */ g("div", { style: { flex: 1, display: "flex", flexDirection: "column", gap: "var(--lucent-space-1)" }, children: [
5179
- r && /* @__PURE__ */ t(U, { as: "span", size: "sm", weight: "semibold", color: l.textColor, lineHeight: "tight", children: r }),
5180
- n && /* @__PURE__ */ t(U, { as: "span", size: "sm", color: l.textColor, lineHeight: "base", children: n })
5179
+ r && /* @__PURE__ */ t(j, { as: "span", size: "sm", weight: "semibold", color: l.textColor, lineHeight: "tight", children: r }),
5180
+ n && /* @__PURE__ */ t(j, { as: "span", size: "sm", color: l.textColor, lineHeight: "base", children: n })
5181
5181
  ] }),
5182
5182
  i && /* @__PURE__ */ t(
5183
5183
  "button",
@@ -5203,14 +5203,14 @@ function mi({
5203
5203
  onMouseLeave: (c) => {
5204
5204
  c.currentTarget.style.opacity = "0.7";
5205
5205
  },
5206
- children: /* @__PURE__ */ t(Lr, {})
5206
+ children: /* @__PURE__ */ t(Rr, {})
5207
5207
  }
5208
5208
  )
5209
5209
  ]
5210
5210
  }
5211
5211
  );
5212
5212
  }
5213
- const gi = {
5213
+ const vi = {
5214
5214
  id: "alert",
5215
5215
  name: "Alert",
5216
5216
  tier: "molecule",
@@ -5285,7 +5285,7 @@ const gi = {
5285
5285
  notes: 'role="alert" causes screen readers to announce the content immediately when rendered. For non-urgent status messages, consider using role="status" instead by overriding via style/wrapper.'
5286
5286
  }
5287
5287
  };
5288
- function vi({
5288
+ function bi({
5289
5289
  illustration: e,
5290
5290
  title: r,
5291
5291
  description: n,
@@ -5320,15 +5320,15 @@ function vi({
5320
5320
  }
5321
5321
  ),
5322
5322
  /* @__PURE__ */ g("div", { style: { display: "flex", flexDirection: "column", gap: "var(--lucent-space-2)" }, children: [
5323
- /* @__PURE__ */ t(U, { as: "h3", size: "lg", weight: "semibold", align: "center", lineHeight: "tight", children: r }),
5324
- n && /* @__PURE__ */ t(U, { size: "sm", color: "secondary", align: "center", lineHeight: "relaxed", children: n })
5323
+ /* @__PURE__ */ t(j, { as: "h3", size: "lg", weight: "semibold", align: "center", lineHeight: "tight", children: r }),
5324
+ n && /* @__PURE__ */ t(j, { size: "sm", color: "secondary", align: "center", lineHeight: "relaxed", children: n })
5325
5325
  ] }),
5326
5326
  i != null && /* @__PURE__ */ t("div", { children: i })
5327
5327
  ]
5328
5328
  }
5329
5329
  );
5330
5330
  }
5331
- const bi = {
5331
+ const yi = {
5332
5332
  id: "empty-state",
5333
5333
  name: "EmptyState",
5334
5334
  tier: "molecule",
@@ -5399,16 +5399,16 @@ const bi = {
5399
5399
  accessibility: {
5400
5400
  notes: "The title renders as an h3 by default. If EmptyState appears inside a section with its own heading hierarchy, override by passing a Text component as part of a custom layout. Ensure the action element has a descriptive label for screen readers."
5401
5401
  }
5402
- }, Rr = {
5402
+ }, $r = {
5403
5403
  text: "1em",
5404
5404
  circle: 40,
5405
5405
  rectangle: 40
5406
- }, $r = {
5406
+ }, Nr = {
5407
5407
  text: "var(--lucent-radius-sm)",
5408
5408
  circle: "var(--lucent-radius-full)",
5409
5409
  rectangle: "var(--lucent-radius-md)"
5410
5410
  };
5411
- function Ct({
5411
+ function It({
5412
5412
  width: e,
5413
5413
  height: r,
5414
5414
  radius: n,
@@ -5432,7 +5432,7 @@ function Ct({
5432
5432
  }
5433
5433
  );
5434
5434
  }
5435
- function yi({
5435
+ function xi({
5436
5436
  variant: e = "rectangle",
5437
5437
  width: r = "100%",
5438
5438
  height: n,
@@ -5441,16 +5441,16 @@ function yi({
5441
5441
  radius: o,
5442
5442
  style: l
5443
5443
  }) {
5444
- const s = n ?? Rr[e], c = o ?? $r[e], u = a ? /* @__PURE__ */ t("style", { children: `
5444
+ const s = n ?? $r[e], c = o ?? Nr[e], u = a ? /* @__PURE__ */ t("style", { children: `
5445
5445
  @keyframes lucent-skeleton-shimmer {
5446
5446
  0% { background-position: 200% 0; }
5447
5447
  100% { background-position: -200% 0; }
5448
5448
  }
5449
5449
  ` }) : null;
5450
- return e === "text" && i > 1 ? /* @__PURE__ */ g(J, { children: [
5450
+ return e === "text" && i > 1 ? /* @__PURE__ */ g(Z, { children: [
5451
5451
  u,
5452
5452
  /* @__PURE__ */ t("div", { style: { display: "flex", flexDirection: "column", gap: "var(--lucent-space-2)", ...l }, children: Array.from({ length: i }).map((p, h) => /* @__PURE__ */ t(
5453
- Ct,
5453
+ It,
5454
5454
  {
5455
5455
  width: h === i - 1 ? "70%" : r,
5456
5456
  height: s,
@@ -5459,10 +5459,10 @@ function yi({
5459
5459
  },
5460
5460
  h
5461
5461
  )) })
5462
- ] }) : /* @__PURE__ */ g(J, { children: [
5462
+ ] }) : /* @__PURE__ */ g(Z, { children: [
5463
5463
  u,
5464
5464
  /* @__PURE__ */ t(
5465
- Ct,
5465
+ It,
5466
5466
  {
5467
5467
  width: e === "circle" ? n ?? 40 : r,
5468
5468
  height: s,
@@ -5473,7 +5473,7 @@ function yi({
5473
5473
  )
5474
5474
  ] });
5475
5475
  }
5476
- const xi = {
5476
+ const wi = {
5477
5477
  id: "skeleton",
5478
5478
  name: "Skeleton",
5479
5479
  tier: "molecule",
@@ -5587,10 +5587,10 @@ function Fr({ items: e, separator: r = "/", style: n, LinkComponent: i }) {
5587
5587
  p.currentTarget.style.color = "var(--lucent-text-secondary)";
5588
5588
  };
5589
5589
  return /* @__PURE__ */ g("li", { style: { display: "flex", alignItems: "center", gap: "var(--lucent-space-1)" }, children: [
5590
- l ? /* @__PURE__ */ t(U, { size: "sm", color: "primary", as: "span", "aria-current": "page", children: a.label }) : a.href != null ? i ? /* @__PURE__ */ t(
5590
+ l ? /* @__PURE__ */ t(j, { size: "sm", color: "primary", as: "span", "aria-current": "page", children: a.label }) : a.href != null ? i ? /* @__PURE__ */ t(
5591
5591
  i,
5592
5592
  {
5593
- href: a.href,
5593
+ href: Ce(a.href) ?? "#",
5594
5594
  style: s,
5595
5595
  onMouseEnter: c,
5596
5596
  onMouseLeave: u,
@@ -5600,7 +5600,7 @@ function Fr({ items: e, separator: r = "/", style: n, LinkComponent: i }) {
5600
5600
  ) : /* @__PURE__ */ t(
5601
5601
  "a",
5602
5602
  {
5603
- href: a.href,
5603
+ href: Ce(a.href),
5604
5604
  onClick: a.onClick,
5605
5605
  style: s,
5606
5606
  onMouseEnter: c,
@@ -5636,7 +5636,7 @@ function Fr({ items: e, separator: r = "/", style: n, LinkComponent: i }) {
5636
5636
  }
5637
5637
  ) });
5638
5638
  }
5639
- const It = 80, Kt = 180, ye = "var(--lucent-easing-default)", ot = "var(--lucent-duration-fast)", Mt = `height ${Kt}ms ${ye}`, Nr = `
5639
+ const Mt = 80, Xt = 180, ye = "var(--lucent-easing-default)", it = "var(--lucent-duration-fast)", zt = `height ${Xt}ms ${ye}`, Wr = `
5640
5640
  [data-lucent-collapsible-trigger]:hover:not(:disabled) {
5641
5641
  background: color-mix(in srgb, var(--lucent-text-primary) 5%, transparent) !important;
5642
5642
  }
@@ -5647,15 +5647,15 @@ const It = 80, Kt = 180, ye = "var(--lucent-easing-default)", ot = "var(--lucent
5647
5647
  box-shadow: 0 0 0 2px var(--lucent-surface), 0 0 0 4px var(--lucent-accent-default) !important;
5648
5648
  }
5649
5649
  `;
5650
- let zt = !1;
5651
- function Wr() {
5652
- if (zt || typeof document > "u") return;
5650
+ let At = !1;
5651
+ function Vr() {
5652
+ if (At || typeof document > "u") return;
5653
5653
  const e = document.createElement("style");
5654
- e.setAttribute("data-lucent-collapsible", ""), e.textContent = Nr, document.head.appendChild(e), zt = !0;
5654
+ e.setAttribute("data-lucent-collapsible", ""), e.textContent = Wr, document.head.appendChild(e), At = !0;
5655
5655
  }
5656
- function wi({ trigger: e, children: r, defaultOpen: n = !1, open: i, onOpenChange: a, padded: o = !0, disabled: l = !1, style: s }) {
5657
- const c = ne(ft), u = c.px !== "0" || c.py !== "0", p = i !== void 0, [h, w] = q(n), b = p ? i : h, m = V(null), f = V(!1), d = V();
5658
- H(Wr, []), H(() => {
5656
+ function ki({ trigger: e, children: r, defaultOpen: n = !1, open: i, onOpenChange: a, padded: o = !0, disabled: l = !1, style: s }) {
5657
+ const c = ne(mt), u = c.px !== "0" || c.py !== "0", p = i !== void 0, [h, w] = q(n), b = p ? i : h, m = V(null), f = V(!1), d = V();
5658
+ H(Vr, []), H(() => {
5659
5659
  f.current = !0;
5660
5660
  }, []), oe(() => {
5661
5661
  const x = m.current;
@@ -5663,10 +5663,10 @@ function wi({ trigger: e, children: r, defaultOpen: n = !1, open: i, onOpenChang
5663
5663
  if (b) {
5664
5664
  x.style.overflow = "hidden";
5665
5665
  const T = x.scrollHeight;
5666
- x.style.height = `${T}px`, x.style.transition = Mt, clearTimeout(d.current), d.current = setTimeout(() => {
5666
+ x.style.height = `${T}px`, x.style.transition = zt, clearTimeout(d.current), d.current = setTimeout(() => {
5667
5667
  x.style.height = "auto", x.style.overflow = "visible", x.style.transition = "";
5668
- }, Kt + 20);
5669
- } else f.current && (clearTimeout(d.current), x.style.overflow = "hidden", x.style.transition = "", x.style.height = `${x.scrollHeight}px`, x.getBoundingClientRect(), x.style.transition = Mt, x.style.height = "0px");
5668
+ }, Xt + 20);
5669
+ } else f.current && (clearTimeout(d.current), x.style.overflow = "hidden", x.style.transition = "", x.style.height = `${x.scrollHeight}px`, x.getBoundingClientRect(), x.style.transition = zt, x.style.height = "0px");
5670
5670
  }, [b]), H(() => {
5671
5671
  const x = m.current;
5672
5672
  x && !b && !f.current && (x.style.height = "0px");
@@ -5700,11 +5700,11 @@ function wi({ trigger: e, children: r, defaultOpen: n = !1, open: i, onOpenChang
5700
5700
  fontFamily: "inherit",
5701
5701
  fontSize: "inherit",
5702
5702
  opacity: l ? 0.5 : 1,
5703
- transition: `background ${ot} ${ye}`
5703
+ transition: `background ${it} ${ye}`
5704
5704
  },
5705
5705
  children: [
5706
5706
  /* @__PURE__ */ t("span", { style: { flex: 1 }, children: e }),
5707
- /* @__PURE__ */ t(Vr, { open: b })
5707
+ /* @__PURE__ */ t(Or, { open: b })
5708
5708
  ]
5709
5709
  }
5710
5710
  ),
@@ -5721,7 +5721,7 @@ function wi({ trigger: e, children: r, defaultOpen: n = !1, open: i, onOpenChang
5721
5721
  ...o ? { padding: "var(--lucent-space-3) var(--lucent-space-4) var(--lucent-space-4)" } : {},
5722
5722
  opacity: b ? 1 : 0,
5723
5723
  transform: b ? "translateY(0)" : "translateY(-4px)",
5724
- transition: `opacity ${It}ms ${ye}, transform ${It}ms ${ye}`
5724
+ transition: `opacity ${Mt}ms ${ye}, transform ${Mt}ms ${ye}`
5725
5725
  },
5726
5726
  children: r
5727
5727
  }
@@ -5730,7 +5730,7 @@ function wi({ trigger: e, children: r, defaultOpen: n = !1, open: i, onOpenChang
5730
5730
  )
5731
5731
  ] });
5732
5732
  }
5733
- function Vr({ open: e }) {
5733
+ function Or({ open: e }) {
5734
5734
  return /* @__PURE__ */ t(
5735
5735
  "svg",
5736
5736
  {
@@ -5748,13 +5748,13 @@ function Vr({ open: e }) {
5748
5748
  flexShrink: 0,
5749
5749
  color: "var(--lucent-text-secondary)",
5750
5750
  transform: e ? "rotate(180deg)" : "rotate(0deg)",
5751
- transition: `transform ${ot} ${ye}, color ${ot} ${ye}`
5751
+ transition: `transform ${it} ${ye}, color ${it} ${ye}`
5752
5752
  },
5753
5753
  children: /* @__PURE__ */ t("polyline", { points: "6 9 12 15 18 9" })
5754
5754
  }
5755
5755
  );
5756
5756
  }
5757
- function Or(e) {
5757
+ function Hr(e) {
5758
5758
  const [r, n] = q(() => typeof window > "u" ? !1 : window.matchMedia(e).matches);
5759
5759
  return H(() => {
5760
5760
  const i = window.matchMedia(e);
@@ -5763,7 +5763,7 @@ function Or(e) {
5763
5763
  return i.addEventListener("change", a), () => i.removeEventListener("change", a);
5764
5764
  }, [e]), r;
5765
5765
  }
5766
- const pe = "lucent-pl-no-scrollbar", Hr = `.${pe}{scrollbar-width:none}.${pe}::-webkit-scrollbar{display:none}`, He = 200, Gr = `
5766
+ const pe = "lucent-pl-no-scrollbar", Ur = `.${pe}{scrollbar-width:none}.${pe}::-webkit-scrollbar{display:none}`, Ue = 200, jr = `
5767
5767
  @keyframes lucent-drawer-in{from{transform:translateX(-100%)}to{transform:translateX(0)}}
5768
5768
  @keyframes lucent-drawer-out{from{transform:translateX(0)}to{transform:translateX(-100%)}}
5769
5769
  @keyframes lucent-backdrop-in{from{opacity:0}to{opacity:1}}
@@ -5772,7 +5772,7 @@ const pe = "lucent-pl-no-scrollbar", Hr = `.${pe}{scrollbar-width:none}.${pe}::-
5772
5772
  function ke(e) {
5773
5773
  return typeof e == "number" ? `${e}px` : e;
5774
5774
  }
5775
- function Ur({ collapsed: e, sidebarWidth: r, onClick: n }) {
5775
+ function Gr({ collapsed: e, sidebarWidth: r, onClick: n }) {
5776
5776
  const [i, a] = q(!1), o = e;
5777
5777
  let l, s;
5778
5778
  return i ? o ? (l = "M2,2 L6,8", s = "M6,8 L2,14") : (l = "M6,2 L2,8", s = "M2,8 L6,14") : (l = "M1.5,2 L1.5,14", s = "M6.5,2 L6.5,14"), /* @__PURE__ */ t(
@@ -5816,7 +5816,7 @@ function Ur({ collapsed: e, sidebarWidth: r, onClick: n }) {
5816
5816
  }
5817
5817
  );
5818
5818
  }
5819
- function At({ open: e, onClick: r }) {
5819
+ function Et({ open: e, onClick: r }) {
5820
5820
  return /* @__PURE__ */ t(
5821
5821
  "button",
5822
5822
  {
@@ -5835,10 +5835,10 @@ function At({ open: e, onClick: r }) {
5835
5835
  color: "var(--lucent-text-primary)",
5836
5836
  flexShrink: 0
5837
5837
  },
5838
- children: /* @__PURE__ */ t("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", "aria-hidden": !0, children: e ? /* @__PURE__ */ g(J, { children: [
5838
+ children: /* @__PURE__ */ t("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", "aria-hidden": !0, children: e ? /* @__PURE__ */ g(Z, { children: [
5839
5839
  /* @__PURE__ */ t("line", { x1: "4", y1: "4", x2: "16", y2: "16" }),
5840
5840
  /* @__PURE__ */ t("line", { x1: "4", y1: "16", x2: "16", y2: "4" })
5841
- ] }) : /* @__PURE__ */ g(J, { children: [
5841
+ ] }) : /* @__PURE__ */ g(Z, { children: [
5842
5842
  /* @__PURE__ */ t("line", { x1: "3", y1: "5", x2: "17", y2: "5" }),
5843
5843
  /* @__PURE__ */ t("line", { x1: "3", y1: "10", x2: "17", y2: "10" }),
5844
5844
  /* @__PURE__ */ t("line", { x1: "3", y1: "15", x2: "17", y2: "15" })
@@ -5846,7 +5846,7 @@ function At({ open: e, onClick: r }) {
5846
5846
  }
5847
5847
  );
5848
5848
  }
5849
- function Et({
5849
+ function qt({
5850
5850
  sidebarHeader: e,
5851
5851
  sidebar: r,
5852
5852
  sidebarFooter: n,
@@ -5854,7 +5854,7 @@ function Et({
5854
5854
  sidebarCollapsed: a,
5855
5855
  sidebarCollapsedWidth: o
5856
5856
  }) {
5857
- return /* @__PURE__ */ g(J, { children: [
5857
+ return /* @__PURE__ */ g(Z, { children: [
5858
5858
  e != null && /* @__PURE__ */ t("div", { style: { flexShrink: 0 }, children: e }),
5859
5859
  r != null && /* @__PURE__ */ t(
5860
5860
  "div",
@@ -5871,7 +5871,7 @@ function Et({
5871
5871
  n != null && /* @__PURE__ */ t("div", { style: { flexShrink: 0 }, children: n })
5872
5872
  ] });
5873
5873
  }
5874
- function ki({
5874
+ function Si({
5875
5875
  children: e,
5876
5876
  header: r,
5877
5877
  sidebar: n,
@@ -5901,7 +5901,7 @@ function ki({
5901
5901
  bgSubtle: "var(--lucent-bg-subtle)",
5902
5902
  surface: "var(--lucent-surface)",
5903
5903
  surfaceSecondary: "var(--lucent-surface-secondary)"
5904
- }[T] ?? "var(--lucent-navigation)", R = Or(`(max-width: ${h - 1}px)`), W = D && (p === "drawer" || p === "auto" && R), [P, O] = q(!1), [Y, L] = q("idle");
5904
+ }[T] ?? "var(--lucent-navigation)", R = Hr(`(max-width: ${h - 1}px)`), W = D && (p === "drawer" || p === "auto" && R), [P, O] = q(!1), [Y, L] = q("idle");
5905
5905
  H(() => {
5906
5906
  if (w && W)
5907
5907
  O(!0), L("entering");
@@ -5909,15 +5909,15 @@ function ki({
5909
5909
  L("exiting");
5910
5910
  const I = setTimeout(() => {
5911
5911
  O(!1), L("idle");
5912
- }, He);
5912
+ }, Ue);
5913
5913
  return () => clearTimeout(I);
5914
5914
  }
5915
5915
  }, [w, W]), H(() => {
5916
5916
  !W && w && (b == null || b(!1));
5917
5917
  }, [W]), H(() => {
5918
5918
  if (!w || !W) return;
5919
- const I = (N) => {
5920
- N.key === "Escape" && (b == null || b(!1));
5919
+ const I = (F) => {
5920
+ F.key === "Escape" && (b == null || b(!1));
5921
5921
  };
5922
5922
  return document.addEventListener("keydown", I), () => document.removeEventListener("keydown", I);
5923
5923
  }, [w, W, b]), H(() => {
@@ -5943,8 +5943,8 @@ function ki({
5943
5943
  },
5944
5944
  children: [
5945
5945
  /* @__PURE__ */ g("style", { children: [
5946
- Hr,
5947
- W ? Gr : ""
5946
+ Ur,
5947
+ W ? jr : ""
5948
5948
  ] }),
5949
5949
  r != null && /* @__PURE__ */ g(
5950
5950
  "div",
@@ -5958,7 +5958,7 @@ function ki({
5958
5958
  alignItems: "center"
5959
5959
  },
5960
5960
  children: [
5961
- W && /* @__PURE__ */ t("div", { style: { flexShrink: 0, padding: "0 var(--lucent-space-2)" }, children: /* @__PURE__ */ t(At, { open: w, onClick: () => b == null ? void 0 : b(!w) }) }),
5961
+ W && /* @__PURE__ */ t("div", { style: { flexShrink: 0, padding: "0 var(--lucent-space-2)" }, children: /* @__PURE__ */ t(Et, { open: w, onClick: () => b == null ? void 0 : b(!w) }) }),
5962
5962
  /* @__PURE__ */ t("div", { style: { flex: 1, height: "100%", minWidth: 0 }, children: r })
5963
5963
  ]
5964
5964
  }
@@ -5977,7 +5977,7 @@ function ki({
5977
5977
  transition: "width 200ms var(--lucent-easing-default)"
5978
5978
  },
5979
5979
  children: /* @__PURE__ */ t(
5980
- Et,
5980
+ qt,
5981
5981
  {
5982
5982
  sidebarHeader: i,
5983
5983
  sidebar: n,
@@ -5989,7 +5989,7 @@ function ki({
5989
5989
  )
5990
5990
  }
5991
5991
  ),
5992
- D && !W && u && /* @__PURE__ */ t(Ur, { collapsed: c, sidebarWidth: c ? C : E, onClick: () => u(!c) }),
5992
+ D && !W && u && /* @__PURE__ */ t(Gr, { collapsed: c, sidebarWidth: c ? C : E, onClick: () => u(!c) }),
5993
5993
  /* @__PURE__ */ t(
5994
5994
  "main",
5995
5995
  {
@@ -6037,7 +6037,7 @@ function ki({
6037
6037
  }
6038
6038
  ),
6039
6039
  W && P && ie(
6040
- /* @__PURE__ */ g(J, { children: [
6040
+ /* @__PURE__ */ g(Z, { children: [
6041
6041
  /* @__PURE__ */ t(
6042
6042
  "div",
6043
6043
  {
@@ -6047,7 +6047,7 @@ function ki({
6047
6047
  inset: 0,
6048
6048
  zIndex: 1100,
6049
6049
  background: "var(--lucent-bg-overlay)",
6050
- animation: `${Y === "exiting" ? "lucent-backdrop-out" : "lucent-backdrop-in"} ${He}ms var(--lucent-easing-default) forwards`,
6050
+ animation: `${Y === "exiting" ? "lucent-backdrop-out" : "lucent-backdrop-in"} ${Ue}ms var(--lucent-easing-default) forwards`,
6051
6051
  pointerEvents: Y === "exiting" ? "none" : "auto"
6052
6052
  }
6053
6053
  }
@@ -6068,13 +6068,13 @@ function ki({
6068
6068
  flexDirection: "column",
6069
6069
  background: $,
6070
6070
  boxShadow: "var(--lucent-shadow-lg)",
6071
- animation: `${Y === "exiting" ? "lucent-drawer-out" : "lucent-drawer-in"} ${He}ms var(--lucent-easing-decelerate) forwards`,
6071
+ animation: `${Y === "exiting" ? "lucent-drawer-out" : "lucent-drawer-in"} ${Ue}ms var(--lucent-easing-decelerate) forwards`,
6072
6072
  fontFamily: "var(--lucent-font-family-base)"
6073
6073
  },
6074
6074
  children: [
6075
- /* @__PURE__ */ t("div", { style: { flexShrink: 0, display: "flex", alignItems: "center", padding: "var(--lucent-space-2)" }, children: /* @__PURE__ */ t(At, { open: !0, onClick: () => b == null ? void 0 : b(!1) }) }),
6075
+ /* @__PURE__ */ t("div", { style: { flexShrink: 0, display: "flex", alignItems: "center", padding: "var(--lucent-space-2)" }, children: /* @__PURE__ */ t(Et, { open: !0, onClick: () => b == null ? void 0 : b(!1) }) }),
6076
6076
  /* @__PURE__ */ t(
6077
- Et,
6077
+ qt,
6078
6078
  {
6079
6079
  sidebarHeader: i,
6080
6080
  sidebar: n,
@@ -6094,7 +6094,7 @@ function ki({
6094
6094
  }
6095
6095
  );
6096
6096
  }
6097
- function jr({ state: e }) {
6097
+ function _r({ state: e }) {
6098
6098
  return /* @__PURE__ */ g(
6099
6099
  "svg",
6100
6100
  {
@@ -6125,7 +6125,7 @@ function jr({ state: e }) {
6125
6125
  }
6126
6126
  );
6127
6127
  }
6128
- function qt({ dir: e }) {
6128
+ function Bt({ dir: e }) {
6129
6129
  return /* @__PURE__ */ t("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": !0, children: /* @__PURE__ */ t(
6130
6130
  "path",
6131
6131
  {
@@ -6137,7 +6137,7 @@ function qt({ dir: e }) {
6137
6137
  }
6138
6138
  ) });
6139
6139
  }
6140
- function Si({
6140
+ function Ti({
6141
6141
  columns: e,
6142
6142
  rows: r,
6143
6143
  pageSize: n = 10,
@@ -6176,7 +6176,7 @@ function Si({
6176
6176
  }
6177
6177
  return /* @__PURE__ */ g("div", { style: { display: "flex", flexDirection: "column", gap: "var(--lucent-space-3)", ...s }, children: [
6178
6178
  x && /* @__PURE__ */ t("div", { style: { position: "relative", zIndex: 1 }, children: /* @__PURE__ */ t(
6179
- _r,
6179
+ Yr,
6180
6180
  {
6181
6181
  columns: e,
6182
6182
  rows: r,
@@ -6216,7 +6216,7 @@ function Si({
6216
6216
  },
6217
6217
  children: /* @__PURE__ */ g("span", { style: { display: "inline-flex", alignItems: "center", gap: "var(--lucent-space-1)" }, children: [
6218
6218
  M.header,
6219
- M.sortable && /* @__PURE__ */ t(jr, { state: $ }),
6219
+ M.sortable && /* @__PURE__ */ t(_r, { state: $ }),
6220
6220
  M.headerFilter && /* @__PURE__ */ t(
6221
6221
  "span",
6222
6222
  {
@@ -6235,7 +6235,7 @@ function Si({
6235
6235
  {
6236
6236
  colSpan: e.length,
6237
6237
  style: { padding: "var(--lucent-space-12)", textAlign: "center" },
6238
- children: l ?? /* @__PURE__ */ t(U, { color: "secondary", children: "No data" })
6238
+ children: l ?? /* @__PURE__ */ t(j, { color: "secondary", children: "No data" })
6239
6239
  }
6240
6240
  ) }) : k.map((M, $) => /* @__PURE__ */ t(
6241
6241
  "tr",
@@ -6271,15 +6271,15 @@ function Si({
6271
6271
  gap: "var(--lucent-space-3)",
6272
6272
  flexWrap: "wrap"
6273
6273
  }, children: [
6274
- /* @__PURE__ */ t(U, { color: "secondary", size: "sm", children: S.length === 0 ? `0 rows${r.length > 0 ? ` (filtered from ${r.length})` : ""}` : S.length === 1 ? `1 row${S.length < r.length ? ` (filtered from ${r.length})` : ""}` : `${y * n + 1}–${Math.min((y + 1) * n, S.length)} of ${S.length} rows${S.length < r.length ? ` (filtered from ${r.length})` : ""}` }),
6274
+ /* @__PURE__ */ t(j, { color: "secondary", size: "sm", children: S.length === 0 ? `0 rows${r.length > 0 ? ` (filtered from ${r.length})` : ""}` : S.length === 1 ? `1 row${S.length < r.length ? ` (filtered from ${r.length})` : ""}` : `${y * n + 1}–${Math.min((y + 1) * n, S.length)} of ${S.length} rows${S.length < r.length ? ` (filtered from ${r.length})` : ""}` }),
6275
6275
  /* @__PURE__ */ g("div", { style: { display: "flex", alignItems: "center", gap: "var(--lucent-space-1)" }, children: [
6276
6276
  /* @__PURE__ */ t(
6277
- Ge,
6277
+ je,
6278
6278
  {
6279
6279
  onClick: () => E(y - 1),
6280
6280
  disabled: y === 0,
6281
6281
  "aria-label": "Previous page",
6282
- children: /* @__PURE__ */ t(qt, { dir: "left" })
6282
+ children: /* @__PURE__ */ t(Bt, { dir: "left" })
6283
6283
  }
6284
6284
  ),
6285
6285
  D.map(
@@ -6288,7 +6288,7 @@ function Si({
6288
6288
  color: "var(--lucent-text-disabled)",
6289
6289
  fontSize: "var(--lucent-font-size-sm)"
6290
6290
  }, children: "…" }, `ellipsis-${$}`) : /* @__PURE__ */ t(
6291
- Ge,
6291
+ je,
6292
6292
  {
6293
6293
  onClick: () => E(M),
6294
6294
  active: M === y,
@@ -6300,19 +6300,19 @@ function Si({
6300
6300
  )
6301
6301
  ),
6302
6302
  /* @__PURE__ */ t(
6303
- Ge,
6303
+ je,
6304
6304
  {
6305
6305
  onClick: () => E(y + 1),
6306
6306
  disabled: y >= v - 1,
6307
6307
  "aria-label": "Next page",
6308
- children: /* @__PURE__ */ t(qt, { dir: "right" })
6308
+ children: /* @__PURE__ */ t(Bt, { dir: "right" })
6309
6309
  }
6310
6310
  )
6311
6311
  ] })
6312
6312
  ] })
6313
6313
  ] });
6314
6314
  }
6315
- function _r({
6315
+ function Yr({
6316
6316
  columns: e,
6317
6317
  rows: r,
6318
6318
  filters: n,
@@ -6326,7 +6326,7 @@ function _r({
6326
6326
  new Set(r.map((u) => String(u[s.key] ?? "")))
6327
6327
  ).sort();
6328
6328
  return /* @__PURE__ */ t(
6329
- Yr,
6329
+ Kr,
6330
6330
  {
6331
6331
  label: s.header,
6332
6332
  values: c,
@@ -6358,7 +6358,7 @@ function _r({
6358
6358
  )
6359
6359
  ] });
6360
6360
  }
6361
- function Yr({
6361
+ function Kr({
6362
6362
  label: e,
6363
6363
  values: r,
6364
6364
  value: n,
@@ -6497,7 +6497,7 @@ function Yr({
6497
6497
  fontSize: "var(--lucent-font-size-xs)",
6498
6498
  textAlign: "center"
6499
6499
  }, children: "No results" }) : b.map((d) => /* @__PURE__ */ t(
6500
- Kr,
6500
+ Xr,
6501
6501
  {
6502
6502
  label: d,
6503
6503
  isSelected: n.includes(d),
@@ -6508,7 +6508,7 @@ function Yr({
6508
6508
  ] })
6509
6509
  ] });
6510
6510
  }
6511
- function Kr({ label: e, isSelected: r, onClick: n }) {
6511
+ function Xr({ label: e, isSelected: r, onClick: n }) {
6512
6512
  const [i, a] = q(!1);
6513
6513
  return /* @__PURE__ */ g(
6514
6514
  "button",
@@ -6552,7 +6552,7 @@ function Kr({ label: e, isSelected: r, onClick: n }) {
6552
6552
  }
6553
6553
  );
6554
6554
  }
6555
- function Ge({
6555
+ function je({
6556
6556
  children: e,
6557
6557
  onClick: r,
6558
6558
  disabled: n,
@@ -6589,7 +6589,7 @@ function Ge({
6589
6589
  }
6590
6590
  );
6591
6591
  }
6592
- const Ti = {
6592
+ const Ci = {
6593
6593
  id: "data-table",
6594
6594
  name: "DataTable",
6595
6595
  tier: "molecule",
@@ -6698,7 +6698,7 @@ const Ti = {
6698
6698
  keyboardInteractions: ["Tab to pagination controls", "Enter/Space to activate buttons"],
6699
6699
  notes: 'Column headers with sortable:true are interactive buttons with aria-sort reflecting the current sort direction. Pagination buttons include aria-label and aria-current="page" for the active page.'
6700
6700
  }
6701
- }, Xr = `
6701
+ }, Zr = `
6702
6702
  @keyframes lucent-palette-in {
6703
6703
  from { opacity: 0; transform: scale(0.96) translateY(-8px); }
6704
6704
  to { opacity: 1; transform: scale(1) translateY(0); }
@@ -6709,7 +6709,7 @@ function Jr(e, r) {
6709
6709
  const n = r.toLowerCase();
6710
6710
  return e.label.toLowerCase().includes(n) || (((i = e.description) == null ? void 0 : i.toLowerCase().includes(n)) ?? !1);
6711
6711
  }
6712
- function Ci({
6712
+ function Ii({
6713
6713
  commands: e,
6714
6714
  placeholder: r = "Search commands…",
6715
6715
  shortcutKey: n = "k",
@@ -6720,7 +6720,7 @@ function Ci({
6720
6720
  const l = i !== void 0, [s, c] = q(!1), u = l ? i : s, [p, h] = q(""), [w, b] = q(0), m = V(null), f = V(null), d = V(!1);
6721
6721
  if (!d.current) {
6722
6722
  const C = document.createElement("style");
6723
- C.textContent = Xr, document.head.appendChild(C), d.current = !0;
6723
+ C.textContent = Zr, document.head.appendChild(C), d.current = !0;
6724
6724
  }
6725
6725
  const y = X((C) => {
6726
6726
  l || c(C), a == null || a(C);
@@ -6851,7 +6851,7 @@ function Ci({
6851
6851
  role: "listbox",
6852
6852
  ref: f,
6853
6853
  style: { maxHeight: 360, overflowY: "auto", padding: "var(--lucent-space-1) var(--lucent-space-2)" },
6854
- children: x.length === 0 ? /* @__PURE__ */ t("div", { style: { padding: "var(--lucent-space-8)", textAlign: "center" }, children: /* @__PURE__ */ g(U, { color: "secondary", children: [
6854
+ children: x.length === 0 ? /* @__PURE__ */ t("div", { style: { padding: "var(--lucent-space-8)", textAlign: "center" }, children: /* @__PURE__ */ g(j, { color: "secondary", children: [
6855
6855
  'No results for "',
6856
6856
  p,
6857
6857
  '"'
@@ -6859,7 +6859,7 @@ function Ci({
6859
6859
  C && /* @__PURE__ */ t("div", { style: {
6860
6860
  padding: "var(--lucent-space-2) var(--lucent-space-2) var(--lucent-space-1)",
6861
6861
  ...B > 0 ? { borderTop: "1px solid var(--lucent-border-subtle)", marginTop: "var(--lucent-space-2)" } : {}
6862
- }, children: /* @__PURE__ */ t(U, { size: "xs", color: "secondary", weight: "medium", children: C }) }),
6862
+ }, children: /* @__PURE__ */ t(j, { size: "xs", color: "secondary", weight: "medium", children: C }) }),
6863
6863
  z.map((D) => {
6864
6864
  const M = D.disabled ?? !1;
6865
6865
  let $ = !1;
@@ -6891,8 +6891,8 @@ function Ci({
6891
6891
  children: [
6892
6892
  D.icon && /* @__PURE__ */ t("span", { style: { flexShrink: 0, color: "var(--lucent-text-secondary)", display: "flex" }, children: D.icon }),
6893
6893
  /* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
6894
- /* @__PURE__ */ t(U, { size: "sm", weight: "medium", truncate: !0, children: D.label }),
6895
- D.description && /* @__PURE__ */ t(U, { size: "xs", color: "secondary", truncate: !0, children: D.description })
6894
+ /* @__PURE__ */ t(j, { size: "sm", weight: "medium", truncate: !0, children: D.label }),
6895
+ D.description && /* @__PURE__ */ t(j, { size: "xs", color: "secondary", truncate: !0, children: D.description })
6896
6896
  ] })
6897
6897
  ]
6898
6898
  },
@@ -6914,7 +6914,7 @@ function Ci({
6914
6914
  ["Esc", "Close"]
6915
6915
  ].map(([C, z]) => /* @__PURE__ */ g("span", { style: { display: "flex", alignItems: "center", gap: "var(--lucent-space-1)" }, children: [
6916
6916
  /* @__PURE__ */ t(fe, { size: "xs", variant: "outline", tabIndex: -1, style: { pointerEvents: "none" }, children: C }),
6917
- /* @__PURE__ */ t(U, { size: "xs", color: "secondary", children: z })
6917
+ /* @__PURE__ */ t(j, { size: "xs", color: "secondary", children: z })
6918
6918
  ] }, C)) })
6919
6919
  ]
6920
6920
  }
@@ -6922,7 +6922,7 @@ function Ci({
6922
6922
  }
6923
6923
  );
6924
6924
  }
6925
- const Ii = {
6925
+ const Mi = {
6926
6926
  id: "command-palette",
6927
6927
  name: "CommandPalette",
6928
6928
  tier: "overlay",
@@ -7004,28 +7004,28 @@ const Ii = {
7004
7004
  keyboardInteractions: ["⌘K / Ctrl+K to open", "↑↓ to navigate", "Enter to select", "Escape to close"],
7005
7005
  notes: 'The backdrop and panel use role="dialog" with aria-modal="true". The input is role="searchbox". The result list is role="listbox" with role="option" items. Focus is moved to the search input on open.'
7006
7006
  }
7007
- }, Zr = {
7007
+ }, Qr = {
7008
7008
  sm: "calc(var(--lucent-space-8) * 0.5 + 16px + 2px)",
7009
7009
  md: "calc(var(--lucent-space-10) * 0.5 + 20px + 2px)",
7010
7010
  lg: "calc(var(--lucent-space-12) * 0.5 + 24px + 2px)"
7011
- }, Qr = {
7011
+ }, ea = {
7012
7012
  sm: "var(--lucent-font-size-sm)",
7013
7013
  md: "var(--lucent-font-size-md)",
7014
7014
  lg: "var(--lucent-font-size-lg)"
7015
- }, ea = {
7015
+ }, ta = {
7016
7016
  sm: "var(--lucent-space-1) var(--lucent-space-2)",
7017
7017
  md: "var(--lucent-space-1) var(--lucent-space-2)",
7018
7018
  lg: "var(--lucent-space-2) var(--lucent-space-3)"
7019
- }, qe = {
7019
+ }, Be = {
7020
7020
  sm: "var(--lucent-space-2)",
7021
7021
  md: "var(--lucent-space-2)",
7022
7022
  lg: "var(--lucent-space-3)"
7023
- }, Ue = {
7023
+ }, Ge = {
7024
7024
  sm: "var(--lucent-font-size-sm)",
7025
7025
  md: "var(--lucent-font-size-sm)",
7026
7026
  lg: "var(--lucent-font-size-md)"
7027
- }, Bt = { sm: "sm", md: "md", lg: "lg" }, ta = { sm: "sm", md: "md", lg: "lg" };
7028
- function Mi({
7027
+ }, Dt = { sm: "sm", md: "md", lg: "lg" }, na = { sm: "sm", md: "md", lg: "lg" };
7028
+ function zi({
7029
7029
  options: e,
7030
7030
  value: r,
7031
7031
  defaultValue: n = [],
@@ -7039,46 +7039,46 @@ function Mi({
7039
7039
  errorText: p,
7040
7040
  style: h
7041
7041
  }) {
7042
- const w = r !== void 0, [b, m] = q(n), f = w ? r : b, [d, y] = q(!1), [x, T] = q(""), [S, k] = q(0), [v, E] = q(!1), C = V(null), z = V(null), B = V(null), D = V(null), [M, $] = q({ top: 0, left: 0, width: 0 }), R = rt();
7042
+ const w = r !== void 0, [b, m] = q(n), f = w ? r : b, [d, y] = q(!1), [x, T] = q(""), [S, k] = q(0), [v, E] = q(!1), C = V(null), z = V(null), B = V(null), D = V(null), [M, $] = q({ top: 0, left: 0, width: 0 }), R = at();
7043
7043
  H(() => {
7044
7044
  if (!d) return;
7045
- const F = (j) => {
7045
+ const N = (G) => {
7046
7046
  var K, se;
7047
- !((K = C.current) != null && K.contains(j.target)) && !((se = D.current) != null && se.contains(j.target)) && (y(!1), T(""));
7047
+ !((K = C.current) != null && K.contains(G.target)) && !((se = D.current) != null && se.contains(G.target)) && (y(!1), T(""));
7048
7048
  };
7049
- return document.addEventListener("mousedown", F), () => document.removeEventListener("mousedown", F);
7049
+ return document.addEventListener("mousedown", N), () => document.removeEventListener("mousedown", N);
7050
7050
  }, [d]), oe(() => {
7051
7051
  if (!d || !B.current) return;
7052
- const F = B.current.getBoundingClientRect();
7053
- $({ top: F.bottom + 4, left: F.left, width: F.width });
7052
+ const N = B.current.getBoundingClientRect();
7053
+ $({ top: N.bottom + 4, left: N.left, width: N.width });
7054
7054
  }, [d, f, x]);
7055
- const W = (F) => {
7056
- const j = f.includes(F) ? f.filter((K) => K !== F) : l !== void 0 && f.length >= l ? f : [...f, F];
7057
- w || m(j), i == null || i(j);
7058
- }, P = (F) => {
7059
- const j = f.filter((K) => K !== F);
7060
- w || m(j), i == null || i(j);
7055
+ const W = (N) => {
7056
+ const G = f.includes(N) ? f.filter((K) => K !== N) : l !== void 0 && f.length >= l ? f : [...f, N];
7057
+ w || m(G), i == null || i(G);
7058
+ }, P = (N) => {
7059
+ const G = f.filter((K) => K !== N);
7060
+ w || m(G), i == null || i(G);
7061
7061
  }, O = e.filter(
7062
- (F) => F.label.toLowerCase().includes(x.toLowerCase())
7063
- ), Y = (F) => {
7064
- if (F.key === "Escape") {
7062
+ (N) => N.label.toLowerCase().includes(x.toLowerCase())
7063
+ ), Y = (N) => {
7064
+ if (N.key === "Escape") {
7065
7065
  y(!1), T("");
7066
7066
  return;
7067
7067
  }
7068
- if (F.key === "ArrowDown" && (F.preventDefault(), y(!0), k((j) => Math.min(j + 1, O.length - 1))), F.key === "ArrowUp" && (F.preventDefault(), k((j) => Math.max(j - 1, 0))), F.key === "Enter") {
7069
- F.preventDefault();
7070
- const j = O[S];
7071
- j && !j.disabled && W(j.value);
7068
+ if (N.key === "ArrowDown" && (N.preventDefault(), y(!0), k((G) => Math.min(G + 1, O.length - 1))), N.key === "ArrowUp" && (N.preventDefault(), k((G) => Math.max(G - 1, 0))), N.key === "Enter") {
7069
+ N.preventDefault();
7070
+ const G = O[S];
7071
+ G && !G.disabled && W(G.value);
7072
7072
  }
7073
- F.key === "Backspace" && x === "" && f.length > 0 && P(f[f.length - 1]);
7074
- }, L = l !== void 0 && f.length >= l, A = !!p, I = o ? "var(--lucent-border-default)" : A ? "var(--lucent-danger-default)" : v ? "var(--lucent-accent-border)" : "var(--lucent-border-default)", N = v ? `0 0 0 3px ${A ? "var(--lucent-danger-subtle)" : "var(--lucent-accent-subtle)"}` : "none", G = `lucent-multiselect-${rt()}`;
7073
+ N.key === "Backspace" && x === "" && f.length > 0 && P(f[f.length - 1]);
7074
+ }, L = l !== void 0 && f.length >= l, A = !!p, I = o ? "var(--lucent-border-default)" : A ? "var(--lucent-danger-default)" : v ? "var(--lucent-accent-border)" : "var(--lucent-border-default)", F = v ? `0 0 0 3px ${A ? "var(--lucent-danger-subtle)" : "var(--lucent-accent-subtle)"}` : "none", U = `lucent-multiselect-${at()}`;
7075
7075
  return /* @__PURE__ */ g("div", { ref: C, style: { display: "flex", flexDirection: "column", gap: "var(--lucent-space-1)", ...h }, children: [
7076
7076
  c && /* @__PURE__ */ t(
7077
7077
  "label",
7078
7078
  {
7079
- htmlFor: G,
7079
+ htmlFor: U,
7080
7080
  style: {
7081
- fontSize: Ue[s],
7081
+ fontSize: Ge[s],
7082
7082
  fontWeight: "var(--lucent-font-weight-medium)",
7083
7083
  color: o ? "var(--lucent-text-disabled)" : "var(--lucent-text-primary)",
7084
7084
  fontFamily: "var(--lucent-font-family-base)"
@@ -7091,37 +7091,37 @@ function Mi({
7091
7091
  "div",
7092
7092
  {
7093
7093
  onClick: () => {
7094
- var F;
7095
- o || (y(!0), (F = z.current) == null || F.focus());
7094
+ var N;
7095
+ o || (y(!0), (N = z.current) == null || N.focus());
7096
7096
  },
7097
7097
  style: {
7098
7098
  display: "flex",
7099
7099
  flexWrap: "wrap",
7100
7100
  alignItems: "center",
7101
- gap: qe[s],
7102
- minHeight: Zr[s],
7101
+ gap: Be[s],
7102
+ minHeight: Qr[s],
7103
7103
  boxSizing: "border-box",
7104
- padding: ea[s],
7104
+ padding: ta[s],
7105
7105
  borderRadius: "var(--lucent-radius-lg)",
7106
7106
  border: `1px solid ${I}`,
7107
7107
  background: o ? "color-mix(in srgb, var(--lucent-text-primary) 6%, transparent)" : "var(--lucent-surface)",
7108
7108
  cursor: o ? "not-allowed" : "text",
7109
7109
  transition: "border-color var(--lucent-duration-fast) var(--lucent-easing-default), box-shadow var(--lucent-duration-fast) var(--lucent-easing-default)",
7110
- boxShadow: N
7110
+ boxShadow: F
7111
7111
  },
7112
7112
  children: [
7113
- f.map((F) => {
7114
- const j = e.find((K) => K.value === F);
7115
- return j ? /* @__PURE__ */ t(Pe, { size: ta[s], onDismiss: () => P(F), disabled: o, children: j.label }, F) : null;
7113
+ f.map((N) => {
7114
+ const G = e.find((K) => K.value === N);
7115
+ return G ? /* @__PURE__ */ t(Le, { size: na[s], onDismiss: () => P(N), disabled: o, children: G.label }, N) : null;
7116
7116
  }),
7117
7117
  /* @__PURE__ */ t(
7118
7118
  "input",
7119
7119
  {
7120
- id: G,
7120
+ id: U,
7121
7121
  ref: z,
7122
7122
  value: x,
7123
- onChange: (F) => {
7124
- T(F.target.value), y(!0), k(0);
7123
+ onChange: (N) => {
7124
+ T(N.target.value), y(!0), k(0);
7125
7125
  },
7126
7126
  onKeyDown: Y,
7127
7127
  onFocus: () => E(!0),
@@ -7131,7 +7131,7 @@ function Mi({
7131
7131
  "aria-autocomplete": "list",
7132
7132
  "aria-controls": R,
7133
7133
  "aria-expanded": d,
7134
- "aria-describedby": A ? `${G}-error` : u ? `${G}-helper` : void 0,
7134
+ "aria-describedby": A ? `${U}-error` : u ? `${U}-helper` : void 0,
7135
7135
  role: "combobox",
7136
7136
  style: {
7137
7137
  flex: "1 1 80px",
@@ -7140,7 +7140,7 @@ function Mi({
7140
7140
  outline: "none",
7141
7141
  background: "transparent",
7142
7142
  fontFamily: "var(--lucent-font-family-base)",
7143
- fontSize: Qr[s],
7143
+ fontSize: ea[s],
7144
7144
  color: o ? "var(--lucent-text-disabled)" : "var(--lucent-text-primary)",
7145
7145
  cursor: o ? "not-allowed" : "text",
7146
7146
  padding: f.length === 0 ? "2px 0 2px var(--lucent-space-1)" : "2px 0"
@@ -7172,11 +7172,11 @@ function Mi({
7172
7172
  boxShadow: "0 0 24px -4px color-mix(in srgb, var(--lucent-accent-default) 12%, transparent), var(--lucent-shadow-md)",
7173
7173
  maxHeight: 240,
7174
7174
  overflowY: "auto",
7175
- padding: qe[s]
7175
+ padding: Be[s]
7176
7176
  },
7177
7177
  children: [
7178
- O.length === 0 ? /* @__PURE__ */ t("div", { style: { padding: "var(--lucent-space-2)" }, children: /* @__PURE__ */ t(U, { color: "secondary", size: Bt[s], children: "No options" }) }) : O.map((F, j) => {
7179
- const K = f.includes(F.value), se = j === S, re = F.disabled ?? !1, _ = L && !K;
7178
+ O.length === 0 ? /* @__PURE__ */ t("div", { style: { padding: "var(--lucent-space-2)" }, children: /* @__PURE__ */ t(j, { color: "secondary", size: Dt[s], children: "No options" }) }) : O.map((N, G) => {
7179
+ const K = f.includes(N.value), se = G === S, re = N.disabled ?? !1, _ = L && !K;
7180
7180
  return /* @__PURE__ */ g(
7181
7181
  "div",
7182
7182
  {
@@ -7184,14 +7184,14 @@ function Mi({
7184
7184
  "aria-selected": K,
7185
7185
  "aria-disabled": re || _,
7186
7186
  onClick: () => {
7187
- !re && !_ && W(F.value);
7187
+ !re && !_ && W(N.value);
7188
7188
  },
7189
- onMouseEnter: () => k(j),
7189
+ onMouseEnter: () => k(G),
7190
7190
  style: {
7191
7191
  display: "flex",
7192
7192
  alignItems: "center",
7193
- gap: qe[s],
7194
- padding: qe[s],
7193
+ gap: Be[s],
7194
+ padding: Be[s],
7195
7195
  borderRadius: "var(--lucent-radius-md)",
7196
7196
  cursor: re || _ ? "not-allowed" : "pointer",
7197
7197
  background: se ? "color-mix(in srgb, var(--lucent-text-primary) 5%, transparent)" : "transparent",
@@ -7199,7 +7199,7 @@ function Mi({
7199
7199
  },
7200
7200
  children: [
7201
7201
  /* @__PURE__ */ t(
7202
- ut,
7202
+ pt,
7203
7203
  {
7204
7204
  checked: K,
7205
7205
  disabled: re || _,
@@ -7209,16 +7209,16 @@ function Mi({
7209
7209
  readOnly: !0
7210
7210
  }
7211
7211
  ),
7212
- /* @__PURE__ */ t(U, { size: Bt[s], children: F.label })
7212
+ /* @__PURE__ */ t(j, { size: Dt[s], children: N.label })
7213
7213
  ]
7214
7214
  },
7215
- F.value
7215
+ N.value
7216
7216
  );
7217
7217
  }),
7218
7218
  L && /* @__PURE__ */ t("div", { style: {
7219
7219
  padding: "var(--lucent-space-2)",
7220
7220
  borderTop: "1px solid var(--lucent-border-subtle)"
7221
- }, children: /* @__PURE__ */ g(U, { size: s === "lg" ? "sm" : "xs", color: "secondary", children: [
7221
+ }, children: /* @__PURE__ */ g(j, { size: s === "lg" ? "sm" : "xs", color: "secondary", children: [
7222
7222
  "Max ",
7223
7223
  l,
7224
7224
  " selected"
@@ -7232,10 +7232,10 @@ function Mi({
7232
7232
  A && /* @__PURE__ */ t(
7233
7233
  "span",
7234
7234
  {
7235
- id: `${G}-error`,
7235
+ id: `${U}-error`,
7236
7236
  role: "alert",
7237
7237
  style: {
7238
- fontSize: Ue[s],
7238
+ fontSize: Ge[s],
7239
7239
  color: "var(--lucent-danger-text)",
7240
7240
  fontFamily: "var(--lucent-font-family-base)"
7241
7241
  },
@@ -7245,9 +7245,9 @@ function Mi({
7245
7245
  !A && u && /* @__PURE__ */ t(
7246
7246
  "span",
7247
7247
  {
7248
- id: `${G}-helper`,
7248
+ id: `${U}-helper`,
7249
7249
  style: {
7250
- fontSize: Ue[s],
7250
+ fontSize: Ge[s],
7251
7251
  color: "var(--lucent-text-secondary)",
7252
7252
  fontFamily: "var(--lucent-font-family-base)"
7253
7253
  },
@@ -7256,7 +7256,7 @@ function Mi({
7256
7256
  )
7257
7257
  ] });
7258
7258
  }
7259
- const zi = {
7259
+ const Ai = {
7260
7260
  id: "multi-select",
7261
7261
  name: "MultiSelect",
7262
7262
  tier: "molecule",
@@ -7361,22 +7361,22 @@ const zi = {
7361
7361
  notes: 'The input carries role="combobox" with aria-expanded and aria-controls pointing to the listbox. Each option has role="option" with aria-selected. Remove buttons on tags have descriptive aria-label.'
7362
7362
  }
7363
7363
  };
7364
- function na(e, r) {
7364
+ function ra(e, r) {
7365
7365
  return new Date(e, r + 1, 0).getDate();
7366
7366
  }
7367
- function ra(e, r) {
7367
+ function aa(e, r) {
7368
7368
  return new Date(e, r, 1).getDay();
7369
7369
  }
7370
- function Le(e, r) {
7370
+ function Re(e, r) {
7371
7371
  return e.getFullYear() === r.getFullYear() && e.getMonth() === r.getMonth() && e.getDate() === r.getDate();
7372
7372
  }
7373
- function Re(e, r) {
7373
+ function $e(e, r) {
7374
7374
  return new Date(e.getFullYear(), e.getMonth(), e.getDate()) < new Date(r.getFullYear(), r.getMonth(), r.getDate());
7375
7375
  }
7376
- function Dt(e, r) {
7376
+ function Pt(e, r) {
7377
7377
  return new Date(e.getFullYear(), e.getMonth(), e.getDate()) > new Date(r.getFullYear(), r.getMonth(), r.getDate());
7378
7378
  }
7379
- const aa = [
7379
+ const oa = [
7380
7380
  "January",
7381
7381
  "February",
7382
7382
  "March",
@@ -7389,29 +7389,29 @@ const aa = [
7389
7389
  "October",
7390
7390
  "November",
7391
7391
  "December"
7392
- ], oa = ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"];
7392
+ ], ia = ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"];
7393
7393
  function Te(e) {
7394
7394
  return `${e.getFullYear()}-${String(e.getMonth() + 1).padStart(2, "0")}-${String(e.getDate()).padStart(2, "0")}`;
7395
7395
  }
7396
- const ia = { sm: "calc(var(--lucent-space-8) * 0.5 + 18px)", md: "calc(var(--lucent-space-10) * 0.5 + 22px)", lg: "calc(var(--lucent-space-12) * 0.5 + 26px)" }, sa = {
7396
+ const sa = { sm: "calc(var(--lucent-space-8) * 0.5 + 18px)", md: "calc(var(--lucent-space-10) * 0.5 + 22px)", lg: "calc(var(--lucent-space-12) * 0.5 + 26px)" }, la = {
7397
7397
  sm: "var(--lucent-font-size-sm)",
7398
7398
  md: "var(--lucent-font-size-md)",
7399
7399
  lg: "var(--lucent-font-size-md)"
7400
- }, je = {
7400
+ }, _e = {
7401
7401
  sm: "var(--lucent-font-size-sm)",
7402
7402
  md: "var(--lucent-font-size-sm)",
7403
7403
  lg: "var(--lucent-font-size-md)"
7404
- }, la = {
7404
+ }, ca = {
7405
7405
  sm: "var(--lucent-space-3)",
7406
7406
  md: "var(--lucent-space-4)",
7407
7407
  lg: "var(--lucent-space-4)"
7408
- }, ca = {
7408
+ }, da = {
7409
7409
  sm: "var(--lucent-space-2)",
7410
7410
  md: "calc((var(--lucent-space-2) + var(--lucent-space-3)) / 2)",
7411
7411
  lg: "var(--lucent-space-3)"
7412
- }, da = { sm: 28, md: 32, lg: 38 }, ua = { sm: "var(--lucent-font-size-xs)", md: "var(--lucent-font-size-sm)", lg: "var(--lucent-font-size-md)" }, pa = { sm: "xs", md: "sm", lg: "md" }, ha = { sm: "xs", md: "xs", lg: "sm" }, fa = { sm: 24, md: 28, lg: 32 }, ma = { sm: 14, md: 16, lg: 18 }, Xt = { sm: "var(--lucent-space-3)", md: "var(--lucent-space-4)", lg: "var(--lucent-space-5)" }, it = { sm: 220, md: 260, lg: 300 };
7413
- function Pt({ dir: e, onClick: r, disabled: n, size: i = "md" }) {
7414
- const [a, o] = q(!1), l = fa[i], s = ma[i];
7412
+ }, ua = { sm: 28, md: 32, lg: 38 }, pa = { sm: "var(--lucent-font-size-xs)", md: "var(--lucent-font-size-sm)", lg: "var(--lucent-font-size-md)" }, ha = { sm: "xs", md: "sm", lg: "md" }, fa = { sm: "xs", md: "xs", lg: "sm" }, ma = { sm: 24, md: 28, lg: 32 }, ga = { sm: 14, md: 16, lg: 18 }, Zt = { sm: "var(--lucent-space-3)", md: "var(--lucent-space-4)", lg: "var(--lucent-space-5)" }, st = { sm: 220, md: 260, lg: 300 };
7413
+ function Lt({ dir: e, onClick: r, disabled: n, size: i = "md" }) {
7414
+ const [a, o] = q(!1), l = ma[i], s = ga[i];
7415
7415
  return /* @__PURE__ */ t(
7416
7416
  "button",
7417
7417
  {
@@ -7447,7 +7447,7 @@ function Pt({ dir: e, onClick: r, disabled: n, size: i = "md" }) {
7447
7447
  }
7448
7448
  );
7449
7449
  }
7450
- function st({
7450
+ function lt({
7451
7451
  year: e,
7452
7452
  month: r,
7453
7453
  selected: n,
@@ -7461,27 +7461,27 @@ function st({
7461
7461
  onDayHover: p,
7462
7462
  size: h = "md"
7463
7463
  }) {
7464
- const w = na(e, r), b = ra(e, r), [m, f] = q(null), d = [
7464
+ const w = ra(e, r), b = aa(e, r), [m, f] = q(null), d = [
7465
7465
  ...Array(b).fill(null),
7466
7466
  ...Array.from({ length: w }, (y, x) => x + 1)
7467
7467
  ];
7468
7468
  for (; d.length % 7 !== 0; ) d.push(null);
7469
7469
  return /* @__PURE__ */ g("div", { children: [
7470
7470
  /* @__PURE__ */ g("div", { style: { display: "flex", alignItems: "center", justifyContent: "space-between", marginBottom: "var(--lucent-space-3)" }, children: [
7471
- /* @__PURE__ */ t(Pt, { dir: "prev", onClick: s, size: h }),
7472
- /* @__PURE__ */ g(U, { weight: "medium", size: pa[h], children: [
7473
- aa[r],
7471
+ /* @__PURE__ */ t(Lt, { dir: "prev", onClick: s, size: h }),
7472
+ /* @__PURE__ */ g(j, { weight: "medium", size: ha[h], children: [
7473
+ oa[r],
7474
7474
  " ",
7475
7475
  e
7476
7476
  ] }),
7477
- /* @__PURE__ */ t(Pt, { dir: "next", onClick: c, size: h })
7477
+ /* @__PURE__ */ t(Lt, { dir: "next", onClick: c, size: h })
7478
7478
  ] }),
7479
- /* @__PURE__ */ t("div", { style: { display: "grid", gridTemplateColumns: "repeat(7, 1fr)", gap: 2, marginBottom: "var(--lucent-space-1)" }, children: oa.map((y) => /* @__PURE__ */ t("div", { style: { textAlign: "center" }, children: /* @__PURE__ */ t(U, { size: ha[h], color: "secondary", children: y }) }, y)) }),
7479
+ /* @__PURE__ */ t("div", { style: { display: "grid", gridTemplateColumns: "repeat(7, 1fr)", gap: 2, marginBottom: "var(--lucent-space-1)" }, children: ia.map((y) => /* @__PURE__ */ t("div", { style: { textAlign: "center" }, children: /* @__PURE__ */ t(j, { size: fa[h], color: "secondary", children: y }) }, y)) }),
7480
7480
  /* @__PURE__ */ t("div", { style: { display: "grid", gridTemplateColumns: "repeat(7, 1fr)", gap: 2 }, children: d.map((y, x) => {
7481
7481
  if (!y) return /* @__PURE__ */ t("div", {}, x);
7482
- const T = new Date(e, r, y), S = n ? Le(T, n) : !1, k = Le(T, i), v = (a ? Re(T, a) : !1) || (o ? Dt(T, o) : !1);
7482
+ const T = new Date(e, r, y), S = n ? Re(T, n) : !1, k = Re(T, i), v = (a ? $e(T, a) : !1) || (o ? Pt(T, o) : !1);
7483
7483
  let E = !1;
7484
- return u != null && u.start && (u != null && u.end) && (E = !Re(T, u.start) && !Dt(T, u.end)), /* @__PURE__ */ t(
7484
+ return u != null && u.start && (u != null && u.end) && (E = !$e(T, u.start) && !Pt(T, u.end)), /* @__PURE__ */ t(
7485
7485
  "button",
7486
7486
  {
7487
7487
  type: "button",
@@ -7499,13 +7499,13 @@ function st({
7499
7499
  display: "flex",
7500
7500
  alignItems: "center",
7501
7501
  justifyContent: "center",
7502
- height: da[h],
7502
+ height: ua[h],
7503
7503
  width: "100%",
7504
7504
  border: k && !S ? "1px solid var(--lucent-border-strong)" : "1px solid transparent",
7505
7505
  borderRadius: "var(--lucent-radius-md)",
7506
7506
  background: S ? "var(--lucent-accent-default)" : E ? "var(--lucent-accent-subtle)" : m === y && !v ? "color-mix(in srgb, var(--lucent-accent-default) 14%, transparent)" : "transparent",
7507
7507
  color: S ? "var(--lucent-accent-fg)" : v ? "var(--lucent-text-disabled)" : "var(--lucent-text-primary)",
7508
- fontSize: ua[h],
7508
+ fontSize: pa[h],
7509
7509
  fontFamily: "var(--lucent-font-family-base)",
7510
7510
  fontWeight: k ? "var(--lucent-font-weight-medium)" : "var(--lucent-font-weight-regular)",
7511
7511
  cursor: v ? "not-allowed" : "pointer",
@@ -7518,7 +7518,7 @@ function st({
7518
7518
  }) })
7519
7519
  ] });
7520
7520
  }
7521
- function Ai({
7521
+ function Ei({
7522
7522
  value: e,
7523
7523
  defaultValue: r,
7524
7524
  onChange: n,
@@ -7535,9 +7535,9 @@ function Ai({
7535
7535
  const w = e !== void 0, [b, m] = q(r), f = w ? e : b, d = !!p, y = a, x = `lucent-datepicker-${Math.random().toString(36).slice(2, 7)}`, T = /* @__PURE__ */ new Date(), [S, k] = q((f ?? T).getFullYear()), [v, E] = q((f ?? T).getMonth()), [C, z] = q(!1), [B, D] = q(!1), M = V(null), $ = V(null), [R, W] = q({ top: 0, left: 0 });
7536
7536
  H(() => {
7537
7537
  if (!C) return;
7538
- const I = (N) => {
7539
- var G, F;
7540
- !((G = M.current) != null && G.contains(N.target)) && !((F = $.current) != null && F.contains(N.target)) && z(!1);
7538
+ const I = (F) => {
7539
+ var U, N;
7540
+ !((U = M.current) != null && U.contains(F.target)) && !((N = $.current) != null && N.contains(F.target)) && z(!1);
7541
7541
  };
7542
7542
  return document.addEventListener("mousedown", I), () => document.removeEventListener("mousedown", I);
7543
7543
  }, [C]), oe(() => {
@@ -7558,7 +7558,7 @@ function Ai({
7558
7558
  {
7559
7559
  htmlFor: x,
7560
7560
  style: {
7561
- fontSize: je[s],
7561
+ fontSize: _e[s],
7562
7562
  fontWeight: "var(--lucent-font-weight-medium)",
7563
7563
  color: y ? "var(--lucent-text-disabled)" : "var(--lucent-text-primary)",
7564
7564
  fontFamily: "var(--lucent-font-family-base)"
@@ -7581,18 +7581,18 @@ function Ai({
7581
7581
  style: {
7582
7582
  display: "flex",
7583
7583
  alignItems: "center",
7584
- gap: ca[s],
7584
+ gap: da[s],
7585
7585
  width: "100%",
7586
- height: ia[s],
7586
+ height: sa[s],
7587
7587
  boxSizing: "border-box",
7588
- padding: `0 ${la[s]}`,
7588
+ padding: `0 ${ca[s]}`,
7589
7589
  borderRadius: "var(--lucent-radius-lg)",
7590
7590
  border: `1px solid ${L}`,
7591
7591
  boxShadow: A,
7592
7592
  background: y ? "color-mix(in srgb, var(--lucent-text-primary) 6%, transparent)" : "var(--lucent-surface)",
7593
7593
  color: f ? "var(--lucent-text-primary)" : "var(--lucent-text-secondary)",
7594
7594
  fontFamily: "var(--lucent-font-family-base)",
7595
- fontSize: sa[s],
7595
+ fontSize: la[s],
7596
7596
  cursor: y ? "not-allowed" : "pointer",
7597
7597
  outline: "none",
7598
7598
  transition: [
@@ -7615,7 +7615,7 @@ function Ai({
7615
7615
  {
7616
7616
  role: "alert",
7617
7617
  style: {
7618
- fontSize: je[s],
7618
+ fontSize: _e[s],
7619
7619
  color: "var(--lucent-danger-text)",
7620
7620
  fontFamily: "var(--lucent-font-family-base)"
7621
7621
  },
@@ -7626,7 +7626,7 @@ function Ai({
7626
7626
  "span",
7627
7627
  {
7628
7628
  style: {
7629
- fontSize: je[s],
7629
+ fontSize: _e[s],
7630
7630
  color: "var(--lucent-text-secondary)",
7631
7631
  fontFamily: "var(--lucent-font-family-base)"
7632
7632
  },
@@ -7651,11 +7651,11 @@ function Ai({
7651
7651
  border: "1px solid color-mix(in srgb, var(--lucent-accent-default) 15%, var(--lucent-border-default))",
7652
7652
  borderRadius: "var(--lucent-radius-lg)",
7653
7653
  boxShadow: "0 0 24px -4px color-mix(in srgb, var(--lucent-accent-default) 12%, transparent), var(--lucent-shadow-md)",
7654
- padding: Xt[s],
7655
- minWidth: it[s]
7654
+ padding: Zt[s],
7655
+ minWidth: st[s]
7656
7656
  },
7657
7657
  children: /* @__PURE__ */ t(
7658
- st,
7658
+ lt,
7659
7659
  {
7660
7660
  year: S,
7661
7661
  month: v,
@@ -7675,7 +7675,7 @@ function Ai({
7675
7675
  )
7676
7676
  ] });
7677
7677
  }
7678
- const Ei = {
7678
+ const qi = {
7679
7679
  id: "date-picker",
7680
7680
  name: "DatePicker",
7681
7681
  tier: "molecule",
@@ -7786,27 +7786,27 @@ const Ei = {
7786
7786
  keyboardInteractions: ["Enter/Space to open calendar", "Click day to select", "Escape closes popover (click outside)"],
7787
7787
  notes: 'The calendar popover is role="dialog". Each day button has aria-label with the full date and aria-pressed for selected state. Full arrow-key navigation within the calendar grid is a planned enhancement.'
7788
7788
  }
7789
- }, ga = { sm: "calc(var(--lucent-space-8) * 0.5 + 18px)", md: "calc(var(--lucent-space-10) * 0.5 + 22px)", lg: "calc(var(--lucent-space-12) * 0.5 + 26px)" }, va = {
7789
+ }, va = { sm: "calc(var(--lucent-space-8) * 0.5 + 18px)", md: "calc(var(--lucent-space-10) * 0.5 + 22px)", lg: "calc(var(--lucent-space-12) * 0.5 + 26px)" }, ba = {
7790
7790
  sm: "var(--lucent-font-size-sm)",
7791
7791
  md: "var(--lucent-font-size-md)",
7792
7792
  lg: "var(--lucent-font-size-md)"
7793
- }, ba = {
7793
+ }, ya = {
7794
7794
  sm: "var(--lucent-space-3)",
7795
7795
  md: "var(--lucent-space-4)",
7796
7796
  lg: "var(--lucent-space-4)"
7797
- }, ya = {
7797
+ }, xa = {
7798
7798
  sm: "var(--lucent-space-2)",
7799
7799
  md: "calc((var(--lucent-space-2) + var(--lucent-space-3)) / 2)",
7800
7800
  lg: "var(--lucent-space-3)"
7801
- }, _e = {
7801
+ }, Ye = {
7802
7802
  sm: "var(--lucent-font-size-sm)",
7803
7803
  md: "var(--lucent-font-size-sm)",
7804
7804
  lg: "var(--lucent-font-size-md)"
7805
7805
  };
7806
- function xa(e, r) {
7807
- return e ? Le(e.start, e.end) ? Te(e.start) : `${Te(e.start)} → ${Te(e.end)}` : r;
7806
+ function wa(e, r) {
7807
+ return e ? Re(e.start, e.end) ? Te(e.start) : `${Te(e.start)} → ${Te(e.end)}` : r;
7808
7808
  }
7809
- function wa({
7809
+ function ka({
7810
7810
  value: e,
7811
7811
  defaultValue: r,
7812
7812
  onChange: n,
@@ -7821,34 +7821,34 @@ function wa({
7821
7821
  trigger: h,
7822
7822
  style: w
7823
7823
  }) {
7824
- const b = e !== void 0, [m, f] = q(r), d = b ? e : m, y = !!p, x = a, T = `lucent-daterangepicker-${Math.random().toString(36).slice(2, 7)}`, [S, k] = q(null), [v, E] = q(null), C = /* @__PURE__ */ new Date(), [z, B] = q(((d == null ? void 0 : d.start) ?? C).getFullYear()), [D, M] = q(((d == null ? void 0 : d.start) ?? C).getMonth()), $ = D === 11 ? 0 : D + 1, R = D === 11 ? z + 1 : z, [W, P] = q(!1), [O, Y] = q(!1), L = V(null), A = V(null), [I, N] = q({ top: 0, left: 0 });
7824
+ const b = e !== void 0, [m, f] = q(r), d = b ? e : m, y = !!p, x = a, T = `lucent-daterangepicker-${Math.random().toString(36).slice(2, 7)}`, [S, k] = q(null), [v, E] = q(null), C = /* @__PURE__ */ new Date(), [z, B] = q(((d == null ? void 0 : d.start) ?? C).getFullYear()), [D, M] = q(((d == null ? void 0 : d.start) ?? C).getMonth()), $ = D === 11 ? 0 : D + 1, R = D === 11 ? z + 1 : z, [W, P] = q(!1), [O, Y] = q(!1), L = V(null), A = V(null), [I, F] = q({ top: 0, left: 0 });
7825
7825
  H(() => {
7826
7826
  if (!W) return;
7827
7827
  const _ = (me) => {
7828
- var Me, xe;
7829
- !((Me = L.current) != null && Me.contains(me.target)) && !((xe = A.current) != null && xe.contains(me.target)) && (P(!1), k(null));
7828
+ var ze, xe;
7829
+ !((ze = L.current) != null && ze.contains(me.target)) && !((xe = A.current) != null && xe.contains(me.target)) && (P(!1), k(null));
7830
7830
  };
7831
7831
  return document.addEventListener("mousedown", _), () => document.removeEventListener("mousedown", _);
7832
7832
  }, [W]), oe(() => {
7833
7833
  if (!W || !L.current) return;
7834
7834
  const _ = L.current.getBoundingClientRect();
7835
- N({ top: _.bottom + 4, left: _.left });
7835
+ F({ top: _.bottom + 4, left: _.left });
7836
7836
  }, [W]);
7837
- const G = (_) => {
7837
+ const U = (_) => {
7838
7838
  if (!S)
7839
7839
  k(_);
7840
7840
  else {
7841
- const [me, Me] = Re(_, S) || Le(_, S) ? [_, S] : [S, _], xe = { start: me, end: Me };
7841
+ const [me, ze] = $e(_, S) || Re(_, S) ? [_, S] : [S, _], xe = { start: me, end: ze };
7842
7842
  b || f(xe), n == null || n(xe), k(null), P(!1);
7843
7843
  }
7844
- }, F = () => {
7844
+ }, N = () => {
7845
7845
  D === 0 ? (M(11), B((_) => _ - 1)) : M((_) => _ - 1);
7846
- }, j = () => {
7846
+ }, G = () => {
7847
7847
  D === 11 ? (M(0), B((_) => _ + 1)) : M((_) => _ + 1);
7848
7848
  };
7849
7849
  let K;
7850
7850
  if (S && v) {
7851
- const [_, me] = Re(v, S) ? [v, S] : [S, v];
7851
+ const [_, me] = $e(v, S) ? [v, S] : [S, v];
7852
7852
  K = { start: _, end: me };
7853
7853
  } else S ? K = { start: S, end: S } : d && (K = { start: d.start, end: d.end });
7854
7854
  const se = x ? "transparent" : y ? "var(--lucent-danger-default)" : O ? "var(--lucent-accent-border)" : "var(--lucent-border-default)", re = O ? `0 0 0 3px ${y ? "var(--lucent-danger-subtle)" : "var(--lucent-accent-subtle)"}` : "none";
@@ -7858,7 +7858,7 @@ function wa({
7858
7858
  {
7859
7859
  htmlFor: T,
7860
7860
  style: {
7861
- fontSize: _e[s],
7861
+ fontSize: Ye[s],
7862
7862
  fontWeight: "var(--lucent-font-weight-medium)",
7863
7863
  color: x ? "var(--lucent-text-disabled)" : "var(--lucent-text-primary)",
7864
7864
  fontFamily: "var(--lucent-font-family-base)"
@@ -7890,18 +7890,18 @@ function wa({
7890
7890
  style: {
7891
7891
  display: "flex",
7892
7892
  alignItems: "center",
7893
- gap: ya[s],
7893
+ gap: xa[s],
7894
7894
  width: "100%",
7895
- height: ga[s],
7895
+ height: va[s],
7896
7896
  boxSizing: "border-box",
7897
- padding: `0 ${ba[s]}`,
7897
+ padding: `0 ${ya[s]}`,
7898
7898
  borderRadius: "var(--lucent-radius-lg)",
7899
7899
  border: `1px solid ${se}`,
7900
7900
  boxShadow: re,
7901
7901
  background: x ? "color-mix(in srgb, var(--lucent-text-primary) 6%, transparent)" : "var(--lucent-surface)",
7902
7902
  color: d ? "var(--lucent-text-primary)" : "var(--lucent-text-secondary)",
7903
7903
  fontFamily: "var(--lucent-font-family-base)",
7904
- fontSize: va[s],
7904
+ fontSize: ba[s],
7905
7905
  cursor: x ? "not-allowed" : "pointer",
7906
7906
  outline: "none",
7907
7907
  transition: [
@@ -7915,7 +7915,7 @@ function wa({
7915
7915
  /* @__PURE__ */ t("path", { d: "M1 6h12", stroke: "currentColor", strokeWidth: "1.3" }),
7916
7916
  /* @__PURE__ */ t("path", { d: "M4 1v2M10 1v2", stroke: "currentColor", strokeWidth: "1.3", strokeLinecap: "round" })
7917
7917
  ] }),
7918
- /* @__PURE__ */ t("span", { style: { flex: 1, textAlign: "left" }, children: xa(d, i) })
7918
+ /* @__PURE__ */ t("span", { style: { flex: 1, textAlign: "left" }, children: wa(d, i) })
7919
7919
  ]
7920
7920
  }
7921
7921
  ),
@@ -7924,7 +7924,7 @@ function wa({
7924
7924
  {
7925
7925
  role: "alert",
7926
7926
  style: {
7927
- fontSize: _e[s],
7927
+ fontSize: Ye[s],
7928
7928
  color: "var(--lucent-danger-text)",
7929
7929
  fontFamily: "var(--lucent-font-family-base)"
7930
7930
  },
@@ -7935,7 +7935,7 @@ function wa({
7935
7935
  "span",
7936
7936
  {
7937
7937
  style: {
7938
- fontSize: _e[s],
7938
+ fontSize: Ye[s],
7939
7939
  color: "var(--lucent-text-secondary)",
7940
7940
  fontFamily: "var(--lucent-font-family-base)"
7941
7941
  },
@@ -7960,13 +7960,13 @@ function wa({
7960
7960
  border: "1px solid color-mix(in srgb, var(--lucent-accent-default) 15%, var(--lucent-border-default))",
7961
7961
  borderRadius: "var(--lucent-radius-lg)",
7962
7962
  boxShadow: "0 0 24px -4px color-mix(in srgb, var(--lucent-accent-default) 12%, transparent), var(--lucent-shadow-md)",
7963
- padding: Xt[s],
7963
+ padding: Zt[s],
7964
7964
  display: "flex",
7965
7965
  gap: "var(--lucent-space-6)"
7966
7966
  },
7967
7967
  children: [
7968
- /* @__PURE__ */ t("div", { style: { minWidth: it[s] }, children: /* @__PURE__ */ t(
7969
- st,
7968
+ /* @__PURE__ */ t("div", { style: { minWidth: st[s] }, children: /* @__PURE__ */ t(
7969
+ lt,
7970
7970
  {
7971
7971
  year: z,
7972
7972
  month: D,
@@ -7974,17 +7974,17 @@ function wa({
7974
7974
  today: C,
7975
7975
  ...o !== void 0 && { min: o },
7976
7976
  ...l !== void 0 && { max: l },
7977
- onSelect: G,
7978
- onPrevMonth: F,
7979
- onNextMonth: j,
7977
+ onSelect: U,
7978
+ onPrevMonth: N,
7979
+ onNextMonth: G,
7980
7980
  ...K !== void 0 && { highlightRange: K },
7981
7981
  ...S && { onDayHover: E },
7982
7982
  size: s
7983
7983
  }
7984
7984
  ) }),
7985
7985
  /* @__PURE__ */ t("div", { style: { width: 1, background: "var(--lucent-border-subtle)", flexShrink: 0 } }),
7986
- /* @__PURE__ */ t("div", { style: { minWidth: it[s] }, children: /* @__PURE__ */ t(
7987
- st,
7986
+ /* @__PURE__ */ t("div", { style: { minWidth: st[s] }, children: /* @__PURE__ */ t(
7987
+ lt,
7988
7988
  {
7989
7989
  year: R,
7990
7990
  month: $,
@@ -7992,9 +7992,9 @@ function wa({
7992
7992
  today: C,
7993
7993
  ...o !== void 0 && { min: o },
7994
7994
  ...l !== void 0 && { max: l },
7995
- onSelect: G,
7996
- onPrevMonth: F,
7997
- onNextMonth: j,
7995
+ onSelect: U,
7996
+ onPrevMonth: N,
7997
+ onNextMonth: G,
7998
7998
  ...K !== void 0 && { highlightRange: K },
7999
7999
  ...S && { onDayHover: E },
8000
8000
  size: s
@@ -8010,10 +8010,10 @@ function wa({
8010
8010
  position: "absolute",
8011
8011
  bottom: -24,
8012
8012
  left: 0
8013
- }, children: /* @__PURE__ */ t(U, { size: "xs", color: "secondary", children: "Now pick the end date" }) })
8013
+ }, children: /* @__PURE__ */ t(j, { size: "xs", color: "secondary", children: "Now pick the end date" }) })
8014
8014
  ] });
8015
8015
  }
8016
- const qi = {
8016
+ const Bi = {
8017
8017
  id: "date-range-picker",
8018
8018
  name: "DateRangePicker",
8019
8019
  tier: "molecule",
@@ -8121,13 +8121,13 @@ const qi = {
8121
8121
  notes: 'Inherits Calendar accessibility from DatePicker. The two-step selection flow is reinforced with a visible "Now pick the end date" hint.'
8122
8122
  }
8123
8123
  };
8124
- function lt(e) {
8124
+ function ct(e) {
8125
8125
  return e < 1024 ? `${e} B` : e < 1024 * 1024 ? `${(e / 1024).toFixed(1)} KB` : `${(e / (1024 * 1024)).toFixed(1)} MB`;
8126
8126
  }
8127
- function ka() {
8127
+ function Sa() {
8128
8128
  return Math.random().toString(36).slice(2);
8129
8129
  }
8130
- function Sa({
8130
+ function Ta({
8131
8131
  item: e,
8132
8132
  onRemove: r
8133
8133
  }) {
@@ -8146,8 +8146,8 @@ function Sa({
8146
8146
  /* @__PURE__ */ t("path", { d: "M12 2v4h4", stroke: "currentColor", strokeWidth: "1.3" })
8147
8147
  ] }),
8148
8148
  /* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0 }, children: [
8149
- /* @__PURE__ */ t(U, { size: "sm", truncate: !0, children: e.file.name }),
8150
- o ? /* @__PURE__ */ t(U, { size: "xs", color: "danger", children: e.error }) : /* @__PURE__ */ t(U, { size: "xs", color: "secondary", children: lt(e.file.size) }),
8149
+ /* @__PURE__ */ t(j, { size: "sm", truncate: !0, children: e.file.name }),
8150
+ o ? /* @__PURE__ */ t(j, { size: "xs", color: "danger", children: e.error }) : /* @__PURE__ */ t(j, { size: "xs", color: "secondary", children: ct(e.file.size) }),
8151
8151
  a !== void 0 && !o && /* @__PURE__ */ t("div", { style: {
8152
8152
  marginTop: 4,
8153
8153
  height: 3,
@@ -8189,7 +8189,7 @@ function Sa({
8189
8189
  )
8190
8190
  ] });
8191
8191
  }
8192
- function Bi({
8192
+ function Di({
8193
8193
  accept: e,
8194
8194
  multiple: r = !1,
8195
8195
  maxSize: n,
@@ -8204,11 +8204,11 @@ function Bi({
8204
8204
  const v = [];
8205
8205
  for (const C of Array.from(k)) {
8206
8206
  if (n && C.size > n) {
8207
- o == null || o(`"${C.name}" exceeds the ${lt(n)} limit.`);
8207
+ o == null || o(`"${C.name}" exceeds the ${ct(n)} limit.`);
8208
8208
  continue;
8209
8209
  }
8210
8210
  if (!r && h.length + v.length >= 1) break;
8211
- v.push({ id: ka(), file: C });
8211
+ v.push({ id: Sa(), file: C });
8212
8212
  }
8213
8213
  if (v.length === 0) return;
8214
8214
  const E = r ? [...h, ...v] : v;
@@ -8275,10 +8275,10 @@ function Bi({
8275
8275
  }
8276
8276
  ),
8277
8277
  /* @__PURE__ */ g("div", { style: { textAlign: "center", width: "100%" }, children: [
8278
- /* @__PURE__ */ t(U, { color: l ? "disabled" : "primary", weight: "medium", align: "center", children: w ? "Drop to upload" : "Drop files here or click to browse" }),
8279
- (e || n) && /* @__PURE__ */ t(U, { size: "xs", color: "secondary", align: "center", children: [
8278
+ /* @__PURE__ */ t(j, { color: l ? "disabled" : "primary", weight: "medium", align: "center", children: w ? "Drop to upload" : "Drop files here or click to browse" }),
8279
+ (e || n) && /* @__PURE__ */ t(j, { size: "xs", color: "secondary", align: "center", children: [
8280
8280
  e && `Accepted: ${e}`,
8281
- n && `Max size: ${lt(n)}`
8281
+ n && `Max size: ${ct(n)}`
8282
8282
  ].filter(Boolean).join(" · ") })
8283
8283
  ] }),
8284
8284
  /* @__PURE__ */ t(
@@ -8297,10 +8297,10 @@ function Bi({
8297
8297
  ]
8298
8298
  }
8299
8299
  ),
8300
- h.length > 0 && /* @__PURE__ */ t("div", { style: { display: "flex", flexDirection: "column", gap: "var(--lucent-space-2)" }, children: h.map((k) => /* @__PURE__ */ t(Sa, { item: k, onRemove: x }, k.id)) })
8300
+ h.length > 0 && /* @__PURE__ */ t("div", { style: { display: "flex", flexDirection: "column", gap: "var(--lucent-space-2)" }, children: h.map((k) => /* @__PURE__ */ t(Ta, { item: k, onRemove: x }, k.id)) })
8301
8301
  ] });
8302
8302
  }
8303
- const Di = {
8303
+ const Pi = {
8304
8304
  id: "file-upload",
8305
8305
  name: "FileUpload",
8306
8306
  tier: "molecule",
@@ -8398,20 +8398,20 @@ const handleChange = async (updated: UploadFile[]) => {
8398
8398
  keyboardInteractions: ["Enter/Space to open file picker", "Tab to focus drop zone"],
8399
8399
  notes: 'The drop zone has role="button" with tabIndex=0 and responds to Enter/Space. Remove buttons on file rows have aria-label including the filename.'
8400
8400
  }
8401
- }, Ta = {
8401
+ }, Ca = {
8402
8402
  default: "var(--lucent-text-disabled)",
8403
8403
  success: "var(--lucent-success-default)",
8404
8404
  warning: "var(--lucent-warning-default)",
8405
8405
  danger: "var(--lucent-danger-default)",
8406
8406
  info: "var(--lucent-info-default)"
8407
8407
  };
8408
- function Ca({ status: e }) {
8408
+ function Ia({ status: e }) {
8409
8409
  return e === "success" ? /* @__PURE__ */ t("svg", { width: "10", height: "10", viewBox: "0 0 10 10", fill: "none", "aria-hidden": !0, children: /* @__PURE__ */ t("path", { d: "M2.5 5.2l1.8 1.8L7.5 3.5", stroke: "#fff", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }) }) : e === "danger" ? /* @__PURE__ */ t("svg", { width: "10", height: "10", viewBox: "0 0 10 10", fill: "none", "aria-hidden": !0, children: /* @__PURE__ */ t("path", { d: "M3 3l4 4M7 3L3 7", stroke: "#fff", strokeWidth: "1.5", strokeLinecap: "round" }) }) : e === "warning" ? /* @__PURE__ */ t("svg", { width: "10", height: "10", viewBox: "0 0 10 10", fill: "none", "aria-hidden": !0, children: /* @__PURE__ */ t("path", { d: "M5 2.5v3M5 7.5v.01", stroke: "#fff", strokeWidth: "1.5", strokeLinecap: "round" }) }) : e === "info" ? /* @__PURE__ */ g("svg", { width: "10", height: "10", viewBox: "0 0 10 10", fill: "none", "aria-hidden": !0, children: [
8410
8410
  /* @__PURE__ */ t("circle", { cx: "5", cy: "3", r: "0.75", fill: "#fff" }),
8411
8411
  /* @__PURE__ */ t("path", { d: "M5 5v2.5", stroke: "#fff", strokeWidth: "1.5", strokeLinecap: "round" })
8412
8412
  ] }) : /* @__PURE__ */ t("svg", { width: "6", height: "6", viewBox: "0 0 6 6", "aria-hidden": !0, children: /* @__PURE__ */ t("circle", { cx: "3", cy: "3", r: "3", fill: "#fff" }) });
8413
8413
  }
8414
- function Pi({ items: e, style: r }) {
8414
+ function Li({ items: e, style: r }) {
8415
8415
  return /* @__PURE__ */ t(
8416
8416
  "ol",
8417
8417
  {
@@ -8424,7 +8424,7 @@ function Pi({ items: e, style: r }) {
8424
8424
  ...r
8425
8425
  },
8426
8426
  children: e.map((n, i) => {
8427
- const a = n.status ?? "default", o = Ta[a], l = i === e.length - 1;
8427
+ const a = n.status ?? "default", o = Ca[a], l = i === e.length - 1;
8428
8428
  return /* @__PURE__ */ g(
8429
8429
  "li",
8430
8430
  {
@@ -8451,7 +8451,7 @@ function Pi({ items: e, style: r }) {
8451
8451
  justifyContent: "center",
8452
8452
  flexShrink: 0,
8453
8453
  zIndex: 1
8454
- }, children: n.icon ?? /* @__PURE__ */ t(Ca, { status: a }) }),
8454
+ }, children: n.icon ?? /* @__PURE__ */ t(Ia, { status: a }) }),
8455
8455
  !l && /* @__PURE__ */ t("div", { style: {
8456
8456
  flex: 1,
8457
8457
  width: 1.5,
@@ -8466,10 +8466,10 @@ function Pi({ items: e, style: r }) {
8466
8466
  minWidth: 0
8467
8467
  }, children: [
8468
8468
  /* @__PURE__ */ g("div", { style: { display: "flex", alignItems: "baseline", gap: "var(--lucent-space-2)", flexWrap: "wrap" }, children: [
8469
- /* @__PURE__ */ t(U, { weight: "medium", size: "sm", children: n.title }),
8470
- n.date && /* @__PURE__ */ t(U, { size: "xs", color: "secondary", children: n.date })
8469
+ /* @__PURE__ */ t(j, { weight: "medium", size: "sm", children: n.title }),
8470
+ n.date && /* @__PURE__ */ t(j, { size: "xs", color: "secondary", children: n.date })
8471
8471
  ] }),
8472
- n.description && /* @__PURE__ */ t("div", { style: { marginTop: "var(--lucent-space-1)" }, children: /* @__PURE__ */ t(U, { size: "sm", color: "secondary", children: n.description }) }),
8472
+ n.description && /* @__PURE__ */ t("div", { style: { marginTop: "var(--lucent-space-1)" }, children: /* @__PURE__ */ t(j, { size: "sm", color: "secondary", children: n.description }) }),
8473
8473
  n.content && /* @__PURE__ */ t("div", { style: { marginTop: "var(--lucent-space-3)" }, children: n.content })
8474
8474
  ] })
8475
8475
  ]
@@ -8480,7 +8480,7 @@ function Pi({ items: e, style: r }) {
8480
8480
  }
8481
8481
  );
8482
8482
  }
8483
- const Li = {
8483
+ const Ri = {
8484
8484
  id: "timeline",
8485
8485
  name: "Timeline",
8486
8486
  tier: "molecule",
@@ -8547,46 +8547,46 @@ const Li = {
8547
8547
  keyboardInteractions: ["Standard document flow — no interactive elements unless custom icons include them"],
8548
8548
  notes: "Timeline is a semantic <ol> with <li> items. It is non-interactive by default. If items contain interactive elements (links, buttons), those elements carry their own keyboard behaviour."
8549
8549
  }
8550
- }, Jt = Ce(null);
8551
- function Ri() {
8550
+ }, Jt = Ie(null);
8551
+ function $i() {
8552
8552
  const e = ne(Jt);
8553
8553
  if (!e) throw new Error("useToast must be used inside <ToastProvider>");
8554
8554
  return e;
8555
8555
  }
8556
- const Ia = () => /* @__PURE__ */ g("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
8556
+ const Ma = () => /* @__PURE__ */ g("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
8557
8557
  /* @__PURE__ */ t("circle", { cx: "8", cy: "8", r: "6.5", stroke: "currentColor", strokeWidth: "1.5" }),
8558
8558
  /* @__PURE__ */ t("path", { d: "M8 5.5V8.5M8 10.5V11", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" })
8559
- ] }), Ma = () => /* @__PURE__ */ g("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
8559
+ ] }), za = () => /* @__PURE__ */ g("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
8560
8560
  /* @__PURE__ */ t("circle", { cx: "8", cy: "8", r: "6.5", stroke: "currentColor", strokeWidth: "1.5" }),
8561
8561
  /* @__PURE__ */ t("path", { d: "M5 8L7 10L11 6", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" })
8562
- ] }), za = () => /* @__PURE__ */ g("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
8562
+ ] }), Aa = () => /* @__PURE__ */ g("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
8563
8563
  /* @__PURE__ */ t("path", { d: "M8 2L14.5 13H1.5L8 2Z", stroke: "currentColor", strokeWidth: "1.5", strokeLinejoin: "round" }),
8564
8564
  /* @__PURE__ */ t("path", { d: "M8 6V9M8 11V11.5", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" })
8565
- ] }), Aa = () => /* @__PURE__ */ g("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
8565
+ ] }), Ea = () => /* @__PURE__ */ g("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
8566
8566
  /* @__PURE__ */ t("circle", { cx: "8", cy: "8", r: "6.5", stroke: "currentColor", strokeWidth: "1.5" }),
8567
8567
  /* @__PURE__ */ t("path", { d: "M5.5 5.5L10.5 10.5M10.5 5.5L5.5 10.5", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" })
8568
- ] }), Ea = () => /* @__PURE__ */ t("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ t("path", { d: "M3 3L11 11M11 3L3 11", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }) }), qa = {
8569
- info: /* @__PURE__ */ t(Ia, {}),
8570
- success: /* @__PURE__ */ t(Ma, {}),
8571
- warning: /* @__PURE__ */ t(za, {}),
8572
- danger: /* @__PURE__ */ t(Aa, {})
8573
- }, Ba = {
8568
+ ] }), qa = () => /* @__PURE__ */ t("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ t("path", { d: "M3 3L11 11M11 3L3 11", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }) }), Ba = {
8569
+ info: /* @__PURE__ */ t(Ma, {}),
8570
+ success: /* @__PURE__ */ t(za, {}),
8571
+ warning: /* @__PURE__ */ t(Aa, {}),
8572
+ danger: /* @__PURE__ */ t(Ea, {})
8573
+ }, Da = {
8574
8574
  default: { border: "var(--lucent-border-default)", iconColor: "var(--lucent-text-secondary)" },
8575
8575
  info: { border: "var(--lucent-info-default)", iconColor: "var(--lucent-info-text)" },
8576
8576
  success: { border: "var(--lucent-success-default)", iconColor: "var(--lucent-success-text)" },
8577
8577
  warning: { border: "var(--lucent-warning-default)", iconColor: "var(--lucent-warning-text)" },
8578
8578
  danger: { border: "var(--lucent-danger-default)", iconColor: "var(--lucent-danger-text)" }
8579
8579
  };
8580
- let Da = 0;
8581
- function Pa() {
8582
- return `lucent-toast-${++Da}`;
8580
+ let Pa = 0;
8581
+ function La() {
8582
+ return `lucent-toast-${++Pa}`;
8583
8583
  }
8584
- function Zt(e) {
8584
+ function Qt(e) {
8585
8585
  return e.startsWith("top");
8586
8586
  }
8587
- const La = 200, Ra = 8, $a = 0.04, Fa = 0.2, Na = 3, Wa = 356;
8588
- function Lt({ entry: e, onDismiss: r, hideContent: n, fixedHeight: i }) {
8589
- const { id: a, title: o, description: l, variant: s, action: c, icon: u } = e, p = Ba[s], h = u ?? (s !== "default" ? qa[s] : null), w = (c == null ? void 0 : c.style) ?? "button";
8587
+ const Ra = 200, $a = 8, Na = 0.04, Fa = 0.2, Wa = 3, Va = 356;
8588
+ function Rt({ entry: e, onDismiss: r, hideContent: n, fixedHeight: i }) {
8589
+ const { id: a, title: o, description: l, variant: s, action: c, icon: u } = e, p = Da[s], h = u ?? (s !== "default" ? Ba[s] : null), w = (c == null ? void 0 : c.style) ?? "button";
8590
8590
  return /* @__PURE__ */ t(
8591
8591
  "div",
8592
8592
  {
@@ -8600,7 +8600,7 @@ function Lt({ entry: e, onDismiss: r, hideContent: n, fixedHeight: i }) {
8600
8600
  borderRadius: "var(--lucent-radius-lg)",
8601
8601
  boxShadow: n ? "none" : "var(--lucent-shadow-lg)",
8602
8602
  boxSizing: "border-box",
8603
- width: Wa,
8603
+ width: Va,
8604
8604
  maxWidth: "calc(100vw - var(--lucent-space-8))",
8605
8605
  fontFamily: "var(--lucent-font-family-base)",
8606
8606
  transition: "height var(--lucent-duration-base) var(--lucent-easing-emphasized), box-shadow var(--lucent-duration-base) var(--lucent-easing-default)",
@@ -8620,13 +8620,13 @@ function Lt({ entry: e, onDismiss: r, hideContent: n, fixedHeight: i }) {
8620
8620
  children: [
8621
8621
  h && /* @__PURE__ */ t("span", { style: { flexShrink: 0, color: p.iconColor, display: "flex", alignItems: "center" }, children: h }),
8622
8622
  /* @__PURE__ */ g("div", { style: { flex: 1, minWidth: 0, display: "flex", flexDirection: "column", gap: "var(--lucent-space-1)" }, children: [
8623
- /* @__PURE__ */ t(U, { as: "span", size: "sm", weight: "semibold", color: "primary", lineHeight: "tight", children: o }),
8624
- l && /* @__PURE__ */ t(U, { as: "span", size: "sm", color: "secondary", lineHeight: "base", style: { whiteSpace: "pre-line" }, children: l })
8623
+ /* @__PURE__ */ t(j, { as: "span", size: "sm", weight: "semibold", color: "primary", lineHeight: "tight", children: o }),
8624
+ l && /* @__PURE__ */ t(j, { as: "span", size: "sm", color: "secondary", lineHeight: "base", style: { whiteSpace: "pre-line" }, children: l })
8625
8625
  ] }),
8626
- c && w === "button" && /* @__PURE__ */ t(Va, { label: c.label, onClick: () => {
8626
+ c && w === "button" && /* @__PURE__ */ t(Oa, { label: c.label, onClick: () => {
8627
8627
  c.onClick(), r(a);
8628
8628
  } }),
8629
- c && w === "link" && /* @__PURE__ */ t(Oa, { label: c.label, iconColor: p.iconColor, onClick: () => {
8629
+ c && w === "link" && /* @__PURE__ */ t(Ha, { label: c.label, iconColor: p.iconColor, onClick: () => {
8630
8630
  c.onClick(), r(a);
8631
8631
  } }),
8632
8632
  /* @__PURE__ */ t(
@@ -8653,7 +8653,7 @@ function Lt({ entry: e, onDismiss: r, hideContent: n, fixedHeight: i }) {
8653
8653
  onMouseLeave: (b) => {
8654
8654
  n || (b.currentTarget.style.opacity = "0.6");
8655
8655
  },
8656
- children: /* @__PURE__ */ t(Ea, {})
8656
+ children: /* @__PURE__ */ t(qa, {})
8657
8657
  }
8658
8658
  )
8659
8659
  ]
@@ -8662,7 +8662,7 @@ function Lt({ entry: e, onDismiss: r, hideContent: n, fixedHeight: i }) {
8662
8662
  }
8663
8663
  );
8664
8664
  }
8665
- function Va({ label: e, onClick: r }) {
8665
+ function Oa({ label: e, onClick: r }) {
8666
8666
  return /* @__PURE__ */ t(
8667
8667
  "button",
8668
8668
  {
@@ -8693,7 +8693,7 @@ function Va({ label: e, onClick: r }) {
8693
8693
  }
8694
8694
  );
8695
8695
  }
8696
- function Oa({ label: e, iconColor: r, onClick: n }) {
8696
+ function Ha({ label: e, iconColor: r, onClick: n }) {
8697
8697
  return /* @__PURE__ */ t(
8698
8698
  "button",
8699
8699
  {
@@ -8717,20 +8717,20 @@ function Oa({ label: e, iconColor: r, onClick: n }) {
8717
8717
  }
8718
8718
  );
8719
8719
  }
8720
- const Rt = "var(--lucent-space-6)", Ha = 40, Ga = 120;
8721
- function Ua(e) {
8720
+ const $t = "var(--lucent-space-6)", Ua = 40, ja = 120;
8721
+ function Ga(e) {
8722
8722
  const r = {
8723
8723
  position: "fixed",
8724
8724
  zIndex: 9999,
8725
8725
  pointerEvents: "none",
8726
8726
  boxSizing: "border-box"
8727
8727
  };
8728
- return Zt(e) ? r.top = Ha : r.top = `calc(100vh - ${Ga}px)`, e.endsWith("left") ? r.left = Rt : e.endsWith("right") ? r.right = Rt : (r.left = "50%", r.transform = "translateX(-50%)"), r;
8728
+ return Qt(e) ? r.top = Ua : r.top = `calc(100vh - ${ja}px)`, e.endsWith("left") ? r.left = $t : e.endsWith("right") ? r.right = $t : (r.left = "50%", r.transform = "translateX(-50%)"), r;
8729
8729
  }
8730
- function ja({ toasts: e, position: r, onDismiss: n, portalContainer: i }) {
8730
+ function _a({ toasts: e, position: r, onDismiss: n, portalContainer: i }) {
8731
8731
  const [a, o] = q(!1), [l, s] = q(void 0), c = X((d) => {
8732
8732
  d && s(d.offsetHeight);
8733
- }, []), u = Zt(r), p = e.filter((d) => d.phase !== "exiting"), h = e.filter((d) => d.phase === "exiting");
8733
+ }, []), u = Qt(r), p = e.filter((d) => d.phase !== "exiting"), h = e.filter((d) => d.phase === "exiting");
8734
8734
  H(() => {
8735
8735
  p.length <= 1 && o(!1);
8736
8736
  }, [p.length]);
@@ -8740,7 +8740,7 @@ function ja({ toasts: e, position: r, onDismiss: n, portalContainer: i }) {
8740
8740
  w.current = setTimeout(() => {
8741
8741
  o(!1), w.current = null;
8742
8742
  }, 150);
8743
- }, []), f = /* @__PURE__ */ t("div", { style: Ua(r), children: /* @__PURE__ */ t(
8743
+ }, []), f = /* @__PURE__ */ t("div", { style: Ga(r), children: /* @__PURE__ */ t(
8744
8744
  "div",
8745
8745
  {
8746
8746
  onMouseEnter: b,
@@ -8756,7 +8756,7 @@ function ja({ toasts: e, position: r, onDismiss: n, portalContainer: i }) {
8756
8756
  transition: "transform var(--lucent-duration-base) var(--lucent-easing-emphasized), margin var(--lucent-duration-base) var(--lucent-easing-emphasized), gap var(--lucent-duration-base) var(--lucent-easing-emphasized)"
8757
8757
  }, children: [
8758
8758
  p.map((d, y) => {
8759
- const x = p.length - 1 - y, T = !a && x > Na, S = x * Ra, k = u ? S : -S, v = a ? 1 : 1 - x * $a, E = a ? 1 : Math.max(0, 1 - x * Fa), C = d.phase === "entering", z = x === 0, B = !a && !z;
8759
+ const x = p.length - 1 - y, T = !a && x > Wa, S = x * $a, k = u ? S : -S, v = a ? 1 : 1 - x * Na, E = a ? 1 : Math.max(0, 1 - x * Fa), C = d.phase === "entering", z = x === 0, B = !a && !z;
8760
8760
  return /* @__PURE__ */ t(
8761
8761
  "div",
8762
8762
  {
@@ -8780,7 +8780,7 @@ function ja({ toasts: e, position: r, onDismiss: n, portalContainer: i }) {
8780
8780
  visibility: T ? "hidden" : "visible"
8781
8781
  },
8782
8782
  children: /* @__PURE__ */ t(
8783
- Lt,
8783
+ Rt,
8784
8784
  {
8785
8785
  entry: d,
8786
8786
  onDismiss: n,
@@ -8807,7 +8807,7 @@ function ja({ toasts: e, position: r, onDismiss: n, portalContainer: i }) {
8807
8807
  transition: "transform var(--lucent-duration-base) var(--lucent-easing-default), opacity var(--lucent-duration-base) var(--lucent-easing-default)",
8808
8808
  pointerEvents: "none"
8809
8809
  },
8810
- children: /* @__PURE__ */ t(Lt, { entry: d, onDismiss: n })
8810
+ children: /* @__PURE__ */ t(Rt, { entry: d, onDismiss: n })
8811
8811
  },
8812
8812
  d.id
8813
8813
  ))
@@ -8816,7 +8816,7 @@ function ja({ toasts: e, position: r, onDismiss: n, portalContainer: i }) {
8816
8816
  ) });
8817
8817
  return ie(f, i ?? document.body);
8818
8818
  }
8819
- function $i({
8819
+ function Ni({
8820
8820
  children: e,
8821
8821
  position: r = "bottom-right",
8822
8822
  duration: n = 5e3,
@@ -8829,9 +8829,9 @@ function $i({
8829
8829
  return !w || w.phase === "exiting" ? h : h.map((b) => b.id === p ? { ...b, phase: "exiting" } : b);
8830
8830
  }), setTimeout(() => {
8831
8831
  l((h) => h.filter((w) => w.id !== p));
8832
- }, La);
8832
+ }, Ra);
8833
8833
  }, []), c = X((p) => {
8834
- const h = Pa(), w = {
8834
+ const h = La(), w = {
8835
8835
  id: h,
8836
8836
  title: p.title,
8837
8837
  variant: p.variant ?? "default",
@@ -8870,7 +8870,7 @@ function $i({
8870
8870
  return /* @__PURE__ */ g(Jt.Provider, { value: u, children: [
8871
8871
  e,
8872
8872
  o.length > 0 && /* @__PURE__ */ t(
8873
- ja,
8873
+ _a,
8874
8874
  {
8875
8875
  toasts: o,
8876
8876
  position: r,
@@ -9077,7 +9077,7 @@ dismiss(id);`
9077
9077
  ],
9078
9078
  notes: 'Each toast uses role="status" with aria-live="polite" so screen readers announce the content without interrupting the current task. This is appropriate for non-urgent status messages like "Changes saved" or "Profile updated". For truly urgent errors that must interrupt the user, consider wrapping the ToastProvider output in a role="alert" region or using the Alert component instead. The dismiss button carries aria-label="Dismiss" for screen reader clarity. Stacked toasts behind the front toast are marked aria-hidden="true" to prevent screen readers from announcing duplicate or hidden content. When the stack expands on hover, aria-hidden is removed so all toasts become accessible.'
9079
9079
  }
9080
- }, Ye = 120, _a = `
9080
+ }, Ke = 120, Ya = `
9081
9081
  @keyframes lucent-navmenu-open {
9082
9082
  from { opacity: 0; transform: translateY(-4px); }
9083
9083
  to { opacity: 1; transform: translateY(0); }
@@ -9094,7 +9094,7 @@ dismiss(id);`
9094
9094
  background: color-mix(in srgb, var(--lucent-text-primary) 5%, transparent) !important;
9095
9095
  color: var(--lucent-text-primary) !important;
9096
9096
  }
9097
- `, Be = "cubic-bezier(0.34, 1.56, 0.64, 1)", Fe = {
9097
+ `, De = "cubic-bezier(0.34, 1.56, 0.64, 1)", Fe = {
9098
9098
  sm: {
9099
9099
  fontSize: "var(--lucent-font-size-sm)",
9100
9100
  paddingY: "5px",
@@ -9122,7 +9122,7 @@ dismiss(id);`
9122
9122
  iconWidth: "var(--lucent-space-6)",
9123
9123
  nestedFontSize: "var(--lucent-font-size-md)"
9124
9124
  }
9125
- }, he = Ce({
9125
+ }, he = Ie({
9126
9126
  orientation: "vertical",
9127
9127
  depth: 0,
9128
9128
  inverse: !1,
@@ -9132,7 +9132,7 @@ dismiss(id);`
9132
9132
  requestMeasure: () => {
9133
9133
  }
9134
9134
  });
9135
- function Ne({
9135
+ function We({
9136
9136
  children: e,
9137
9137
  orientation: r = "vertical",
9138
9138
  inverse: n = !1,
@@ -9144,7 +9144,7 @@ function Ne({
9144
9144
  const s = V(!1);
9145
9145
  if (!s.current && typeof document < "u") {
9146
9146
  const f = document.createElement("style");
9147
- f.textContent = _a, document.head.appendChild(f), s.current = !0;
9147
+ f.textContent = Ya, document.head.appendChild(f), s.current = !0;
9148
9148
  }
9149
9149
  const c = Fe[i], u = V(null), p = V(null), h = V(!1), w = V(0), b = X(() => {
9150
9150
  const f = u.current, d = p.current;
@@ -9157,10 +9157,10 @@ function Ne({
9157
9157
  }
9158
9158
  const k = f.getBoundingClientRect(), v = T.getBoundingClientRect();
9159
9159
  h.current ? d.style.transition = [
9160
- `top 150ms ${Be}`,
9161
- `left 150ms ${Be}`,
9162
- `width 150ms ${Be}`,
9163
- `height 150ms ${Be}`,
9160
+ `top 150ms ${De}`,
9161
+ `left 150ms ${De}`,
9162
+ `width 150ms ${De}`,
9163
+ `height 150ms ${De}`,
9164
9164
  "opacity 100ms ease",
9165
9165
  "background 150ms ease",
9166
9166
  "box-shadow 150ms ease"
@@ -9224,7 +9224,7 @@ function Ne({
9224
9224
  }
9225
9225
  ) });
9226
9226
  }
9227
- function Ya({
9227
+ function Ka({
9228
9228
  children: e,
9229
9229
  href: r,
9230
9230
  isActive: n = !1,
@@ -9242,9 +9242,9 @@ function Ya({
9242
9242
  let d = null;
9243
9243
  const y = [], x = Array.isArray(e) ? e : [e];
9244
9244
  for (const S of x)
9245
- S != null && typeof S == "object" && "type" in S && S.type === Qt ? d = S : y.push(S);
9245
+ S != null && typeof S == "object" && "type" in S && S.type === en ? d = S : y.push(S);
9246
9246
  return d ? /* @__PURE__ */ t(
9247
- Ka,
9247
+ Xa,
9248
9248
  {
9249
9249
  subMenu: d,
9250
9250
  orientation: u,
@@ -9264,7 +9264,7 @@ function Ya({
9264
9264
  {
9265
9265
  "data-lucent-navitem": "",
9266
9266
  "data-active": n || void 0,
9267
- href: o ? void 0 : r,
9267
+ href: o ? void 0 : Ce(r),
9268
9268
  onClick: o ? void 0 : l,
9269
9269
  "aria-current": n ? "page" : void 0,
9270
9270
  "aria-disabled": o || void 0,
@@ -9303,7 +9303,7 @@ function Ya({
9303
9303
  }
9304
9304
  );
9305
9305
  }
9306
- function Ka({
9306
+ function Xa({
9307
9307
  children: e,
9308
9308
  icon: r,
9309
9309
  badge: n,
@@ -9317,7 +9317,7 @@ function Ka({
9317
9317
  inverse: p,
9318
9318
  size: h
9319
9319
  }) {
9320
- const { hasIcons: w, requestMeasure: b } = ne(he), m = Fe[h], [f, d] = q(!1), y = V(null), [x, T] = q(0), S = V(null), k = V(null), v = V(), E = Xa(s), C = i && !E, z = !C && !f && E, B = i || E;
9320
+ const { hasIcons: w, requestMeasure: b } = ne(he), m = Fe[h], [f, d] = q(!1), y = V(null), [x, T] = q(0), S = V(null), k = V(null), v = V(), E = Za(s), C = i && !E, z = !C && !f && E, B = i || E;
9321
9321
  H(() => {
9322
9322
  b();
9323
9323
  }, [f, i, E, b]), H(() => {
@@ -9325,33 +9325,33 @@ function Ka({
9325
9325
  const I = y.current;
9326
9326
  if (I)
9327
9327
  if (f) {
9328
- const N = I.scrollHeight;
9329
- T(N);
9330
- const G = setTimeout(() => {
9328
+ const F = I.scrollHeight;
9329
+ T(F);
9330
+ const U = setTimeout(() => {
9331
9331
  T(void 0);
9332
9332
  }, 130);
9333
- return () => clearTimeout(G);
9333
+ return () => clearTimeout(U);
9334
9334
  } else
9335
9335
  T(I.scrollHeight), I.getBoundingClientRect(), T(0);
9336
9336
  }, [f, c]), H(() => {
9337
9337
  if (c !== "horizontal" || !f) return;
9338
- const I = (N) => {
9339
- S.current && !S.current.contains(N.target) && P();
9338
+ const I = (F) => {
9339
+ S.current && !S.current.contains(F.target) && P();
9340
9340
  };
9341
9341
  return document.addEventListener("mousedown", I), () => document.removeEventListener("mousedown", I);
9342
9342
  }, [c, f]), oe(() => {
9343
9343
  if (c !== "horizontal" || !f) return;
9344
9344
  const I = k.current;
9345
9345
  if (!I) return;
9346
- const N = I.getBoundingClientRect();
9347
- N.right > window.innerWidth && (I.style.left = "auto", I.style.right = "0"), N.bottom > window.innerHeight && (I.style.top = "auto", I.style.bottom = "100%", I.style.marginTop = "0", I.style.marginBottom = "var(--lucent-space-1)");
9346
+ const F = I.getBoundingClientRect();
9347
+ F.right > window.innerWidth && (I.style.left = "auto", I.style.right = "0"), F.bottom > window.innerHeight && (I.style.top = "auto", I.style.bottom = "100%", I.style.marginTop = "0", I.style.marginBottom = "var(--lucent-space-1)");
9348
9348
  }, [c, f]);
9349
9349
  const [D, M] = q("idle"), [$, R] = q(!1), W = () => {
9350
9350
  a || (R(!0), M("entering"), d(!0));
9351
9351
  }, P = () => {
9352
9352
  M("exiting"), setTimeout(() => {
9353
9353
  d(!1), R(!1), M("idle");
9354
- }, Ye);
9354
+ }, Ke);
9355
9355
  }, O = () => {
9356
9356
  a || (c === "horizontal" ? f ? P() : W() : d(!f));
9357
9357
  }, Y = (I) => {
@@ -9424,7 +9424,7 @@ function Ka({
9424
9424
  boxShadow: "var(--lucent-shadow-lg)",
9425
9425
  padding: "var(--lucent-space-1)",
9426
9426
  zIndex: 100,
9427
- animation: D === "exiting" ? `lucent-navmenu-dropdown-out ${Ye}ms var(--lucent-easing-default) forwards` : `lucent-navmenu-dropdown-in ${Ye}ms var(--lucent-easing-default) forwards`
9427
+ animation: D === "exiting" ? `lucent-navmenu-dropdown-out ${Ke}ms var(--lucent-easing-default) forwards` : `lucent-navmenu-dropdown-in ${Ke}ms var(--lucent-easing-default) forwards`
9428
9428
  },
9429
9429
  children: s
9430
9430
  }
@@ -9503,21 +9503,21 @@ function Ka({
9503
9503
  )
9504
9504
  ] });
9505
9505
  }
9506
- function Xa(e) {
9507
- return ct(e);
9506
+ function Za(e) {
9507
+ return dt(e);
9508
9508
  }
9509
- function ct(e) {
9509
+ function dt(e) {
9510
9510
  if (e == null) return !1;
9511
- if (Array.isArray(e)) return e.some(ct);
9511
+ if (Array.isArray(e)) return e.some(dt);
9512
9512
  if (typeof e == "object" && "props" in e) {
9513
9513
  const r = e;
9514
9514
  if (r.props.isActive) return !0;
9515
- if (r.props.children) return ct(r.props.children);
9515
+ if (r.props.children) return dt(r.props.children);
9516
9516
  }
9517
9517
  return !1;
9518
9518
  }
9519
- function Qt({ children: e }) {
9520
- return /* @__PURE__ */ t(J, { children: e });
9519
+ function en({ children: e }) {
9520
+ return /* @__PURE__ */ t(Z, { children: e });
9521
9521
  }
9522
9522
  function Ja({
9523
9523
  children: e,
@@ -9530,7 +9530,7 @@ function Ja({
9530
9530
  }) {
9531
9531
  const { orientation: s, inverse: c, size: u, hasIcons: p } = ne(he), h = Fe[u], w = o ?? r != null, b = p ? "var(--lucent-space-2)" : "var(--lucent-space-4)";
9532
9532
  if (s === "horizontal")
9533
- return /* @__PURE__ */ t(J, { children: e });
9533
+ return /* @__PURE__ */ t(Z, { children: e });
9534
9534
  const m = i !== void 0, [f, d] = q(n), y = m ? i : f, x = V(null), [T, S] = q(y ? void 0 : 0);
9535
9535
  H(() => {
9536
9536
  if (!w) return;
@@ -9579,7 +9579,7 @@ function Ja({
9579
9579
  },
9580
9580
  children: [
9581
9581
  /* @__PURE__ */ t("span", { children: r }),
9582
- /* @__PURE__ */ t(Qa, { open: y, size: 12 })
9582
+ /* @__PURE__ */ t(eo, { open: y, size: 12 })
9583
9583
  ]
9584
9584
  }
9585
9585
  ) : /* @__PURE__ */ t(
@@ -9624,7 +9624,7 @@ function Ja({
9624
9624
  ) : /* @__PURE__ */ t("div", { style: { display: "flex", flexDirection: "column", gap: h.itemGap }, children: e })
9625
9625
  ] }) : /* @__PURE__ */ t("div", { style: { display: "flex", flexDirection: "column", gap: h.itemGap, ...l }, children: e });
9626
9626
  }
9627
- function Za({ style: e }) {
9627
+ function Qa({ style: e }) {
9628
9628
  const { orientation: r } = ne(he);
9629
9629
  return /* @__PURE__ */ t(
9630
9630
  "div",
@@ -9646,7 +9646,7 @@ function Za({ style: e }) {
9646
9646
  }
9647
9647
  );
9648
9648
  }
9649
- function Qa({ open: e, size: r = 14 }) {
9649
+ function eo({ open: e, size: r = 14 }) {
9650
9650
  return /* @__PURE__ */ t(
9651
9651
  "svg",
9652
9652
  {
@@ -9669,11 +9669,11 @@ function Qa({ open: e, size: r = 14 }) {
9669
9669
  }
9670
9670
  );
9671
9671
  }
9672
- Ne.Item = Ya;
9673
- Ne.Group = Ja;
9674
- Ne.Sub = Qt;
9675
- Ne.Separator = Za;
9676
- const Ke = 120, eo = `
9672
+ We.Item = Ka;
9673
+ We.Group = Ja;
9674
+ We.Sub = en;
9675
+ We.Separator = Qa;
9676
+ const Xe = 120, to = `
9677
9677
  @keyframes lucent-filter-ms-in {
9678
9678
  from { opacity: 0; transform: scale(0.97) translateY(-2px); }
9679
9679
  to { opacity: 1; transform: scale(1) translateY(0); }
@@ -9683,24 +9683,24 @@ const Ke = 120, eo = `
9683
9683
  to { opacity: 0; transform: scale(0.97) translateY(-2px); }
9684
9684
  }
9685
9685
  `;
9686
- let $t = !1;
9687
- const to = {
9686
+ let Nt = !1;
9687
+ const no = {
9688
9688
  xs: "var(--lucent-space-1)",
9689
9689
  sm: "var(--lucent-space-2)",
9690
9690
  md: "var(--lucent-space-2)",
9691
9691
  lg: "var(--lucent-space-3)"
9692
- }, no = {
9692
+ }, ro = {
9693
9693
  xs: "sm",
9694
9694
  sm: "sm",
9695
9695
  md: "md",
9696
9696
  lg: "lg"
9697
- }, Xe = 4;
9698
- function ro(e, r) {
9697
+ }, Ze = 4;
9698
+ function ao(e, r) {
9699
9699
  const n = r.offsetHeight, i = r.offsetWidth, a = window.innerWidth, o = window.innerHeight;
9700
- let l = e.bottom + Xe, s = e.left, c = "top left";
9701
- return l + n > o && e.top - n - Xe >= 0 && (l = e.top - n - Xe, c = "bottom left"), s + i > a && (s = a - i - 8), s < 0 && (s = 8), { top: l, left: s, transformOrigin: c };
9700
+ let l = e.bottom + Ze, s = e.left, c = "top left";
9701
+ return l + n > o && e.top - n - Ze >= 0 && (l = e.top - n - Ze, c = "bottom left"), s + i > a && (s = a - i - 8), s < 0 && (s = 8), { top: l, left: s, transformOrigin: c };
9702
9702
  }
9703
- function Ni({
9703
+ function Wi({
9704
9704
  label: e,
9705
9705
  options: r,
9706
9706
  value: n,
@@ -9713,9 +9713,9 @@ function Ni({
9713
9713
  style: u
9714
9714
  }) {
9715
9715
  const p = n !== void 0, [h, w] = q(i), b = p ? n : h, [m, f] = q(!1), [d, y] = q(!1), [x, T] = q("idle"), [S, k] = q(null), [v, E] = q(-1), C = V(null), z = V(null);
9716
- if (!$t && typeof document < "u") {
9716
+ if (!Nt && typeof document < "u") {
9717
9717
  const P = document.createElement("style");
9718
- P.textContent = eo, document.head.appendChild(P), $t = !0;
9718
+ P.textContent = to, document.head.appendChild(P), Nt = !0;
9719
9719
  }
9720
9720
  H(() => {
9721
9721
  if (m)
@@ -9724,14 +9724,14 @@ function Ni({
9724
9724
  T("exiting");
9725
9725
  const P = setTimeout(() => {
9726
9726
  y(!1), T("idle");
9727
- }, Ke);
9727
+ }, Xe);
9728
9728
  return () => clearTimeout(P);
9729
9729
  }
9730
9730
  }, [m]), oe(() => {
9731
9731
  if (!d || x !== "entering" || !C.current) return;
9732
9732
  const P = requestAnimationFrame(() => {
9733
9733
  const O = z.current, Y = C.current;
9734
- !O || !Y || k(ro(Y.getBoundingClientRect(), O));
9734
+ !O || !Y || k(ao(Y.getBoundingClientRect(), O));
9735
9735
  });
9736
9736
  return () => cancelAnimationFrame(P);
9737
9737
  }, [d, x]);
@@ -9770,7 +9770,7 @@ function Ni({
9770
9770
  const O = r[v];
9771
9771
  O && !O.disabled && D(O.value);
9772
9772
  }
9773
- }, R = to[l], W = no[l];
9773
+ }, R = no[l], W = ro[l];
9774
9774
  return /* @__PURE__ */ g("span", { ref: C, style: { display: "inline-flex", ...u }, children: [
9775
9775
  /* @__PURE__ */ g(
9776
9776
  fe,
@@ -9783,7 +9783,7 @@ function Ni({
9783
9783
  ...c !== void 0 && { leftIcon: c },
9784
9784
  children: [
9785
9785
  e || void 0,
9786
- b.length > 0 && /* @__PURE__ */ t(Pe, { variant: "accent", size: l === "xs" ? "sm" : l, children: b.length })
9786
+ b.length > 0 && /* @__PURE__ */ t(Le, { variant: "accent", size: l === "xs" ? "sm" : l, children: b.length })
9787
9787
  ]
9788
9788
  }
9789
9789
  ),
@@ -9812,7 +9812,7 @@ function Ni({
9812
9812
  padding: R,
9813
9813
  maxHeight: "min(320px, calc(100vh - 32px))",
9814
9814
  overflowY: "auto",
9815
- animation: x === "exiting" ? `lucent-filter-ms-out ${Ke}ms var(--lucent-easing-default) forwards` : `lucent-filter-ms-in ${Ke}ms var(--lucent-easing-decelerate)`,
9815
+ animation: x === "exiting" ? `lucent-filter-ms-out ${Xe}ms var(--lucent-easing-default) forwards` : `lucent-filter-ms-in ${Xe}ms var(--lucent-easing-decelerate)`,
9816
9816
  transformOrigin: (S == null ? void 0 : S.transformOrigin) ?? "top left",
9817
9817
  outline: "none",
9818
9818
  pointerEvents: x === "exiting" ? "none" : "auto",
@@ -9842,7 +9842,7 @@ function Ni({
9842
9842
  },
9843
9843
  children: [
9844
9844
  /* @__PURE__ */ t(
9845
- ut,
9845
+ pt,
9846
9846
  {
9847
9847
  checked: Y,
9848
9848
  onChange: () => {
@@ -9851,7 +9851,7 @@ function Ni({
9851
9851
  style: { pointerEvents: "none" }
9852
9852
  }
9853
9853
  ),
9854
- P.swatch ? /* @__PURE__ */ t(Pe, { size: l === "xs" ? "sm" : l, swatch: P.swatch, children: P.label }) : /* @__PURE__ */ t(U, { size: W, children: P.label })
9854
+ P.swatch ? /* @__PURE__ */ t(Le, { size: l === "xs" ? "sm" : l, swatch: P.swatch, children: P.label }) : /* @__PURE__ */ t(j, { size: W, children: P.label })
9855
9855
  ]
9856
9856
  },
9857
9857
  P.value
@@ -9880,7 +9880,7 @@ function Ni({
9880
9880
  cursor: b.length > 0 ? "pointer" : "default",
9881
9881
  opacity: b.length > 0 ? 1 : 0.5
9882
9882
  },
9883
- children: /* @__PURE__ */ t(U, { size: W, color: b.length > 0 ? "secondary" : "disabled", children: "Clear all" })
9883
+ children: /* @__PURE__ */ t(j, { size: W, color: b.length > 0 ? "secondary" : "disabled", children: "Clear all" })
9884
9884
  }
9885
9885
  )
9886
9886
  ]
@@ -9890,7 +9890,7 @@ function Ni({
9890
9890
  )
9891
9891
  ] });
9892
9892
  }
9893
- function Wi({
9893
+ function Vi({
9894
9894
  label: e,
9895
9895
  options: r,
9896
9896
  value: n,
@@ -9909,7 +9909,7 @@ function Wi({
9909
9909
  p || w(void 0), a == null || a(void 0);
9910
9910
  };
9911
9911
  return /* @__PURE__ */ g(
9912
- _t,
9912
+ Yt,
9913
9913
  {
9914
9914
  trigger: /* @__PURE__ */ t(
9915
9915
  fe,
@@ -9926,7 +9926,7 @@ function Wi({
9926
9926
  ...u !== void 0 && { style: u },
9927
9927
  children: [
9928
9928
  r.map((T) => /* @__PURE__ */ t(
9929
- at,
9929
+ ot,
9930
9930
  {
9931
9931
  selected: b === T.value,
9932
9932
  ...T.disabled !== void 0 && { disabled: T.disabled },
@@ -9935,19 +9935,19 @@ function Wi({
9935
9935
  },
9936
9936
  T.value
9937
9937
  )),
9938
- f && /* @__PURE__ */ g(J, { children: [
9939
- /* @__PURE__ */ t(rr, {}),
9940
- /* @__PURE__ */ t(at, { onSelect: y, children: /* @__PURE__ */ t(U, { size: l === "lg" ? "md" : "sm", color: "secondary", children: "Clear" }) })
9938
+ f && /* @__PURE__ */ g(Z, { children: [
9939
+ /* @__PURE__ */ t(ar, {}),
9940
+ /* @__PURE__ */ t(ot, { onSelect: y, children: /* @__PURE__ */ t(j, { size: l === "lg" ? "md" : "sm", color: "secondary", children: "Clear" }) })
9941
9941
  ] })
9942
9942
  ]
9943
9943
  }
9944
9944
  );
9945
9945
  }
9946
- const ao = () => /* @__PURE__ */ g("svg", { width: 16, height: 16, viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
9946
+ const oo = () => /* @__PURE__ */ g("svg", { width: 16, height: 16, viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
9947
9947
  /* @__PURE__ */ t("circle", { cx: "6.5", cy: "6.5", r: "4", stroke: "currentColor", strokeWidth: "1.5" }),
9948
9948
  /* @__PURE__ */ t("path", { d: "M9.5 9.5L13 13", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" })
9949
9949
  ] });
9950
- function Vi({
9950
+ function Oi({
9951
9951
  value: e,
9952
9952
  defaultValue: r = "",
9953
9953
  onChange: n,
@@ -9974,7 +9974,7 @@ function Vi({
9974
9974
  s || m(!0);
9975
9975
  };
9976
9976
  return b ? /* @__PURE__ */ t(
9977
- Gt,
9977
+ jt,
9978
9978
  {
9979
9979
  ref: f,
9980
9980
  placeholder: i,
@@ -9993,17 +9993,17 @@ function Vi({
9993
9993
  disabled: s,
9994
9994
  onClick: x,
9995
9995
  "aria-label": "Search",
9996
- leftIcon: /* @__PURE__ */ t(ao, {}),
9996
+ leftIcon: /* @__PURE__ */ t(oo, {}),
9997
9997
  style: c
9998
9998
  }
9999
9999
  );
10000
10000
  }
10001
- function oo(e, r) {
10001
+ function io(e, r) {
10002
10002
  if (!e) return r;
10003
10003
  const n = (i) => i.toLocaleDateString();
10004
10004
  return `${n(e.start)} → ${n(e.end)}`;
10005
10005
  }
10006
- function Oi({
10006
+ function Hi({
10007
10007
  label: e = "Date range",
10008
10008
  value: r,
10009
10009
  defaultValue: n,
@@ -10016,7 +10016,7 @@ function Oi({
10016
10016
  style: u
10017
10017
  }) {
10018
10018
  return /* @__PURE__ */ t(
10019
- wa,
10019
+ ka,
10020
10020
  {
10021
10021
  size: o,
10022
10022
  ...r !== void 0 && { value: r },
@@ -10032,42 +10032,42 @@ function Oi({
10032
10032
  size: o,
10033
10033
  chevron: !0,
10034
10034
  disabled: c,
10035
- children: oo(r, e)
10035
+ children: io(r, e)
10036
10036
  }
10037
10037
  ),
10038
10038
  ...u !== void 0 && { style: u }
10039
10039
  }
10040
10040
  );
10041
10041
  }
10042
- const io = {
10042
+ const so = {
10043
10043
  sm: { circle: 24, checkIcon: 12, connector: 2, labelSize: "var(--lucent-font-size-xs)", descSize: "var(--lucent-font-size-xs)", prefixSize: "var(--lucent-font-size-xs)", gap: "var(--lucent-space-2)" },
10044
10044
  md: { circle: 32, checkIcon: 14, connector: 2, labelSize: "var(--lucent-font-size-sm)", descSize: "var(--lucent-font-size-xs)", prefixSize: "var(--lucent-font-size-xs)", gap: "var(--lucent-space-3)" },
10045
10045
  lg: { circle: 40, checkIcon: 18, connector: 3, labelSize: "var(--lucent-font-size-md)", descSize: "var(--lucent-font-size-sm)", prefixSize: "var(--lucent-font-size-xs)", gap: "var(--lucent-space-3)" }
10046
10046
  };
10047
- function so(e) {
10047
+ function lo(e) {
10048
10048
  return typeof e == "string" ? { label: e } : e;
10049
10049
  }
10050
- function lo({ size: e }) {
10050
+ function co({ size: e }) {
10051
10051
  return /* @__PURE__ */ t("svg", { width: e, height: e, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: 3, strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": !0, children: /* @__PURE__ */ t("polyline", { points: "20 6 9 17 4 12" }) });
10052
10052
  }
10053
- function dt(e, r) {
10053
+ function ut(e, r) {
10054
10054
  return e < r ? "completed" : e === r ? "current" : "pending";
10055
10055
  }
10056
- const co = {
10056
+ const uo = {
10057
10057
  completed: "Completed",
10058
10058
  current: "In Progress",
10059
10059
  pending: "Pending"
10060
- }, uo = {
10060
+ }, po = {
10061
10061
  completed: "success",
10062
10062
  current: "accent",
10063
10063
  pending: "neutral"
10064
10064
  }, Ft = "lucent-stepper-keyframes";
10065
- function po() {
10065
+ function ho() {
10066
10066
  if (typeof document > "u" || document.getElementById(Ft)) return;
10067
10067
  const e = document.createElement("style");
10068
10068
  e.id = Ft, e.textContent = "@keyframes lucent-stepper-check{0%{transform:scale(0)}60%{transform:scale(1.2)}100%{transform:scale(1)}}", document.head.appendChild(e);
10069
10069
  }
10070
- function en({ index: e, state: r, step: n, cfg: i }) {
10070
+ function tn({ index: e, state: r, step: n, cfg: i }) {
10071
10071
  const a = r !== "pending";
10072
10072
  return /* @__PURE__ */ t(
10073
10073
  "div",
@@ -10088,15 +10088,15 @@ function en({ index: e, state: r, step: n, cfg: i }) {
10088
10088
  transition: "background var(--lucent-duration-base) var(--lucent-easing-default), color var(--lucent-duration-base) var(--lucent-easing-default)",
10089
10089
  flexShrink: 0
10090
10090
  },
10091
- children: n.icon ? n.icon : r === "completed" ? /* @__PURE__ */ t("span", { style: { display: "flex", animation: "lucent-stepper-check 300ms cubic-bezier(0.34, 1.56, 0.64, 1)" }, children: /* @__PURE__ */ t(lo, { size: i.checkIcon }) }) : e + 1
10091
+ children: n.icon ? n.icon : r === "completed" ? /* @__PURE__ */ t("span", { style: { display: "flex", animation: "lucent-stepper-check 300ms cubic-bezier(0.34, 1.56, 0.64, 1)" }, children: /* @__PURE__ */ t(co, { size: i.checkIcon }) }) : e + 1
10092
10092
  }
10093
10093
  );
10094
10094
  }
10095
- function tn({ state: e }) {
10096
- return /* @__PURE__ */ t(Pe, { variant: uo[e], size: "sm", borderless: !0, children: co[e] });
10095
+ function nn({ state: e }) {
10096
+ return /* @__PURE__ */ t(Le, { variant: po[e], size: "sm", borderless: !0, children: uo[e] });
10097
10097
  }
10098
- function ho({ step: e, state: r, index: n, cfg: i, numbered: a, showStatus: o }) {
10099
- return /* @__PURE__ */ g(J, { children: [
10098
+ function fo({ step: e, state: r, index: n, cfg: i, numbered: a, showStatus: o }) {
10099
+ return /* @__PURE__ */ g(Z, { children: [
10100
10100
  a && /* @__PURE__ */ g("span", { style: {
10101
10101
  fontSize: i.prefixSize,
10102
10102
  fontFamily: "var(--lucent-font-family-base)",
@@ -10120,10 +10120,10 @@ function ho({ step: e, state: r, index: n, cfg: i, numbered: a, showStatus: o })
10120
10120
  fontFamily: "var(--lucent-font-family-base)",
10121
10121
  color: "var(--lucent-text-secondary)"
10122
10122
  }, children: e.description }),
10123
- o && /* @__PURE__ */ t(tn, { state: r })
10123
+ o && /* @__PURE__ */ t(nn, { state: r })
10124
10124
  ] });
10125
10125
  }
10126
- function fo({ steps: e, current: r, cfg: n, numbered: i, showStatus: a }) {
10126
+ function mo({ steps: e, current: r, cfg: n, numbered: i, showStatus: a }) {
10127
10127
  return /* @__PURE__ */ g("div", { style: { display: "flex", flexDirection: "column", gap: n.gap }, children: [
10128
10128
  /* @__PURE__ */ g("div", { style: { display: "flex", alignItems: "center", position: "relative" }, children: [
10129
10129
  /* @__PURE__ */ t("div", { style: {
@@ -10148,10 +10148,10 @@ function fo({ steps: e, current: r, cfg: n, numbered: i, showStatus: a }) {
10148
10148
  justifyContent: l === 0 ? "flex-start" : l === e.length - 1 ? "flex-end" : "center",
10149
10149
  position: "relative",
10150
10150
  zIndex: 1
10151
- }, children: /* @__PURE__ */ t(en, { index: l, state: dt(l, r), step: o, cfg: n }) }, o.label))
10151
+ }, children: /* @__PURE__ */ t(tn, { index: l, state: ut(l, r), step: o, cfg: n }) }, o.label))
10152
10152
  ] }),
10153
10153
  /* @__PURE__ */ t("div", { style: { display: "flex" }, children: e.map((o, l) => {
10154
- const s = dt(l, r), c = l === e.length - 1;
10154
+ const s = ut(l, r), c = l === e.length - 1;
10155
10155
  return /* @__PURE__ */ t("div", { style: {
10156
10156
  flex: 1,
10157
10157
  display: "flex",
@@ -10159,13 +10159,13 @@ function fo({ steps: e, current: r, cfg: n, numbered: i, showStatus: a }) {
10159
10159
  alignItems: l === 0 ? "flex-start" : c ? "flex-end" : "center",
10160
10160
  gap: "2px",
10161
10161
  textAlign: l === 0 ? "left" : c ? "right" : "center"
10162
- }, children: /* @__PURE__ */ t(ho, { step: o, state: s, index: l, cfg: n, numbered: i, showStatus: a }) }, o.label);
10162
+ }, children: /* @__PURE__ */ t(fo, { step: o, state: s, index: l, cfg: n, numbered: i, showStatus: a }) }, o.label);
10163
10163
  }) })
10164
10164
  ] });
10165
10165
  }
10166
- function mo({ steps: e, current: r, cfg: n, numbered: i, showStatus: a }) {
10166
+ function go({ steps: e, current: r, cfg: n, numbered: i, showStatus: a }) {
10167
10167
  return /* @__PURE__ */ t("div", { style: { display: "flex", flexDirection: "column" }, children: e.map((o, l) => {
10168
- const s = dt(l, r), c = l === e.length - 1;
10168
+ const s = ut(l, r), c = l === e.length - 1;
10169
10169
  return /* @__PURE__ */ g("div", { style: { display: "flex", gap: n.gap }, children: [
10170
10170
  /* @__PURE__ */ g("div", { style: {
10171
10171
  display: "flex",
@@ -10173,7 +10173,7 @@ function mo({ steps: e, current: r, cfg: n, numbered: i, showStatus: a }) {
10173
10173
  alignItems: "center",
10174
10174
  flexShrink: 0
10175
10175
  }, children: [
10176
- /* @__PURE__ */ t(en, { index: l, state: s, step: o, cfg: n }),
10176
+ /* @__PURE__ */ t(tn, { index: l, state: s, step: o, cfg: n }),
10177
10177
  !c && /* @__PURE__ */ t("div", { style: {
10178
10178
  width: n.connector,
10179
10179
  flex: 1,
@@ -10215,12 +10215,12 @@ function mo({ steps: e, current: r, cfg: n, numbered: i, showStatus: a }) {
10215
10215
  fontFamily: "var(--lucent-font-family-base)",
10216
10216
  color: "var(--lucent-text-secondary)"
10217
10217
  }, children: o.description }),
10218
- a && /* @__PURE__ */ t(tn, { state: s })
10218
+ a && /* @__PURE__ */ t(nn, { state: s })
10219
10219
  ] })
10220
10220
  ] }, o.label);
10221
10221
  }) });
10222
10222
  }
10223
- function Hi({
10223
+ function Ui({
10224
10224
  steps: e,
10225
10225
  current: r,
10226
10226
  size: n = "md",
@@ -10229,8 +10229,8 @@ function Hi({
10229
10229
  showStatus: o = !1,
10230
10230
  style: l
10231
10231
  }) {
10232
- H(po, []);
10233
- const s = io[n], c = e.map(so), u = i === "vertical" ? mo : fo;
10232
+ H(ho, []);
10233
+ const s = so[n], c = e.map(lo), u = i === "vertical" ? go : mo;
10234
10234
  return /* @__PURE__ */ t(
10235
10235
  "div",
10236
10236
  {
@@ -10244,7 +10244,7 @@ function Hi({
10244
10244
  }
10245
10245
  );
10246
10246
  }
10247
- const Gi = {
10247
+ const ji = {
10248
10248
  id: "stepper",
10249
10249
  name: "Stepper",
10250
10250
  tier: "molecule",
@@ -10344,7 +10344,7 @@ const Gi = {
10344
10344
  notes: 'Root element has role="group" with aria-label="Progress steps". The current step circle receives aria-current="step" so screen readers can identify which step is active. Step labels are visible text, not aria-only. The checkmark animation uses prefers-reduced-motion: the spring scale is purely decorative and does not affect content comprehension.'
10345
10345
  }
10346
10346
  };
10347
- function Nt(e, r, n) {
10347
+ function Wt(e, r, n) {
10348
10348
  return /* @__PURE__ */ t(
10349
10349
  fe,
10350
10350
  {
@@ -10361,7 +10361,7 @@ function Nt(e, r, n) {
10361
10361
  n
10362
10362
  );
10363
10363
  }
10364
- function Ui({
10364
+ function Gi({
10365
10365
  title: e,
10366
10366
  subtitle: r,
10367
10367
  breadcrumbs: n,
@@ -10371,22 +10371,22 @@ function Ui({
10371
10371
  style: l
10372
10372
  }) {
10373
10373
  const s = a != null && a.length > 0, c = i != null, u = s || c;
10374
- return /* @__PURE__ */ g(bt, { gap: "4", ...l !== void 0 && { style: l }, children: [
10374
+ return /* @__PURE__ */ g(yt, { gap: "4", ...l !== void 0 && { style: l }, children: [
10375
10375
  n != null && n.length > 0 && /* @__PURE__ */ t(Fr, { items: n }),
10376
- /* @__PURE__ */ g(yt, { justify: "between", align: "end", wrap: !0, gap: "3", children: [
10377
- /* @__PURE__ */ g(bt, { gap: "1", style: { minWidth: 0 }, children: [
10378
- /* @__PURE__ */ t(U, { as: "h1", size: "3xl", weight: "bold", family: "display", children: e }),
10379
- r != null && /* @__PURE__ */ t(U, { size: "sm", color: "secondary", children: r })
10376
+ /* @__PURE__ */ g(xt, { justify: "between", align: "end", wrap: !0, gap: "3", children: [
10377
+ /* @__PURE__ */ g(yt, { gap: "1", style: { minWidth: 0 }, children: [
10378
+ /* @__PURE__ */ t(j, { as: "h1", size: "3xl", weight: "bold", family: "display", children: e }),
10379
+ r != null && /* @__PURE__ */ t(j, { size: "sm", color: "secondary", children: r })
10380
10380
  ] }),
10381
- u && /* @__PURE__ */ g(yt, { gap: "2", wrap: !0, children: [
10382
- s && a.map((p, h) => Nt(p, "outline", h)),
10383
- c && Nt(i, "primary")
10381
+ u && /* @__PURE__ */ g(xt, { gap: "2", wrap: !0, children: [
10382
+ s && a.map((p, h) => Wt(p, "outline", h)),
10383
+ c && Wt(i, "primary")
10384
10384
  ] })
10385
10385
  ] }),
10386
- !o && /* @__PURE__ */ t(Sn, {})
10386
+ !o && /* @__PURE__ */ t(Tn, {})
10387
10387
  ] });
10388
10388
  }
10389
- const ji = {
10389
+ const _i = {
10390
10390
  id: "page-header",
10391
10391
  name: "PageHeader",
10392
10392
  tier: "molecule",
@@ -10504,7 +10504,7 @@ const ji = {
10504
10504
  accessibility: {
10505
10505
  notes: `The title renders as an <h1>, providing the page heading landmark for assistive tech. Breadcrumbs render inside <nav aria-label="Breadcrumb">. Action buttons inherit Button's focus ring, keyboard activation, and aria-label forwarding — pass aria-label on each action object when the label alone is insufficient (e.g. icon-only buttons).`
10506
10506
  }
10507
- }, Wt = {
10507
+ }, Vt = {
10508
10508
  accent: "var(--lucent-accent-default)",
10509
10509
  success: "var(--lucent-success-default)",
10510
10510
  warning: "var(--lucent-warning-default)",
@@ -10517,33 +10517,33 @@ const ji = {
10517
10517
  "var(--lucent-warning-default)",
10518
10518
  "var(--lucent-danger-default)"
10519
10519
  ];
10520
- function mt(e, r = "accent") {
10521
- return e ? Wt[e] ?? e : Wt[r];
10520
+ function gt(e, r = "accent") {
10521
+ return e ? Vt[e] ?? e : Vt[r];
10522
10522
  }
10523
- function gt(e, r) {
10523
+ function vt(e, r) {
10524
10524
  const [n, i] = e, [a, o] = r, l = i - n;
10525
10525
  return l === 0 ? () => (a + o) / 2 : (s) => a + (s - n) / l * (o - a);
10526
10526
  }
10527
- function nn(e, r, n) {
10527
+ function rn(e, r, n) {
10528
10528
  if (e === r) return [e];
10529
10529
  const i = (r - e) / Math.max(n - 1, 1), a = Math.pow(10, Math.floor(Math.log10(i))), o = i / a, l = o <= 1.5 ? a : o <= 3 ? 2 * a : o <= 7 ? 5 * a : 10 * a, s = Math.floor(e / l) * l, c = Math.ceil(r / l) * l, u = [];
10530
10530
  for (let p = s; p <= c + l * 0.01; p += l)
10531
10531
  u.push(Math.round(p * 1e10) / 1e10);
10532
10532
  return u;
10533
10533
  }
10534
- function We(e) {
10534
+ function Ve(e) {
10535
10535
  return e.length === 0 ? "" : e.map((r, n) => `${n === 0 ? "M" : "L"}${r.x},${r.y}`).join(" ");
10536
10536
  }
10537
- function rn(e, r) {
10537
+ function an(e, r) {
10538
10538
  if (e.length === 0) return "";
10539
- const n = We(e), i = e[e.length - 1], a = e[0];
10539
+ const n = Ve(e), i = e[e.length - 1], a = e[0];
10540
10540
  return `${n} L${i.x},${r} L${a.x},${r} Z`;
10541
10541
  }
10542
- function vt(e) {
10542
+ function bt(e) {
10543
10543
  const r = e.length;
10544
10544
  if (r === 0) return "";
10545
10545
  if (r === 1) return `M${e[0].x},${e[0].y}`;
10546
- if (r === 2) return We(e);
10546
+ if (r === 2) return Ve(e);
10547
10547
  const n = [];
10548
10548
  for (let o = 0; o < r - 1; o++) {
10549
10549
  const l = e[o + 1].x - e[o].x;
@@ -10570,16 +10570,16 @@ function vt(e) {
10570
10570
  }
10571
10571
  return a;
10572
10572
  }
10573
- function an(e, r) {
10573
+ function on(e, r) {
10574
10574
  if (e.length === 0) return "";
10575
- const n = vt(e), i = e[e.length - 1], a = e[0];
10575
+ const n = bt(e), i = e[e.length - 1], a = e[0];
10576
10576
  return `${n} L${i.x},${r} L${a.x},${r} Z`;
10577
10577
  }
10578
10578
  function Se(e, r, n, i) {
10579
10579
  const a = (i - 90) * Math.PI / 180;
10580
10580
  return { x: e + n * Math.cos(a), y: r + n * Math.sin(a) };
10581
10581
  }
10582
- function go(e, r, n, i, a, o) {
10582
+ function vo(e, r, n, i, a, o) {
10583
10583
  const l = Se(e, r, n, a), s = Se(e, r, n, o), c = Se(e, r, i, a), u = Se(e, r, i, o), p = o - a > 180 ? 1 : 0;
10584
10584
  return [
10585
10585
  `M${l.x},${l.y}`,
@@ -10589,8 +10589,8 @@ function go(e, r, n, i, a, o) {
10589
10589
  "Z"
10590
10590
  ].join(" ");
10591
10591
  }
10592
- const ve = 100, Vt = 8;
10593
- function _i({
10592
+ const ve = 100, Ot = 8;
10593
+ function Yi({
10594
10594
  data: e,
10595
10595
  width: r = "100%",
10596
10596
  height: n = 32,
@@ -10604,7 +10604,7 @@ function _i({
10604
10604
  }) {
10605
10605
  const [p, h] = q(null);
10606
10606
  if (e.length < 2) return null;
10607
- const w = mt(i), b = e.length - 1, m = Math.min(...e), f = Math.max(...e), d = gt([m, f], [ve - Vt, Vt]), y = e.map((C, z) => ({ x: z, y: d(C) })), x = l ? vt(y) : We(y), T = a ? l ? an(y, ve) : rn(y, ve) : null, S = (C) => {
10607
+ const w = gt(i), b = e.length - 1, m = Math.min(...e), f = Math.max(...e), d = vt([m, f], [ve - Ot, Ot]), y = e.map((C, z) => ({ x: z, y: d(C) })), x = l ? bt(y) : Ve(y), T = a ? l ? on(y, ve) : an(y, ve) : null, S = (C) => {
10608
10608
  const z = C.currentTarget.getBoundingClientRect(), B = C.clientX - z.left, D = Math.round(B / z.width * (e.length - 1));
10609
10609
  h(Math.max(0, Math.min(D, e.length - 1)));
10610
10610
  }, k = p !== null ? y[p] : void 0, v = p !== null ? e[p] : void 0, E = p === 0 || p === e.length - 1;
@@ -10677,7 +10677,7 @@ function _i({
10677
10677
  transition: "left 150ms ease-out, top 150ms ease-out",
10678
10678
  pointerEvents: "none"
10679
10679
  }, children: /* @__PURE__ */ t("span", { style: { position: "absolute", bottom: -2 }, children: /* @__PURE__ */ t(
10680
- $e,
10680
+ Ne,
10681
10681
  {
10682
10682
  content: s ? s(v, p) : v,
10683
10683
  open: !0,
@@ -10687,7 +10687,7 @@ function _i({
10687
10687
  ) }) })
10688
10688
  ] });
10689
10689
  }
10690
- const Yi = {
10690
+ const Ki = {
10691
10691
  id: "sparkline",
10692
10692
  name: "SparkLine",
10693
10693
  tier: "atom",
@@ -10714,8 +10714,8 @@ const Yi = {
10714
10714
  ariaAttributes: ["aria-label"],
10715
10715
  notes: "Purely decorative — ensure surrounding text provides data context."
10716
10716
  }
10717
- }, le = 300, be = 200, ce = 40, Je = 8, Ze = 16, vo = 24;
10718
- function bo(e, r, n, i, a) {
10717
+ }, le = 300, be = 200, ce = 40, Je = 8, Qe = 16, bo = 24;
10718
+ function yo(e, r, n, i, a) {
10719
10719
  const o = Math.min(a, n / 2, i);
10720
10720
  return [
10721
10721
  `M${e},${r + i}`,
@@ -10730,7 +10730,7 @@ function bo(e, r, n, i, a) {
10730
10730
  function ue(e, r) {
10731
10731
  return e / r * 100;
10732
10732
  }
10733
- const Qe = {
10733
+ const et = {
10734
10734
  position: "absolute",
10735
10735
  fontFamily: "var(--lucent-font-family-base)",
10736
10736
  fontSize: "var(--lucent-font-size-xs)",
@@ -10738,7 +10738,7 @@ const Qe = {
10738
10738
  whiteSpace: "nowrap",
10739
10739
  pointerEvents: "none"
10740
10740
  };
10741
- function Ki({
10741
+ function Xi({
10742
10742
  data: e,
10743
10743
  width: r = "100%",
10744
10744
  height: n = 200,
@@ -10753,7 +10753,7 @@ function Ki({
10753
10753
  }) {
10754
10754
  const [h, w] = q(null);
10755
10755
  if (e.length === 0) return null;
10756
- const b = mt(i), m = le - ce - Je, f = be - vo, d = Math.max(...e.map((z) => z.value), 0), y = nn(0, d, 5), x = y[y.length - 1] ?? d, T = gt([0, x], [f, Ze]), S = m / e.length, k = S * (1 - s), v = (S - k) / 2, E = l ?? ((z) => z >= 1e3 ? `${(z / 1e3).toFixed(1)}k` : String(z)), C = (z) => {
10756
+ const b = gt(i), m = le - ce - Je, f = be - bo, d = Math.max(...e.map((z) => z.value), 0), y = rn(0, d, 5), x = y[y.length - 1] ?? d, T = vt([0, x], [f, Qe]), S = m / e.length, k = S * (1 - s), v = (S - k) / 2, E = l ?? ((z) => z >= 1e3 ? `${(z / 1e3).toFixed(1)}k` : String(z)), C = (z) => {
10757
10757
  const B = e[z], D = ce + z * S + S / 2, M = T(B.value);
10758
10758
  w({ index: z, x: ue(D, le), y: ue(M, be) });
10759
10759
  };
@@ -10798,16 +10798,16 @@ function Ki({
10798
10798
  "rect",
10799
10799
  {
10800
10800
  x: ce + B * S,
10801
- y: Ze,
10801
+ y: Qe,
10802
10802
  width: S,
10803
- height: f - Ze,
10803
+ height: f - Qe,
10804
10804
  fill: "transparent"
10805
10805
  }
10806
10806
  ),
10807
10807
  /* @__PURE__ */ t(
10808
10808
  "path",
10809
10809
  {
10810
- d: bo(D, $, k, M, c),
10810
+ d: yo(D, $, k, M, c),
10811
10811
  fill: R,
10812
10812
  opacity: P ? 0.35 : 1,
10813
10813
  style: { transition: "opacity 150ms" }
@@ -10833,7 +10833,7 @@ function Ki({
10833
10833
  }
10834
10834
  ),
10835
10835
  y.map((z) => /* @__PURE__ */ t("span", { style: {
10836
- ...Qe,
10836
+ ...et,
10837
10837
  right: `${ue(le - ce + 6, le)}%`,
10838
10838
  top: `${ue(T(z), be)}%`,
10839
10839
  transform: "translateY(-50%)",
@@ -10843,14 +10843,14 @@ function Ki({
10843
10843
  const D = ue(ce + B * S + S / 2, le), M = (h == null ? void 0 : h.index) === B, $ = h !== null && !M, R = ue(T(z.value), be);
10844
10844
  return /* @__PURE__ */ g("span", { style: { display: "contents" }, children: [
10845
10845
  /* @__PURE__ */ t("span", { style: {
10846
- ...Qe,
10846
+ ...et,
10847
10847
  left: `${D}%`,
10848
10848
  top: `${ue(f + 4, be)}%`,
10849
10849
  transform: "translateX(-50%)",
10850
10850
  fontWeight: M ? 600 : 400
10851
10851
  }, children: z.label }),
10852
10852
  o && /* @__PURE__ */ t("span", { style: {
10853
- ...Qe,
10853
+ ...et,
10854
10854
  left: `${D}%`,
10855
10855
  top: `${R}%`,
10856
10856
  transform: "translate(-50%, -100%) translateY(-4px)",
@@ -10860,9 +10860,9 @@ function Ki({
10860
10860
  ] }, B);
10861
10861
  }),
10862
10862
  h && /* @__PURE__ */ t("span", { style: { position: "absolute", left: `${h.x}%`, top: `${h.y}%`, pointerEvents: "none" }, children: /* @__PURE__ */ t("span", { style: { position: "absolute", bottom: 0 }, children: /* @__PURE__ */ t(
10863
- $e,
10863
+ Ne,
10864
10864
  {
10865
- content: /* @__PURE__ */ g(J, { children: [
10865
+ content: /* @__PURE__ */ g(Z, { children: [
10866
10866
  /* @__PURE__ */ t("span", { style: { fontWeight: 600 }, children: e[h.index].label }),
10867
10867
  " ",
10868
10868
  E(e[h.index].value)
@@ -10874,7 +10874,7 @@ function Ki({
10874
10874
  ) }) })
10875
10875
  ] });
10876
10876
  }
10877
- const Xi = {
10877
+ const Zi = {
10878
10878
  id: "bar-chart",
10879
10879
  name: "BarChart",
10880
10880
  tier: "atom",
@@ -10903,7 +10903,7 @@ const Xi = {
10903
10903
  ariaAttributes: ["aria-label"],
10904
10904
  notes: "Provide a descriptive ariaLabel summarising the data for screen readers."
10905
10905
  }
10906
- }, ee = 400, ae = 200, de = 40, et = 12, De = 12, yo = 24;
10906
+ }, ee = 400, ae = 200, de = 40, tt = 12, Pe = 12, xo = 24;
10907
10907
  function Ji({
10908
10908
  data: e,
10909
10909
  series: r,
@@ -10920,33 +10920,33 @@ function Ji({
10920
10920
  ariaLabel: w = "Area chart",
10921
10921
  style: b
10922
10922
  }) {
10923
- const [m, f] = q(null), d = r ?? (e ? [{ id: "_default", name: "", data: e, color: mt(a) }] : []), y = d[0];
10923
+ const [m, f] = q(null), d = r ?? (e ? [{ id: "_default", name: "", data: e, color: gt(a) }] : []), y = d[0];
10924
10924
  if (!y || y.data.length === 0) return null;
10925
- const x = y.data.map((A) => A.label), T = d.flatMap((A) => A.data.map((I) => I.value)), S = Math.max(...T, 0), k = ee - de - et, v = ae - yo, E = nn(0, S, 5), C = E[E.length - 1] ?? S, z = gt([0, C], [v, De]), B = x.length > 1 ? k / (x.length - 1) : 0, D = p ?? ((A) => A >= 1e3 ? `${(A / 1e3).toFixed(1)}k` : String(A)), M = h ?? Math.min(x.length, 7), $ = x.length <= M ? 1 : Math.ceil(x.length / M), R = c ? vt : We, W = c ? an : rn, P = d.map(
10926
- (A) => A.data.map((I, N) => ({ x: de + N * B, y: z(I.value) }))
10925
+ const x = y.data.map((A) => A.label), T = d.flatMap((A) => A.data.map((I) => I.value)), S = Math.max(...T, 0), k = ee - de - tt, v = ae - xo, E = rn(0, S, 5), C = E[E.length - 1] ?? S, z = vt([0, C], [v, Pe]), B = x.length > 1 ? k / (x.length - 1) : 0, D = p ?? ((A) => A >= 1e3 ? `${(A / 1e3).toFixed(1)}k` : String(A)), M = h ?? Math.min(x.length, 7), $ = x.length <= M ? 1 : Math.ceil(x.length / M), R = c ? bt : Ve, W = c ? on : an, P = d.map(
10926
+ (A) => A.data.map((I, F) => ({ x: de + F * B, y: z(I.value) }))
10927
10927
  ), O = B / 2, Y = (A) => {
10928
- const I = A.currentTarget.getBoundingClientRect(), G = (A.clientX - I.left) / I.width * ee - de;
10929
- if (G < -O || G > k + O) {
10928
+ const I = A.currentTarget.getBoundingClientRect(), U = (A.clientX - I.left) / I.width * ee - de;
10929
+ if (U < -O || U > k + O) {
10930
10930
  f(null);
10931
10931
  return;
10932
10932
  }
10933
- const F = B > 0 ? Math.round(G / B) : 0, j = Math.max(0, Math.min(F, x.length - 1)), K = de + j * B, se = Math.min(...P.map((re) => {
10933
+ const N = B > 0 ? Math.round(U / B) : 0, G = Math.max(0, Math.min(N, x.length - 1)), K = de + G * B, se = Math.min(...P.map((re) => {
10934
10934
  var _;
10935
- return ((_ = re[j]) == null ? void 0 : _.y) ?? De;
10935
+ return ((_ = re[G]) == null ? void 0 : _.y) ?? Pe;
10936
10936
  }));
10937
- f({ index: j, x: K / ee * 100, y: se / ae * 100 });
10937
+ f({ index: G, x: K / ee * 100, y: se / ae * 100 });
10938
10938
  }, L = m && /* @__PURE__ */ g("div", { children: [
10939
10939
  /* @__PURE__ */ t("div", { style: { fontWeight: 600, marginBottom: d.length > 1 ? 2 : 0 }, children: x[m.index] }),
10940
10940
  d.map((A, I) => {
10941
- var F;
10942
- const N = (F = A.data[m.index]) == null ? void 0 : F.value;
10943
- if (N === void 0) return null;
10944
- const G = A.color ?? te[I % te.length];
10941
+ var N;
10942
+ const F = (N = A.data[m.index]) == null ? void 0 : N.value;
10943
+ if (F === void 0) return null;
10944
+ const U = A.color ?? te[I % te.length];
10945
10945
  return /* @__PURE__ */ g("div", { style: { display: "flex", alignItems: "center", gap: 4 }, children: [
10946
- d.length > 1 && /* @__PURE__ */ t("span", { style: { width: 6, height: 6, borderRadius: "50%", background: G, flexShrink: 0 } }),
10946
+ d.length > 1 && /* @__PURE__ */ t("span", { style: { width: 6, height: 6, borderRadius: "50%", background: U, flexShrink: 0 } }),
10947
10947
  /* @__PURE__ */ g("span", { children: [
10948
10948
  A.name ? `${A.name}: ` : "",
10949
- D(N)
10949
+ D(F)
10950
10950
  ] })
10951
10951
  ] }, A.id);
10952
10952
  })
@@ -10972,7 +10972,7 @@ function Ji({
10972
10972
  {
10973
10973
  x1: de,
10974
10974
  y1: I,
10975
- x2: ee - et,
10975
+ x2: ee - tt,
10976
10976
  y2: I,
10977
10977
  stroke: "var(--lucent-border-subtle, #e5e7eb)",
10978
10978
  strokeWidth: 0.5,
@@ -10986,22 +10986,22 @@ function Ji({
10986
10986
  {
10987
10987
  x1: de,
10988
10988
  y1: v,
10989
- x2: ee - et,
10989
+ x2: ee - tt,
10990
10990
  y2: v,
10991
10991
  stroke: "var(--lucent-border-default, #d1d5db)",
10992
10992
  strokeWidth: 0.5
10993
10993
  }
10994
10994
  ),
10995
10995
  d.map((A, I) => {
10996
- const N = A.color ?? te[I % te.length], G = P[I], F = R(G), j = W(G, v);
10996
+ const F = A.color ?? te[I % te.length], U = P[I], N = R(U), G = W(U, v);
10997
10997
  return /* @__PURE__ */ g("g", { children: [
10998
- /* @__PURE__ */ t("path", { d: j, fill: N, opacity: u, stroke: "none" }),
10998
+ /* @__PURE__ */ t("path", { d: G, fill: F, opacity: u, stroke: "none" }),
10999
10999
  /* @__PURE__ */ t(
11000
11000
  "path",
11001
11001
  {
11002
- d: F,
11002
+ d: N,
11003
11003
  fill: "none",
11004
- stroke: N,
11004
+ stroke: F,
11005
11005
  strokeWidth: 1.5,
11006
11006
  strokeLinecap: "round",
11007
11007
  strokeLinejoin: "round"
@@ -11013,45 +11013,45 @@ function Ji({
11013
11013
  }
11014
11014
  ),
11015
11015
  l && d.map((A, I) => {
11016
- const N = A.color ?? te[I % te.length];
11017
- return P[I].map((F, j) => /* @__PURE__ */ t("span", { style: {
11016
+ const F = A.color ?? te[I % te.length];
11017
+ return P[I].map((N, G) => /* @__PURE__ */ t("span", { style: {
11018
11018
  position: "absolute",
11019
- left: `${F.x / ee * 100}%`,
11020
- top: `${F.y / ae * 100}%`,
11019
+ left: `${N.x / ee * 100}%`,
11020
+ top: `${N.y / ae * 100}%`,
11021
11021
  width: s * 2,
11022
11022
  height: s * 2,
11023
11023
  borderRadius: "50%",
11024
- background: N,
11024
+ background: F,
11025
11025
  border: "1.5px solid var(--lucent-surface, #fff)",
11026
11026
  transform: "translate(-50%, -50%)",
11027
11027
  pointerEvents: "none"
11028
- } }, `${A.id}-${j}`));
11028
+ } }, `${A.id}-${G}`));
11029
11029
  }),
11030
- m && /* @__PURE__ */ g(J, { children: [
11030
+ m && /* @__PURE__ */ g(Z, { children: [
11031
11031
  /* @__PURE__ */ t("span", { style: {
11032
11032
  position: "absolute",
11033
11033
  left: `${m.x}%`,
11034
- top: `${De / ae * 100}%`,
11034
+ top: `${Pe / ae * 100}%`,
11035
11035
  width: 1,
11036
- height: `${(v - De) / ae * 100}%`,
11036
+ height: `${(v - Pe) / ae * 100}%`,
11037
11037
  background: "var(--lucent-border-default)",
11038
11038
  opacity: 0.5,
11039
11039
  transform: "translateX(-50%)",
11040
11040
  pointerEvents: "none"
11041
11041
  } }),
11042
11042
  d.map((A, I) => {
11043
- var F;
11044
- const N = (F = P[I]) == null ? void 0 : F[m.index];
11045
- if (!N) return null;
11046
- const G = A.color ?? te[I % te.length];
11043
+ var N;
11044
+ const F = (N = P[I]) == null ? void 0 : N[m.index];
11045
+ if (!F) return null;
11046
+ const U = A.color ?? te[I % te.length];
11047
11047
  return /* @__PURE__ */ t("span", { style: {
11048
11048
  position: "absolute",
11049
- left: `${N.x / ee * 100}%`,
11050
- top: `${N.y / ae * 100}%`,
11049
+ left: `${F.x / ee * 100}%`,
11050
+ top: `${F.y / ae * 100}%`,
11051
11051
  width: 10,
11052
11052
  height: 10,
11053
11053
  borderRadius: "50%",
11054
- background: G,
11054
+ background: U,
11055
11055
  border: "2px solid var(--lucent-surface, #fff)",
11056
11056
  transform: "translate(-50%, -50%)",
11057
11057
  pointerEvents: "none"
@@ -11072,7 +11072,7 @@ function Ji({
11072
11072
  }, children: D(A) }, A)),
11073
11073
  x.map((A, I) => {
11074
11074
  if (I % $ !== 0) return null;
11075
- const N = (m == null ? void 0 : m.index) === I;
11075
+ const F = (m == null ? void 0 : m.index) === I;
11076
11076
  return /* @__PURE__ */ t("span", { style: {
11077
11077
  position: "absolute",
11078
11078
  left: `${(de + I * B) / ee * 100}%`,
@@ -11081,15 +11081,15 @@ function Ji({
11081
11081
  fontFamily: "var(--lucent-font-family-base)",
11082
11082
  fontSize: "var(--lucent-font-size-xs)",
11083
11083
  color: "var(--lucent-text-secondary)",
11084
- fontWeight: N ? 600 : 400,
11084
+ fontWeight: F ? 600 : 400,
11085
11085
  whiteSpace: "nowrap",
11086
11086
  pointerEvents: "none"
11087
11087
  }, children: A }, I);
11088
11088
  }),
11089
- m && /* @__PURE__ */ t("span", { style: { position: "absolute", left: `${m.x}%`, top: `${m.y}%`, pointerEvents: "none" }, children: /* @__PURE__ */ t("span", { style: { position: "absolute", bottom: 0 }, children: /* @__PURE__ */ t($e, { content: L, open: !0, placement: "top", children: /* @__PURE__ */ t("span", {}) }) }) })
11089
+ m && /* @__PURE__ */ t("span", { style: { position: "absolute", left: `${m.x}%`, top: `${m.y}%`, pointerEvents: "none" }, children: /* @__PURE__ */ t("span", { style: { position: "absolute", bottom: 0 }, children: /* @__PURE__ */ t(Ne, { content: L, open: !0, placement: "top", children: /* @__PURE__ */ t("span", {}) }) }) })
11090
11090
  ] });
11091
11091
  }
11092
- const Zi = {
11092
+ const Qi = {
11093
11093
  id: "area-chart",
11094
11094
  name: "AreaChart",
11095
11095
  tier: "atom",
@@ -11120,8 +11120,8 @@ const Zi = {
11120
11120
  ariaAttributes: ["aria-label"],
11121
11121
  notes: "Provide ariaLabel summarising the data trend."
11122
11122
  }
11123
- }, tt = 100, Ot = 50, Ht = 50, nt = 45;
11124
- function Qi({
11123
+ }, nt = 100, Ht = 50, Ut = 50, rt = 45;
11124
+ function es({
11125
11125
  data: e,
11126
11126
  size: r = 160,
11127
11127
  thickness: n = 0.35,
@@ -11135,7 +11135,7 @@ function Qi({
11135
11135
  if (e.length === 0) return null;
11136
11136
  const p = e.reduce((k, v) => k + v.value, 0);
11137
11137
  if (p === 0) return null;
11138
- const h = nt * (1 - n), b = 360 - i * e.length;
11138
+ const h = rt * (1 - n), b = 360 - i * e.length;
11139
11139
  let m = o;
11140
11140
  const f = e.map((k, v) => {
11141
11141
  const E = k.value / p * b, C = m, z = m + E;
@@ -11145,11 +11145,11 @@ function Qi({
11145
11145
  segEnd: z,
11146
11146
  color: k.color ?? te[v % te.length]
11147
11147
  };
11148
- }), d = h * 2 * 0.7, y = (tt - d) / 2, x = c !== null ? f[c] : void 0;
11148
+ }), d = h * 2 * 0.7, y = (nt - d) / 2, x = c !== null ? f[c] : void 0;
11149
11149
  let T, S = null;
11150
11150
  if (x) {
11151
11151
  const k = (x.segStart + x.segEnd) / 2;
11152
- T = Se(Ot, Ht, nt + 8, k);
11152
+ T = Se(Ht, Ut, rt + 8, k);
11153
11153
  const v = (x.value / p * 100).toFixed(1);
11154
11154
  S = /* @__PURE__ */ g("div", { style: { display: "flex", alignItems: "center", gap: 4 }, children: [
11155
11155
  /* @__PURE__ */ t("span", { style: { width: 6, height: 6, borderRadius: "50%", background: x.color, flexShrink: 0 } }),
@@ -11167,7 +11167,7 @@ function Qi({
11167
11167
  /* @__PURE__ */ g(
11168
11168
  "svg",
11169
11169
  {
11170
- viewBox: `0 0 ${tt} ${tt}`,
11170
+ viewBox: `0 0 ${nt} ${nt}`,
11171
11171
  width: "100%",
11172
11172
  height: "100%",
11173
11173
  role: "img",
@@ -11179,7 +11179,7 @@ function Qi({
11179
11179
  return /* @__PURE__ */ t(
11180
11180
  "path",
11181
11181
  {
11182
- d: go(Ot, Ht, nt, h, k.segStart, k.segEnd),
11182
+ d: vo(Ht, Ut, rt, h, k.segStart, k.segEnd),
11183
11183
  fill: k.color,
11184
11184
  transform: `translate(${M}, ${$})`,
11185
11185
  opacity: C ? 0.4 : 1,
@@ -11214,10 +11214,10 @@ function Qi({
11214
11214
  left: `${T.x}%`,
11215
11215
  top: `${T.y}%`,
11216
11216
  pointerEvents: "none"
11217
- }, children: /* @__PURE__ */ t($e, { content: S, open: !0, placement: "top", children: /* @__PURE__ */ t("span", {}) }) })
11217
+ }, children: /* @__PURE__ */ t(Ne, { content: S, open: !0, placement: "top", children: /* @__PURE__ */ t("span", {}) }) })
11218
11218
  ] });
11219
11219
  }
11220
- const es = {
11220
+ const ts = {
11221
11221
  id: "donut-chart",
11222
11222
  name: "DonutChart",
11223
11223
  tier: "atom",
@@ -11243,7 +11243,7 @@ const es = {
11243
11243
  ariaAttributes: ["aria-label"],
11244
11244
  notes: "Provide ariaLabel describing the proportions for screen readers."
11245
11245
  }
11246
- }, ts = {
11246
+ }, ns = {
11247
11247
  navigation: {
11248
11248
  description: "Chrome/shell background for sidebars, headers, footers, and navigation rails. The outermost structural layer of the UI. Independent of bgBase — set it explicitly when the chrome needs a different tint than the content area.",
11249
11249
  lightGuidance: "A very faint cool or warm tint that distinguishes the chrome from the content area. Default #f4f6f8. Typically L 0.95–0.98.",
@@ -11304,14 +11304,14 @@ const es = {
11304
11304
  darkGuidance: "Slightly lighter than light-mode. createTheme() handles this automatically.",
11305
11305
  derives: ["infoSubtle", "infoText"]
11306
11306
  }
11307
- }, ns = {
11307
+ }, rs = {
11308
11308
  id: "lucent-provider",
11309
11309
  name: "LucentProvider",
11310
11310
  tier: "provider",
11311
11311
  domain: "neutral",
11312
11312
  specVersion: "1.0",
11313
11313
  description: "Root configuration wrapper that injects Lucent design tokens as CSS custom properties. Accepts a design preset for instant theming, 9 anchor colors (via `anchors`) for zero-config theming, or granular token overrides (via `tokens`) for full control.",
11314
- designIntent: 'LucentProvider is the single source of truth for the visual identity of any Lucent-powered UI. Its primary design goal is to make custom theming accessible to both humans and LLMs with minimal effort.\n\nPRESET MODE (fastest path): Pass `preset` with a named preset ("modern", "enterprise", "playful") or an object mixing dimensions: `{ palette: "indigo", shape: "pill", density: "compact", shadow: "elevated" }`. Presets bundle palette colors, border radius, spacing, and shadows into one cohesive design. Available palettes: default, brand, indigo, emerald, rose, ocean. Shapes: sharp, rounded, pill. Densities: compact, default, spacious. Shadows: flat, subtle, elevated. Presets work with both light and dark themes automatically.\n\nANCHOR MODE (recommended for LLMs building custom themes): Pass `anchors` with 9 semantic colors and the provider automatically derives all 30+ variant tokens — hover/active/subtle states, WCAG-compliant contrast text, status subtle tints, surface elevation steps, and more. An LLM generating a themed UI only needs to reason about 9 colors, not the full token surface.\n\nTOKEN MODE (for granular control): Pass `tokens` as a partial override object. Any token not supplied falls back to the base light or dark theme. Derivation still runs — e.g. if you supply only `accentDefault`, the provider auto-derives `accentHover`, `accentSubtle`, `accentBorder`, and `accentFg`.\n\nPRECEDENCE (later wins): base theme → preset → anchors → tokens. You can combine preset with tokens to start from a preset and tweak individual values.\n\nAPCA auto-computation: `accentFg` is always computed from the resolved accent color via APCA contrast — it will be #000000 or #ffffff, whichever has higher perceived contrast. Consumers can override it if they have brand-specific requirements.\n\nDARK MODE: Pass `theme="dark"` alongside any prop. Presets include both light and dark palettes. Anchor colors are applied to the dark base palette; derivation runs with dark-calibrated lightness deltas.\n\nDO NOT nest multiple LucentProviders unless intentionally theming a sub-tree differently (e.g. an inverted sidebar). The outermost provider wins for `:root` CSS vars.',
11314
+ designIntent: "LucentProvider is the single source of truth for the visual identity of any Lucent-powered UI. Its primary design goal is to make custom theming accessible to both humans and LLMs with minimal effort.\n\nPRESET MODE (fastest path): Pass `preset` with a named preset (\"modern\", \"enterprise\", \"playful\") or an object mixing dimensions: `{ palette: \"indigo\", shape: \"pill\", density: \"compact\", shadow: \"elevated\" }`. Presets bundle palette colors, border radius, spacing, and shadows into one cohesive design. Available palettes: default, brand, indigo, emerald, rose, ocean. Shapes: sharp, rounded, pill. Densities: compact, default, spacious. Shadows: flat, subtle, elevated. Presets work with both light and dark themes automatically.\n\nANCHOR MODE (recommended for LLMs building custom themes): Pass `anchors` with 9 semantic colors and the provider automatically derives all 30+ variant tokens — hover/active/subtle states, WCAG-compliant contrast text, status subtle tints, surface elevation steps, and more. An LLM generating a themed UI only needs to reason about 9 colors, not the full token surface.\n\nTOKEN MODE (for granular control): Pass `tokens` as a partial override object. Any token not supplied falls back to the base light or dark theme. Derivation still runs — e.g. if you supply only `accentDefault`, the provider auto-derives `accentHover`, `accentSubtle`, `accentBorder`, and `accentFg`.\n\nPRECEDENCE (later wins): base theme → preset → anchors → tokens. You can combine preset with tokens to start from a preset and tweak individual values.\n\nAPCA auto-computation: `accentFg` is always computed from the resolved accent color via APCA contrast — it will be #000000 or #ffffff, whichever has higher perceived contrast. Consumers can override it if they have brand-specific requirements.\n\nDARK MODE: Pass `theme=\"dark\"` alongside any prop. Presets include both light and dark palettes. Anchor colors are applied to the dark base palette; derivation runs with dark-calibrated lightness deltas.\n\nDO NOT nest multiple LucentProviders unless intentionally theming a sub-tree differently (e.g. an inverted sidebar). The outermost provider wins for `:root` CSS vars.\n\nSECURITY — CONTENT SECURITY POLICY: LucentProvider injects `<style>` tags into `<head>` at runtime via `element.textContent`. Consuming applications MUST include `style-src 'self' 'unsafe-inline'` in their Content-Security-Policy header, or apply a nonce to Lucent's injected style elements. A recommended minimum CSP: `default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data:; font-src 'self'; connect-src 'self'`.\n\nSECURITY — TOKEN SANITIZATION: Token values passed via `tokens` or `anchors` are sanitized before injection into CSS custom properties — characters that could break out of a CSS value context (`{};<>@\\`) are stripped. Despite this, tokens should only come from trusted sources (code-level config or a trusted CMS), never from raw user input.\n\nSECURITY — URL SANITIZATION: All lucent-ui components that accept `href` props (Button, NavLink, Card, Breadcrumb, NavMenu) run values through `sanitizeHref()`, which blocks `javascript:`, `data:`, `vbscript:`, and other executable protocols. The `sanitizeHref` utility is exported from the library for use in consuming application code.",
11315
11315
  props: [
11316
11316
  {
11317
11317
  name: "preset",
@@ -11486,25 +11486,25 @@ const myTheme = createTheme({
11486
11486
  }
11487
11487
  ],
11488
11488
  compositionGraph: []
11489
- }, rs = {
11489
+ }, as = {
11490
11490
  accentDefault: "#e9c96b",
11491
11491
  accentHover: "#ddb84e",
11492
11492
  accentSubtle: "#fef9ec"
11493
11493
  };
11494
- function as(e, r = "light") {
11494
+ function os(e, r = "light") {
11495
11495
  const n = r === "light";
11496
11496
  return {
11497
11497
  accentDefault: e,
11498
- accentHover: Ve(e, n ? 0.05 : -0.07),
11499
- accentSubtle: Ve(e, n ? 0.85 : -0.6),
11500
- accentBorder: Ve(e, n ? -0.15 : 0.15),
11501
- accentFg: on(e)
11498
+ accentHover: Oe(e, n ? 0.05 : -0.07),
11499
+ accentSubtle: Oe(e, n ? 0.85 : -0.6),
11500
+ accentBorder: Oe(e, n ? -0.15 : 0.15),
11501
+ accentFg: sn(e)
11502
11502
  };
11503
11503
  }
11504
11504
  function Q(e, r) {
11505
11505
  return { field: e, message: r };
11506
11506
  }
11507
- function xo(e) {
11507
+ function wo(e) {
11508
11508
  const r = [];
11509
11509
  if (typeof e != "object" || e === null)
11510
11510
  return { valid: !1, errors: [Q("manifest", "Must be a non-null object")] };
@@ -11521,8 +11521,8 @@ function xo(e) {
11521
11521
  (typeof s.title != "string" || s.title === "") && r.push(Q(`${c}.title`, "Must be a non-empty string")), (typeof s.code != "string" || s.code === "") && r.push(Q(`${c}.code`, "Must be a non-empty string"));
11522
11522
  }) : r.push(Q("usageExamples", "Must be an array")), Array.isArray(n.compositionGraph) || r.push(Q("compositionGraph", "Must be an array (empty array is fine for atoms)")), typeof n.specVersion == "string" && !/^\d+\.\d+$/.test(n.specVersion) && r.push(Q("specVersion", 'Must be "MAJOR.MINOR" format, e.g. "0.1"')), { valid: r.length === 0, errors: r };
11523
11523
  }
11524
- function os(e) {
11525
- const r = xo(e);
11524
+ function is(e) {
11525
+ const r = wo(e);
11526
11526
  if (!r.valid) {
11527
11527
  const n = r.errors.map((i) => ` ${i.field}: ${i.message}`).join(`
11528
11528
  `);
@@ -11530,180 +11530,181 @@ function os(e) {
11530
11530
  ${n}`);
11531
11531
  }
11532
11532
  }
11533
- function is(e) {
11533
+ function ss(e) {
11534
11534
  if (typeof e != "object" || e === null) return !1;
11535
11535
  const r = e;
11536
11536
  return typeof r.name == "string" && typeof r.type == "string" && typeof r.required == "boolean" && typeof r.description == "string";
11537
11537
  }
11538
- const ss = "1.0", ls = "0.1.0";
11538
+ const ls = "1.0", cs = "0.1.0";
11539
11539
  export {
11540
- mi as Alert,
11541
- gi as AlertManifest,
11540
+ gi as Alert,
11541
+ vi as AlertManifest,
11542
11542
  Ji as AreaChart,
11543
- Zi as AreaChartManifest,
11544
- Eo as Avatar,
11545
- qo as AvatarManifest,
11546
- us as Badge,
11547
- zo as BadgeManifest,
11548
- Ki as BarChart,
11549
- Xi as BarChartManifest,
11543
+ Qi as AreaChartManifest,
11544
+ qo as Avatar,
11545
+ Bo as AvatarManifest,
11546
+ ps as Badge,
11547
+ Ao as BadgeManifest,
11548
+ Xi as BarChart,
11549
+ Zi as BarChartManifest,
11550
11550
  Fr as Breadcrumb,
11551
11551
  fe as Button,
11552
- pr as ButtonGroup,
11553
- si as ButtonGroupManifest,
11554
- Co as ButtonManifest,
11555
- Ao as CHIP_MANIFEST,
11552
+ hr as ButtonGroup,
11553
+ li as ButtonGroupManifest,
11554
+ Io as ButtonManifest,
11555
+ Eo as CHIP_MANIFEST,
11556
11556
  Jo as COLOR_PICKER_MANIFEST,
11557
- Zo as COLOR_SWATCH_MANIFEST,
11558
- Ii as COMMAND_PALETTE_MANIFEST,
11559
- pi as Card,
11560
- hi as CardBleed,
11561
- fi as CardManifest,
11562
- ft as CardPaddingContext,
11563
- ut as Checkbox,
11564
- Po as CheckboxManifest,
11565
- Pe as Chip,
11566
- Yo as CodeBlock,
11567
- Ko as CodeBlockManifest,
11568
- wi as Collapsible,
11569
- ps as ColorPicker,
11570
- hs as ColorSwatch,
11571
- Ci as CommandPalette,
11572
- Ti as DATA_TABLE_MANIFEST,
11573
- Ei as DATE_PICKER_MANIFEST,
11574
- qi as DATE_RANGE_PICKER_MANIFEST,
11575
- Si as DataTable,
11576
- Ai as DatePicker,
11577
- wa as DateRangePicker,
11578
- Sn as Divider,
11579
- Do as DividerManifest,
11580
- Qi as DonutChart,
11581
- es as DonutChartManifest,
11582
- vi as EmptyState,
11583
- bi as EmptyStateManifest,
11584
- Di as FILE_UPLOAD_MANIFEST,
11585
- Bi as FileUpload,
11586
- Oi as FilterDateRange,
11587
- Ni as FilterMultiSelect,
11588
- Vi as FilterSearch,
11589
- Wi as FilterSelect,
11590
- li as FormField,
11591
- ci as FormFieldManifest,
11592
- Ho as Icon,
11593
- Go as IconManifest,
11594
- Gt as Input,
11595
- Io as InputManifest,
11596
- ls as LUCENT_UI_VERSION,
11597
- fs as LucentProvider,
11598
- ns as LucentProviderManifest,
11599
- ss as MANIFEST_SPEC_VERSION,
11600
- zi as MULTI_SELECT_MANIFEST,
11601
- _t as Menu,
11602
- ai as MenuGroup,
11603
- at as MenuItem,
11604
- oi as MenuManifest,
11605
- rr as MenuSeparator,
11606
- Mi as MultiSelect,
11607
- jo as NavLink,
11608
- Ne as NavMenu,
11557
+ Qo as COLOR_SWATCH_MANIFEST,
11558
+ Mi as COMMAND_PALETTE_MANIFEST,
11559
+ hi as Card,
11560
+ fi as CardBleed,
11561
+ mi as CardManifest,
11562
+ mt as CardPaddingContext,
11563
+ pt as Checkbox,
11564
+ Lo as CheckboxManifest,
11565
+ Le as Chip,
11566
+ Ko as CodeBlock,
11567
+ Xo as CodeBlockManifest,
11568
+ ki as Collapsible,
11569
+ hs as ColorPicker,
11570
+ fs as ColorSwatch,
11571
+ Ii as CommandPalette,
11572
+ Ci as DATA_TABLE_MANIFEST,
11573
+ qi as DATE_PICKER_MANIFEST,
11574
+ Bi as DATE_RANGE_PICKER_MANIFEST,
11575
+ Ti as DataTable,
11576
+ Ei as DatePicker,
11577
+ ka as DateRangePicker,
11578
+ Tn as Divider,
11579
+ Po as DividerManifest,
11580
+ es as DonutChart,
11581
+ ts as DonutChartManifest,
11582
+ bi as EmptyState,
11583
+ yi as EmptyStateManifest,
11584
+ Pi as FILE_UPLOAD_MANIFEST,
11585
+ Di as FileUpload,
11586
+ Hi as FilterDateRange,
11587
+ Wi as FilterMultiSelect,
11588
+ Oi as FilterSearch,
11589
+ Vi as FilterSelect,
11590
+ ci as FormField,
11591
+ di as FormFieldManifest,
11592
+ Uo as Icon,
11593
+ jo as IconManifest,
11594
+ jt as Input,
11595
+ Mo as InputManifest,
11596
+ cs as LUCENT_UI_VERSION,
11597
+ ms as LucentProvider,
11598
+ rs as LucentProviderManifest,
11599
+ ls as MANIFEST_SPEC_VERSION,
11600
+ Ai as MULTI_SELECT_MANIFEST,
11601
+ Yt as Menu,
11602
+ oi as MenuGroup,
11603
+ ot as MenuItem,
11604
+ ii as MenuManifest,
11605
+ ar as MenuSeparator,
11606
+ zi as MultiSelect,
11607
+ _o as NavLink,
11608
+ We as NavMenu,
11609
11609
  Ja as NavMenuGroup,
11610
- Ya as NavMenuItem,
11611
- Za as NavMenuSeparator,
11612
- Qt as NavMenuSub,
11613
- Ui as PageHeader,
11614
- ji as PageHeaderManifest,
11615
- ki as PageLayout,
11616
- ni as Progress,
11617
- ri as ProgressManifest,
11618
- Lo as Radio,
11619
- zn as RadioGroup,
11620
- Ro as RadioGroupUncontrolled,
11621
- $o as RadioManifest,
11622
- yt as Row,
11623
- ti as RowManifest,
11624
- Qo as SEGMENTED_CONTROL_MANIFEST,
11625
- di as SearchInput,
11626
- ui as SearchInputManifest,
11627
- ms as SegmentedControl,
11628
- gs as Select,
11629
- No as SelectManifest,
11630
- yi as Skeleton,
11631
- xi as SkeletonManifest,
11632
- vs as Slider,
11633
- _o as SliderManifest,
11634
- _i as SparkLine,
11635
- Yi as SparkLineManifest,
11636
- kn as Spinner,
11637
- Bo as SpinnerManifest,
11638
- dr as SplitButton,
11639
- ii as SplitButtonManifest,
11640
- bt as Stack,
11641
- ei as StackManifest,
11642
- Hi as Stepper,
11643
- Gi as StepperManifest,
11644
- Li as TIMELINE_MANIFEST,
11645
- Ie as Table,
11646
- Xo as TableManifest,
11647
- bs as Tabs,
11648
- Wo as Tag,
11649
- Vo as TagManifest,
11650
- U as Text,
11651
- Uo as TextManifest,
11652
- hn as Textarea,
11653
- Mo as TextareaManifest,
11654
- ts as ThemeAnchorsSpec,
11655
- Pi as Timeline,
11610
+ Ka as NavMenuItem,
11611
+ Qa as NavMenuSeparator,
11612
+ en as NavMenuSub,
11613
+ Gi as PageHeader,
11614
+ _i as PageHeaderManifest,
11615
+ Si as PageLayout,
11616
+ ri as Progress,
11617
+ ai as ProgressManifest,
11618
+ Ro as Radio,
11619
+ An as RadioGroup,
11620
+ $o as RadioGroupUncontrolled,
11621
+ No as RadioManifest,
11622
+ xt as Row,
11623
+ ni as RowManifest,
11624
+ ei as SEGMENTED_CONTROL_MANIFEST,
11625
+ ui as SearchInput,
11626
+ pi as SearchInputManifest,
11627
+ gs as SegmentedControl,
11628
+ vs as Select,
11629
+ Wo as SelectManifest,
11630
+ xi as Skeleton,
11631
+ wi as SkeletonManifest,
11632
+ bs as Slider,
11633
+ Yo as SliderManifest,
11634
+ Yi as SparkLine,
11635
+ Ki as SparkLineManifest,
11636
+ Sn as Spinner,
11637
+ Do as SpinnerManifest,
11638
+ ur as SplitButton,
11639
+ si as SplitButtonManifest,
11640
+ yt as Stack,
11641
+ ti as StackManifest,
11642
+ Ui as Stepper,
11643
+ ji as StepperManifest,
11644
+ Ri as TIMELINE_MANIFEST,
11645
+ Me as Table,
11646
+ Zo as TableManifest,
11647
+ ys as Tabs,
11648
+ Vo as Tag,
11649
+ Oo as TagManifest,
11650
+ j as Text,
11651
+ Go as TextManifest,
11652
+ fn as Textarea,
11653
+ zo as TextareaManifest,
11654
+ ns as ThemeAnchorsSpec,
11655
+ Li as Timeline,
11656
11656
  Fi as ToastManifest,
11657
- $i as ToastProvider,
11658
- ys as Toggle,
11657
+ Ni as ToastProvider,
11658
+ xs as Toggle,
11659
11659
  Fo as ToggleManifest,
11660
- $e as Tooltip,
11661
- Oo as TooltipManifest,
11662
- as as accentTokens,
11663
- os as assertManifest,
11664
- xs as bentoPreset,
11665
- ws as bloomPreset,
11666
- ks as brandPalette,
11667
- rs as brandTokens,
11668
- Ss as brutalistPreset,
11669
- Ts as brutalistShadow,
11670
- Cs as compactDensity,
11671
- Is as createTheme,
11672
- Ms as darkTokens,
11673
- zs as defaultDensity,
11674
- As as defaultPalette,
11675
- Es as deriveDarkFromLight,
11676
- qs as deriveTokens,
11677
- Bs as elevatedShadow,
11678
- Ds as emeraldPalette,
11679
- Ps as enterprisePreset,
11680
- Ls as flatShadow,
11681
- on as getAccentFg,
11682
- Rs as getContrastText,
11683
- $s as glowShadow,
11660
+ Ne as Tooltip,
11661
+ Ho as TooltipManifest,
11662
+ os as accentTokens,
11663
+ is as assertManifest,
11664
+ ws as bentoPreset,
11665
+ ks as bloomPreset,
11666
+ Ss as brandPalette,
11667
+ as as brandTokens,
11668
+ Ts as brutalistPreset,
11669
+ Cs as brutalistShadow,
11670
+ Is as compactDensity,
11671
+ Ms as createTheme,
11672
+ zs as darkTokens,
11673
+ As as defaultDensity,
11674
+ Es as defaultPalette,
11675
+ qs as deriveDarkFromLight,
11676
+ Bs as deriveTokens,
11677
+ Ds as elevatedShadow,
11678
+ Ps as emeraldPalette,
11679
+ Ls as enterprisePreset,
11680
+ Rs as flatShadow,
11681
+ sn as getAccentFg,
11682
+ $s as getContrastText,
11683
+ Ns as glowShadow,
11684
11684
  Fs as indigoPalette,
11685
- is as isValidPropDescriptor,
11686
- Ns as lightTokens,
11687
- Ws as liquidGlassPreset,
11688
- Vs as liquidGlassShadow,
11689
- Os as makeLibraryCSS,
11690
- Hs as minimalPreset,
11691
- Gs as modernPreset,
11692
- Us as naturalShadow,
11693
- js as neumorphicShadow,
11694
- _s as oceanPalette,
11695
- Ys as pillShape,
11696
- Ks as playfulPreset,
11697
- Xs as resolvePreset,
11685
+ ss as isValidPropDescriptor,
11686
+ Ws as lightTokens,
11687
+ Vs as liquidGlassPreset,
11688
+ Os as liquidGlassShadow,
11689
+ Hs as makeLibraryCSS,
11690
+ Us as minimalPreset,
11691
+ js as modernPreset,
11692
+ Gs as naturalShadow,
11693
+ _s as neumorphicShadow,
11694
+ Ys as oceanPalette,
11695
+ Ks as pillShape,
11696
+ Xs as playfulPreset,
11697
+ Zs as resolvePreset,
11698
11698
  Js as rosePalette,
11699
- Zs as roundedShape,
11700
- Qs as sharpShape,
11701
- el as softUIPreset,
11702
- tl as spaciousDensity,
11703
- nl as subtleShadow,
11704
- rl as terminalPreset,
11705
- al as useLucent,
11706
- Or as useMediaQuery,
11707
- Ri as useToast,
11708
- xo as validateManifest
11699
+ Qs as roundedShape,
11700
+ Ce as sanitizeHref,
11701
+ el as sharpShape,
11702
+ tl as softUIPreset,
11703
+ nl as spaciousDensity,
11704
+ rl as subtleShadow,
11705
+ al as terminalPreset,
11706
+ ol as useLucent,
11707
+ Hr as useMediaQuery,
11708
+ $i as useToast,
11709
+ wo as validateManifest
11709
11710
  };