@rovula/ui 0.1.28 → 0.1.30

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 (65) hide show
  1. package/dist/cjs/bundle.css +522 -67
  2. package/dist/cjs/bundle.js +589 -589
  3. package/dist/cjs/bundle.js.map +1 -1
  4. package/dist/cjs/types/components/DataTable/DataTable.d.ts +195 -4
  5. package/dist/cjs/types/components/DataTable/DataTable.editing.d.ts +20 -0
  6. package/dist/cjs/types/components/DataTable/DataTable.editing.types.d.ts +145 -0
  7. package/dist/cjs/types/components/DataTable/DataTable.stories.d.ts +294 -6
  8. package/dist/cjs/types/components/Dropdown/Dropdown.d.ts +22 -0
  9. package/dist/cjs/types/components/Dropdown/Dropdown.stories.d.ts +4 -0
  10. package/dist/cjs/types/components/ScrollArea/ScrollArea.d.ts +3 -3
  11. package/dist/cjs/types/components/ScrollArea/ScrollArea.stories.d.ts +4 -0
  12. package/dist/cjs/types/components/Table/Table.d.ts +33 -3
  13. package/dist/cjs/types/components/Table/Table.stories.d.ts +86 -4
  14. package/dist/cjs/types/components/TextInput/TextInput.stories.d.ts +8 -0
  15. package/dist/cjs/types/components/TextInput/TextInput.styles.d.ts +1 -0
  16. package/dist/components/DataTable/DataTable.editing.js +385 -0
  17. package/dist/components/DataTable/DataTable.editing.types.js +1 -0
  18. package/dist/components/DataTable/DataTable.js +993 -50
  19. package/dist/components/DataTable/DataTable.stories.js +1137 -25
  20. package/dist/components/Dropdown/Dropdown.js +8 -6
  21. package/dist/components/ScrollArea/ScrollArea.js +2 -2
  22. package/dist/components/ScrollArea/ScrollArea.stories.js +68 -2
  23. package/dist/components/Table/Table.js +103 -13
  24. package/dist/components/Table/Table.stories.js +226 -9
  25. package/dist/components/TextInput/TextInput.js +6 -4
  26. package/dist/components/TextInput/TextInput.stories.js +8 -0
  27. package/dist/components/TextInput/TextInput.styles.js +7 -1
  28. package/dist/esm/bundle.css +522 -67
  29. package/dist/esm/bundle.js +1545 -1545
  30. package/dist/esm/bundle.js.map +1 -1
  31. package/dist/esm/types/components/DataTable/DataTable.d.ts +195 -4
  32. package/dist/esm/types/components/DataTable/DataTable.editing.d.ts +20 -0
  33. package/dist/esm/types/components/DataTable/DataTable.editing.types.d.ts +145 -0
  34. package/dist/esm/types/components/DataTable/DataTable.stories.d.ts +294 -6
  35. package/dist/esm/types/components/Dropdown/Dropdown.d.ts +22 -0
  36. package/dist/esm/types/components/Dropdown/Dropdown.stories.d.ts +4 -0
  37. package/dist/esm/types/components/ScrollArea/ScrollArea.d.ts +3 -3
  38. package/dist/esm/types/components/ScrollArea/ScrollArea.stories.d.ts +4 -0
  39. package/dist/esm/types/components/Table/Table.d.ts +33 -3
  40. package/dist/esm/types/components/Table/Table.stories.d.ts +86 -4
  41. package/dist/esm/types/components/TextInput/TextInput.stories.d.ts +8 -0
  42. package/dist/esm/types/components/TextInput/TextInput.styles.d.ts +1 -0
  43. package/dist/index.d.ts +493 -122
  44. package/dist/src/theme/global.css +775 -96
  45. package/package.json +14 -2
  46. package/src/components/DataTable/DataTable.editing.tsx +861 -0
  47. package/src/components/DataTable/DataTable.editing.types.ts +192 -0
  48. package/src/components/DataTable/DataTable.stories.tsx +2310 -31
  49. package/src/components/DataTable/DataTable.test.tsx +696 -0
  50. package/src/components/DataTable/DataTable.tsx +2275 -94
  51. package/src/components/Dropdown/Dropdown.tsx +22 -6
  52. package/src/components/ScrollArea/ScrollArea.stories.tsx +146 -3
  53. package/src/components/ScrollArea/ScrollArea.tsx +6 -6
  54. package/src/components/Table/Table.stories.tsx +789 -44
  55. package/src/components/Table/Table.tsx +306 -28
  56. package/src/components/TextInput/TextInput.stories.tsx +80 -0
  57. package/src/components/TextInput/TextInput.styles.ts +7 -1
  58. package/src/components/TextInput/TextInput.tsx +21 -14
  59. package/src/test/setup.ts +50 -0
  60. package/src/theme/global.css +81 -42
  61. package/src/theme/presets/colors.js +12 -0
  62. package/src/theme/themes/variable.css +27 -28
  63. package/src/theme/tokens/baseline.css +2 -1
  64. package/src/theme/tokens/components/scrollbar.css +9 -4
  65. package/src/theme/tokens/components/table.css +63 -0
@@ -514,13 +514,32 @@ video {
514
514
  display: none;
515
515
  }
516
516
 
517
- * {
518
- /* @apply border-border; */
519
- scrollbar-width: thin;
520
- scrollbar-color: var(--scrollbar-thumb-default-color) transparent;
517
+ /*
518
+ * Scrollbar baseline
519
+ *
520
+ * Chrome 121+ conflict: when scrollbar-width is set on an element,
521
+ * Chrome IGNORES -webkit-scrollbar width/height entirely.
522
+ * They are mutually exclusive for sizing.
523
+ *
524
+ * Solution: apply scrollbar-width only in Firefox (where -webkit-scrollbar
525
+ * is not supported). Chrome/Safari use -webkit-scrollbar exclusively.
526
+ */
527
+
528
+ /* Firefox only — standard scrollbar API */
529
+
530
+ @supports (-moz-appearance: none) {
531
+ * {
532
+ scrollbar-width: thin;
533
+ scrollbar-color: var(--scrollbar-thumb-default-color) transparent;
534
+ }
521
535
  }
522
536
 
537
+ /* Chrome / Safari / Edge — WebKit scrollbar API */
538
+
539
+ /* scrollbar-width must NOT be set on these elements or sizes are ignored */
540
+
523
541
  *::-webkit-scrollbar {
542
+ -webkit-appearance: none;
524
543
  width: var(--scrollbar-s-thickness);
525
544
  height: var(--scrollbar-s-thickness);
526
545
  background: transparent;
@@ -549,12 +568,9 @@ video {
549
568
 
550
569
  body {
551
570
  /* @apply bg-background text-foreground; */
552
- /* @apply bg-[var(--background)] text-[var(--foreground)]; */
553
571
  }
554
572
 
555
- /* hide input number arrow */
556
-
557
- /* Chrome, Safari, Edge, Opera */
573
+ /* hide input number arrow — Chrome, Safari, Edge, Opera */
558
574
 
559
575
  input::-webkit-outer-spin-button,
560
576
  input::-webkit-inner-spin-button {
@@ -567,6 +583,13 @@ input::-webkit-outer-spin-button,
567
583
  input[type=number] {
568
584
  -moz-appearance: textfield;
569
585
  }
586
+ .\!container{
587
+ width: 100% !important;
588
+ margin-right: auto !important;
589
+ margin-left: auto !important;
590
+ padding-right: 2rem !important;
591
+ padding-left: 2rem !important;
592
+ }
570
593
  .container{
571
594
  width: 100%;
572
595
  margin-right: auto;
@@ -576,6 +599,10 @@ input[type=number] {
576
599
  }
577
600
  @media (min-width: 1400px){
578
601
 
602
+ .\!container{
603
+ max-width: 1400px !important;
604
+ }
605
+
579
606
  .container{
580
607
  max-width: 1400px;
581
608
  }
@@ -600,6 +627,9 @@ input[type=number] {
600
627
  .visible{
601
628
  visibility: visible;
602
629
  }
630
+ .invisible{
631
+ visibility: hidden;
632
+ }
603
633
  .static{
604
634
  position: static;
605
635
  }
@@ -664,6 +694,9 @@ input[type=number] {
664
694
  .right-0{
665
695
  right: 0px;
666
696
  }
697
+ .right-2{
698
+ right: 0.5rem;
699
+ }
667
700
  .right-8{
668
701
  right: 2rem;
669
702
  }
@@ -676,6 +709,9 @@ input[type=number] {
676
709
  .top-1{
677
710
  top: 0.25rem;
678
711
  }
712
+ .top-1\/2{
713
+ top: 50%;
714
+ }
679
715
  .top-8{
680
716
  top: 2rem;
681
717
  }
@@ -703,6 +739,9 @@ input[type=number] {
703
739
  .z-10{
704
740
  z-index: 10;
705
741
  }
742
+ .z-40{
743
+ z-index: 40;
744
+ }
706
745
  .z-50{
707
746
  z-index: 50;
708
747
  }
@@ -721,6 +760,10 @@ input[type=number] {
721
760
  .m-0{
722
761
  margin: 0px;
723
762
  }
763
+ .-mx-1{
764
+ margin-left: -0.25rem;
765
+ margin-right: -0.25rem;
766
+ }
724
767
  .mx-2{
725
768
  margin-left: 0.5rem;
726
769
  margin-right: 0.5rem;
@@ -837,6 +880,10 @@ input[type=number] {
837
880
  .aspect-square{
838
881
  aspect-ratio: 1 / 1;
839
882
  }
883
+ .\!size-4{
884
+ width: 1rem !important;
885
+ height: 1rem !important;
886
+ }
840
887
  .size-14{
841
888
  width: 3.5rem;
842
889
  height: 3.5rem;
@@ -918,9 +965,15 @@ input[type=number] {
918
965
  .h-3{
919
966
  height: 0.75rem;
920
967
  }
968
+ .h-32{
969
+ height: 8rem;
970
+ }
921
971
  .h-4{
922
972
  height: 1rem;
923
973
  }
974
+ .h-4\/5{
975
+ height: 80%;
976
+ }
924
977
  .h-5{
925
978
  height: 1.25rem;
926
979
  }
@@ -930,18 +983,33 @@ input[type=number] {
930
983
  .h-60{
931
984
  height: 15rem;
932
985
  }
986
+ .h-\[180px\]{
987
+ height: 180px;
988
+ }
933
989
  .h-\[200px\]{
934
990
  height: 200px;
935
991
  }
936
992
  .h-\[200vh\]{
937
993
  height: 200vh;
938
994
  }
995
+ .h-\[220px\]{
996
+ height: 220px;
997
+ }
939
998
  .h-\[24px\]{
940
999
  height: 24px;
941
1000
  }
1001
+ .h-\[280px\]{
1002
+ height: 280px;
1003
+ }
1004
+ .h-\[28px\]{
1005
+ height: 28px;
1006
+ }
942
1007
  .h-\[2px\]{
943
1008
  height: 2px;
944
1009
  }
1010
+ .h-\[320px\]{
1011
+ height: 320px;
1012
+ }
945
1013
  .h-\[32px\]{
946
1014
  height: 32px;
947
1015
  }
@@ -951,15 +1019,39 @@ input[type=number] {
951
1019
  .h-\[40px\]{
952
1020
  height: 40px;
953
1021
  }
1022
+ .h-\[42px\]{
1023
+ height: 42px;
1024
+ }
1025
+ .h-\[44px\]{
1026
+ height: 44px;
1027
+ }
954
1028
  .h-\[48px\]{
955
1029
  height: 48px;
956
1030
  }
1031
+ .h-\[50px\]{
1032
+ height: 50px;
1033
+ }
957
1034
  .h-\[54px\]{
958
1035
  height: 54px;
959
1036
  }
1037
+ .h-\[56px\]{
1038
+ height: 56px;
1039
+ }
960
1040
  .h-\[64px\]{
961
1041
  height: 64px;
962
1042
  }
1043
+ .h-\[min\(380px\2c 50vh\)\]{
1044
+ height: min(380px,50vh);
1045
+ }
1046
+ .h-\[min\(420px\2c 55vh\)\]{
1047
+ height: min(420px,55vh);
1048
+ }
1049
+ .h-\[min\(480px\2c 70vh\)\]{
1050
+ height: min(480px,70vh);
1051
+ }
1052
+ .h-\[min\(520px\2c 70vh\)\]{
1053
+ height: min(520px,70vh);
1054
+ }
963
1055
  .h-\[var\(--footer-height\)\]{
964
1056
  height: var(--footer-height);
965
1057
  }
@@ -969,6 +1061,9 @@ input[type=number] {
969
1061
  .h-\[var\(--navbar-height\)\]{
970
1062
  height: var(--navbar-height);
971
1063
  }
1064
+ .h-auto{
1065
+ height: auto;
1066
+ }
972
1067
  .h-fit{
973
1068
  height: -moz-fit-content;
974
1069
  height: fit-content;
@@ -982,6 +1077,9 @@ input[type=number] {
982
1077
  .h-screen{
983
1078
  height: 100vh;
984
1079
  }
1080
+ .\!max-h-60{
1081
+ max-height: 15rem !important;
1082
+ }
985
1083
  .max-h-60{
986
1084
  max-height: 15rem;
987
1085
  }
@@ -1000,6 +1098,9 @@ input[type=number] {
1000
1098
  .max-h-\[80vh\]{
1001
1099
  max-height: 80vh;
1002
1100
  }
1101
+ .max-h-\[min\(520px\2c 70vh\)\]{
1102
+ max-height: min(520px,70vh);
1103
+ }
1003
1104
  .max-h-screen{
1004
1105
  max-height: 100vh;
1005
1106
  }
@@ -1015,9 +1116,21 @@ input[type=number] {
1015
1116
  .min-h-\[18px\]{
1016
1117
  min-height: 18px;
1017
1118
  }
1119
+ .min-h-\[200px\]{
1120
+ min-height: 200px;
1121
+ }
1122
+ .min-h-\[32px\]{
1123
+ min-height: 32px;
1124
+ }
1018
1125
  .min-h-screen{
1019
1126
  min-height: 100vh;
1020
1127
  }
1128
+ .w-0\.5{
1129
+ width: 0.125rem;
1130
+ }
1131
+ .w-1\.5{
1132
+ width: 0.375rem;
1133
+ }
1021
1134
  .w-1\/2{
1022
1135
  width: 50%;
1023
1136
  }
@@ -1054,8 +1167,8 @@ input[type=number] {
1054
1167
  .w-80{
1055
1168
  width: 20rem;
1056
1169
  }
1057
- .w-\[100px\]{
1058
- width: 100px;
1170
+ .w-\[120px\]{
1171
+ width: 120px;
1059
1172
  }
1060
1173
  .w-\[140px\]{
1061
1174
  width: 140px;
@@ -1087,9 +1200,15 @@ input[type=number] {
1087
1200
  .w-\[420px\]{
1088
1201
  width: 420px;
1089
1202
  }
1203
+ .w-\[460px\]{
1204
+ width: 460px;
1205
+ }
1090
1206
  .w-\[46px\]{
1091
1207
  width: 46px;
1092
1208
  }
1209
+ .w-\[480px\]{
1210
+ width: 480px;
1211
+ }
1093
1212
  .w-\[48px\]{
1094
1213
  width: 48px;
1095
1214
  }
@@ -1099,12 +1218,21 @@ input[type=number] {
1099
1218
  .w-\[520px\]{
1100
1219
  width: 520px;
1101
1220
  }
1221
+ .w-\[5px\]{
1222
+ width: 5px;
1223
+ }
1102
1224
  .w-\[64px\]{
1103
1225
  width: 64px;
1104
1226
  }
1227
+ .w-\[72px\]{
1228
+ width: 72px;
1229
+ }
1105
1230
  .w-\[calc\(100\%-32px\)\]{
1106
1231
  width: calc(100% - 32px);
1107
1232
  }
1233
+ .w-\[var\(--input-width\)\]{
1234
+ width: var(--input-width);
1235
+ }
1108
1236
  .w-auto{
1109
1237
  width: auto;
1110
1238
  }
@@ -1115,6 +1243,12 @@ input[type=number] {
1115
1243
  .w-full{
1116
1244
  width: 100%;
1117
1245
  }
1246
+ .w-px{
1247
+ width: 1px;
1248
+ }
1249
+ .min-w-0{
1250
+ min-width: 0px;
1251
+ }
1118
1252
  .min-w-72{
1119
1253
  min-width: 18rem;
1120
1254
  }
@@ -1124,10 +1258,22 @@ input[type=number] {
1124
1258
  .min-w-\[154px\]{
1125
1259
  min-width: 154px;
1126
1260
  }
1261
+ .min-w-\[220px\]{
1262
+ min-width: 220px;
1263
+ }
1264
+ .min-w-\[240px\]{
1265
+ min-width: 240px;
1266
+ }
1267
+ .min-w-\[800px\]{
1268
+ min-width: 800px;
1269
+ }
1127
1270
  .min-w-fit{
1128
1271
  min-width: -moz-fit-content;
1129
1272
  min-width: fit-content;
1130
1273
  }
1274
+ .min-w-full{
1275
+ min-width: 100%;
1276
+ }
1131
1277
  .max-w-2xl{
1132
1278
  max-width: 42rem;
1133
1279
  }
@@ -1137,6 +1283,9 @@ input[type=number] {
1137
1283
  .max-w-4xl{
1138
1284
  max-width: 56rem;
1139
1285
  }
1286
+ .max-w-7xl{
1287
+ max-width: 80rem;
1288
+ }
1140
1289
  .max-w-\[300px\]{
1141
1290
  max-width: 300px;
1142
1291
  }
@@ -1167,11 +1316,19 @@ input[type=number] {
1167
1316
  .grow{
1168
1317
  flex-grow: 1;
1169
1318
  }
1319
+ .table-fixed{
1320
+ table-layout: fixed;
1321
+ }
1170
1322
  .caption-bottom{
1171
1323
  caption-side: bottom;
1172
1324
  }
1173
- .border-collapse{
1174
- border-collapse: collapse;
1325
+ .border-separate{
1326
+ border-collapse: separate;
1327
+ }
1328
+ .border-spacing-0{
1329
+ --tw-border-spacing-x: 0px;
1330
+ --tw-border-spacing-y: 0px;
1331
+ border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y);
1175
1332
  }
1176
1333
  .-translate-x-1\/2{
1177
1334
  --tw-translate-x: -50%;
@@ -1193,6 +1350,11 @@ input[type=number] {
1193
1350
  --tw-rotate: 180deg;
1194
1351
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
1195
1352
  }
1353
+ .scale-\[1\.01\]{
1354
+ --tw-scale-x: 1.01;
1355
+ --tw-scale-y: 1.01;
1356
+ transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
1357
+ }
1196
1358
  .transform{
1197
1359
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
1198
1360
  }
@@ -1205,12 +1367,18 @@ input[type=number] {
1205
1367
  .animate-spin{
1206
1368
  animation: spin 1s linear infinite;
1207
1369
  }
1370
+ .cursor-col-resize{
1371
+ cursor: col-resize;
1372
+ }
1208
1373
  .cursor-default{
1209
1374
  cursor: default;
1210
1375
  }
1211
1376
  .cursor-grab{
1212
1377
  cursor: grab;
1213
1378
  }
1379
+ .cursor-grabbing{
1380
+ cursor: grabbing;
1381
+ }
1214
1382
  .cursor-not-allowed{
1215
1383
  cursor: not-allowed;
1216
1384
  }
@@ -1231,6 +1399,11 @@ input[type=number] {
1231
1399
  .resize{
1232
1400
  resize: both;
1233
1401
  }
1402
+ .appearance-none{
1403
+ -webkit-appearance: none;
1404
+ -moz-appearance: none;
1405
+ appearance: none;
1406
+ }
1234
1407
  .grid-cols-1{
1235
1408
  grid-template-columns: repeat(1, minmax(0, 1fr));
1236
1409
  }
@@ -1294,6 +1467,9 @@ input[type=number] {
1294
1467
  .items-start{
1295
1468
  align-items: flex-start;
1296
1469
  }
1470
+ .items-end{
1471
+ align-items: flex-end;
1472
+ }
1297
1473
  .items-center{
1298
1474
  align-items: center;
1299
1475
  }
@@ -1388,12 +1564,12 @@ input[type=number] {
1388
1564
  margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse)));
1389
1565
  margin-bottom: calc(2rem * var(--tw-space-y-reverse));
1390
1566
  }
1567
+ .self-start{
1568
+ align-self: flex-start;
1569
+ }
1391
1570
  .self-center{
1392
1571
  align-self: center;
1393
1572
  }
1394
- .self-stretch{
1395
- align-self: stretch;
1396
- }
1397
1573
  .justify-self-center{
1398
1574
  justify-self: center;
1399
1575
  }
@@ -1418,9 +1594,6 @@ input[type=number] {
1418
1594
  .overflow-y-hidden{
1419
1595
  overflow-y: hidden;
1420
1596
  }
1421
- .overflow-y-scroll{
1422
- overflow-y: scroll;
1423
- }
1424
1597
  .truncate{
1425
1598
  overflow: hidden;
1426
1599
  text-overflow: ellipsis;
@@ -1432,6 +1605,9 @@ input[type=number] {
1432
1605
  .whitespace-nowrap{
1433
1606
  white-space: nowrap;
1434
1607
  }
1608
+ .whitespace-pre{
1609
+ white-space: pre;
1610
+ }
1435
1611
  .whitespace-pre-line{
1436
1612
  white-space: pre-line;
1437
1613
  }
@@ -1563,6 +1739,9 @@ input[type=number] {
1563
1739
  .border-\[3px\]{
1564
1740
  border-width: 3px;
1565
1741
  }
1742
+ .\!border-r-0{
1743
+ border-right-width: 0px !important;
1744
+ }
1566
1745
  .border-b{
1567
1746
  border-bottom-width: 1px;
1568
1747
  }
@@ -1789,6 +1968,10 @@ input[type=number] {
1789
1968
  --tw-border-opacity: 1;
1790
1969
  border-color: color-mix(in srgb, var(--input-error) calc(100% * var(--tw-border-opacity, 1)), transparent);
1791
1970
  }
1971
+ .border-modal-line{
1972
+ --tw-border-opacity: 1;
1973
+ border-color: color-mix(in srgb, var(--modal-line) calc(100% * var(--tw-border-opacity, 1)), transparent);
1974
+ }
1792
1975
  .border-modal-surface{
1793
1976
  --tw-border-opacity: 1;
1794
1977
  border-color: color-mix(in srgb, var(--modal-surface) calc(100% * var(--tw-border-opacity, 1)), transparent);
@@ -1797,10 +1980,6 @@ input[type=number] {
1797
1980
  --tw-border-opacity: 1;
1798
1981
  border-color: color-mix(in srgb, var(--state-primary-default) calc(100% * var(--tw-border-opacity, 1)), transparent);
1799
1982
  }
1800
- .border-primary-10{
1801
- --tw-border-opacity: 1;
1802
- border-color: color-mix(in srgb, var(--ramps-primary-10) calc(100% * var(--tw-border-opacity, 1)), transparent);
1803
- }
1804
1983
  .border-red-500{
1805
1984
  --tw-border-opacity: 1;
1806
1985
  border-color: rgb(239 68 68 / var(--tw-border-opacity, 1));
@@ -1813,10 +1992,26 @@ input[type=number] {
1813
1992
  --tw-border-opacity: 1;
1814
1993
  border-color: color-mix(in srgb, var(--state-disable-outline) calc(100% * var(--tw-border-opacity, 1)), transparent);
1815
1994
  }
1995
+ .border-state-primary-stroke{
1996
+ --tw-border-opacity: 1;
1997
+ border-color: color-mix(in srgb, var(--state-primary-stroke) calc(100% * var(--tw-border-opacity, 1)), transparent);
1998
+ }
1816
1999
  .border-success-stroke{
1817
2000
  --tw-border-opacity: 1;
1818
2001
  border-color: color-mix(in srgb, var(--state-success-stroke) calc(100% * var(--tw-border-opacity, 1)), transparent);
1819
2002
  }
2003
+ .border-table-bg-line{
2004
+ --tw-border-opacity: 1;
2005
+ border-color: color-mix(in srgb, var(--table-bg-line) calc(100% * var(--tw-border-opacity, 1)), transparent);
2006
+ }
2007
+ .border-table-c-border{
2008
+ --tw-border-opacity: 1;
2009
+ border-color: color-mix(in srgb, var(--table-c-border) calc(100% * var(--tw-border-opacity, 1)), transparent);
2010
+ }
2011
+ .border-table-c-col-line{
2012
+ --tw-border-opacity: 1;
2013
+ border-color: color-mix(in srgb, var(--table-c-col-line) calc(100% * var(--tw-border-opacity, 1)), transparent);
2014
+ }
1820
2015
  .border-transparent{
1821
2016
  border-color: transparent;
1822
2017
  }
@@ -1828,6 +2023,9 @@ input[type=number] {
1828
2023
  --tw-border-opacity: 1;
1829
2024
  border-color: color-mix(in srgb, var(--state-warning-stroke) calc(100% * var(--tw-border-opacity, 1)), transparent);
1830
2025
  }
2026
+ .border-white\/20{
2027
+ border-color: rgb(255 255 255 / 0.2);
2028
+ }
1831
2029
  .border-b-\[rgb\(var\(--navbar-border-color\)\)\]{
1832
2030
  border-bottom-color: rgb(var(--navbar-border-color));
1833
2031
  }
@@ -1866,6 +2064,14 @@ input[type=number] {
1866
2064
  --tw-border-opacity: 1;
1867
2065
  border-top-color: color-mix(in srgb, var(--state-secondary-default) calc(100% * var(--tw-border-opacity, 1)), transparent);
1868
2066
  }
2067
+ .border-t-table-c-header-line{
2068
+ --tw-border-opacity: 1;
2069
+ border-top-color: color-mix(in srgb, var(--table-c-header-line) calc(100% * var(--tw-border-opacity, 1)), transparent);
2070
+ }
2071
+ .border-t-table-c-row-line{
2072
+ --tw-border-opacity: 1;
2073
+ border-top-color: color-mix(in srgb, var(--table-c-row-line) calc(100% * var(--tw-border-opacity, 1)), transparent);
2074
+ }
1869
2075
  .\!bg-\[var\(--dropdown-menu-hover-bg\)\]{
1870
2076
  background-color: var(--dropdown-menu-hover-bg) !important;
1871
2077
  }
@@ -1893,6 +2099,15 @@ input[type=number] {
1893
2099
  --tw-bg-opacity: 1 !important;
1894
2100
  background-color: color-mix(in srgb, var(--action-button-solid-hover-bg) calc(100% * var(--tw-bg-opacity, 1)), transparent) !important;
1895
2101
  }
2102
+ .\!bg-info-500\/10{
2103
+ background-color: color-mix(in srgb, var(--ramps-info-500) calc(100% * 0.1), transparent) !important;
2104
+ }
2105
+ .\!bg-success-500\/10{
2106
+ background-color: color-mix(in srgb, var(--ramps-success-500) calc(100% * 0.1), transparent) !important;
2107
+ }
2108
+ .\!bg-white\/5{
2109
+ background-color: rgb(255 255 255 / 0.05) !important;
2110
+ }
1896
2111
  .bg-\[rgb\(var\(--base-bg-2\)\)\]{
1897
2112
  background-color: rgb(var(--base-bg-2));
1898
2113
  }
@@ -2189,6 +2404,9 @@ input[type=number] {
2189
2404
  --tw-bg-opacity: 1;
2190
2405
  background-color: color-mix(in srgb, var(--ramps-error-500) calc(100% * var(--tw-bg-opacity, 1)), transparent);
2191
2406
  }
2407
+ .bg-error-500\/20{
2408
+ background-color: color-mix(in srgb, var(--ramps-error-500) calc(100% * 0.2), transparent);
2409
+ }
2192
2410
  .bg-error-600{
2193
2411
  --tw-bg-opacity: 1;
2194
2412
  background-color: color-mix(in srgb, var(--ramps-error-600) calc(100% * var(--tw-bg-opacity, 1)), transparent);
@@ -2476,6 +2694,9 @@ input[type=number] {
2476
2694
  --tw-bg-opacity: 1;
2477
2695
  background-color: color-mix(in srgb, var(--ramps-info-500) calc(100% * var(--tw-bg-opacity, 1)), transparent);
2478
2696
  }
2697
+ .bg-info-500\/20{
2698
+ background-color: color-mix(in srgb, var(--ramps-info-500) calc(100% * 0.2), transparent);
2699
+ }
2479
2700
  .bg-info-600{
2480
2701
  --tw-bg-opacity: 1;
2481
2702
  background-color: color-mix(in srgb, var(--ramps-info-600) calc(100% * var(--tw-bg-opacity, 1)), transparent);
@@ -2575,6 +2796,17 @@ input[type=number] {
2575
2796
  --tw-bg-opacity: 1;
2576
2797
  background-color: color-mix(in srgb, var(--modal-surface) calc(100% * var(--tw-bg-opacity, 1)), transparent);
2577
2798
  }
2799
+ .bg-orange-500{
2800
+ --tw-bg-opacity: 1;
2801
+ background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
2802
+ }
2803
+ .bg-orange-500\/20{
2804
+ background-color: rgb(249 115 22 / 0.2);
2805
+ }
2806
+ .bg-page-bg-main{
2807
+ --tw-bg-opacity: 1;
2808
+ background-color: color-mix(in srgb, var(--page-bg-main) calc(100% * var(--tw-bg-opacity, 1)), transparent);
2809
+ }
2578
2810
  .bg-pink-100{
2579
2811
  --tw-bg-opacity: 1;
2580
2812
  background-color: rgb(252 231 243 / var(--tw-bg-opacity, 1));
@@ -2854,6 +3086,10 @@ input[type=number] {
2854
3086
  --tw-bg-opacity: 1;
2855
3087
  background-color: color-mix(in srgb, var(--state-disable-solid) calc(100% * var(--tw-bg-opacity, 1)), transparent);
2856
3088
  }
3089
+ .bg-state-primary-default{
3090
+ --tw-bg-opacity: 1;
3091
+ background-color: color-mix(in srgb, var(--state-primary-default) calc(100% * var(--tw-bg-opacity, 1)), transparent);
3092
+ }
2857
3093
  .bg-success{
2858
3094
  --tw-bg-opacity: 1;
2859
3095
  background-color: color-mix(in srgb, var(--state-success-default) calc(100% * var(--tw-bg-opacity, 1)), transparent);
@@ -2882,6 +3118,9 @@ input[type=number] {
2882
3118
  --tw-bg-opacity: 1;
2883
3119
  background-color: color-mix(in srgb, var(--ramps-success-500) calc(100% * var(--tw-bg-opacity, 1)), transparent);
2884
3120
  }
3121
+ .bg-success-500\/20{
3122
+ background-color: color-mix(in srgb, var(--ramps-success-500) calc(100% * 0.2), transparent);
3123
+ }
2885
3124
  .bg-success-600{
2886
3125
  --tw-bg-opacity: 1;
2887
3126
  background-color: color-mix(in srgb, var(--ramps-success-600) calc(100% * var(--tw-bg-opacity, 1)), transparent);
@@ -2930,6 +3169,22 @@ input[type=number] {
2930
3169
  --tw-bg-opacity: 1;
2931
3170
  background-color: color-mix(in srgb, var(--surface) calc(100% * var(--tw-bg-opacity, 1)), transparent);
2932
3171
  }
3172
+ .bg-table-bg-a{
3173
+ --tw-bg-opacity: 1;
3174
+ background-color: color-mix(in srgb, var(--table-bg-a) calc(100% * var(--tw-bg-opacity, 1)), transparent);
3175
+ }
3176
+ .bg-table-bg-main{
3177
+ --tw-bg-opacity: 1;
3178
+ background-color: color-mix(in srgb, var(--table-bg-main) calc(100% * var(--tw-bg-opacity, 1)), transparent);
3179
+ }
3180
+ .bg-table-c-col-line{
3181
+ --tw-bg-opacity: 1;
3182
+ background-color: color-mix(in srgb, var(--table-c-col-line) calc(100% * var(--tw-bg-opacity, 1)), transparent);
3183
+ }
3184
+ .bg-table-c-header-bg{
3185
+ --tw-bg-opacity: 1;
3186
+ background-color: color-mix(in srgb, var(--table-c-header-bg) calc(100% * var(--tw-bg-opacity, 1)), transparent);
3187
+ }
2933
3188
  .bg-tertiary{
2934
3189
  --tw-bg-opacity: 1;
2935
3190
  background-color: color-mix(in srgb, var(--state-tertiary-default) calc(100% * var(--tw-bg-opacity, 1)), transparent);
@@ -3129,6 +3384,9 @@ input[type=number] {
3129
3384
  --tw-bg-opacity: 1;
3130
3385
  background-color: color-mix(in srgb, var(--ramps-warning-500) calc(100% * var(--tw-bg-opacity, 1)), transparent);
3131
3386
  }
3387
+ .bg-warning-500\/20{
3388
+ background-color: color-mix(in srgb, var(--ramps-warning-500) calc(100% * 0.2), transparent);
3389
+ }
3132
3390
  .bg-warning-600{
3133
3391
  --tw-bg-opacity: 1;
3134
3392
  background-color: color-mix(in srgb, var(--ramps-warning-600) calc(100% * var(--tw-bg-opacity, 1)), transparent);
@@ -3423,10 +3681,18 @@ input[type=number] {
3423
3681
  .p-8{
3424
3682
  padding: 2rem;
3425
3683
  }
3684
+ .\!py-2{
3685
+ padding-top: 0.5rem !important;
3686
+ padding-bottom: 0.5rem !important;
3687
+ }
3426
3688
  .px-1{
3427
3689
  padding-left: 0.25rem;
3428
3690
  padding-right: 0.25rem;
3429
3691
  }
3692
+ .px-2{
3693
+ padding-left: 0.5rem;
3694
+ padding-right: 0.5rem;
3695
+ }
3430
3696
  .px-3{
3431
3697
  padding-left: 0.75rem;
3432
3698
  padding-right: 0.75rem;
@@ -3491,6 +3757,10 @@ input[type=number] {
3491
3757
  padding-top: 3.5rem;
3492
3758
  padding-bottom: 3.5rem;
3493
3759
  }
3760
+ .py-16{
3761
+ padding-top: 4rem;
3762
+ padding-bottom: 4rem;
3763
+ }
3494
3764
  .py-2{
3495
3765
  padding-top: 0.5rem;
3496
3766
  padding-bottom: 0.5rem;
@@ -3565,6 +3835,9 @@ input[type=number] {
3565
3835
  .pb-2{
3566
3836
  padding-bottom: 0.5rem;
3567
3837
  }
3838
+ .pb-3{
3839
+ padding-bottom: 0.75rem;
3840
+ }
3568
3841
  .pe-\[30px\]{
3569
3842
  padding-inline-end: 30px;
3570
3843
  }
@@ -3577,12 +3850,18 @@ input[type=number] {
3577
3850
  .pl-4{
3578
3851
  padding-left: 1rem;
3579
3852
  }
3853
+ .pl-6{
3854
+ padding-left: 1.5rem;
3855
+ }
3580
3856
  .pl-8{
3581
3857
  padding-left: 2rem;
3582
3858
  }
3583
3859
  .pr-4{
3584
3860
  padding-right: 1rem;
3585
3861
  }
3862
+ .pr-7{
3863
+ padding-right: 1.75rem;
3864
+ }
3586
3865
  .pr-8{
3587
3866
  padding-right: 2rem;
3588
3867
  }
@@ -3796,10 +4075,19 @@ input[type=number] {
3796
4075
  .capitalize{
3797
4076
  text-transform: capitalize;
3798
4077
  }
4078
+ .italic{
4079
+ font-style: italic;
4080
+ }
3799
4081
  .tabular-nums{
3800
4082
  --tw-numeric-spacing: tabular-nums;
3801
4083
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
3802
4084
  }
4085
+ .leading-\[18px\]{
4086
+ line-height: 18px;
4087
+ }
4088
+ .leading-\[20px\]{
4089
+ line-height: 20px;
4090
+ }
3803
4091
  .leading-\[3rem\]{
3804
4092
  line-height: 3rem;
3805
4093
  }
@@ -4038,6 +4326,14 @@ input[type=number] {
4038
4326
  --tw-text-opacity: 1;
4039
4327
  color: color-mix(in srgb, var(--state-error-default) calc(100% * var(--tw-text-opacity, 1)), transparent);
4040
4328
  }
4329
+ .text-error-400{
4330
+ --tw-text-opacity: 1;
4331
+ color: color-mix(in srgb, var(--ramps-error-400) calc(100% * var(--tw-text-opacity, 1)), transparent);
4332
+ }
4333
+ .text-error-500{
4334
+ --tw-text-opacity: 1;
4335
+ color: color-mix(in srgb, var(--ramps-error-500) calc(100% * var(--tw-text-opacity, 1)), transparent);
4336
+ }
4041
4337
  .text-function-active-icon{
4042
4338
  --tw-text-opacity: 1;
4043
4339
  color: color-mix(in srgb, var(--function-active-icon) calc(100% * var(--tw-text-opacity, 1)), transparent);
@@ -4074,6 +4370,10 @@ input[type=number] {
4074
4370
  --tw-text-opacity: 1;
4075
4371
  color: color-mix(in srgb, var(--state-info-default) calc(100% * var(--tw-text-opacity, 1)), transparent);
4076
4372
  }
4373
+ .text-info-400{
4374
+ --tw-text-opacity: 1;
4375
+ color: color-mix(in srgb, var(--ramps-info-400) calc(100% * var(--tw-text-opacity, 1)), transparent);
4376
+ }
4077
4377
  .text-inherit{
4078
4378
  color: inherit;
4079
4379
  }
@@ -4093,6 +4393,10 @@ input[type=number] {
4093
4393
  --tw-text-opacity: 1;
4094
4394
  color: color-mix(in srgb, var(--input-filled-text) calc(100% * var(--tw-text-opacity, 1)), transparent);
4095
4395
  }
4396
+ .text-orange-400{
4397
+ --tw-text-opacity: 1;
4398
+ color: rgb(251 146 60 / var(--tw-text-opacity, 1));
4399
+ }
4096
4400
  .text-pink-200{
4097
4401
  --tw-text-opacity: 1;
4098
4402
  color: rgb(251 207 232 / var(--tw-text-opacity, 1));
@@ -4125,10 +4429,18 @@ input[type=number] {
4125
4429
  --tw-text-opacity: 1;
4126
4430
  color: color-mix(in srgb, var(--state-error-default) calc(100% * var(--tw-text-opacity, 1)), transparent);
4127
4431
  }
4432
+ .text-state-primary-text-outline{
4433
+ --tw-text-opacity: 1;
4434
+ color: color-mix(in srgb, var(--state-primary-text-outline) calc(100% * var(--tw-text-opacity, 1)), transparent);
4435
+ }
4128
4436
  .text-state-primary-text-solid{
4129
4437
  --tw-text-opacity: 1;
4130
4438
  color: color-mix(in srgb, var(--state-primary-text-solid) calc(100% * var(--tw-text-opacity, 1)), transparent);
4131
4439
  }
4440
+ .text-state-secondary-text-outline{
4441
+ --tw-text-opacity: 1;
4442
+ color: color-mix(in srgb, var(--state-secondary-text-outline) calc(100% * var(--tw-text-opacity, 1)), transparent);
4443
+ }
4132
4444
  .text-state-secondary-text-solid{
4133
4445
  --tw-text-opacity: 1;
4134
4446
  color: color-mix(in srgb, var(--state-secondary-text-solid) calc(100% * var(--tw-text-opacity, 1)), transparent);
@@ -4141,6 +4453,10 @@ input[type=number] {
4141
4453
  --tw-text-opacity: 1;
4142
4454
  color: color-mix(in srgb, var(--state-success-default) calc(100% * var(--tw-text-opacity, 1)), transparent);
4143
4455
  }
4456
+ .text-success-400{
4457
+ --tw-text-opacity: 1;
4458
+ color: color-mix(in srgb, var(--ramps-success-400) calc(100% * var(--tw-text-opacity, 1)), transparent);
4459
+ }
4144
4460
  .text-tertiary{
4145
4461
  --tw-text-opacity: 1;
4146
4462
  color: color-mix(in srgb, var(--state-tertiary-default) calc(100% * var(--tw-text-opacity, 1)), transparent);
@@ -4149,6 +4465,10 @@ input[type=number] {
4149
4465
  --tw-text-opacity: 1;
4150
4466
  color: color-mix(in srgb, var(--text-black) calc(100% * var(--tw-text-opacity, 1)), transparent);
4151
4467
  }
4468
+ .text-text-contrast-high{
4469
+ --tw-text-opacity: 1;
4470
+ color: color-mix(in srgb, var(--text-contrast-high) calc(100% * var(--tw-text-opacity, 1)), transparent);
4471
+ }
4152
4472
  .text-text-contrast-low{
4153
4473
  --tw-text-opacity: 1;
4154
4474
  color: color-mix(in srgb, var(--text-contrast-low) calc(100% * var(--tw-text-opacity, 1)), transparent);
@@ -4177,6 +4497,10 @@ input[type=number] {
4177
4497
  --tw-text-opacity: 1;
4178
4498
  color: color-mix(in srgb, var(--state-warning-default) calc(100% * var(--tw-text-opacity, 1)), transparent);
4179
4499
  }
4500
+ .text-warning-400{
4501
+ --tw-text-opacity: 1;
4502
+ color: color-mix(in srgb, var(--ramps-warning-400) calc(100% * var(--tw-text-opacity, 1)), transparent);
4503
+ }
4180
4504
  .text-white{
4181
4505
  --tw-text-opacity: 1;
4182
4506
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
@@ -4197,17 +4521,28 @@ input[type=number] {
4197
4521
  .opacity-0{
4198
4522
  opacity: 0;
4199
4523
  }
4524
+ .opacity-100{
4525
+ opacity: 1;
4526
+ }
4200
4527
  .opacity-60{
4201
4528
  opacity: 0.6;
4202
4529
  }
4203
4530
  .opacity-70{
4204
4531
  opacity: 0.7;
4205
4532
  }
4533
+ .opacity-90{
4534
+ opacity: 0.9;
4535
+ }
4206
4536
  .shadow{
4207
4537
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
4208
4538
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
4209
4539
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
4210
4540
  }
4541
+ .shadow-\[0_8px_24px_-4px_rgba\(0\2c 0\2c 0\2c 0\.24\)\]{
4542
+ --tw-shadow: 0 8px 24px -4px rgba(0,0,0,0.24);
4543
+ --tw-shadow-colored: 0 8px 24px -4px var(--tw-shadow-color);
4544
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
4545
+ }
4211
4546
  .shadow-\[0px_12px_24px_-4px_rgba\(0\2c 0\2c 0\2c 0\.12\)\]{
4212
4547
  --tw-shadow: 0px 12px 24px -4px rgba(0,0,0,0.12);
4213
4548
  --tw-shadow-colored: 0px 12px 24px -4px var(--tw-shadow-color);
@@ -4532,57 +4867,81 @@ input[type=number] {
4532
4867
  font-weight: var(--button-button-ms-weight, 700);
4533
4868
  }
4534
4869
  /* ------------------------------------------------------------------ */
4535
- /* Scrollbar utility applies the design-system scrollbar style */
4536
- /* Default size: S (6px thumb, matches Figma Size=S) */
4537
- /* Usage: add `ui-scrollbar` + optional size modifier to any */
4538
- /* overflow-auto / overflow-y-auto / overflow-x-auto container. */
4870
+ /* ui-scrollbar — design-system themed scrollbar */
4871
+ /* */
4872
+ /* Sizing uses COMPOUND SELECTORS (not CSS variables) because */
4873
+ /* -webkit-scrollbar pseudo-elements don't reliably inherit custom */
4874
+ /* properties in Chrome. Compound selectors have higher specificity */
4875
+ /* and directly override the base width/height. */
4876
+ /* */
4877
+ /* Usage: */
4878
+ /* <div class="ui-scrollbar"> default M+M */
4879
+ /* <div class="ui-scrollbar ui-scrollbar-y-s"> M horiz + S vert */
4539
4880
  /* ------------------------------------------------------------------ */
4540
- /* --- Track --- */
4881
+ /* Firefox: standard API */
4882
+ @supports (-moz-appearance: none) {
4883
+ .ui-scrollbar {
4884
+ scrollbar-width: thin;
4885
+ scrollbar-color: var(--scrollbar-thumb-default-color) transparent;
4886
+ }
4887
+ }
4888
+ /* ── Base track: default M on both axes ────────────────────────────── */
4541
4889
  .ui-scrollbar::-webkit-scrollbar {
4542
- width: var(--scrollbar-s-thickness);
4543
- height: var(--scrollbar-s-thickness);
4890
+ -webkit-appearance: none;
4891
+ height: var(--scrollbar-m-thickness); /* horizontal bar height */
4892
+ width: var(--scrollbar-m-thickness); /* vertical bar width */
4544
4893
  background: transparent;
4545
4894
  }
4546
- /* --- Thumb --- */
4547
4895
  .ui-scrollbar::-webkit-scrollbar-thumb {
4548
4896
  border-radius: 12px;
4549
4897
  background: var(--scrollbar-thumb-default-color);
4898
+ /* 2px inset from track edges — matches Figma py-[2px] */
4899
+ border: 2px solid transparent;
4900
+ background-clip: padding-box;
4550
4901
  }
4551
4902
  .ui-scrollbar::-webkit-scrollbar-thumb:hover {
4552
4903
  background: var(--scrollbar-thumb-hover-color);
4553
- cursor: pointer;
4554
4904
  }
4555
- /* --- Track border (vertical) --- */
4905
+ /* Track border — M only (Figma: S and XS have no border) */
4556
4906
  .ui-scrollbar::-webkit-scrollbar-track:vertical {
4557
4907
  border-left: var(--scrollbar-track-border-width) solid var(--scrollbar-track-border-color);
4558
4908
  }
4559
- /* --- Track border (horizontal) --- */
4560
4909
  .ui-scrollbar::-webkit-scrollbar-track:horizontal {
4561
4910
  border-top: var(--scrollbar-track-border-width) solid var(--scrollbar-track-border-color);
4562
4911
  }
4563
- .ui-scrollbar::-webkit-scrollbar-corner {
4564
- background: transparent;
4565
- }
4566
- /* --- Size variants --- */
4567
- /* Size M — 12px */
4568
- .ui-scrollbar-m::-webkit-scrollbar {
4569
- width: var(--scrollbar-m-thickness);
4570
- height: var(--scrollbar-m-thickness);
4571
- }
4572
- /* Size S — 6px (default, same as base .ui-scrollbar) */
4573
- .ui-scrollbar-s::-webkit-scrollbar {
4574
- width: var(--scrollbar-s-thickness);
4575
- height: var(--scrollbar-s-thickness);
4576
- }
4577
- /* Size XS — 2px */
4578
- .ui-scrollbar-xs::-webkit-scrollbar {
4579
- width: var(--scrollbar-xs-thickness);
4580
- height: var(--scrollbar-xs-thickness);
4912
+ /* S and XS: no track border, no thumb inset (compound selector removes it) */
4913
+ .ui-scrollbar.ui-scrollbar-s::-webkit-scrollbar-track,
4914
+ .ui-scrollbar.ui-scrollbar-x-s::-webkit-scrollbar-track:horizontal,
4915
+ .ui-scrollbar.ui-scrollbar-y-s::-webkit-scrollbar-track:vertical,
4916
+ .ui-scrollbar.ui-scrollbar-xs::-webkit-scrollbar-track,
4917
+ .ui-scrollbar.ui-scrollbar-x-xs::-webkit-scrollbar-track:horizontal,
4918
+ .ui-scrollbar.ui-scrollbar-y-xs::-webkit-scrollbar-track:vertical {
4919
+ border: none;
4581
4920
  }
4582
- /* XS size has no track border */
4583
- .ui-scrollbar-xs::-webkit-scrollbar-track:vertical,
4584
- .ui-scrollbar-xs::-webkit-scrollbar-track:horizontal {
4921
+ .ui-scrollbar::-webkit-scrollbar-corner { background: transparent; }
4922
+ /* ── Size overrides — compound selectors (0,0,2,0 > 0,0,1,0)
4923
+ *
4924
+ * IMPORTANT source order: "both axes" MUST come before per-axis rules.
4925
+ * Same specificity → last declared wins. Per-axis (x-s, y-s …) must win
4926
+ * over both-axes (m, s …) so they are placed AFTER both-axes below. */
4927
+ /* Both axes — set height AND width together */
4928
+ .ui-scrollbar.ui-scrollbar-m::-webkit-scrollbar { height: var(--scrollbar-m-thickness); width: var(--scrollbar-m-thickness); }
4929
+ .ui-scrollbar.ui-scrollbar-s::-webkit-scrollbar { height: var(--scrollbar-s-thickness); width: var(--scrollbar-s-thickness); }
4930
+ .ui-scrollbar.ui-scrollbar-xs::-webkit-scrollbar { height: var(--scrollbar-xs-thickness); width: var(--scrollbar-xs-thickness); }
4931
+ /* Per-axis horizontal (height only) — declared after both-axes so they win */
4932
+ .ui-scrollbar.ui-scrollbar-x-m::-webkit-scrollbar { height: var(--scrollbar-m-thickness); }
4933
+ .ui-scrollbar.ui-scrollbar-x-s::-webkit-scrollbar { height: var(--scrollbar-s-thickness); }
4934
+ .ui-scrollbar.ui-scrollbar-x-xs::-webkit-scrollbar { height: var(--scrollbar-xs-thickness); }
4935
+ /* Per-axis vertical (width only) — declared after both-axes so they win */
4936
+ .ui-scrollbar.ui-scrollbar-y-m::-webkit-scrollbar { width: var(--scrollbar-m-thickness); }
4937
+ .ui-scrollbar.ui-scrollbar-y-s::-webkit-scrollbar { width: var(--scrollbar-s-thickness); }
4938
+ .ui-scrollbar.ui-scrollbar-y-xs::-webkit-scrollbar { width: var(--scrollbar-xs-thickness); }
4939
+ /* XS: no border inset on thumb (4px track has no room) */
4940
+ .ui-scrollbar.ui-scrollbar-xs::-webkit-scrollbar-thumb,
4941
+ .ui-scrollbar.ui-scrollbar-x-xs::-webkit-scrollbar-thumb:horizontal,
4942
+ .ui-scrollbar.ui-scrollbar-y-xs::-webkit-scrollbar-thumb:vertical {
4585
4943
  border: none;
4944
+ background-clip: border-box;
4586
4945
  }
4587
4946
  .\[filter\:var\(--switch-thumb-filter\)\]{
4588
4947
  filter: var(--switch-thumb-filter);
@@ -4796,9 +5155,16 @@ input[type=number] {
4796
5155
  --tw-border-opacity: 1;
4797
5156
  border-right-color: color-mix(in srgb, var(--input-active-stroke) calc(100% * var(--tw-border-opacity, 1)), transparent);
4798
5157
  }
5158
+ .hover\:\!bg-table-c-row-bg:hover{
5159
+ --tw-bg-opacity: 1 !important;
5160
+ background-color: color-mix(in srgb, var(--table-c-row-bg) calc(100% * var(--tw-bg-opacity, 1)), transparent) !important;
5161
+ }
4799
5162
  .hover\:bg-\[var\(--dropdown-menu-hover-bg\)\]:hover{
4800
5163
  background-color: var(--dropdown-menu-hover-bg);
4801
5164
  }
5165
+ .hover\:bg-\[var\(--transparent-grey2-8\2c rgba\(145\2c 158\2c 171\2c 0\.08\)\)\]:hover{
5166
+ background-color: var(--transparent-grey2-8,rgba(145,158,171,0.08));
5167
+ }
4802
5168
  .hover\:bg-action-button-icon-active-hover:hover{
4803
5169
  --tw-bg-opacity: 1;
4804
5170
  background-color: color-mix(in srgb, var(--action-button-icon-active-hover-bg) calc(100% * var(--tw-bg-opacity, 1)), transparent);
@@ -4930,9 +5296,22 @@ input[type=number] {
4930
5296
  --tw-bg-opacity: 1;
4931
5297
  background-color: color-mix(in srgb, var(--state-secondary-hover) calc(100% * var(--tw-bg-opacity, 1)), transparent);
4932
5298
  }
4933
- .hover\:bg-transparent-grey2-8:hover{
5299
+ .hover\:bg-table-c-hover:hover{
4934
5300
  --tw-bg-opacity: 1;
4935
- background-color: color-mix(in srgb, var(--transparent-grey2-8) calc(100% * var(--tw-bg-opacity, 1)), transparent);
5301
+ background-color: color-mix(in srgb, var(--table-c-hover) calc(100% * var(--tw-bg-opacity, 1)), transparent);
5302
+ }
5303
+ .hover\:bg-table-c-hover\/35:hover{
5304
+ background-color: color-mix(in srgb, var(--table-c-hover) calc(100% * 0.35), transparent);
5305
+ }
5306
+ .hover\:bg-transparent:hover{
5307
+ background-color: transparent;
5308
+ }
5309
+ .hover\:bg-transparent-grey2-12:hover{
5310
+ --tw-bg-opacity: 1;
5311
+ background-color: color-mix(in srgb, var(--transparent-grey2-12) calc(100% * var(--tw-bg-opacity, 1)), transparent);
5312
+ }
5313
+ .hover\:bg-white\/5:hover{
5314
+ background-color: rgb(255 255 255 / 0.05);
4936
5315
  }
4937
5316
  .hover\:fill-action-button-icon-active-hover:hover{
4938
5317
  fill: color-mix(in srgb, var(--action-button-icon-active-hover-text) calc(100% * 1), transparent);
@@ -5143,6 +5522,10 @@ input[type=number] {
5143
5522
  --tw-text-opacity: 1;
5144
5523
  color: color-mix(in srgb, var(--input-filled-text) calc(100% * var(--tw-text-opacity, 1)), transparent);
5145
5524
  }
5525
+ .hover\:text-text-contrast-high:hover{
5526
+ --tw-text-opacity: 1;
5527
+ color: color-mix(in srgb, var(--text-contrast-high) calc(100% * var(--tw-text-opacity, 1)), transparent);
5528
+ }
5146
5529
  .hover\:text-text-g-contrast-high:hover{
5147
5530
  --tw-text-opacity: 1;
5148
5531
  color: color-mix(in srgb, var(--text-g-contrast-high) calc(100% * var(--tw-text-opacity, 1)), transparent);
@@ -6060,6 +6443,12 @@ input[type=number] {
6060
6443
  .disabled\:opacity-50:disabled{
6061
6444
  opacity: 0.5;
6062
6445
  }
6446
+ .group\/col:hover .group-hover\/col\:opacity-100{
6447
+ opacity: 1;
6448
+ }
6449
+ .group\/header:hover .group-hover\/header\:opacity-100{
6450
+ opacity: 1;
6451
+ }
6063
6452
  .group:hover .group-hover\:opacity-100{
6064
6453
  opacity: 1;
6065
6454
  }
@@ -6452,10 +6841,6 @@ input[type=number] {
6452
6841
  --tw-bg-opacity: 1;
6453
6842
  background-color: color-mix(in srgb, var(--state-primary-default) calc(100% * var(--tw-bg-opacity, 1)), transparent);
6454
6843
  }
6455
- .data-\[state\=selected\]\:bg-grey-20[data-state="selected"]{
6456
- --tw-bg-opacity: 1;
6457
- background-color: color-mix(in srgb, var(--ramps-grey-20) calc(100% * var(--tw-bg-opacity, 1)), transparent);
6458
- }
6459
6844
  .data-\[state\=unchecked\]\:bg-\[var\(--switch-thumb-default-color\)\][data-state="unchecked"]{
6460
6845
  background-color: var(--switch-thumb-default-color);
6461
6846
  }
@@ -6725,6 +7110,10 @@ input[type=number] {
6725
7110
  }
6726
7111
  @media (min-width: 640px){
6727
7112
 
7113
+ .sm\:inline-block{
7114
+ display: inline-block;
7115
+ }
7116
+
6728
7117
  .sm\:max-w-\[425px\]{
6729
7118
  max-width: 425px;
6730
7119
  }
@@ -6747,11 +7136,40 @@ input[type=number] {
6747
7136
  grid-template-columns: repeat(2, minmax(0, 1fr));
6748
7137
  }
6749
7138
  }
6750
- .\[\&\:has\(\[role\=checkbox\]\)\]\:w-4:has([role=checkbox]){
6751
- width: 1rem;
7139
+ .\[\&\:has\(\[role\=checkbox\]\)\]\:min-w-10:has([role=checkbox]){
7140
+ min-width: 2.5rem;
6752
7141
  }
6753
- .\[\&\:has\(\[role\=checkbox\]\)\]\:pr-4:has([role=checkbox]){
6754
- padding-right: 1rem;
7142
+ .\[\&\:has\(\[role\=checkbox\]\)\]\:px-3:has([role=checkbox]){
7143
+ padding-left: 0.75rem;
7144
+ padding-right: 0.75rem;
7145
+ }
7146
+ .\[\&\>td\:not\(\:last-child\)\]\:border-r>td:not(:last-child){
7147
+ border-right-width: 1px;
7148
+ }
7149
+ .\[\&\>td\:not\(\:last-child\)\]\:border-r-table-c-col-line>td:not(:last-child){
7150
+ --tw-border-opacity: 1;
7151
+ border-right-color: color-mix(in srgb, var(--table-c-col-line) calc(100% * var(--tw-border-opacity, 1)), transparent);
7152
+ }
7153
+ .\[\&\>td\]\:border-b>td{
7154
+ border-bottom-width: 1px;
7155
+ }
7156
+ .\[\&\>td\]\:border-b-table-c-row-line>td{
7157
+ --tw-border-opacity: 1;
7158
+ border-bottom-color: color-mix(in srgb, var(--table-c-row-line) calc(100% * var(--tw-border-opacity, 1)), transparent);
7159
+ }
7160
+ .\[\&\>th\:not\(\:last-child\)\]\:border-r>th:not(:last-child){
7161
+ border-right-width: 1px;
7162
+ }
7163
+ .\[\&\>th\:not\(\:last-child\)\]\:border-r-table-c-col-line>th:not(:last-child){
7164
+ --tw-border-opacity: 1;
7165
+ border-right-color: color-mix(in srgb, var(--table-c-col-line) calc(100% * var(--tw-border-opacity, 1)), transparent);
7166
+ }
7167
+ .\[\&\>th\]\:border-b>th{
7168
+ border-bottom-width: 1px;
7169
+ }
7170
+ .\[\&\>th\]\:border-b-table-c-row-line>th{
7171
+ --tw-border-opacity: 1;
7172
+ border-bottom-color: color-mix(in srgb, var(--table-c-row-line) calc(100% * var(--tw-border-opacity, 1)), transparent);
6755
7173
  }
6756
7174
  .\[\&\>tr\]\:last\:border-b-0:last-child>tr{
6757
7175
  border-bottom-width: 0px;
@@ -6858,12 +7276,49 @@ input[type=number] {
6858
7276
  --tw-text-opacity: 1;
6859
7277
  color: color-mix(in srgb, var(--input-disable-stroke) calc(100% * var(--tw-text-opacity, 1)), transparent);
6860
7278
  }
6861
- .\[\&_tr\:last-child\]\:border-0 tr:last-child{
6862
- border-width: 0px;
7279
+ .\[\&_tr\:hover\]\:\!bg-table-c-hover tr:hover{
7280
+ --tw-bg-opacity: 1 !important;
7281
+ background-color: color-mix(in srgb, var(--table-c-hover) calc(100% * var(--tw-bg-opacity, 1)), transparent) !important;
6863
7282
  }
6864
- .\[\&_tr\]\:border-b tr{
7283
+ .\[\&_tr\:last-child\>td\]\:border-b-0 tr:last-child>td{
7284
+ border-bottom-width: 0px;
7285
+ }
7286
+ .\[\&_tr\:last-child\>th\]\:border-b-0 tr:last-child>th{
7287
+ border-bottom-width: 0px;
7288
+ }
7289
+ .\[\&_tr\:nth-child\(even\)\]\:bg-table-c-row-bg-even tr:nth-child(even){
7290
+ --tw-bg-opacity: 1;
7291
+ background-color: color-mix(in srgb, var(--table-c-row-bg-even) calc(100% * var(--tw-bg-opacity, 1)), transparent);
7292
+ }
7293
+ .\[\&_tr\:nth-child\(odd\)\]\:bg-table-c-row-bg tr:nth-child(odd){
7294
+ --tw-bg-opacity: 1;
7295
+ background-color: color-mix(in srgb, var(--table-c-row-bg) calc(100% * var(--tw-bg-opacity, 1)), transparent);
7296
+ }
7297
+ .\[\&_tr\>td\]\:border-b-0 tr>td{
7298
+ border-bottom-width: 0px;
7299
+ }
7300
+ .\[\&_tr\>th\]\:box-border tr>th{
7301
+ box-sizing: border-box;
7302
+ }
7303
+ .\[\&_tr\>th\]\:border-b tr>th{
6865
7304
  border-bottom-width: 1px;
6866
7305
  }
7306
+ .\[\&_tr\>th\]\:border-b-table-c-header-line tr>th{
7307
+ --tw-border-opacity: 1;
7308
+ border-bottom-color: color-mix(in srgb, var(--table-c-header-line) calc(100% * var(--tw-border-opacity, 1)), transparent);
7309
+ }
7310
+ .\[\&_tr\[data-highlighted\=true\]\]\:\!bg-table-c-selected tr[data-highlighted=true]{
7311
+ --tw-bg-opacity: 1 !important;
7312
+ background-color: color-mix(in srgb, var(--table-c-selected) calc(100% * var(--tw-bg-opacity, 1)), transparent) !important;
7313
+ }
7314
+ .\[\&_tr\[data-state\=selected\]\]\:\!bg-table-c-selected tr[data-state=selected]{
7315
+ --tw-bg-opacity: 1 !important;
7316
+ background-color: color-mix(in srgb, var(--table-c-selected) calc(100% * var(--tw-bg-opacity, 1)), transparent) !important;
7317
+ }
7318
+ .\[\&_tr\]\:bg-table-c-row-bg tr{
7319
+ --tw-bg-opacity: 1;
7320
+ background-color: color-mix(in srgb, var(--table-c-row-bg) calc(100% * var(--tw-bg-opacity, 1)), transparent);
7321
+ }
6867
7322
 
6868
7323
  /* Scroll bar */
6869
7324
  .tabs-scrollbar::-webkit-scrollbar {