@almadar/ui 4.57.5 → 5.0.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 (41) hide show
  1. package/dist/avl/index.cjs +270 -69
  2. package/dist/avl/index.js +270 -69
  3. package/dist/components/index.cjs +101 -68
  4. package/dist/components/index.js +101 -68
  5. package/dist/context/index.cjs +199 -0
  6. package/dist/context/index.js +199 -0
  7. package/dist/context/themeTokens.d.ts +1 -1
  8. package/dist/docs/index.cjs +21 -21
  9. package/dist/docs/index.js +21 -21
  10. package/dist/marketing/index.cjs +18 -18
  11. package/dist/marketing/index.js +18 -18
  12. package/dist/providers/index.cjs +101 -68
  13. package/dist/providers/index.js +101 -68
  14. package/dist/runtime/index.cjs +270 -69
  15. package/dist/runtime/index.js +270 -69
  16. package/package.json +2 -2
  17. package/tailwind-preset.cjs +118 -3
  18. package/themes/_contract.md +198 -0
  19. package/themes/almadar-website.css +212 -0
  20. package/themes/almadar.css +210 -0
  21. package/themes/arctic.css +210 -0
  22. package/themes/atelier.css +427 -0
  23. package/themes/copper.css +210 -0
  24. package/themes/ember.css +210 -0
  25. package/themes/forest.css +210 -0
  26. package/themes/gazette.css +411 -0
  27. package/themes/index.css +7 -0
  28. package/themes/kiosk.css +412 -0
  29. package/themes/lavender.css +210 -0
  30. package/themes/midnight.css +210 -0
  31. package/themes/minimalist.css +210 -0
  32. package/themes/neon.css +210 -0
  33. package/themes/ocean.css +210 -0
  34. package/themes/prism.css +406 -0
  35. package/themes/rose.css +210 -0
  36. package/themes/sand.css +210 -0
  37. package/themes/slate.css +210 -0
  38. package/themes/sunset.css +210 -0
  39. package/themes/terminal.css +422 -0
  40. package/themes/trait-wars.css +210 -0
  41. package/themes/wireframe.css +216 -0
@@ -195,6 +195,37 @@ var init_ThemeContext = __esm({
195
195
  displayName: "Copper",
196
196
  hasLightMode: true,
197
197
  hasDarkMode: true
198
+ },
199
+ // Layer 1 skin axes — truly-unique themes (compact tech / editorial / brutalist dense / display-heavy / touch-first)
200
+ {
201
+ name: "prism",
202
+ displayName: "Prism",
203
+ hasLightMode: true,
204
+ hasDarkMode: true
205
+ },
206
+ {
207
+ name: "gazette",
208
+ displayName: "Gazette",
209
+ hasLightMode: true,
210
+ hasDarkMode: true
211
+ },
212
+ {
213
+ name: "terminal",
214
+ displayName: "Terminal",
215
+ hasLightMode: true,
216
+ hasDarkMode: true
217
+ },
218
+ {
219
+ name: "atelier",
220
+ displayName: "Atelier",
221
+ hasLightMode: true,
222
+ hasDarkMode: true
223
+ },
224
+ {
225
+ name: "kiosk",
226
+ displayName: "Kiosk",
227
+ hasLightMode: true,
228
+ hasDarkMode: true
198
229
  }
199
230
  ];
200
231
  ThemeContext = createContext(void 0);
@@ -856,7 +887,7 @@ var init_Button = __esm({
856
887
  };
857
888
  iconSizeStyles = {
858
889
  sm: "h-3.5 w-3.5",
859
- md: "h-4 w-4",
890
+ md: "h-icon-default w-icon-default",
860
891
  lg: "h-5 w-5"
861
892
  };
862
893
  Button = React84__default.forwardRef(
@@ -909,7 +940,7 @@ var init_Button = __esm({
909
940
  ...props,
910
941
  "data-testid": props["data-testid"] ?? (action ? `action-${action}` : void 0),
911
942
  children: [
912
- isLoading ? /* @__PURE__ */ jsx(Loader2, { className: "h-4 w-4 animate-spin" }) : resolvedLeftIcon && /* @__PURE__ */ jsx("span", { className: "flex-shrink-0", children: resolvedLeftIcon }),
943
+ isLoading ? /* @__PURE__ */ jsx(Loader2, { className: "h-icon-default w-icon-default animate-spin" }) : resolvedLeftIcon && /* @__PURE__ */ jsx("span", { className: "flex-shrink-0", children: resolvedLeftIcon }),
913
944
  children || label,
914
945
  resolvedRightIcon && !isLoading && /* @__PURE__ */ jsx("span", { className: "flex-shrink-0", children: resolvedRightIcon })
915
946
  ]
@@ -1259,7 +1290,7 @@ var init_Modal = __esm({
1259
1290
  // Reset browser-default dialog chrome — we own styling.
1260
1291
  "m-0 p-0 border-0 bg-transparent",
1261
1292
  // Pre-existing dialog frame
1262
- "pointer-events-auto w-full flex flex-col bg-surface border shadow-lg rounded-md",
1293
+ "pointer-events-auto w-full flex flex-col bg-surface border shadow-elevation-dialog rounded-container",
1263
1294
  // Desktop sizing + viewport-aware floor.
1264
1295
  sizeClasses2[size],
1265
1296
  minWidthClasses[size],
@@ -1686,7 +1717,7 @@ var init_Toast = __esm({
1686
1717
  // `min-w-[300px]` only kicks in at `sm:` and above so a phone
1687
1718
  // viewport doesn't get a toast wider than the screen near the
1688
1719
  // edge. `max-w-[calc(100vw-2rem)]` clamps to viewport too.
1689
- "border-l-4 p-4 shadow min-w-0 sm:min-w-[300px] max-w-md max-w-[calc(100vw-2rem)]",
1720
+ "border-l-4 p-4 shadow-elevation-toast min-w-0 sm:min-w-[300px] max-w-md max-w-[calc(100vw-2rem)]",
1690
1721
  "rounded-sm",
1691
1722
  variantClasses[variant],
1692
1723
  className
@@ -2606,7 +2637,7 @@ var init_Input = __esm({
2606
2637
  ...props
2607
2638
  }, ref) => {
2608
2639
  const type = inputType || htmlType || "text";
2609
- const resolvedLeftIcon = leftIcon || IconComponent && /* @__PURE__ */ jsx(IconComponent, { className: "h-4 w-4" });
2640
+ const resolvedLeftIcon = leftIcon || IconComponent && /* @__PURE__ */ jsx(IconComponent, { className: "h-icon-default w-icon-default" });
2610
2641
  const showClearButton = clearable && value && String(value).length > 0;
2611
2642
  const baseClassName = cn(
2612
2643
  "block w-full rounded-sm transition-all duration-[var(--transition-fast)]",
@@ -2638,7 +2669,7 @@ var init_Input = __esm({
2638
2669
  ]
2639
2670
  }
2640
2671
  ),
2641
- /* @__PURE__ */ jsx("div", { className: "absolute inset-y-0 right-0 pr-3 flex items-center pointer-events-none text-muted-foreground", children: /* @__PURE__ */ jsx(ChevronDown, { className: "h-4 w-4" }) })
2672
+ /* @__PURE__ */ jsx("div", { className: "absolute inset-y-0 right-0 pr-3 flex items-center pointer-events-none text-muted-foreground", children: /* @__PURE__ */ jsx(ChevronDown, { className: "h-icon-default w-icon-default" }) })
2642
2673
  ] });
2643
2674
  }
2644
2675
  if (type === "textarea") {
@@ -2692,7 +2723,7 @@ var init_Input = __esm({
2692
2723
  type: "button",
2693
2724
  onClick: onClear,
2694
2725
  className: "absolute inset-y-0 right-0 pr-3 flex items-center text-muted-foreground hover:text-foreground",
2695
- children: /* @__PURE__ */ jsx(X, { className: "h-4 w-4" })
2726
+ children: /* @__PURE__ */ jsx(X, { className: "h-icon-default w-icon-default" })
2696
2727
  }
2697
2728
  ),
2698
2729
  rightIcon && !showClearButton && /* @__PURE__ */ jsx("div", { className: "absolute inset-y-0 right-0 pr-3 flex items-center text-muted-foreground", children: rightIcon })
@@ -2792,7 +2823,7 @@ var init_Select = __esm({
2792
2823
  ]
2793
2824
  }
2794
2825
  ),
2795
- /* @__PURE__ */ jsx("div", { className: "absolute inset-y-0 right-0 pr-3 flex items-center pointer-events-none", children: /* @__PURE__ */ jsx(ChevronDown, { className: "h-4 w-4 text-foreground" }) })
2826
+ /* @__PURE__ */ jsx("div", { className: "absolute inset-y-0 right-0 pr-3 flex items-center pointer-events-none", children: /* @__PURE__ */ jsx(ChevronDown, { className: "h-icon-default w-icon-default text-foreground" }) })
2796
2827
  ] });
2797
2828
  }
2798
2829
  );
@@ -2845,23 +2876,23 @@ var init_Card = __esm({
2845
2876
  default: [
2846
2877
  "bg-card",
2847
2878
  "border-[length:var(--border-width)] border-border",
2848
- "shadow-sm",
2879
+ "shadow-elevation-card",
2849
2880
  "transition-all duration-[var(--transition-normal)]",
2850
- "hover:shadow-lg hover:-translate-y-0.5"
2881
+ "hover:shadow-elevation-dialog hover:-translate-y-0.5"
2851
2882
  ].join(" "),
2852
2883
  bordered: [
2853
2884
  "bg-card",
2854
2885
  "border-[length:var(--border-width)] border-border",
2855
- "shadow-sm",
2886
+ "shadow-elevation-card",
2856
2887
  "transition-all duration-[var(--transition-normal)]",
2857
- "hover:shadow-lg hover:-translate-y-0.5"
2888
+ "hover:shadow-elevation-dialog hover:-translate-y-0.5"
2858
2889
  ].join(" "),
2859
2890
  elevated: [
2860
2891
  "bg-card",
2861
2892
  "border-[length:var(--border-width)] border-border",
2862
2893
  "shadow",
2863
2894
  "transition-all duration-[var(--transition-normal)]",
2864
- "hover:shadow-lg hover:-translate-y-0.5"
2895
+ "hover:shadow-elevation-dialog hover:-translate-y-0.5"
2865
2896
  ].join(" "),
2866
2897
  // Interactive variant with theme-specific hover effects
2867
2898
  interactive: [
@@ -2870,20 +2901,20 @@ var init_Card = __esm({
2870
2901
  "shadow",
2871
2902
  "cursor-pointer",
2872
2903
  "transition-all duration-[var(--transition-normal)]",
2873
- "hover:shadow-lg"
2904
+ "hover:shadow-elevation-dialog"
2874
2905
  ].join(" ")
2875
2906
  };
2876
2907
  paddingStyles2 = {
2877
2908
  none: "",
2878
- sm: "p-3",
2879
- md: "p-4",
2880
- lg: "p-6"
2909
+ sm: "p-card-sm",
2910
+ md: "p-card-md",
2911
+ lg: "p-card-lg"
2881
2912
  };
2882
2913
  shadowStyles2 = {
2883
2914
  none: "shadow-none",
2884
- sm: "shadow-sm",
2915
+ sm: "shadow-elevation-card",
2885
2916
  md: "shadow",
2886
- lg: "shadow-lg"
2917
+ lg: "shadow-elevation-dialog"
2887
2918
  };
2888
2919
  Card = React84__default.forwardRef(
2889
2920
  ({
@@ -2901,7 +2932,7 @@ var init_Card = __esm({
2901
2932
  {
2902
2933
  ref,
2903
2934
  className: cn(
2904
- "rounded-md",
2935
+ "rounded-container",
2905
2936
  "transition-all duration-[var(--transition-normal)]",
2906
2937
  variantStyles4[variant],
2907
2938
  paddingStyles2[padding],
@@ -3030,7 +3061,7 @@ var init_FilterPill = __esm({
3030
3061
  {
3031
3062
  ref,
3032
3063
  className: cn(
3033
- "inline-flex items-center gap-1 font-bold rounded-full",
3064
+ "inline-flex items-center gap-1 font-bold rounded-pill",
3034
3065
  variantStyles5[variant],
3035
3066
  sizeStyles4[size],
3036
3067
  (onClick || clickEvent) && "cursor-pointer",
@@ -3131,8 +3162,8 @@ var init_Avatar = __esm({
3131
3162
  busy: "bg-error"
3132
3163
  };
3133
3164
  badgeSizeClasses = {
3134
- xs: "w-3 h-3 text-[8px]",
3135
- sm: "w-4 h-4 text-[10px]",
3165
+ xs: "w-3 h-3 text-xs",
3166
+ sm: "w-4 h-4 text-xs",
3136
3167
  md: "w-5 h-5 text-xs",
3137
3168
  lg: "w-6 h-6 text-sm",
3138
3169
  xl: "w-7 h-7 text-base"
@@ -3404,7 +3435,7 @@ var init_ProgressBar = __esm({
3404
3435
  "div",
3405
3436
  {
3406
3437
  className: cn(
3407
- "h-full transition-all duration-300 ease-out",
3438
+ "h-full transition-all duration-normal ease-emphasized",
3408
3439
  colorClasses[effectiveColor]
3409
3440
  ),
3410
3441
  style: { width: `${percentage}%` },
@@ -3460,7 +3491,7 @@ var init_ProgressBar = __esm({
3460
3491
  strokeDashoffset: offset,
3461
3492
  strokeLinecap: "round",
3462
3493
  className: cn(
3463
- "transition-all duration-300 ease-out",
3494
+ "transition-all duration-normal ease-emphasized",
3464
3495
  colorClasses[effectiveColor]
3465
3496
  )
3466
3497
  }
@@ -3499,7 +3530,7 @@ var init_ProgressBar = __esm({
3499
3530
  "div",
3500
3531
  {
3501
3532
  className: cn(
3502
- "h-full transition-all duration-300 ease-out",
3533
+ "h-full transition-all duration-normal ease-emphasized",
3503
3534
  (isActive || isPartial) && colorClasses[effectiveColor]
3504
3535
  ),
3505
3536
  style: {
@@ -3996,7 +4027,7 @@ var init_ThemeToggle = __esm({
3996
4027
  "text-foreground",
3997
4028
  "hover:bg-muted border-[length:var(--border-width)] border-transparent hover:border-border",
3998
4029
  "focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",
3999
- "transition-colors duration-200",
4030
+ "transition-colors duration-fast",
4000
4031
  sizeClasses4[size],
4001
4032
  className
4002
4033
  ),
@@ -4043,7 +4074,7 @@ var init_FlipContainer = __esm({
4043
4074
  children: /* @__PURE__ */ jsx(
4044
4075
  Box,
4045
4076
  {
4046
- className: "relative w-full h-full transition-transform duration-500",
4077
+ className: "relative w-full h-full transition-transform duration-slow",
4047
4078
  style: {
4048
4079
  transformStyle: "preserve-3d",
4049
4080
  transform: flipped ? "rotateY(180deg)" : "rotateY(0deg)"
@@ -4101,7 +4132,7 @@ var init_ConditionalWrapper = __esm({
4101
4132
  Box,
4102
4133
  {
4103
4134
  overflow: "hidden",
4104
- className: `transition-all duration-200 ${isVisible ? "opacity-100 max-h-[1000px]" : "opacity-0 max-h-0"}`,
4135
+ className: `transition-all duration-fast ${isVisible ? "opacity-100 max-h-[1000px]" : "opacity-0 max-h-0"}`,
4105
4136
  children: isVisible ? children : fallback
4106
4137
  }
4107
4138
  );
@@ -8011,7 +8042,7 @@ var init_InstallBox = __esm({
8011
8042
  /* @__PURE__ */ jsx(
8012
8043
  Box,
8013
8044
  {
8014
- className: "bg-surface rounded-md border-[length:var(--border-width)] border-border",
8045
+ className: "bg-surface rounded-container border-[length:var(--border-width)] border-border",
8015
8046
  padding: "md",
8016
8047
  children: /* @__PURE__ */ jsxs(Box, { className: "flex items-center gap-3", children: [
8017
8048
  /* @__PURE__ */ jsx(
@@ -8736,7 +8767,7 @@ var init_Tooltip = __esm({
8736
8767
  className: cn(
8737
8768
  "fixed z-50 px-3 py-2 max-w-xs",
8738
8769
  "bg-primary text-primary-foreground",
8739
- "shadow-sm rounded-sm",
8770
+ "shadow-elevation-popover rounded-sm",
8740
8771
  "text-sm pointer-events-none",
8741
8772
  "break-words whitespace-normal",
8742
8773
  "h-auto min-h-fit",
@@ -8891,7 +8922,7 @@ var init_Popover = __esm({
8891
8922
  ref: popoverRef,
8892
8923
  className: cn(
8893
8924
  "fixed z-50 p-4",
8894
- "bg-card border-2 border-border shadow-lg",
8925
+ "bg-card border-2 border-border shadow-elevation-popover",
8895
8926
  positionClasses2[position],
8896
8927
  className
8897
8928
  ),
@@ -9005,7 +9036,7 @@ var init_Menu = __esm({
9005
9036
  const menuContainerStyles = cn(
9006
9037
  "bg-card",
9007
9038
  "border-[length:var(--border-width)] border-border",
9008
- "shadow",
9039
+ "shadow-elevation-popover",
9009
9040
  "rounded-sm",
9010
9041
  "min-w-0 sm:min-w-[200px] max-w-[calc(100vw-1rem)] py-1"
9011
9042
  );
@@ -9173,7 +9204,7 @@ var init_Accordion = __esm({
9173
9204
  "w-full flex items-center justify-between px-4 py-3",
9174
9205
  "bg-card",
9175
9206
  "hover:bg-muted",
9176
- "transition-colors duration-200",
9207
+ "transition-colors duration-fast",
9177
9208
  "focus:outline-none focus:ring-2 focus:ring-ring focus:ring-inset",
9178
9209
  "disabled:opacity-50 disabled:cursor-not-allowed",
9179
9210
  isOpen && "bg-muted font-bold"
@@ -9188,7 +9219,7 @@ var init_Accordion = __esm({
9188
9219
  icon: ChevronDown,
9189
9220
  size: "sm",
9190
9221
  className: cn(
9191
- "transition-transform duration-200",
9222
+ "transition-transform duration-fast",
9192
9223
  isOpen && "transform rotate-180"
9193
9224
  )
9194
9225
  }
@@ -9318,7 +9349,7 @@ var init_FloatingActionButton = __esm({
9318
9349
  {
9319
9350
  align: "center",
9320
9351
  gap: "sm",
9321
- className: "transition-all duration-200",
9352
+ className: "transition-all duration-fast",
9322
9353
  style: {
9323
9354
  opacity: isExpanded ? 1 : 0,
9324
9355
  transform: isExpanded ? "translateY(0)" : "translateY(10px)",
@@ -9356,7 +9387,7 @@ var init_FloatingActionButton = __esm({
9356
9387
  size: "lg",
9357
9388
  icon: isExpanded ? X : Plus,
9358
9389
  onClick: handleMainClick,
9359
- className: "rounded-full shadow-lg transition-all duration-300",
9390
+ className: "rounded-full shadow-lg transition-all duration-normal",
9360
9391
  "aria-label": isExpanded ? "Close actions" : "Open actions",
9361
9392
  "aria-expanded": isExpanded,
9362
9393
  children: /* @__PURE__ */ jsx(Typography, { as: "span", className: "sr-only", children: isExpanded ? t("common.close") : t("common.open") })
@@ -13519,8 +13550,8 @@ function Card2({
13519
13550
  className: `
13520
13551
  bg-card
13521
13552
  border border-border
13522
- rounded-md shadow-sm
13523
- ${isClickable ? "cursor-pointer hover:shadow-lg transition-shadow" : ""}
13553
+ rounded-container shadow-elevation-card
13554
+ ${isClickable ? "cursor-pointer hover:shadow-elevation-dialog transition-shadow" : ""}
13524
13555
  ${className}
13525
13556
  `,
13526
13557
  onClick: isClickable ? handleClick : void 0,
@@ -16325,7 +16356,7 @@ var init_BranchingLogicBuilder = __esm({
16325
16356
  const height = PADDING * 2 + items.length * (NODE_HEIGHT + NODE_GAP_Y);
16326
16357
  return { items, positions, width, height };
16327
16358
  }, [questions]);
16328
- return /* @__PURE__ */ jsx(Box, { className: "overflow-auto rounded-md border border-border bg-card p-2", children: /* @__PURE__ */ jsxs(
16359
+ return /* @__PURE__ */ jsx(Box, { className: "overflow-auto rounded-container border border-border bg-card p-2", children: /* @__PURE__ */ jsxs(
16329
16360
  "svg",
16330
16361
  {
16331
16362
  width: layout.width,
@@ -19223,7 +19254,7 @@ var init_Carousel = __esm({
19223
19254
  Box,
19224
19255
  {
19225
19256
  className: cn(
19226
- "rounded-full cursor-pointer transition-all duration-200"
19257
+ "rounded-full cursor-pointer transition-all duration-fast"
19227
19258
  ),
19228
19259
  style: {
19229
19260
  width: isActive ? 10 : 8,
@@ -20315,7 +20346,7 @@ var init_CodeExample = __esm({
20315
20346
  {
20316
20347
  className: cn(
20317
20348
  "bg-foreground",
20318
- "rounded-md",
20349
+ "rounded-container",
20319
20350
  "border-[length:var(--border-width)] border-border",
20320
20351
  "overflow-hidden",
20321
20352
  className
@@ -22696,7 +22727,7 @@ function DataGrid({
22696
22727
  className: cn(
22697
22728
  "bg-card rounded-lg",
22698
22729
  "border border-border",
22699
- "shadow-sm hover:shadow-lg",
22730
+ "shadow-elevation-card hover:shadow-elevation-dialog",
22700
22731
  "hover:border-primary transition-all",
22701
22732
  "flex flex-col",
22702
22733
  isSelected && "ring-2 ring-primary border-primary"
@@ -23070,7 +23101,7 @@ function DataList({
23070
23101
  {
23071
23102
  variant: "caption",
23072
23103
  className: cn(
23073
- "mt-1 text-[0.65rem]",
23104
+ "mt-1 text-xs",
23074
23105
  isSent ? "opacity-70" : "text-muted-foreground"
23075
23106
  ),
23076
23107
  children: formatDate3(timestamp)
@@ -23135,7 +23166,7 @@ function DataList({
23135
23166
  Box,
23136
23167
  {
23137
23168
  className: cn(
23138
- "group flex items-center gap-4 transition-all duration-200",
23169
+ "group flex items-center gap-4 transition-all duration-fast",
23139
23170
  isCompact ? "px-4 py-2" : "px-6 py-4",
23140
23171
  "hover:bg-muted/80",
23141
23172
  !isCard && !isCompact && "rounded-lg border border-transparent hover:border-border"
@@ -23222,7 +23253,7 @@ function DataList({
23222
23253
  Box,
23223
23254
  {
23224
23255
  className: cn(
23225
- isCard && "bg-card rounded-xl border border-border shadow-lg overflow-hidden",
23256
+ isCard && "bg-card rounded-xl border border-border shadow-elevation-dialog overflow-hidden",
23226
23257
  !isCard && gapClass,
23227
23258
  className
23228
23259
  ),
@@ -23364,7 +23395,7 @@ var init_FileTree = __esm({
23364
23395
  Typography,
23365
23396
  {
23366
23397
  variant: "caption",
23367
- className: `truncate font-mono text-[11px] !text-inherit ${isSelected ? "font-semibold" : ""}`,
23398
+ className: `truncate font-mono text-xs !text-inherit ${isSelected ? "font-semibold" : ""}`,
23368
23399
  children: node.name
23369
23400
  }
23370
23401
  ),
@@ -23814,7 +23845,7 @@ var init_FilterGroup = __esm({
23814
23845
  "div",
23815
23846
  {
23816
23847
  className: cn(
23817
- "p-4 rounded-md",
23848
+ "p-4 rounded-container",
23818
23849
  "bg-card",
23819
23850
  "border-[length:var(--border-width)] border-border",
23820
23851
  className
@@ -24496,7 +24527,7 @@ var init_SidePanel = __esm({
24496
24527
  "border-l-2 border-border",
24497
24528
  position === "left" && "border-l-0 border-r-2",
24498
24529
  "flex flex-col",
24499
- "transition-transform duration-300 ease-in-out",
24530
+ "transition-transform duration-normal ease-standard",
24500
24531
  width,
24501
24532
  position === "right" ? "right-0" : "left-0",
24502
24533
  className
@@ -24898,7 +24929,7 @@ var init_ViolationAlert = __esm({
24898
24929
  Box,
24899
24930
  {
24900
24931
  className: cn(
24901
- "px-3 py-2 rounded-md border",
24932
+ "px-3 py-2 rounded-container border",
24902
24933
  bgColor,
24903
24934
  className
24904
24935
  ),
@@ -25159,7 +25190,7 @@ var init_FlipCard = __esm({
25159
25190
  /* @__PURE__ */ jsx(
25160
25191
  Box,
25161
25192
  {
25162
- className: "absolute inset-0 w-full h-full rounded-lg shadow-lg flex items-center justify-center p-6",
25193
+ className: "absolute inset-0 w-full h-full rounded-lg shadow-elevation-dialog flex items-center justify-center p-6",
25163
25194
  style: { backfaceVisibility: "hidden", transform: "rotateY(0deg)" },
25164
25195
  children: front
25165
25196
  }
@@ -25167,7 +25198,7 @@ var init_FlipCard = __esm({
25167
25198
  /* @__PURE__ */ jsx(
25168
25199
  Box,
25169
25200
  {
25170
- className: "absolute inset-0 w-full h-full rounded-lg shadow-lg flex items-center justify-center p-6",
25201
+ className: "absolute inset-0 w-full h-full rounded-lg shadow-elevation-dialog flex items-center justify-center p-6",
25171
25202
  style: { backfaceVisibility: "hidden", transform: "rotateY(180deg)" },
25172
25203
  children: back
25173
25204
  }
@@ -25512,7 +25543,7 @@ var init_ProgressDots = __esm({
25512
25543
  Box,
25513
25544
  {
25514
25545
  className: cn(
25515
- "rounded-full transition-all duration-200",
25546
+ "rounded-full transition-all duration-fast",
25516
25547
  onDotClick && "cursor-pointer"
25517
25548
  ),
25518
25549
  style: {
@@ -28533,7 +28564,7 @@ var init_Meter = __esm({
28533
28564
  strokeDasharray: circumference,
28534
28565
  strokeDashoffset: offset,
28535
28566
  strokeLinecap: "round",
28536
- className: "transition-all duration-500 ease-out"
28567
+ className: "transition-all duration-slow ease-emphasized"
28537
28568
  }
28538
28569
  )
28539
28570
  ]
@@ -28576,7 +28607,7 @@ var init_Meter = __esm({
28576
28607
  Box,
28577
28608
  {
28578
28609
  className: cn(
28579
- "h-2 flex-1 rounded-sm transition-all duration-300",
28610
+ "h-2 flex-1 rounded-sm transition-all duration-normal",
28580
28611
  !isActive && "bg-muted"
28581
28612
  ),
28582
28613
  style: isActive ? { backgroundColor: segColor } : void 0
@@ -28595,7 +28626,7 @@ var init_Meter = __esm({
28595
28626
  /* @__PURE__ */ jsx(Box, { className: "w-full h-3 bg-muted rounded-full overflow-hidden", children: /* @__PURE__ */ jsx(
28596
28627
  Box,
28597
28628
  {
28598
- className: "h-full rounded-full transition-all duration-500 ease-out",
28629
+ className: "h-full rounded-full transition-all duration-slow ease-emphasized",
28599
28630
  style: {
28600
28631
  width: `${percentage}%`,
28601
28632
  backgroundColor: activeColor
@@ -29121,7 +29152,7 @@ var init_PullToRefresh = __esm({
29121
29152
  className: cn(
29122
29153
  "top-0 left-0 right-0 z-10",
29123
29154
  "items-center justify-center",
29124
- "transition-opacity duration-200",
29155
+ "transition-opacity duration-fast",
29125
29156
  showIndicator ? "opacity-100" : "opacity-0"
29126
29157
  ),
29127
29158
  style: {
@@ -29307,7 +29338,7 @@ var init_PricingCard = __esm({
29307
29338
  "hover:-translate-y-1 transition-all",
29308
29339
  highlighted && [
29309
29340
  "border-[length:2px] border-primary",
29310
- "shadow-lg",
29341
+ "shadow-elevation-dialog",
29311
29342
  "scale-[1.05]",
29312
29343
  "ring-2 ring-primary"
29313
29344
  ],
@@ -31364,7 +31395,7 @@ var init_PositionedCanvas = __esm({
31364
31395
  {
31365
31396
  ref: containerRef,
31366
31397
  "data-testid": "positioned-canvas",
31367
- className: "relative bg-background border border-border rounded-md overflow-hidden",
31398
+ className: "relative bg-background border border-border rounded-container overflow-hidden",
31368
31399
  style: { width, height },
31369
31400
  onClick: handleContainerClick,
31370
31401
  children: items.map((item) => {
@@ -31565,7 +31596,7 @@ function BlockMenu({ block, readOnly, onDelete, onDuplicate, onChangeType }) {
31565
31596
  role: "menu",
31566
31597
  className: cn(
31567
31598
  "absolute right-0 z-10 mt-1 w-44",
31568
- "rounded-md border border-border bg-popover shadow-md",
31599
+ "rounded-container border border-border bg-popover shadow-elevation-popover",
31569
31600
  "py-1 text-sm"
31570
31601
  ),
31571
31602
  children: [
@@ -32841,7 +32872,7 @@ function DocCodeBlock({
32841
32872
  Box,
32842
32873
  {
32843
32874
  className: cn(
32844
- "rounded-md border border-border overflow-hidden",
32875
+ "rounded-container border border-border overflow-hidden",
32845
32876
  className
32846
32877
  ),
32847
32878
  position: "relative",
@@ -33000,11 +33031,11 @@ var init_DocPagination = __esm({
33000
33031
  init_Typography();
33001
33032
  linkCardStyles = [
33002
33033
  "border border-border",
33003
- "rounded-md",
33034
+ "rounded-container",
33004
33035
  "p-4",
33005
33036
  "transition-all",
33006
33037
  "hover:border-primary",
33007
- "hover:shadow-lg",
33038
+ "hover:shadow-elevation-dialog",
33008
33039
  "no-underline",
33009
33040
  "flex-1",
33010
33041
  "min-w-0",
@@ -33141,7 +33172,7 @@ function DocSearch({
33141
33172
  Box,
33142
33173
  {
33143
33174
  position: "absolute",
33144
- className: "top-full left-0 right-0 mt-1 z-50 bg-card border border-border rounded-md shadow-lg max-h-80 overflow-y-auto",
33175
+ className: "top-full left-0 right-0 mt-1 z-50 bg-card border border-border rounded-container shadow-elevation-popover max-h-80 overflow-y-auto",
33145
33176
  children: /* @__PURE__ */ jsx(VStack, { gap: "none", children: results.map((result, index) => /* @__PURE__ */ jsx(
33146
33177
  Box,
33147
33178
  {
@@ -36081,10 +36112,11 @@ var init_Form = __esm({
36081
36112
  type: f3.type,
36082
36113
  required: f3.required,
36083
36114
  defaultValue: f3.default,
36084
- values: f3.values,
36115
+ // EntityField is a discriminated union — `values` lives on Scalar/Enum, `relation` lives on Relation.
36116
+ values: "values" in f3 ? f3.values : void 0,
36085
36117
  min: f3.min,
36086
36118
  max: f3.max,
36087
- relation: f3.relation ? { entity: f3.relation.entity } : void 0
36119
+ relation: "relation" in f3 ? { entity: f3.relation.entity } : void 0
36088
36120
  })
36089
36121
  );
36090
36122
  }, [entity, fields]);
@@ -36312,10 +36344,11 @@ var init_Form = __esm({
36312
36344
  type: entityField.type,
36313
36345
  required: entityField.required,
36314
36346
  defaultValue: entityField.default,
36315
- values: entityField.values,
36347
+ // EntityField is a discriminated union — `values` lives on Scalar/Enum, `relation` lives on Relation.
36348
+ values: "values" in entityField ? entityField.values : void 0,
36316
36349
  min: entityField.min,
36317
36350
  max: entityField.max,
36318
- relation: entityField.relation ? { entity: entityField.relation.entity } : void 0
36351
+ relation: "relation" in entityField ? { entity: entityField.relation.entity } : void 0
36319
36352
  };
36320
36353
  }
36321
36354
  return { name: field, type: "string" };