@trading-game/design-intelligence-layer 0.8.7 → 0.8.9

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/README.md CHANGED
@@ -247,6 +247,8 @@ All tokens are CSS custom properties, loaded automatically via `@trading-game/de
247
247
  | `bg-popover` | `--popover` | `#FFFFFF` | Popover/dropdown surface |
248
248
  | `bg-subtle` | `--subtle` | `#F5F5F5` | Subtle tinted surface |
249
249
  | `bg-overlay` | `--overlay` | black 50% | Modal/dialog backdrop only |
250
+ | `bg-tabs` | `--tabs` | black 4% alpha | Tab container background (`variant="default"`) |
251
+ | `bg-tabs-active` | `--tabs-active` | `#FFFFFF` | Active / selected tab pill |
250
252
  | `bg-primary` | `--primary` | `#2323FF` | Brand blue — CTAs |
251
253
  | `bg-primary-hover` | `--primary-hover` | `#0B0BD2` | Primary button hover (darker blue) |
252
254
  | `bg-secondary-hover` | `--secondary-hover` | `#EEEEEE` | Outline/secondary hover (light grey) |
@@ -320,6 +322,23 @@ Opacity on tokens is allowed and encouraged:
320
322
  ❌ bg-white → NOT a token, use bg-background or bg-card
321
323
  ```
322
324
 
325
+ ### Primitive alpha scales
326
+
327
+ For structured alpha surfaces, the design system ships two internal alpha primitive scales. These are **CSS variables only** — not exposed as Tailwind utility classes. Always reference them via a semantic token, never directly in components.
328
+
329
+ ```
330
+ --primitive-mono-alpha-4 through --primitive-mono-alpha-80 (black at N%)
331
+ --primitive-blue-alpha-4 through --primitive-blue-alpha-80 (brand blue at N%)
332
+ Stops: 4 · 8 · 16 · 24 · 32 · 40 · 50 · 64 · 80
333
+ ```
334
+
335
+ Example — how `--tabs` uses the alpha scale:
336
+ ```css
337
+ --tabs: var(--primitive-mono-alpha-4); /* black at 4% — tab container background */
338
+ ```
339
+
340
+ > `--primitive-black-50` is deprecated. It now aliases `--primitive-mono-alpha-50`. The `--overlay` semantic token is unaffected.
341
+
323
342
  ---
324
343
 
325
344
  ## Typography
package/dist/index.cjs CHANGED
@@ -524,7 +524,7 @@ var import_class_variance_authority2 = require("class-variance-authority");
524
524
  var import_radix_ui2 = require("radix-ui");
525
525
  var import_jsx_runtime3 = require("react/jsx-runtime");
526
526
  var buttonVariants = (0, import_class_variance_authority2.cva)(
527
- "inline-flex shrink-0 items-center justify-center whitespace-nowrap transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 active:opacity-60 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 font-display font-bold",
527
+ "inline-flex shrink-0 items-center justify-center whitespace-nowrap transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 active:opacity-60 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 font-display font-bold",
528
528
  {
529
529
  variants: {
530
530
  variant: {
@@ -1507,7 +1507,7 @@ function CarouselNext(_a) {
1507
1507
  var React3 = __toESM(require("react"), 1);
1508
1508
  var RechartsPrimitive = __toESM(require("recharts"), 1);
1509
1509
  var import_jsx_runtime12 = require("react/jsx-runtime");
1510
- var THEMES = { light: "", dark: ".dark" };
1510
+ var THEMES = { light: "" };
1511
1511
  var ChartContext = React3.createContext(null);
1512
1512
  function useChart() {
1513
1513
  const context = React3.useContext(ChartContext);
@@ -1623,7 +1623,7 @@ function ChartTooltipContent({
1623
1623
  "div",
1624
1624
  {
1625
1625
  className: cn(
1626
- "grid min-w-[8rem] items-start gap-1.5 rounded-lg border border-border-subtle/50 bg-background px-2.5 py-1.5 text-xs shadow-xl",
1626
+ "grid min-w-[8rem] items-start gap-1.5 rounded-lg border border-border-subtle/50 bg-prominent px-2.5 py-1.5 text-xs shadow-xl",
1627
1627
  className
1628
1628
  ),
1629
1629
  children: [
@@ -1760,7 +1760,7 @@ function Checkbox(_a) {
1760
1760
  __spreadProps(__spreadValues({
1761
1761
  "data-slot": "checkbox",
1762
1762
  className: cn(
1763
- "peer size-4 shrink-0 rounded-[2px] border border-input shadow-xs transition-shadow outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:border-primary data-[state=checked]:bg-primary data-[state=checked]:text-on-prominent-static-inverse dark:bg-input/30 dark:data-[state=checked]:bg-primary",
1763
+ "peer size-4 shrink-0 rounded-[2px] border border-input shadow-xs transition-shadow outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:border-primary data-[state=checked]:bg-primary data-[state=checked]:text-on-prominent-static-inverse",
1764
1764
  className
1765
1765
  )
1766
1766
  }, props), {
@@ -1837,7 +1837,7 @@ function Textarea(_a) {
1837
1837
  __spreadValues({
1838
1838
  "data-slot": "textarea",
1839
1839
  className: cn(
1840
- "flex field-sizing-content min-h-16 w-full rounded-sm border border-border-subtle bg-white/5 px-3 py-2 text-base text-on-prominent font-body shadow-xs transition-[color,box-shadow] outline-none placeholder:text-on-muted focus-visible:border-primary focus-visible:ring-[3px] focus-visible:ring-primary/[0.08] disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 md:text-sm dark:aria-invalid:ring-destructive/40",
1840
+ "flex field-sizing-content min-h-16 w-full rounded-sm border border-border-subtle bg-white/5 px-3 py-2 text-base text-on-prominent font-body shadow-xs transition-[color,box-shadow] outline-none placeholder:text-on-muted focus-visible:border-primary focus-visible:ring-[3px] focus-visible:ring-primary/[0.08] disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 md:text-sm",
1841
1841
  className
1842
1842
  )
1843
1843
  }, props)
@@ -1864,7 +1864,7 @@ function InputGroup(_a) {
1864
1864
  // Focus state.
1865
1865
  "has-[[data-slot=input-group-control]:focus-visible]:border-primary has-[[data-slot=input-group-control]:focus-visible]:ring-[3px] has-[[data-slot=input-group-control]:focus-visible]:ring-primary/[0.08]",
1866
1866
  // Error state.
1867
- "has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-destructive/20 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40",
1867
+ "has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-destructive/20",
1868
1868
  className
1869
1869
  )
1870
1870
  }, props)
@@ -1972,7 +1972,7 @@ function InputGroupInput(_a) {
1972
1972
  __spreadValues({
1973
1973
  "data-slot": "input-group-control",
1974
1974
  className: cn(
1975
- "flex-1 rounded-none border-0 bg-transparent shadow-none focus-visible:ring-0 dark:bg-transparent",
1975
+ "flex-1 rounded-none border-0 bg-transparent shadow-none focus-visible:ring-0",
1976
1976
  className
1977
1977
  )
1978
1978
  }, props)
@@ -1989,7 +1989,7 @@ function InputGroupTextarea(_a) {
1989
1989
  __spreadValues({
1990
1990
  "data-slot": "input-group-control",
1991
1991
  className: cn(
1992
- "flex-1 resize-none rounded-none border-0 bg-transparent py-3 shadow-none focus-visible:ring-0 dark:bg-transparent",
1992
+ "flex-1 resize-none rounded-none border-0 bg-transparent py-3 shadow-none focus-visible:ring-0",
1993
1993
  className
1994
1994
  )
1995
1995
  }, props)
@@ -2234,7 +2234,7 @@ function ComboboxChips(_a) {
2234
2234
  __spreadValues({
2235
2235
  "data-slot": "combobox-chips",
2236
2236
  className: cn(
2237
- "flex min-h-9 flex-wrap items-center gap-1.5 rounded-md border border-input bg-transparent bg-clip-padding px-2.5 py-1.5 text-sm shadow-xs transition-[color,box-shadow] focus-within:border-ring focus-within:ring-[3px] focus-within:ring-ring/50 has-aria-invalid:border-destructive has-aria-invalid:ring-[3px] has-aria-invalid:ring-destructive/20 has-data-[slot=combobox-chip]:px-1.5 dark:bg-input/30 dark:has-aria-invalid:border-destructive/50 dark:has-aria-invalid:ring-destructive/40",
2237
+ "flex min-h-9 flex-wrap items-center gap-1.5 rounded-md border border-input bg-transparent bg-clip-padding px-2.5 py-1.5 text-sm shadow-xs transition-[color,box-shadow] focus-within:border-ring focus-within:ring-[3px] focus-within:ring-ring/50 has-aria-invalid:border-destructive has-aria-invalid:ring-[3px] has-aria-invalid:ring-destructive/20 has-data-[slot=combobox-chip]:px-1.5",
2238
2238
  className
2239
2239
  )
2240
2240
  }, props)
@@ -2718,7 +2718,7 @@ function ContextMenuItem(_a) {
2718
2718
  "data-inset": inset,
2719
2719
  "data-variant": variant,
2720
2720
  className: cn(
2721
- "relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-secondary-hover focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-on-subtle data-[variant=destructive]:*:[svg]:text-destructive!",
2721
+ "relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-secondary-hover focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-on-subtle data-[variant=destructive]:*:[svg]:text-destructive!",
2722
2722
  className
2723
2723
  )
2724
2724
  }, props)
@@ -3020,7 +3020,7 @@ function DropdownMenuItem(_a) {
3020
3020
  "data-inset": inset,
3021
3021
  "data-variant": variant,
3022
3022
  className: cn(
3023
- "relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-secondary-hover focus:text-on-prominent data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-on-subtle data-[variant=destructive]:*:[svg]:text-destructive!",
3023
+ "relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-secondary-hover focus:text-on-prominent data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-on-subtle data-[variant=destructive]:*:[svg]:text-destructive!",
3024
3024
  className
3025
3025
  )
3026
3026
  }, props)
@@ -3453,7 +3453,7 @@ function FieldLabel(_a) {
3453
3453
  className: cn(
3454
3454
  "group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50",
3455
3455
  "has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col has-[>[data-slot=field]]:rounded-md has-[>[data-slot=field]]:border [&>*]:data-[slot=field]:p-4",
3456
- "has-data-[state=checked]:border-primary has-data-[state=checked]:bg-primary/5 dark:has-data-[state=checked]:bg-primary/10",
3456
+ "has-data-[state=checked]:border-primary has-data-[state=checked]:bg-primary/5",
3457
3457
  className
3458
3458
  )
3459
3459
  }, props)
@@ -3510,7 +3510,7 @@ function FieldSeparator(_a) {
3510
3510
  children && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
3511
3511
  "span",
3512
3512
  {
3513
- className: "relative mx-auto block w-fit bg-background px-2 text-on-subtle",
3513
+ className: "relative mx-auto block w-fit bg-prominent px-2 text-on-subtle",
3514
3514
  "data-slot": "field-separator-content",
3515
3515
  children
3516
3516
  }
@@ -3756,7 +3756,7 @@ function InputOTPSlot(_a) {
3756
3756
  "data-slot": "input-otp-slot",
3757
3757
  "data-active": isActive,
3758
3758
  className: cn(
3759
- "relative flex h-9 w-9 items-center justify-center border border-border-subtle bg-white/5 text-sm font-body text-on-prominent shadow-xs transition-[color,box-shadow] outline-none first:rounded-l-sm last:rounded-r-sm aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 data-[active=true]:z-10 data-[active=true]:border-primary data-[active=true]:ring-[3px] data-[active=true]:ring-primary/[0.08] data-[active=true]:aria-invalid:border-destructive data-[active=true]:aria-invalid:ring-destructive/20 dark:data-[active=true]:aria-invalid:ring-destructive/40",
3759
+ "relative flex h-9 w-9 items-center justify-center border border-border-subtle bg-white/5 text-sm font-body text-on-prominent shadow-xs transition-[color,box-shadow] outline-none first:rounded-l-sm last:rounded-r-sm aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[active=true]:z-10 data-[active=true]:border-primary data-[active=true]:ring-[3px] data-[active=true]:ring-primary/[0.08] data-[active=true]:aria-invalid:border-destructive data-[active=true]:aria-invalid:ring-destructive/20",
3760
3760
  className
3761
3761
  )
3762
3762
  }, props), {
@@ -4037,7 +4037,7 @@ function Menubar(_a) {
4037
4037
  __spreadValues({
4038
4038
  "data-slot": "menubar",
4039
4039
  className: cn(
4040
- "flex h-9 items-center gap-1 rounded-md border border-border-subtle bg-background p-1 shadow-xs",
4040
+ "flex h-9 items-center gap-1 rounded-md border border-border-subtle bg-prominent p-1 shadow-xs",
4041
4041
  className
4042
4042
  )
4043
4043
  }, props)
@@ -4119,7 +4119,7 @@ function MenubarItem(_a) {
4119
4119
  "data-inset": inset,
4120
4120
  "data-variant": variant,
4121
4121
  className: cn(
4122
- "relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none hover:bg-secondary-hover hover:text-on-prominent focus:bg-secondary-hover focus:text-on-prominent data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-on-subtle data-[variant=destructive]:*:[svg]:text-destructive!",
4122
+ "relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none hover:bg-secondary-hover hover:text-on-prominent focus:bg-secondary-hover focus:text-on-prominent data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-on-subtle data-[variant=destructive]:*:[svg]:text-destructive!",
4123
4123
  className
4124
4124
  )
4125
4125
  }, props)
@@ -4299,7 +4299,7 @@ function NativeSelect(_a) {
4299
4299
  "data-slot": "native-select",
4300
4300
  "data-size": size,
4301
4301
  className: cn(
4302
- "h-9 w-full min-w-0 appearance-none rounded-md border border-input bg-transparent px-3 py-2 pr-9 text-sm shadow-xs transition-[color,box-shadow] outline-none selection:bg-primary selection:text-on-prominent-static-inverse placeholder:text-on-subtle disabled:pointer-events-none disabled:cursor-not-allowed data-[size=sm]:h-8 data-[size=sm]:py-1 dark:bg-input/30 dark:hover:bg-input/50",
4302
+ "h-9 w-full min-w-0 appearance-none rounded-md border border-input bg-transparent px-3 py-2 pr-9 text-sm shadow-xs transition-[color,box-shadow] outline-none selection:bg-primary selection:text-on-prominent-static-inverse placeholder:text-on-subtle disabled:pointer-events-none disabled:cursor-not-allowed data-[size=sm]:h-8 data-[size=sm]:py-1",
4303
4303
  "focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50",
4304
4304
  className
4305
4305
  )
@@ -4738,7 +4738,7 @@ function RadioGroupItem(_a) {
4738
4738
  __spreadProps(__spreadValues({
4739
4739
  "data-slot": "radio-group-item",
4740
4740
  className: cn(
4741
- "aspect-square size-4 shrink-0 rounded-full border border-input text-primary shadow-xs transition-[color,box-shadow] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:bg-input/30 dark:aria-invalid:ring-destructive/40",
4741
+ "aspect-square size-4 shrink-0 rounded-full border border-input text-primary shadow-xs transition-[color,box-shadow] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20",
4742
4742
  className
4743
4743
  )
4744
4744
  }, props), {
@@ -4884,10 +4884,12 @@ function SelectTrigger(_a) {
4884
4884
  var _b = _a, {
4885
4885
  className,
4886
4886
  size = "default",
4887
+ readOnly = false,
4887
4888
  children
4888
4889
  } = _b, props = __objRest(_b, [
4889
4890
  "className",
4890
4891
  "size",
4892
+ "readOnly",
4891
4893
  "children"
4892
4894
  ]);
4893
4895
  return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
@@ -4895,14 +4897,16 @@ function SelectTrigger(_a) {
4895
4897
  __spreadProps(__spreadValues({
4896
4898
  "data-slot": "select-trigger",
4897
4899
  "data-size": size,
4900
+ "data-readonly": readOnly ? "" : void 0,
4901
+ disabled: readOnly || props.disabled,
4898
4902
  className: cn(
4899
- "flex w-fit items-center justify-between gap-2 rounded-sm border border-input bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[placeholder]:text-on-subtle data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-on-subtle",
4903
+ "flex w-fit items-center justify-between gap-2 rounded-sm border border-input bg-prominent appearance-none px-3 py-2 text-sm whitespace-nowrap transition-[color,box-shadow] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[placeholder]:text-on-subtle data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-on-subtle data-[readonly]:cursor-default data-[readonly]:opacity-100",
4900
4904
  className
4901
4905
  )
4902
4906
  }, props), {
4903
4907
  children: [
4904
4908
  children,
4905
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_radix_ui26.Select.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_lucide_react18.ChevronDownIcon, { className: "size-4 opacity-50" }) })
4909
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_radix_ui26.Select.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_lucide_react18.ChevronDownIcon, { className: cn("size-4", readOnly ? "opacity-30" : "opacity-50") }) })
4906
4910
  ]
4907
4911
  })
4908
4912
  );
@@ -6054,7 +6058,7 @@ function Switch(_a) {
6054
6058
  "data-slot": "switch",
6055
6059
  "data-size": size,
6056
6060
  className: cn(
6057
- "peer group/switch inline-flex shrink-0 items-center rounded-[6px] border border-transparent p-[3px] shadow-xs transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-6 data-[size=default]:w-11 data-[size=sm]:h-5 data-[size=sm]:w-9 data-[state=checked]:bg-slider-range data-[state=unchecked]:bg-input dark:data-[state=unchecked]:bg-input/80",
6061
+ "peer group/switch inline-flex shrink-0 items-center rounded-[6px] border border-transparent p-[3px] shadow-xs transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-6 data-[size=default]:w-11 data-[size=sm]:h-5 data-[size=sm]:w-9 data-[state=checked]:bg-slider-range data-[state=unchecked]:bg-input",
6058
6062
  className
6059
6063
  )
6060
6064
  }, props), {
@@ -6207,7 +6211,7 @@ var tabsListVariants = (0, import_class_variance_authority11.cva)(
6207
6211
  {
6208
6212
  variants: {
6209
6213
  variant: {
6210
- default: "bg-subtle",
6214
+ default: "bg-tabs",
6211
6215
  line: "gap-1 bg-transparent"
6212
6216
  },
6213
6217
  size: {
@@ -6260,7 +6264,7 @@ function TabsTrigger(_a) {
6260
6264
  "group-data-[size=sm]/tabs-list:gap-1 group-data-[size=sm]/tabs-list:rounded-sm group-data-[size=sm]/tabs-list:px-2 group-data-[size=sm]/tabs-list:text-xs",
6261
6265
  "group-data-[size=lg]/tabs-list:gap-2 group-data-[size=lg]/tabs-list:rounded-lg group-data-[size=lg]/tabs-list:px-4 group-data-[size=lg]/tabs-list:text-base",
6262
6266
  "group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:hover:bg-transparent group-data-[variant=line]/tabs-list:hover:text-primary group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent group-data-[variant=line]/tabs-list:data-[state=active]:border-transparent",
6263
- "data-[state=active]:bg-background data-[state=active]:border-transparent data-[state=active]:text-primary data-[state=active]:font-semibold",
6267
+ "data-[state=active]:bg-tabs-active data-[state=active]:border-transparent data-[state=active]:text-primary data-[state=active]:font-semibold",
6264
6268
  "after:absolute after:bg-primary after:opacity-0 after:transition-opacity group-data-[orientation=horizontal]/tabs:after:inset-x-0 group-data-[orientation=horizontal]/tabs:after:bottom-[-5px] group-data-[orientation=horizontal]/tabs:after:h-0.5 group-data-[orientation=vertical]/tabs:after:inset-y-0 group-data-[orientation=vertical]/tabs:after:-right-1 group-data-[orientation=vertical]/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-[state=active]:after:opacity-100",
6265
6269
  iconPosition === "top" && "h-auto flex-col gap-1 py-2",
6266
6270
  iconPosition === "top" && "group-data-[size=sm]/tabs-list:gap-0.5 group-data-[size=sm]/tabs-list:py-1.5",
@@ -6381,7 +6385,7 @@ var import_class_variance_authority12 = require("class-variance-authority");
6381
6385
  var import_radix_ui33 = require("radix-ui");
6382
6386
  var import_jsx_runtime56 = require("react/jsx-runtime");
6383
6387
  var toggleVariants = (0, import_class_variance_authority12.cva)(
6384
- "inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-[color,box-shadow] outline-none hover:bg-secondary-hover hover:text-on-prominent focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[state=on]:bg-secondary-hover data-[state=on]:border-transparent data-[state=on]:text-primary dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
6388
+ "inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-[color,box-shadow] outline-none hover:bg-secondary-hover hover:text-on-prominent focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[state=on]:bg-secondary-hover data-[state=on]:border-transparent data-[state=on]:text-primary [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
6385
6389
  {
6386
6390
  variants: {
6387
6391
  variant: {