haze-ui 1.23.0 → 1.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/dist/components/BottomSheet/BottomSheet.js +33 -16
  2. package/dist/components/Collapsible/Collapsible.js +34 -27
  3. package/dist/components/Combobox/Combobox.js +2 -1
  4. package/dist/components/ConfirmDialog/ConfirmDialog.js +60 -42
  5. package/dist/components/ContextMenu/ContextMenu.js +2 -1
  6. package/dist/components/ContextMenu/ContextMenuContent.js +33 -23
  7. package/dist/components/Datepicker/DatepickerCore.js +2 -1
  8. package/dist/components/Dialog/Dialog.js +40 -21
  9. package/dist/components/Drawer/Drawer.js +37 -18
  10. package/dist/components/DropdownMenu/DropdownMenu.js +27 -25
  11. package/dist/components/DropdownMenu/DropdownMenuContent.js +2 -2
  12. package/dist/components/Menu/Menu.js +43 -35
  13. package/dist/components/Popover/Popover.js +27 -25
  14. package/dist/components/Toast/Toast.js +25 -20
  15. package/dist/components/Toast/ToastContainer.js +31 -24
  16. package/dist/components/Tooltip/Tooltip.js +37 -34
  17. package/dist/css/bottom-sheet.css +1 -1
  18. package/dist/css/collapsible.css +1 -1
  19. package/dist/css/combobox.css +1 -1
  20. package/dist/css/confirm-dialog.css +1 -1
  21. package/dist/css/context-menu.css +1 -1
  22. package/dist/css/datepicker.css +1 -1
  23. package/dist/css/dialog.css +1 -1
  24. package/dist/css/drawer.css +1 -1
  25. package/dist/css/dropdown-menu.css +1 -1
  26. package/dist/css/menu.css +1 -1
  27. package/dist/css/popover.css +1 -1
  28. package/dist/css/toast.css +1 -1
  29. package/dist/css/tokens.css +1 -0
  30. package/dist/css/tool-call-card.css +1 -1
  31. package/dist/css/tooltip.css +1 -1
  32. package/dist/haze-ui.css +15 -14
  33. package/dist/tokens/index.js +2 -1
  34. package/dist/tokens/motion.js +6 -0
  35. package/dist/types/components/BottomSheet/BottomSheet.d.ts +3 -3
  36. package/dist/types/components/Collapsible/Collapsible.d.ts +1 -1
  37. package/dist/types/components/ConfirmDialog/ConfirmDialog.d.ts +3 -3
  38. package/dist/types/components/DropdownMenu/DropdownMenu.d.ts +7 -1
  39. package/dist/types/components/Popover/Popover.d.ts +7 -1
  40. package/dist/types/components/Toast/Toast.d.ts +3 -3
  41. package/dist/types/components/Tooltip/Tooltip.d.ts +4 -1
  42. package/dist/types/tokens/index.d.ts +1 -0
  43. package/dist/types/tokens/motion.d.ts +1 -0
  44. package/dist/types/utils/collision.d.ts +62 -0
  45. package/dist/types/utils/floating.d.ts +95 -19
  46. package/dist/types/utils/focus-scope.d.ts +25 -0
  47. package/dist/types/utils/focus.d.ts +23 -0
  48. package/dist/types/utils/presence.d.ts +22 -0
  49. package/dist/utils/collision.js +73 -0
  50. package/dist/utils/floating.js +195 -150
  51. package/dist/utils/focus-scope.js +63 -0
  52. package/dist/utils/focus.js +34 -0
  53. package/dist/utils/presence.js +72 -0
  54. package/package.json +2 -2
@@ -1,47 +1,55 @@
1
1
 
2
2
  import { classnames as e } from "../../utils/classnames.js";
3
- import { FloatingPanel as t, useFloating as n } from "../../utils/floating.js";
4
- import { useMenuKeyboard as r, useRovingTabindex as i } from "../../utils/menuKeyboard.js";
3
+ import { useFocusScope as t } from "../../utils/focus-scope.js";
4
+ import { FloatingPanel as n, useFloating as r } from "../../utils/floating.js";
5
+ import { useMenuKeyboard as i, useRovingTabindex as a } from "../../utils/menuKeyboard.js";
5
6
  /* empty css */
6
- import { jsx as a, jsxs as o } from "react/jsx-runtime";
7
- import { useRef as s } from "react";
8
- import { useControl as c } from "react-use-control";
7
+ import { jsx as o, jsxs as s } from "react/jsx-runtime";
8
+ import { useCallback as c, useRef as l } from "react";
9
+ import { useControl as u } from "react-use-control";
9
10
  //#region src/lib/components/Menu/Menu.tsx
10
- var l = "haze-Menu__container", u = "haze-Menu__panel";
11
- function d({ open: d, trigger: f, className: p, children: m }) {
12
- let [h, g] = c(d, !1), _ = s(null), v = s(null), y = n({
13
- open: h,
14
- setOpen: g,
15
- triggerRef: _,
16
- panelRef: v
11
+ var d = "haze-Menu__container", f = "haze-Menu__panel";
12
+ function p({ open: p, trigger: m, className: h, children: g }) {
13
+ let [_, v] = u(p, !1), y = l(null), b = l(null), x = r({
14
+ open: _,
15
+ setOpen: v,
16
+ triggerRef: y,
17
+ panelRef: b,
18
+ animated: !0
17
19
  });
18
- i({
19
- menuRef: v,
20
- active: h
20
+ a({
21
+ menuRef: b,
22
+ active: _
21
23
  });
22
- let b = r({
23
- menuRef: v,
24
- onClose: () => g(!1)
25
- });
26
- return /* @__PURE__ */ o("div", {
27
- className: e(l),
28
- children: [/* @__PURE__ */ a("span", {
29
- ref: _,
30
- style: y.triggerStyle,
31
- onPointerDown: y.onTriggerPointerDown,
32
- onClick: y.onTriggerClick,
33
- children: f
34
- }), /* @__PURE__ */ a(t, {
35
- ref: v,
36
- behavior: y,
24
+ let S = i({
25
+ menuRef: b,
26
+ onClose: () => v(!1)
27
+ }), C = t({
28
+ enabled: _,
29
+ autoFocus: !0,
30
+ returnFocus: !0
31
+ }), w = c((e) => {
32
+ b.current = e, C(e);
33
+ }, [b, C]);
34
+ return /* @__PURE__ */ s("div", {
35
+ className: e(d),
36
+ children: [/* @__PURE__ */ o("span", {
37
+ ref: y,
38
+ style: x.triggerStyle,
39
+ onPointerDown: x.onTriggerPointerDown,
40
+ onClick: x.onTriggerClick,
41
+ children: m
42
+ }), /* @__PURE__ */ o(n, {
43
+ ref: w,
44
+ behavior: x,
37
45
  placement: "bottom",
38
46
  role: "menu",
39
- visualClass: u,
40
- className: p,
41
- onKeyDown: b,
42
- children: m
47
+ visualClass: f,
48
+ className: h,
49
+ onKeyDown: S,
50
+ children: g
43
51
  })]
44
52
  });
45
53
  }
46
54
  //#endregion
47
- export { d as default };
55
+ export { p as default };
@@ -2,43 +2,45 @@
2
2
  import { FloatingPanel as e, useFloating as t } from "../../utils/floating.js";
3
3
  /* empty css */
4
4
  import { jsx as n, jsxs as r } from "react/jsx-runtime";
5
- import { useId as i, useRef as a } from "react";
6
- import { useControl as o } from "react-use-control";
5
+ import { useId as i, useMemo as a, useRef as o } from "react";
6
+ import { useControl as s } from "react-use-control";
7
7
  //#region src/lib/components/Popover/Popover.tsx
8
- var s = "haze-Popover__container", c = "haze-Popover__panelVisuals";
9
- function l({ content: l, open: u, className: d, children: f }) {
10
- let [p, m] = o(u, !1), h = i(), g = a(null), _ = a(null), v = t({
11
- open: p,
12
- setOpen: m,
13
- triggerRef: g,
14
- panelRef: _
8
+ var c = "haze-Popover__container", l = "haze-Popover__panelVisuals";
9
+ function u({ content: u, open: d, collisionPadding: f, className: p, children: m }) {
10
+ let [h, g] = s(d, !1), _ = i(), v = o(null), y = o(null), b = a(() => f === void 0 ? void 0 : { collisionPadding: f }, [f]), x = t({
11
+ open: h,
12
+ setOpen: g,
13
+ triggerRef: v,
14
+ panelRef: y,
15
+ animated: !0,
16
+ collision: b
15
17
  });
16
18
  return /* @__PURE__ */ r("span", {
17
- className: s,
19
+ className: c,
18
20
  children: [/* @__PURE__ */ n("span", {
19
- ref: g,
20
- style: v.triggerStyle,
21
+ ref: v,
22
+ style: x.triggerStyle,
21
23
  role: "button",
22
24
  tabIndex: 0,
23
25
  "aria-haspopup": "true",
24
- "aria-expanded": p,
25
- "aria-controls": h,
26
- onPointerDown: v.onTriggerPointerDown,
27
- onClick: v.onTriggerClick,
26
+ "aria-expanded": h,
27
+ "aria-controls": _,
28
+ onPointerDown: x.onTriggerPointerDown,
29
+ onClick: x.onTriggerClick,
28
30
  onKeyDown: (e) => {
29
- (e.key === "Enter" || e.key === " ") && (e.preventDefault(), v.onTriggerClick());
31
+ (e.key === "Enter" || e.key === " ") && (e.preventDefault(), x.onTriggerClick());
30
32
  },
31
- children: f
33
+ children: m
32
34
  }), /* @__PURE__ */ n(e, {
33
- ref: _,
34
- behavior: v,
35
+ ref: y,
36
+ behavior: x,
35
37
  placement: "bottom-span",
36
- id: h,
37
- visualClass: c,
38
- className: d,
39
- children: l
38
+ id: _,
39
+ visualClass: l,
40
+ className: p,
41
+ children: u
40
42
  })]
41
43
  });
42
44
  }
43
45
  //#endregion
44
- export { l as default };
46
+ export { u as default };
@@ -10,41 +10,46 @@ var o = "haze-Toast__base", s = {
10
10
  warning: "haze-Toast__warning",
11
11
  danger: "haze-Toast__danger"
12
12
  }, c = "haze-Toast__contentStyle", l = "haze-Toast__closeBtn";
13
- function u({ variant: u = "info", onClose: d, duration: f, children: p }) {
14
- let m = a(f), h = a(0), g = a(null), _ = a(!1), v = a(!1), y = a(d);
13
+ function u({ variant: u = "info", onClose: d, duration: f, children: p, className: m, ...h }) {
14
+ let g = a(f), _ = a(0), v = a(null), y = a(!1), b = a(!1), x = a(d);
15
15
  i(() => {
16
- y.current = d;
16
+ x.current = d;
17
17
  }, [d]);
18
- let b = r(() => {
19
- g.current !== null && (clearTimeout(g.current), g.current = null, m.current = Math.max(0, m.current - (Date.now() - h.current)));
20
- }, []), x = r(() => {
21
- g.current !== null || m.current <= 0 || (h.current = Date.now(), g.current = setTimeout(() => {
22
- g.current = null, y.current();
23
- }, m.current));
24
- }, []), S = r(() => {
25
- _.current || v.current ? b() : x();
26
- }, [b, x]);
18
+ let S = r(() => {
19
+ v.current !== null && (clearTimeout(v.current), v.current = null, g.current = Math.max(0, g.current - (Date.now() - _.current)));
20
+ }, []), C = r(() => {
21
+ v.current !== null || g.current <= 0 || (_.current = Date.now(), v.current = setTimeout(() => {
22
+ v.current = null, x.current();
23
+ }, g.current));
24
+ }, []), w = r(() => {
25
+ y.current || b.current ? S() : C();
26
+ }, [S, C]);
27
27
  return i(() => {
28
- if (!(f <= 0)) return m.current = f, !_.current && !v.current && x(), b;
28
+ if (!(f <= 0)) return g.current = f, !y.current && !b.current && C(), S;
29
29
  }, [
30
30
  f,
31
- x,
32
- b
31
+ C,
32
+ S
33
33
  ]), /* @__PURE__ */ n("div", {
34
34
  role: "alert",
35
35
  onPointerEnter: () => {
36
- _.current = !0, S();
36
+ y.current = !0, w();
37
37
  },
38
38
  onPointerLeave: () => {
39
- _.current = !1, S();
39
+ y.current = !1, w();
40
40
  },
41
41
  onFocus: () => {
42
- v.current = !0, S();
42
+ b.current = !0, w();
43
43
  },
44
44
  onBlur: () => {
45
- v.current = !1, S();
45
+ b.current = !1, w();
46
46
  },
47
- className: e([o, s[u]]),
47
+ ...h,
48
+ className: e([
49
+ o,
50
+ s[u],
51
+ m
52
+ ]),
48
53
  children: [/* @__PURE__ */ t("div", {
49
54
  className: c,
50
55
  children: p
@@ -1,45 +1,52 @@
1
1
 
2
2
  import { classnames as e } from "../../utils/classnames.js";
3
- import t from "./Toast.js";
4
- import { ToastProvider as n } from "./ToastContext.js";
3
+ import { Presence as t } from "../../utils/presence.js";
4
+ import n from "./Toast.js";
5
+ import { ToastProvider as r } from "./ToastContext.js";
5
6
  /* empty css */
6
- import { jsx as r, jsxs as i } from "react/jsx-runtime";
7
- import { useCallback as a, useRef as o, useState as s } from "react";
7
+ import { jsx as i, jsxs as a } from "react/jsx-runtime";
8
+ import { useCallback as o, useRef as s, useState as c } from "react";
8
9
  //#region src/lib/components/Toast/ToastContainer.tsx
9
- var c = "haze-ToastContainer__containerBase", l = {
10
+ var l = "haze-ToastContainer__containerBase", u = {
10
11
  "top-left": "haze-ToastContainer__top-left",
11
12
  "top-right": "haze-ToastContainer__top-right",
12
13
  "bottom-left": "haze-ToastContainer__bottom-left",
13
14
  "bottom-right": "haze-ToastContainer__bottom-right"
14
15
  };
15
- function u({ children: u, maxCount: d, placement: f = "bottom-right" }) {
16
- let [p, m] = s([]), h = o(0), g = a((e) => {
17
- h.current += 1, m((t) => {
16
+ function d({ children: d, maxCount: f, placement: p = "bottom-right" }) {
17
+ let [m, h] = c([]), [g, _] = c([]), v = s(0), y = o((e) => {
18
+ v.current += 1, h((t) => {
18
19
  let n = [...t, {
19
20
  ...e,
20
- id: h.current
21
+ id: v.current
21
22
  }];
22
- return d === void 0 || n.length <= d ? n : n.slice(n.length - d);
23
+ return f === void 0 || n.length <= f ? n : n.slice(n.length - f);
23
24
  });
24
- }, [d]), _ = a((e) => {
25
- m((t) => t.filter((t) => t.id !== e));
25
+ }, [f]), b = o((e) => {
26
+ _((t) => t.includes(e) ? t : [...t, e]);
27
+ }, []), x = o((e) => {
28
+ h((t) => t.filter((t) => t.id !== e)), _((t) => t.filter((t) => t !== e));
26
29
  }, []);
27
- return /* @__PURE__ */ i(n, {
30
+ return /* @__PURE__ */ a(r, {
28
31
  value: {
29
- toasts: p,
30
- addToast: g,
31
- removeToast: _
32
+ toasts: m,
33
+ addToast: y,
34
+ removeToast: b
32
35
  },
33
- children: [u, /* @__PURE__ */ r("div", {
34
- className: e([c, l[f]]),
35
- children: p.map((e) => /* @__PURE__ */ r(t, {
36
- variant: e.variant,
37
- duration: e.duration,
38
- onClose: () => _(e.id),
39
- children: e.content
36
+ children: [d, /* @__PURE__ */ i("div", {
37
+ className: e([l, u[p]]),
38
+ children: m.map((e) => /* @__PURE__ */ i(t, {
39
+ present: !g.includes(e.id),
40
+ onExited: () => x(e.id),
41
+ children: /* @__PURE__ */ i(n, {
42
+ variant: e.variant,
43
+ duration: e.duration,
44
+ onClose: () => b(e.id),
45
+ children: e.content
46
+ })
40
47
  }, e.id))
41
48
  })]
42
49
  });
43
50
  }
44
51
  //#endregion
45
- export { u as default, l as toastPlacements };
52
+ export { d as default, u as toastPlacements };
@@ -3,57 +3,60 @@ import { classnames as e } from "../../utils/classnames.js";
3
3
  import { floatingPlacementClasses as t, useFloating as n, useFloatingPosition as r } from "../../utils/floating.js";
4
4
  /* empty css */
5
5
  import { jsx as i, jsxs as a } from "react/jsx-runtime";
6
- import { useEffect as o, useId as s, useRef as c } from "react";
7
- import { useControl as l } from "react-use-control";
6
+ import { useEffect as o, useId as s, useMemo as c, useRef as l } from "react";
7
+ import { useControl as u } from "react-use-control";
8
8
  //#region src/lib/components/Tooltip/Tooltip.tsx
9
- var u = "haze-Tooltip__wrapper", d = "haze-Tooltip__bubble", f = {
9
+ var d = "haze-Tooltip__wrapper", f = "haze-Tooltip__bubble", p = {
10
10
  top: "top",
11
11
  bottom: "bottom-center",
12
12
  left: "left",
13
13
  right: "right"
14
14
  };
15
- function p({ content: p, position: m = "top", delay: h = 150, open: g, className: _, children: v }) {
16
- let [y, b] = l(g, !1), x = s(), S = c(null), C = c(null), w = f[m], T = n({
17
- open: y,
18
- setOpen: b,
19
- triggerRef: S,
20
- panelRef: C
15
+ function m({ content: m, position: h = "top", delay: g = 150, open: _, collisionPadding: v, className: y, children: b }) {
16
+ let [x, S] = u(_, !1), C = s(), w = l(null), T = l(null), E = p[h], D = c(() => v === void 0 ? void 0 : { collisionPadding: v }, [v]), O = n({
17
+ open: x,
18
+ setOpen: S,
19
+ triggerRef: w,
20
+ panelRef: T,
21
+ animated: !0
21
22
  });
22
23
  r({
23
- behavior: T,
24
- placement: w
24
+ behavior: O,
25
+ placement: E,
26
+ collision: D
25
27
  });
26
- let E = c(0);
27
- o(() => () => window.clearTimeout(E.current), []);
28
- let D = () => {
29
- window.clearTimeout(E.current), E.current = window.setTimeout(() => b(!0), h);
30
- }, O = () => {
31
- window.clearTimeout(E.current), b(!1);
28
+ let k = l(0);
29
+ o(() => () => window.clearTimeout(k.current), []);
30
+ let A = () => {
31
+ window.clearTimeout(k.current), k.current = window.setTimeout(() => S(!0), g);
32
+ }, j = () => {
33
+ window.clearTimeout(k.current), S(!1);
32
34
  };
33
35
  return /* @__PURE__ */ a("span", {
34
- className: e([u, _]),
36
+ className: e([d, y]),
35
37
  children: [/* @__PURE__ */ i("span", {
36
- ref: S,
37
- style: T.triggerStyle,
38
- "aria-describedby": x,
39
- onMouseEnter: D,
40
- onMouseLeave: O,
41
- onFocus: D,
42
- onBlur: O,
43
- children: v
38
+ ref: w,
39
+ style: O.triggerStyle,
40
+ "aria-describedby": C,
41
+ onMouseEnter: A,
42
+ onMouseLeave: j,
43
+ onFocus: A,
44
+ onBlur: j,
45
+ children: b
44
46
  }), /* @__PURE__ */ i("span", {
45
- id: x,
46
- ref: C,
47
+ id: C,
48
+ ref: T,
47
49
  role: "tooltip",
48
- ...T.panelAttrs,
50
+ "data-state": O.dataState,
51
+ ...O.panelAttrs,
49
52
  className: e([
50
- d,
51
- ...T.panelClasses,
52
- ...t(T, w)
53
+ f,
54
+ ...O.panelClasses,
55
+ ...t(O, E)
53
56
  ]),
54
- children: p
57
+ children: m
55
58
  })]
56
59
  });
57
60
  }
58
61
  //#endregion
59
- export { p as default };
62
+ export { m as default };
@@ -1,2 +1,2 @@
1
1
  /* haze-ui bottom-sheet — generated by scripts/split-css.mjs, do not edit */
2
- .haze-BottomSheet__overlay{z-index:100;-webkit-align-items:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;background:#0006;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.haze-BottomSheet__sheet{background:var(--haze-color-bg);border-radius:var(--haze-radius-xl) var(--haze-radius-xl) 0 0;padding:var(--haze-space-4) var(--haze-space-6) calc(var(--haze-space-4) + env(safe-area-inset-bottom));width:100%;max-width:640px;max-height:80vh;font-family:var(--haze-font-sans);color:var(--haze-color-text);box-shadow:var(--haze-shadow-xl);overflow-y:auto}.haze-BottomSheet__handle{background:var(--haze-color-border);border-radius:var(--haze-radius-full);width:2rem;height:.25rem;margin:0 auto var(--haze-space-4)}
2
+ .haze-BottomSheet__overlay{z-index:100;-webkit-align-items:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;background:#0006;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.haze-BottomSheet__overlay[data-state=open]{-webkit-animation:haze-sheet-backdrop-in-haze-BottomSheet__overlay var(--haze-duration-normal) var(--haze-ease);animation:haze-sheet-backdrop-in-haze-BottomSheet__overlay var(--haze-duration-normal) var(--haze-ease)}.haze-BottomSheet__overlay[data-state=closed]{-webkit-animation:haze-sheet-backdrop-out-haze-BottomSheet__overlay var(--haze-duration-fast) var(--haze-ease);animation:haze-sheet-backdrop-out-haze-BottomSheet__overlay var(--haze-duration-fast) var(--haze-ease)}@keyframes haze-sheet-backdrop-in-haze-BottomSheet__overlay{0%{opacity:0}}@keyframes haze-sheet-backdrop-out-haze-BottomSheet__overlay{to{opacity:0}}.haze-BottomSheet__sheet{background:var(--haze-color-bg);border-radius:var(--haze-radius-xl) var(--haze-radius-xl) 0 0;padding:var(--haze-space-4) var(--haze-space-6) calc(var(--haze-space-4) + env(safe-area-inset-bottom));width:100%;max-width:640px;max-height:80vh;font-family:var(--haze-font-sans);color:var(--haze-color-text);box-shadow:var(--haze-shadow-xl);overflow-y:auto}[data-state=open] .haze-BottomSheet__sheet{-webkit-animation:haze-sheet-in-haze-BottomSheet__sheet var(--haze-duration-normal) var(--haze-ease);animation:haze-sheet-in-haze-BottomSheet__sheet var(--haze-duration-normal) var(--haze-ease)}[data-state=closed] .haze-BottomSheet__sheet{-webkit-animation:haze-sheet-out-haze-BottomSheet__sheet var(--haze-duration-fast) var(--haze-ease);animation:haze-sheet-out-haze-BottomSheet__sheet var(--haze-duration-fast) var(--haze-ease)}@keyframes haze-sheet-in-haze-BottomSheet__sheet{0%{transform:translateY(100%)}}@keyframes haze-sheet-out-haze-BottomSheet__sheet{to{transform:translateY(100%)}}.haze-BottomSheet__handle{background:var(--haze-color-border);border-radius:var(--haze-radius-full);width:2rem;height:.25rem;margin:0 auto var(--haze-space-4)}
@@ -1,2 +1,2 @@
1
1
  /* haze-ui collapsible — generated by scripts/split-css.mjs, do not edit */
2
- .haze-Collapsible__base{font-family:var(--haze-font-sans)}.haze-Collapsible__triggerStyle{cursor:pointer;-webkit-user-select:none;user-select:none}.haze-Collapsible__contentStyle{overflow:hidden}
2
+ .haze-Collapsible__base{font-family:var(--haze-font-sans)}.haze-Collapsible__triggerStyle{cursor:pointer;-webkit-user-select:none;user-select:none}.haze-Collapsible__contentOuter{display:-ms-grid;-ms-grid-rows:1fr;-webkit-transition:grid-template-rows var(--haze-duration-normal) var(--haze-ease-in-out);transition:grid-template-rows var(--haze-duration-normal) var(--haze-ease-in-out);grid-template-rows:1fr;display:grid}.haze-Collapsible__contentOuter[data-state=closed]{-ms-grid-rows:0fr;visibility:hidden;-webkit-transition:grid-template-rows var(--haze-duration-normal) var(--haze-ease-in-out),visibility 0s var(--haze-duration-normal);transition:grid-template-rows var(--haze-duration-normal) var(--haze-ease-in-out),visibility 0s var(--haze-duration-normal);grid-template-rows:0fr}.haze-Collapsible__contentInner{min-height:0;overflow:hidden}
@@ -1,4 +1,4 @@
1
1
  /* haze-ui combobox — generated by scripts/split-css.mjs, do not edit */
2
2
  .haze-Combobox__wrapper{width:100%;display:inline-block;position:relative}.haze-Combobox__input{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);width:100%;color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);padding:var(--haze-space-2) var(--haze-space-3);line-height:var(--haze-leading-normal);box-sizing:border-box;transition:border-color .15s,box-shadow .15s;display:block}.haze-Combobox__input:focus{border-color:var(--haze-color-primary);box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Combobox__listbox{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);min-width:100%;max-height:200px;box-shadow:var(--haze-shadow-lg);overflow-y:auto}
3
3
  .haze-ComboboxOption__option{padding:var(--haze-space-2) var(--haze-space-3);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);color:var(--haze-color-text);cursor:pointer;align-items:center;transition:background .1s;display:flex}.haze-ComboboxOption__option:hover{background:var(--haze-color-bg-subtle)}.haze-ComboboxOption__option:active{background:var(--haze-color-bg-muted)}.haze-ComboboxOption__highlightedStyle{background:var(--haze-color-bg-subtle)}.haze-ComboboxOption__selectedStyle{font-weight:var(--haze-weight-medium);color:var(--haze-color-primary)}
4
- .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
4
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__floatingAnimated[data-state=open]{-webkit-animation:haze-floating-in-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease);animation:haze-floating-in-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease)}.haze-floating__floatingAnimated[data-state=closed]{-webkit-animation:haze-floating-out-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease) forwards;animation:haze-floating-out-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease) forwards}@keyframes haze-floating-in-haze-floating__floatingAnimated{0%{opacity:0}}@keyframes haze-floating-out-haze-floating__floatingAnimated{to{opacity:0}}.haze-floating__anchoredBottom,.haze-floating__anchoredBottomSpan{position-area:bottom span-right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
@@ -1,2 +1,2 @@
1
1
  /* haze-ui confirm-dialog — generated by scripts/split-css.mjs, do not edit */
2
- .haze-ConfirmDialog__overlay{z-index:100;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.haze-ConfirmDialog__dialog{background:var(--haze-color-bg);border-radius:var(--haze-radius-xl);padding:var(--haze-space-6);box-shadow:var(--haze-shadow-xl);width:100%;max-width:480px;font-family:var(--haze-font-sans);color:var(--haze-color-text)}.haze-ConfirmDialog__header{margin-bottom:var(--haze-space-4);font-size:var(--haze-text-lg);font-weight:var(--haze-weight-semibold)}.haze-ConfirmDialog__body{margin-bottom:var(--haze-space-6);font-size:var(--haze-text-sm);color:var(--haze-color-text-muted);line-height:var(--haze-leading-relaxed)}.haze-ConfirmDialog__footer{justify-content:flex-end;gap:var(--haze-space-3);display:flex}.haze-ConfirmDialog__btn{padding:var(--haze-space-2) var(--haze-space-4);border-radius:var(--haze-radius-md);font-size:var(--haze-text-sm);font-family:var(--haze-font-sans);font-weight:var(--haze-weight-medium);cursor:pointer;transition:background .15s,border-color .15s}.haze-ConfirmDialog__cancelBtn{background:var(--haze-color-bg);border:1px solid var(--haze-color-border);color:var(--haze-color-text)}.haze-ConfirmDialog__cancelBtn:hover{background:var(--haze-color-bg-muted)}.haze-ConfirmDialog__confirmBtn{background:var(--haze-color-primary);border:1px solid var(--haze-color-primary);color:var(--haze-color-bg)}.haze-ConfirmDialog__confirmBtn:hover{opacity:.9}.haze-ConfirmDialog__dangerBtn{background:var(--haze-color-danger);border:1px solid var(--haze-color-danger);color:var(--haze-color-text-inverse)}.haze-ConfirmDialog__dangerBtn:hover{background:var(--haze-color-danger-hover);border-color:var(--haze-color-danger-hover)}.haze-ConfirmDialog__dangerBtn:active{background:var(--haze-color-danger-active);border-color:var(--haze-color-danger-active)}
2
+ .haze-ConfirmDialog__overlay{z-index:100;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.haze-ConfirmDialog__overlay[data-state=open]{-webkit-animation:haze-confirm-backdrop-in-haze-ConfirmDialog__overlay var(--haze-duration-normal) var(--haze-ease);animation:haze-confirm-backdrop-in-haze-ConfirmDialog__overlay var(--haze-duration-normal) var(--haze-ease)}.haze-ConfirmDialog__overlay[data-state=closed]{-webkit-animation:haze-confirm-backdrop-out-haze-ConfirmDialog__overlay var(--haze-duration-fast) var(--haze-ease);animation:haze-confirm-backdrop-out-haze-ConfirmDialog__overlay var(--haze-duration-fast) var(--haze-ease)}@keyframes haze-confirm-backdrop-in-haze-ConfirmDialog__overlay{0%{opacity:0}}@keyframes haze-confirm-backdrop-out-haze-ConfirmDialog__overlay{to{opacity:0}}.haze-ConfirmDialog__dialog{background:var(--haze-color-bg);border-radius:var(--haze-radius-xl);padding:var(--haze-space-6);box-shadow:var(--haze-shadow-xl);width:100%;max-width:480px;font-family:var(--haze-font-sans);color:var(--haze-color-text)}[data-state=open] .haze-ConfirmDialog__dialog{-webkit-animation:haze-confirm-in-haze-ConfirmDialog__dialog var(--haze-duration-normal) var(--haze-ease);animation:haze-confirm-in-haze-ConfirmDialog__dialog var(--haze-duration-normal) var(--haze-ease)}[data-state=closed] .haze-ConfirmDialog__dialog{-webkit-animation:haze-confirm-out-haze-ConfirmDialog__dialog var(--haze-duration-fast) var(--haze-ease);animation:haze-confirm-out-haze-ConfirmDialog__dialog var(--haze-duration-fast) var(--haze-ease)}@keyframes haze-confirm-in-haze-ConfirmDialog__dialog{0%{opacity:0;transform:scale(.97)}}@keyframes haze-confirm-out-haze-ConfirmDialog__dialog{to{opacity:0;transform:scale(.97)}}.haze-ConfirmDialog__header{margin-bottom:var(--haze-space-4);font-size:var(--haze-text-lg);font-weight:var(--haze-weight-semibold)}.haze-ConfirmDialog__body{margin-bottom:var(--haze-space-6);font-size:var(--haze-text-sm);color:var(--haze-color-text-muted);line-height:var(--haze-leading-relaxed)}.haze-ConfirmDialog__footer{justify-content:flex-end;gap:var(--haze-space-3);display:flex}.haze-ConfirmDialog__btn{padding:var(--haze-space-2) var(--haze-space-4);border-radius:var(--haze-radius-md);font-size:var(--haze-text-sm);font-family:var(--haze-font-sans);font-weight:var(--haze-weight-medium);cursor:pointer;-webkit-transition:background var(--haze-duration-fast) var(--haze-ease),border-color var(--haze-duration-fast) var(--haze-ease);transition:background var(--haze-duration-fast) var(--haze-ease),border-color var(--haze-duration-fast) var(--haze-ease)}.haze-ConfirmDialog__cancelBtn{background:var(--haze-color-bg);border:1px solid var(--haze-color-border);color:var(--haze-color-text)}.haze-ConfirmDialog__cancelBtn:hover{background:var(--haze-color-bg-muted)}.haze-ConfirmDialog__confirmBtn{background:var(--haze-color-primary);border:1px solid var(--haze-color-primary);color:var(--haze-color-bg)}.haze-ConfirmDialog__confirmBtn:hover{opacity:.9}.haze-ConfirmDialog__dangerBtn{background:var(--haze-color-danger);border:1px solid var(--haze-color-danger);color:var(--haze-color-text-inverse)}.haze-ConfirmDialog__dangerBtn:hover{background:var(--haze-color-danger-hover);border-color:var(--haze-color-danger-hover)}.haze-ConfirmDialog__dangerBtn:active{background:var(--haze-color-danger-active);border-color:var(--haze-color-danger-active)}
@@ -4,4 +4,4 @@
4
4
  .haze-ContextMenuItem__item{width:100%;padding:var(--haze-space-2) var(--haze-space-3);cursor:pointer;font-size:var(--haze-text-sm);font-family:var(--haze-font-sans);color:var(--haze-color-text);border-radius:var(--haze-radius-sm);text-align:left;background:0 0;border:none;align-items:center;transition:background .15s;display:flex}.haze-ContextMenuItem__item:hover{background:var(--haze-color-bg-muted)}.haze-ContextMenuItem__item:active{background:var(--haze-color-bg-subtle)}.haze-ContextMenuItem__item:disabled{opacity:.5;cursor:not-allowed}
5
5
  .haze-ContextMenuSeparator__separator{height:1px;margin:var(--haze-space-1) 0;background:var(--haze-color-border)}
6
6
  .haze-ContextMenuTrigger__trigger{display:contents}
7
- .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
7
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__floatingAnimated[data-state=open]{-webkit-animation:haze-floating-in-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease);animation:haze-floating-in-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease)}.haze-floating__floatingAnimated[data-state=closed]{-webkit-animation:haze-floating-out-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease) forwards;animation:haze-floating-out-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease) forwards}@keyframes haze-floating-in-haze-floating__floatingAnimated{0%{opacity:0}}@keyframes haze-floating-out-haze-floating__floatingAnimated{to{opacity:0}}.haze-floating__anchoredBottom,.haze-floating__anchoredBottomSpan{position-area:bottom span-right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
@@ -1,4 +1,4 @@
1
1
  /* haze-ui datepicker — generated by scripts/split-css.mjs, do not edit */
2
2
  .haze-Calendar__calendarWrapper{padding:var(--haze-space-3);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm)}.haze-Calendar__header{-webkit-box-pack:justify;align-items:center;-ms-flex-pack:space-between;margin-bottom:var(--haze-space-2);justify-content:space-between;display:flex}.haze-Calendar__headerBtn{appearance:none;color:var(--haze-color-text);cursor:pointer;padding:var(--haze-space-1);border-radius:var(--haze-radius-sm);font-size:var(--haze-text-sm);background:0 0;border:none;line-height:1}.haze-Calendar__headerBtn:hover{background:var(--haze-color-bg-subtle)}.haze-Calendar__headerBtn:focus-visible{box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Calendar__headerTitle{font-weight:var(--haze-weight-medium);color:var(--haze-color-text)}.haze-Calendar__grid{display:-ms-grid;-ms-grid-columns:repeat(7, 1fr);text-align:center;grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.haze-Calendar__rowContents,.haze-Calendar__cellContents{display:contents}.haze-Calendar__weekday{padding:var(--haze-space-1);font-weight:var(--haze-weight-medium);color:var(--haze-color-text-muted);font-size:var(--haze-text-xs)}.haze-Calendar__dayBtn{appearance:none;color:var(--haze-color-text);cursor:pointer;padding:var(--haze-space-2);border-radius:var(--haze-radius-sm);font-size:var(--haze-text-sm);background:0 0;border:none;line-height:1.5;transition:background .1s}.haze-Calendar__dayBtn:hover{background:var(--haze-color-bg-subtle)}.haze-Calendar__dayBtn:focus-visible{box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Calendar__dayBtn:disabled{opacity:.3;cursor:not-allowed}.haze-Calendar__daySelected{background:var(--haze-color-primary);color:var(--haze-color-text-inverse)}.haze-Calendar__daySelected:hover{background:var(--haze-color-primary-hover)}.haze-Calendar__dayOutside{color:var(--haze-color-text-muted)}
3
3
  .haze-DatepickerCore__wrapper{display:inline-block;position:relative}.haze-DatepickerCore__input{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);width:100%;color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);padding:var(--haze-space-2) var(--haze-space-3);line-height:var(--haze-leading-normal);cursor:pointer;box-sizing:border-box;transition:border-color .15s,box-shadow .15s;display:block}.haze-DatepickerCore__input:focus{border-color:var(--haze-color-primary);box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-DatepickerCore__dropdown{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);box-shadow:var(--haze-shadow-lg)}
4
- .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
4
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__floatingAnimated[data-state=open]{-webkit-animation:haze-floating-in-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease);animation:haze-floating-in-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease)}.haze-floating__floatingAnimated[data-state=closed]{-webkit-animation:haze-floating-out-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease) forwards;animation:haze-floating-out-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease) forwards}@keyframes haze-floating-in-haze-floating__floatingAnimated{0%{opacity:0}}@keyframes haze-floating-out-haze-floating__floatingAnimated{to{opacity:0}}.haze-floating__anchoredBottom,.haze-floating__anchoredBottomSpan{position-area:bottom span-right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
@@ -1,2 +1,2 @@
1
1
  /* haze-ui dialog — generated by scripts/split-css.mjs, do not edit */
2
- .haze-Dialog__overlay{border-radius:var(--haze-radius-xl);padding:var(--haze-space-6);background:var(--haze-color-bg);color:var(--haze-color-text);font-family:var(--haze-font-sans);box-shadow:var(--haze-shadow-xl);border:none;width:100%;max-width:480px}.haze-Dialog__overlay::backdrop{background:#0006}.haze-Dialog__overlay:focus-visible{box-shadow:var(--haze-shadow-xl),0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Dialog__titleText{margin:0 0 var(--haze-space-4);font-size:var(--haze-text-lg);font-weight:var(--haze-weight-semibold)}
2
+ .haze-Dialog__overlay{border-radius:var(--haze-radius-xl);padding:var(--haze-space-6);background:var(--haze-color-bg);color:var(--haze-color-text);font-family:var(--haze-font-sans);box-shadow:var(--haze-shadow-xl);border:none;width:100%;max-width:480px}.haze-Dialog__overlay[open][data-state=open]{-webkit-animation:haze-dialog-in-haze-Dialog__overlay var(--haze-duration-normal) var(--haze-ease);animation:haze-dialog-in-haze-Dialog__overlay var(--haze-duration-normal) var(--haze-ease)}.haze-Dialog__overlay[open][data-state=closed]{-webkit-animation:haze-dialog-out-haze-Dialog__overlay var(--haze-duration-fast) var(--haze-ease);animation:haze-dialog-out-haze-Dialog__overlay var(--haze-duration-fast) var(--haze-ease)}.haze-Dialog__overlay::backdrop{background:#0006}.haze-Dialog__overlay[open][data-state=open]::backdrop{-webkit-animation:haze-dialog-backdrop-in-haze-Dialog__overlay var(--haze-duration-normal) var(--haze-ease);animation:haze-dialog-backdrop-in-haze-Dialog__overlay var(--haze-duration-normal) var(--haze-ease)}.haze-Dialog__overlay[open][data-state=closed]::backdrop{-webkit-animation:haze-dialog-backdrop-out-haze-Dialog__overlay var(--haze-duration-fast) var(--haze-ease);animation:haze-dialog-backdrop-out-haze-Dialog__overlay var(--haze-duration-fast) var(--haze-ease)}.haze-Dialog__overlay:focus-visible{box-shadow:var(--haze-shadow-xl),0 0 0 3px var(--haze-color-focus-ring);outline:none}@keyframes haze-dialog-in-haze-Dialog__overlay{0%{opacity:0;transform:scale(.97)}}@keyframes haze-dialog-out-haze-Dialog__overlay{to{opacity:0;transform:scale(.97)}}@keyframes haze-dialog-backdrop-in-haze-Dialog__overlay{0%{opacity:0}}@keyframes haze-dialog-backdrop-out-haze-Dialog__overlay{to{opacity:0}}.haze-Dialog__titleText{margin:0 0 var(--haze-space-4);font-size:var(--haze-text-lg);font-weight:var(--haze-weight-semibold)}
@@ -1,2 +1,2 @@
1
1
  /* haze-ui drawer — generated by scripts/split-css.mjs, do not edit */
2
- .haze-Drawer__overlay{background:var(--haze-color-bg);color:var(--haze-color-text);font-family:var(--haze-font-sans);border:none;max-width:100vw;max-height:100vh;padding:0;overflow:auto}.haze-Drawer__overlay::backdrop{background:#0006}.haze-Drawer__overlay:focus-visible{box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Drawer__left{width:320px;min-width:280px;max-width:85vw;height:100vh;margin-left:0}.haze-Drawer__right{width:320px;min-width:280px;max-width:85vw;height:100vh;margin-left:auto}.haze-Drawer__top{width:100vw;height:320px;margin-top:0}.haze-Drawer__bottom{width:100vw;height:320px;margin-top:auto}
2
+ .haze-Drawer__overlay{background:var(--haze-color-bg);color:var(--haze-color-text);font-family:var(--haze-font-sans);border:none;max-width:100vw;max-height:100vh;padding:0;overflow:auto}.haze-Drawer__overlay[open][data-state=open]{-webkit-animation:haze-drawer-in-haze-Drawer__overlay var(--haze-duration-normal) var(--haze-ease);animation:haze-drawer-in-haze-Drawer__overlay var(--haze-duration-normal) var(--haze-ease)}.haze-Drawer__overlay[open][data-state=closed]{-webkit-animation:haze-drawer-out-haze-Drawer__overlay var(--haze-duration-fast) var(--haze-ease);animation:haze-drawer-out-haze-Drawer__overlay var(--haze-duration-fast) var(--haze-ease)}.haze-Drawer__overlay::backdrop{background:#0006}.haze-Drawer__overlay[open][data-state=open]::backdrop{-webkit-animation:haze-drawer-backdrop-in-haze-Drawer__overlay var(--haze-duration-normal) var(--haze-ease);animation:haze-drawer-backdrop-in-haze-Drawer__overlay var(--haze-duration-normal) var(--haze-ease)}.haze-Drawer__overlay[open][data-state=closed]::backdrop{-webkit-animation:haze-drawer-backdrop-out-haze-Drawer__overlay var(--haze-duration-fast) var(--haze-ease);animation:haze-drawer-backdrop-out-haze-Drawer__overlay var(--haze-duration-fast) var(--haze-ease)}.haze-Drawer__overlay:focus-visible{box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}@keyframes haze-drawer-in-haze-Drawer__overlay{0%{-webkit-transform:translate(var(--haze-drawer-from-x,0), var(--haze-drawer-from-y,0));-moz-transform:translate(var(--haze-drawer-from-x,0), var(--haze-drawer-from-y,0));-ms-transform:translate(var(--haze-drawer-from-x,0), var(--haze-drawer-from-y,0));transform:translate(var(--haze-drawer-from-x,0), var(--haze-drawer-from-y,0))}}@keyframes haze-drawer-out-haze-Drawer__overlay{to{-webkit-transform:translate(var(--haze-drawer-from-x,0), var(--haze-drawer-from-y,0));-moz-transform:translate(var(--haze-drawer-from-x,0), var(--haze-drawer-from-y,0));-ms-transform:translate(var(--haze-drawer-from-x,0), var(--haze-drawer-from-y,0));transform:translate(var(--haze-drawer-from-x,0), var(--haze-drawer-from-y,0))}}@keyframes haze-drawer-backdrop-in-haze-Drawer__overlay{0%{opacity:0}}@keyframes haze-drawer-backdrop-out-haze-Drawer__overlay{to{opacity:0}}.haze-Drawer__left{--haze-drawer-from-x:-100%;--haze-drawer-from-y:0;width:320px;min-width:280px;max-width:85vw;height:100vh;margin-left:0}.haze-Drawer__right{--haze-drawer-from-x:100%;--haze-drawer-from-y:0;width:320px;min-width:280px;max-width:85vw;height:100vh;margin-left:auto}.haze-Drawer__top{--haze-drawer-from-x:0;--haze-drawer-from-y:-100%;width:100vw;height:320px;margin-top:0}.haze-Drawer__bottom{--haze-drawer-from-x:0;--haze-drawer-from-y:100%;width:100vw;height:320px;margin-top:auto}
@@ -4,4 +4,4 @@
4
4
  .haze-DropdownMenuItem__item{width:100%;padding:var(--haze-space-2) var(--haze-space-3);cursor:pointer;font-size:var(--haze-text-sm);font-family:var(--haze-font-sans);color:var(--haze-color-text);border-radius:var(--haze-radius-sm);text-align:left;background:0 0;border:none;align-items:center;transition:background .15s;display:flex}.haze-DropdownMenuItem__item:hover{background:var(--haze-color-bg-muted)}.haze-DropdownMenuItem__item:active{background:var(--haze-color-bg-subtle)}.haze-DropdownMenuItem__item:disabled{opacity:.5;cursor:not-allowed}
5
5
  .haze-DropdownMenuSeparator__separator{height:1px;margin:var(--haze-space-1) 0;background:var(--haze-color-border)}
6
6
  .haze-DropdownMenuTrigger__trigger{cursor:pointer;font:inherit;color:inherit;background:0 0;border:none;padding:0}
7
- .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
7
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__floatingAnimated[data-state=open]{-webkit-animation:haze-floating-in-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease);animation:haze-floating-in-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease)}.haze-floating__floatingAnimated[data-state=closed]{-webkit-animation:haze-floating-out-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease) forwards;animation:haze-floating-out-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease) forwards}@keyframes haze-floating-in-haze-floating__floatingAnimated{0%{opacity:0}}@keyframes haze-floating-out-haze-floating__floatingAnimated{to{opacity:0}}.haze-floating__anchoredBottom,.haze-floating__anchoredBottomSpan{position-area:bottom span-right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
package/dist/css/menu.css CHANGED
@@ -2,4 +2,4 @@
2
2
  .haze-Menu__container{display:inline-flex;position:relative}.haze-Menu__panel{min-width:160px;padding:var(--haze-space-1) 0;border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);box-shadow:var(--haze-shadow-lg)}
3
3
  .haze-MenuDivider__divider{height:1px;margin:var(--haze-space-1) 0;background:var(--haze-color-border)}
4
4
  .haze-MenuItem__item{width:100%;padding:var(--haze-space-2) var(--haze-space-3);color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;transition:background .1s;display:flex}.haze-MenuItem__item:hover{background:var(--haze-color-bg-subtle)}.haze-MenuItem__item:active{background:var(--haze-color-bg-muted)}.haze-MenuItem__item:focus-visible{background:var(--haze-color-bg-subtle);box-shadow:inset 0 0 0 2px var(--haze-color-focus-ring);outline:none}.haze-MenuItem__item:disabled{opacity:.5;cursor:not-allowed}
5
- .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
5
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__floatingAnimated[data-state=open]{-webkit-animation:haze-floating-in-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease);animation:haze-floating-in-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease)}.haze-floating__floatingAnimated[data-state=closed]{-webkit-animation:haze-floating-out-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease) forwards;animation:haze-floating-out-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease) forwards}@keyframes haze-floating-in-haze-floating__floatingAnimated{0%{opacity:0}}@keyframes haze-floating-out-haze-floating__floatingAnimated{to{opacity:0}}.haze-floating__anchoredBottom,.haze-floating__anchoredBottomSpan{position-area:bottom span-right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
@@ -1,3 +1,3 @@
1
1
  /* haze-ui popover — generated by scripts/split-css.mjs, do not edit */
2
2
  .haze-Popover__container{display:inline-flex;position:relative}.haze-Popover__panelVisuals{padding:var(--haze-space-3);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);box-shadow:var(--haze-shadow-lg);min-width:200px}
3
- .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
3
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__floatingAnimated[data-state=open]{-webkit-animation:haze-floating-in-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease);animation:haze-floating-in-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease)}.haze-floating__floatingAnimated[data-state=closed]{-webkit-animation:haze-floating-out-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease) forwards;animation:haze-floating-out-haze-floating__floatingAnimated var(--haze-duration-fast) var(--haze-ease) forwards}@keyframes haze-floating-in-haze-floating__floatingAnimated{0%{opacity:0}}@keyframes haze-floating-out-haze-floating__floatingAnimated{to{opacity:0}}.haze-floating__anchoredBottom,.haze-floating__anchoredBottomSpan{position-area:bottom span-right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
@@ -1,3 +1,3 @@
1
1
  /* haze-ui toast — generated by scripts/split-css.mjs, do not edit */
2
- .haze-Toast__base{-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;gap:var(--haze-space-3);padding:var(--haze-space-3) var(--haze-space-4);border-radius:var(--haze-radius-md);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);line-height:var(--haze-leading-normal);box-shadow:var(--haze-shadow-lg);pointer-events:auto;animation:.2s ease-out toastIn-haze-Toast__base;display:flex}@keyframes toastIn-haze-Toast__base{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.haze-Toast__info{background:var(--haze-color-bg);color:var(--haze-color-text);border:1px solid var(--haze-color-border)}.haze-Toast__success{background:var(--haze-color-success-subtle);color:var(--haze-color-text);border:1px solid color-mix(in srgb, var(--haze-color-success) 25%, transparent)}.haze-Toast__warning{background:var(--haze-color-warning-subtle);color:var(--haze-color-text);border:1px solid color-mix(in srgb, var(--haze-color-warning) 25%, transparent)}.haze-Toast__danger{background:var(--haze-color-danger-subtle);color:var(--haze-color-text);border:1px solid color-mix(in srgb, var(--haze-color-danger) 25%, transparent)}.haze-Toast__contentStyle{flex:1}.haze-Toast__closeBtn{appearance:none;color:inherit;cursor:pointer;font-size:var(--haze-text-lg);opacity:.6;background:0 0;border:none;justify-content:center;align-items:center;min-width:24px;min-height:24px;padding:0;line-height:1;transition:opacity .15s;display:inline-flex}.haze-Toast__closeBtn:hover{opacity:1}
2
+ .haze-Toast__base{-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;gap:var(--haze-space-3);padding:var(--haze-space-3) var(--haze-space-4);border-radius:var(--haze-radius-md);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);line-height:var(--haze-leading-normal);box-shadow:var(--haze-shadow-lg);pointer-events:auto;display:flex}.haze-Toast__base[data-state=open]{-webkit-animation:toastIn-haze-Toast__base var(--haze-duration-normal) var(--haze-ease);animation:toastIn-haze-Toast__base var(--haze-duration-normal) var(--haze-ease)}.haze-Toast__base[data-state=closed]{-webkit-animation:toastOut-haze-Toast__base var(--haze-duration-fast) var(--haze-ease);animation:toastOut-haze-Toast__base var(--haze-duration-fast) var(--haze-ease)}@keyframes toastIn-haze-Toast__base{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes toastOut-haze-Toast__base{to{opacity:0;transform:translateY(-8px)}}.haze-Toast__info{background:var(--haze-color-bg);color:var(--haze-color-text);border:1px solid var(--haze-color-border)}.haze-Toast__success{background:var(--haze-color-success-subtle);color:var(--haze-color-text);border:1px solid color-mix(in srgb, var(--haze-color-success) 25%, transparent)}.haze-Toast__warning{background:var(--haze-color-warning-subtle);color:var(--haze-color-text);border:1px solid color-mix(in srgb, var(--haze-color-warning) 25%, transparent)}.haze-Toast__danger{background:var(--haze-color-danger-subtle);color:var(--haze-color-text);border:1px solid color-mix(in srgb, var(--haze-color-danger) 25%, transparent)}.haze-Toast__contentStyle{flex:1}.haze-Toast__closeBtn{appearance:none;color:inherit;cursor:pointer;font-size:var(--haze-text-lg);opacity:.6;background:0 0;border:none;justify-content:center;align-items:center;min-width:24px;min-height:24px;padding:0;line-height:1;transition:opacity .15s;display:inline-flex}.haze-Toast__closeBtn:hover{opacity:1}
3
3
  .haze-ToastContainer__containerBase{z-index:9999;gap:var(--haze-space-2);pointer-events:none;flex-direction:column;display:flex;position:fixed}.haze-ToastContainer__top-left{top:calc(var(--haze-space-4) + env(safe-area-inset-top));left:calc(var(--haze-space-4) + env(safe-area-inset-left))}.haze-ToastContainer__top-right{top:calc(var(--haze-space-4) + env(safe-area-inset-top));right:calc(var(--haze-space-4) + env(safe-area-inset-right))}.haze-ToastContainer__bottom-left{bottom:calc(var(--haze-space-4) + env(safe-area-inset-bottom));left:calc(var(--haze-space-4) + env(safe-area-inset-left))}.haze-ToastContainer__bottom-right{bottom:calc(var(--haze-space-4) + env(safe-area-inset-bottom));right:calc(var(--haze-space-4) + env(safe-area-inset-right))}