@rovula/ui 0.1.20 → 0.1.22

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 (99) hide show
  1. package/dist/cjs/bundle.css +316 -43
  2. package/dist/cjs/bundle.js +675 -675
  3. package/dist/cjs/bundle.js.map +1 -1
  4. package/dist/cjs/types/components/Badge/Badge.d.ts +40 -0
  5. package/dist/cjs/types/components/Badge/Badge.stories.d.ts +295 -0
  6. package/dist/cjs/types/components/Badge/Badge.styles.d.ts +7 -0
  7. package/dist/cjs/types/components/Badge/index.d.ts +2 -0
  8. package/dist/cjs/types/components/Dropdown/Dropdown.d.ts +4 -8
  9. package/dist/cjs/types/components/Dropdown/Dropdown.stories.d.ts +1 -6
  10. package/dist/cjs/types/components/DropdownMenu/DropdownMenu.d.ts +5 -1
  11. package/dist/cjs/types/components/DropdownMenu/DropdownMenu.stories.d.ts +45 -30
  12. package/dist/cjs/types/components/Form/Form.d.ts +2 -1
  13. package/dist/cjs/types/components/Form/Form.stories.d.ts +4 -0
  14. package/dist/cjs/types/components/ScrollArea/ScrollArea.d.ts +38 -0
  15. package/dist/cjs/types/components/ScrollArea/ScrollArea.stories.d.ts +301 -0
  16. package/dist/cjs/types/index.d.ts +4 -1
  17. package/dist/cjs/types/patterns/menu/Menu.d.ts +70 -0
  18. package/dist/cjs/types/{components/Menu → patterns/menu}/Menu.stories.d.ts +17 -10
  19. package/dist/cjs/types/utils/mergeRefs.d.ts +20 -0
  20. package/dist/components/Avatar/Avatar.styles.js +2 -2
  21. package/dist/components/Badge/Badge.js +36 -0
  22. package/dist/components/Badge/Badge.stories.js +51 -0
  23. package/dist/components/Badge/Badge.styles.js +62 -0
  24. package/dist/components/Badge/index.js +2 -0
  25. package/dist/components/Dropdown/Dropdown.js +54 -163
  26. package/dist/components/Dropdown/Dropdown.stories.js +29 -0
  27. package/dist/components/DropdownMenu/DropdownMenu.js +24 -13
  28. package/dist/components/DropdownMenu/DropdownMenu.stories.js +120 -88
  29. package/dist/components/Form/Form.js +11 -4
  30. package/dist/components/Form/Form.stories.js +27 -0
  31. package/dist/components/ScrollArea/ScrollArea.js +50 -0
  32. package/dist/components/ScrollArea/ScrollArea.stories.js +56 -0
  33. package/dist/components/TextInput/TextInput.js +6 -3
  34. package/dist/esm/bundle.css +316 -43
  35. package/dist/esm/bundle.js +1545 -1545
  36. package/dist/esm/bundle.js.map +1 -1
  37. package/dist/esm/types/components/Badge/Badge.d.ts +40 -0
  38. package/dist/esm/types/components/Badge/Badge.stories.d.ts +295 -0
  39. package/dist/esm/types/components/Badge/Badge.styles.d.ts +7 -0
  40. package/dist/esm/types/components/Badge/index.d.ts +2 -0
  41. package/dist/esm/types/components/Dropdown/Dropdown.d.ts +4 -8
  42. package/dist/esm/types/components/Dropdown/Dropdown.stories.d.ts +1 -6
  43. package/dist/esm/types/components/DropdownMenu/DropdownMenu.d.ts +5 -1
  44. package/dist/esm/types/components/DropdownMenu/DropdownMenu.stories.d.ts +45 -30
  45. package/dist/esm/types/components/Form/Form.d.ts +2 -1
  46. package/dist/esm/types/components/Form/Form.stories.d.ts +4 -0
  47. package/dist/esm/types/components/ScrollArea/ScrollArea.d.ts +38 -0
  48. package/dist/esm/types/components/ScrollArea/ScrollArea.stories.d.ts +301 -0
  49. package/dist/esm/types/index.d.ts +4 -1
  50. package/dist/esm/types/patterns/menu/Menu.d.ts +70 -0
  51. package/dist/esm/types/{components/Menu → patterns/menu}/Menu.stories.d.ts +17 -10
  52. package/dist/esm/types/utils/mergeRefs.d.ts +20 -0
  53. package/dist/index.d.ts +156 -74
  54. package/dist/index.js +3 -1
  55. package/dist/patterns/menu/Menu.js +95 -0
  56. package/dist/patterns/menu/Menu.stories.js +611 -0
  57. package/dist/src/theme/global.css +485 -57
  58. package/dist/utils/mergeRefs.js +42 -0
  59. package/package.json +1 -1
  60. package/src/components/Avatar/Avatar.styles.ts +2 -2
  61. package/src/components/Badge/Badge.stories.tsx +128 -0
  62. package/src/components/Badge/Badge.styles.ts +70 -0
  63. package/src/components/Badge/Badge.tsx +103 -0
  64. package/src/components/Badge/index.ts +3 -0
  65. package/src/components/Dropdown/Dropdown.stories.tsx +170 -1
  66. package/src/components/Dropdown/Dropdown.tsx +186 -276
  67. package/src/components/DropdownMenu/DropdownMenu.stories.tsx +1375 -253
  68. package/src/components/DropdownMenu/DropdownMenu.tsx +118 -55
  69. package/src/components/Form/Form.stories.tsx +70 -0
  70. package/src/components/Form/Form.tsx +23 -0
  71. package/src/components/ScrollArea/ScrollArea.stories.tsx +229 -0
  72. package/src/components/ScrollArea/ScrollArea.tsx +72 -0
  73. package/src/components/TextInput/TextInput.tsx +6 -3
  74. package/src/index.ts +4 -1
  75. package/src/patterns/menu/Menu.stories.tsx +1100 -0
  76. package/src/patterns/menu/Menu.tsx +282 -0
  77. package/src/theme/global.css +84 -11
  78. package/src/theme/themes/xspector/baseline.css +1 -1
  79. package/src/theme/themes/xspector/components/scrollbar.css +12 -0
  80. package/src/theme/tokens/baseline.css +3 -1
  81. package/src/theme/tokens/components/badge.css +54 -0
  82. package/src/theme/tokens/components/dropdown-menu.css +16 -5
  83. package/src/theme/tokens/components/scrollbar.css +18 -0
  84. package/src/utils/mergeRefs.ts +46 -0
  85. package/dist/cjs/types/components/Menu/Menu.d.ts +0 -65
  86. package/dist/cjs/types/components/Menu/helpers.d.ts +0 -19
  87. package/dist/cjs/types/components/Menu/index.d.ts +0 -4
  88. package/dist/components/Menu/Menu.js +0 -64
  89. package/dist/components/Menu/Menu.stories.js +0 -406
  90. package/dist/components/Menu/helpers.js +0 -28
  91. package/dist/components/Menu/index.js +0 -3
  92. package/dist/esm/types/components/Menu/Menu.d.ts +0 -65
  93. package/dist/esm/types/components/Menu/helpers.d.ts +0 -19
  94. package/dist/esm/types/components/Menu/index.d.ts +0 -4
  95. package/src/components/Menu/Menu.stories.tsx +0 -586
  96. package/src/components/Menu/Menu.tsx +0 -235
  97. package/src/components/Menu/helpers.ts +0 -45
  98. package/src/components/Menu/index.ts +0 -7
  99. package/src/theme/themes/xspector/components/dropdown-menu.css +0 -28
@@ -2951,20 +2951,29 @@
2951
2951
  /* Naming Convention: --[component]-[state]-[property] */
2952
2952
  /* Element: [default, hover, selected, disabled] */
2953
2953
  /* ------------------------------------------------------------------ */
2954
- --dropdown-menu-seperator-bg: var(--base-color-workspace-stroke);
2955
- --dropdown-menu-shadow: 0px 2px 24px 0px rgba(145, 158, 171, 0.24);
2954
+ --dropdown-menu-seperator-bg: var(--modal-line);
2955
+ --dropdown-menu-shadow: 0px 12px 24px -4px rgba(0, 0, 0, 0.12);
2956
2956
  /* Default State */
2957
2957
  --dropdown-menu-default-bg: transparent;
2958
2958
  --dropdown-menu-default-text: var(--text-g-contrast-high);
2959
2959
  /* Hover State */
2960
- --dropdown-menu-hover-bg: var(--state-primary-hover-bg);
2960
+ --dropdown-menu-hover-bg: var(--modal-highlight);
2961
2961
  --dropdown-menu-hover-text: var(--text-g-contrast-high);
2962
2962
  /* Selected State */
2963
- --dropdown-menu-selected-bg: transparent;
2963
+ --dropdown-menu-selected-bg: var(--modal-highlight);
2964
2964
  --dropdown-menu-selected-text: var(--text-g-contrast-high);
2965
2965
  /* Disabled State */
2966
2966
  --dropdown-menu-disabled-bg: transparent;
2967
- --dropdown-menu-disabled-text: var(--state-disable-outline);
2967
+ --dropdown-menu-disabled-text: var(--state-disable-solid);
2968
+ /* Checkbox Item */
2969
+ --dropdown-menu-checkbox-border: var(--function-default-solid);
2970
+ --dropdown-menu-checkbox-checked-bg: var(--function-active-solid);
2971
+ --dropdown-menu-checkbox-checked-icon: var(--function-active-icon);
2972
+ --dropdown-menu-checkbox-disabled-border: var(--state-disable-outline);
2973
+ --dropdown-menu-checkbox-disabled-checked-bg: var(--state-disable-solid);
2974
+ /* Radio Item */
2975
+ --dropdown-menu-radio-disabled-text: var(--state-disable-solid);
2976
+ --dropdown-menu-radio-selected-disabled-text: var(--state-disable-outline);
2968
2977
  /* ------------------------------------------------------------------ */
2969
2978
  /* Switch Component Tokens */
2970
2979
  /* ------------------------------------------------------------------ */
@@ -2987,6 +2996,65 @@
2987
2996
  /* Disabled State */
2988
2997
  --switch-disabled-color: rgb(from var(--state-disable-solid) r g b / 0.32);
2989
2998
  --switch-thumb-disabled-color: var(--state-disable-solid, #454f5b);
2999
+ /* ------------------------------------------------------------------ */
3000
+ /* Scrollbar Component Tokens */
3001
+ /* ------------------------------------------------------------------ */
3002
+ /* Thumb sizes (track width/height) */
3003
+ --scrollbar-m-thickness: 12px;
3004
+ --scrollbar-s-thickness: 6px;
3005
+ --scrollbar-xs-thickness: 2px;
3006
+ /* Track border — visible on M size only */
3007
+ --scrollbar-track-border-width: 1px;
3008
+ --scrollbar-track-border-color: rgba(158, 158, 158, 0.16);
3009
+ /* Thumb colours */
3010
+ --scrollbar-thumb-default-color: color-mix(in srgb, var(--text-g-contrast-low) 48%, transparent);
3011
+ --scrollbar-thumb-hover-color: color-mix(in srgb, var(--text-g-contrast-high) 48%, transparent);
3012
+ /* --------------------------------------------------------------------------------- */
3013
+ /* Badge Component Tokens */
3014
+ /* --------------------------------------------------------------------------------- */
3015
+ /* Naming Convention: --badge-[color]-[property] */
3016
+ /* Colors: [default, success, warning, info, error] */
3017
+ /* Severity: [highest, high, medium, low, lowest] */
3018
+ /* --------------------------------------------------------------------------------- */
3019
+ /* ------------------------------------------------------------------ */
3020
+ /* Status Badge — Default (grey/white) */
3021
+ /* ------------------------------------------------------------------ */
3022
+ --badge-default-bg: rgba(145, 158, 171, 0.12);
3023
+ --badge-default-border: rgba(158, 158, 158, 0.48);
3024
+ --badge-default-text: var(--text-contrast-max, white);
3025
+ /* ------------------------------------------------------------------ */
3026
+ /* Status Badge — Success (green) */
3027
+ /* ------------------------------------------------------------------ */
3028
+ --badge-success-bg: rgba(84, 214, 44, 0.12);
3029
+ --badge-success-border: rgba(84, 214, 44, 0.48);
3030
+ --badge-success-text: var(--state-success-default);
3031
+ /* ------------------------------------------------------------------ */
3032
+ /* Status Badge — Warning (yellow) */
3033
+ /* ------------------------------------------------------------------ */
3034
+ --badge-warning-bg: rgba(255, 193, 7, 0.12);
3035
+ --badge-warning-border: rgba(255, 193, 7, 0.48);
3036
+ --badge-warning-text: var(--state-warning-default);
3037
+ /* ------------------------------------------------------------------ */
3038
+ /* Status Badge — Info (blue) */
3039
+ /* ------------------------------------------------------------------ */
3040
+ --badge-info-bg: rgba(41, 152, 255, 0.12);
3041
+ --badge-info-border: rgba(41, 152, 255, 0.48);
3042
+ --badge-info-text: var(--state-info-default);
3043
+ /* ------------------------------------------------------------------ */
3044
+ /* Status Badge — Error (red) */
3045
+ /* ------------------------------------------------------------------ */
3046
+ --badge-error-bg: rgba(255, 72, 66, 0.12);
3047
+ --badge-error-border: rgba(255, 72, 66, 0.48);
3048
+ --badge-error-text: var(--state-error-default);
3049
+ /* ------------------------------------------------------------------ */
3050
+ /* Severity Badge — solid pill */
3051
+ /* ------------------------------------------------------------------ */
3052
+ --badge-severity-text: var(--text-white, white);
3053
+ --badge-severity-highest-bg: var(--state-error-default);
3054
+ --badge-severity-high-bg: var(--ramps-warning-800);
3055
+ --badge-severity-medium-bg: var(--state-warning-default);
3056
+ --badge-severity-low-bg: var(--state-success-default);
3057
+ --badge-severity-lowest-bg: var(--state-info-default);
2990
3058
  }
2991
3059
 
2992
3060
  /* TODO: remove this */
@@ -3550,6 +3618,35 @@ video {
3550
3618
 
3551
3619
  * {
3552
3620
  /* @apply border-border; */
3621
+ scrollbar-width: thin;
3622
+ scrollbar-color: var(--scrollbar-thumb-default-color) transparent;
3623
+ }
3624
+
3625
+ *::-webkit-scrollbar {
3626
+ width: var(--scrollbar-s-thickness);
3627
+ height: var(--scrollbar-s-thickness);
3628
+ background: transparent;
3629
+ }
3630
+
3631
+ *::-webkit-scrollbar-thumb {
3632
+ border-radius: 12px;
3633
+ background: var(--scrollbar-thumb-default-color);
3634
+ }
3635
+
3636
+ *::-webkit-scrollbar-thumb:hover {
3637
+ background: var(--scrollbar-thumb-hover-color);
3638
+ }
3639
+
3640
+ *::-webkit-scrollbar-track:vertical {
3641
+ border-left: var(--scrollbar-track-border-width) solid var(--scrollbar-track-border-color);
3642
+ }
3643
+
3644
+ *::-webkit-scrollbar-track:horizontal {
3645
+ border-top: var(--scrollbar-track-border-width) solid var(--scrollbar-track-border-color);
3646
+ }
3647
+
3648
+ *::-webkit-scrollbar-corner {
3649
+ background: transparent;
3553
3650
  }
3554
3651
 
3555
3652
  body {
@@ -3652,10 +3749,6 @@ input[type=number] {
3652
3749
  bottom: 40px;
3653
3750
  }
3654
3751
 
3655
- .bottom-full {
3656
- bottom: 100%;
3657
- }
3658
-
3659
3752
  .left-0 {
3660
3753
  left: 0px;
3661
3754
  }
@@ -3752,10 +3845,6 @@ input[type=number] {
3752
3845
  z-index: 10;
3753
3846
  }
3754
3847
 
3755
- .z-40 {
3756
- z-index: 40;
3757
- }
3758
-
3759
3848
  .z-50 {
3760
3849
  z-index: 50;
3761
3850
  }
@@ -3768,6 +3857,10 @@ input[type=number] {
3768
3857
  z-index: 100;
3769
3858
  }
3770
3859
 
3860
+ .z-\[51\] {
3861
+ z-index: 51;
3862
+ }
3863
+
3771
3864
  .col-span-3 {
3772
3865
  grid-column: span 3 / span 3;
3773
3866
  }
@@ -3776,11 +3869,6 @@ input[type=number] {
3776
3869
  margin: 0px;
3777
3870
  }
3778
3871
 
3779
- .-mx-2 {
3780
- margin-left: -0.5rem;
3781
- margin-right: -0.5rem;
3782
- }
3783
-
3784
3872
  .mx-2 {
3785
3873
  margin-left: 0.5rem;
3786
3874
  margin-right: 0.5rem;
@@ -3822,6 +3910,14 @@ input[type=number] {
3822
3910
  margin-bottom: 0.5rem;
3823
3911
  }
3824
3912
 
3913
+ .mb-3 {
3914
+ margin-bottom: 0.75rem;
3915
+ }
3916
+
3917
+ .mb-4 {
3918
+ margin-bottom: 1rem;
3919
+ }
3920
+
3825
3921
  .ml-1 {
3826
3922
  margin-left: 0.25rem;
3827
3923
  }
@@ -3842,6 +3938,10 @@ input[type=number] {
3842
3938
  margin-left: auto;
3843
3939
  }
3844
3940
 
3941
+ .mr-1 {
3942
+ margin-right: 0.25rem;
3943
+ }
3944
+
3845
3945
  .mr-2 {
3846
3946
  margin-right: 0.5rem;
3847
3947
  }
@@ -3890,6 +3990,10 @@ input[type=number] {
3890
3990
  display: inline-block;
3891
3991
  }
3892
3992
 
3993
+ .inline {
3994
+ display: inline;
3995
+ }
3996
+
3893
3997
  .flex {
3894
3998
  display: flex;
3895
3999
  }
@@ -4106,6 +4210,22 @@ input[type=number] {
4106
4210
  max-height: 15rem;
4107
4211
  }
4108
4212
 
4213
+ .max-h-\[\.\.\.\] {
4214
+ max-height: ...;
4215
+ }
4216
+
4217
+ .max-h-\[160px\] {
4218
+ max-height: 160px;
4219
+ }
4220
+
4221
+ .max-h-\[216px\] {
4222
+ max-height: 216px;
4223
+ }
4224
+
4225
+ .max-h-\[270px\] {
4226
+ max-height: 270px;
4227
+ }
4228
+
4109
4229
  .max-h-\[80vh\] {
4110
4230
  max-height: 80vh;
4111
4231
  }
@@ -4142,10 +4262,6 @@ input[type=number] {
4142
4262
  width: 2.5rem;
4143
4263
  }
4144
4264
 
4145
- .w-2 {
4146
- width: 0.5rem;
4147
- }
4148
-
4149
4265
  .w-20 {
4150
4266
  width: 5rem;
4151
4267
  }
@@ -4166,6 +4282,10 @@ input[type=number] {
4166
4282
  width: 1.25rem;
4167
4283
  }
4168
4284
 
4285
+ .w-52 {
4286
+ width: 13rem;
4287
+ }
4288
+
4169
4289
  .w-6 {
4170
4290
  width: 1.5rem;
4171
4291
  }
@@ -4194,6 +4314,14 @@ input[type=number] {
4194
4314
  width: 200px;
4195
4315
  }
4196
4316
 
4317
+ .w-\[220px\] {
4318
+ width: 220px;
4319
+ }
4320
+
4321
+ .w-\[230px\] {
4322
+ width: 230px;
4323
+ }
4324
+
4197
4325
  .w-\[24px\] {
4198
4326
  width: 24px;
4199
4327
  }
@@ -4375,6 +4503,10 @@ input[type=number] {
4375
4503
  cursor: default;
4376
4504
  }
4377
4505
 
4506
+ .cursor-grab {
4507
+ cursor: grab;
4508
+ }
4509
+
4378
4510
  .cursor-not-allowed {
4379
4511
  cursor: not-allowed;
4380
4512
  }
@@ -4513,6 +4645,10 @@ input[type=number] {
4513
4645
  gap: 0px;
4514
4646
  }
4515
4647
 
4648
+ .gap-0\.5 {
4649
+ gap: 0.125rem;
4650
+ }
4651
+
4516
4652
  .gap-1 {
4517
4653
  gap: 0.25rem;
4518
4654
  }
@@ -4577,6 +4713,12 @@ input[type=number] {
4577
4713
  margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
4578
4714
  }
4579
4715
 
4716
+ .space-y-1 > :not([hidden]) ~ :not([hidden]) {
4717
+ --tw-space-y-reverse: 0;
4718
+ margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
4719
+ margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
4720
+ }
4721
+
4580
4722
  .space-y-2 > :not([hidden]) ~ :not([hidden]) {
4581
4723
  --tw-space-y-reverse: 0;
4582
4724
  margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
@@ -4627,6 +4769,14 @@ input[type=number] {
4627
4769
  overflow-y: auto;
4628
4770
  }
4629
4771
 
4772
+ .overflow-x-hidden {
4773
+ overflow-x: hidden;
4774
+ }
4775
+
4776
+ .overflow-y-hidden {
4777
+ overflow-y: hidden;
4778
+ }
4779
+
4630
4780
  .overflow-y-scroll {
4631
4781
  overflow-y: scroll;
4632
4782
  }
@@ -4661,6 +4811,10 @@ input[type=number] {
4661
4811
  border-radius: 1px;
4662
4812
  }
4663
4813
 
4814
+ .rounded-\[2px\] {
4815
+ border-radius: 2px;
4816
+ }
4817
+
4664
4818
  .rounded-\[8px\] {
4665
4819
  border-radius: 8px;
4666
4820
  }
@@ -4864,6 +5018,42 @@ input[type=number] {
4864
5018
  border-color: color-mix(in srgb, var(--function-default-hover) calc(100% * var(--tw-border-opacity, 1)), transparent) !important;
4865
5019
  }
4866
5020
 
5021
+ .border-\[var\(--badge-default-border\)\] {
5022
+ border-color: var(--badge-default-border);
5023
+ }
5024
+
5025
+ .border-\[var\(--badge-error-border\)\] {
5026
+ border-color: var(--badge-error-border);
5027
+ }
5028
+
5029
+ .border-\[var\(--badge-info-border\)\] {
5030
+ border-color: var(--badge-info-border);
5031
+ }
5032
+
5033
+ .border-\[var\(--badge-success-border\)\] {
5034
+ border-color: var(--badge-success-border);
5035
+ }
5036
+
5037
+ .border-\[var\(--badge-warning-border\)\] {
5038
+ border-color: var(--badge-warning-border);
5039
+ }
5040
+
5041
+ .border-\[var\(--dropdown-menu-checkbox-border\)\] {
5042
+ border-color: var(--dropdown-menu-checkbox-border);
5043
+ }
5044
+
5045
+ .border-\[var\(--dropdown-menu-checkbox-checked-bg\)\] {
5046
+ border-color: var(--dropdown-menu-checkbox-checked-bg);
5047
+ }
5048
+
5049
+ .border-\[var\(--dropdown-menu-checkbox-disabled-border\)\] {
5050
+ border-color: var(--dropdown-menu-checkbox-disabled-border);
5051
+ }
5052
+
5053
+ .border-\[var\(--dropdown-menu-seperator-bg\)\] {
5054
+ border-color: var(--dropdown-menu-seperator-bg);
5055
+ }
5056
+
4867
5057
  .border-action-button-icon-active {
4868
5058
  --tw-border-opacity: 1;
4869
5059
  border-color: color-mix(in srgb, var(--action-button-icon-active-border) calc(100% * var(--tw-border-opacity, 1)), transparent);
@@ -5156,6 +5346,10 @@ input[type=number] {
5156
5346
  border-top-color: color-mix(in srgb, var(--state-secondary-default) calc(100% * var(--tw-border-opacity, 1)), transparent);
5157
5347
  }
5158
5348
 
5349
+ .\!bg-\[var\(--dropdown-menu-hover-bg\)\] {
5350
+ background-color: var(--dropdown-menu-hover-bg) !important;
5351
+ }
5352
+
5159
5353
  .\!bg-action-button-icon-active-hover {
5160
5354
  --tw-bg-opacity: 1 !important;
5161
5355
  background-color: color-mix(in srgb, var(--action-button-icon-active-hover-bg) calc(100% * var(--tw-bg-opacity, 1)), transparent) !important;
@@ -5194,10 +5388,62 @@ input[type=number] {
5194
5388
  background-color: rgb(var(--navbar-bg-color));
5195
5389
  }
5196
5390
 
5391
+ .bg-\[var\(--badge-default-bg\)\] {
5392
+ background-color: var(--badge-default-bg);
5393
+ }
5394
+
5395
+ .bg-\[var\(--badge-error-bg\)\] {
5396
+ background-color: var(--badge-error-bg);
5397
+ }
5398
+
5399
+ .bg-\[var\(--badge-info-bg\)\] {
5400
+ background-color: var(--badge-info-bg);
5401
+ }
5402
+
5403
+ .bg-\[var\(--badge-severity-high-bg\)\] {
5404
+ background-color: var(--badge-severity-high-bg);
5405
+ }
5406
+
5407
+ .bg-\[var\(--badge-severity-highest-bg\)\] {
5408
+ background-color: var(--badge-severity-highest-bg);
5409
+ }
5410
+
5411
+ .bg-\[var\(--badge-severity-low-bg\)\] {
5412
+ background-color: var(--badge-severity-low-bg);
5413
+ }
5414
+
5415
+ .bg-\[var\(--badge-severity-lowest-bg\)\] {
5416
+ background-color: var(--badge-severity-lowest-bg);
5417
+ }
5418
+
5419
+ .bg-\[var\(--badge-severity-medium-bg\)\] {
5420
+ background-color: var(--badge-severity-medium-bg);
5421
+ }
5422
+
5423
+ .bg-\[var\(--badge-success-bg\)\] {
5424
+ background-color: var(--badge-success-bg);
5425
+ }
5426
+
5427
+ .bg-\[var\(--badge-warning-bg\)\] {
5428
+ background-color: var(--badge-warning-bg);
5429
+ }
5430
+
5431
+ .bg-\[var\(--dropdown-menu-checkbox-checked-bg\)\] {
5432
+ background-color: var(--dropdown-menu-checkbox-checked-bg);
5433
+ }
5434
+
5435
+ .bg-\[var\(--dropdown-menu-checkbox-disabled-checked-bg\)\] {
5436
+ background-color: var(--dropdown-menu-checkbox-disabled-checked-bg);
5437
+ }
5438
+
5197
5439
  .bg-\[var\(--dropdown-menu-default-bg\)\] {
5198
5440
  background-color: var(--dropdown-menu-default-bg);
5199
5441
  }
5200
5442
 
5443
+ .bg-\[var\(--dropdown-menu-hover-bg\)\] {
5444
+ background-color: var(--dropdown-menu-hover-bg);
5445
+ }
5446
+
5201
5447
  .bg-\[var\(--dropdown-menu-selected-bg\)\] {
5202
5448
  background-color: var(--dropdown-menu-selected-bg);
5203
5449
  }
@@ -5355,6 +5601,10 @@ input[type=number] {
5355
5601
  background-color: color-mix(in srgb, var(--transparent-black-8) calc(100% * var(--tw-bg-opacity, 1)), transparent);
5356
5602
  }
5357
5603
 
5604
+ .bg-blue-400\/10 {
5605
+ background-color: rgb(96 165 250 / 0.1);
5606
+ }
5607
+
5358
5608
  .bg-button-error-flat-default {
5359
5609
  --tw-bg-opacity: 1;
5360
5610
  background-color: color-mix(in srgb, var(--button-error-flat-default-bg) calc(100% * var(--tw-bg-opacity, 1)), transparent);
@@ -5630,6 +5880,10 @@ input[type=number] {
5630
5880
  background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
5631
5881
  }
5632
5882
 
5883
+ .bg-green-400\/10 {
5884
+ background-color: rgb(74 222 128 / 0.1);
5885
+ }
5886
+
5633
5887
  .bg-green-500 {
5634
5888
  --tw-bg-opacity: 1;
5635
5889
  background-color: rgb(34 197 94 / var(--tw-bg-opacity, 1));
@@ -6154,6 +6408,10 @@ input[type=number] {
6154
6408
  background-color: rgb(254 226 226 / var(--tw-bg-opacity, 1));
6155
6409
  }
6156
6410
 
6411
+ .bg-red-400\/10 {
6412
+ background-color: rgb(248 113 113 / 0.1);
6413
+ }
6414
+
6157
6415
  .bg-secondary {
6158
6416
  --tw-bg-opacity: 1;
6159
6417
  background-color: color-mix(in srgb, var(--state-secondary-default) calc(100% * var(--tw-bg-opacity, 1)), transparent);
@@ -6753,6 +7011,10 @@ input[type=number] {
6753
7011
  background-color: color-mix(in srgb, var(--transparent-white-8) calc(100% * var(--tw-bg-opacity, 1)), transparent);
6754
7012
  }
6755
7013
 
7014
+ .bg-yellow-400\/10 {
7015
+ background-color: rgb(250 204 21 / 0.1);
7016
+ }
7017
+
6756
7018
  .bg-gradient-to-r {
6757
7019
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
6758
7020
  }
@@ -6989,6 +7251,10 @@ input[type=number] {
6989
7251
  stroke: color-mix(in srgb, var(--state-primary-default) calc(100% * 1), transparent);
6990
7252
  }
6991
7253
 
7254
+ .\!p-0 {
7255
+ padding: 0px !important;
7256
+ }
7257
+
6992
7258
  .p-0 {
6993
7259
  padding: 0px;
6994
7260
  }
@@ -6997,6 +7263,10 @@ input[type=number] {
6997
7263
  padding: 0.25rem;
6998
7264
  }
6999
7265
 
7266
+ .p-10 {
7267
+ padding: 2.5rem;
7268
+ }
7269
+
7000
7270
  .p-2 {
7001
7271
  padding: 0.5rem;
7002
7272
  }
@@ -7030,11 +7300,6 @@ input[type=number] {
7030
7300
  padding-right: 0.25rem;
7031
7301
  }
7032
7302
 
7033
- .px-2 {
7034
- padding-left: 0.5rem;
7035
- padding-right: 0.5rem;
7036
- }
7037
-
7038
7303
  .px-3 {
7039
7304
  padding-left: 0.75rem;
7040
7305
  padding-right: 0.75rem;
@@ -7095,6 +7360,11 @@ input[type=number] {
7095
7360
  padding-right: 8px;
7096
7361
  }
7097
7362
 
7363
+ .py-0\.5 {
7364
+ padding-top: 0.125rem;
7365
+ padding-bottom: 0.125rem;
7366
+ }
7367
+
7098
7368
  .py-1 {
7099
7369
  padding-top: 0.25rem;
7100
7370
  padding-bottom: 0.25rem;
@@ -7201,6 +7471,10 @@ input[type=number] {
7201
7471
  padding-inline-start: 72px !important;
7202
7472
  }
7203
7473
 
7474
+ .pb-2 {
7475
+ padding-bottom: 0.5rem;
7476
+ }
7477
+
7204
7478
  .pe-\[30px\] {
7205
7479
  padding-inline-end: 30px;
7206
7480
  }
@@ -7213,20 +7487,20 @@ input[type=number] {
7213
7487
  padding-inline-end: 68px;
7214
7488
  }
7215
7489
 
7216
- .pl-8 {
7217
- padding-left: 2rem;
7490
+ .pl-4 {
7491
+ padding-left: 1rem;
7218
7492
  }
7219
7493
 
7220
- .pl-9 {
7221
- padding-left: 2.25rem;
7494
+ .pl-8 {
7495
+ padding-left: 2rem;
7222
7496
  }
7223
7497
 
7224
7498
  .pr-4 {
7225
7499
  padding-right: 1rem;
7226
7500
  }
7227
7501
 
7228
- .pr-xxl {
7229
- padding-right: var(--spacing-spacing-xxl);
7502
+ .pr-8 {
7503
+ padding-right: 2rem;
7230
7504
  }
7231
7505
 
7232
7506
  .pt-2 {
@@ -7488,6 +7762,11 @@ input[type=number] {
7488
7762
  text-transform: capitalize;
7489
7763
  }
7490
7764
 
7765
+ .tabular-nums {
7766
+ --tw-numeric-spacing: tabular-nums;
7767
+ font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
7768
+ }
7769
+
7491
7770
  .leading-\[3rem\] {
7492
7771
  line-height: 3rem;
7493
7772
  }
@@ -7547,10 +7826,50 @@ input[type=number] {
7547
7826
  color: rgb(var(--navbar-text-color));
7548
7827
  }
7549
7828
 
7829
+ .text-\[var\(--badge-default-text\)\] {
7830
+ color: var(--badge-default-text);
7831
+ }
7832
+
7833
+ .text-\[var\(--badge-error-text\)\] {
7834
+ color: var(--badge-error-text);
7835
+ }
7836
+
7837
+ .text-\[var\(--badge-info-text\)\] {
7838
+ color: var(--badge-info-text);
7839
+ }
7840
+
7841
+ .text-\[var\(--badge-severity-text\)\] {
7842
+ color: var(--badge-severity-text);
7843
+ }
7844
+
7845
+ .text-\[var\(--badge-success-text\)\] {
7846
+ color: var(--badge-success-text);
7847
+ }
7848
+
7849
+ .text-\[var\(--badge-warning-text\)\] {
7850
+ color: var(--badge-warning-text);
7851
+ }
7852
+
7853
+ .text-\[var\(--dropdown-menu-checkbox-checked-bg\)\] {
7854
+ color: var(--dropdown-menu-checkbox-checked-bg);
7855
+ }
7856
+
7857
+ .text-\[var\(--dropdown-menu-checkbox-checked-icon\)\] {
7858
+ color: var(--dropdown-menu-checkbox-checked-icon);
7859
+ }
7860
+
7550
7861
  .text-\[var\(--dropdown-menu-default-text\)\] {
7551
7862
  color: var(--dropdown-menu-default-text);
7552
7863
  }
7553
7864
 
7865
+ .text-\[var\(--dropdown-menu-hover-text\)\] {
7866
+ color: var(--dropdown-menu-hover-text);
7867
+ }
7868
+
7869
+ .text-\[var\(--dropdown-menu-radio-selected-disabled-text\)\] {
7870
+ color: var(--dropdown-menu-radio-selected-disabled-text);
7871
+ }
7872
+
7554
7873
  .text-\[var\(--dropdown-menu-selected-text\)\] {
7555
7874
  color: var(--dropdown-menu-selected-text);
7556
7875
  }
@@ -7617,6 +7936,11 @@ input[type=number] {
7617
7936
  color: rgb(0 0 0 / var(--tw-text-opacity, 1));
7618
7937
  }
7619
7938
 
7939
+ .text-blue-400 {
7940
+ --tw-text-opacity: 1;
7941
+ color: rgb(96 165 250 / var(--tw-text-opacity, 1));
7942
+ }
7943
+
7620
7944
  .text-blue-500 {
7621
7945
  --tw-text-opacity: 1;
7622
7946
  color: rgb(59 130 246 / var(--tw-text-opacity, 1));
@@ -7771,6 +8095,11 @@ input[type=number] {
7771
8095
  color: rgb(55 65 81 / var(--tw-text-opacity, 1));
7772
8096
  }
7773
8097
 
8098
+ .text-green-400 {
8099
+ --tw-text-opacity: 1;
8100
+ color: rgb(74 222 128 / var(--tw-text-opacity, 1));
8101
+ }
8102
+
7774
8103
  .text-green-500 {
7775
8104
  --tw-text-opacity: 1;
7776
8105
  color: rgb(34 197 94 / var(--tw-text-opacity, 1));
@@ -7820,6 +8149,11 @@ input[type=number] {
7820
8149
  color: color-mix(in srgb, var(--state-primary-default) calc(100% * var(--tw-text-opacity, 1)), transparent);
7821
8150
  }
7822
8151
 
8152
+ .text-red-400 {
8153
+ --tw-text-opacity: 1;
8154
+ color: rgb(248 113 113 / var(--tw-text-opacity, 1));
8155
+ }
8156
+
7823
8157
  .text-red-500 {
7824
8158
  --tw-text-opacity: 1;
7825
8159
  color: rgb(239 68 68 / var(--tw-text-opacity, 1));
@@ -7840,6 +8174,11 @@ input[type=number] {
7840
8174
  color: color-mix(in srgb, var(--state-disable-outline) calc(100% * var(--tw-text-opacity, 1)), transparent);
7841
8175
  }
7842
8176
 
8177
+ .text-state-error-default {
8178
+ --tw-text-opacity: 1;
8179
+ color: color-mix(in srgb, var(--state-error-default) calc(100% * var(--tw-text-opacity, 1)), transparent);
8180
+ }
8181
+
7843
8182
  .text-state-primary-text-solid {
7844
8183
  --tw-text-opacity: 1;
7845
8184
  color: color-mix(in srgb, var(--state-primary-text-solid) calc(100% * var(--tw-text-opacity, 1)), transparent);
@@ -7850,6 +8189,11 @@ input[type=number] {
7850
8189
  color: color-mix(in srgb, var(--state-secondary-text-solid) calc(100% * var(--tw-text-opacity, 1)), transparent);
7851
8190
  }
7852
8191
 
8192
+ .text-state-success-default {
8193
+ --tw-text-opacity: 1;
8194
+ color: color-mix(in srgb, var(--state-success-default) calc(100% * var(--tw-text-opacity, 1)), transparent);
8195
+ }
8196
+
7853
8197
  .text-success {
7854
8198
  --tw-text-opacity: 1;
7855
8199
  color: color-mix(in srgb, var(--state-success-default) calc(100% * var(--tw-text-opacity, 1)), transparent);
@@ -7890,6 +8234,11 @@ input[type=number] {
7890
8234
  color: color-mix(in srgb, var(--text-g-contrast-medium) calc(100% * var(--tw-text-opacity, 1)), transparent);
7891
8235
  }
7892
8236
 
8237
+ .text-text-white {
8238
+ --tw-text-opacity: 1;
8239
+ color: color-mix(in srgb, var(--text-white) calc(100% * var(--tw-text-opacity, 1)), transparent);
8240
+ }
8241
+
7893
8242
  .text-warning {
7894
8243
  --tw-text-opacity: 1;
7895
8244
  color: color-mix(in srgb, var(--state-warning-default) calc(100% * var(--tw-text-opacity, 1)), transparent);
@@ -7900,6 +8249,11 @@ input[type=number] {
7900
8249
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
7901
8250
  }
7902
8251
 
8252
+ .text-yellow-400 {
8253
+ --tw-text-opacity: 1;
8254
+ color: rgb(250 204 21 / var(--tw-text-opacity, 1));
8255
+ }
8256
+
7903
8257
  .underline {
7904
8258
  text-decoration-line: underline;
7905
8259
  }
@@ -7916,10 +8270,6 @@ input[type=number] {
7916
8270
  opacity: 0;
7917
8271
  }
7918
8272
 
7919
- .opacity-50 {
7920
- opacity: 0.5;
7921
- }
7922
-
7923
8273
  .opacity-60 {
7924
8274
  opacity: 0.6;
7925
8275
  }
@@ -7972,6 +8322,12 @@ input[type=number] {
7972
8322
  outline-style: solid;
7973
8323
  }
7974
8324
 
8325
+ .\!ring-0 {
8326
+ --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color) !important;
8327
+ --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color) !important;
8328
+ box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000) !important;
8329
+ }
8330
+
7975
8331
  .ring-0 {
7976
8332
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
7977
8333
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
@@ -8323,26 +8679,82 @@ input[type=number] {
8323
8679
  font-weight: var(--button-button-ms-weight, 700);
8324
8680
  }
8325
8681
 
8682
+ /* ------------------------------------------------------------------ */
8683
+
8684
+ /* Scrollbar utility — applies the design-system scrollbar style */
8685
+
8686
+ /* Default size: S (6px thumb, matches Figma Size=S) */
8687
+
8688
+ /* Usage: add `ui-scrollbar` + optional size modifier to any */
8689
+
8690
+ /* overflow-auto / overflow-y-auto / overflow-x-auto container. */
8691
+
8692
+ /* ------------------------------------------------------------------ */
8693
+
8694
+ /* --- Track --- */
8695
+
8326
8696
  .ui-scrollbar::-webkit-scrollbar {
8327
- height: 6px;
8328
- width: 6px;
8329
- background: rgba(0, 0, 0, 0.08);
8697
+ width: var(--scrollbar-s-thickness);
8698
+ height: var(--scrollbar-s-thickness);
8699
+ background: transparent;
8330
8700
  }
8331
8701
 
8702
+ /* --- Thumb --- */
8703
+
8332
8704
  .ui-scrollbar::-webkit-scrollbar-thumb {
8333
- border-radius: 6px;
8334
- background: rgba(121, 141, 150, 0.48);
8335
- width: 6px;
8705
+ border-radius: 12px;
8706
+ background: var(--scrollbar-thumb-default-color);
8336
8707
  }
8337
8708
 
8338
8709
  .ui-scrollbar::-webkit-scrollbar-thumb:hover {
8339
- background: rgba(251, 252, 253, 0.48);
8710
+ background: var(--scrollbar-thumb-hover-color);
8340
8711
  cursor: pointer;
8341
8712
  }
8342
8713
 
8714
+ /* --- Track border (vertical) --- */
8715
+
8716
+ .ui-scrollbar::-webkit-scrollbar-track:vertical {
8717
+ border-left: var(--scrollbar-track-border-width) solid var(--scrollbar-track-border-color);
8718
+ }
8719
+
8720
+ /* --- Track border (horizontal) --- */
8721
+
8722
+ .ui-scrollbar::-webkit-scrollbar-track:horizontal {
8723
+ border-top: var(--scrollbar-track-border-width) solid var(--scrollbar-track-border-color);
8724
+ }
8725
+
8343
8726
  .ui-scrollbar::-webkit-scrollbar-corner {
8344
- display: none;
8345
- /* background: transparent; */
8727
+ background: transparent;
8728
+ }
8729
+
8730
+ /* --- Size variants --- */
8731
+
8732
+ /* Size M — 12px */
8733
+
8734
+ .ui-scrollbar-m::-webkit-scrollbar {
8735
+ width: var(--scrollbar-m-thickness);
8736
+ height: var(--scrollbar-m-thickness);
8737
+ }
8738
+
8739
+ /* Size S — 6px (default, same as base .ui-scrollbar) */
8740
+
8741
+ .ui-scrollbar-s::-webkit-scrollbar {
8742
+ width: var(--scrollbar-s-thickness);
8743
+ height: var(--scrollbar-s-thickness);
8744
+ }
8745
+
8746
+ /* Size XS — 2px */
8747
+
8748
+ .ui-scrollbar-xs::-webkit-scrollbar {
8749
+ width: var(--scrollbar-xs-thickness);
8750
+ height: var(--scrollbar-xs-thickness);
8751
+ }
8752
+
8753
+ /* XS size has no track border */
8754
+
8755
+ .ui-scrollbar-xs::-webkit-scrollbar-track:vertical,
8756
+ .ui-scrollbar-xs::-webkit-scrollbar-track:horizontal {
8757
+ border: none;
8346
8758
  }
8347
8759
 
8348
8760
  .\[filter\:var\(--switch-thumb-filter\)\] {
@@ -8369,6 +8781,16 @@ input[type=number] {
8369
8781
  color: color-mix(in srgb, var(--input-disable-text) calc(100% * var(--tw-text-opacity, 1)), transparent);
8370
8782
  }
8371
8783
 
8784
+ .placeholder\:text-text-g-contrast-medium::-moz-placeholder {
8785
+ --tw-text-opacity: 1;
8786
+ color: color-mix(in srgb, var(--text-g-contrast-medium) calc(100% * var(--tw-text-opacity, 1)), transparent);
8787
+ }
8788
+
8789
+ .placeholder\:text-text-g-contrast-medium::placeholder {
8790
+ --tw-text-opacity: 1;
8791
+ color: color-mix(in srgb, var(--text-g-contrast-medium) calc(100% * var(--tw-text-opacity, 1)), transparent);
8792
+ }
8793
+
8372
8794
  .placeholder\:text-transparent::-moz-placeholder {
8373
8795
  color: transparent;
8374
8796
  }
@@ -9042,10 +9464,19 @@ input[type=number] {
9042
9464
  color: color-mix(in srgb, var(--input-filled-text) calc(100% * var(--tw-text-opacity, 1)), transparent);
9043
9465
  }
9044
9466
 
9467
+ .hover\:text-text-g-contrast-high:hover {
9468
+ --tw-text-opacity: 1;
9469
+ color: color-mix(in srgb, var(--text-g-contrast-high) calc(100% * var(--tw-text-opacity, 1)), transparent);
9470
+ }
9471
+
9045
9472
  .hover\:opacity-100:hover {
9046
9473
  opacity: 1;
9047
9474
  }
9048
9475
 
9476
+ .hover\:opacity-80:hover {
9477
+ opacity: 0.8;
9478
+ }
9479
+
9049
9480
  .hover\:ring-\[var\(--action-button-outline-active-hover-border\)\]:hover {
9050
9481
  --tw-ring-color: var(--action-button-outline-active-hover-border);
9051
9482
  }
@@ -9103,11 +9534,6 @@ input[type=number] {
9103
9534
  background-color: var(--dropdown-menu-hover-bg) !important;
9104
9535
  }
9105
9536
 
9106
- .focus\:bg-primary:focus {
9107
- --tw-bg-opacity: 1;
9108
- background-color: color-mix(in srgb, var(--state-primary-default) calc(100% * var(--tw-bg-opacity, 1)), transparent);
9109
- }
9110
-
9111
9537
  .focus\:pe-10:focus {
9112
9538
  padding-inline-end: 2.5rem;
9113
9539
  }
@@ -10779,6 +11205,10 @@ input[type=number] {
10779
11205
  color: var(--dropdown-menu-disabled-text) !important;
10780
11206
  }
10781
11207
 
11208
+ .data-\[disabled\]\:\!text-\[var\(--dropdown-menu-radio-disabled-text\)\][data-disabled] {
11209
+ color: var(--dropdown-menu-radio-disabled-text) !important;
11210
+ }
11211
+
10782
11212
  .data-\[disabled\]\:\!text-state-disable-outline[data-disabled] {
10783
11213
  --tw-text-opacity: 1 !important;
10784
11214
  color: color-mix(in srgb, var(--state-disable-outline) calc(100% * var(--tw-text-opacity, 1)), transparent) !important;
@@ -10889,6 +11319,10 @@ input[type=number] {
10889
11319
  color: color-mix(in srgb, var(--button-warning-solid-active-text) calc(100% * var(--tw-text-opacity, 1)), transparent);
10890
11320
  }
10891
11321
 
11322
+ .data-\[state\=\'checked\'\]\:data-\[disabled\]\:\!text-\[var\(--dropdown-menu-radio-selected-disabled-text\)\][data-disabled][data-state='checked'] {
11323
+ color: var(--dropdown-menu-radio-selected-disabled-text) !important;
11324
+ }
11325
+
10892
11326
  .data-\[state\=\'checked\'\]\:text-\[var\(--dropdown-menu-selected-text\)\][data-state='checked'] {
10893
11327
  color: var(--dropdown-menu-selected-text);
10894
11328
  }
@@ -10925,12 +11359,6 @@ input[type=number] {
10925
11359
  transition-property: none;
10926
11360
  }
10927
11361
 
10928
- .data-\[state\=\'checked\'\]\:typography-subtitle5[data-state='checked'] {
10929
- font-size: var(--subtitle5-size, 14px);
10930
- line-height: var(--subtitle5-line-height, 22px);
10931
- font-weight: var(--subtitle5-weight, 500);
10932
- }
10933
-
10934
11362
  .data-\[disabled\]\:before\:\!bg-\[var\(--switch-disabled-color\)\][data-disabled]::before {
10935
11363
  content: var(--tw-content);
10936
11364
  background-color: var(--switch-disabled-color) !important;