@tempots/beatui 1.3.0 → 1.5.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 (67) hide show
  1. package/dist/auth/index.cjs.js +1 -1
  2. package/dist/auth/index.es.js +1 -1
  3. package/dist/{auth-divider-D_3gKZ6g.js → auth-divider-BIATan1F.js} +3 -3
  4. package/dist/{auth-divider-itm5-j5G.cjs → auth-divider-CVKfA8Cp.cjs} +1 -1
  5. package/dist/beatui.css +416 -55
  6. package/dist/beatui.tailwind.css +416 -55
  7. package/dist/better-auth/index.cjs.js +1 -1
  8. package/dist/better-auth/index.es.js +2 -2
  9. package/dist/deep-merge-B33Qtlmw.cjs +1 -0
  10. package/dist/{deep-merge-CzZVsVF-.js → deep-merge-BUsrE2v4.js} +130 -130
  11. package/dist/{duration-input-BrYLC1js.cjs → duration-input-C5il_E0F.cjs} +1 -1
  12. package/dist/{duration-input-CFu6vq-y.js → duration-input-DoCCrqOG.js} +1 -1
  13. package/dist/index.cjs.js +4 -4
  14. package/dist/index.es.js +6560 -6032
  15. package/dist/json-schema/index.cjs.js +1 -1
  16. package/dist/json-schema/index.es.js +107 -107
  17. package/dist/json-structure/index.cjs.js +1 -1
  18. package/dist/json-structure/index.es.js +3 -3
  19. package/dist/{modal-YKqlh4Dk.js → modal-BHlp4QeT.js} +1 -1
  20. package/dist/{modal-DCxNGrzk.cjs → modal-BmpfNL48.cjs} +1 -1
  21. package/dist/{notice-Q0A1gIho.cjs → notice-BBnSXYUc.cjs} +1 -1
  22. package/dist/{notice-Du3tWJTW.js → notice-BXKtBEiC.js} +1 -1
  23. package/dist/types/components/data/auto-color-badge.d.ts +60 -0
  24. package/dist/types/components/data/data-table-context.d.ts +9 -1
  25. package/dist/types/components/data/data-table-row-details.d.ts +21 -0
  26. package/dist/types/components/data/data-table-types.d.ts +23 -0
  27. package/dist/types/components/data/index.d.ts +2 -0
  28. package/dist/types/components/form/control/control.d.ts +5 -5
  29. package/dist/types/components/form/control/list-control.d.ts +11 -11
  30. package/dist/types/components/form/fieldset/fieldset.d.ts +60 -0
  31. package/dist/types/components/form/fieldset/index.d.ts +1 -0
  32. package/dist/types/components/form/index.d.ts +1 -0
  33. package/dist/types/components/form/input/combobox-input.d.ts +2 -2
  34. package/dist/types/components/form/input/combobox-tags-input.d.ts +1 -1
  35. package/dist/types/components/form/input/date-time-input.d.ts +1 -1
  36. package/dist/types/components/form/input/dropdown-input.d.ts +2 -2
  37. package/dist/types/components/form/input/field-layout.d.ts +64 -0
  38. package/dist/types/components/form/input/{input-wrapper.d.ts → field.d.ts} +23 -14
  39. package/dist/types/components/form/input/index.d.ts +2 -1
  40. package/dist/types/components/form/input/multi-select.d.ts +2 -2
  41. package/dist/types/components/form/input/native-select.d.ts +1 -1
  42. package/dist/types/components/form/input/range-slider.d.ts +19 -2
  43. package/dist/types/components/form/input/select-tags-input.d.ts +1 -1
  44. package/dist/types/components/format/format-bigint.d.ts +64 -0
  45. package/dist/types/components/format/format-date-time.d.ts +54 -0
  46. package/dist/types/components/format/format-date.d.ts +82 -0
  47. package/dist/types/components/format/format-display-name.d.ts +70 -0
  48. package/dist/types/components/format/format-file-size.d.ts +30 -0
  49. package/dist/types/components/format/format-list.d.ts +61 -0
  50. package/dist/types/components/format/format-number.d.ts +88 -0
  51. package/dist/types/components/format/format-plural.d.ts +96 -0
  52. package/dist/types/components/format/format-relative-time.d.ts +62 -0
  53. package/dist/types/components/format/format-time.d.ts +66 -0
  54. package/dist/types/components/format/index.d.ts +11 -0
  55. package/dist/types/components/i18n/locale-selector.d.ts +1 -1
  56. package/dist/types/components/json-schema/controls/composition-shared.d.ts +1 -1
  57. package/dist/types/components/json-schema/controls/shared-utils.d.ts +3 -3
  58. package/dist/types/components/json-schema/widgets/string-controls.d.ts +2 -2
  59. package/dist/types/components/json-schema-display/display-wrapper.d.ts +1 -1
  60. package/dist/types/index.d.ts +1 -0
  61. package/dist/use-form-CP6nftVl.cjs +2 -0
  62. package/dist/{use-form-D_TJyZhP.js → use-form-CmQdxpOi.js} +474 -434
  63. package/dist/{widget-customization-DELy3SMQ.cjs → widget-customization-B0y-eesp.cjs} +1 -1
  64. package/dist/{widget-customization-BAchyOUo.js → widget-customization-CKbR4Dsg.js} +2 -2
  65. package/package.json +1 -1
  66. package/dist/deep-merge-Bydz6jLt.cjs +0 -1
  67. package/dist/use-form-BvBkVEKi.cjs +0 -2
package/dist/beatui.css CHANGED
@@ -2247,6 +2247,40 @@ a:focus-visible {
2247
2247
  justify-content: center;
2248
2248
  }
2249
2249
 
2250
+ /* AutoColorBadge Component — reuses badge sizing/layout tokens */
2251
+ .bc-auto-color-badge {
2252
+ display: inline-flex;
2253
+ align-items: center;
2254
+ justify-content: center;
2255
+ gap: var(--badge-gap, var(--control-gap-md));
2256
+ border: var(--border-width-default) solid transparent;
2257
+ font-family: var(
2258
+ --font-family-default-ui,
2259
+ var(--font-ui, var(--font-body, var(--font-family-sans)))
2260
+ );
2261
+ font-size: inherit;
2262
+ line-height: var(--line-height-none);
2263
+ border-radius: var(--radius-badge, var(--radius-control, var(--radius-md)));
2264
+ transition:
2265
+ background-color var(--motion-transition-fast) var(--motion-easing-standard),
2266
+ color var(--motion-transition-fast) var(--motion-easing-standard);
2267
+ white-space: nowrap;
2268
+ }
2269
+
2270
+ /* Accessibility adjustments */
2271
+ @media (prefers-contrast: high) {
2272
+ .bc-auto-color-badge {
2273
+ border-width: var(--border-width-medium);
2274
+ border-color: currentColor;
2275
+ }
2276
+ }
2277
+
2278
+ @media (prefers-reduced-motion: reduce) {
2279
+ .bc-auto-color-badge {
2280
+ transition: none;
2281
+ }
2282
+ }
2283
+
2250
2284
  /* Avatar Component */
2251
2285
  .bc-avatar {
2252
2286
  --avatar-bg: var(--color-base-500);
@@ -5732,6 +5766,15 @@ a:focus-visible {
5732
5766
  background-color: var(--color-base-800);
5733
5767
  }
5734
5768
 
5769
+ /* Format Components - Locale-aware data formatting display */
5770
+
5771
+ /* Tabular figures for numeric format components */
5772
+ .bc-format-number,
5773
+ .bc-format-bigint,
5774
+ .bc-format-file-size {
5775
+ font-variant-numeric: tabular-nums;
5776
+ }
5777
+
5735
5778
  .bc-flyout-container {
5736
5779
  z-index: var(--z-index-popover);
5737
5780
  }
@@ -6545,20 +6588,22 @@ a:focus-visible {
6545
6588
  }
6546
6589
  }
6547
6590
 
6548
- /* Input Wrapper Component */
6549
- .bc-input-wrapper {
6591
+ /* Field Component */
6592
+ .bc-field {
6550
6593
  display: flex;
6551
6594
  flex-direction: column;
6595
+ min-width: 0; /* Prevent overflow in grid/flex containers */
6552
6596
  }
6553
6597
 
6554
- .bc-input-wrapper--full-width {
6598
+ .bc-field--full-width {
6555
6599
  width: 100%;
6556
6600
  }
6557
6601
 
6558
6602
  /* Horizontal layout variants - use grid for proper error positioning */
6559
- .bc-input-wrapper--horizontal,
6560
- .bc-input-wrapper--horizontal-label-right,
6561
- .bc-input-wrapper--horizontal-fixed {
6603
+ .bc-field--horizontal,
6604
+ .bc-field--horizontal-label-right,
6605
+ .bc-field--horizontal-fixed,
6606
+ .bc-field--horizontal-end {
6562
6607
  display: grid;
6563
6608
  grid-template-columns: auto 1fr;
6564
6609
  align-items: center;
@@ -6566,25 +6611,39 @@ a:focus-visible {
6566
6611
  }
6567
6612
 
6568
6613
  /* Horizontal with label on right */
6569
- .bc-input-wrapper--horizontal-label-right {
6614
+ .bc-field--horizontal-label-right {
6570
6615
  grid-template-columns: 1fr auto;
6571
6616
  }
6572
6617
 
6573
- .bc-input-wrapper--horizontal-label-right .bc-input-wrapper__header {
6618
+ .bc-field--horizontal-label-right .bc-field__header {
6574
6619
  order: 2;
6575
6620
  }
6576
6621
 
6577
- .bc-input-wrapper--horizontal-label-right .bc-input-wrapper__content {
6622
+ .bc-field--horizontal-label-right .bc-field__content {
6578
6623
  order: 1;
6579
6624
  }
6580
6625
 
6581
6626
  /* Horizontal with fixed-width label */
6582
- .bc-input-wrapper--horizontal-fixed {
6583
- grid-template-columns: var(--input-wrapper-label-width, 12rem) 1fr;
6627
+ .bc-field--horizontal-fixed {
6628
+ grid-template-columns: var(--field-label-width, 7.5rem) 1fr;
6629
+ }
6630
+
6631
+ /* Horizontal with fixed-width label, right-aligned (flush with input) */
6632
+ .bc-field--horizontal-end {
6633
+ grid-template-columns: var(--field-label-width, 7.5rem) 1fr;
6634
+ }
6635
+
6636
+ .bc-field--horizontal-end .bc-field__header {
6637
+ justify-content: flex-end;
6638
+ }
6639
+
6640
+ .bc-field--horizontal-end .bc-field__label-section {
6641
+ text-align: right;
6642
+ align-items: flex-end;
6584
6643
  }
6585
6644
 
6586
6645
  /* Label header container */
6587
- .bc-input-wrapper__header {
6646
+ .bc-field__header {
6588
6647
  display: flex;
6589
6648
  align-items: center;
6590
6649
  justify-content: space-between;
@@ -6592,95 +6651,278 @@ a:focus-visible {
6592
6651
  }
6593
6652
 
6594
6653
  /* Label section container */
6595
- .bc-input-wrapper__label-section {
6654
+ .bc-field__label-section {
6596
6655
  display: flex;
6597
6656
  flex-direction: column;
6598
6657
  }
6599
6658
 
6600
6659
  /* Label container */
6601
- .bc-input-wrapper__label {
6660
+ .bc-field__label {
6602
6661
  display: flex;
6603
6662
  align-items: center;
6604
6663
  gap: var(--spacing-stack-2xs, var(--spacing-xs));
6605
6664
  }
6606
6665
 
6607
6666
  /* Label text styles */
6608
- .bc-input-wrapper__label-text {
6667
+ .bc-field__label-text {
6609
6668
  text-wrap: nowrap;
6610
6669
  font-size: var(--font-size-sm);
6611
6670
  line-height: var(--line-height-normal);
6612
6671
  }
6613
6672
 
6614
6673
  /* Label text states */
6615
- .bc-input-wrapper__label-text--default {
6674
+ .bc-field__label-text--default {
6616
6675
  color: var(--color-gray-600);
6617
6676
  font-weight: var(--font-weight-semibold);
6618
6677
  }
6619
6678
 
6620
- .bc-input-wrapper__label-text--disabled {
6679
+ .bc-field__label-text--disabled {
6621
6680
  color: var(--color-gray-500);
6622
6681
  font-weight: var(--font-weight-normal);
6623
6682
  }
6624
6683
 
6625
- .bc-input-wrapper__label-text--error {
6684
+ .bc-field__label-text--error {
6626
6685
  color: var(--color-danger-600);
6627
6686
  font-weight: var(--font-weight-normal);
6628
6687
  }
6629
6688
 
6630
6689
  /* Required symbol */
6631
- .bc-input-wrapper__required {
6690
+ .bc-field__required {
6632
6691
  font-size: var(--font-size-xs);
6633
6692
  color: var(--color-danger-600);
6634
6693
  vertical-align: top;
6635
6694
  }
6636
6695
 
6637
6696
  /* Error messages in horizontal mode span full width on their own row */
6638
- .bc-input-wrapper--horizontal .bc-input-wrapper__error,
6639
- .bc-input-wrapper--horizontal-label-right .bc-input-wrapper__error,
6640
- .bc-input-wrapper--horizontal-fixed .bc-input-wrapper__error {
6697
+ .bc-field--horizontal .bc-field__error,
6698
+ .bc-field--horizontal-label-right .bc-field__error,
6699
+ .bc-field--horizontal-fixed .bc-field__error,
6700
+ .bc-field--horizontal-end .bc-field__error {
6641
6701
  grid-column: 1 / -1;
6642
6702
  }
6643
6703
 
6644
- .bc-input-wrapper--horizontal-label-right .bc-input-wrapper__error {
6704
+ .bc-field--horizontal-label-right .bc-field__error {
6645
6705
  order: 3;
6646
6706
  }
6647
6707
 
6648
6708
  /* Description text */
6649
- .bc-input-wrapper__description {
6709
+ .bc-field__description {
6650
6710
  font-size: var(--font-size-sm);
6651
6711
  color: var(--color-gray-600);
6652
6712
  line-height: var(--line-height-normal);
6653
6713
  }
6654
6714
 
6655
6715
  /* Description under label in horizontal mode */
6656
- .bc-input-wrapper__description--under-label {
6716
+ .bc-field__description--under-label {
6657
6717
  font-size: var(--font-size-xs);
6658
6718
  }
6659
6719
 
6660
6720
  /* Error message */
6661
- .bc-input-wrapper__error {
6721
+ .bc-field__error {
6662
6722
  font-size: var(--font-size-sm);
6663
6723
  color: var(--color-danger-500);
6664
6724
  line-height: var(--line-height-normal);
6665
6725
  }
6666
6726
 
6727
+ /* Compact mode */
6728
+ .bc-field--compact {
6729
+ gap: var(--spacing-xs, var(--spacing-sm));
6730
+ }
6731
+
6732
+ .bc-field--compact .bc-field__label-text {
6733
+ font-size: var(--font-size-xs);
6734
+ }
6735
+
6736
+ .bc-field--compact .bc-field__description {
6737
+ font-size: var(--font-size-xs);
6738
+ }
6739
+
6740
+ .bc-field--compact .bc-field__error {
6741
+ font-size: var(--font-size-xs);
6742
+ }
6743
+
6744
+ /* Responsive layout — matches horizontal-fixed when wide, flips to vertical
6745
+ when the ancestor container (Fieldset) narrows below 480px. */
6746
+ .bc-field--responsive {
6747
+ display: grid;
6748
+ grid-template-columns: var(--field-label-width, 7.5rem) 1fr;
6749
+ align-items: center;
6750
+ gap: var(--spacing-sm, var(--spacing-lg));
6751
+ }
6752
+
6753
+ .bc-field--responsive .bc-field__error {
6754
+ grid-column: 1 / -1;
6755
+ }
6756
+
6757
+ @container (max-width: 480px) {
6758
+ .bc-field--responsive {
6759
+ display: flex;
6760
+ flex-direction: column;
6761
+ align-items: stretch;
6762
+ }
6763
+
6764
+ .bc-field--responsive .bc-field__error {
6765
+ grid-column: auto;
6766
+ }
6767
+ }
6768
+
6667
6769
  /* Dark mode styles */
6668
- .dark .bc-input-wrapper__label-text--default {
6770
+ .dark .bc-field__label-text--default {
6669
6771
  color: var(--text-normal);
6670
6772
  }
6671
6773
 
6672
- .dark .bc-input-wrapper__label-text--error {
6774
+ .dark .bc-field__label-text--error {
6673
6775
  color: var(--color-danger-300);
6674
6776
  }
6675
6777
 
6676
- .dark .bc-input-wrapper__required {
6778
+ .dark .bc-field__required {
6677
6779
  color: var(--color-danger-400);
6678
6780
  }
6679
6781
 
6680
- .dark .bc-input-wrapper__error {
6782
+ .dark .bc-field__error {
6681
6783
  color: var(--color-danger-400);
6682
6784
  }
6683
6785
 
6786
+ /* Fieldset Component */
6787
+ .bc-fieldset {
6788
+ container-type: inline-size;
6789
+ border: none;
6790
+ margin: 0;
6791
+ padding: 0;
6792
+ min-width: 0; /* Fix fieldset overflow behaviour */
6793
+ width: 100%;
6794
+ }
6795
+
6796
+ /* Bordered variant */
6797
+ .bc-fieldset--bordered {
6798
+ border: var(--border-width-default) solid var(--border-default);
6799
+ border-radius: var(--radius-md);
6800
+ padding: var(--spacing-md);
6801
+ }
6802
+
6803
+ .bc-fieldset--bordered > .bc-fieldset__legend {
6804
+ padding: 0 var(--spacing-sm);
6805
+ margin-left: calc(-1 * var(--spacing-sm));
6806
+ font-weight: var(--font-weight-semibold);
6807
+ font-size: var(--font-size-md);
6808
+ color: var(--text-normal);
6809
+ }
6810
+
6811
+ /* Plain variant */
6812
+ .bc-fieldset--plain > .bc-fieldset__legend {
6813
+ width: 100%;
6814
+ padding-bottom: var(--spacing-sm);
6815
+ border-bottom: var(--border-width-default) solid var(--border-divider);
6816
+ margin-bottom: var(--spacing-md);
6817
+ font-weight: var(--font-weight-semibold);
6818
+ font-size: var(--font-size-md);
6819
+ color: var(--text-normal);
6820
+ }
6821
+
6822
+ /* Card variant */
6823
+ .bc-fieldset--card {
6824
+ background-color: var(--bg-surface);
6825
+ border-radius: var(--radius-lg);
6826
+ box-shadow: var(--shadow-sm);
6827
+ padding: var(--spacing-lg);
6828
+ }
6829
+
6830
+ .bc-fieldset--card > .bc-fieldset__legend {
6831
+ font-weight: var(--font-weight-bold);
6832
+ font-size: var(--font-size-lg);
6833
+ color: var(--text-normal);
6834
+ padding: 0;
6835
+ margin-bottom: var(--spacing-sm);
6836
+ }
6837
+
6838
+ /* Legend */
6839
+ .bc-fieldset__legend {
6840
+ display: flex;
6841
+ align-items: center;
6842
+ }
6843
+
6844
+ .bc-fieldset__legend-toggle {
6845
+ all: unset;
6846
+ display: flex;
6847
+ align-items: center;
6848
+ gap: var(--spacing-sm);
6849
+ cursor: pointer;
6850
+ width: 100%;
6851
+ }
6852
+
6853
+ .bc-fieldset__legend-toggle:focus-visible {
6854
+ outline: var(--outline-width-focus) solid var(--interactive-focus);
6855
+ outline-offset: 2px;
6856
+ border-radius: var(--radius-sm);
6857
+ }
6858
+
6859
+ .bc-fieldset__collapse-icon {
6860
+ transition: transform var(--motion-duration-fast)
6861
+ var(--motion-easing-standard);
6862
+ }
6863
+
6864
+ .bc-fieldset__collapse-icon--collapsed {
6865
+ transform: rotate(-90deg);
6866
+ }
6867
+
6868
+ /* Description */
6869
+ .bc-fieldset__description {
6870
+ font-size: var(--font-size-sm);
6871
+ color: var(--text-muted);
6872
+ margin-bottom: var(--spacing-md);
6873
+ }
6874
+
6875
+ /* Content grid — defaults to single column. Multi-column is set via
6876
+ inline style by the component when columns > 1. */
6877
+ .bc-fieldset__content {
6878
+ display: grid;
6879
+ grid-template-columns: 1fr;
6880
+ gap: var(--fieldset-gap, var(--spacing-md));
6881
+ }
6882
+
6883
+ /* Disabled state */
6884
+ .bc-fieldset:disabled {
6885
+ opacity: 0.6;
6886
+ }
6887
+
6888
+ .bc-fieldset:disabled .bc-fieldset__legend-toggle {
6889
+ cursor: default;
6890
+ }
6891
+
6892
+ /* Dark mode */
6893
+ .dark .bc-fieldset--bordered {
6894
+ border-color: var(--border-default);
6895
+ }
6896
+
6897
+ .dark .bc-fieldset--plain > .bc-fieldset__legend {
6898
+ border-bottom-color: var(--border-default);
6899
+ }
6900
+
6901
+ .dark .bc-fieldset--card {
6902
+ background-color: var(--bg-elevated);
6903
+ box-shadow: var(--shadow-md);
6904
+ }
6905
+
6906
+ .dark .bc-fieldset__description {
6907
+ color: var(--text-muted);
6908
+ }
6909
+
6910
+ /* Accessibility */
6911
+ @media (prefers-reduced-motion: reduce) {
6912
+ .bc-fieldset__collapse-icon {
6913
+ transition: none;
6914
+ }
6915
+ }
6916
+
6917
+ @media (prefers-contrast: high) {
6918
+ .bc-fieldset--bordered {
6919
+ border-width: var(--border-width-medium);
6920
+ }
6921
+ .bc-fieldset--card {
6922
+ border: var(--border-width-medium) solid currentColor;
6923
+ }
6924
+ }
6925
+
6684
6926
  .bc-json-schema-object {
6685
6927
  border-left: var(--spacing-md) solid var(--color-base-200);
6686
6928
  padding-inline-start: var(--spacing-md);
@@ -12712,6 +12954,11 @@ span.bc-sidebar-link {
12712
12954
  background-color: var(--table-stripe-bg);
12713
12955
  }
12714
12956
 
12957
+ /* Detail rows inherit the parent row's background instead of zebra striping */
12958
+ .bc-table--with-striped-rows > tbody > tr.bc-data-table__detail-row {
12959
+ background-color: inherit;
12960
+ }
12961
+
12715
12962
  /* Hoverable striped rows - darker stripe on hover */
12716
12963
  .bc-table--hoverable.bc-table--with-striped-rows
12717
12964
  > tbody
@@ -16384,6 +16631,45 @@ span.bc-sidebar-link {
16384
16631
  color: var(--text-muted);
16385
16632
  }
16386
16633
 
16634
+ /* Markers container */
16635
+ .bc-range-slider__markers {
16636
+ position: absolute;
16637
+ top: 0;
16638
+ left: 0;
16639
+ width: 100%;
16640
+ height: 100%;
16641
+ pointer-events: none;
16642
+ z-index: 1;
16643
+ }
16644
+
16645
+ /* Individual marker dot */
16646
+ .bc-range-slider__marker {
16647
+ position: absolute;
16648
+ top: 50%;
16649
+ transform: translate(-50%, -50%);
16650
+ display: flex;
16651
+ flex-direction: column;
16652
+ align-items: center;
16653
+ }
16654
+
16655
+ .bc-range-slider__marker::before {
16656
+ content: '';
16657
+ display: block;
16658
+ width: var(--spacing-sm);
16659
+ height: var(--spacing-sm);
16660
+ background-color: var(--color-white);
16661
+ border-radius: var(--radius-full);
16662
+ }
16663
+
16664
+ /* Marker label */
16665
+ .bc-range-slider__marker-label {
16666
+ position: absolute;
16667
+ top: calc(100% + var(--spacing-sm));
16668
+ white-space: nowrap;
16669
+ color: var(--text-muted);
16670
+ font-size: var(--font-size-xs);
16671
+ }
16672
+
16387
16673
  /* ── Size variants ── */
16388
16674
 
16389
16675
  /* xs */
@@ -16391,7 +16677,7 @@ span.bc-sidebar-link {
16391
16677
  padding: var(--spacing-lg) var(--spacing-smh) var(--spacing-md);
16392
16678
  }
16393
16679
  .bc-range-slider--size-xs .bc-range-slider__track {
16394
- height: var(--spacing-xs);
16680
+ height: var(--spacing-smh);
16395
16681
  }
16396
16682
  .bc-range-slider--size-xs .bc-range-slider__thumb {
16397
16683
  width: calc(var(--spacing-base) * 2.5);
@@ -16417,7 +16703,7 @@ span.bc-sidebar-link {
16417
16703
  padding: var(--spacing-xl) var(--spacing-md) var(--spacing-lg);
16418
16704
  }
16419
16705
  .bc-range-slider--size-sm .bc-range-slider__track {
16420
- height: calc(var(--spacing-base) * 0.75);
16706
+ height: var(--spacing-sm);
16421
16707
  }
16422
16708
  .bc-range-slider--size-sm .bc-range-slider__thumb {
16423
16709
  width: calc(var(--spacing-base) * 3.5);
@@ -16443,7 +16729,7 @@ span.bc-sidebar-link {
16443
16729
  padding: var(--spacing-2xl) calc(var(--spacing-base) * 2.5) var(--spacing-xl);
16444
16730
  }
16445
16731
  .bc-range-slider--size-md .bc-range-slider__track {
16446
- height: var(--spacing-sm);
16732
+ height: var(--spacing-smh);
16447
16733
  }
16448
16734
  .bc-range-slider--size-md .bc-range-slider__thumb {
16449
16735
  width: calc(var(--spacing-base) * 4.5);
@@ -16469,7 +16755,7 @@ span.bc-sidebar-link {
16469
16755
  padding: var(--spacing-3xl) var(--spacing-mdh) var(--spacing-2xl);
16470
16756
  }
16471
16757
  .bc-range-slider--size-lg .bc-range-slider__track {
16472
- height: var(--spacing-smh);
16758
+ height: var(--spacing-md);
16473
16759
  }
16474
16760
  .bc-range-slider--size-lg .bc-range-slider__thumb {
16475
16761
  width: calc(var(--spacing-base) * 5.5);
@@ -16495,7 +16781,7 @@ span.bc-sidebar-link {
16495
16781
  padding: var(--spacing-4xl) calc(var(--spacing-base) * 3.5) var(--spacing-3xl);
16496
16782
  }
16497
16783
  .bc-range-slider--size-xl .bc-range-slider__track {
16498
- height: var(--spacing-md);
16784
+ height: var(--spacing-mdh);
16499
16785
  }
16500
16786
  .bc-range-slider--size-xl .bc-range-slider__thumb {
16501
16787
  width: calc(var(--spacing-base) * 6.5);
@@ -16516,6 +16802,36 @@ span.bc-sidebar-link {
16516
16802
  font-size: var(--font-size-md);
16517
16803
  }
16518
16804
 
16805
+ /* Marker size overrides per size */
16806
+ .bc-range-slider--size-xs .bc-range-slider__marker::before {
16807
+ width: var(--spacing-xs);
16808
+ height: var(--spacing-xs);
16809
+ }
16810
+ .bc-range-slider--size-xs .bc-range-slider__marker-label {
16811
+ font-size: var(--font-size-2xs);
16812
+ }
16813
+ .bc-range-slider--size-sm .bc-range-slider__marker::before {
16814
+ width: var(--spacing-xs);
16815
+ height: var(--spacing-xs);
16816
+ }
16817
+ .bc-range-slider--size-sm .bc-range-slider__marker-label {
16818
+ font-size: var(--font-size-2xs);
16819
+ }
16820
+ .bc-range-slider--size-lg .bc-range-slider__marker::before {
16821
+ width: var(--spacing-smh);
16822
+ height: var(--spacing-smh);
16823
+ }
16824
+ .bc-range-slider--size-lg .bc-range-slider__marker-label {
16825
+ font-size: var(--font-size-sm);
16826
+ }
16827
+ .bc-range-slider--size-xl .bc-range-slider__marker::before {
16828
+ width: var(--spacing-md);
16829
+ height: var(--spacing-md);
16830
+ }
16831
+ .bc-range-slider--size-xl .bc-range-slider__marker-label {
16832
+ font-size: var(--font-size-md);
16833
+ }
16834
+
16519
16835
  /* ── Vertical orientation ── */
16520
16836
 
16521
16837
  .bc-range-slider--vertical {
@@ -16588,6 +16904,19 @@ span.bc-sidebar-link {
16588
16904
  left: calc(100% + var(--spacing-sm));
16589
16905
  }
16590
16906
 
16907
+ /* Markers: vertical positioning */
16908
+ .bc-range-slider--vertical .bc-range-slider__marker {
16909
+ left: 50%;
16910
+ top: auto;
16911
+ transform: translate(-50%, 50%);
16912
+ flex-direction: row;
16913
+ }
16914
+
16915
+ .bc-range-slider--vertical .bc-range-slider__marker-label {
16916
+ top: auto;
16917
+ left: calc(100% + var(--spacing-sm));
16918
+ }
16919
+
16591
16920
  /* Vertical size variants — swap track width/height, adjust padding */
16592
16921
 
16593
16922
  /* xs vertical */
@@ -16653,6 +16982,14 @@ span.bc-sidebar-link {
16653
16982
  background-color: var(--rs-color-dark);
16654
16983
  }
16655
16984
 
16985
+ .dark .bc-range-slider__marker::before {
16986
+ background-color: var(--color-gray-400);
16987
+ }
16988
+
16989
+ .dark .bc-range-slider__marker-label {
16990
+ color: var(--text-muted);
16991
+ }
16992
+
16656
16993
  .dark .bc-range-slider__tick::before {
16657
16994
  background-color: var(--color-gray-500);
16658
16995
  }
@@ -17994,34 +18331,57 @@ th.bc-data-table__header--drag-over {
17994
18331
  background-color: var(--interactive-hover);
17995
18332
  }
17996
18333
 
17997
- /* Tags Filter (inline checkbox list) */
17998
- .bc-column-filter-tags {
17999
- display: flex;
18000
- flex-direction: column;
18001
- gap: var(--spacing-xs);
18334
+ /* Row Details: Toggle column */
18335
+ .bc-data-table__toggle-header {
18336
+ width: 2.5rem;
18337
+ min-width: 2.5rem;
18338
+ max-width: 2.5rem;
18339
+ padding: 0 !important;
18002
18340
  }
18003
18341
 
18004
- .bc-column-filter-tags__list {
18005
- display: flex;
18006
- flex-direction: column;
18007
- gap: var(--spacing-2xs);
18008
- max-height: 200px;
18009
- overflow-y: auto;
18342
+ .bc-table > tbody > tr > td.bc-data-table__toggle-cell {
18343
+ width: 2.5rem;
18344
+ min-width: 2.5rem;
18345
+ max-width: 2.5rem;
18346
+ padding: 0 !important;
18347
+ text-align: center;
18348
+ vertical-align: middle;
18010
18349
  }
18011
18350
 
18012
- .bc-column-filter-tags__item {
18013
- display: flex;
18351
+ .bc-data-table__toggle-cell > button {
18352
+ display: inline-flex;
18014
18353
  align-items: center;
18015
- gap: var(--spacing-xs);
18016
- padding: var(--spacing-2xs) var(--spacing-xs);
18354
+ justify-content: center;
18355
+ width: 1.75rem;
18356
+ height: 1.75rem;
18357
+ padding: 0;
18358
+ border: none;
18359
+ background: none;
18017
18360
  cursor: pointer;
18018
- border-radius: var(--radius-control-sm);
18019
- font-size: var(--font-size-sm);
18020
- user-select: none;
18361
+ border-radius: var(--radius-sm);
18362
+ color: var(--text-muted);
18363
+ transition:
18364
+ color var(--motion-transition-fast) var(--motion-easing-standard),
18365
+ background-color var(--motion-transition-fast) var(--motion-easing-standard);
18021
18366
  }
18022
18367
 
18023
- .bc-column-filter-tags__item:hover {
18368
+ .bc-data-table__toggle-cell > button:hover {
18024
18369
  background-color: var(--interactive-hover);
18370
+ color: var(--text-normal);
18371
+ }
18372
+
18373
+ /* Row Details: Detail row */
18374
+ .bc-data-table__detail-row > td {
18375
+ padding: 0 !important;
18376
+ border-top: none !important;
18377
+ }
18378
+
18379
+ .bc-data-table__detail-cell {
18380
+ padding: 0 !important;
18381
+ }
18382
+
18383
+ .bc-data-table__detail-cell > div {
18384
+ padding: var(--spacing-md) var(--spacing-lg);
18025
18385
  }
18026
18386
 
18027
18387
  /* Reduced motion */
@@ -18034,7 +18394,8 @@ th.bc-data-table__header--drag-over {
18034
18394
  .bc-data-toolbar__action,
18035
18395
  .bc-data-toolbar__reset,
18036
18396
  .bc-data-table__column-toggle-btn,
18037
- .bc-data-table__group-toggle {
18397
+ .bc-data-table__group-toggle,
18398
+ .bc-data-table__toggle-cell > button {
18038
18399
  transition: none;
18039
18400
  }
18040
18401
  }