@hex-core/components 1.1.1 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -39,14 +39,17 @@ var buttonVariants = cva(
39
39
  "hover:bg-destructive/90 hover:shadow-md hover:shadow-destructive/25"
40
40
  ].join(" "),
41
41
  outline: [
42
+ // Self-borne shape: token border (border-input) + an inset-ring tinted with
43
+ // foreground so the boundary is visible on flat-white surfaces too, not only
44
+ // inside elevated Card/Popover/Dialog containers.
42
45
  "border border-input bg-background",
43
- "shadow-sm",
44
- "hover:bg-accent hover:text-accent-foreground hover:shadow-md"
46
+ "shadow-sm inset-ring-1 inset-ring-foreground/[0.06]",
47
+ "hover:bg-accent hover:text-accent-foreground hover:shadow-md hover:inset-ring-foreground/12"
45
48
  ].join(" "),
46
49
  secondary: [
47
50
  "bg-secondary text-secondary-foreground",
48
- "shadow-sm",
49
- "hover:bg-secondary/80 hover:shadow-md"
51
+ "shadow-sm inset-ring-1 inset-ring-foreground/[0.08]",
52
+ "hover:bg-secondary/80 hover:shadow-md hover:inset-ring-foreground/15"
50
53
  ].join(" "),
51
54
  ghost: "hover:bg-accent hover:text-accent-foreground",
52
55
  link: "text-primary underline-offset-4 hover:underline"
@@ -127,7 +130,9 @@ var Input = React2.forwardRef(
127
130
  className: cn(
128
131
  "flex h-[var(--control-height-md,2.5rem)] w-full rounded-md border border-input bg-background px-[var(--space-3,0.75rem)] py-[var(--space-2,0.5rem)] text-sm",
129
132
  "transition-all duration-[var(--duration-normal,200ms)] ease-out",
130
- "shadow-sm",
133
+ // inset-ring gives a self-borne edge so the input field is visible on flat
134
+ // surfaces (token border alone is too low-contrast on bg-background=white).
135
+ "shadow-sm inset-ring-1 inset-ring-foreground/[0.06]",
131
136
  "file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground",
132
137
  "placeholder:text-muted-foreground",
133
138
  "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
@@ -168,7 +173,7 @@ var Textarea = React4.forwardRef(
168
173
  className: cn(
169
174
  "flex min-h-[80px] w-full rounded-md border border-input bg-background px-[var(--space-3,0.75rem)] py-[var(--space-2,0.5rem)] text-sm",
170
175
  "transition-all duration-[var(--duration-normal,200ms)] ease-out",
171
- "shadow-sm",
176
+ "shadow-sm inset-ring-1 inset-ring-foreground/[0.06]",
172
177
  "placeholder:text-muted-foreground",
173
178
  "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
174
179
  "focus-visible:shadow-md focus-visible:border-ring/50",
@@ -195,7 +200,7 @@ var Checkbox = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__
195
200
  className: cn(
196
201
  "group h-4 w-4 shrink-0 rounded-sm border border-input",
197
202
  "transition-all duration-[var(--duration-normal,200ms)] ease-out",
198
- "shadow-sm",
203
+ "shadow-sm inset-ring-1 inset-ring-foreground/[0.06]",
199
204
  "hover:border-ring/50 hover:shadow-md",
200
205
  "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
201
206
  "disabled:cursor-not-allowed disabled:opacity-50",
@@ -255,6 +260,9 @@ var Switch = React6.forwardRef(
255
260
  "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background",
256
261
  "disabled:cursor-not-allowed disabled:opacity-50",
257
262
  "data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",
263
+ // Unchecked track shares --color-input with form borders (~1.27:1 vs white) so
264
+ // add an inset ring to make the track visible on flat surfaces.
265
+ "data-[state=unchecked]:inset-ring-1 data-[state=unchecked]:inset-ring-foreground/[0.08]",
258
266
  "hover:shadow-md",
259
267
  className
260
268
  ),
@@ -288,9 +296,9 @@ var badgeVariants = cva3(
288
296
  variants: {
289
297
  variant: {
290
298
  default: "border-transparent bg-primary text-primary-foreground hover:bg-primary/80",
291
- secondary: "border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",
299
+ secondary: "border-foreground/15 bg-secondary text-secondary-foreground hover:bg-secondary/80 hover:border-foreground/20",
292
300
  destructive: "border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",
293
- outline: "text-foreground"
301
+ outline: "border-foreground/20 text-foreground hover:border-foreground/30"
294
302
  }
295
303
  },
296
304
  defaultVariants: {
@@ -313,7 +321,7 @@ var Separator = React7.forwardRef(({ className, orientation = "horizontal", deco
313
321
  decorative,
314
322
  orientation,
315
323
  className: cn(
316
- "shrink-0 bg-border",
324
+ "shrink-0 bg-foreground/[0.12]",
317
325
  orientation === "horizontal" ? "h-[1px] w-full" : "h-full w-[1px]",
318
326
  className
319
327
  ),
@@ -335,7 +343,7 @@ var SelectTrigger = React8.forwardRef(({ className, children, ...props }, ref) =
335
343
  ref,
336
344
  className: cn(
337
345
  "flex h-[var(--control-height-md,2.5rem)] w-full items-center justify-between rounded-md border border-input bg-background px-[var(--space-3,0.75rem)] py-[var(--space-2,0.5rem)] text-sm",
338
- "transition-all duration-[var(--duration-normal,200ms)] ease-out shadow-sm",
346
+ "transition-all duration-[var(--duration-normal,200ms)] ease-out shadow-sm inset-ring-1 inset-ring-foreground/[0.06]",
339
347
  "placeholder:text-muted-foreground",
340
348
  "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
341
349
  "focus-visible:shadow-md focus-visible:border-ring/50",
@@ -375,7 +383,7 @@ var SelectContent = React8.forwardRef(({ className, children, position = "popper
375
383
  ref,
376
384
  position,
377
385
  className: cn(
378
- "relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md",
386
+ "relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border border-foreground/[0.08] bg-popover text-popover-foreground shadow-md",
379
387
  "data-[state=open]:animate-in data-[state=closed]:animate-out",
380
388
  "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
381
389
  "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",
@@ -443,7 +451,7 @@ var SelectSeparator = React8.forwardRef(({ className, ...props }, ref) => /* @__
443
451
  SelectPrimitive.Separator,
444
452
  {
445
453
  ref,
446
- className: cn("-mx-[var(--space-1,0.25rem)] my-[var(--space-1,0.25rem)] h-px bg-muted", className),
454
+ className: cn("-mx-[var(--space-1,0.25rem)] my-[var(--space-1,0.25rem)] h-px bg-foreground/[0.12]", className),
447
455
  ...props
448
456
  }
449
457
  ));
@@ -471,7 +479,7 @@ var RadioGroupItem = React9.forwardRef(({ className, ...props }, ref) => /* @__P
471
479
  ref,
472
480
  className: cn(
473
481
  "aspect-square h-4 w-4 rounded-full border border-input",
474
- "transition-all duration-[var(--duration-normal,200ms)] ease-out shadow-sm",
482
+ "transition-all duration-[var(--duration-normal,200ms)] ease-out shadow-sm inset-ring-1 inset-ring-foreground/[0.06]",
475
483
  "hover:border-ring/50 hover:shadow-md",
476
484
  "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
477
485
  "disabled:cursor-not-allowed disabled:opacity-50",
@@ -504,7 +512,7 @@ var Slider = React10.forwardRef(({ className, thumbLabels, ...props }, ref) => {
504
512
  className: cn("relative flex w-full touch-none select-none items-center", className),
505
513
  ...props,
506
514
  children: [
507
- /* @__PURE__ */ jsx11(SliderPrimitive.Track, { className: "relative h-2 w-full grow overflow-hidden rounded-full bg-secondary", children: /* @__PURE__ */ jsx11(SliderPrimitive.Range, { className: "absolute h-full bg-primary" }) }),
515
+ /* @__PURE__ */ jsx11(SliderPrimitive.Track, { className: "relative h-2 w-full grow overflow-hidden rounded-full border border-foreground/[0.08] bg-secondary", children: /* @__PURE__ */ jsx11(SliderPrimitive.Range, { className: "absolute h-full bg-primary" }) }),
508
516
  values.map((_, i) => {
509
517
  const explicit = thumbLabels?.[i];
510
518
  const fallback = values.length === 1 ? rootLabel : rootLabel ? `${rootLabel} (${i + 1} of ${values.length})` : void 0;
@@ -549,7 +557,7 @@ var toggleVariants = cva4(
549
557
  variants: {
550
558
  variant: {
551
559
  default: "bg-transparent",
552
- outline: "border border-input bg-transparent shadow-sm hover:bg-accent hover:text-accent-foreground"
560
+ outline: "border border-input bg-transparent shadow-sm inset-ring-1 inset-ring-foreground/[0.06] hover:bg-accent hover:text-accent-foreground"
553
561
  },
554
562
  size: {
555
563
  default: "h-[var(--control-height-md,2.5rem)] px-[var(--space-3,0.75rem)] min-w-[var(--control-height-md,2.5rem)]",
@@ -646,7 +654,13 @@ AvatarFallback.displayName = "AvatarFallback";
646
654
  // src/primitives/skeleton/skeleton.tsx
647
655
  import { jsx as jsx15 } from "react/jsx-runtime";
648
656
  function Skeleton({ className, ...props }) {
649
- return /* @__PURE__ */ jsx15("div", { className: cn("animate-pulse rounded-md bg-muted", className), ...props });
657
+ return /* @__PURE__ */ jsx15(
658
+ "div",
659
+ {
660
+ className: cn("animate-pulse rounded-md border border-foreground/[0.06] bg-muted", className),
661
+ ...props
662
+ }
663
+ );
650
664
  }
651
665
 
652
666
  // src/primitives/progress/progress.tsx
@@ -662,7 +676,7 @@ var Progress = React14.forwardRef(({ className, value, max = 100, ...props }, re
662
676
  value: value ?? 0,
663
677
  max,
664
678
  className: cn(
665
- "relative h-2 w-full overflow-hidden rounded-full bg-secondary",
679
+ "relative h-2 w-full overflow-hidden rounded-full border border-foreground/[0.08] bg-secondary",
666
680
  className
667
681
  ),
668
682
  ...props,
@@ -719,7 +733,7 @@ var ScrollBar = React15.forwardRef(({ className, orientation = "vertical", ...pr
719
733
  className
720
734
  ),
721
735
  ...props,
722
- children: /* @__PURE__ */ jsx17(ScrollAreaPrimitive.ScrollAreaThumb, { className: "relative flex-1 rounded-full bg-border" })
736
+ children: /* @__PURE__ */ jsx17(ScrollAreaPrimitive.ScrollAreaThumb, { className: "relative flex-1 rounded-full bg-foreground/[0.18]" })
723
737
  }
724
738
  ));
725
739
  ScrollBar.displayName = "ScrollBar";
@@ -903,7 +917,7 @@ var Card = React16.forwardRef(
903
917
  {
904
918
  ref,
905
919
  className: cn(
906
- "rounded-lg border bg-card text-card-foreground",
920
+ "rounded-lg border border-foreground/[0.08] bg-card text-card-foreground",
907
921
  "shadow-sm transition-all duration-[var(--duration-normal,200ms)] ease-out",
908
922
  "hover:shadow-md",
909
923
  className
@@ -963,7 +977,7 @@ var TabsList = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__
963
977
  {
964
978
  ref,
965
979
  className: cn(
966
- "inline-flex h-[var(--control-height-md,2.5rem)] items-center justify-center rounded-md bg-muted p-[var(--space-1,0.25rem)] text-muted-foreground",
980
+ "inline-flex h-[var(--control-height-md,2.5rem)] items-center justify-center rounded-md border border-foreground/[0.06] bg-muted p-[var(--space-1,0.25rem)] text-muted-foreground",
967
981
  className
968
982
  ),
969
983
  ...props
@@ -1006,7 +1020,7 @@ import * as React18 from "react";
1006
1020
  import * as AccordionPrimitive from "@radix-ui/react-accordion";
1007
1021
  import { jsx as jsx25, jsxs as jsxs6 } from "react/jsx-runtime";
1008
1022
  var Accordion = AccordionPrimitive.Root;
1009
- var AccordionItem = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx25(AccordionPrimitive.Item, { ref, className: cn("border-b", className), ...props }));
1023
+ var AccordionItem = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx25(AccordionPrimitive.Item, { ref, className: cn("border-b border-b-foreground/[0.08]", className), ...props }));
1010
1024
  AccordionItem.displayName = "AccordionItem";
1011
1025
  var AccordionTrigger = React18.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx25(AccordionPrimitive.Header, { className: "flex", children: /* @__PURE__ */ jsxs6(
1012
1026
  AccordionPrimitive.Trigger,
@@ -1084,7 +1098,7 @@ var DialogContent = React19.forwardRef(({ className, children, scrollable = true
1084
1098
  ref,
1085
1099
  className: cn(
1086
1100
  "fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%]",
1087
- scrollable ? "max-h-[calc(100vh-2rem)] border bg-background shadow-lg rounded-lg" : "gap-[var(--gap-md,1rem)] border bg-background p-[var(--space-6,1.5rem)] shadow-lg rounded-lg",
1101
+ scrollable ? "max-h-[calc(100vh-2rem)] border border-foreground/[0.08] bg-background shadow-lg rounded-lg" : "gap-[var(--gap-md,1rem)] border border-foreground/[0.08] bg-background p-[var(--space-6,1.5rem)] shadow-lg rounded-lg",
1088
1102
  "duration-[var(--duration-normal,200ms)] data-[state=open]:animate-in data-[state=closed]:animate-out",
1089
1103
  "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
1090
1104
  "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",
@@ -1199,7 +1213,7 @@ var AlertDialogContent = React20.forwardRef(({ className, ...props }, ref) => /*
1199
1213
  ref,
1200
1214
  className: cn(
1201
1215
  "fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-[var(--gap-md,1rem)]",
1202
- "border bg-background p-[var(--space-6,1.5rem)] shadow-lg rounded-lg",
1216
+ "border border-foreground/[0.08] bg-background p-[var(--space-6,1.5rem)] shadow-lg rounded-lg",
1203
1217
  "duration-[var(--duration-normal,200ms)] data-[state=open]:animate-in data-[state=closed]:animate-out",
1204
1218
  "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
1205
1219
  "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",
@@ -1273,9 +1287,9 @@ var AlertDialogCancel = React20.forwardRef(({ className, ...props }, ref) => /*
1273
1287
  ref,
1274
1288
  className: cn(
1275
1289
  "inline-flex h-[var(--control-height-md,2.5rem)] items-center justify-center rounded-md px-[var(--space-4,1rem)] py-[var(--space-2,0.5rem)] text-sm font-medium",
1276
- "border border-input bg-background shadow-sm",
1290
+ "border border-input bg-background shadow-sm inset-ring-1 inset-ring-foreground/[0.06]",
1277
1291
  "transition-all duration-[var(--duration-normal,200ms)] ease-out",
1278
- "hover:bg-accent hover:text-accent-foreground hover:shadow-md",
1292
+ "hover:bg-accent hover:text-accent-foreground hover:shadow-md hover:inset-ring-foreground/12",
1279
1293
  "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
1280
1294
  "mt-[var(--space-2,0.5rem)] sm:mt-0",
1281
1295
  "active:scale-[0.98]",
@@ -1302,7 +1316,7 @@ var DropdownMenuContent = React21.forwardRef(({ className, sideOffset = 4, ...pr
1302
1316
  ref,
1303
1317
  sideOffset,
1304
1318
  className: cn(
1305
- "z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-[var(--space-1,0.25rem)] text-popover-foreground shadow-md",
1319
+ "z-50 min-w-[8rem] overflow-hidden rounded-md border border-foreground/[0.08] bg-popover p-[var(--space-1,0.25rem)] text-popover-foreground shadow-md",
1306
1320
  "data-[state=open]:animate-in data-[state=closed]:animate-out",
1307
1321
  "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
1308
1322
  "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",
@@ -1395,7 +1409,7 @@ var DropdownMenuSeparator = React21.forwardRef(({ className, ...props }, ref) =>
1395
1409
  DropdownMenuPrimitive.Separator,
1396
1410
  {
1397
1411
  ref,
1398
- className: cn("-mx-[var(--space-1,0.25rem)] my-[var(--space-1,0.25rem)] h-px bg-muted", className),
1412
+ className: cn("-mx-[var(--space-1,0.25rem)] my-[var(--space-1,0.25rem)] h-px bg-foreground/[0.12]", className),
1399
1413
  ...props
1400
1414
  }
1401
1415
  ));
@@ -1424,7 +1438,7 @@ var PopoverContent = React22.forwardRef(({ className, align = "center", sideOffs
1424
1438
  align,
1425
1439
  sideOffset,
1426
1440
  className: cn(
1427
- "z-50 w-72 rounded-md border bg-popover p-[var(--space-4,1rem)] text-popover-foreground shadow-md outline-none",
1441
+ "z-50 w-72 rounded-md border border-foreground/[0.08] bg-popover p-[var(--space-4,1rem)] text-popover-foreground shadow-md outline-none",
1428
1442
  "data-[state=open]:animate-in data-[state=closed]:animate-out",
1429
1443
  "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
1430
1444
  "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",
@@ -1575,7 +1589,7 @@ var alertVariants = cva10(
1575
1589
  {
1576
1590
  variants: {
1577
1591
  variant: {
1578
- default: "bg-background text-foreground",
1592
+ default: "border-foreground/[0.08] bg-background text-foreground",
1579
1593
  destructive: "border-destructive/50 text-destructive [&>svg]:text-destructive bg-destructive/5"
1580
1594
  }
1581
1595
  },
@@ -1647,7 +1661,7 @@ var HoverCardContent = React26.forwardRef(({ className, align = "center", sideOf
1647
1661
  align,
1648
1662
  sideOffset,
1649
1663
  className: cn(
1650
- "z-50 w-64 rounded-md border bg-popover p-[var(--space-4,1rem)] text-popover-foreground shadow-md outline-none",
1664
+ "z-50 w-64 rounded-md border border-foreground/[0.08] bg-popover p-[var(--space-4,1rem)] text-popover-foreground shadow-md outline-none",
1651
1665
  "data-[state=open]:animate-in data-[state=closed]:animate-out",
1652
1666
  "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
1653
1667
  "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",
@@ -1673,7 +1687,7 @@ var ContextMenuContent = React27.forwardRef(({ className, ...props }, ref) => /*
1673
1687
  {
1674
1688
  ref,
1675
1689
  className: cn(
1676
- "z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-[var(--space-1,0.25rem)] text-popover-foreground shadow-md",
1690
+ "z-50 min-w-[8rem] overflow-hidden rounded-md border border-foreground/[0.08] bg-popover p-[var(--space-1,0.25rem)] text-popover-foreground shadow-md",
1677
1691
  "data-[state=open]:animate-in data-[state=closed]:animate-out",
1678
1692
  "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
1679
1693
  "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",
@@ -1765,7 +1779,7 @@ var ContextMenuSeparator = React27.forwardRef(({ className, ...props }, ref) =>
1765
1779
  ContextMenuPrimitive.Separator,
1766
1780
  {
1767
1781
  ref,
1768
- className: cn("-mx-[var(--space-1,0.25rem)] my-[var(--space-1,0.25rem)] h-px bg-border", className),
1782
+ className: cn("-mx-[var(--space-1,0.25rem)] my-[var(--space-1,0.25rem)] h-px bg-foreground/[0.12]", className),
1769
1783
  ...props
1770
1784
  }
1771
1785
  ));
@@ -1789,7 +1803,7 @@ var Menubar = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__
1789
1803
  {
1790
1804
  ref,
1791
1805
  className: cn(
1792
- "flex h-[var(--control-height-md,2.5rem)] items-center space-x-1 rounded-md border bg-background p-[var(--space-1,0.25rem)]",
1806
+ "flex h-[var(--control-height-md,2.5rem)] items-center space-x-1 rounded-md border border-foreground/[0.08] bg-background p-[var(--space-1,0.25rem)]",
1793
1807
  className
1794
1808
  ),
1795
1809
  ...props
@@ -1823,7 +1837,7 @@ var MenubarContent = React28.forwardRef(({ className, align = "start", alignOffs
1823
1837
  alignOffset,
1824
1838
  sideOffset,
1825
1839
  className: cn(
1826
- "z-50 min-w-[12rem] overflow-hidden rounded-md border bg-popover p-[var(--space-1,0.25rem)] text-popover-foreground shadow-md",
1840
+ "z-50 min-w-[12rem] overflow-hidden rounded-md border border-foreground/[0.08] bg-popover p-[var(--space-1,0.25rem)] text-popover-foreground shadow-md",
1827
1841
  "data-[state=open]:animate-in data-[state=closed]:animate-out",
1828
1842
  "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
1829
1843
  "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",
@@ -1862,7 +1876,7 @@ var MenubarSeparator = React28.forwardRef(({ className, ...props }, ref) => /* @
1862
1876
  MenubarPrimitive.Separator,
1863
1877
  {
1864
1878
  ref,
1865
- className: cn("-mx-[var(--space-1,0.25rem)] my-[var(--space-1,0.25rem)] h-px bg-muted", className),
1879
+ className: cn("-mx-[var(--space-1,0.25rem)] my-[var(--space-1,0.25rem)] h-px bg-foreground/[0.12]", className),
1866
1880
  ...props
1867
1881
  }
1868
1882
  ));
@@ -1952,7 +1966,7 @@ var NavigationMenuViewport = React29.forwardRef(({ className, ...props }, ref) =
1952
1966
  NavigationMenuPrimitive.Viewport,
1953
1967
  {
1954
1968
  className: cn(
1955
- "origin-top-center relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-lg",
1969
+ "origin-top-center relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full overflow-hidden rounded-md border border-foreground/[0.08] bg-popover text-popover-foreground shadow-lg",
1956
1970
  "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90",
1957
1971
  "md:w-[var(--radix-navigation-menu-viewport-width)]",
1958
1972
  className
@@ -1971,7 +1985,7 @@ var NavigationMenuIndicator = React29.forwardRef(({ className, ...props }, ref)
1971
1985
  className
1972
1986
  ),
1973
1987
  ...props,
1974
- children: /* @__PURE__ */ jsx37("div", { className: "relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-md" })
1988
+ children: /* @__PURE__ */ jsx37("div", { className: "relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-foreground/[0.12] shadow-md" })
1975
1989
  }
1976
1990
  ));
1977
1991
  NavigationMenuIndicator.displayName = "NavigationMenuIndicator";
@@ -2101,7 +2115,7 @@ var Table = React31.forwardRef(
2101
2115
  ) })
2102
2116
  );
2103
2117
  Table.displayName = "Table";
2104
- var TableHeader = React31.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx39("thead", { ref, className: cn("[&_tr]:border-b", className), ...props }));
2118
+ var TableHeader = React31.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx39("thead", { ref, className: cn("[&_tr]:border-b [&_tr]:border-b-foreground/[0.08]", className), ...props }));
2105
2119
  TableHeader.displayName = "TableHeader";
2106
2120
  var TableBody = React31.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx39("tbody", { ref, className: cn("[&_tr:last-child]:border-0", className), ...props }));
2107
2121
  TableBody.displayName = "TableBody";
@@ -2110,7 +2124,7 @@ var TableFooter = React31.forwardRef(({ className, ...props }, ref) => /* @__PUR
2110
2124
  {
2111
2125
  ref,
2112
2126
  className: cn(
2113
- "border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",
2127
+ "border-t border-t-foreground/[0.08] bg-muted/50 font-medium [&>tr]:last:border-b-0",
2114
2128
  className
2115
2129
  ),
2116
2130
  ...props
@@ -2122,7 +2136,7 @@ var TableRow = React31.forwardRef(({ className, ...props }, ref) => /* @__PURE__
2122
2136
  {
2123
2137
  ref,
2124
2138
  className: cn(
2125
- "border-b transition-all duration-[var(--duration-normal,200ms)] ease-out hover:bg-muted/50 data-[state=selected]:bg-muted",
2139
+ "border-b border-b-foreground/[0.08] transition-all duration-[var(--duration-normal,200ms)] ease-out hover:bg-muted/50 data-[state=selected]:bg-muted",
2126
2140
  className
2127
2141
  ),
2128
2142
  ...props
@@ -2181,7 +2195,7 @@ function DataTable({
2181
2195
  columns,
2182
2196
  getCoreRowModel: getCoreRowModel()
2183
2197
  });
2184
- return /* @__PURE__ */ jsx40("div", { className: "rounded-md border", children: /* @__PURE__ */ jsxs13(Table, { "aria-label": ariaLabel, children: [
2198
+ return /* @__PURE__ */ jsx40("div", { className: "rounded-md border border-foreground/[0.08]", children: /* @__PURE__ */ jsxs13(Table, { "aria-label": ariaLabel, children: [
2185
2199
  caption ? /* @__PURE__ */ jsx40(TableCaption, { children: caption }) : null,
2186
2200
  /* @__PURE__ */ jsx40(TableHeader, { children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx40(TableRow, { children: headerGroup.headers.map((header) => /* @__PURE__ */ jsx40(TableHead, { children: header.isPlaceholder ? null : flexRender(header.column.columnDef.header, header.getContext()) }, header.id)) }, headerGroup.id)) }),
2187
2201
  /* @__PURE__ */ jsx40(TableBody, { children: table.getRowModel().rows?.length ? table.getRowModel().rows.map((row) => /* @__PURE__ */ jsx40(TableRow, { "data-state": row.getIsSelected() && "selected", children: row.getVisibleCells().map((cell) => /* @__PURE__ */ jsx40(TableCell, { children: flexRender(cell.column.columnDef.cell, cell.getContext()) }, cell.id)) }, row.id)) : /* @__PURE__ */ jsx40(TableRow, { children: /* @__PURE__ */ jsx40(TableCell, { colSpan: columns.length, className: "h-24 text-center", children: "No results." }) }) })
@@ -2346,10 +2360,10 @@ function Calendar({
2346
2360
  caption_label: "text-sm font-medium",
2347
2361
  nav: "absolute inset-x-3 top-3 z-10 flex items-center justify-between pointer-events-none [&>button]:pointer-events-auto",
2348
2362
  button_previous: cn(
2349
- "inline-flex h-7 w-7 items-center justify-center rounded-md border bg-transparent p-0 opacity-60 transition-all duration-[var(--duration-normal,200ms)] ease-out hover:opacity-100 disabled:pointer-events-none disabled:opacity-30"
2363
+ "inline-flex h-7 w-7 items-center justify-center rounded-md border border-foreground/[0.08] bg-transparent p-0 opacity-60 transition-all duration-[var(--duration-normal,200ms)] ease-out hover:opacity-100 disabled:pointer-events-none disabled:opacity-30"
2350
2364
  ),
2351
2365
  button_next: cn(
2352
- "inline-flex h-7 w-7 items-center justify-center rounded-md border bg-transparent p-0 opacity-60 transition-all duration-[var(--duration-normal,200ms)] ease-out hover:opacity-100 disabled:pointer-events-none disabled:opacity-30"
2366
+ "inline-flex h-7 w-7 items-center justify-center rounded-md border border-foreground/[0.08] bg-transparent p-0 opacity-60 transition-all duration-[var(--duration-normal,200ms)] ease-out hover:opacity-100 disabled:pointer-events-none disabled:opacity-30"
2353
2367
  ),
2354
2368
  month_grid: "w-full border-collapse space-y-1",
2355
2369
  weekdays: "flex",
@@ -2416,6 +2430,7 @@ function DatePicker({
2416
2430
  "aria-label": ariaLabel ?? placeholder,
2417
2431
  className: cn(
2418
2432
  "inline-flex h-[var(--control-height-md,2.5rem)] w-[240px] items-center justify-start gap-[var(--gap-sm,0.5rem)] rounded-md border border-input bg-background px-[var(--space-3,0.75rem)] py-[var(--space-2,0.5rem)] text-left text-sm font-normal transition-all duration-[var(--duration-normal,200ms)] ease-out",
2433
+ "shadow-sm inset-ring-1 inset-ring-foreground/[0.06]",
2419
2434
  "hover:bg-accent hover:text-accent-foreground",
2420
2435
  "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
2421
2436
  "disabled:pointer-events-none disabled:opacity-50",
@@ -2497,6 +2512,7 @@ var InputOTPSlot = React34.forwardRef(
2497
2512
  ref,
2498
2513
  className: cn(
2499
2514
  "relative flex h-[var(--control-height-md,2.5rem)] w-[var(--control-height-md,2.5rem)] items-center justify-center border-y border-r border-input text-sm transition-all duration-[var(--duration-normal,200ms)] ease-out",
2515
+ "inset-ring-1 inset-ring-foreground/[0.06]",
2500
2516
  "first:rounded-l-md first:border-l last:rounded-r-md",
2501
2517
  isActive && "z-10 ring-2 ring-ring ring-offset-2 ring-offset-background",
2502
2518
  className
@@ -2554,7 +2570,7 @@ function CommandDialog({
2554
2570
  /* @__PURE__ */ jsx45(DialogContent, { className: "overflow-hidden p-0", scrollable: false, children: /* @__PURE__ */ jsx45(Command, { className: "[&_[cmdk-group-heading]]:px-[var(--space-2,0.5rem)] [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-[var(--space-2,0.5rem)] [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-[var(--space-2,0.5rem)] [&_[cmdk-item]]:py-[var(--space-3,0.75rem)] [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5", children }) })
2555
2571
  ] });
2556
2572
  }
2557
- var CommandInput = React35.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs17("div", { className: "flex items-center border-b px-[var(--space-3,0.75rem)]", "cmdk-input-wrapper": "", children: [
2573
+ var CommandInput = React35.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs17("div", { className: "flex items-center border-b border-b-foreground/[0.08] px-[var(--space-3,0.75rem)]", "cmdk-input-wrapper": "", children: [
2558
2574
  /* @__PURE__ */ jsxs17(
2559
2575
  "svg",
2560
2576
  {
@@ -2615,7 +2631,7 @@ var CommandSeparator = React35.forwardRef(({ className, ...props }, ref) => /* @
2615
2631
  ref,
2616
2632
  role: "none",
2617
2633
  "data-cmdk-separator": "",
2618
- className: cn("-mx-[var(--space-1,0.25rem)] h-px bg-border", className),
2634
+ className: cn("-mx-[var(--space-1,0.25rem)] h-px bg-foreground/[0.12]", className),
2619
2635
  ...props
2620
2636
  }
2621
2637
  ));
@@ -2681,6 +2697,7 @@ function Combobox({
2681
2697
  disabled,
2682
2698
  className: cn(
2683
2699
  "inline-flex h-[var(--control-height-md,2.5rem)] w-[240px] items-center justify-between gap-[var(--gap-sm,0.5rem)] rounded-md border border-input bg-background px-[var(--space-3,0.75rem)] py-[var(--space-2,0.5rem)] text-sm font-normal transition-all duration-[var(--duration-normal,200ms)] ease-out",
2700
+ "shadow-sm inset-ring-1 inset-ring-foreground/[0.06]",
2684
2701
  "hover:bg-accent hover:text-accent-foreground",
2685
2702
  "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
2686
2703
  "disabled:pointer-events-none disabled:opacity-50",
@@ -2776,6 +2793,7 @@ SheetOverlay.displayName = "SheetOverlay";
2776
2793
  var sheetVariants = cva12(
2777
2794
  cn(
2778
2795
  "fixed z-50 gap-[var(--gap-md,1rem)] bg-background p-[var(--space-6,1.5rem)] shadow-lg",
2796
+ "border-foreground/[0.08]",
2779
2797
  "transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out",
2780
2798
  "data-[state=closed]:duration-[var(--duration-slow,300ms)] data-[state=open]:duration-500"
2781
2799
  ),
@@ -2910,7 +2928,7 @@ var DrawerContent = React38.forwardRef(({ className, children, ...props }, ref)
2910
2928
  {
2911
2929
  ref,
2912
2930
  className: cn(
2913
- "fixed inset-x-0 bottom-0 z-50 mt-24 flex h-auto flex-col rounded-t-[10px] border bg-background",
2931
+ "fixed inset-x-0 bottom-0 z-50 mt-24 flex h-auto flex-col rounded-t-[10px] border border-foreground/[0.08] bg-background",
2914
2932
  className
2915
2933
  ),
2916
2934
  ...props,
@@ -2982,7 +3000,7 @@ function ResizableHandle({ withHandle, className, ...props }) {
2982
3000
  ResizablePrimitiveSeparator,
2983
3001
  {
2984
3002
  className: cn(
2985
- "relative flex w-px items-center justify-center bg-border transition-all duration-[var(--duration-normal,200ms)] ease-out hover:bg-ring data-[separator=active]:bg-ring",
3003
+ "relative flex w-px items-center justify-center bg-foreground/[0.12] transition-all duration-[var(--duration-normal,200ms)] ease-out hover:bg-ring data-[separator=active]:bg-ring",
2986
3004
  "after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2",
2987
3005
  "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
2988
3006
  "aria-[orientation=horizontal]:h-px aria-[orientation=horizontal]:w-full",
@@ -3059,7 +3077,7 @@ function SidebarProvider({
3059
3077
  SidebarProvider.displayName = "SidebarProvider";
3060
3078
  var sidebarVariants = cva13(
3061
3079
  cn(
3062
- "flex h-full shrink-0 flex-col border-r bg-background text-foreground",
3080
+ "flex h-full shrink-0 flex-col border-foreground/[0.08] border-r bg-background text-foreground",
3063
3081
  "transition-[width] duration-[var(--duration-normal,200ms)] ease-out"
3064
3082
  ),
3065
3083
  {
@@ -3153,7 +3171,7 @@ var SidebarHeader = React39.forwardRef(
3153
3171
  "div",
3154
3172
  {
3155
3173
  ref,
3156
- className: cn("flex items-center gap-[var(--gap-sm,0.5rem)] border-b p-[var(--space-4,1rem)]", className),
3174
+ className: cn("flex items-center gap-[var(--gap-sm,0.5rem)] border-b border-b-foreground/[0.08] p-[var(--space-4,1rem)]", className),
3157
3175
  ...props
3158
3176
  }
3159
3177
  )
@@ -3175,7 +3193,7 @@ var SidebarFooter = React39.forwardRef(
3175
3193
  "div",
3176
3194
  {
3177
3195
  ref,
3178
- className: cn("mt-auto border-t p-[var(--space-4,1rem)]", className),
3196
+ className: cn("mt-auto border-t border-t-foreground/[0.08] p-[var(--space-4,1rem)]", className),
3179
3197
  ...props
3180
3198
  }
3181
3199
  )